@snack-uikit/calendar 0.14.2-preview-02d918ac.0 → 0.14.2

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.
Files changed (28) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/dist/cjs/components/Calendar/Calendar.js +6 -5
  3. package/dist/cjs/components/TimePicker/TimePicker.js +43 -32
  4. package/dist/cjs/helperComponents/Button/Button.js +16 -19
  5. package/dist/cjs/helperComponents/CalendarBase/CalendarBase.js +70 -53
  6. package/dist/cjs/helperComponents/CalendarBase/hooks.js +7 -4
  7. package/dist/cjs/helperComponents/CalendarBody/CalendarBody.js +2 -3
  8. package/dist/cjs/helperComponents/CalendarNavigation/CalendarNavigation.js +12 -13
  9. package/dist/cjs/helperComponents/CalendarNavigation/hooks.js +6 -7
  10. package/dist/cjs/helperComponents/ColumnLabel/ColumnLabel.js +5 -8
  11. package/dist/cjs/helperComponents/ColumnLabels/ColumnLabels.js +5 -8
  12. package/dist/cjs/helperComponents/DecadeView/DecadeView.js +11 -12
  13. package/dist/cjs/helperComponents/DecadeView/utils.js +3 -4
  14. package/dist/cjs/helperComponents/Footer/Footer.js +30 -32
  15. package/dist/cjs/helperComponents/Footer/hooks.js +17 -19
  16. package/dist/cjs/helperComponents/Grid/Grid.js +2 -4
  17. package/dist/cjs/helperComponents/Item/Item.js +22 -27
  18. package/dist/cjs/helperComponents/Item/hooks.js +15 -13
  19. package/dist/cjs/helperComponents/MonthView/MonthView.js +13 -14
  20. package/dist/cjs/helperComponents/MonthView/utils.js +1 -3
  21. package/dist/cjs/helperComponents/PeriodPresetsList/PeriodPresetsList.js +10 -13
  22. package/dist/cjs/helperComponents/TimeList/TimeList.js +10 -13
  23. package/dist/cjs/helperComponents/TimePickerBase/TimePickerBase.js +18 -21
  24. package/dist/cjs/helperComponents/YearView/YearView.js +13 -14
  25. package/dist/cjs/helperComponents/YearView/utils.js +3 -4
  26. package/dist/cjs/hooks.js +57 -63
  27. package/dist/cjs/utils.js +14 -7
  28. package/package.json +3 -3
package/CHANGELOG.md CHANGED
@@ -3,6 +3,15 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## 0.14.2 (2026-07-03)
7
+
8
+ ### Only dependencies have been changed
9
+ * [@snack-uikit/list@0.33.3]($PUBLIC_PROJECT_URL/blob/master/packages/list/CHANGELOG.md)
10
+
11
+
12
+
13
+
14
+
6
15
  ## 0.14.1 (2026-06-24)
7
16
 
8
17
 
@@ -1,5 +1,7 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
3
5
  var __rest = void 0 && (void 0).__rest || function (s, e) {
4
6
  var t = {};
5
7
  for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
@@ -18,14 +20,13 @@ const constants_1 = require("../../constants");
18
20
  const CalendarBase_1 = require("../../helperComponents/CalendarBase");
19
21
  const utils_1 = require("./utils");
20
22
  function Calendar(props) {
21
- const {
22
- onChangeValue,
23
- mode
24
- } = props,
23
+ const onChangeValue = props.onChangeValue,
24
+ mode = props.mode,
25
25
  rest = __rest(props, ["onChangeValue", "mode"]);
26
26
  const changeValueHandler = (0, react_1.useCallback)(value => {
27
27
  if (mode === constants_1.CALENDAR_MODE.Date || mode === constants_1.CALENDAR_MODE.Month || mode === constants_1.CALENDAR_MODE.Year || mode === constants_1.CALENDAR_MODE.DateTime) {
28
- const [date] = value;
28
+ const _value = (0, _slicedToArray2.default)(value, 1),
29
+ date = _value[0];
29
30
  onChangeValue === null || onChangeValue === void 0 ? void 0 : onChangeValue(date);
30
31
  return;
31
32
  }
@@ -1,5 +1,7 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
3
5
  var __importDefault = void 0 && (void 0).__importDefault || function (mod) {
4
6
  return mod && mod.__esModule ? mod : {
5
7
  "default": mod
@@ -25,24 +27,35 @@ const styles_module_scss_1 = __importDefault(require('./styles.module.css'));
25
27
  const stubDate = new Date();
26
28
  const stubFunc = () => {};
27
29
  function TimePicker(_ref) {
28
- let {
29
- className,
30
- size = constants_1.SIZE.M,
31
- fitToContainer = true,
32
- value: valueProp,
33
- defaultValue,
34
- onChangeValue,
35
- onFocusLeave,
36
- 'data-test-id': testId,
37
- navigationStartRef,
38
- showSeconds = true,
39
- today: todayProp,
40
- footerMode = 'current-time-and-apply'
41
- } = _ref;
42
- const [value, setValueState] = (0, uncontrollable_1.useUncontrolledProp)(valueProp, defaultValue, onChangeValue);
30
+ let className = _ref.className,
31
+ _ref$size = _ref.size,
32
+ size = _ref$size === void 0 ? constants_1.SIZE.M : _ref$size,
33
+ _ref$fitToContainer = _ref.fitToContainer,
34
+ fitToContainer = _ref$fitToContainer === void 0 ? true : _ref$fitToContainer,
35
+ valueProp = _ref.value,
36
+ defaultValue = _ref.defaultValue,
37
+ onChangeValue = _ref.onChangeValue,
38
+ onFocusLeave = _ref.onFocusLeave,
39
+ testId = _ref['data-test-id'],
40
+ navigationStartRef = _ref.navigationStartRef,
41
+ _ref$showSeconds = _ref.showSeconds,
42
+ showSeconds = _ref$showSeconds === void 0 ? true : _ref$showSeconds,
43
+ todayProp = _ref.today,
44
+ _ref$footerMode = _ref.footerMode,
45
+ footerMode = _ref$footerMode === void 0 ? 'current-time-and-apply' : _ref$footerMode;
46
+ const _ref2 = (0, uncontrollable_1.useUncontrolledProp)(valueProp, defaultValue, onChangeValue),
47
+ _ref3 = (0, _slicedToArray2.default)(_ref2, 2),
48
+ value = _ref3[0],
49
+ setValueState = _ref3[1];
43
50
  const setValueEventHandler = (0, utils_1.useEventHandler)(setValueState);
44
- const [internalValue, setInternalValue] = (0, react_1.useState)();
45
- const [focus, setFocus] = (0, react_1.useState)(undefined);
51
+ const _ref4 = (0, react_1.useState)(),
52
+ _ref5 = (0, _slicedToArray2.default)(_ref4, 2),
53
+ internalValue = _ref5[0],
54
+ setInternalValue = _ref5[1];
55
+ const _ref6 = (0, react_1.useState)(undefined),
56
+ _ref7 = (0, _slicedToArray2.default)(_ref6, 2),
57
+ focus = _ref7[0],
58
+ setFocus = _ref7[1];
46
59
  const today = typeof todayProp === 'number' ? new Date(todayProp) : todayProp;
47
60
  (0, react_1.useEffect)(() => {
48
61
  var _a, _b, _c;
@@ -62,18 +75,17 @@ function TimePicker(_ref) {
62
75
  const newDate = dates[0];
63
76
  setInternalValue([newDate, newDate]);
64
77
  }, []);
65
- const {
66
- dateAndTime,
67
- onTimeChange,
68
- onDateChange,
69
- onDateAndTimeChange,
70
- isDateFilled,
71
- isTimeFilled,
72
- isDateAndTimeFilled
73
- } = (0, hooks_1.useDateAndTime)({
74
- showSeconds,
75
- value
76
- });
78
+ const _ref8 = (0, hooks_1.useDateAndTime)({
79
+ showSeconds,
80
+ value
81
+ }),
82
+ dateAndTime = _ref8.dateAndTime,
83
+ onTimeChange = _ref8.onTimeChange,
84
+ onDateChange = _ref8.onDateChange,
85
+ onDateAndTimeChange = _ref8.onDateAndTimeChange,
86
+ isDateFilled = _ref8.isDateFilled,
87
+ isTimeFilled = _ref8.isTimeFilled,
88
+ isDateAndTimeFilled = _ref8.isDateAndTimeFilled;
77
89
  const applyButtonRef = (0, react_1.useRef)(null);
78
90
  const currentButtonRef = (0, react_1.useRef)(null);
79
91
  const hoursKeyboardNavigationRef = (0, react_1.useRef)({
@@ -86,9 +98,8 @@ function TimePicker(_ref) {
86
98
  focusItem: () => {}
87
99
  });
88
100
  const getTestId = (0, react_1.useMemo)(() => (0, utils_2.getTestIdBuilder)(testId), [testId]);
89
- const {
90
- lang: ctxLang
91
- } = (0, locale_1.useLocale)();
101
+ const _ref9 = (0, locale_1.useLocale)(),
102
+ ctxLang = _ref9.lang;
92
103
  const locale = (0, react_1.useMemo)(() => (0, utils_2.getLocale)({
93
104
  localeProp: constants_1.DEFAULT_LOCALE,
94
105
  ctxLang
@@ -23,27 +23,24 @@ const utils_1 = require("@snack-uikit/utils");
23
23
  const CalendarContext_1 = require("../CalendarContext");
24
24
  const styles_module_scss_1 = __importDefault(require('./styles.module.css'));
25
25
  function Button(_a) {
26
- var {
27
- label,
28
- icon,
29
- onClick,
30
- focusName,
31
- tabIndex,
32
- onLeftArrowKeyDown,
33
- onRightArrowKeyDown,
34
- onDownArrowKeyDown,
35
- disabled,
36
- useNavigationStartRef
37
- } = _a,
26
+ var label = _a.label,
27
+ icon = _a.icon,
28
+ onClick = _a.onClick,
29
+ focusName = _a.focusName,
30
+ tabIndex = _a.tabIndex,
31
+ onLeftArrowKeyDown = _a.onLeftArrowKeyDown,
32
+ onRightArrowKeyDown = _a.onRightArrowKeyDown,
33
+ onDownArrowKeyDown = _a.onDownArrowKeyDown,
34
+ disabled = _a.disabled,
35
+ useNavigationStartRef = _a.useNavigationStartRef,
38
36
  rest = __rest(_a, ["label", "icon", "onClick", "focusName", "tabIndex", "onLeftArrowKeyDown", "onRightArrowKeyDown", "onDownArrowKeyDown", "disabled", "useNavigationStartRef"]);
39
37
  const ref = (0, react_1.useRef)(null);
40
- const {
41
- size,
42
- focus,
43
- setFocus,
44
- onFocusLeave,
45
- navigationStartRef
46
- } = (0, react_1.useContext)(CalendarContext_1.CalendarContext);
38
+ const _ref = (0, react_1.useContext)(CalendarContext_1.CalendarContext),
39
+ size = _ref.size,
40
+ focus = _ref.focus,
41
+ setFocus = _ref.setFocus,
42
+ onFocusLeave = _ref.onFocusLeave,
43
+ navigationStartRef = _ref.navigationStartRef;
47
44
  (0, utils_1.useLayoutEffect)(() => {
48
45
  var _a;
49
46
  if (focus && focus === focusName) {
@@ -1,5 +1,7 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
3
5
  var __rest = void 0 && (void 0).__rest || function (s, e) {
4
6
  var t = {};
5
7
  for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
@@ -57,49 +59,63 @@ const CALENDAR_DEFAULT_MODE_MAP = {
57
59
  [constants_1.CALENDAR_MODE.Year]: constants_1.VIEW_MODE.Decade
58
60
  };
59
61
  function CalendarBase(_a) {
60
- var {
61
- className,
62
- mode,
63
- size = constants_1.SIZE.M,
64
- autofocus,
65
- fitToContainer = true,
66
- value: valueProp,
67
- defaultValue,
68
- onChangeValue,
69
- today: todayProp,
70
- showHolidays = false,
71
- showSeconds = true,
72
- style,
73
- locale: localeProp,
74
- onFocusLeave,
75
- buildCellProps,
76
- 'data-test-id': testId,
77
- navigationStartRef,
78
- presets
79
- } = _a,
62
+ var className = _a.className,
63
+ mode = _a.mode,
64
+ _a$size = _a.size,
65
+ size = _a$size === void 0 ? constants_1.SIZE.M : _a$size,
66
+ autofocus = _a.autofocus,
67
+ _a$fitToContainer = _a.fitToContainer,
68
+ fitToContainer = _a$fitToContainer === void 0 ? true : _a$fitToContainer,
69
+ valueProp = _a.value,
70
+ defaultValue = _a.defaultValue,
71
+ onChangeValue = _a.onChangeValue,
72
+ todayProp = _a.today,
73
+ _a$showHolidays = _a.showHolidays,
74
+ showHolidays = _a$showHolidays === void 0 ? false : _a$showHolidays,
75
+ _a$showSeconds = _a.showSeconds,
76
+ showSeconds = _a$showSeconds === void 0 ? true : _a$showSeconds,
77
+ style = _a.style,
78
+ localeProp = _a.locale,
79
+ onFocusLeave = _a.onFocusLeave,
80
+ buildCellProps = _a.buildCellProps,
81
+ testId = _a['data-test-id'],
82
+ navigationStartRef = _a.navigationStartRef,
83
+ presets = _a.presets,
80
84
  rest = __rest(_a, ["className", "mode", "size", "autofocus", "fitToContainer", "value", "defaultValue", "onChangeValue", "today", "showHolidays", "showSeconds", "style", "locale", "onFocusLeave", "buildCellProps", 'data-test-id', "navigationStartRef", "presets"]);
81
- const {
82
- t
83
- } = (0, locale_1.useLocale)('Calendar');
84
- const [viewMode, setViewMode] = (0, react_1.useState)(CALENDAR_DEFAULT_MODE_MAP[mode]);
85
- const [viewShift, setViewShift] = (0, react_1.useState)(0);
86
- const [value, setValueState] = (0, uncontrollable_1.useUncontrolledProp)(valueProp, defaultValue, onChangeValue);
85
+ const _ref = (0, locale_1.useLocale)('Calendar'),
86
+ t = _ref.t;
87
+ const _ref2 = (0, react_1.useState)(CALENDAR_DEFAULT_MODE_MAP[mode]),
88
+ _ref3 = (0, _slicedToArray2.default)(_ref2, 2),
89
+ viewMode = _ref3[0],
90
+ setViewMode = _ref3[1];
91
+ const _ref4 = (0, react_1.useState)(0),
92
+ _ref5 = (0, _slicedToArray2.default)(_ref4, 2),
93
+ viewShift = _ref5[0],
94
+ setViewShift = _ref5[1];
95
+ const _ref6 = (0, uncontrollable_1.useUncontrolledProp)(valueProp, defaultValue, onChangeValue),
96
+ _ref7 = (0, _slicedToArray2.default)(_ref6, 2),
97
+ value = _ref7[0],
98
+ setValueState = _ref7[1];
87
99
  const today = (0, react_1.useMemo)(() => typeof todayProp === 'number' ? new Date(todayProp) : todayProp, [todayProp]);
88
- const [referenceDate] = (0, react_1.useState)((value === null || value === void 0 ? void 0 : value[0]) || today || new Date());
100
+ const _ref8 = (0, react_1.useState)((value === null || value === void 0 ? void 0 : value[0]) || today || new Date()),
101
+ _ref9 = (0, _slicedToArray2.default)(_ref8, 1),
102
+ referenceDate = _ref9[0];
89
103
  const viewDate = (0, hooks_2.useViewDate)(referenceDate, viewMode, viewShift);
90
- const [focus, setFocus] = (0, react_1.useState)(autofocus ? constants_1.AUTOFOCUS : undefined);
91
- const {
92
- dateAndTime,
93
- onTimeChange,
94
- onDateChange,
95
- onDateAndTimeChange,
96
- isDateFilled,
97
- isTimeFilled,
98
- isDateAndTimeFilled
99
- } = (0, hooks_1.useDateAndTime)({
100
- showSeconds,
101
- value: mode === constants_1.CALENDAR_MODE.DateTime ? value : undefined
102
- });
104
+ const _ref0 = (0, react_1.useState)(autofocus ? constants_1.AUTOFOCUS : undefined),
105
+ _ref1 = (0, _slicedToArray2.default)(_ref0, 2),
106
+ focus = _ref1[0],
107
+ setFocus = _ref1[1];
108
+ const _ref10 = (0, hooks_1.useDateAndTime)({
109
+ showSeconds,
110
+ value: mode === constants_1.CALENDAR_MODE.DateTime ? value : undefined
111
+ }),
112
+ dateAndTime = _ref10.dateAndTime,
113
+ onTimeChange = _ref10.onTimeChange,
114
+ onDateChange = _ref10.onDateChange,
115
+ onDateAndTimeChange = _ref10.onDateAndTimeChange,
116
+ isDateFilled = _ref10.isDateFilled,
117
+ isTimeFilled = _ref10.isTimeFilled,
118
+ isDateAndTimeFilled = _ref10.isDateAndTimeFilled;
103
119
  const applyButtonRef = (0, react_1.useRef)(null);
104
120
  const currentButtonRef = (0, react_1.useRef)(null);
105
121
  const hoursKeyboardNavigationRef = (0, react_1.useRef)({
@@ -112,7 +128,10 @@ function CalendarBase(_a) {
112
128
  focusItem: () => {}
113
129
  });
114
130
  const setValue = (0, react_1.useCallback)(dates => {
115
- const [first, last] = (0, utils_2.sortDates)(dates);
131
+ const _ref11 = (0, utils_2.sortDates)(dates),
132
+ _ref12 = (0, _slicedToArray2.default)(_ref11, 2),
133
+ first = _ref12[0],
134
+ last = _ref12[1];
116
135
  if (mode === constants_1.CALENDAR_MODE.MonthRange) {
117
136
  setValueState([(0, utils_2.getStartOfTheMonth)(first), (0, utils_2.getEndOfTheMonth)(last)]);
118
137
  return;
@@ -123,19 +142,17 @@ function CalendarBase(_a) {
123
142
  }
124
143
  setValueState([first, (0, utils_2.getEndOfTheDay)(last)]);
125
144
  }, [mode, setValueState]);
126
- const {
127
- preselectedRange,
128
- continuePreselect,
129
- completePreselect,
130
- restartPreselect,
131
- startPreselect
132
- } = (0, hooks_2.useRange)({
133
- setValue
134
- });
145
+ const _ref13 = (0, hooks_2.useRange)({
146
+ setValue
147
+ }),
148
+ preselectedRange = _ref13.preselectedRange,
149
+ continuePreselect = _ref13.continuePreselect,
150
+ completePreselect = _ref13.completePreselect,
151
+ restartPreselect = _ref13.restartPreselect,
152
+ startPreselect = _ref13.startPreselect;
135
153
  const getTestId = (0, react_1.useMemo)(() => (0, utils_2.getTestIdBuilder)(testId), [testId]);
136
- const {
137
- lang: ctxLang
138
- } = (0, locale_1.useLocale)();
154
+ const _ref14 = (0, locale_1.useLocale)(),
155
+ ctxLang = _ref14.lang;
139
156
  const locale = (0, react_1.useMemo)(() => (0, utils_2.getLocale)({
140
157
  localeProp,
141
158
  ctxLang
@@ -1,5 +1,7 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
3
5
  Object.defineProperty(exports, "__esModule", {
4
6
  value: true
5
7
  });
@@ -22,10 +24,11 @@ function useViewDate(referenceDate, viewMode, viewShift) {
22
24
  }
23
25
  }
24
26
  function useRange(_ref) {
25
- let {
26
- setValue
27
- } = _ref;
28
- const [preselectedRange, setPreselectedRange] = (0, react_1.useState)();
27
+ let setValue = _ref.setValue;
28
+ const _ref2 = (0, react_1.useState)(),
29
+ _ref3 = (0, _slicedToArray2.default)(_ref2, 2),
30
+ preselectedRange = _ref3[0],
31
+ setPreselectedRange = _ref3[1];
29
32
  const startPreselect = (0, react_1.useCallback)(date => {
30
33
  setPreselectedRange([date, date]);
31
34
  }, []);
@@ -12,9 +12,8 @@ const DecadeView_1 = require("../DecadeView");
12
12
  const MonthView_1 = require("../MonthView");
13
13
  const YearView_1 = require("../YearView");
14
14
  function CalendarBody() {
15
- const {
16
- viewMode
17
- } = (0, react_1.useContext)(CalendarContext_1.CalendarContext);
15
+ const _ref = (0, react_1.useContext)(CalendarContext_1.CalendarContext),
16
+ viewMode = _ref.viewMode;
18
17
  switch (viewMode) {
19
18
  case constants_1.VIEW_MODE.Decade:
20
19
  return (0, jsx_runtime_1.jsx)(DecadeView_1.DecadeView, {});
@@ -42,19 +42,18 @@ const ICONS = {
42
42
  }
43
43
  };
44
44
  function CalendarNavigation() {
45
- const {
46
- referenceDate,
47
- viewDate,
48
- viewShift,
49
- setViewShift,
50
- viewMode,
51
- setViewMode,
52
- focus,
53
- setFocus,
54
- getTestId,
55
- size,
56
- firstNotDisableCell
57
- } = (0, react_1.useContext)(CalendarContext_1.CalendarContext);
45
+ const _ref = (0, react_1.useContext)(CalendarContext_1.CalendarContext),
46
+ referenceDate = _ref.referenceDate,
47
+ viewDate = _ref.viewDate,
48
+ viewShift = _ref.viewShift,
49
+ setViewShift = _ref.setViewShift,
50
+ viewMode = _ref.viewMode,
51
+ setViewMode = _ref.setViewMode,
52
+ focus = _ref.focus,
53
+ setFocus = _ref.setFocus,
54
+ getTestId = _ref.getTestId,
55
+ size = _ref.size,
56
+ firstNotDisableCell = _ref.firstNotDisableCell;
58
57
  const periodName = (0, hooks_1.usePeriodName)();
59
58
  const levelButtonDisabled = viewMode === constants_1.VIEW_MODE.Decade;
60
59
  const isArrowButtonFocused = focus && [constants_2.NEXT_PERIOD_BUTTON_FOCUS_NAME, constants_2.PREV_PERIOD_BUTTON_FOCUS_NAME].includes(focus);
@@ -9,23 +9,22 @@ const constants_1 = require("../../constants");
9
9
  const utils_1 = require("../../utils");
10
10
  const CalendarContext_1 = require("../CalendarContext");
11
11
  function usePeriodName() {
12
- const {
13
- viewDate,
14
- viewMode,
15
- locale
16
- } = (0, react_1.useContext)(CalendarContext_1.CalendarContext);
12
+ const _ref = (0, react_1.useContext)(CalendarContext_1.CalendarContext),
13
+ viewDate = _ref.viewDate,
14
+ viewMode = _ref.viewMode,
15
+ locale = _ref.locale;
17
16
  switch (viewMode) {
18
17
  case constants_1.VIEW_MODE.Month:
19
18
  {
20
19
  const year = viewDate.getFullYear();
21
- return `${(0, utils_1.getMonthName)(viewDate, locale)} ${year}`;
20
+ return "".concat((0, utils_1.getMonthName)(viewDate, locale), " ").concat(year);
22
21
  }
23
22
  case constants_1.VIEW_MODE.Year:
24
23
  return viewDate.getFullYear().toString();
25
24
  case constants_1.VIEW_MODE.Decade:
26
25
  {
27
26
  const decadeStart = viewDate.getFullYear();
28
- return `${decadeStart}-${decadeStart + 9}`;
27
+ return "".concat(decadeStart, "-").concat(decadeStart + 9);
29
28
  }
30
29
  default:
31
30
  return '';
@@ -15,14 +15,11 @@ const react_1 = require("react");
15
15
  const CalendarContext_1 = require("../CalendarContext");
16
16
  const styles_module_scss_1 = __importDefault(require('./styles.module.css'));
17
17
  function ColumnLabel(_ref) {
18
- let {
19
- label,
20
- className
21
- } = _ref;
22
- const {
23
- size,
24
- getTestId
25
- } = (0, react_1.useContext)(CalendarContext_1.CalendarContext);
18
+ let label = _ref.label,
19
+ className = _ref.className;
20
+ const _ref2 = (0, react_1.useContext)(CalendarContext_1.CalendarContext),
21
+ size = _ref2.size,
22
+ getTestId = _ref2.getTestId;
26
23
  return (0, jsx_runtime_1.jsx)("div", {
27
24
  className: (0, classnames_1.default)(styles_module_scss_1.default.wrapper, className),
28
25
  "data-test-id": getTestId('header-item'),
@@ -18,14 +18,11 @@ const ColumnLabel_1 = require("../ColumnLabel");
18
18
  const styles_module_scss_1 = __importDefault(require('./styles.module.css'));
19
19
  const utils_1 = require("./utils");
20
20
  function ColumnLabels(_ref) {
21
- let {
22
- className
23
- } = _ref;
24
- const {
25
- viewMode,
26
- locale,
27
- size
28
- } = (0, react_1.useContext)(CalendarContext_1.CalendarContext);
21
+ let className = _ref.className;
22
+ const _ref2 = (0, react_1.useContext)(CalendarContext_1.CalendarContext),
23
+ viewMode = _ref2.viewMode,
24
+ locale = _ref2.locale,
25
+ size = _ref2.size;
29
26
  const labels = (0, react_1.useMemo)(() => (0, utils_1.getWeekLabels)(locale), [locale]);
30
27
  if (viewMode === constants_1.VIEW_MODE.Month) {
31
28
  return (0, jsx_runtime_1.jsx)("div", {
@@ -13,18 +13,17 @@ const CalendarContext_1 = require("../CalendarContext");
13
13
  const Grid_1 = require("../Grid");
14
14
  const utils_2 = require("./utils");
15
15
  function DecadeView() {
16
- const {
17
- referenceDate,
18
- setViewMode,
19
- setViewShift,
20
- preselectedRange,
21
- continuePreselect,
22
- restartPreselect,
23
- mode,
24
- setValue,
25
- startPreselect,
26
- completePreselect
27
- } = (0, react_1.useContext)(CalendarContext_1.CalendarContext);
16
+ const _ref = (0, react_1.useContext)(CalendarContext_1.CalendarContext),
17
+ referenceDate = _ref.referenceDate,
18
+ setViewMode = _ref.setViewMode,
19
+ setViewShift = _ref.setViewShift,
20
+ preselectedRange = _ref.preselectedRange,
21
+ continuePreselect = _ref.continuePreselect,
22
+ restartPreselect = _ref.restartPreselect,
23
+ mode = _ref.mode,
24
+ setValue = _ref.setValue,
25
+ startPreselect = _ref.startPreselect,
26
+ completePreselect = _ref.completePreselect;
28
27
  const grid = (0, hooks_1.useGrid)({
29
28
  buildGrid: utils_2.buildDecadeGrid,
30
29
  isTheSameItem: utils_1.isTheSameYear,
@@ -9,10 +9,9 @@ const buildDecadeGrid = date => {
9
9
  const result = [];
10
10
  const year = date.getFullYear();
11
11
  let shift = -1;
12
- const {
13
- rows,
14
- columns
15
- } = constants_1.GRID_SIZE[constants_1.VIEW_MODE.Decade];
12
+ const _constants_1$GRID_SIZ = constants_1.GRID_SIZE[constants_1.VIEW_MODE.Decade],
13
+ rows = _constants_1$GRID_SIZ.rows,
14
+ columns = _constants_1$GRID_SIZ.columns;
16
15
  for (let i = 0; i < rows; i++) {
17
16
  const row = [];
18
17
  for (let j = 0; j < columns; j++) {
@@ -22,31 +22,28 @@ const hooks_1 = require("./hooks");
22
22
  const navigation_1 = require("./navigation");
23
23
  const styles_module_scss_1 = __importDefault(require('./styles.module.css'));
24
24
  function Footer() {
25
- const {
26
- size,
27
- viewMode,
28
- mode,
29
- today,
30
- setValue,
31
- dateAndTime,
32
- onDateAndTimeChange,
33
- applyButtonRef,
34
- currentButtonRef,
35
- hoursKeyboardNavigationRef,
36
- minutesKeyboardNavigationRef,
37
- secondsKeyboardNavigationRef,
38
- showSeconds,
39
- getTestId,
40
- referenceDate,
41
- setViewShift
42
- } = (0, react_1.useContext)(CalendarContext_1.CalendarContext);
43
- const {
44
- isApplyButtonDisabled
45
- } = (0, hooks_1.useFooterParams)();
25
+ const _ref = (0, react_1.useContext)(CalendarContext_1.CalendarContext),
26
+ size = _ref.size,
27
+ viewMode = _ref.viewMode,
28
+ mode = _ref.mode,
29
+ today = _ref.today,
30
+ setValue = _ref.setValue,
31
+ dateAndTime = _ref.dateAndTime,
32
+ onDateAndTimeChange = _ref.onDateAndTimeChange,
33
+ applyButtonRef = _ref.applyButtonRef,
34
+ currentButtonRef = _ref.currentButtonRef,
35
+ hoursKeyboardNavigationRef = _ref.hoursKeyboardNavigationRef,
36
+ minutesKeyboardNavigationRef = _ref.minutesKeyboardNavigationRef,
37
+ secondsKeyboardNavigationRef = _ref.secondsKeyboardNavigationRef,
38
+ showSeconds = _ref.showSeconds,
39
+ getTestId = _ref.getTestId,
40
+ referenceDate = _ref.referenceDate,
41
+ setViewShift = _ref.setViewShift;
42
+ const _ref2 = (0, hooks_1.useFooterParams)(),
43
+ isApplyButtonDisabled = _ref2.isApplyButtonDisabled;
46
44
  const navigation = (0, hooks_1.useFooterKeyboardNavigation)();
47
- const {
48
- t
49
- } = (0, locale_1.useLocale)('Calendar');
45
+ const _ref3 = (0, locale_1.useLocale)('Calendar'),
46
+ t = _ref3.t;
50
47
  if (![constants_1.CALENDAR_MODE.DateTime, 'time'].includes(mode) || viewMode !== 'month') {
51
48
  return null;
52
49
  }
@@ -65,14 +62,15 @@ function Footer() {
65
62
  return;
66
63
  }
67
64
  const todayDate = today || new Date();
68
- const {
69
- year = todayDate.getFullYear(),
70
- month = todayDate.getMonth(),
71
- day = todayDate.getMonth(),
72
- hours,
73
- minutes,
74
- seconds
75
- } = dateAndTime;
65
+ const _dateAndTime$year = dateAndTime.year,
66
+ year = _dateAndTime$year === void 0 ? todayDate.getFullYear() : _dateAndTime$year,
67
+ _dateAndTime$month = dateAndTime.month,
68
+ month = _dateAndTime$month === void 0 ? todayDate.getMonth() : _dateAndTime$month,
69
+ _dateAndTime$day = dateAndTime.day,
70
+ day = _dateAndTime$day === void 0 ? todayDate.getMonth() : _dateAndTime$day,
71
+ hours = dateAndTime.hours,
72
+ minutes = dateAndTime.minutes,
73
+ seconds = dateAndTime.seconds;
76
74
  const newDate = new Date(year, month, day, hours, minutes, showSeconds ? seconds : 0);
77
75
  setValue([newDate, newDate]);
78
76
  };
@@ -9,12 +9,12 @@ const react_1 = require("react");
9
9
  const CalendarContext_1 = require("../CalendarContext");
10
10
  const navigation_1 = require("./navigation");
11
11
  function useFooterParams() {
12
- const {
13
- footerMode = 'current-time-and-apply',
14
- mode,
15
- isTimeFilled,
16
- isDateAndTimeFilled
17
- } = (0, react_1.useContext)(CalendarContext_1.CalendarContext);
12
+ const _ref = (0, react_1.useContext)(CalendarContext_1.CalendarContext),
13
+ _ref$footerMode = _ref.footerMode,
14
+ footerMode = _ref$footerMode === void 0 ? 'current-time-and-apply' : _ref$footerMode,
15
+ mode = _ref.mode,
16
+ isTimeFilled = _ref.isTimeFilled,
17
+ isDateAndTimeFilled = _ref.isDateAndTimeFilled;
18
18
  const isApplyOnlyFooter = footerMode === 'apply-only';
19
19
  const isApplyButtonDisabled = mode === 'time' ? !isTimeFilled() : !isDateAndTimeFilled();
20
20
  return {
@@ -24,19 +24,17 @@ function useFooterParams() {
24
24
  };
25
25
  }
26
26
  function useFooterKeyboardNavigation() {
27
- const {
28
- footerMode,
29
- isApplyButtonDisabled
30
- } = useFooterParams();
31
- const {
32
- dateAndTime,
33
- showSeconds,
34
- applyButtonRef,
35
- currentButtonRef,
36
- minutesKeyboardNavigationRef,
37
- secondsKeyboardNavigationRef,
38
- onFocusLeave
39
- } = (0, react_1.useContext)(CalendarContext_1.CalendarContext);
27
+ const _useFooterParams = useFooterParams(),
28
+ footerMode = _useFooterParams.footerMode,
29
+ isApplyButtonDisabled = _useFooterParams.isApplyButtonDisabled;
30
+ const _ref2 = (0, react_1.useContext)(CalendarContext_1.CalendarContext),
31
+ dateAndTime = _ref2.dateAndTime,
32
+ showSeconds = _ref2.showSeconds,
33
+ applyButtonRef = _ref2.applyButtonRef,
34
+ currentButtonRef = _ref2.currentButtonRef,
35
+ minutesKeyboardNavigationRef = _ref2.minutesKeyboardNavigationRef,
36
+ secondsKeyboardNavigationRef = _ref2.secondsKeyboardNavigationRef,
37
+ onFocusLeave = _ref2.onFocusLeave;
40
38
  const focusController = (0, react_1.useMemo)(() => new navigation_1.FooterFocusController({
41
39
  showSeconds,
42
40
  dateAndTime,
@@ -13,9 +13,7 @@ const jsx_runtime_1 = require("react/jsx-runtime");
13
13
  const Item_1 = require("../Item");
14
14
  const styles_module_scss_1 = __importDefault(require('./styles.module.css'));
15
15
  function Grid(_ref) {
16
- let {
17
- grid
18
- } = _ref;
16
+ let grid = _ref.grid;
19
17
  return (0, jsx_runtime_1.jsx)("table", {
20
18
  className: styles_module_scss_1.default.grid,
21
19
  border: 0,
@@ -26,7 +24,7 @@ function Grid(_ref) {
26
24
  data: cell,
27
25
  className: styles_module_scss_1.default.item
28
26
  })
29
- }, `${cell.label}_${index}`))
27
+ }, "".concat(cell.label, "_").concat(index)))
30
28
  }, index))
31
29
  })
32
30
  });
@@ -19,34 +19,29 @@ const hooks_1 = require("./hooks");
19
19
  const styles_module_scss_1 = __importDefault(require('./styles.module.css'));
20
20
  const utils_2 = require("./utils");
21
21
  function Item(_ref) {
22
- let {
23
- data,
24
- className
25
- } = _ref;
26
- const {
27
- date,
28
- label,
29
- address,
30
- onSelect,
31
- onPreselect,
32
- onLeave,
33
- inRangePosition,
34
- isCurrent,
35
- isDisabled,
36
- isHoliday,
37
- isInCurrentLevelPeriod,
38
- isSelected,
39
- tabIndex,
40
- onKeyDown
41
- } = data;
22
+ let data = _ref.data,
23
+ className = _ref.className;
24
+ const date = data.date,
25
+ label = data.label,
26
+ address = data.address,
27
+ onSelect = data.onSelect,
28
+ onPreselect = data.onPreselect,
29
+ onLeave = data.onLeave,
30
+ inRangePosition = data.inRangePosition,
31
+ isCurrent = data.isCurrent,
32
+ isDisabled = data.isDisabled,
33
+ isHoliday = data.isHoliday,
34
+ isInCurrentLevelPeriod = data.isInCurrentLevelPeriod,
35
+ isSelected = data.isSelected,
36
+ tabIndex = data.tabIndex,
37
+ onKeyDown = data.onKeyDown;
42
38
  const ref = (0, react_1.useRef)(null);
43
- const {
44
- focus,
45
- setFocus,
46
- size,
47
- getTestId,
48
- locale
49
- } = (0, react_1.useContext)(CalendarContext_1.CalendarContext);
39
+ const _ref2 = (0, react_1.useContext)(CalendarContext_1.CalendarContext),
40
+ focus = _ref2.focus,
41
+ setFocus = _ref2.setFocus,
42
+ size = _ref2.size,
43
+ getTestId = _ref2.getTestId,
44
+ locale = _ref2.locale;
50
45
  (0, utils_1.useLayoutEffect)(() => {
51
46
  var _a;
52
47
  if ((0, utils_2.stringifyAddress)(address) === focus) {
@@ -1,5 +1,7 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
3
5
  Object.defineProperty(exports, "__esModule", {
4
6
  value: true
5
7
  });
@@ -9,19 +11,19 @@ const constants_1 = require("../../constants");
9
11
  const CalendarContext_1 = require("../CalendarContext");
10
12
  const utils_1 = require("./utils");
11
13
  function useKeyboardFocus(_ref, onKeyDown) {
12
- let [row, column] = _ref;
13
- const {
14
- viewMode,
15
- viewShift,
16
- setViewShift,
17
- setFocus,
18
- onFocusLeave,
19
- mode
20
- } = (0, react_1.useContext)(CalendarContext_1.CalendarContext);
21
- const {
22
- rows,
23
- columns
24
- } = constants_1.GRID_SIZE[viewMode];
14
+ let _ref2 = (0, _slicedToArray2.default)(_ref, 2),
15
+ row = _ref2[0],
16
+ column = _ref2[1];
17
+ const _ref3 = (0, react_1.useContext)(CalendarContext_1.CalendarContext),
18
+ viewMode = _ref3.viewMode,
19
+ viewShift = _ref3.viewShift,
20
+ setViewShift = _ref3.setViewShift,
21
+ setFocus = _ref3.setFocus,
22
+ onFocusLeave = _ref3.onFocusLeave,
23
+ mode = _ref3.mode;
24
+ const _constants_1$GRID_SIZ = constants_1.GRID_SIZE[viewMode],
25
+ rows = _constants_1$GRID_SIZ.rows,
26
+ columns = _constants_1$GRID_SIZ.columns;
25
27
  return (0, react_1.useCallback)(e => {
26
28
  onKeyDown === null || onKeyDown === void 0 ? void 0 : onKeyDown(e);
27
29
  switch (e.key) {
@@ -14,20 +14,19 @@ const CalendarContext_1 = require("../CalendarContext");
14
14
  const Grid_1 = require("../Grid");
15
15
  const utils_2 = require("./utils");
16
16
  function MonthView() {
17
- const {
18
- mode,
19
- viewMode,
20
- dateAndTime,
21
- setValue,
22
- preselectedRange,
23
- startPreselect,
24
- continuePreselect,
25
- completePreselect,
26
- restartPreselect,
27
- onDateChange,
28
- locale,
29
- hoursKeyboardNavigationRef
30
- } = (0, react_1.useContext)(CalendarContext_1.CalendarContext);
17
+ const _ref = (0, react_1.useContext)(CalendarContext_1.CalendarContext),
18
+ mode = _ref.mode,
19
+ viewMode = _ref.viewMode,
20
+ dateAndTime = _ref.dateAndTime,
21
+ setValue = _ref.setValue,
22
+ preselectedRange = _ref.preselectedRange,
23
+ startPreselect = _ref.startPreselect,
24
+ continuePreselect = _ref.continuePreselect,
25
+ completePreselect = _ref.completePreselect,
26
+ restartPreselect = _ref.restartPreselect,
27
+ onDateChange = _ref.onDateChange,
28
+ locale = _ref.locale,
29
+ hoursKeyboardNavigationRef = _ref.hoursKeyboardNavigationRef;
31
30
  const onDayKeyDown = (0, react_1.useCallback)(e => {
32
31
  var _a, _b;
33
32
  if (mode !== constants_1.CALENDAR_MODE.DateTime || viewMode !== 'month') {
@@ -12,9 +12,7 @@ const buildMonthGrid = (date, locale) => {
12
12
  const WEEK = (0, utils_1.getStartOfWeek)(locale) === 0 ? constants_2.WEEK_STARTS_WITH_SUNDAY : constants_2.WEEK_STARTS_WITH_MONDAY;
13
13
  const startGap = WEEK.indexOf(date.getDay());
14
14
  let currentDate = new Date(date.getFullYear(), date.getMonth(), 1 - startGap);
15
- const {
16
- rows
17
- } = constants_1.GRID_SIZE[constants_1.VIEW_MODE.Month];
15
+ const rows = constants_1.GRID_SIZE[constants_1.VIEW_MODE.Month].rows;
18
16
  for (let i = 0; i < rows; i++) {
19
17
  const week = [];
20
18
  for (let j = 0; j < WEEK.length; j++) {
@@ -26,20 +26,17 @@ const utils_1 = require("@snack-uikit/utils");
26
26
  const CalendarContext_1 = require("../CalendarContext");
27
27
  const styles_module_scss_1 = __importDefault(require('./styles.module.css'));
28
28
  function PeriodPresetsList(_a) {
29
- var {
30
- items,
31
- onChange,
32
- showTitle = true,
33
- className
34
- } = _a,
29
+ var items = _a.items,
30
+ onChange = _a.onChange,
31
+ _a$showTitle = _a.showTitle,
32
+ showTitle = _a$showTitle === void 0 ? true : _a$showTitle,
33
+ className = _a.className,
35
34
  rest = __rest(_a, ["items", "onChange", "showTitle", "className"]);
36
- const {
37
- t
38
- } = (0, locale_1.useLocale)('Calendar');
39
- const {
40
- size,
41
- getTestId
42
- } = (0, react_1.useContext)(CalendarContext_1.CalendarContext);
35
+ const _ref = (0, locale_1.useLocale)('Calendar'),
36
+ t = _ref.t;
37
+ const _ref2 = (0, react_1.useContext)(CalendarContext_1.CalendarContext),
38
+ size = _ref2.size,
39
+ getTestId = _ref2.getTestId;
43
40
  const listItems = (0, react_1.useMemo)(() => items.map(item => ({
44
41
  id: item.id,
45
42
  content: {
@@ -18,20 +18,17 @@ const list_1 = require("@snack-uikit/list");
18
18
  const utils_1 = require("@snack-uikit/utils");
19
19
  const CalendarContext_1 = require("../CalendarContext");
20
20
  function TimeList(_a) {
21
- var {
22
- numberOfItems,
23
- value,
24
- onChange,
25
- className,
26
- onKeyDownGetter,
27
- keyboardNavigationRef,
28
- navigationStartRef,
29
- 'data-test-id': dataTestId
30
- } = _a,
21
+ var numberOfItems = _a.numberOfItems,
22
+ value = _a.value,
23
+ onChange = _a.onChange,
24
+ className = _a.className,
25
+ onKeyDownGetter = _a.onKeyDownGetter,
26
+ keyboardNavigationRef = _a.keyboardNavigationRef,
27
+ navigationStartRef = _a.navigationStartRef,
28
+ dataTestId = _a['data-test-id'],
31
29
  rest = __rest(_a, ["numberOfItems", "value", "onChange", "className", "onKeyDownGetter", "keyboardNavigationRef", "navigationStartRef", 'data-test-id']);
32
- const {
33
- size
34
- } = (0, react_1.useContext)(CalendarContext_1.CalendarContext);
30
+ const _ref = (0, react_1.useContext)(CalendarContext_1.CalendarContext),
31
+ size = _ref.size;
35
32
  const itemsRef = (0, react_1.useMemo)(() => new Array(numberOfItems).fill(null).map(() => (0, react_1.createRef)()), [numberOfItems]);
36
33
  (0, react_1.useImperativeHandle)(navigationStartRef, () => ({
37
34
  focus: () => {
@@ -20,27 +20,24 @@ const hooks_1 = require("../Footer/hooks");
20
20
  const TimeList_1 = require("../TimeList");
21
21
  const styles_module_scss_1 = __importDefault(require('./styles.module.css'));
22
22
  function TimePickerBase(_ref) {
23
- let {
24
- showDivider = true
25
- } = _ref;
26
- const {
27
- t
28
- } = (0, locale_1.useLocale)('Calendar');
29
- const {
30
- size,
31
- mode,
32
- fitToContainer,
33
- showSeconds,
34
- dateAndTime,
35
- onTimeChange,
36
- hoursKeyboardNavigationRef,
37
- minutesKeyboardNavigationRef,
38
- secondsKeyboardNavigationRef,
39
- setFocus,
40
- getTestId,
41
- navigationStartRef,
42
- onFocusLeave
43
- } = (0, react_1.useContext)(CalendarContext_1.CalendarContext);
23
+ let _ref$showDivider = _ref.showDivider,
24
+ showDivider = _ref$showDivider === void 0 ? true : _ref$showDivider;
25
+ const _ref2 = (0, locale_1.useLocale)('Calendar'),
26
+ t = _ref2.t;
27
+ const _ref3 = (0, react_1.useContext)(CalendarContext_1.CalendarContext),
28
+ size = _ref3.size,
29
+ mode = _ref3.mode,
30
+ fitToContainer = _ref3.fitToContainer,
31
+ showSeconds = _ref3.showSeconds,
32
+ dateAndTime = _ref3.dateAndTime,
33
+ onTimeChange = _ref3.onTimeChange,
34
+ hoursKeyboardNavigationRef = _ref3.hoursKeyboardNavigationRef,
35
+ minutesKeyboardNavigationRef = _ref3.minutesKeyboardNavigationRef,
36
+ secondsKeyboardNavigationRef = _ref3.secondsKeyboardNavigationRef,
37
+ setFocus = _ref3.setFocus,
38
+ getTestId = _ref3.getTestId,
39
+ navigationStartRef = _ref3.navigationStartRef,
40
+ onFocusLeave = _ref3.onFocusLeave;
44
41
  const navigation = (0, hooks_1.useFooterKeyboardNavigation)();
45
42
  const handleTabForwardToFooter = (0, react_1.useCallback)(event => {
46
43
  if (navigation.focusFooterForward() === 'handled') {
@@ -13,20 +13,19 @@ const CalendarContext_1 = require("../CalendarContext");
13
13
  const Grid_1 = require("../Grid");
14
14
  const utils_2 = require("./utils");
15
15
  function YearView() {
16
- const {
17
- referenceDate,
18
- setViewMode,
19
- setViewShift,
20
- setFocus,
21
- preselectedRange,
22
- continuePreselect,
23
- restartPreselect,
24
- locale,
25
- setValue,
26
- mode,
27
- startPreselect,
28
- completePreselect
29
- } = (0, react_1.useContext)(CalendarContext_1.CalendarContext);
16
+ const _ref = (0, react_1.useContext)(CalendarContext_1.CalendarContext),
17
+ referenceDate = _ref.referenceDate,
18
+ setViewMode = _ref.setViewMode,
19
+ setViewShift = _ref.setViewShift,
20
+ setFocus = _ref.setFocus,
21
+ preselectedRange = _ref.preselectedRange,
22
+ continuePreselect = _ref.continuePreselect,
23
+ restartPreselect = _ref.restartPreselect,
24
+ locale = _ref.locale,
25
+ setValue = _ref.setValue,
26
+ mode = _ref.mode,
27
+ startPreselect = _ref.startPreselect,
28
+ completePreselect = _ref.completePreselect;
30
29
  const grid = (0, hooks_1.useGrid)({
31
30
  buildGrid: utils_2.buildYearGrid,
32
31
  isTheSameItem: utils_1.isTheSameMonth,
@@ -9,10 +9,9 @@ const buildYearGrid = date => {
9
9
  const result = [];
10
10
  const year = date.getFullYear();
11
11
  let month = 0;
12
- const {
13
- rows,
14
- columns
15
- } = constants_1.GRID_SIZE[constants_1.VIEW_MODE.Year];
12
+ const _constants_1$GRID_SIZ = constants_1.GRID_SIZE[constants_1.VIEW_MODE.Year],
13
+ rows = _constants_1$GRID_SIZ.rows,
14
+ columns = _constants_1$GRID_SIZ.columns;
16
15
  for (let i = 0; i < rows; i++) {
17
16
  const row = [];
18
17
  for (let j = 0; j < columns; j++) {
package/dist/cjs/hooks.js CHANGED
@@ -1,5 +1,7 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
3
5
  Object.defineProperty(exports, "__esModule", {
4
6
  value: true
5
7
  });
@@ -11,39 +13,34 @@ const CalendarContext_1 = require("./helperComponents/CalendarContext");
11
13
  const utils_1 = require("./helperComponents/Item/utils");
12
14
  const utils_2 = require("./utils");
13
15
  function useGrid(_ref) {
14
- let {
15
- onSelect,
16
- onPreselect,
17
- onLeave,
18
- buildGrid,
19
- isTheSameItem,
20
- getItemLabel,
21
- isInPeriod,
22
- onKeyDown
23
- } = _ref;
24
- const {
25
- today,
26
- showHolidays,
27
- preselectedRange,
28
- value,
29
- dateAndTime,
30
- mode,
31
- viewDate,
32
- viewMode,
33
- focus,
34
- buildCellProps,
35
- firstNotDisableCell,
36
- isDateFilled
37
- } = (0, react_1.useContext)(CalendarContext_1.CalendarContext);
16
+ let onSelect = _ref.onSelect,
17
+ onPreselect = _ref.onPreselect,
18
+ onLeave = _ref.onLeave,
19
+ buildGrid = _ref.buildGrid,
20
+ isTheSameItem = _ref.isTheSameItem,
21
+ getItemLabel = _ref.getItemLabel,
22
+ isInPeriod = _ref.isInPeriod,
23
+ onKeyDown = _ref.onKeyDown;
24
+ const _ref2 = (0, react_1.useContext)(CalendarContext_1.CalendarContext),
25
+ today = _ref2.today,
26
+ showHolidays = _ref2.showHolidays,
27
+ preselectedRange = _ref2.preselectedRange,
28
+ value = _ref2.value,
29
+ dateAndTime = _ref2.dateAndTime,
30
+ mode = _ref2.mode,
31
+ viewDate = _ref2.viewDate,
32
+ viewMode = _ref2.viewMode,
33
+ focus = _ref2.focus,
34
+ buildCellProps = _ref2.buildCellProps,
35
+ firstNotDisableCell = _ref2.firstNotDisableCell,
36
+ isDateFilled = _ref2.isDateFilled;
38
37
  return (0, react_1.useMemo)(() => {
39
38
  let hasFocusInGrid = false;
40
39
  let currentItem;
41
40
  let hasFoundFirstNotDisableCell = false;
42
- const result = buildGrid(viewDate).map(row => row.map(_ref2 => {
43
- let {
44
- date,
45
- address
46
- } = _ref2;
41
+ const result = buildGrid(viewDate).map(row => row.map(_ref3 => {
42
+ let date = _ref3.date,
43
+ address = _ref3.address;
47
44
  var _a, _b, _c, _d;
48
45
  let isDisabled = false;
49
46
  let isHoliday = undefined;
@@ -101,46 +98,43 @@ function useGrid(_ref) {
101
98
  return result;
102
99
  }, [buildCellProps, buildGrid, dateAndTime === null || dateAndTime === void 0 ? void 0 : dateAndTime.day, dateAndTime === null || dateAndTime === void 0 ? void 0 : dateAndTime.month, dateAndTime === null || dateAndTime === void 0 ? void 0 : dateAndTime.year, firstNotDisableCell, focus, getItemLabel, isDateFilled, isInPeriod, isTheSameItem, mode, onKeyDown, onLeave, onPreselect, onSelect, preselectedRange, showHolidays, today, value, viewDate, viewMode]);
103
100
  }
104
- function useDateAndTime(_ref3) {
105
- let {
106
- showSeconds,
107
- value
108
- } = _ref3;
109
- const [dateAndTime, setDateAndTime] = (0, react_1.useState)(() => {
110
- if (Array.isArray(value)) {
111
- const initialValue = value[0];
101
+ function useDateAndTime(_ref4) {
102
+ let showSeconds = _ref4.showSeconds,
103
+ value = _ref4.value;
104
+ const _ref5 = (0, react_1.useState)(() => {
105
+ if (Array.isArray(value)) {
106
+ const initialValue = value[0];
107
+ return {
108
+ year: initialValue.getFullYear(),
109
+ month: initialValue.getMonth(),
110
+ day: initialValue.getDate(),
111
+ hours: initialValue.getHours(),
112
+ minutes: initialValue.getMinutes(),
113
+ seconds: initialValue.getSeconds()
114
+ };
115
+ }
112
116
  return {
113
- year: initialValue.getFullYear(),
114
- month: initialValue.getMonth(),
115
- day: initialValue.getDate(),
116
- hours: initialValue.getHours(),
117
- minutes: initialValue.getMinutes(),
118
- seconds: initialValue.getSeconds()
117
+ year: undefined,
118
+ month: undefined,
119
+ day: undefined,
120
+ hours: value === null || value === void 0 ? void 0 : value.hours,
121
+ minutes: value === null || value === void 0 ? void 0 : value.minutes,
122
+ seconds: value === null || value === void 0 ? void 0 : value.seconds
119
123
  };
120
- }
121
- return {
122
- year: undefined,
123
- month: undefined,
124
- day: undefined,
125
- hours: value === null || value === void 0 ? void 0 : value.hours,
126
- minutes: value === null || value === void 0 ? void 0 : value.minutes,
127
- seconds: value === null || value === void 0 ? void 0 : value.seconds
128
- };
129
- });
124
+ }),
125
+ _ref6 = (0, _slicedToArray2.default)(_ref5, 2),
126
+ dateAndTime = _ref6[0],
127
+ setDateAndTime = _ref6[1];
130
128
  const isDateFilled = (0, react_1.useCallback)(() => {
131
- const {
132
- year,
133
- month,
134
- day
135
- } = dateAndTime;
129
+ const year = dateAndTime.year,
130
+ month = dateAndTime.month,
131
+ day = dateAndTime.day;
136
132
  return [year, month, day].every(value => value !== undefined);
137
133
  }, [dateAndTime]);
138
134
  const isTimeFilled = (0, react_1.useCallback)(() => {
139
- const {
140
- hours,
141
- minutes,
142
- seconds
143
- } = dateAndTime;
135
+ const hours = dateAndTime.hours,
136
+ minutes = dateAndTime.minutes,
137
+ seconds = dateAndTime.seconds;
144
138
  return [hours, minutes, ...(showSeconds ? [seconds] : [])].every(value => value !== undefined);
145
139
  }, [dateAndTime, showSeconds]);
146
140
  const isDateAndTimeFilled = (0, react_1.useCallback)(() => isTimeFilled() && isDateFilled(), [isDateFilled, isTimeFilled]);
package/dist/cjs/utils.js CHANGED
@@ -1,5 +1,7 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
3
5
  Object.defineProperty(exports, "__esModule", {
4
6
  value: true
5
7
  });
@@ -59,7 +61,10 @@ const getInRangePosition = (date, viewMode, range) => {
59
61
  if (!range) {
60
62
  return constants_1.IN_RANGE_POSITION.Out;
61
63
  }
62
- const [startDate, endDate] = (0, exports.sortDates)(range);
64
+ const _ref = (0, exports.sortDates)(range),
65
+ _ref2 = (0, _slicedToArray2.default)(_ref, 2),
66
+ startDate = _ref2[0],
67
+ endDate = _ref2[1];
63
68
  const isStart = (0, exports.isTheSameItem)(viewMode, date, startDate);
64
69
  const isEnd = (0, exports.isTheSameItem)(viewMode, date, endDate);
65
70
  if (isStart && isEnd) {
@@ -71,7 +76,10 @@ const getInRangePosition = (date, viewMode, range) => {
71
76
  if (isEnd) {
72
77
  return constants_1.IN_RANGE_POSITION.End;
73
78
  }
74
- const [start, end] = range.map(date => date.valueOf()).sort();
79
+ const _range$map$sort = range.map(date => date.valueOf()).sort(),
80
+ _range$map$sort2 = (0, _slicedToArray2.default)(_range$map$sort, 2),
81
+ start = _range$map$sort2[0],
82
+ end = _range$map$sort2[1];
75
83
  return date.valueOf() >= start && date.valueOf() <= end ? constants_1.IN_RANGE_POSITION.In : constants_1.IN_RANGE_POSITION.Out;
76
84
  };
77
85
  exports.getInRangePosition = getInRangePosition;
@@ -85,17 +93,16 @@ const getStartOfTheYear = date => new Date(new Date(date.getFullYear(), 0, 1).va
85
93
  exports.getStartOfTheYear = getStartOfTheYear;
86
94
  const getEndOfTheYear = date => new Date(new Date(date.getFullYear() + 1, 0, 1).valueOf() - 1);
87
95
  exports.getEndOfTheYear = getEndOfTheYear;
88
- const getTestIdBuilder = testId => prefix => testId ? `${prefix}-${testId}` : undefined;
96
+ const getTestIdBuilder = testId => prefix => testId ? "".concat(prefix, "-").concat(testId) : undefined;
89
97
  exports.getTestIdBuilder = getTestIdBuilder;
90
98
  const getNavigatorLocale = () => {
91
99
  var _a;
92
100
  return (0, utils_1.isBrowser)() ? (_a = navigator === null || navigator === void 0 ? void 0 : navigator.language) !== null && _a !== void 0 ? _a : 'ru-RU' : 'ru-RU';
93
101
  };
94
102
  const getLocale = function () {
95
- let {
96
- localeProp,
97
- ctxLang
98
- } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
103
+ let _ref3 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
104
+ localeProp = _ref3.localeProp,
105
+ ctxLang = _ref3.ctxLang;
99
106
  return localeProp || new Intl.Locale(ctxLang ? ctxLang.replace('_', '-') : getNavigatorLocale());
100
107
  };
101
108
  exports.getLocale = getLocale;
package/package.json CHANGED
@@ -4,7 +4,7 @@
4
4
  "access": "public"
5
5
  },
6
6
  "title": "Calendar",
7
- "version": "0.14.2-preview-02d918ac.0",
7
+ "version": "0.14.2",
8
8
  "sideEffects": [
9
9
  "*.css",
10
10
  "*.woff",
@@ -39,7 +39,7 @@
39
39
  "@snack-uikit/button": "0.19.19",
40
40
  "@snack-uikit/divider": "3.2.12",
41
41
  "@snack-uikit/icons": "0.27.7",
42
- "@snack-uikit/list": "0.33.3-preview-02d918ac.0",
42
+ "@snack-uikit/list": "0.33.3",
43
43
  "@snack-uikit/utils": "4.0.2",
44
44
  "classnames": "2.5.1",
45
45
  "uncontrollable": "8.0.4",
@@ -48,5 +48,5 @@
48
48
  "peerDependencies": {
49
49
  "@snack-uikit/locale": "*"
50
50
  },
51
- "gitHead": "00136e44a3f59e0cf80df069e32dac42b3a8d88a"
51
+ "gitHead": "864821fceaa6bbb61080166d14f1682fa16e3f85"
52
52
  }