element-plus
Version:
A Component Library for Vue 3
1 lines • 4.58 kB
Source Map (JSON)
{"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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"}