{"version":3,"file":"time-picker.mjs","sources":["../../../../../../packages/components/time-picker/src/time-picker.tsx"],"sourcesContent":["import { defineComponent, provide, ref } from 'vue'\nimport dayjs from 'dayjs'\nimport customParseFormat from 'dayjs/plugin/customParseFormat.js'\nimport { DEFAULT_FORMATS_TIME } from './constants'\nimport Picker from './common/picker.vue'\nimport TimePickPanel from './time-picker-com/panel-time-pick.vue'\nimport TimeRangePanel from './time-picker-com/panel-time-range.vue'\nimport { timePickerDefaultProps } from './common/props'\ndayjs.extend(customParseFormat)\n\nexport default defineComponent({\n  name: 'LtTimePicker',\n  install: null,\n  props: {\n    ...timePickerDefaultProps,\n    /**\n     * @description whether to pick a time range\n     */\n    isRange: {\n      type: Boolean,\n      default: false,\n    },\n  },\n  emits: ['update:modelValue'],\n  setup(props, ctx) {\n    const commonPicker = ref<InstanceType<typeof Picker>>()\n    const [type, Panel] = props.isRange\n      ? ['timerange', TimeRangePanel]\n      : ['time', TimePickPanel]\n\n    const modelUpdater = (value: any) => ctx.emit('update:modelValue', value)\n    provide('LtPopperOptions', props.popperOptions)\n    ctx.expose({\n      /**\n       * @description focus the Input component\n       */\n      focus: (e: FocusEvent | undefined) => {\n        commonPicker.value?.handleFocusInput(e)\n      },\n      /**\n       * @description blur the Input component\n       */\n      blur: (e: FocusEvent | undefined) => {\n        commonPicker.value?.handleBlurInput(e)\n      },\n      /**\n       * @description open the TimePicker popper\n       */\n      handleOpen: () => {\n        commonPicker.value?.handleOpen()\n      },\n      /**\n       * @description close the TimePicker popper\n       */\n      handleClose: () => {\n        commonPicker.value?.handleClose()\n      },\n    })\n\n    return () => {\n      const format = props.format ?? DEFAULT_FORMATS_TIME\n\n      return (\n        <Picker\n          {...props}\n          ref={commonPicker}\n          type={type}\n          format={format}\n          onUpdate:modelValue={modelUpdater}\n        >\n          {{\n            default: (props: any) => <Panel {...props} />,\n          }}\n        </Picker>\n      )\n    }\n  },\n})\n"],"names":["dayjs","extend","customParseFormat","defineComponent","name","install","props","timePickerDefaultProps","isRange","type","default","setup","modelUpdater","provide","expose","commonPicker","blur","handleOpen","value","_createVNode","Picker","_mergeProps"],"mappings":";;;;;;;;;AAQAA,KAAK,CAACC,MAAM,CAACC,iBAAiB,CAAC,CAAA;AAE/B,iBAAeC,eAAe,CAAC;AAC7BC,EAAAA,IAAI,EAAE,cAAc;AACpBC,EAAAA,OAAO,EAAE,IAAI;AACbC,EAAAA,KAAK,EAAE;AACL,IAAA,GAAGC,sBAAsB;AACzB,IAAA,OAAA,EAAA;AACJ,MAAA,IAAA,EAAA,OAAA;AACA,MAAA,OAAA,EAAA,KAAA;AACIC,KAAAA;AACEC,GAAAA;AACAC,EAAAA,KAAAA,EAAAA,CAAAA,mBAAS,CAAA;AACX,EAAA,KAAA,CAAA,KAAA,EAAA,GAAA,EAAA;IACD,MAAA,YAAA,GAAA,GAAA,EAAA,CAAA;IACI,MAAG,CAAA,IAAA,EAAA,KAAA,CAAA,GAAA,KAAoB,CAAA,OAAA,GAAA,CAAA,WAAA,EAAA,cAAA,CAAA,GAAA,CAAA,MAAA,EAAA,aAAA,CAAA,CAAA;AAC5BC,IAAAA,MAAML,YAAY,GAAA,CAAA,KAAA,KAAA,GAAA,CAAA,IAAA,CAAA,mBAAA,EAAA,KAAA,CAAA,CAAA;AAChB,IAAA,OAAkB,CAAA,iBAAoC,EAAC,KAAA,CAAA,aAAA,CAAA,CAAA;IACvD,GAAM,CAAA,OAAK;MAILM,KAAAA,EAAAA,CAAAA,CAAAA,KAAAA;AACNC,QAAAA,IAAQ,EAAiB,CAAA;QACrBC,MAAM,YAAC,CAAA,KAAA,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,gBAAA,CAAA,CAAA,CAAA,CAAA;AACT,OAAA;AACN,MAAA,IAAA,EAAA,CAAA,CAAA,KAAA;AACA,QAAA,IAAA,EAAA,CAAA;QACW,CAAA,EAAA,GAA4B,YAAK,CAAA,KAAA,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,eAAA,CAAA,CAAA,CAAA,CAAA;AACpCC,OAAAA;MACF,UAAC,EAAA,MAAA;AACD,QAAA,IAAA,EAAA,CAAA;AACN,QAAA,CAAA,EAAA,GAAA,YAAA,CAAA,KAAA,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,UAAA,EAAA,CAAA;AACA,OAAA;MACMC,WAAqC,EAAA,MAAA;AACnCD,QAAAA,IAAAA,EAAAA,CAAAA;QACD,CAAA,EAAA,GAAA,YAAA,CAAA,KAAA,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,WAAA,EAAA,CAAA;AACD,OAAA;AACN,KAAA,CAAA,CAAA;AACA,IAAA,OAAA,MAAA;MACME,IAAU,EAAA,CAAA;AACRF,MAAAA,MAAAA,MAAAA,GAAaG,CAAAA,EAAAA,GAAOD,KAAAA,CAAAA,MAAW,KAAC,IAAA,GAAA,EAAA,GAAA,oBAAA,CAAA;MAClC,OAACE,WAAA,CAAAC,YAAA,EAAAC,UAAA,CAAA,KAAA,EAAA;AACD,QAAA,KAAA,EAAA,YAAA;AACN,QAAA,MAAA,EAAA,IAAA;AACA,QAAA,QAAA,EAAA,MAAA;QACiB,qBAAQ,EAAA,YAAA;AACjBN,OAAAA,CAAAA,EAAAA;AACF,QAAA,OAAA,EAAA,CAAA,MAAA,KAAAI,WAAA,CAAA,KAAA,EAAA,MAAA,EAAA,IAAA,CAAA;AACF,OAAE,CAAA,CAAA;AAEF,KAAA,CAAA;AACE,GAAA;AAEA,CAAA,CAAA;;;;"}