@uxf/datepicker 1.2.0 → 10.0.0-beta.35
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/contexts/date-picker-context.d.ts +1 -1
- package/contexts/date-picker-context.js +18 -19
- package/contexts/date-range-picker-context.d.ts +1 -1
- package/contexts/date-range-picker-context.js +21 -21
- package/contexts/time-picker-context.d.ts +1 -1
- package/contexts/time-picker-context.js +9 -10
- package/hooks/use-date-picker-navigation.js +32 -36
- package/hooks/use-date-picker-navigation.test.js +37 -46
- package/hooks/use-date-picker.d.ts +1 -1
- package/hooks/use-date-picker.js +66 -86
- package/hooks/use-date-picker.test.js +25 -32
- package/hooks/use-date-range-picker.d.ts +2 -1
- package/hooks/use-date-range-picker.js +94 -112
- package/hooks/use-date-range-picker.test.js +39 -50
- package/hooks/use-day.d.ts +3 -1
- package/hooks/use-day.js +13 -14
- package/hooks/use-day.test.js +44 -44
- package/hooks/use-decade.js +11 -15
- package/hooks/use-decade.test.js +13 -18
- package/hooks/use-hour.js +6 -8
- package/hooks/use-hour.test.js +26 -31
- package/hooks/use-hours.d.ts +1 -1
- package/hooks/use-hours.js +7 -11
- package/hooks/use-hours.test.js +8 -11
- package/hooks/use-minute.js +6 -8
- package/hooks/use-minute.test.js +26 -31
- package/hooks/use-minutes.d.ts +1 -1
- package/hooks/use-minutes.js +7 -11
- package/hooks/use-minutes.test.js +8 -11
- package/hooks/use-month.js +12 -14
- package/hooks/use-month.test.js +17 -22
- package/hooks/use-time-picker.d.ts +2 -2
- package/hooks/use-time-picker.js +43 -61
- package/hooks/use-time-picker.test.js +31 -40
- package/hooks/use-year.js +8 -10
- package/hooks/use-year.test.js +13 -18
- package/package.json +5 -21
- package/utils/can-select-range.js +9 -11
- package/utils/can-select-range.test.js +10 -11
- package/utils/dayjs-en.js +8 -5
- package/utils/get-current-year-month-and-date.js +2 -3
- package/utils/get-current-year-month-and-date.test.js +4 -5
- package/utils/get-date-month-and-year.js +6 -7
- package/utils/get-date-month-and-year.test.js +2 -3
- package/utils/get-days.d.ts +1 -1
- package/utils/get-days.js +20 -47
- package/utils/get-days.test.js +6 -7
- package/utils/get-each.js +3 -5
- package/utils/get-each.test.js +6 -7
- package/utils/get-initial-months.js +7 -8
- package/utils/get-initial-months.test.js +5 -6
- package/utils/get-months.d.ts +1 -1
- package/utils/get-months.js +8 -10
- package/utils/get-months.test.js +5 -6
- package/utils/get-next-active-month.js +5 -6
- package/utils/get-next-active-month.test.js +8 -9
- package/utils/get-weekday-labels.js +6 -8
- package/utils/get-weekday-labels.test.js +8 -9
- package/utils/get-years.d.ts +1 -1
- package/utils/get-years.js +5 -7
- package/utils/get-years.test.js +5 -6
- package/utils/is-browser.js +0 -1
- package/utils/is-date-blocked.js +5 -7
- package/utils/is-date-blocked.test.js +3 -4
- package/utils/is-date-hovered.js +6 -8
- package/utils/is-date-hovered.test.js +9 -10
- package/utils/is-date-inside-range.d.ts +1 -0
- package/utils/is-date-inside-range.js +11 -0
- package/utils/is-date-selected.test.js +10 -11
- package/utils/is-end-date.js +1 -2
- package/utils/is-end-date.test.js +2 -3
- package/utils/is-first-or-last-selected-date.js +1 -2
- package/utils/is-first-or-last-selected-date.test.js +2 -3
- package/utils/is-in-unavailable-dates.js +3 -5
- package/utils/is-in-unavailable-dates.test.js +2 -3
- package/utils/is-start-date.js +1 -2
- package/utils/is-start-date.test.js +2 -3
- package/utils/types.d.ts +1 -1
- package/utils/types.js +0 -1
- package/utils/is-date-selected.d.ts +0 -1
- package/utils/is-date-selected.js +0 -12
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
test("useMinutes",
|
|
6
|
-
|
|
3
|
+
const react_hooks_1 = require("@testing-library/react-hooks");
|
|
4
|
+
const use_minutes_1 = require("./use-minutes");
|
|
5
|
+
test("useMinutes", () => {
|
|
6
|
+
const { result } = (0, react_hooks_1.renderHook)(() => (0, use_minutes_1.useMinutes)({}));
|
|
7
7
|
expect(result.current.minutes).toStrictEqual([
|
|
8
8
|
{ label: "00", value: 0 },
|
|
9
9
|
{ label: "05", value: 5 },
|
|
@@ -19,12 +19,10 @@ test("useMinutes", function () {
|
|
|
19
19
|
{ label: "55", value: 55 },
|
|
20
20
|
]);
|
|
21
21
|
});
|
|
22
|
-
test("useMinutes with custom format",
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
});
|
|
27
|
-
}).result;
|
|
22
|
+
test("useMinutes with custom format", () => {
|
|
23
|
+
const { result } = (0, react_hooks_1.renderHook)(() => (0, use_minutes_1.useMinutes)({
|
|
24
|
+
labelFormat: (minute) => "--" + minute + "--",
|
|
25
|
+
}));
|
|
28
26
|
expect(result.current.minutes).toStrictEqual([
|
|
29
27
|
{ label: "--0--", value: 0 },
|
|
30
28
|
{ label: "--5--", value: 5 },
|
|
@@ -40,4 +38,3 @@ test("useMinutes with custom format", function () {
|
|
|
40
38
|
{ label: "--55--", value: 55 },
|
|
41
39
|
]);
|
|
42
40
|
});
|
|
43
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlLW1pbnV0ZXMudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ob29rcy91c2UtbWludXRlcy50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsNERBQTBEO0FBQzFELDZDQUEyQztBQUUzQyxJQUFJLENBQUMsWUFBWSxFQUFFO0lBQ1AsSUFBQSxNQUFNLEdBQUssSUFBQSx3QkFBVSxFQUFDLGNBQU0sT0FBQSxJQUFBLHdCQUFVLEVBQUMsRUFBRSxDQUFDLEVBQWQsQ0FBYyxDQUFDLE9BQXJDLENBQXNDO0lBRXBELE1BQU0sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLGFBQWEsQ0FBQztRQUN6QyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRTtRQUN6QixFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRTtRQUN6QixFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRTtRQUMxQixFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRTtRQUMxQixFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRTtRQUMxQixFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRTtRQUMxQixFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRTtRQUMxQixFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRTtRQUMxQixFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRTtRQUMxQixFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRTtRQUMxQixFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRTtRQUMxQixFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRTtLQUM3QixDQUFDLENBQUM7QUFDUCxDQUFDLENBQUMsQ0FBQztBQUVILElBQUksQ0FBQywrQkFBK0IsRUFBRTtJQUMxQixJQUFBLE1BQU0sR0FBSyxJQUFBLHdCQUFVLEVBQUM7UUFDMUIsT0FBQSxJQUFBLHdCQUFVLEVBQUM7WUFDUCxXQUFXLEVBQUUsVUFBQSxNQUFNLElBQUksT0FBQSxJQUFJLEdBQUcsTUFBTSxHQUFHLElBQUksRUFBcEIsQ0FBb0I7U0FDOUMsQ0FBQztJQUZGLENBRUUsQ0FDTCxPQUphLENBSVo7SUFFRixNQUFNLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxhQUFhLENBQUM7UUFDekMsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUU7UUFDNUIsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUU7UUFDNUIsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUU7UUFDOUIsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUU7UUFDOUIsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUU7UUFDOUIsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUU7UUFDOUIsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUU7UUFDOUIsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUU7UUFDOUIsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUU7UUFDOUIsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUU7UUFDOUIsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUU7UUFDOUIsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUU7S0FDakMsQ0FBQyxDQUFDO0FBQ1AsQ0FBQyxDQUFDLENBQUMifQ==
|
package/hooks/use-month.js
CHANGED
|
@@ -1,25 +1,23 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.useMonth = exports.monthLabelFormatFn = exports.weekdayLabelFormatFn = exports.dayLabelFormatFn = void 0;
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
4
|
+
const react_1 = require("react");
|
|
5
|
+
const get_days_1 = require("../utils/get-days");
|
|
6
|
+
const get_weekday_labels_1 = require("../utils/get-weekday-labels");
|
|
7
|
+
const dayjs_en_1 = require("../utils/dayjs-en");
|
|
8
|
+
const dayLabelFormatFn = (date) => (0, dayjs_en_1.dayjsEn)(date).format("DD");
|
|
9
9
|
exports.dayLabelFormatFn = dayLabelFormatFn;
|
|
10
|
-
|
|
10
|
+
const weekdayLabelFormatFn = (date) => (0, dayjs_en_1.dayjsEn)(date).format("dd"); // localization
|
|
11
11
|
exports.weekdayLabelFormatFn = weekdayLabelFormatFn;
|
|
12
|
-
|
|
12
|
+
const monthLabelFormatFn = (date) => (0, dayjs_en_1.dayjsEn)(date).format("MMMM YYYY");
|
|
13
13
|
exports.monthLabelFormatFn = monthLabelFormatFn;
|
|
14
|
-
function useMonth(
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
var weekdayLabels = (0, react_1.useMemo)(function () { return (0, get_weekday_labels_1.getWeekdayLabels)({ firstDayOfWeek: firstDayOfWeek, weekdayLabelFormat: weekdayLabelFormat }); }, [firstDayOfWeek, weekdayLabelFormat]);
|
|
14
|
+
function useMonth({ dayLabelFormat = exports.dayLabelFormatFn, firstDayOfWeek = 0, month, monthLabelFormat = exports.monthLabelFormatFn, weekdayLabelFormat = exports.weekdayLabelFormatFn, year, }) {
|
|
15
|
+
const days = (0, react_1.useMemo)(() => (0, get_days_1.getDays)({ year, month, firstDayOfWeek, dayLabelFormat }), [year, month, firstDayOfWeek, dayLabelFormat]);
|
|
16
|
+
const weekdayLabels = (0, react_1.useMemo)(() => (0, get_weekday_labels_1.getWeekdayLabels)({ firstDayOfWeek, weekdayLabelFormat }), [firstDayOfWeek, weekdayLabelFormat]);
|
|
18
17
|
return {
|
|
19
|
-
days
|
|
18
|
+
days,
|
|
20
19
|
monthLabel: monthLabelFormat(new Date(year, month)),
|
|
21
|
-
weekdayLabels
|
|
20
|
+
weekdayLabels,
|
|
22
21
|
};
|
|
23
22
|
}
|
|
24
23
|
exports.useMonth = useMonth;
|
|
25
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlLW1vbnRoLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hvb2tzL3VzZS1tb250aC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwrQkFBZ0M7QUFDaEMsOENBQXVFO0FBQ3ZFLGtFQUFzRjtBQUN0Riw4Q0FBNEM7QUFFckMsSUFBTSxnQkFBZ0IsR0FBRyxVQUFDLElBQVUsSUFBSyxPQUFBLElBQUEsa0JBQU8sRUFBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQTFCLENBQTBCLENBQUM7QUFBOUQsUUFBQSxnQkFBZ0Isb0JBQThDO0FBQ3BFLElBQU0sb0JBQW9CLEdBQUcsVUFBQyxJQUFVLElBQUssT0FBQSxJQUFBLGtCQUFPLEVBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUExQixDQUEwQixDQUFDLENBQUMsZUFBZTtBQUFsRixRQUFBLG9CQUFvQix3QkFBOEM7QUFDeEUsSUFBTSxrQkFBa0IsR0FBRyxVQUFDLElBQVUsSUFBSyxPQUFBLElBQUEsa0JBQU8sRUFBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLEVBQWpDLENBQWlDLENBQUM7QUFBdkUsUUFBQSxrQkFBa0Isc0JBQXFEO0FBWXBGLFNBQWdCLFFBQVEsQ0FBQyxFQU9UO1FBTlosc0JBQWlDLEVBQWpDLGNBQWMsbUJBQUcsd0JBQWdCLEtBQUEsRUFDakMsc0JBQWtCLEVBQWxCLGNBQWMsbUJBQUcsQ0FBQyxLQUFBLEVBQ2xCLEtBQUssV0FBQSxFQUNMLHdCQUFxQyxFQUFyQyxnQkFBZ0IsbUJBQUcsMEJBQWtCLEtBQUEsRUFDckMsMEJBQXlDLEVBQXpDLGtCQUFrQixtQkFBRyw0QkFBb0IsS0FBQSxFQUN6QyxJQUFJLFVBQUE7SUFFSixJQUFNLElBQUksR0FBRyxJQUFBLGVBQU8sRUFDaEIsY0FBTSxPQUFBLElBQUEsa0JBQU8sRUFBQyxFQUFFLElBQUksTUFBQSxFQUFFLEtBQUssT0FBQSxFQUFFLGNBQWMsZ0JBQUEsRUFBRSxjQUFjLGdCQUFBLEVBQUUsQ0FBQyxFQUF4RCxDQUF3RCxFQUM5RCxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsY0FBYyxFQUFFLGNBQWMsQ0FBQyxDQUNoRCxDQUFDO0lBQ0YsSUFBTSxhQUFhLEdBQUcsSUFBQSxlQUFPLEVBQ3pCLGNBQU0sT0FBQSxJQUFBLHFDQUFnQixFQUFDLEVBQUUsY0FBYyxnQkFBQSxFQUFFLGtCQUFrQixvQkFBQSxFQUFFLENBQUMsRUFBeEQsQ0FBd0QsRUFDOUQsQ0FBQyxjQUFjLEVBQUUsa0JBQWtCLENBQUMsQ0FDdkMsQ0FBQztJQUVGLE9BQU87UUFDSCxJQUFJLE1BQUE7UUFDSixVQUFVLEVBQUUsZ0JBQWdCLENBQUMsSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ25ELGFBQWEsZUFBQTtLQUNoQixDQUFDO0FBQ04sQ0FBQztBQXRCRCw0QkFzQkMifQ==
|
package/hooks/use-month.test.js
CHANGED
|
@@ -3,16 +3,14 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
test("useMonth",
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
});
|
|
15
|
-
}).result;
|
|
6
|
+
const react_hooks_1 = require("@testing-library/react-hooks");
|
|
7
|
+
const dayjs_1 = __importDefault(require("dayjs"));
|
|
8
|
+
const use_month_1 = require("./use-month");
|
|
9
|
+
test("useMonth", () => {
|
|
10
|
+
const { result } = (0, react_hooks_1.renderHook)(() => (0, use_month_1.useMonth)({
|
|
11
|
+
year: 2021,
|
|
12
|
+
month: 0,
|
|
13
|
+
}));
|
|
16
14
|
expect(result.current.monthLabel).toBe("January 2021");
|
|
17
15
|
expect(result.current.days).toStrictEqual([
|
|
18
16
|
{ dayLabel: "27", date: new Date("2020-12-27"), currentMonth: false },
|
|
@@ -60,17 +58,15 @@ test("useMonth", function () {
|
|
|
60
58
|
]);
|
|
61
59
|
expect(result.current.weekdayLabels).toStrictEqual(["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"]);
|
|
62
60
|
});
|
|
63
|
-
test("useMonth with custom formats and firstDayOfWeek",
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
});
|
|
73
|
-
}).result;
|
|
61
|
+
test("useMonth with custom formats and firstDayOfWeek", () => {
|
|
62
|
+
const { result } = (0, react_hooks_1.renderHook)(() => (0, use_month_1.useMonth)({
|
|
63
|
+
year: 2021,
|
|
64
|
+
month: 0,
|
|
65
|
+
firstDayOfWeek: 1,
|
|
66
|
+
monthLabelFormat: (date) => (0, dayjs_1.default)(date).format("MM"),
|
|
67
|
+
dayLabelFormat: (date) => (0, dayjs_1.default)(date).format("D"),
|
|
68
|
+
weekdayLabelFormat: (date) => (0, dayjs_1.default)(date).format("dddd"),
|
|
69
|
+
}));
|
|
74
70
|
expect(result.current.monthLabel).toBe("01");
|
|
75
71
|
expect(result.current.days).toStrictEqual([
|
|
76
72
|
{ dayLabel: "28", date: new Date("2020-12-28"), currentMonth: false },
|
|
@@ -119,4 +115,3 @@ test("useMonth with custom formats and firstDayOfWeek", function () {
|
|
|
119
115
|
"Sunday",
|
|
120
116
|
]);
|
|
121
117
|
});
|
|
122
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlLW1vbnRoLnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaG9va3MvdXNlLW1vbnRoLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSw0REFBMEQ7QUFDMUQsZ0RBQTBCO0FBQzFCLHlDQUF1QztBQUV2QyxJQUFJLENBQUMsVUFBVSxFQUFFO0lBQ0wsSUFBQSxNQUFNLEdBQUssSUFBQSx3QkFBVSxFQUFDO1FBQzFCLE9BQUEsSUFBQSxvQkFBUSxFQUFDO1lBQ0wsSUFBSSxFQUFFLElBQUk7WUFDVixLQUFLLEVBQUUsQ0FBQztTQUNYLENBQUM7SUFIRixDQUdFLENBQ0wsT0FMYSxDQUtaO0lBRUYsTUFBTSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQ3ZELE1BQU0sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLGFBQWEsQ0FBQztRQUN0QyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUU7UUFDckUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFO1FBQ3JFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRTtRQUNyRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUU7UUFDckUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFO1FBQ3JFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRTtRQUNwRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUU7UUFDcEUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFO1FBQ3BFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRTtRQUNwRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUU7UUFDcEUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFO1FBQ3BFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRTtRQUNwRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUU7UUFDcEUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFO1FBQ3BFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRTtRQUNwRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUU7UUFDcEUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFO1FBQ3BFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRTtRQUNwRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUU7UUFDcEUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFO1FBQ3BFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRTtRQUNwRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUU7UUFDcEUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFO1FBQ3BFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRTtRQUNwRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUU7UUFDcEUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFO1FBQ3BFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRTtRQUNwRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUU7UUFDcEUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFO1FBQ3BFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRTtRQUNwRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUU7UUFDcEUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFO1FBQ3BFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRTtRQUNwRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUU7UUFDcEUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLElBQUks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QUFJLEVBQUUsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRTtRQUNyRSxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUU7UUFDbkUsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFO1FBQ25FLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRTtRQUNuRSxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUU7UUFDbkUsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFO1FBQ25FLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRTtRQUNuRSxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUU7UUFDbkUsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFO1FBQ25FLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRTtRQUNuRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUU7UUFDcEUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFO1FBQ3BFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRTtRQUNwRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUU7UUFDcEUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFO1FBQ3BFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRTtRQUNwRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUU7UUFDcEUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFO1FBQ3BFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRTtRQUNwRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUU7UUFDcEUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFO1FBQ3BFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRTtRQUNwRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUU7UUFDcEUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFO1FBQ3BFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRTtRQUNwRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUU7UUFDcEUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFO1FBQ3BFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRTtRQUNwRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUU7UUFDcEUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFO1FBQ3BFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRTtRQUNwRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUU7S0FDdkUsQ0FBQyxDQUFDO0lBQ0gsTUFBTSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLENBQUMsYUFBYSxDQUFDO1FBQy9DLFFBQVE7UUFDUixTQUFTO1FBQ1QsV0FBVztRQUNYLFVBQVU7UUFDVixRQUFRO1FBQ1IsVUFBVTtRQUNWLFFBQVE7S0FDWCxDQUFDLENBQUM7QUFDUCxDQUFDLENBQUMsQ0FBQyJ9
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
export
|
|
1
|
+
export type TimeType = {
|
|
2
2
|
hour: number;
|
|
3
3
|
minute: number;
|
|
4
4
|
};
|
|
5
|
-
export
|
|
5
|
+
export type OnTimeChangeType = TimeType | null;
|
|
6
6
|
export interface UseTimePickerProps {
|
|
7
7
|
onSelectCallback?: () => void;
|
|
8
8
|
onTimeChange: (data: OnTimeChangeType) => void;
|
package/hooks/use-time-picker.js
CHANGED
|
@@ -1,101 +1,83 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __read = (this && this.__read) || function (o, n) {
|
|
3
|
-
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
4
|
-
if (!m) return o;
|
|
5
|
-
var i = m.call(o), r, ar = [], e;
|
|
6
|
-
try {
|
|
7
|
-
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
8
|
-
}
|
|
9
|
-
catch (error) { e = { error: error }; }
|
|
10
|
-
finally {
|
|
11
|
-
try {
|
|
12
|
-
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
13
|
-
}
|
|
14
|
-
finally { if (e) throw e.error; }
|
|
15
|
-
}
|
|
16
|
-
return ar;
|
|
17
|
-
};
|
|
18
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
19
3
|
exports.useTimePicker = void 0;
|
|
20
|
-
|
|
21
|
-
function useTimePicker(
|
|
22
|
-
var
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
var _isTimeSelected = function (time) { return time.hour === (selectedTime === null || selectedTime === void 0 ? void 0 : selectedTime.hour) && time.minute === selectedTime.minute; };
|
|
4
|
+
const react_1 = require("react");
|
|
5
|
+
function useTimePicker({ selectedTime, onTimeChange, onSelectCallback, }) {
|
|
6
|
+
var _a, _b;
|
|
7
|
+
const [focusedHour, setFocusedHour] = (0, react_1.useState)((_a = selectedTime === null || selectedTime === void 0 ? void 0 : selectedTime.hour) !== null && _a !== void 0 ? _a : null);
|
|
8
|
+
const [focusedMinute, setFocusedMinute] = (0, react_1.useState)((_b = selectedTime === null || selectedTime === void 0 ? void 0 : selectedTime.minute) !== null && _b !== void 0 ? _b : null);
|
|
9
|
+
const _isTimeSelected = (time) => time.hour === (selectedTime === null || selectedTime === void 0 ? void 0 : selectedTime.hour) && time.minute === selectedTime.minute;
|
|
27
10
|
function onTimeSelect(time) {
|
|
28
11
|
if (!_isTimeSelected(time)) {
|
|
29
12
|
onTimeChange(time);
|
|
30
13
|
}
|
|
31
14
|
}
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
15
|
+
const isHourFocused = (hour) => hour === focusedHour;
|
|
16
|
+
const isMinuteFocused = (minute) => minute === focusedMinute;
|
|
17
|
+
const isHourSelected = (hour) => hour === (selectedTime === null || selectedTime === void 0 ? void 0 : selectedTime.hour);
|
|
18
|
+
const isMinuteSelected = (minute) => minute === (selectedTime === null || selectedTime === void 0 ? void 0 : selectedTime.minute);
|
|
19
|
+
const onHourFocus = (hour) => {
|
|
37
20
|
setFocusedHour(hour);
|
|
38
21
|
};
|
|
39
|
-
|
|
22
|
+
const onMinuteFocus = (minute) => {
|
|
40
23
|
setFocusedMinute(minute);
|
|
41
24
|
};
|
|
42
|
-
|
|
25
|
+
const onHourSelect = (hour) => {
|
|
43
26
|
var _a;
|
|
44
|
-
onTimeChange({ hour
|
|
27
|
+
onTimeChange({ hour, minute: (_a = selectedTime === null || selectedTime === void 0 ? void 0 : selectedTime.minute) !== null && _a !== void 0 ? _a : 0 });
|
|
45
28
|
onSelectCallback === null || onSelectCallback === void 0 ? void 0 : onSelectCallback();
|
|
46
29
|
};
|
|
47
|
-
|
|
30
|
+
const onMinuteSelect = (minute) => {
|
|
48
31
|
var _a;
|
|
49
|
-
onTimeChange({ hour: (_a = selectedTime === null || selectedTime === void 0 ? void 0 : selectedTime.hour) !== null && _a !== void 0 ? _a : 0, minute
|
|
32
|
+
onTimeChange({ hour: (_a = selectedTime === null || selectedTime === void 0 ? void 0 : selectedTime.hour) !== null && _a !== void 0 ? _a : 0, minute });
|
|
50
33
|
onSelectCallback === null || onSelectCallback === void 0 ? void 0 : onSelectCallback();
|
|
51
34
|
};
|
|
52
|
-
|
|
35
|
+
const goToPrevHour = (0, react_1.useCallback)(() => {
|
|
53
36
|
var _a, _b;
|
|
54
|
-
|
|
55
|
-
|
|
37
|
+
const nowHour = (_a = selectedTime === null || selectedTime === void 0 ? void 0 : selectedTime.hour) !== null && _a !== void 0 ? _a : 0;
|
|
38
|
+
const nowMinute = (_b = selectedTime === null || selectedTime === void 0 ? void 0 : selectedTime.minute) !== null && _b !== void 0 ? _b : 0;
|
|
56
39
|
onTimeChange({ hour: nowHour === 0 ? 23 : nowHour - 1, minute: nowMinute });
|
|
57
40
|
}, [onTimeChange, selectedTime]);
|
|
58
|
-
|
|
41
|
+
const goToNextHour = (0, react_1.useCallback)(() => {
|
|
59
42
|
var _a, _b;
|
|
60
|
-
|
|
61
|
-
|
|
43
|
+
const nowHour = (_a = selectedTime === null || selectedTime === void 0 ? void 0 : selectedTime.hour) !== null && _a !== void 0 ? _a : 0;
|
|
44
|
+
const nowMinute = (_b = selectedTime === null || selectedTime === void 0 ? void 0 : selectedTime.minute) !== null && _b !== void 0 ? _b : 0;
|
|
62
45
|
onTimeChange({ hour: nowHour === 23 ? 0 : nowHour + 1, minute: nowMinute });
|
|
63
46
|
}, [onTimeChange, selectedTime]);
|
|
64
|
-
|
|
47
|
+
const goToPrevMinute = (0, react_1.useCallback)(() => {
|
|
65
48
|
var _a, _b;
|
|
66
|
-
|
|
67
|
-
|
|
49
|
+
const nowHour = (_a = selectedTime === null || selectedTime === void 0 ? void 0 : selectedTime.hour) !== null && _a !== void 0 ? _a : 0;
|
|
50
|
+
const nowMinute = (_b = selectedTime === null || selectedTime === void 0 ? void 0 : selectedTime.minute) !== null && _b !== void 0 ? _b : 0;
|
|
68
51
|
onTimeChange({
|
|
69
52
|
hour: nowMinute === 0 ? (nowHour === 0 ? 23 : nowHour - 1) : nowHour,
|
|
70
53
|
minute: nowMinute === 0 ? 59 : nowMinute - 1,
|
|
71
54
|
});
|
|
72
55
|
}, [onTimeChange, selectedTime]);
|
|
73
|
-
|
|
56
|
+
const goToNextMinute = (0, react_1.useCallback)(() => {
|
|
74
57
|
var _a, _b;
|
|
75
|
-
|
|
76
|
-
|
|
58
|
+
const nowHour = (_a = selectedTime === null || selectedTime === void 0 ? void 0 : selectedTime.hour) !== null && _a !== void 0 ? _a : 0;
|
|
59
|
+
const nowMinute = (_b = selectedTime === null || selectedTime === void 0 ? void 0 : selectedTime.minute) !== null && _b !== void 0 ? _b : 0;
|
|
77
60
|
onTimeChange({
|
|
78
61
|
hour: nowMinute === 59 ? (nowHour === 23 ? 0 : nowHour + 1) : nowHour,
|
|
79
62
|
minute: nowMinute === 59 ? 0 : nowMinute + 1,
|
|
80
63
|
});
|
|
81
64
|
}, [onTimeChange, selectedTime]);
|
|
82
65
|
return {
|
|
83
|
-
goToPrevHour
|
|
84
|
-
goToNextHour
|
|
85
|
-
goToPrevMinute
|
|
86
|
-
goToNextMinute
|
|
87
|
-
onTimeSelect
|
|
88
|
-
focusedHour
|
|
89
|
-
focusedMinute
|
|
90
|
-
isHourFocused
|
|
91
|
-
isHourSelected
|
|
92
|
-
isMinuteFocused
|
|
93
|
-
isMinuteSelected
|
|
94
|
-
onHourFocus
|
|
95
|
-
onHourSelect
|
|
96
|
-
onMinuteFocus
|
|
97
|
-
onMinuteSelect
|
|
66
|
+
goToPrevHour,
|
|
67
|
+
goToNextHour,
|
|
68
|
+
goToPrevMinute,
|
|
69
|
+
goToNextMinute,
|
|
70
|
+
onTimeSelect,
|
|
71
|
+
focusedHour,
|
|
72
|
+
focusedMinute,
|
|
73
|
+
isHourFocused,
|
|
74
|
+
isHourSelected,
|
|
75
|
+
isMinuteFocused,
|
|
76
|
+
isMinuteSelected,
|
|
77
|
+
onHourFocus,
|
|
78
|
+
onHourSelect,
|
|
79
|
+
onMinuteFocus,
|
|
80
|
+
onMinuteSelect,
|
|
98
81
|
};
|
|
99
82
|
}
|
|
100
83
|
exports.useTimePicker = useTimePicker;
|
|
101
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlLXRpbWUtcGlja2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hvb2tzL3VzZS10aW1lLXBpY2tlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsK0JBQThDO0FBOEI5QyxTQUFnQixhQUFhLENBQUMsRUFJVDs7UUFIakIsWUFBWSxrQkFBQSxFQUNaLFlBQVksa0JBQUEsRUFDWixnQkFBZ0Isc0JBQUE7SUFFVixJQUFBLEtBQUEsT0FBZ0MsSUFBQSxnQkFBUSxFQUFnQixNQUFBLFlBQVksYUFBWixZQUFZLHVCQUFaLFlBQVksQ0FBRSxJQUFJLG1DQUFJLElBQUksQ0FBQyxJQUFBLEVBQWxGLFdBQVcsUUFBQSxFQUFFLGNBQWMsUUFBdUQsQ0FBQztJQUNwRixJQUFBLEtBQUEsT0FBb0MsSUFBQSxnQkFBUSxFQUFnQixNQUFBLFlBQVksYUFBWixZQUFZLHVCQUFaLFlBQVksQ0FBRSxNQUFNLG1DQUFJLElBQUksQ0FBQyxJQUFBLEVBQXhGLGFBQWEsUUFBQSxFQUFFLGdCQUFnQixRQUF5RCxDQUFDO0lBRWhHLElBQU0sZUFBZSxHQUFHLFVBQUMsSUFBYyxJQUFLLE9BQUEsSUFBSSxDQUFDLElBQUksTUFBSyxZQUFZLGFBQVosWUFBWSx1QkFBWixZQUFZLENBQUUsSUFBSSxDQUFBLElBQUksSUFBSSxDQUFDLE1BQU0sS0FBSyxZQUFZLENBQUMsTUFBTSxFQUF2RSxDQUF1RSxDQUFDO0lBRXBILFNBQVMsWUFBWSxDQUFDLElBQWM7UUFDaEMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUN4QixZQUFZLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDdEI7SUFDTCxDQUFDO0lBRUQsSUFBTSxhQUFhLEdBQUcsVUFBQyxJQUFZLElBQUssT0FBQSxJQUFJLEtBQUssV0FBVyxFQUFwQixDQUFvQixDQUFDO0lBQzdELElBQU0sZUFBZSxHQUFHLFVBQUMsTUFBYyxJQUFLLE9B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
|
|
@@ -1,31 +1,27 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
test("base data",
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
});
|
|
13
|
-
}).result;
|
|
3
|
+
const react_hooks_1 = require("@testing-library/react-hooks");
|
|
4
|
+
const react_1 = require("react");
|
|
5
|
+
const use_time_picker_1 = require("./use-time-picker");
|
|
6
|
+
test("base data", () => {
|
|
7
|
+
const BASE_TIME = { hour: 12, minute: 57 };
|
|
8
|
+
const { result } = (0, react_hooks_1.renderHook)(() => (0, use_time_picker_1.useTimePicker)({
|
|
9
|
+
selectedTime: BASE_TIME,
|
|
10
|
+
onTimeChange: () => undefined,
|
|
11
|
+
}));
|
|
14
12
|
expect(result.current.focusedHour).toBe(BASE_TIME.hour);
|
|
15
13
|
expect(result.current.focusedMinute).toBe(BASE_TIME.minute);
|
|
16
14
|
});
|
|
17
|
-
test("time focus",
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
}).result;
|
|
23
|
-
var NEW_TIME = { hour: 13, minute: 15 };
|
|
15
|
+
test("time focus", () => {
|
|
16
|
+
const BASE_TIME = { hour: 12, minute: 57 };
|
|
17
|
+
const { result: state } = (0, react_hooks_1.renderHook)(() => (0, react_1.useState)(BASE_TIME));
|
|
18
|
+
const { result } = (0, react_hooks_1.renderHook)(() => (0, use_time_picker_1.useTimePicker)({ selectedTime: state.current[0], onTimeChange: (time) => state.current[1](time) }));
|
|
19
|
+
const NEW_TIME = { hour: 13, minute: 15 };
|
|
24
20
|
expect(result.current.isHourFocused(BASE_TIME.hour)).toBe(true);
|
|
25
21
|
expect(result.current.isHourFocused(NEW_TIME.hour)).toBe(false);
|
|
26
22
|
expect(result.current.isMinuteFocused(BASE_TIME.minute)).toBe(true);
|
|
27
23
|
expect(result.current.isMinuteFocused(NEW_TIME.minute)).toBe(false);
|
|
28
|
-
(0, react_hooks_1.act)(
|
|
24
|
+
(0, react_hooks_1.act)(() => {
|
|
29
25
|
result.current.onHourFocus(NEW_TIME.hour);
|
|
30
26
|
result.current.onMinuteFocus(NEW_TIME.minute);
|
|
31
27
|
});
|
|
@@ -34,18 +30,16 @@ test("time focus", function () {
|
|
|
34
30
|
expect(result.current.isMinuteFocused(NEW_TIME.minute)).toBe(true);
|
|
35
31
|
expect(result.current.isMinuteFocused(BASE_TIME.minute)).toBe(false);
|
|
36
32
|
});
|
|
37
|
-
test("time select",
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
}), result = _a.result, rerender = _a.rerender;
|
|
43
|
-
var NEW_TIME = { hour: 13, minute: 15 };
|
|
33
|
+
test("time select", () => {
|
|
34
|
+
const BASE_TIME = { hour: 12, minute: 57 };
|
|
35
|
+
const { result: state } = (0, react_hooks_1.renderHook)(() => (0, react_1.useState)(BASE_TIME));
|
|
36
|
+
const { result, rerender } = (0, react_hooks_1.renderHook)(() => (0, use_time_picker_1.useTimePicker)({ selectedTime: state.current[0], onTimeChange: (time) => state.current[1](time) }));
|
|
37
|
+
const NEW_TIME = { hour: 13, minute: 15 };
|
|
44
38
|
expect(result.current.isHourSelected(BASE_TIME.hour)).toBe(true);
|
|
45
39
|
expect(result.current.isHourSelected(NEW_TIME.hour)).toBe(false);
|
|
46
40
|
expect(result.current.isMinuteSelected(BASE_TIME.minute)).toBe(true);
|
|
47
41
|
expect(result.current.isMinuteSelected(NEW_TIME.minute)).toBe(false);
|
|
48
|
-
(0, react_hooks_1.act)(
|
|
42
|
+
(0, react_hooks_1.act)(() => {
|
|
49
43
|
result.current.onTimeSelect(NEW_TIME);
|
|
50
44
|
rerender();
|
|
51
45
|
});
|
|
@@ -54,41 +48,38 @@ test("time select", function () {
|
|
|
54
48
|
expect(result.current.isMinuteSelected(NEW_TIME.minute)).toBe(true);
|
|
55
49
|
expect(result.current.isMinuteSelected(BASE_TIME.minute)).toBe(false);
|
|
56
50
|
});
|
|
57
|
-
test("time navigation",
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
}), result = _a.result, rerender = _a.rerender;
|
|
63
|
-
(0, react_hooks_1.act)(function () {
|
|
51
|
+
test("time navigation", () => {
|
|
52
|
+
const BASE_TIME = { hour: 1, minute: 58 };
|
|
53
|
+
const { result: state } = (0, react_hooks_1.renderHook)(() => (0, react_1.useState)(BASE_TIME));
|
|
54
|
+
const { result, rerender } = (0, react_hooks_1.renderHook)(() => (0, use_time_picker_1.useTimePicker)({ selectedTime: state.current[0], onTimeChange: (time) => state.current[1](time) }));
|
|
55
|
+
(0, react_hooks_1.act)(() => {
|
|
64
56
|
result.current.goToPrevHour();
|
|
65
57
|
rerender();
|
|
66
58
|
});
|
|
67
59
|
expect(state.current[0]).toStrictEqual({ hour: 0, minute: 58 });
|
|
68
|
-
(0, react_hooks_1.act)(
|
|
60
|
+
(0, react_hooks_1.act)(() => {
|
|
69
61
|
result.current.goToNextMinute();
|
|
70
62
|
rerender();
|
|
71
63
|
});
|
|
72
64
|
expect(state.current[0]).toStrictEqual({ hour: 0, minute: 59 });
|
|
73
|
-
(0, react_hooks_1.act)(
|
|
65
|
+
(0, react_hooks_1.act)(() => {
|
|
74
66
|
result.current.goToPrevHour();
|
|
75
67
|
rerender();
|
|
76
68
|
});
|
|
77
69
|
expect(state.current[0]).toStrictEqual({ hour: 23, minute: 59 });
|
|
78
|
-
(0, react_hooks_1.act)(
|
|
70
|
+
(0, react_hooks_1.act)(() => {
|
|
79
71
|
result.current.goToNextHour();
|
|
80
72
|
rerender();
|
|
81
73
|
});
|
|
82
74
|
expect(state.current[0]).toStrictEqual({ hour: 0, minute: 59 });
|
|
83
|
-
(0, react_hooks_1.act)(
|
|
75
|
+
(0, react_hooks_1.act)(() => {
|
|
84
76
|
result.current.goToNextMinute();
|
|
85
77
|
rerender();
|
|
86
78
|
});
|
|
87
79
|
expect(state.current[0]).toStrictEqual({ hour: 1, minute: 0 });
|
|
88
|
-
(0, react_hooks_1.act)(
|
|
80
|
+
(0, react_hooks_1.act)(() => {
|
|
89
81
|
result.current.goToPrevMinute();
|
|
90
82
|
rerender();
|
|
91
83
|
});
|
|
92
84
|
expect(state.current[0]).toStrictEqual({ hour: 0, minute: 59 });
|
|
93
85
|
});
|
|
94
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlLXRpbWUtcGlja2VyLnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaG9va3MvdXNlLXRpbWUtcGlja2VyLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSw0REFBK0Q7QUFDL0QsK0JBQWlDO0FBQ2pDLHFEQUE0RDtBQUU1RCxJQUFJLENBQUMsV0FBVyxFQUFFO0lBQ2QsSUFBTSxTQUFTLEdBQWEsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUUsQ0FBQztJQUM3QyxJQUFBLE1BQU0sR0FBSyxJQUFBLHdCQUFVLEVBQUM7UUFDMUIsT0FBQSxJQUFBLCtCQUFhLEVBQUM7WUFDVixZQUFZLEVBQUUsU0FBUztZQUN2QixZQUFZLEVBQUUsY0FBTSxPQUFBLFNBQVMsRUFBVCxDQUFTO1NBQ2hDLENBQUM7SUFIRixDQUdFLENBQ0wsT0FMYSxDQUtaO0lBRUYsTUFBTSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN4RCxNQUFNLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0FBQ2hFLENBQUMsQ0FBQyxDQUFDO0FBRUgsSUFBSSxDQUFDLFlBQVksRUFBRTtJQUNmLElBQU0sU0FBUyxHQUFhLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxNQUFNLEVBQUUsRUFBRSxFQUFFLENBQUM7SUFDN0MsSUFBUSxLQUFLLEdBQUssSUFBQSx3QkFBVSxFQUFDLGNBQU0sT0FBQSxJQUFBLGdCQUFRLEVBQWtCLFNBQVMsQ0FBQyxFQUFwQyxDQUFvQyxDQUFDLE9BQTNELENBQTREO0lBQ3pFLElBQUEsTUFBTSxHQUFLLElBQUEsd0JBQVUsRUFBQztRQUMxQixPQUFBLElBQUEsK0JBQWEsRUFBQyxFQUFFLFlBQVks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
|
package/hooks/use-year.js
CHANGED
|
@@ -1,20 +1,18 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.useYear = exports.yearLabelFormatFn = exports.monthLabelFormatFn = void 0;
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
4
|
+
const react_1 = require("react");
|
|
5
|
+
const get_months_1 = require("../utils/get-months");
|
|
6
|
+
const dayjs_en_1 = require("../utils/dayjs-en");
|
|
7
|
+
const monthLabelFormatFn = (date) => (0, dayjs_en_1.dayjsEn)(date).format("MMMM"); // localized
|
|
8
8
|
exports.monthLabelFormatFn = monthLabelFormatFn;
|
|
9
|
-
|
|
9
|
+
const yearLabelFormatFn = (date) => (0, dayjs_en_1.dayjsEn)(date).format("YYYY");
|
|
10
10
|
exports.yearLabelFormatFn = yearLabelFormatFn;
|
|
11
|
-
function useYear(
|
|
12
|
-
|
|
13
|
-
var months = (0, react_1.useMemo)(function () { return (0, get_months_1.getMonths)({ year: year, monthLabelFormat: monthLabelFormat }); }, [year, monthLabelFormat]);
|
|
11
|
+
function useYear({ yearLabelFormat = exports.yearLabelFormatFn, monthLabelFormat = exports.monthLabelFormatFn, year, }) {
|
|
12
|
+
const months = (0, react_1.useMemo)(() => (0, get_months_1.getMonths)({ year, monthLabelFormat }), [year, monthLabelFormat]);
|
|
14
13
|
return {
|
|
15
|
-
months
|
|
14
|
+
months,
|
|
16
15
|
yearLabel: yearLabelFormat(new Date(year, 0)),
|
|
17
16
|
};
|
|
18
17
|
}
|
|
19
18
|
exports.useYear = useYear;
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlLXllYXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaG9va3MvdXNlLXllYXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsK0JBQWdDO0FBQ2hDLGtEQUErRTtBQUMvRSw4Q0FBNEM7QUFFckMsSUFBTSxrQkFBa0IsR0FBRyxVQUFDLElBQVUsSUFBSyxPQUFBLElBQUEsa0JBQU8sRUFBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQTVCLENBQTRCLENBQUMsQ0FBQyxZQUFZO0FBQS9FLFFBQUEsa0JBQWtCLHNCQUFnRDtBQUN4RSxJQUFNLGlCQUFpQixHQUFHLFVBQUMsSUFBVSxJQUFLLE9BQUEsSUFBQSxrQkFBTyxFQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBNUIsQ0FBNEIsQ0FBQztBQUFqRSxRQUFBLGlCQUFpQixxQkFBZ0Q7QUFZOUUsU0FBZ0IsT0FBTyxDQUFDLEVBSVQ7UUFIWCx1QkFBbUMsRUFBbkMsZUFBZSxtQkFBRyx5QkFBaUIsS0FBQSxFQUNuQyx3QkFBcUMsRUFBckMsZ0JBQWdCLG1CQUFHLDBCQUFrQixLQUFBLEVBQ3JDLElBQUksVUFBQTtJQUVKLElBQU0sTUFBTSxHQUFHLElBQUEsZUFBTyxFQUFDLGNBQU0sT0FBQSxJQUFBLHNCQUFTLEVBQUMsRUFBRSxJQUFJLE1BQUEsRUFBRSxnQkFBZ0Isa0JBQUEsRUFBRSxDQUFDLEVBQXJDLENBQXFDLEVBQUUsQ0FBQyxJQUFJLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDO0lBRTlGLE9BQU87UUFDSCxNQUFNLFFBQUE7UUFDTixTQUFTLEVBQUUsZUFBZSxDQUFDLElBQUksSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQztLQUNoRCxDQUFDO0FBQ04sQ0FBQztBQVhELDBCQVdDIn0=
|
package/hooks/use-year.test.js
CHANGED
|
@@ -3,15 +3,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
test("useYear",
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
});
|
|
14
|
-
}).result;
|
|
6
|
+
const react_hooks_1 = require("@testing-library/react-hooks");
|
|
7
|
+
const dayjs_1 = __importDefault(require("dayjs"));
|
|
8
|
+
const use_year_1 = require("./use-year");
|
|
9
|
+
test("useYear", () => {
|
|
10
|
+
const { result } = (0, react_hooks_1.renderHook)(() => (0, use_year_1.useYear)({
|
|
11
|
+
year: 2021,
|
|
12
|
+
}));
|
|
15
13
|
expect(result.current.yearLabel).toBe("2021");
|
|
16
14
|
expect(result.current.months).toStrictEqual([
|
|
17
15
|
{ date: new Date("2021-01-01"), monthLabel: "January" },
|
|
@@ -28,14 +26,12 @@ test("useYear", function () {
|
|
|
28
26
|
{ date: new Date("2021-12-01"), monthLabel: "December" },
|
|
29
27
|
]);
|
|
30
28
|
});
|
|
31
|
-
test("useYear with custom formats",
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
});
|
|
38
|
-
}).result;
|
|
29
|
+
test("useYear with custom formats", () => {
|
|
30
|
+
const { result } = (0, react_hooks_1.renderHook)(() => (0, use_year_1.useYear)({
|
|
31
|
+
year: 2021,
|
|
32
|
+
monthLabelFormat: (date) => (0, dayjs_1.default)(date).format("MM"),
|
|
33
|
+
yearLabelFormat: (date) => (0, dayjs_1.default)(date).format("YY"),
|
|
34
|
+
}));
|
|
39
35
|
expect(result.current.yearLabel).toBe("21");
|
|
40
36
|
expect(result.current.months).toStrictEqual([
|
|
41
37
|
{ date: new Date("2021-01-01"), monthLabel: "01" },
|
|
@@ -52,4 +48,3 @@ test("useYear with custom formats", function () {
|
|
|
52
48
|
{ date: new Date("2021-12-01"), monthLabel: "12" },
|
|
53
49
|
]);
|
|
54
50
|
});
|
|
55
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlLXllYXIudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ob29rcy91c2UteWVhci50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsNERBQTBEO0FBQzFELGdEQUEwQjtBQUMxQix1Q0FBcUM7QUFFckMsSUFBSSxDQUFDLFNBQVMsRUFBRTtJQUNKLElBQUEsTUFBTSxHQUFLLElBQUEsd0JBQVUsRUFBQztRQUMxQixPQUFBLElBQUEsa0JBQU8sRUFBQztZQUNKLElBQUksRUFBRSxJQUFJO1NBQ2IsQ0FBQztJQUZGLENBRUUsQ0FDTCxPQUphLENBSVo7SUFFRixNQUFNLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDOUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsYUFBYSxDQUFDO1FBQ3hDLEVBQUUsSUFBSSxFQUFFLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUU7UUFDdkQsRUFBRSxJQUFJLEVBQUUsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRTtRQUN4RCxFQUFFLElBQUksRUFBRSxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFO1FBQ3JELEVBQUUsSUFBSSxFQUFFLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUU7UUFDckQsRUFBRSxJQUFJLEVBQUUsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRTtRQUNuRCxFQUFFLElBQUksRUFBRSxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFO1FBQ3BELEVBQUUsSUFBSSxFQUFFLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUU7UUFDcEQsRUFBRSxJQUFJLEVBQUUsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRTtRQUN0RCxFQUFFLElBQUksRUFBRSxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFO1FBQ3pELEVBQUUsSUFBSSxFQUFFLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUU7UUFDdkQsRUFBRSxJQUFJLEVBQUUsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRTtRQUN4RCxFQUFFLElBQUksRUFBRSxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFO0tBQzNELENBQUMsQ0FBQztBQUNQLENBQUMsQ0FBQyxDQUFDO0FBRUgsSUFBSSxDQUFDLDZCQUE2QixFQUFFO0lBQ3hCLElBQUEsTUFBTSxHQUFLLElBQUEsd0JBQVUsRUFBQztRQUMxQixPQUFBLElBQUEsa0JBQU8sRUFBQztZQUNKLElBQUksRUFBRSxJQUFJO1lBQ1YsZ0JBQWdCLEVBQUUsVUFBQSxJQUFJLElBQUksT0FBQSxJQUFBLGVBQUssRUFBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQXhCLENBQXdCO1lBQ2xELGVBQWUsRUFBRSxVQUFBLElBQUksSUFBSSxPQUFBLElBQUEsZUFBSyxFQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBeEIsQ0FBd0I7U0FDcEQsQ0FBQztJQUpGLENBSUUsQ0FDTCxPQU5hLENBTVo7SUFFRixNQUFNLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDNUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsYUFBYSxDQUFDO1FBQ3hDLEVBQUUsSUFBSSxFQUFFLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUU7UUFDbEQsRUFBRSxJQUFJLEVBQUUsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRTtRQUNsRCxFQUFFLElBQUksRUFBRSxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFO1FBQ2xELEVBQUUsSUFBSSxFQUFFLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUU7UUFDbEQsRUFBRSxJQUFJLEVBQUUsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRTtRQUNsRCxFQUFFLElBQUksRUFBRSxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFO1FBQ2xELEVBQUUsSUFBSSxFQUFFLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUU7UUFDbEQsRUFBRSxJQUFJLEVBQUUsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRTtRQUNsRCxFQUFFLElBQUksRUFBRSxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFO1FBQ2xELEVBQUUsSUFBSSxFQUFFLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUU7UUFDbEQsRUFBRSxJQUFJLEVBQUUsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRTtRQUNsRCxFQUFFLElBQUksRUFBRSxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFO0tBQ3JELENBQUMsQ0FBQztBQUNQLENBQUMsQ0FBQyxDQUFDIn0=
|
package/package.json
CHANGED
|
@@ -1,16 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@uxf/datepicker",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "10.0.0-beta.35",
|
|
4
4
|
"description": "A set of React hooks to create an awesome datepicker.",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"scripts": {
|
|
7
|
-
"build": "
|
|
8
|
-
"clean": "rm -rf ./dist",
|
|
9
|
-
"compile": "tsc -P tsconfig.build.json",
|
|
10
|
-
"dev": "parcel demo/index.html",
|
|
11
|
-
"lint:ts": "eslint -c .eslintrc.js \"./**/*.ts*\"",
|
|
7
|
+
"build": "tsc -P tsconfig.json",
|
|
12
8
|
"typecheck": "tsc --noEmit --skipLibCheck",
|
|
13
|
-
"test": "npm run lint:ts && npm run typecheck && npm run jest",
|
|
14
9
|
"jest": "jest --coverage=true"
|
|
15
10
|
},
|
|
16
11
|
"publishConfig": {
|
|
@@ -22,19 +17,8 @@
|
|
|
22
17
|
},
|
|
23
18
|
"devDependencies": {
|
|
24
19
|
"@testing-library/react-hooks": "^7.0.1",
|
|
25
|
-
"@types/
|
|
26
|
-
"
|
|
27
|
-
"@types/react-dom": "^17.0.2",
|
|
28
|
-
"@uxf/eslint-config": "^1.2.3",
|
|
29
|
-
"eslint": "^8.8.0",
|
|
30
|
-
"jest": "^27.0.6",
|
|
31
|
-
"parcel-bundler": "^1.12.5",
|
|
32
|
-
"prettier": "^2.3.0",
|
|
33
|
-
"react": "^17.0.2",
|
|
34
|
-
"react-dom": "^17.0.2",
|
|
35
|
-
"react-test-renderer": "^17.0.2",
|
|
36
|
-
"ts-jest": "^27.0.5",
|
|
37
|
-
"typescript": "^4.2.4"
|
|
20
|
+
"@types/react": "18.2.6",
|
|
21
|
+
"react": "18.2.0"
|
|
38
22
|
},
|
|
39
23
|
"author": "UX Fans s.r.o.",
|
|
40
24
|
"license": "ISC",
|
|
@@ -52,4 +36,4 @@
|
|
|
52
36
|
"node": "16.5.0",
|
|
53
37
|
"yarn": "1.22.19"
|
|
54
38
|
}
|
|
55
|
-
}
|
|
39
|
+
}
|