@snack-uikit/chips 0.25.3 → 0.25.4

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,17 @@
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.25.4 (2025-03-03)
7
+
8
+
9
+ ### Bug Fixes
10
+
11
+ * **FF-6304:** widthStrategy prop using ([c19dc59](https://github.com/cloud-ru-tech/snack-uikit/commit/c19dc592bd2c27a6e790e51e80ba69e6a3b9db6b))
12
+
13
+
14
+
15
+
16
+
6
17
  ## 0.25.3 (2025-02-25)
7
18
 
8
19
  ### Only dependencies have been changed
package/README.md CHANGED
@@ -164,6 +164,7 @@ import { PlaceholderSVG } from '@snack-uikit/icons';
164
164
  | footer | `ReactNode ;` | - | Кастомизируемый элемент в конце списка |
165
165
  | footerActiveElementsRefs | `RefObject<HTMLElement>[]` | - | Список ссылок на кастомные элементы, помещенные в специальную секцию внизу списка |
166
166
  | scrollToSelectedItem | `boolean` | - | Флаг, отвещающий за прокручивание до выбранного элемента |
167
+ | virtualized | `boolean` | - | Включить виртуализацию на компоненты списка. Рекомендуется если у вас от 1к элементов списка |
167
168
  | selection | `SelectionSingleState \| SelectionMultipleState` | - | |
168
169
  | scrollRef | `RefObject<HTMLElement>` | - | Ссылка на элемент, обозначающий самый конец прокручиваемого списка |
169
170
  | scrollContainerRef | `RefObject<HTMLElement>` | - | Ссылка на контейнер, который скроллится |
@@ -172,7 +173,6 @@ import { PlaceholderSVG } from '@snack-uikit/icons';
172
173
  | noDataState | `EmptyStateProps` | - | Экран при отстутствии данных |
173
174
  | noResultsState | `EmptyStateProps` | - | Экран при отстутствии результатов поиска или фильтров |
174
175
  | errorDataState | `EmptyStateProps` | - | Экран при ошибке запроса |
175
- | virtualized | `boolean` | - | Включить виртуализацию на компоненты списка. Рекомендуется если у вас от 1к элементов списка |
176
176
  | onChange | `OnChangeHandler<any>` | - | Controlled обработчик измения состояния |
177
177
  | value | `ItemId` | - | Controlled состояние |
178
178
  | defaultValue | `ItemId` | - | Начальное состояние |
@@ -206,6 +206,7 @@ import { PlaceholderSVG } from '@snack-uikit/icons';
206
206
  | footer | `ReactNode ;` | - | Кастомизируемый элемент в конце списка |
207
207
  | footerActiveElementsRefs | `RefObject<HTMLElement>[]` | - | Список ссылок на кастомные элементы, помещенные в специальную секцию внизу списка |
208
208
  | scrollToSelectedItem | `boolean` | - | Флаг, отвещающий за прокручивание до выбранного элемента |
209
+ | virtualized | `boolean` | - | Включить виртуализацию на компоненты списка. Рекомендуется если у вас от 1к элементов списка |
209
210
  | selection | `SelectionSingleState \| SelectionMultipleState` | - | |
210
211
  | scrollRef | `RefObject<HTMLElement>` | - | Ссылка на элемент, обозначающий самый конец прокручиваемого списка |
211
212
  | scrollContainerRef | `RefObject<HTMLElement>` | - | Ссылка на контейнер, который скроллится |
@@ -214,7 +215,6 @@ import { PlaceholderSVG } from '@snack-uikit/icons';
214
215
  | noDataState | `EmptyStateProps` | - | Экран при отстутствии данных |
215
216
  | noResultsState | `EmptyStateProps` | - | Экран при отстутствии результатов поиска или фильтров |
216
217
  | errorDataState | `EmptyStateProps` | - | Экран при ошибке запроса |
217
- | virtualized | `boolean` | - | Включить виртуализацию на компоненты списка. Рекомендуется если у вас от 1к элементов списка |
218
218
  | onChange | `OnChangeHandler<any>` | - | Controlled обработчик измения состояния |
219
219
  | value | `ItemId[]` | - | Controlled состояние |
220
220
  | defaultValue | `ItemId[]` | - | Начальное состояние |
@@ -5,4 +5,4 @@ export type ChipChoiceMultipleValueFormatterProps<T extends ContentRenderProps =
5
5
  total: number;
6
6
  allLabel: string;
7
7
  };
8
- export declare function ChipChoiceMultiple<T extends ContentRenderProps = ContentRenderProps>({ value: valueProp, defaultValue, options, onChange: onChangeProp, valueRender, size, label, searchable, contentRender, dropDownClassName, onClearButtonClick, autoApply, disableFuzzySearch, onApprove, onCancel, open: openProp, onOpenChange, ...rest }: ChipChoiceMultipleProps<T>): import("react/jsx-runtime").JSX.Element;
8
+ export declare function ChipChoiceMultiple<T extends ContentRenderProps = ContentRenderProps>({ value: valueProp, defaultValue, options, onChange: onChangeProp, valueRender, size, label, searchable, contentRender, dropDownClassName, onClearButtonClick, autoApply, disableFuzzySearch, onApprove, onCancel, open: openProp, onOpenChange, widthStrategy, ...rest }: ChipChoiceMultipleProps<T>): import("react/jsx-runtime").JSX.Element;
@@ -57,9 +57,10 @@ function ChipChoiceMultiple(_a) {
57
57
  onApprove,
58
58
  onCancel,
59
59
  open: openProp,
60
- onOpenChange
60
+ onOpenChange,
61
+ widthStrategy = 'gte'
61
62
  } = _a,
62
- rest = __rest(_a, ["value", "defaultValue", "options", "onChange", "valueRender", "size", "label", "searchable", "contentRender", "dropDownClassName", "onClearButtonClick", "autoApply", "disableFuzzySearch", "onApprove", "onCancel", "open", "onOpenChange"]);
63
+ rest = __rest(_a, ["value", "defaultValue", "options", "onChange", "valueRender", "size", "label", "searchable", "contentRender", "dropDownClassName", "onClearButtonClick", "autoApply", "disableFuzzySearch", "onApprove", "onCancel", "open", "onOpenChange", "widthStrategy"]);
63
64
  const [value, setValue] = (0, utils_1.useValueControl)({
64
65
  value: valueProp,
65
66
  defaultValue,
@@ -148,7 +149,7 @@ function ChipChoiceMultiple(_a) {
148
149
  },
149
150
  trigger: 'clickAndFocusVisible',
150
151
  placement: 'bottom-start',
151
- widthStrategy: 'gte',
152
+ widthStrategy: widthStrategy,
152
153
  listRef: listRef,
153
154
  size: constants_2.DROPLIST_SIZE_MAP[size],
154
155
  "data-test-id": constants_1.CHIP_CHOICE_TEST_IDS.droplist,
@@ -5,4 +5,4 @@ export type ChipChoiceSingleValueFormatterProps = {
5
5
  allLabel?: string;
6
6
  };
7
7
  export declare function defaultSingleValueFormatter({ label, allLabel }: ChipChoiceSingleValueFormatterProps): ItemId | undefined;
8
- export declare function ChipChoiceSingle<T extends ContentRenderProps = ContentRenderProps>({ value: valueProp, defaultValue, options, onChange: onChangeProp, valueRender, size, label, searchable, contentRender, dropDownClassName, disableFuzzySearch, autoApply, onApprove, onCancel, onClearButtonClick, open: openProp, onOpenChange, ...rest }: ChipChoiceSingleProps<T>): import("react/jsx-runtime").JSX.Element;
8
+ export declare function ChipChoiceSingle<T extends ContentRenderProps = ContentRenderProps>({ value: valueProp, defaultValue, options, onChange: onChangeProp, valueRender, size, label, searchable, contentRender, dropDownClassName, disableFuzzySearch, autoApply, onApprove, onCancel, onClearButtonClick, open: openProp, onOpenChange, widthStrategy, ...rest }: ChipChoiceSingleProps<T>): import("react/jsx-runtime").JSX.Element;
@@ -50,9 +50,10 @@ function ChipChoiceSingle(_a) {
50
50
  onCancel,
51
51
  onClearButtonClick,
52
52
  open: openProp,
53
- onOpenChange
53
+ onOpenChange,
54
+ widthStrategy = 'gte'
54
55
  } = _a,
55
- rest = __rest(_a, ["value", "defaultValue", "options", "onChange", "valueRender", "size", "label", "searchable", "contentRender", "dropDownClassName", "disableFuzzySearch", "autoApply", "onApprove", "onCancel", "onClearButtonClick", "open", "onOpenChange"]);
56
+ rest = __rest(_a, ["value", "defaultValue", "options", "onChange", "valueRender", "size", "label", "searchable", "contentRender", "dropDownClassName", "disableFuzzySearch", "autoApply", "onApprove", "onCancel", "onClearButtonClick", "open", "onOpenChange", "widthStrategy"]);
56
57
  const [value, setValue] = (0, utils_1.useValueControl)({
57
58
  value: valueProp,
58
59
  defaultValue,
@@ -143,7 +144,7 @@ function ChipChoiceSingle(_a) {
143
144
  placement: 'bottom-start',
144
145
  className: dropDownClassName,
145
146
  closeDroplistOnItemClick: autoApply,
146
- widthStrategy: 'gte',
147
+ widthStrategy: widthStrategy,
147
148
  open: open,
148
149
  onOpenChange: open => {
149
150
  if (!open) {
@@ -5,4 +5,4 @@ export type ChipChoiceMultipleValueFormatterProps<T extends ContentRenderProps =
5
5
  total: number;
6
6
  allLabel: string;
7
7
  };
8
- export declare function ChipChoiceMultiple<T extends ContentRenderProps = ContentRenderProps>({ value: valueProp, defaultValue, options, onChange: onChangeProp, valueRender, size, label, searchable, contentRender, dropDownClassName, onClearButtonClick, autoApply, disableFuzzySearch, onApprove, onCancel, open: openProp, onOpenChange, ...rest }: ChipChoiceMultipleProps<T>): import("react/jsx-runtime").JSX.Element;
8
+ export declare function ChipChoiceMultiple<T extends ContentRenderProps = ContentRenderProps>({ value: valueProp, defaultValue, options, onChange: onChangeProp, valueRender, size, label, searchable, contentRender, dropDownClassName, onClearButtonClick, autoApply, disableFuzzySearch, onApprove, onCancel, open: openProp, onOpenChange, widthStrategy, ...rest }: ChipChoiceMultipleProps<T>): import("react/jsx-runtime").JSX.Element;
@@ -32,7 +32,7 @@ const defaultMultiValueLabelFormatter = ({ value, total, allLabel }) => {
32
32
  return `${len.toString()}/${total}`;
33
33
  };
34
34
  export function ChipChoiceMultiple(_a) {
35
- var { value: valueProp, defaultValue, options, onChange: onChangeProp, valueRender, size = SIZE.S, label, searchable, contentRender, dropDownClassName, onClearButtonClick, autoApply = true, disableFuzzySearch = false, onApprove, onCancel, open: openProp, onOpenChange } = _a, rest = __rest(_a, ["value", "defaultValue", "options", "onChange", "valueRender", "size", "label", "searchable", "contentRender", "dropDownClassName", "onClearButtonClick", "autoApply", "disableFuzzySearch", "onApprove", "onCancel", "open", "onOpenChange"]);
35
+ var { value: valueProp, defaultValue, options, onChange: onChangeProp, valueRender, size = SIZE.S, label, searchable, contentRender, dropDownClassName, onClearButtonClick, autoApply = true, disableFuzzySearch = false, onApprove, onCancel, open: openProp, onOpenChange, widthStrategy = 'gte' } = _a, rest = __rest(_a, ["value", "defaultValue", "options", "onChange", "valueRender", "size", "label", "searchable", "contentRender", "dropDownClassName", "onClearButtonClick", "autoApply", "disableFuzzySearch", "onApprove", "onCancel", "open", "onOpenChange", "widthStrategy"]);
36
36
  const [value, setValue] = useValueControl({
37
37
  value: valueProp,
38
38
  defaultValue,
@@ -107,7 +107,7 @@ export function ChipChoiceMultiple(_a) {
107
107
  value: dropListSelection,
108
108
  onChange: handleSelectionChange,
109
109
  mode: 'multiple',
110
- }, trigger: 'clickAndFocusVisible', placement: 'bottom-start', widthStrategy: 'gte', listRef: listRef, size: DROPLIST_SIZE_MAP[size], "data-test-id": CHIP_CHOICE_TEST_IDS.droplist, open: open, onOpenChange: open => {
110
+ }, trigger: 'clickAndFocusVisible', placement: 'bottom-start', widthStrategy: widthStrategy, listRef: listRef, size: DROPLIST_SIZE_MAP[size], "data-test-id": CHIP_CHOICE_TEST_IDS.droplist, open: open, onOpenChange: open => {
111
111
  if (!open) {
112
112
  !autoApply && setDeferredValue(value);
113
113
  setSearchValue('');
@@ -5,4 +5,4 @@ export type ChipChoiceSingleValueFormatterProps = {
5
5
  allLabel?: string;
6
6
  };
7
7
  export declare function defaultSingleValueFormatter({ label, allLabel }: ChipChoiceSingleValueFormatterProps): ItemId | undefined;
8
- export declare function ChipChoiceSingle<T extends ContentRenderProps = ContentRenderProps>({ value: valueProp, defaultValue, options, onChange: onChangeProp, valueRender, size, label, searchable, contentRender, dropDownClassName, disableFuzzySearch, autoApply, onApprove, onCancel, onClearButtonClick, open: openProp, onOpenChange, ...rest }: ChipChoiceSingleProps<T>): import("react/jsx-runtime").JSX.Element;
8
+ export declare function ChipChoiceSingle<T extends ContentRenderProps = ContentRenderProps>({ value: valueProp, defaultValue, options, onChange: onChangeProp, valueRender, size, label, searchable, contentRender, dropDownClassName, disableFuzzySearch, autoApply, onApprove, onCancel, onClearButtonClick, open: openProp, onOpenChange, widthStrategy, ...rest }: ChipChoiceSingleProps<T>): import("react/jsx-runtime").JSX.Element;
@@ -25,7 +25,7 @@ export function defaultSingleValueFormatter({ label, allLabel }) {
25
25
  return label !== null && label !== void 0 ? label : allLabel;
26
26
  }
27
27
  export function ChipChoiceSingle(_a) {
28
- var { value: valueProp, defaultValue, options, onChange: onChangeProp, valueRender, size = SIZE.S, label, searchable, contentRender, dropDownClassName, disableFuzzySearch, autoApply = true, onApprove, onCancel, onClearButtonClick, open: openProp, onOpenChange } = _a, rest = __rest(_a, ["value", "defaultValue", "options", "onChange", "valueRender", "size", "label", "searchable", "contentRender", "dropDownClassName", "disableFuzzySearch", "autoApply", "onApprove", "onCancel", "onClearButtonClick", "open", "onOpenChange"]);
28
+ var { value: valueProp, defaultValue, options, onChange: onChangeProp, valueRender, size = SIZE.S, label, searchable, contentRender, dropDownClassName, disableFuzzySearch, autoApply = true, onApprove, onCancel, onClearButtonClick, open: openProp, onOpenChange, widthStrategy = 'gte' } = _a, rest = __rest(_a, ["value", "defaultValue", "options", "onChange", "valueRender", "size", "label", "searchable", "contentRender", "dropDownClassName", "disableFuzzySearch", "autoApply", "onApprove", "onCancel", "onClearButtonClick", "open", "onOpenChange", "widthStrategy"]);
29
29
  const [value, setValue] = useValueControl({
30
30
  value: valueProp,
31
31
  defaultValue,
@@ -95,7 +95,7 @@ export function ChipChoiceSingle(_a) {
95
95
  value: dropListSelection,
96
96
  onChange: handleSelectionChange,
97
97
  mode: 'single',
98
- }, "data-test-id": CHIP_CHOICE_TEST_IDS.droplist, size: DROPLIST_SIZE_MAP[size], trigger: 'click', placement: 'bottom-start', className: dropDownClassName, closeDroplistOnItemClick: autoApply, widthStrategy: 'gte', open: open, onOpenChange: open => {
98
+ }, "data-test-id": CHIP_CHOICE_TEST_IDS.droplist, size: DROPLIST_SIZE_MAP[size], trigger: 'click', placement: 'bottom-start', className: dropDownClassName, closeDroplistOnItemClick: autoApply, widthStrategy: widthStrategy, open: open, onOpenChange: open => {
99
99
  if (!open) {
100
100
  !autoApply && setDeferredValue(value);
101
101
  setSearchValue('');
package/package.json CHANGED
@@ -4,7 +4,7 @@
4
4
  "access": "public"
5
5
  },
6
6
  "title": "Chips",
7
- "version": "0.25.3",
7
+ "version": "0.25.4",
8
8
  "sideEffects": [
9
9
  "*.css",
10
10
  "*.woff",
@@ -56,5 +56,5 @@
56
56
  "peerDependencies": {
57
57
  "@snack-uikit/locale": "*"
58
58
  },
59
- "gitHead": "ad5274413320bf7880ba3c2d1124610281d0de81"
59
+ "gitHead": "b7485df8da9869f0fe2b2e22974a06d9a04e0835"
60
60
  }
@@ -51,6 +51,7 @@ export function ChipChoiceMultiple<T extends ContentRenderProps = ContentRenderP
51
51
  onCancel,
52
52
  open: openProp,
53
53
  onOpenChange,
54
+ widthStrategy = 'gte',
54
55
  ...rest
55
56
  }: ChipChoiceMultipleProps<T>) {
56
57
  const [value, setValue] = useValueControl<SelectionSingleValueType[]>({
@@ -164,7 +165,7 @@ export function ChipChoiceMultiple<T extends ContentRenderProps = ContentRenderP
164
165
  }}
165
166
  trigger='clickAndFocusVisible'
166
167
  placement='bottom-start'
167
- widthStrategy='gte'
168
+ widthStrategy={widthStrategy}
168
169
  listRef={listRef}
169
170
  size={DROPLIST_SIZE_MAP[size]}
170
171
  data-test-id={CHIP_CHOICE_TEST_IDS.droplist}
@@ -40,6 +40,7 @@ export function ChipChoiceSingle<T extends ContentRenderProps = ContentRenderPro
40
40
  onClearButtonClick,
41
41
  open: openProp,
42
42
  onOpenChange,
43
+ widthStrategy = 'gte',
43
44
  ...rest
44
45
  }: ChipChoiceSingleProps<T>) {
45
46
  const [value, setValue] = useValueControl<SelectionSingleValueType>({
@@ -152,7 +153,7 @@ export function ChipChoiceSingle<T extends ContentRenderProps = ContentRenderPro
152
153
  placement='bottom-start'
153
154
  className={dropDownClassName}
154
155
  closeDroplistOnItemClick={autoApply}
155
- widthStrategy='gte'
156
+ widthStrategy={widthStrategy}
156
157
  open={open}
157
158
  onOpenChange={open => {
158
159
  if (!open) {