| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- 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);
- 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 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);
- };
- export { compareTime, formatTime, nextTime, padTime, parseTime };
- //# sourceMappingURL=utils.mjs.map
|