'use strict';
|
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
var vue = require('vue');
|
var utils = require('../utils.js');
|
|
const makeAvailableArr = (disabledList) => {
|
const trueOrNumber = (isDisabled, index) => isDisabled || index;
|
const getNumber = (predicate) => predicate !== true;
|
return disabledList.map(trueOrNumber).filter(getNumber);
|
};
|
const getTimeLists = (disabledHours, disabledMinutes, disabledSeconds) => {
|
const getHoursList = (role, compare) => {
|
return utils.makeList(24, disabledHours && (() => disabledHours == null ? void 0 : disabledHours(role, compare)));
|
};
|
const getMinutesList = (hour, role, compare) => {
|
return utils.makeList(60, disabledMinutes && (() => disabledMinutes == null ? void 0 : disabledMinutes(hour, role, compare)));
|
};
|
const getSecondsList = (hour, minute, role, compare) => {
|
return utils.makeList(60, disabledSeconds && (() => disabledSeconds == null ? void 0 : disabledSeconds(hour, minute, role, compare)));
|
};
|
return {
|
getHoursList,
|
getMinutesList,
|
getSecondsList
|
};
|
};
|
const buildAvailableTimeSlotGetter = (disabledHours, disabledMinutes, disabledSeconds) => {
|
const { getHoursList, getMinutesList, getSecondsList } = getTimeLists(disabledHours, disabledMinutes, disabledSeconds);
|
const getAvailableHours = (role, compare) => {
|
return makeAvailableArr(getHoursList(role, compare));
|
};
|
const getAvailableMinutes = (hour, role, compare) => {
|
return makeAvailableArr(getMinutesList(hour, role, compare));
|
};
|
const getAvailableSeconds = (hour, minute, role, compare) => {
|
return makeAvailableArr(getSecondsList(hour, minute, role, compare));
|
};
|
return {
|
getAvailableHours,
|
getAvailableMinutes,
|
getAvailableSeconds
|
};
|
};
|
const useOldValue = (props) => {
|
const oldValue = vue.ref(props.parsedValue);
|
vue.watch(() => props.visible, (val) => {
|
if (!val) {
|
oldValue.value = props.parsedValue;
|
}
|
});
|
return oldValue;
|
};
|
|
exports.buildAvailableTimeSlotGetter = buildAvailableTimeSlotGetter;
|
exports.getTimeLists = getTimeLists;
|
exports.useOldValue = useOldValue;
|
//# sourceMappingURL=use-time-picker.js.map
|