{"version":3,"file":"UdpDurationInput.mjs","names":["React","UdpDurationInput","UdpDurationInputWebComponent","JSX","createChangeEvent","createFocusEvent","FormChangeEvent","FormFocusEvent","UdpDurationInputProps","Partial","Omit","onChange","event","onBlur","onFocus","children","ReactNode","error","helperText","FC","t0","$","_c","hint","name","props","value","t1","e","stringValue","detail","String","handleValueChanged","t2","handleBlur","t3","handleFocus","hintStr","undefined","normalizedError","normalizedHint","t4"],"sources":["../../../src/UI/fluent-web-components/UdpDurationInput.tsx"],"sourcesContent":["import React from 'react';\nimport { UdpDurationInput as UdpDurationInputWebComponent } 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 UdpDurationInput 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 UdpDurationInputProps\n  extends Partial<\n    Omit<\n      JSX.UdpDurationInput,\n      'onValueChanged' | 'onInputBlur' | 'onInputFocus' | 'error'\n    >\n  > {\n  /** Called when time changes - compatible with form libraries (event.target.value) */\n  onChange?: (event: FormChangeEvent<string>) => 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) */\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 UdpDurationInput: React.FC<UdpDurationInputProps> = ({\n  onChange,\n  onBlur,\n  onFocus,\n  name,\n  value,\n  error,\n  helperText,\n  hint,\n  ...props\n}) => {\n  const handleValueChanged = (e: CustomEvent<number | null>) => {\n    // Convert number to string for form library compatibility\n    const stringValue = e.detail != null ? String(e.detail) : '';\n    onChange?.(createChangeEvent(stringValue, name, 'duration'));\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    <UdpDurationInputWebComponent\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":";;;;;AA8CA,MAAaC,sBAAoDmB,OAAA;CAAA,MAAAC,IAAAC,EAAA,GAAA;CAAA,IAAAL;CAAA,IAAAC;CAAA,IAAAK;CAAA,IAAAC;CAAA,IAAAX;CAAA,IAAAF;CAAA,IAAAG;CAAA,IAAAW;CAAA,IAAAC;AAAA,KAAAL,EAAA,OAAAD,IAAA;AAAC,GAAA,CAAAT,UAAAE,QAAAC,SAAAU,MAAAE,OAAAT,OAAAC,YAAAK,SAAAE,SAAAL;AAUjEC,IAAA,KAAAD;AAAAC,IAAA,KAAAJ;AAAAI,IAAA,KAAAH;AAAAG,IAAA,KAAAE;AAAAF,IAAA,KAAAG;AAAAH,IAAA,KAAAR;AAAAQ,IAAA,KAAAV;AAAAU,IAAA,KAAAP;AAAAO,IAAA,KAAAI;AAAAJ,IAAA,KAAAK;QAAA;AAAAT,UAAAI,EAAA;AAAAH,eAAAG,EAAA;AAAAE,SAAAF,EAAA;AAAAG,SAAAH,EAAA;AAAAR,WAAAQ,EAAA;AAAAV,aAAAU,EAAA;AAAAP,YAAAO,EAAA;AAAAI,UAAAJ,EAAA;AAAAK,UAAAL,EAAA;;CAAA,IAAAM;AAAA,KAAAN,EAAA,QAAAG,QAAAH,EAAA,QAAAV,UAAA;AAC4BgB,QAAAC,MAAA;GAEzB,MAAAC,cAAoBD,EAACE,UAAW,OAAOC,OAAOH,EAACE,OAAa,GAAxC;AACpBnB,cAAWP,kBAAkByB,aAAaL,MAAM,WAAW,CAAC;;AAC7DH,IAAA,MAAAG;AAAAH,IAAA,MAAAV;AAAAU,IAAA,MAAAM;OAAAA,MAAAN,EAAA;CAJD,MAAAW,qBAA2BL;CAIzB,IAAAM;AAAA,KAAAZ,EAAA,QAAAG,QAAAH,EAAA,QAAAR,QAAA;AAEiBoB,aAAA;AACjBpB,YAASR,iBAAiB,QAAQmB,KAAK,CAAC;;AACzCH,IAAA,MAAAG;AAAAH,IAAA,MAAAR;AAAAQ,IAAA,MAAAY;OAAAA,MAAAZ,EAAA;CAFD,MAAAa,aAAmBD;CAEjB,IAAAE;AAAA,KAAAd,EAAA,QAAAG,QAAAH,EAAA,QAAAP,SAAA;AAEkBqB,aAAA;AAClBrB,aAAUT,iBAAiB,SAASmB,KAAK,CAAC;;AAC3CH,IAAA,MAAAG;AAAAH,IAAA,MAAAP;AAAAO,IAAA,MAAAc;OAAAA,MAAAd,EAAA;CAFD,MAAAe,cAAoBD;CAKpB,MAAAE,UAAgB,OAAOd,SAAS,WAAhBA,OAAAe,KAAAA;CAEZC,IAAAA;CACAC,IAAAA;AAEJ,KAAI,OAAOvB,UAAU,UAAQ;AAC3BsB,oBAAkBtB;AAClBuB,mBAAiBH;YACR,OAAOpB,UAAU,WAAS;AACnCsB,oBAAkBtB,QAAQC,cAAA,KAARoB,KAAAA;AAClBE,mBAAiBA,CAACvB,QAAQC,cAAAmB,UAATA;OAEjBG,kBAAiBA,WAAAA;CAClB,IAAAC;AAAA,KAAApB,EAAA,QAAAa,cAAAb,EAAA,QAAAe,eAAAf,EAAA,QAAAW,sBAAAX,EAAA,QAAAG,QAAAH,EAAA,QAAAkB,mBAAAlB,EAAA,QAAAmB,kBAAAnB,EAAA,QAAAI,SAAAJ,EAAA,QAAAK,OAAA;AAGCe,OAAA,sBAAA,cAAC,kBAAD;GAA6B,GACvBhB;GACED;GACCE;GACAa,OAAAA;GACDC,MAAAA;GACUR,gBAAAA;GACHE,aAAAA;GACCE,cAAAA;GACd,CAAA;AAAAf,IAAA,MAAAa;AAAAb,IAAA,MAAAe;AAAAf,IAAA,MAAAW;AAAAX,IAAA,MAAAG;AAAAH,IAAA,MAAAkB;AAAAlB,IAAA,MAAAmB;AAAAnB,IAAA,MAAAI;AAAAJ,IAAA,MAAAK;AAAAL,IAAA,MAAAoB;OAAAA,MAAApB,EAAA;AAAA,QATFoB"}