@snack-uikit/calendar 0.6.0 → 0.6.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.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,24 @@
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.6.2 (2023-12-18)
7
+
8
+ ### Only dependencies have been changed
9
+ * [@snack-uikit/icons@0.19.2](https://git.sbercloud.tech/sbercloud-ui/tokens-design-system/snack-uikit/-/blob/master/packages/icons/CHANGELOG.md)
10
+
11
+
12
+
13
+
14
+
15
+ ## 0.6.1 (2023-12-14)
16
+
17
+ ### Only dependencies have been changed
18
+ * [@snack-uikit/icons@0.19.1](https://git.sbercloud.tech/sbercloud-ui/tokens-design-system/snack-uikit/-/blob/master/packages/icons/CHANGELOG.md)
19
+
20
+
21
+
22
+
23
+
6
24
  # 0.6.0 (2023-12-14)
7
25
 
8
26
 
package/README.md CHANGED
@@ -42,7 +42,7 @@ import { Calendar } from '@snack-uikit/calendar';
42
42
  | autofocus | `boolean` | - | Автофокус |
43
43
  | locale | `Intl.Locale` | Проставляется в соответствие с языком в настройках браузера | Локаль, в соответствие с которой выставляется язык названий и первый день недели |
44
44
  | onFocusLeave | `(direction: FocusDirection) => void` | - | Колбек потери фокуса. Вызывается со значением `next`, когда фокус покидает компонент, передвигаясь вперед, по клавише `tab`. Со значением `prev` - по клавише стрелки вверх или `shift + tab`. |
45
- | navigationStartRef | `(instance: HTMLButtonElement) => void` | - | Ref-callback на первый доступный интерактивный элемент |
45
+ | navigationStartRef | `RefCallback<HTMLButtonElement>` | - | Ref-callback на первый доступный интерактивный элемент |
46
46
  | value | `Date \| Range` | - | Выбранное значение.<br> - в режиме date тип `Date` <br> - в режиме range тип `Range` (`[Date, Date]`) |
47
47
  | defaultValue | `Date \| Range` | - | Значение по-умолчанию для uncontrolled.<br> - в режиме date тип `Date` <br> - в режиме range тип `Range` (`[Date, Date]`) |
48
48
  | onChangeValue | `((value: Date) => void) \| ((value: Range) => void)` | - | Колбек выбора значения.<br> - в режиме date принимает тип `Date` <br> - в режиме range принимает тип `Range` |
@@ -52,5 +52,5 @@ export function Button(_a) {
52
52
  useNavigationStartRef && (navigationStartRef === null || navigationStartRef === void 0 ? void 0 : navigationStartRef(buttonRef));
53
53
  ref.current = buttonRef;
54
54
  }
55
- }, onKeyDown: onKeyDownHandler, onFocus: () => setFocus(focusName), onBlur: () => setFocus(undefined), disabled: disabled }, extractSupportProps(rest), { children: [label, _jsx("div", Object.assign({ className: styles.icon }, { children: icon }))] })));
55
+ }, onKeyDown: onKeyDownHandler, onFocus: () => setFocus(focusName), onBlur: () => setFocus(undefined), disabled: disabled }, extractSupportProps(rest), { children: [label, _jsx("div", { className: styles.icon, children: icon })] })));
56
56
  }
@@ -59,7 +59,7 @@ export function CalendarBase(_a) {
59
59
  const getTestId = useMemo(() => getTestIdBuilder(testId), [testId]);
60
60
  const locale = useMemo(() => getLocale(localeProp), [localeProp]);
61
61
  const firstNotDisableCell = useRef([0, 0]);
62
- return (_jsx("div", Object.assign({}, extractSupportProps(rest), { className: cn(styles.calendar, className, CONTAINER_SIZE_MAP[size]), style: style, "data-size": size, "data-fit-to-container": fitToContainer || undefined, "data-test-id": testId }, { children: _jsxs(CalendarContext.Provider, Object.assign({ value: {
62
+ return (_jsx("div", Object.assign({}, extractSupportProps(rest), { className: cn(styles.calendar, className, CONTAINER_SIZE_MAP[size]), style: style, "data-size": size, "data-fit-to-container": fitToContainer || undefined, "data-test-id": testId, children: _jsxs(CalendarContext.Provider, { value: {
63
63
  locale,
64
64
  size,
65
65
  value,
@@ -85,5 +85,5 @@ export function CalendarBase(_a) {
85
85
  onFocusLeave,
86
86
  buildCellProps,
87
87
  navigationStartRef,
88
- } }, { children: [_jsxs("div", Object.assign({ className: styles.header, "data-size": size }, { children: [_jsx(CalendarNavigation, {}), _jsx(ColumnLabels, {})] })), _jsx("div", Object.assign({ className: styles.body }, { children: _jsx("div", Object.assign({ className: styles.rows, "data-size": size }, { children: _jsx(CalendarBody, {}) })) }))] })) })));
88
+ }, children: [_jsxs("div", { className: styles.header, "data-size": size, children: [_jsx(CalendarNavigation, {}), _jsx(ColumnLabels, {})] }), _jsx("div", { className: styles.body, children: _jsx("div", { className: styles.rows, "data-size": size, children: _jsx(CalendarBody, {}) }) })] }) })));
89
89
  }
@@ -31,7 +31,7 @@ export function CalendarNavigation() {
31
31
  const periodName = usePeriodName();
32
32
  const levelButtonDisabled = viewMode === VIEW_MODE.Decade;
33
33
  const isArrowButtonFocused = focus && [NEXT_PERIOD_BUTTON_FOCUS_NAME, PREV_PERIOD_BUTTON_FOCUS_NAME].includes(focus);
34
- return (_jsxs("div", Object.assign({ className: styles.wrapper }, { children: [_jsx(Button, { disabled: levelButtonDisabled, onClick: () => {
34
+ return (_jsxs("div", { className: styles.wrapper, children: [_jsx(Button, { disabled: levelButtonDisabled, onClick: () => {
35
35
  if (viewMode === VIEW_MODE.Year) {
36
36
  setFocus(PREV_PERIOD_BUTTON_FOCUS_NAME);
37
37
  }
@@ -42,5 +42,5 @@ export function CalendarNavigation() {
42
42
  : -1, icon: ICONS.UP[size], onRightArrowKeyDown: () => setFocus(NEXT_PERIOD_BUTTON_FOCUS_NAME), onLeftArrowKeyDown: () => setFocus(LEVEL_BUTTON_FOCUS_NAME), onDownArrowKeyDown: () => {
43
43
  const rightGap = viewMode === VIEW_MODE.Month ? 2 : 1;
44
44
  setFocus(stringifyAddress([0, GRID_SIZE[viewMode].columns - rightGap]));
45
- } }), _jsx(Button, { onClick: () => setViewShift(viewShift + 1), "data-test-id": getTestId('period-next'), focusName: NEXT_PERIOD_BUTTON_FOCUS_NAME, tabIndex: focus === NEXT_PERIOD_BUTTON_FOCUS_NAME ? 0 : -1, icon: ICONS.DOWN[size], onLeftArrowKeyDown: () => setFocus(PREV_PERIOD_BUTTON_FOCUS_NAME), onDownArrowKeyDown: () => setFocus(stringifyAddress([0, GRID_SIZE[viewMode].columns - 1])) })] })] })));
45
+ } }), _jsx(Button, { onClick: () => setViewShift(viewShift + 1), "data-test-id": getTestId('period-next'), focusName: NEXT_PERIOD_BUTTON_FOCUS_NAME, tabIndex: focus === NEXT_PERIOD_BUTTON_FOCUS_NAME ? 0 : -1, icon: ICONS.DOWN[size], onLeftArrowKeyDown: () => setFocus(PREV_PERIOD_BUTTON_FOCUS_NAME), onDownArrowKeyDown: () => setFocus(stringifyAddress([0, GRID_SIZE[viewMode].columns - 1])) })] })] }));
46
46
  }
@@ -5,5 +5,5 @@ import { CalendarContext } from '../CalendarContext';
5
5
  import styles from './styles.module.css';
6
6
  export function ColumnLabel({ label, className }) {
7
7
  const { size, getTestId } = useContext(CalendarContext);
8
- return (_jsx("div", Object.assign({ className: cn(styles.wrapper, className), "data-test-id": getTestId('header-item'), "data-size": size }, { children: label })));
8
+ return (_jsx("div", { className: cn(styles.wrapper, className), "data-test-id": getTestId('header-item'), "data-size": size, children: label }));
9
9
  }
@@ -10,7 +10,7 @@ export function ColumnLabels({ className }) {
10
10
  const { viewMode, locale, size } = useContext(CalendarContext);
11
11
  const labels = useMemo(() => getWeekLabels(locale), [locale]);
12
12
  if (viewMode === VIEW_MODE.Month) {
13
- return (_jsx("div", Object.assign({ className: cn(styles.row, className), "data-size": size }, { children: labels.map(label => (_jsx(ColumnLabel, { label: label }, label))) })));
13
+ return (_jsx("div", { className: cn(styles.row, className), "data-size": size, children: labels.map(label => (_jsx(ColumnLabel, { label: label }, label))) }));
14
14
  }
15
15
  return null;
16
16
  }
@@ -2,5 +2,5 @@ import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { Item } from '../Item';
3
3
  import styles from './styles.module.css';
4
4
  export function Grid({ grid }) {
5
- return (_jsx("table", Object.assign({ className: styles.grid, border: 0 }, { children: _jsx("tbody", { children: grid.map((row, index) => (_jsx("tr", { children: row.map((cell, index) => (_jsx("td", { children: _jsx(Item, { data: cell, className: styles.item }) }, `${cell.label}_${index}`))) }, index))) }) })));
5
+ return (_jsx("table", { className: styles.grid, border: 0, children: _jsx("tbody", { children: grid.map((row, index) => (_jsx("tr", { children: row.map((cell, index) => (_jsx("td", { children: _jsx(Item, { data: cell, className: styles.item }) }, `${cell.label}_${index}`))) }, index))) }) }));
6
6
  }
@@ -45,5 +45,5 @@ export function Item({ data, className }) {
45
45
  }, onMouseLeave: onLeave, onBlur: () => {
46
46
  setFocus(undefined);
47
47
  onLeave === null || onLeave === void 0 ? void 0 : onLeave();
48
- }, onKeyDown: keyDownHandler, ref: ref }, attributes, { "data-test-id": getTestId('item'), tabIndex: tabIndex }, { children: [isInRange && _jsx("div", Object.assign({ className: styles.range }, attributes)), _jsx("div", Object.assign({ className: styles.box }, attributes)), _jsxs("div", Object.assign({ className: styles.content }, attributes, { children: [_jsx("span", Object.assign({ className: styles.label }, { children: label })), isCurrent && _jsx("div", Object.assign({ className: styles.marker }, attributes))] }))] })) })));
48
+ }, onKeyDown: keyDownHandler, ref: ref }, attributes, { "data-test-id": getTestId('item'), tabIndex: tabIndex, children: [isInRange && _jsx("div", Object.assign({ className: styles.range }, attributes)), _jsx("div", Object.assign({ className: styles.box }, attributes)), _jsxs("div", Object.assign({ className: styles.content }, attributes, { children: [_jsx("span", { className: styles.label, children: label }), isCurrent && _jsx("div", Object.assign({ className: styles.marker }, attributes))] }))] })) })));
49
49
  }
package/package.json CHANGED
@@ -4,7 +4,7 @@
4
4
  "access": "public"
5
5
  },
6
6
  "title": "Calendar",
7
- "version": "0.6.0",
7
+ "version": "0.6.2",
8
8
  "sideEffects": [
9
9
  "*.css",
10
10
  "*.woff",
@@ -32,11 +32,11 @@
32
32
  "license": "Apache-2.0",
33
33
  "scripts": {},
34
34
  "dependencies": {
35
- "@snack-uikit/icons": "0.19.0",
35
+ "@snack-uikit/icons": "0.19.2",
36
36
  "@snack-uikit/utils": "3.2.0",
37
37
  "classnames": "2.3.2",
38
38
  "uncontrollable": "8.0.2",
39
39
  "weekstart": "2.0.0"
40
40
  },
41
- "gitHead": "bd39c5e674f3b91b0e2487782a04b15034cf3d8b"
41
+ "gitHead": "50ef9bb113ec40897ffb3eeae62539ce82ade899"
42
42
  }