{"version":3,"file":"UdpAutocomplete.mjs","names":["React","UdpAutocomplete","UdpAutocompleteWebComponent","JSX","createChangeEvent","createFocusEvent","FormChangeEvent","FormFocusEvent","UdpAutocompleteProps","Partial","Omit","value","T","onChange","event","onBlur","onFocus","children","ReactNode","error","helperText","t0","$","_c","hint","name","props","t1","e","detail","handleValueChanged","t2","handleBlur","t3","handleFocus","hintStr","undefined","normalizedError","normalizedHint","t4"],"sources":["../../../src/UI/fluent-web-components/UdpAutocomplete.tsx"],"sourcesContent":["import React from 'react';\nimport { UdpAutocomplete as UdpAutocompleteWebComponent } from '@univerus/udp-react-stencil-component-library';\nimport { type JSX } from '@univerus/udp-react-stencil-component-library';\nimport {\n  createChangeEvent,\n  createFocusEvent,\n  FormChangeEvent,\n  FormFocusEvent\n} from './utils/formEvents';\n\n/**\n * Props for the UdpAutocomplete component.\n *\n * Supports both MUI-style and Fluent-style error handling:\n * - MUI style: error={boolean} + helperText={string}\n * - Fluent style: error={string} + hint={string}\n */\nexport interface UdpAutocompleteProps<T = unknown>\n  extends Partial<\n    Omit<\n      JSX.UdpAutocomplete,\n      'onValueChanged' | 'onInputBlur' | 'onInputFocus' | 'value' | 'error'\n    >\n  > {\n  /** Current selected value */\n  value?: T;\n  /** Called when selection changes - compatible with form libraries (event.target.value) */\n  onChange?: (event: FormChangeEvent<T>) => void;\n  /** Called when input loses focus - compatible with form libraries */\n  onBlur?: (event: FormFocusEvent) => void;\n  /** Called when input gains focus */\n  onFocus?: (event: FormFocusEvent) => void;\n  /** React children (for slot content / options) */\n  children?: React.ReactNode;\n  /**\n   * Error state - supports both MUI and Fluent patterns:\n   * - string: Fluent style - the error message to display\n   * - boolean: MUI style - when true, displays helperText as error\n   */\n  error?: string | boolean;\n  /**\n   * MUI compatibility: Helper/error text shown below the input.\n   * When error={true}, this is displayed as the error message.\n   * When error={false}, this is displayed as hint text.\n   */\n  helperText?: string;\n}\n\nexport const UdpAutocomplete = <T = unknown,>({\n  onChange,\n  onBlur,\n  onFocus,\n  name,\n  value,\n  error,\n  helperText,\n  hint,\n  ...props\n}: UdpAutocompleteProps<T>) => {\n  const handleValueChanged = (e: CustomEvent<T>) => {\n    onChange?.(createChangeEvent(e.detail, name, 'combobox'));\n  };\n\n  const handleBlur = () => {\n    onBlur?.(createFocusEvent('blur', name));\n  };\n\n  const handleFocus = () => {\n    onFocus?.(createFocusEvent('focus', name));\n  };\n\n  // Normalize error/hint props to support both MUI and Fluent patterns\n  const hintStr = typeof hint === 'string' ? hint : undefined;\n\n  let normalizedError: string | undefined;\n  let normalizedHint: string | undefined;\n\n  if (typeof error === 'string') {\n    normalizedError = error;\n    normalizedHint = hintStr;\n  } else if (typeof error === 'boolean') {\n    normalizedError = error ? helperText || '' : undefined;\n    normalizedHint = !error ? helperText || hintStr : hintStr;\n  } else {\n    normalizedHint = hintStr ?? helperText;\n  }\n\n  return (\n    <UdpAutocompleteWebComponent\n      {...props}\n      name={name}\n      value={value}\n      error={normalizedError}\n      hint={normalizedHint}\n      onValueChanged={handleValueChanged}\n      onInputBlur={handleBlur}\n      onInputFocus={handleFocus}\n    />\n  );\n};\n"],"mappings":";;;;;AAgDA,MAAaC,qBAAkBoB,OAAA;CAAA,MAAAC,IAAAC,EAAA,GAAA;CAAA,IAAAJ;CAAA,IAAAC;CAAA,IAAAI;CAAA,IAAAC;CAAA,IAAAV;CAAA,IAAAF;CAAA,IAAAG;CAAA,IAAAU;CAAA,IAAAf;AAAA,KAAAW,EAAA,OAAAD,IAAA;AAAe,GAAA,CAAAR,UAAAE,QAAAC,SAAAS,MAAAd,OAAAQ,OAAAC,YAAAI,SAAAE,SAAAL;AAUpBC,IAAA,KAAAD;AAAAC,IAAA,KAAAH;AAAAG,IAAA,KAAAF;AAAAE,IAAA,KAAAE;AAAAF,IAAA,KAAAG;AAAAH,IAAA,KAAAP;AAAAO,IAAA,KAAAT;AAAAS,IAAA,KAAAN;AAAAM,IAAA,KAAAI;AAAAJ,IAAA,KAAAX;QAAA;AAAAQ,UAAAG,EAAA;AAAAF,eAAAE,EAAA;AAAAE,SAAAF,EAAA;AAAAG,SAAAH,EAAA;AAAAP,WAAAO,EAAA;AAAAT,aAAAS,EAAA;AAAAN,YAAAM,EAAA;AAAAI,UAAAJ,EAAA;AAAAX,UAAAW,EAAA;;CAAA,IAAAK;AAAA,KAAAL,EAAA,QAAAG,QAAAH,EAAA,QAAAT,UAAA;AACGc,QAAAC,MAAA;AACzBf,cAAWT,kBAAkBwB,EAACC,QAASJ,MAAM,WAAW,CAAC;;AAC1DH,IAAA,MAAAG;AAAAH,IAAA,MAAAT;AAAAS,IAAA,MAAAK;OAAAA,MAAAL,EAAA;CAFD,MAAAQ,qBAA2BH;CAEzB,IAAAI;AAAA,KAAAT,EAAA,QAAAG,QAAAH,EAAA,QAAAP,QAAA;AAEiBgB,aAAA;AACjBhB,YAASV,iBAAiB,QAAQoB,KAAK,CAAC;;AACzCH,IAAA,MAAAG;AAAAH,IAAA,MAAAP;AAAAO,IAAA,MAAAS;OAAAA,MAAAT,EAAA;CAFD,MAAAU,aAAmBD;CAEjB,IAAAE;AAAA,KAAAX,EAAA,QAAAG,QAAAH,EAAA,QAAAN,SAAA;AAEkBiB,aAAA;AAClBjB,aAAUX,iBAAiB,SAASoB,KAAK,CAAC;;AAC3CH,IAAA,MAAAG;AAAAH,IAAA,MAAAN;AAAAM,IAAA,MAAAW;OAAAA,MAAAX,EAAA;CAFD,MAAAY,cAAoBD;CAKpB,MAAAE,UAAgB,OAAOX,SAAS,WAAhBA,OAAAY,KAAAA;CAEZC,IAAAA;CACAC,IAAAA;AAEJ,KAAI,OAAOnB,UAAU,UAAQ;AAC3BkB,oBAAkBlB;AAClBmB,mBAAiBH;YACR,OAAOhB,UAAU,WAAS;AACnCkB,oBAAkBlB,QAAQC,cAAA,KAARgB,KAAAA;AAClBE,mBAAiBA,CAACnB,QAAQC,cAAAe,UAATA;OAEjBG,kBAAiBA,WAAAA;CAClB,IAAAC;AAAA,KAAAjB,EAAA,QAAAU,cAAAV,EAAA,QAAAY,eAAAZ,EAAA,QAAAQ,sBAAAR,EAAA,QAAAG,QAAAH,EAAA,QAAAe,mBAAAf,EAAA,QAAAgB,kBAAAhB,EAAA,QAAAI,SAAAJ,EAAA,QAAAX,OAAA;AAGC4B,OAAA,sBAAA,cAAC,iBAAD;GAA4B,GACtBb;GACED;GACCd;GACA0B,OAAAA;GACDC,MAAAA;GACUR,gBAAAA;GACHE,aAAAA;GACCE,cAAAA;GACd,CAAA;AAAAZ,IAAA,MAAAU;AAAAV,IAAA,MAAAY;AAAAZ,IAAA,MAAAQ;AAAAR,IAAA,MAAAG;AAAAH,IAAA,MAAAe;AAAAf,IAAA,MAAAgB;AAAAhB,IAAA,MAAAI;AAAAJ,IAAA,MAAAX;AAAAW,IAAA,MAAAiB;OAAAA,MAAAjB,EAAA;AAAA,QATFiB"}