| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
- //#region ../../packages/components/time-select/src/utils.ts
- const parseTime = (time) => {
- const values = (time || "").split(":");
- if (values.length >= 2) {
- let hours = Number.parseInt(values[0], 10);
- const minutes = Number.parseInt(values[1], 10);
- if (Number.isNaN(hours) || Number.isNaN(minutes)) return null;
- const timeUpper = time.toUpperCase();
- if (timeUpper.includes("AM") && hours === 12) hours = 0;
- else if (timeUpper.includes("PM") && hours !== 12) hours += 12;
- return {
- hours,
- minutes
- };
- }
- return null;
- };
- const isValidTime = (time) => !!time && time.hours >= 0 && time.minutes >= 0 && !Number.isNaN(time.hours) && !Number.isNaN(time.minutes);
- const compareTime = (time1, time2) => {
- const value1 = parseTime(time1);
- if (!value1) return -1;
- const value2 = parseTime(time2);
- if (!value2) return -1;
- const minutes1 = value1.minutes + value1.hours * 60;
- const minutes2 = value2.minutes + value2.hours * 60;
- if (minutes1 === minutes2) return 0;
- return minutes1 > minutes2 ? 1 : -1;
- };
- const padTime = (time) => {
- return `${time}`.padStart(2, "0");
- };
- const formatTime = (time) => {
- return `${padTime(time.hours)}:${padTime(time.minutes)}`;
- };
- const nextTime = (time, step) => {
- const timeValue = parseTime(time);
- if (!timeValue) return "";
- const stepValue = parseTime(step);
- if (!stepValue) return "";
- const next = {
- hours: timeValue.hours,
- minutes: timeValue.minutes
- };
- next.minutes += stepValue.minutes;
- next.hours += stepValue.hours;
- next.hours += Math.floor(next.minutes / 60);
- next.minutes = next.minutes % 60;
- return formatTime(next);
- };
- //#endregion
- exports.compareTime = compareTime;
- exports.formatTime = formatTime;
- exports.isValidTime = isValidTime;
- exports.nextTime = nextTime;
- exports.padTime = padTime;
- exports.parseTime = parseTime;
- //# sourceMappingURL=utils.js.map
|