{"version":3,"file":"useTimePicker.mjs","sources":["../../../../../../packages/components/time-picker/src/time-picker-com/useTimePicker.ts"],"sourcesContent":["import { ref, watch } from 'vue'\n\nimport type { Dayjs } from 'dayjs'\n\nconst makeList = (total, method, methodFunc) => {\n  const arr = []\n  const disabledArr = method && methodFunc()\n  for (let i = 0; i < total; i++) {\n    arr[i] = disabledArr ? disabledArr.includes(i) : false\n  }\n  return arr\n}\n\nconst makeAvailableArr = (list) => {\n  return list.map((_, index) => (!_ ? index : _)).filter((_) => _ !== true)\n}\n\nexport const getTimeLists = (\n  disabledHours,\n  disabledMinutes,\n  disabledSeconds\n) => {\n  const getHoursList = (role, compare?) => {\n    return makeList(24, disabledHours, () => disabledHours(role, compare))\n  }\n\n  const getMinutesList = (hour, role, compare?) => {\n    return makeList(60, disabledMinutes, () =>\n      disabledMinutes(hour, role, compare)\n    )\n  }\n\n  const getSecondsList = (hour, minute, role, compare?) => {\n    return makeList(60, disabledSeconds, () =>\n      disabledSeconds(hour, minute, role, compare)\n    )\n  }\n\n  return {\n    getHoursList,\n    getMinutesList,\n    getSecondsList,\n  }\n}\n\nexport const getAvailableArrs = (\n  disabledHours,\n  disabledMinutes,\n  disabledSeconds\n) => {\n  const { getHoursList, getMinutesList, getSecondsList } = getTimeLists(\n    disabledHours,\n    disabledMinutes,\n    disabledSeconds\n  )\n\n  const getAvailableHours = (role, compare?) => {\n    return makeAvailableArr(getHoursList(role, compare))\n  }\n\n  const getAvailableMinutes = (hour, role, compare?) => {\n    return makeAvailableArr(getMinutesList(hour, role, compare))\n  }\n\n  const getAvailableSeconds = (hour, minute, role, compare?) => {\n    return makeAvailableArr(getSecondsList(hour, minute, role, compare))\n  }\n\n  return {\n    getAvailableHours,\n    getAvailableMinutes,\n    getAvailableSeconds,\n  }\n}\n\nexport const useOldValue = (props: {\n  parsedValue?: string | Dayjs | Dayjs[]\n  visible: boolean\n}) => {\n  const oldValue = ref(props.parsedValue)\n\n  watch(\n    () => props.visible,\n    (val) => {\n      if (!val) {\n        oldValue.value = props.parsedValue\n      }\n    }\n  )\n\n  return oldValue\n}\n"],"names":[],"mappings":"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"}