@skbkontur/react-ui 6.1.7-c386f.0 → 6.1.7
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 +13 -0
- package/components/Checkbox/Checkbox.d.ts +0 -5
- package/components/Checkbox/Checkbox.js +21 -42
- package/components/Checkbox/Checkbox.js.map +1 -1
- package/components/Checkbox/Checkbox.mixins.d.ts +0 -2
- package/components/Checkbox/Checkbox.mixins.js +0 -6
- package/components/Checkbox/Checkbox.mixins.js.map +1 -1
- package/components/Checkbox/Checkbox.styles.d.ts +0 -7
- package/components/Checkbox/Checkbox.styles.js +2 -23
- package/components/Checkbox/Checkbox.styles.js.map +1 -1
- package/components/Group/Group.js +2 -3
- package/components/Group/Group.js.map +1 -1
- package/components/Input/Input.d.ts +4 -1
- package/components/Input/Input.js +4 -1
- package/components/Input/Input.js.map +1 -1
- package/components/MenuItem/MenuItem.d.ts +1 -1
- package/components/MenuItem/MenuItem.js.map +1 -1
- package/components/PasswordInput/PasswordInput.js +13 -1
- package/components/PasswordInput/PasswordInput.js.map +1 -1
- package/components/Radio/Radio.d.ts +0 -4
- package/components/Radio/Radio.js +1 -20
- package/components/Radio/Radio.js.map +1 -1
- package/components/Radio/Radio.mixins.d.ts +0 -2
- package/components/Radio/Radio.mixins.js +0 -6
- package/components/Radio/Radio.mixins.js.map +1 -1
- package/components/Radio/Radio.styles.d.ts +0 -6
- package/components/Radio/Radio.styles.js +4 -22
- package/components/Radio/Radio.styles.js.map +1 -1
- package/components/Toggle/Toggle.d.ts +0 -5
- package/components/Toggle/Toggle.js +22 -46
- package/components/Toggle/Toggle.js.map +1 -1
- package/components/Toggle/Toggle.mixins.d.ts +0 -2
- package/components/Toggle/Toggle.mixins.js +0 -6
- package/components/Toggle/Toggle.mixins.js.map +1 -1
- package/components/Toggle/Toggle.styles.d.ts +0 -9
- package/components/Toggle/Toggle.styles.js +2 -29
- package/components/Toggle/Toggle.styles.js.map +1 -1
- package/components/Tooltip/Tooltip.d.ts +2 -0
- package/components/Tooltip/Tooltip.js +25 -4
- package/components/Tooltip/Tooltip.js.map +1 -1
- package/index.d.ts +0 -1
- package/index.js +0 -1
- package/index.js.map +1 -1
- package/internal/themes/BasicTheme.d.ts +0 -65
- package/internal/themes/BasicTheme.js +0 -253
- package/internal/themes/BasicTheme.js.map +1 -1
- package/internal/themes/DarkTheme6_0.js +0 -1
- package/internal/themes/DarkTheme6_0.js.map +1 -1
- package/lib/locale/types.d.ts +0 -2
- package/lib/locale/types.js.map +1 -1
- package/lib/utils.d.ts +0 -2
- package/lib/utils.js +0 -1
- package/lib/utils.js.map +1 -1
- package/package.json +1 -9
- package/components/TimePicker/TimeClockIcon.d.ts +0 -3
- package/components/TimePicker/TimeClockIcon.js +0 -11
- package/components/TimePicker/TimeClockIcon.js.map +0 -1
- package/components/TimePicker/TimePicker.d.ts +0 -153
- package/components/TimePicker/TimePicker.js +0 -739
- package/components/TimePicker/TimePicker.js.map +0 -1
- package/components/TimePicker/TimePicker.styles.d.ts +0 -13
- package/components/TimePicker/TimePicker.styles.js +0 -42
- package/components/TimePicker/TimePicker.styles.js.map +0 -1
- package/components/TimePicker/TimePickerItems.d.ts +0 -20
- package/components/TimePicker/TimePickerItems.js +0 -115
- package/components/TimePicker/TimePickerItems.js.map +0 -1
- package/components/TimePicker/TimePickerMobilePopup.d.ts +0 -45
- package/components/TimePicker/TimePickerMobilePopup.js +0 -45
- package/components/TimePicker/TimePickerMobilePopup.js.map +0 -1
- package/components/TimePicker/TimePickerPopup.d.ts +0 -23
- package/components/TimePicker/TimePickerPopup.js +0 -18
- package/components/TimePicker/TimePickerPopup.js.map +0 -1
- package/components/TimePicker/helpers/TimePicker.constants.d.ts +0 -29
- package/components/TimePicker/helpers/TimePicker.constants.js +0 -38
- package/components/TimePicker/helpers/TimePicker.constants.js.map +0 -1
- package/components/TimePicker/helpers/TimePicker.editing.d.ts +0 -23
- package/components/TimePicker/helpers/TimePicker.editing.js +0 -101
- package/components/TimePicker/helpers/TimePicker.editing.js.map +0 -1
- package/components/TimePicker/helpers/TimePicker.layout.d.ts +0 -6
- package/components/TimePicker/helpers/TimePicker.layout.js +0 -49
- package/components/TimePicker/helpers/TimePicker.layout.js.map +0 -1
- package/components/TimePicker/helpers/TimePicker.selection.d.ts +0 -5
- package/components/TimePicker/helpers/TimePicker.selection.js +0 -23
- package/components/TimePicker/helpers/TimePicker.selection.js.map +0 -1
- package/components/TimePicker/helpers/TimePicker.shared.d.ts +0 -91
- package/components/TimePicker/helpers/TimePicker.shared.js +0 -111
- package/components/TimePicker/helpers/TimePicker.shared.js.map +0 -1
- package/components/TimePicker/helpers/TimePicker.value.d.ts +0 -80
- package/components/TimePicker/helpers/TimePicker.value.js +0 -237
- package/components/TimePicker/helpers/TimePicker.value.js.map +0 -1
- package/components/TimePicker/helpers/scrollSelectedItemIntoView.d.ts +0 -4
- package/components/TimePicker/helpers/scrollSelectedItemIntoView.js +0 -24
- package/components/TimePicker/helpers/scrollSelectedItemIntoView.js.map +0 -1
- package/components/TimePicker/helpers/validateTimePicker.d.ts +0 -8
- package/components/TimePicker/helpers/validateTimePicker.js +0 -17
- package/components/TimePicker/helpers/validateTimePicker.js.map +0 -1
- package/components/TimePicker/hooks/useTimePickerDropdown.d.ts +0 -23
- package/components/TimePicker/hooks/useTimePickerDropdown.js +0 -83
- package/components/TimePicker/hooks/useTimePickerDropdown.js.map +0 -1
- package/components/TimePicker/hooks/useTimePickerSelection.d.ts +0 -18
- package/components/TimePicker/hooks/useTimePickerSelection.js +0 -66
- package/components/TimePicker/hooks/useTimePickerSelection.js.map +0 -1
- package/components/TimePicker/hooks/useTimePickerSource.d.ts +0 -27
- package/components/TimePicker/hooks/useTimePickerSource.js +0 -59
- package/components/TimePicker/hooks/useTimePickerSource.js.map +0 -1
- package/components/TimePicker/hooks/useTimePickerValue.d.ts +0 -33
- package/components/TimePicker/hooks/useTimePickerValue.js +0 -97
- package/components/TimePicker/hooks/useTimePickerValue.js.map +0 -1
- package/components/TimePicker/index.d.ts +0 -4
- package/components/TimePicker/index.js +0 -3
- package/components/TimePicker/index.js.map +0 -1
- package/components/TimePicker/locale/index.d.ts +0 -4
- package/components/TimePicker/locale/index.js +0 -9
- package/components/TimePicker/locale/index.js.map +0 -1
- package/components/TimePicker/locale/locales/en.d.ts +0 -2
- package/components/TimePicker/locale/locales/en.js +0 -5
- package/components/TimePicker/locale/locales/en.js.map +0 -1
- package/components/TimePicker/locale/locales/ru.d.ts +0 -2
- package/components/TimePicker/locale/locales/ru.js +0 -5
- package/components/TimePicker/locale/locales/ru.js.map +0 -1
- package/components/TimePicker/locale/types.d.ts +0 -4
- package/components/TimePicker/locale/types.js +0 -2
- package/components/TimePicker/locale/types.js.map +0 -1
- package/internal/NativeTimeInput/NativeTimeInput.d.ts +0 -16
- package/internal/NativeTimeInput/NativeTimeInput.js +0 -25
- package/internal/NativeTimeInput/NativeTimeInput.js.map +0 -1
- package/internal/NativeTimeInput/NativeTimeInput.styles.d.ts +0 -3
- package/internal/NativeTimeInput/NativeTimeInput.styles.js +0 -15
- package/internal/NativeTimeInput/NativeTimeInput.styles.js.map +0 -1
- package/internal/NativeTimeInput/NativeTimeInput.utils.d.ts +0 -7
- package/internal/NativeTimeInput/NativeTimeInput.utils.js +0 -28
- package/internal/NativeTimeInput/NativeTimeInput.utils.js.map +0 -1
- package/internal/NativeTimeInput/index.d.ts +0 -1
- package/internal/NativeTimeInput/index.js +0 -2
- package/internal/NativeTimeInput/index.js.map +0 -1
- package/internal/TimeInput/TimeFragments.d.ts +0 -15
- package/internal/TimeInput/TimeFragments.js +0 -72
- package/internal/TimeInput/TimeFragments.js.map +0 -1
- package/internal/TimeInput/TimeFragments.styles.d.ts +0 -12
- package/internal/TimeInput/TimeFragments.styles.js +0 -43
- package/internal/TimeInput/TimeFragments.styles.js.map +0 -1
- package/internal/TimeInput/TimeInput.d.ts +0 -22
- package/internal/TimeInput/TimeInput.js +0 -103
- package/internal/TimeInput/TimeInput.js.map +0 -1
- package/internal/TimeInput/TimeInput.styles.d.ts +0 -6
- package/internal/TimeInput/TimeInput.styles.js +0 -21
- package/internal/TimeInput/TimeInput.styles.js.map +0 -1
- package/internal/TimeInput/index.d.ts +0 -1
- package/internal/TimeInput/index.js +0 -2
- package/internal/TimeInput/index.js.map +0 -1
- package/internal/icons2022/TimeClockIcon/TimeClockIcon16Light.d.ts +0 -2
- package/internal/icons2022/TimeClockIcon/TimeClockIcon16Light.js +0 -20
- package/internal/icons2022/TimeClockIcon/TimeClockIcon16Light.js.map +0 -1
- package/internal/icons2022/TimeClockIcon/TimeClockIcon20Light.d.ts +0 -2
- package/internal/icons2022/TimeClockIcon/TimeClockIcon20Light.js +0 -20
- package/internal/icons2022/TimeClockIcon/TimeClockIcon20Light.js.map +0 -1
- package/internal/icons2022/TimeClockIcon/TimeClockIcon24Regular.d.ts +0 -2
- package/internal/icons2022/TimeClockIcon/TimeClockIcon24Regular.js +0 -20
- package/internal/icons2022/TimeClockIcon/TimeClockIcon24Regular.js.map +0 -1
|
@@ -1,153 +0,0 @@
|
|
|
1
|
-
import type { AriaAttributes, HTMLAttributes, ReactNode } from 'react';
|
|
2
|
-
import React from 'react';
|
|
3
|
-
import type { CommonProps } from '../../internal/CommonWrapper/index.js';
|
|
4
|
-
import type { SizeProp } from '../../lib/types/props.js';
|
|
5
|
-
import { type NoInfer } from '../../lib/utils.js';
|
|
6
|
-
import type { MenuItemState } from '../MenuItem/index.js';
|
|
7
|
-
import { type TimeFormat, type TimeItemValue, type TimePickerSource, type TimePickerValue, type TimePickerValueToItem } from './helpers/TimePicker.shared.js';
|
|
8
|
-
import { validateTimePicker } from './helpers/validateTimePicker.js';
|
|
9
|
-
export interface TimePickerProps<T extends TimeItemValue = string> extends CommonProps, Pick<AriaAttributes, 'aria-describedby' | 'aria-label'>, Pick<HTMLAttributes<HTMLElement>, 'id'> {
|
|
10
|
-
/** Устанавливает формат времени @default HH:mm */
|
|
11
|
-
format?: TimeFormat;
|
|
12
|
-
/** Задает источник элементов выпадающего списка.
|
|
13
|
-
* Можно передать массив или функцию, которая получает текущий запрос и возвращает массив либо Promise с массивом.
|
|
14
|
-
* Запрос — это введенные цифры сегментов с сохранением их позиций: `12`, `12:3`, а если заполнены только минуты — `:30`.
|
|
15
|
-
* Элемент задается строкой со временем — `'09:00'` — или объектом `{ value, label?, disabled? }`
|
|
16
|
-
* с любыми дополнительными полями. Выбранный элемент приходит в `onValueChange` в той же форме.
|
|
17
|
-
* Кроме значений времени можно передать React-элементы или функции, возвращающие React-элемент:
|
|
18
|
-
* например, `MenuHeader`, `MenuFooter`, `MenuSeparator` или `MenuItem`.
|
|
19
|
-
* Такие элементы отображаются в меню, но не участвуют в фильтрации и выборе значения.
|
|
20
|
-
* Полученные элементы всегда фильтруются компонентом одинаково для массива и функции:
|
|
21
|
-
* введенные цифры сегмента сравниваются с началом соответствующего сегмента элемента.
|
|
22
|
-
* В выпадающем списке не может быть двух элементов с одинаковым временем:
|
|
23
|
-
* из элементов с одинаковым временем компонент оставляет первый.
|
|
24
|
-
* Пустые элементы из условного рендера — `isVisible && item` — пропускаются.
|
|
25
|
-
* Пока Promise не разрешился и предыдущих результатов нет, в выпадающем меню показывается спиннер загрузки.
|
|
26
|
-
* Если предыдущие результаты есть, подходящие элементы остаются видимыми до прихода новых,
|
|
27
|
-
* а индикация загрузки показывается в правой иконке поля.
|
|
28
|
-
* Замена функции не перезапрашивает уже открытый список: актуальная функция используется при следующем запросе. */
|
|
29
|
-
source?: TimePickerSource<T>;
|
|
30
|
-
/** Отрисовывает значение времени в выпадающем списке. Не применяется к React-элементам из `source`. */
|
|
31
|
-
renderItem?: (item: T, state: MenuItemState) => ReactNode;
|
|
32
|
-
/** Задает нижнюю границу времени. Элементы за границей становятся заблокированными. */
|
|
33
|
-
minTime?: string;
|
|
34
|
-
/** Задает верхнюю границу времени. Элементы за границей становятся заблокированными. */
|
|
35
|
-
maxTime?: string;
|
|
36
|
-
/** Задает значение поля: элемент того же типа, что в `source`, либо строку в формате `HH:mm[:ss]`.
|
|
37
|
-
* Из элемента-объекта используется только время `value`, `label` в поле не отображается.
|
|
38
|
-
* Пустое значение можно передать как `''` или `null`.
|
|
39
|
-
* Если проп не задан, компонент неконтролируемый: он хранит значение сам и сообщает о нем через `onValueChange`. */
|
|
40
|
-
value?: TimePickerValue<T>;
|
|
41
|
-
/** Преобразует время в элемент.
|
|
42
|
-
* Применяется ко временам, которые пользователь не выбрал из `source`:
|
|
43
|
-
* ручной ввод, изменение стрелками, вставка из буфера, нативный пикер.
|
|
44
|
-
* По умолчанию компонент повторяет форму элементов `source` и `value`:
|
|
45
|
-
* для строк отдает строку, для объектов — `{ value }`.
|
|
46
|
-
* Форму элементов функции-источника компонент узнает только после первого ответа,
|
|
47
|
-
* поэтому до него — и всегда в режиме нативного пикера — время без этого пропа уходит строкой.
|
|
48
|
-
* Задавайте этот проп, если элементы содержат поля, кроме `value`, `label` и `disabled`.
|
|
49
|
-
* @default (value) => value | ({ value }) */
|
|
50
|
-
valueToItem?: TimePickerValueToItem<T>;
|
|
51
|
-
/** Устанавливает фокус на поле ввода после окончания загрузки страницы @default false */
|
|
52
|
-
autoFocus?: boolean;
|
|
53
|
-
/** Делает компонент заблокированным. */
|
|
54
|
-
disabled?: boolean;
|
|
55
|
-
/** Переводит контрол в состояние валидации ошибки. */
|
|
56
|
-
error?: boolean;
|
|
57
|
-
/** Переводит контрол в состояние валидации предупреждения. */
|
|
58
|
-
warning?: boolean;
|
|
59
|
-
/** Включает нативный системный выбор времени на мобильных устройствах. */
|
|
60
|
-
useMobileNativeTimePicker?: boolean;
|
|
61
|
-
/** Расположение выпадающего меню. */
|
|
62
|
-
menuPos?: 'top' | 'bottom';
|
|
63
|
-
/** Выравнивание выпадающего меню. */
|
|
64
|
-
menuAlign?: 'left' | 'right';
|
|
65
|
-
/** Ширина выпадающего меню. По умолчанию — минимальная ширина поля ввода, расширяется по контенту. */
|
|
66
|
-
menuWidth?: string | number;
|
|
67
|
-
/** Задает ширину поля. */
|
|
68
|
-
width?: string | number;
|
|
69
|
-
/** Переопределяет иконку или скрывает, если передать `null`.
|
|
70
|
-
* Пока элементы уже показаны, а новый запрос к функции-источнику еще выполняется,
|
|
71
|
-
* вместо иконки показывается индикатор загрузки. */
|
|
72
|
-
rightIcon?: React.ReactNode | (() => React.ReactNode);
|
|
73
|
-
/** Устанавливает суффикс после значения и перед иконкой. */
|
|
74
|
-
suffix?: ReactNode;
|
|
75
|
-
/** Размер поля ввода и выпадающего меню. */
|
|
76
|
-
size?: SizeProp;
|
|
77
|
-
/** Устанавливает радиус скруглений углов.
|
|
78
|
-
* @ignore */
|
|
79
|
-
corners?: Partial<Pick<React.CSSProperties, 'borderTopRightRadius' | 'borderBottomRightRadius' | 'borderBottomLeftRadius' | 'borderTopLeftRadius'>>;
|
|
80
|
-
/** Задает функцию, которая вызывается при нажатии на контрол. */
|
|
81
|
-
onClick?(event: React.MouseEvent<HTMLElement>): void;
|
|
82
|
-
/**
|
|
83
|
-
* Событие изменения значения `value`.
|
|
84
|
-
* Вызывается при коммите значения: потере фокуса, нажатии Enter, выборе элемента из списка
|
|
85
|
-
* или изменении в нативном пикере.
|
|
86
|
-
* Первым аргументом приходит элемент в той же форме, в которой элементы переданы в `source`:
|
|
87
|
-
* при выборе из выпадающего списка — тот же элемент, в остальных случаях — результат `valueToItem`,
|
|
88
|
-
* а при пустом значении — `null`.
|
|
89
|
-
* Вторым аргументом приходит полностью нормализованное время в формате `HH:mm[:ss]` или пустая строка.
|
|
90
|
-
* Тип элемента выводится из `source` и `value`, но не из этого обработчика,
|
|
91
|
-
* иначе `onValueChange={setItem}` сузил бы его до `TimeItem`.
|
|
92
|
-
*/
|
|
93
|
-
onValueChange?(item: NoInfer<T> | null, value: string): void;
|
|
94
|
-
/**
|
|
95
|
-
* Событие изменения значения в процессе ввода.
|
|
96
|
-
* Значение частично нормализуется по сегментам, например `1` => `01`, незаполненный хвост отбрасывается.
|
|
97
|
-
* Промежуточное значение может не соответствовать полной форме `HH:mm[:ss]`, поэтому тип — произвольная строка.
|
|
98
|
-
*/
|
|
99
|
-
onInputValueChange?(value: string): void;
|
|
100
|
-
/**
|
|
101
|
-
* Событие некорректного ввода: пользователь ввел или вставил значение, которое не может быть временем.
|
|
102
|
-
* Вызывается с нажатой клавишей — например `а` или `,` — либо со значением из буфера,
|
|
103
|
-
* из которого не получилось собрать время.
|
|
104
|
-
* Значение вне диапазона `minTime`/`maxTime` некорректным вводом не считается,
|
|
105
|
-
* его можно проверить через `TimePicker.validate`.
|
|
106
|
-
* Вторым аргументом передается метод вспыхивания рамки поля.
|
|
107
|
-
* Если обработчик не задан, поле вспыхивает само.
|
|
108
|
-
* Обработчик может подставить значение вместо некорректного ввода — например разобрать вставку
|
|
109
|
-
* в собственном формате: возвращенный элемент коммитится и приходит в `onValueChange`,
|
|
110
|
-
* `null` очищает поле, а `undefined` оставляет значение прежним.
|
|
111
|
-
*/
|
|
112
|
-
onUnexpectedInput?(value: string, blink: () => void): void | NoInfer<T> | null;
|
|
113
|
-
/** Событие потери фокуса. */
|
|
114
|
-
onBlur?(event: React.FocusEvent<HTMLElement>): void;
|
|
115
|
-
/** Событие получения фокуса. */
|
|
116
|
-
onFocus?(event: React.FocusEvent<HTMLElement>): void;
|
|
117
|
-
/** Событие нажатия клавиши. */
|
|
118
|
-
onKeyDown?(event: React.KeyboardEvent<HTMLElement>): void;
|
|
119
|
-
/** Событие вставки из буфера. */
|
|
120
|
-
onPaste?(event: React.ClipboardEvent<HTMLElement>): void;
|
|
121
|
-
}
|
|
122
|
-
export interface TimePickerRef {
|
|
123
|
-
/** Устанавливает фокус на поле ввода.
|
|
124
|
-
* С опцией `withoutOpenDropdown` фокус не открывает выпадающее меню. */
|
|
125
|
-
focus(options?: {
|
|
126
|
-
withoutOpenDropdown?: boolean;
|
|
127
|
-
}): void;
|
|
128
|
-
/** Снимает фокус с поля ввода. */
|
|
129
|
-
blur(): void;
|
|
130
|
-
/** Открывает выпадающее меню, установив фокус на поле.
|
|
131
|
-
* В режиме нативного пикера открывает системный пикер. */
|
|
132
|
-
open(): void;
|
|
133
|
-
/** Закрывает выпадающее меню. */
|
|
134
|
-
close(): void;
|
|
135
|
-
/** Запускает анимацию blink у поля ввода времени. */
|
|
136
|
-
blink(): void;
|
|
137
|
-
/** Возвращает корневой DOM-узел компонента. */
|
|
138
|
-
getRootNode(): HTMLElement | null;
|
|
139
|
-
}
|
|
140
|
-
export type TimePicker = TimePickerRef;
|
|
141
|
-
interface TimePickerComponent {
|
|
142
|
-
<T extends TimeItemValue = string>(props: TimePickerProps<T> & React.RefAttributes<TimePickerRef>): React.ReactElement | null;
|
|
143
|
-
displayName?: string;
|
|
144
|
-
__KONTUR_REACT_UI__: string;
|
|
145
|
-
/** Проверяет, что значение полностью заполнено, соответствует формату и попадает в диапазон `minTime`/`maxTime`. */
|
|
146
|
-
validate: typeof validateTimePicker;
|
|
147
|
-
}
|
|
148
|
-
/** Поле с временем помогает пользователю быстро и удобно указать время в правильном формате.
|
|
149
|
-
* В поле можно ввести время с клавиатуры либо выбрать из выпадающего списка,
|
|
150
|
-
* передав массив или функцию в проп `source`.
|
|
151
|
-
*/
|
|
152
|
-
export declare const TimePicker: TimePickerComponent;
|
|
153
|
-
export {};
|