| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- 'use strict';
- Object.defineProperty(exports, '__esModule', { value: true });
- const useTimePanel = ({
- getAvailableHours,
- getAvailableMinutes,
- getAvailableSeconds
- }) => {
- const getAvailableTime = (date, role, first, compareDate) => {
- const availableTimeGetters = {
- hour: getAvailableHours,
- minute: getAvailableMinutes,
- second: getAvailableSeconds
- };
- let result = date;
- ["hour", "minute", "second"].forEach((type) => {
- if (availableTimeGetters[type]) {
- let availableTimeSlots;
- const method = availableTimeGetters[type];
- switch (type) {
- case "minute": {
- availableTimeSlots = method(result.hour(), role, compareDate);
- break;
- }
- case "second": {
- availableTimeSlots = method(result.hour(), result.minute(), role, compareDate);
- break;
- }
- default: {
- availableTimeSlots = method(role, compareDate);
- break;
- }
- }
- if ((availableTimeSlots == null ? void 0 : availableTimeSlots.length) && !availableTimeSlots.includes(result[type]())) {
- const pos = first ? 0 : availableTimeSlots.length - 1;
- result = result[type](availableTimeSlots[pos]);
- }
- }
- });
- return result;
- };
- const timePickerOptions = {};
- const onSetOption = ([key, val]) => {
- timePickerOptions[key] = val;
- };
- return {
- timePickerOptions,
- getAvailableTime,
- onSetOption
- };
- };
- exports.useTimePanel = useTimePanel;
- //# sourceMappingURL=use-time-panel.js.map
|