@snack-uikit/fields 0.36.4 → 0.36.5-preview-c8fb5dcc.0

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 (68) hide show
  1. package/README.md +11 -0
  2. package/dist/cjs/components/FieldColor/FieldColor.d.ts +5 -0
  3. package/dist/cjs/components/FieldColor/FieldColor.js +5 -3
  4. package/dist/cjs/components/FieldDate/FieldDate.d.ts +3 -0
  5. package/dist/cjs/components/FieldDate/FieldDate.js +5 -3
  6. package/dist/cjs/components/FieldDecorator/FieldDecorator.d.ts +12 -1
  7. package/dist/cjs/components/FieldDecorator/FieldDecorator.js +5 -3
  8. package/dist/cjs/components/FieldSecure/FieldSecure.d.ts +3 -1
  9. package/dist/cjs/components/FieldSecure/FieldSecure.js +5 -3
  10. package/dist/cjs/components/FieldSelect/FieldSelectMultiple.d.ts +1 -0
  11. package/dist/cjs/components/FieldSelect/FieldSelectMultiple.js +4 -2
  12. package/dist/cjs/components/FieldSelect/FieldSelectSingle.d.ts +1 -0
  13. package/dist/cjs/components/FieldSelect/FieldSelectSingle.js +4 -2
  14. package/dist/cjs/components/FieldSelect/types.d.ts +3 -1
  15. package/dist/cjs/components/FieldSlider/FieldSlider.d.ts +3 -1
  16. package/dist/cjs/components/FieldSlider/FieldSlider.js +5 -3
  17. package/dist/cjs/components/FieldStepper/FieldStepper.d.ts +3 -1
  18. package/dist/cjs/components/FieldStepper/FieldStepper.js +5 -3
  19. package/dist/cjs/components/FieldText/FieldText.d.ts +3 -1
  20. package/dist/cjs/components/FieldText/FieldText.js +5 -3
  21. package/dist/cjs/components/FieldTextArea/FieldTextArea.d.ts +3 -1
  22. package/dist/cjs/components/FieldTextArea/FieldTextArea.js +5 -3
  23. package/dist/cjs/components/FieldTime/FieldTime.d.ts +3 -0
  24. package/dist/cjs/components/FieldTime/FieldTime.js +5 -3
  25. package/dist/cjs/helperComponents/ButtonFieldList/ButtonFieldList.d.ts +1 -1
  26. package/dist/cjs/helperComponents/ButtonFieldList/ButtonFieldList.js +4 -2
  27. package/dist/cjs/types/allFields.d.ts +1 -1
  28. package/dist/esm/components/FieldColor/FieldColor.d.ts +5 -0
  29. package/dist/esm/components/FieldColor/FieldColor.js +2 -2
  30. package/dist/esm/components/FieldDate/FieldDate.d.ts +3 -0
  31. package/dist/esm/components/FieldDate/FieldDate.js +3 -3
  32. package/dist/esm/components/FieldDecorator/FieldDecorator.d.ts +12 -1
  33. package/dist/esm/components/FieldDecorator/FieldDecorator.js +4 -3
  34. package/dist/esm/components/FieldSecure/FieldSecure.d.ts +3 -1
  35. package/dist/esm/components/FieldSecure/FieldSecure.js +2 -2
  36. package/dist/esm/components/FieldSelect/FieldSelectMultiple.d.ts +1 -0
  37. package/dist/esm/components/FieldSelect/FieldSelectMultiple.js +2 -2
  38. package/dist/esm/components/FieldSelect/FieldSelectSingle.d.ts +1 -0
  39. package/dist/esm/components/FieldSelect/FieldSelectSingle.js +2 -2
  40. package/dist/esm/components/FieldSelect/types.d.ts +3 -1
  41. package/dist/esm/components/FieldSlider/FieldSlider.d.ts +3 -1
  42. package/dist/esm/components/FieldSlider/FieldSlider.js +2 -2
  43. package/dist/esm/components/FieldStepper/FieldStepper.d.ts +3 -1
  44. package/dist/esm/components/FieldStepper/FieldStepper.js +2 -2
  45. package/dist/esm/components/FieldText/FieldText.d.ts +3 -1
  46. package/dist/esm/components/FieldText/FieldText.js +2 -2
  47. package/dist/esm/components/FieldTextArea/FieldTextArea.d.ts +3 -1
  48. package/dist/esm/components/FieldTextArea/FieldTextArea.js +2 -2
  49. package/dist/esm/components/FieldTime/FieldTime.d.ts +3 -0
  50. package/dist/esm/components/FieldTime/FieldTime.js +3 -3
  51. package/dist/esm/helperComponents/ButtonFieldList/ButtonFieldList.d.ts +1 -1
  52. package/dist/esm/helperComponents/ButtonFieldList/ButtonFieldList.js +2 -2
  53. package/dist/esm/types/allFields.d.ts +1 -1
  54. package/package.json +2 -2
  55. package/src/components/FieldColor/FieldColor.tsx +5 -1
  56. package/src/components/FieldDate/FieldDate.tsx +15 -1
  57. package/src/components/FieldDecorator/FieldDecorator.tsx +49 -44
  58. package/src/components/FieldSecure/FieldSecure.tsx +5 -1
  59. package/src/components/FieldSelect/FieldSelectMultiple.tsx +2 -0
  60. package/src/components/FieldSelect/FieldSelectSingle.tsx +2 -0
  61. package/src/components/FieldSelect/types.ts +4 -1
  62. package/src/components/FieldSlider/FieldSlider.tsx +5 -0
  63. package/src/components/FieldStepper/FieldStepper.tsx +5 -0
  64. package/src/components/FieldText/FieldText.tsx +5 -0
  65. package/src/components/FieldTextArea/FieldTextArea.tsx +5 -1
  66. package/src/components/FieldTime/FieldTime.tsx +15 -1
  67. package/src/helperComponents/ButtonFieldList/ButtonFieldList.tsx +2 -1
  68. package/src/types/allFields.ts +1 -1
package/README.md CHANGED
@@ -202,6 +202,7 @@ FieldStepper в основном предназначен для работы с
202
202
  | showClearButton | `boolean` | true | Отображение кнопки Очистки поля |
203
203
  | value | `string` | - | Значение input |
204
204
  | onChange | `(value: string) => void` | - | |
205
+ | decoratorRef | `ForwardedRef<HTMLDivElement>` | - | Ref для корневой обертки компонента |
205
206
  | withAlpha | `boolean` | - | Значение с альфаканалом |
206
207
  | autoApply | `boolean` | - | Применять изменения автоматически, если значение false - то изменения происходят по кнопке |
207
208
  | className | `string` | - | Класснейм |
@@ -237,6 +238,7 @@ FieldStepper в основном предназначен для работы с
237
238
  | showCopyButton | `boolean` | - | Отображение кнопки копирования |
238
239
  | onCopyButtonClick | `() => void` | - | Колбек клика по кнопке Копировать для поля |
239
240
  | showClearButton | `boolean` | true | Отображение кнопки Очистки поля |
241
+ | decoratorRef | `ForwardedRef<HTMLDivElement>` | - | Ref для корневой обертки компонента |
240
242
  | buildCellProps | `(date: Date, viewMode: ViewMode) => { isDisabled?: boolean; isHoliday?: boolean } ;` | - | Колбек установки свойств ячеек календаря. Вызывается на построение каждой ячейки. Принимает два параметра: <br> `Date` - дата ячейки <br> `ViewMode`: <br> - `month` отображение месяца, каждая ячейка - 1 день <br> - `year` отображение года, каждая ячейка - 1 месяц <br> - `decade` отображение декады, каждая ячейка - 1 год <br><br> Колбек должен возвращать объект с полями, отвечающими за отключение и подкраску ячейки. |
241
243
  | id | `string` | - | Значение html-атрибута id |
242
244
  | name | `string` | - | Значение html-атрибута name |
@@ -278,6 +280,8 @@ FieldStepper в основном предназначен для работы с
278
280
  | hint | `string` | - | Подсказка внизу |
279
281
  | validationState | enum ValidationState: `"error"`, `"default"`, `"warning"`, `"success"` | default | Состояние валидации |
280
282
  | showHintIcon | `boolean` | - | Отображать иконку подсказки |
283
+ | ref | `LegacyRef<HTMLDivElement>` | - | Allows getting a ref to the component instance. Once the component unmounts, React will set `ref.current` to `null` (or call the ref with `null` if you passed a callback ref). @see {@link https://react.dev/learn/referencing-values-with-refs#refs-and-the-dom React Docs} |
284
+ | key | `Key` | - | |
281
285
  ## FieldSecure
282
286
  ### Props
283
287
  | name | type | default value | description |
@@ -289,6 +293,7 @@ FieldStepper в основном предназначен для работы с
289
293
  | allowMoreThanMaxLength | `boolean` | - | Можно ли вводить больше разрешённого кол-ва символов |
290
294
  | prefixIcon | `ReactElement<any, string \| JSXElementConstructor<any>>` | - | Иконка-префикс для поля |
291
295
  | asyncValueGetter | `() => Promise<string>` | - | Свойство позволяет грузить данные в поле по требованию |
296
+ | decoratorRef | `ForwardedRef<HTMLDivElement>` | - | Ref для корневой обертки компонента |
292
297
  | onChange | `(value: string, e?: ChangeEvent<HTMLInputElement>) => void` | - | Колбек смены значения |
293
298
  | value | `string` | - | Значение input |
294
299
  | id | `string` | - | Значение html-атрибута id |
@@ -348,6 +353,7 @@ FieldStepper в основном предназначен для работы с
348
353
  | open | `boolean` | - | |
349
354
  | onOpenChange | `(open: boolean) => void` | - | |
350
355
  | onCopyButtonClick | `() => void` | - | Колбек клика по кнопке Копировать для поля |
356
+ | decoratorRef | `ForwardedRef<HTMLDivElement>` | - | Ref для корневой обертки компонента |
351
357
  | prefixIcon | `ReactElement<any, string \| JSXElementConstructor<any>>` | - | Иконка-префикс для поля |
352
358
  | widthStrategy | enum PopoverWidthStrategy: `"auto"`, `"gte"`, `"eq"` | - | |
353
359
  | pinTop | `OptionProps[]` | - | |
@@ -381,6 +387,7 @@ FieldStepper в основном предназначен для работы с
381
387
  | unbindInputFromMarks | `boolean` | - | Отвязать текстовое поле от значений на линейке |
382
388
  | prefix | `ReactNode` | - | Произвольный префикс для поля |
383
389
  | postfix | `ReactNode` | - | Произвольный постфикс для поля |
390
+ | decoratorRef | `ForwardedRef<HTMLDivElement>` | - | Ref для корневой обертки компонента |
384
391
  | id | `string` | - | Значение html-атрибута id |
385
392
  | name | `string` | - | Значение html-атрибута name |
386
393
  | disabled | `boolean` | - | Является ли поле деактивированным |
@@ -416,6 +423,7 @@ FieldStepper в основном предназначен для работы с
416
423
  | allowMoreThanLimits | `boolean` | true | Можно ли вводить c клавиатуры числа, выходящие за пределы min/max |
417
424
  | prefix | `ReactNode` | - | Произвольный префикс для поля |
418
425
  | postfix | `ReactNode` | - | Произвольный постфикс для поля |
426
+ | decoratorRef | `ForwardedRef<HTMLDivElement>` | - | Ref для корневой обертки компонента |
419
427
  | id | `string` | - | Значение html-атрибута id |
420
428
  | name | `string` | - | Значение html-атрибута name |
421
429
  | disabled | `boolean` | - | Является ли поле деактивированным |
@@ -449,6 +457,7 @@ FieldStepper в основном предназначен для работы с
449
457
  | prefix | `ReactNode` | - | Произвольный префикс для поля |
450
458
  | postfix | `ReactNode` | - | Произвольный постфикс для поля |
451
459
  | button | `Button` | - | Кнопка действия внутри поля |
460
+ | decoratorRef | `ForwardedRef<HTMLDivElement>` | - | Ref для корневой обертки компонента |
452
461
  | onChange | `(value: string, e?: ChangeEvent<HTMLInputElement>) => void` | - | Колбек смены значения |
453
462
  | value | `string` | - | Значение input |
454
463
  | id | `string` | - | Значение html-атрибута id |
@@ -487,6 +496,7 @@ FieldStepper в основном предназначен для работы с
487
496
  | onCopyButtonClick | `() => void` | - | Колбек клика по кнопке Копировать для поля |
488
497
  | showClearButton | `boolean` | true | Отображение кнопки очистки поля |
489
498
  | allowMoreThanMaxLength | `boolean` | true | Можно ли вводить больше разрешённого кол-ва символов |
499
+ | decoratorRef | `ForwardedRef<HTMLDivElement>` | - | Ref для корневой обертки компонента |
490
500
  | value | `string` | - | HTML-аттрибут value |
491
501
  | id | `string` | - | HTML-аттрибут id |
492
502
  | name | `string` | - | HTML-аттрибут name |
@@ -521,6 +531,7 @@ FieldStepper в основном предназначен для работы с
521
531
  | onCopyButtonClick | `() => void` | - | Колбек клика по кнопке Копировать для поля |
522
532
  | showSeconds | `boolean` | true | Показывать ли секунды |
523
533
  | showClearButton | `boolean` | true | Отображение кнопки Очистки поля |
534
+ | decoratorRef | `ForwardedRef<HTMLDivElement>` | - | Ref для корневой обертки компонента |
524
535
  | id | `string` | - | Значение html-атрибута id |
525
536
  | name | `string` | - | Значение html-атрибута name |
526
537
  | disabled | `boolean` | - | Является ли поле деактивированным |
@@ -1,3 +1,4 @@
1
+ import { ForwardedRef } from 'react';
1
2
  import { ColorPickerProps } from '@snack-uikit/color-picker';
2
3
  import { InputPrivateProps } from '@snack-uikit/input-private';
3
4
  import { WithSupportProps } from '@snack-uikit/utils';
@@ -20,6 +21,8 @@ type FieldDateOwnProps = {
20
21
  showClearButton?: boolean;
21
22
  value?: string;
22
23
  onChange?(value: string): void;
24
+ /** Ref для корневой обертки компонента */
25
+ decoratorRef?: ForwardedRef<HTMLDivElement>;
23
26
  } & Omit<ColorPickerProps, 'onChange' | 'value'>;
24
27
  export type FieldColorProps = WithSupportProps<FieldDateOwnProps & InputProps & WrapperProps>;
25
28
  export declare const FieldColor: import("react").ForwardRefExoticComponent<{
@@ -40,5 +43,7 @@ export declare const FieldColor: import("react").ForwardRefExoticComponent<{
40
43
  showClearButton?: boolean;
41
44
  value?: string;
42
45
  onChange?(value: string): void;
46
+ /** Ref для корневой обертки компонента */
47
+ decoratorRef?: ForwardedRef<HTMLDivElement>;
43
48
  } & Omit<ColorPickerProps, "value" | "onChange"> & InputProps & WrapperProps & import("react").RefAttributes<HTMLInputElement>>;
44
49
  export {};
@@ -59,9 +59,10 @@ exports.FieldColor = (0, react_1.forwardRef)((_a, ref) => {
59
59
  placeholder,
60
60
  onFocus,
61
61
  onBlur,
62
- onCopyButtonClick
62
+ onCopyButtonClick,
63
+ decoratorRef
63
64
  } = _a,
64
- rest = __rest(_a, ["id", "name", "value", "disabled", "readonly", "showCopyButton", "showClearButton", "open", "onChange", "onOpenChange", "className", "label", "labelTooltip", "labelTooltipPlacement", "required", "caption", "hint", "showHintIcon", "size", "validationState", "error", "withAlpha", "autoApply", "placeholder", "onFocus", "onBlur", "onCopyButtonClick"]);
65
+ rest = __rest(_a, ["id", "name", "value", "disabled", "readonly", "showCopyButton", "showClearButton", "open", "onChange", "onOpenChange", "className", "label", "labelTooltip", "labelTooltipPlacement", "required", "caption", "hint", "showHintIcon", "size", "validationState", "error", "withAlpha", "autoApply", "placeholder", "onFocus", "onBlur", "onCopyButtonClick", "decoratorRef"]);
65
66
  const [isOpen, setIsOpen] = (0, uncontrollable_1.useUncontrolledProp)(open, false, onOpenChange);
66
67
  const localRef = (0, react_1.useRef)(null);
67
68
  const showDropList = isOpen && !readonly && !disabled;
@@ -128,7 +129,8 @@ exports.FieldColor = (0, react_1.forwardRef)((_a, ref) => {
128
129
  showHintIcon: showHintIcon,
129
130
  size: size,
130
131
  error: error,
131
- validationState: fieldValidationState
132
+ validationState: fieldValidationState,
133
+ ref: decoratorRef
132
134
  }, (0, utils_1.extractSupportProps)(rest), {
133
135
  children: (0, jsx_runtime_1.jsx)(dropdown_1.Dropdown, Object.assign({
134
136
  trigger: 'click',
@@ -1,3 +1,4 @@
1
+ import { ForwardedRef } from 'react';
1
2
  import { CalendarProps } from '@snack-uikit/calendar';
2
3
  import { InputPrivateProps } from '@snack-uikit/input-private';
3
4
  import { WithSupportProps } from '@snack-uikit/utils';
@@ -29,6 +30,8 @@ type FieldDateOwnProps = {
29
30
  */
30
31
  showClearButton?: boolean;
31
32
  mode: Mode;
33
+ /** Ref для корневой обертки компонента */
34
+ decoratorRef?: ForwardedRef<HTMLDivElement>;
32
35
  } & Pick<CalendarProps, 'buildCellProps'> & ({
33
36
  mode: typeof MODES.Date;
34
37
  } | FieldDateWithSeconds);
@@ -60,9 +60,10 @@ exports.FieldDate = (0, react_1.forwardRef)((_a, ref) => {
60
60
  buildCellProps,
61
61
  error,
62
62
  mode,
63
- onCopyButtonClick
63
+ onCopyButtonClick,
64
+ decoratorRef
64
65
  } = _a,
65
- rest = __rest(_a, ["id", "name", "value", "disabled", "readonly", "showCopyButton", "showClearButton", "open", "onOpenChange", "onChange", "onFocus", "onBlur", "className", "label", "labelTooltip", "labelTooltipPlacement", "required", "caption", "hint", "showHintIcon", "size", "validationState", "buildCellProps", "error", "mode", "onCopyButtonClick"]);
66
+ rest = __rest(_a, ["id", "name", "value", "disabled", "readonly", "showCopyButton", "showClearButton", "open", "onOpenChange", "onChange", "onFocus", "onBlur", "className", "label", "labelTooltip", "labelTooltipPlacement", "required", "caption", "hint", "showHintIcon", "size", "validationState", "buildCellProps", "error", "mode", "onCopyButtonClick", "decoratorRef"]);
66
67
  const [isOpen, setIsOpen] = (0, uncontrollable_1.useUncontrolledProp)(open, false, onOpenChange);
67
68
  const localRef = (0, react_1.useRef)(null);
68
69
  const clearButtonRef = (0, react_1.useRef)(null);
@@ -232,7 +233,8 @@ exports.FieldDate = (0, react_1.forwardRef)((_a, ref) => {
232
233
  showHintIcon: showHintIcon,
233
234
  size: size,
234
235
  error: error,
235
- validationState: fieldValidationState
236
+ validationState: fieldValidationState,
237
+ ref: decoratorRef
236
238
  }, (0, utils_1.extractSupportProps)(rest), {
237
239
  children: (0, jsx_runtime_1.jsx)(dropdown_1.Dropdown, Object.assign({
238
240
  trigger: 'click',
@@ -12,4 +12,15 @@ export type FieldDecoratorProps = WithSupportProps<{
12
12
  readonly?: boolean;
13
13
  error?: string;
14
14
  } & HeaderProps & FooterProps>;
15
- export declare function FieldDecorator({ children, className, label, labelTooltip, required, labelFor, caption, length, hint, disabled, readonly, showHintIcon, labelTooltipPlacement, size, error, validationState, ...rest }: FieldDecoratorProps): import("react/jsx-runtime").JSX.Element;
15
+ export declare const FieldDecorator: import("react").ForwardRefExoticComponent<{
16
+ 'data-test-id'?: string;
17
+ } & import("react").AriaAttributes & {
18
+ className?: string;
19
+ /** Контент */
20
+ children: ReactNode;
21
+ /** Деактивирован ли элемент */
22
+ disabled?: boolean;
23
+ /** Является ли поле доступным только на чтение */
24
+ readonly?: boolean;
25
+ error?: string;
26
+ } & HeaderProps & FooterProps & import("react").RefAttributes<HTMLDivElement>>;
@@ -16,9 +16,10 @@ var __importDefault = void 0 && (void 0).__importDefault || function (mod) {
16
16
  Object.defineProperty(exports, "__esModule", {
17
17
  value: true
18
18
  });
19
- exports.FieldDecorator = FieldDecorator;
19
+ exports.FieldDecorator = void 0;
20
20
  const jsx_runtime_1 = require("react/jsx-runtime");
21
21
  const classnames_1 = __importDefault(require("classnames"));
22
+ const react_1 = require("react");
22
23
  const input_private_1 = require("@snack-uikit/input-private");
23
24
  const utils_1 = require("@snack-uikit/utils");
24
25
  const constants_1 = require("../../constants");
@@ -26,7 +27,7 @@ const getValidationState_1 = require("../../utils/getValidationState");
26
27
  const Footer_1 = require("./Footer");
27
28
  const Header_1 = require("./Header");
28
29
  const styles_module_scss_1 = __importDefault(require('./styles.module.css'));
29
- function FieldDecorator(_a) {
30
+ exports.FieldDecorator = (0, react_1.forwardRef)((_a, ref) => {
30
31
  var {
31
32
  children,
32
33
  className,
@@ -55,6 +56,7 @@ function FieldDecorator(_a) {
55
56
  className: (0, classnames_1.default)(styles_module_scss_1.default.decorator, className)
56
57
  }, (0, utils_1.extractSupportProps)(rest), {
57
58
  "data-size": size,
59
+ ref: ref,
58
60
  children: [label && (0, jsx_runtime_1.jsx)(Header_1.Header, {
59
61
  labelTooltipPlacement: labelTooltipPlacement,
60
62
  required: required,
@@ -71,4 +73,4 @@ function FieldDecorator(_a) {
71
73
  validationState: isFieldActive ? fieldValidationState : constants_1.VALIDATION_STATE.Default
72
74
  })]
73
75
  }));
74
- }
76
+ });
@@ -1,4 +1,4 @@
1
- import { ReactElement } from 'react';
1
+ import { ForwardedRef, ReactElement } from 'react';
2
2
  import { InputPrivateProps } from '@snack-uikit/input-private';
3
3
  import { WithSupportProps } from '@snack-uikit/utils';
4
4
  import { FieldDecoratorProps } from '../FieldDecorator';
@@ -19,6 +19,8 @@ type FieldSecureOwnProps = {
19
19
  prefixIcon?: ReactElement;
20
20
  /** Свойство позволяет грузить данные в поле по требованию */
21
21
  asyncValueGetter?(): Promise<string>;
22
+ /** Ref для корневой обертки компонента */
23
+ decoratorRef?: ForwardedRef<HTMLDivElement>;
22
24
  };
23
25
  export type FieldSecureProps = WithSupportProps<FieldSecureOwnProps & InputProps & WrapperProps>;
24
26
  export declare const FieldSecure: import("react").ForwardRefExoticComponent<{
@@ -85,9 +85,10 @@ exports.FieldSecure = (0, react_1.forwardRef)((_a, ref) => {
85
85
  error,
86
86
  asyncValueGetter,
87
87
  autoComplete,
88
- onCopyButtonClick
88
+ onCopyButtonClick,
89
+ decoratorRef
89
90
  } = _a,
90
- rest = __rest(_a, ["id", "name", "value", "placeholder", "maxLength", "disabled", "readonly", "showCopyButton", "allowMoreThanMaxLength", "hidden", "onHiddenChange", "showHintIcon", "onChange", "onFocus", "onBlur", "className", "label", "labelTooltip", "labelTooltipPlacement", "required", "caption", "hint", "size", "validationState", "prefixIcon", "error", "asyncValueGetter", "autoComplete", "onCopyButtonClick"]);
91
+ rest = __rest(_a, ["id", "name", "value", "placeholder", "maxLength", "disabled", "readonly", "showCopyButton", "allowMoreThanMaxLength", "hidden", "onHiddenChange", "showHintIcon", "onChange", "onFocus", "onBlur", "className", "label", "labelTooltip", "labelTooltipPlacement", "required", "caption", "hint", "size", "validationState", "prefixIcon", "error", "asyncValueGetter", "autoComplete", "onCopyButtonClick", "decoratorRef"]);
91
92
  const localRef = (0, react_1.useRef)(null);
92
93
  const copyButtonRef = (0, react_1.useRef)(null);
93
94
  const hideButtonRef = (0, react_1.useRef)(null);
@@ -194,7 +195,8 @@ exports.FieldSecure = (0, react_1.forwardRef)((_a, ref) => {
194
195
  showHintIcon: showHintIcon,
195
196
  size: size,
196
197
  error: error,
197
- validationState: fieldValidationState
198
+ validationState: fieldValidationState,
199
+ ref: decoratorRef
198
200
  }, (0, utils_1.extractSupportProps)(rest), {
199
201
  children: (0, jsx_runtime_1.jsx)(helperComponents_1.FieldContainerPrivate, {
200
202
  size: size,
@@ -28,4 +28,5 @@ export declare const FieldSelectMultiple: import("react").ForwardRefExoticCompon
28
28
  resetSearchOnOptionSelection?: boolean;
29
29
  onOpenChange?(open: boolean): void;
30
30
  selectedOptionFormatter?: SelectedOptionFormatter;
31
+ decoratorRef?: import("react").ForwardedRef<HTMLDivElement>;
31
32
  } & Pick<import("@snack-uikit/list").DroplistProps, "scrollToSelectedItem" | "untouchableScrollbars" | "dataFiltered" | "dataError" | "noDataState" | "noResultsState" | "errorDataState">, "showCopyButton" | "onCopyButtonClick"> & import("react").RefAttributes<HTMLInputElement>>;
@@ -67,9 +67,10 @@ exports.FieldSelectMultiple = (0, react_1.forwardRef)((props, ref) => {
67
67
  enableFuzzySearch = true,
68
68
  resetSearchOnOptionSelection = true,
69
69
  onOpenChange,
70
- selectedOptionFormatter = defaultSelectedOptionFormatter
70
+ selectedOptionFormatter = defaultSelectedOptionFormatter,
71
+ decoratorRef
71
72
  } = props,
72
- rest = __rest(props, ["id", "name", "placeholder", "size", "options", "value", "defaultValue", "onChange", "disabled", "readonly", "searchable", "showClearButton", "onKeyDown", "validationState", "search", "autocomplete", "prefixIcon", "prefix", "postfix", "removeByBackspace", "addOptionByEnter", "untouchableScrollbars", "open", "enableFuzzySearch", "resetSearchOnOptionSelection", "onOpenChange", "selectedOptionFormatter"]);
73
+ rest = __rest(props, ["id", "name", "placeholder", "size", "options", "value", "defaultValue", "onChange", "disabled", "readonly", "searchable", "showClearButton", "onKeyDown", "validationState", "search", "autocomplete", "prefixIcon", "prefix", "postfix", "removeByBackspace", "addOptionByEnter", "untouchableScrollbars", "open", "enableFuzzySearch", "resetSearchOnOptionSelection", "onOpenChange", "selectedOptionFormatter", "decoratorRef"]);
73
74
  const localRef = (0, react_1.useRef)(null);
74
75
  const inputPlugRef = (0, react_1.useRef)(null);
75
76
  const contentRef = (0, react_1.useRef)(null);
@@ -210,6 +211,7 @@ exports.FieldSelectMultiple = (0, react_1.forwardRef)((props, ref) => {
210
211
  });
211
212
  return (0, jsx_runtime_1.jsx)(FieldDecorator_1.FieldDecorator, Object.assign({}, (0, utils_1.extractSupportProps)(rest), (0, utils_2.extractFieldDecoratorProps)(props), {
212
213
  validationState: fieldValidationState,
214
+ ref: decoratorRef,
213
215
  children: (0, jsx_runtime_1.jsx)(list_1.Droplist, Object.assign({}, (0, utils_3.extractListProps)(props), {
214
216
  items: result,
215
217
  triggerElemRef: localRef,
@@ -26,4 +26,5 @@ export declare const FieldSelectSingle: import("react").ForwardRefExoticComponen
26
26
  resetSearchOnOptionSelection?: boolean;
27
27
  onOpenChange?(open: boolean): void;
28
28
  selectedOptionFormatter?: SelectedOptionFormatter;
29
+ decoratorRef?: import("react").ForwardedRef<HTMLDivElement>;
29
30
  } & Pick<import("@snack-uikit/list").DroplistProps, "scrollToSelectedItem" | "untouchableScrollbars" | "dataFiltered" | "dataError" | "noDataState" | "noResultsState" | "errorDataState">, "resetSearchOnOptionSelection"> & import("react").RefAttributes<HTMLInputElement>>;
@@ -65,9 +65,10 @@ exports.FieldSelectSingle = (0, react_1.forwardRef)((props, ref) => {
65
65
  onOpenChange,
66
66
  selectedOptionFormatter = defaultSelectedOptionFormatter,
67
67
  enableFuzzySearch = true,
68
- onCopyButtonClick
68
+ onCopyButtonClick,
69
+ decoratorRef
69
70
  } = props,
70
- rest = __rest(props, ["id", "name", "placeholder", "size", "options", "value", "defaultValue", "onChange", "disabled", "readonly", "searchable", "showCopyButton", "showClearButton", "onKeyDown", "required", "validationState", "search", "autocomplete", "prefixIcon", "prefix", "postfix", "addOptionByEnter", "untouchableScrollbars", "open", "onOpenChange", "selectedOptionFormatter", "enableFuzzySearch", "onCopyButtonClick"]);
71
+ rest = __rest(props, ["id", "name", "placeholder", "size", "options", "value", "defaultValue", "onChange", "disabled", "readonly", "searchable", "showCopyButton", "showClearButton", "onKeyDown", "required", "validationState", "search", "autocomplete", "prefixIcon", "prefix", "postfix", "addOptionByEnter", "untouchableScrollbars", "open", "onOpenChange", "selectedOptionFormatter", "enableFuzzySearch", "onCopyButtonClick", "decoratorRef"]);
71
72
  const localRef = (0, react_1.useRef)(null);
72
73
  const [open = false, setOpen] = (0, hooks_1.useValueControl)({
73
74
  value: openProp,
@@ -211,6 +212,7 @@ exports.FieldSelectSingle = (0, react_1.forwardRef)((props, ref) => {
211
212
  });
212
213
  return (0, jsx_runtime_1.jsx)(FieldDecorator_1.FieldDecorator, Object.assign({}, (0, utils_1.extractSupportProps)(rest), (0, utils_2.extractFieldDecoratorProps)(props), {
213
214
  validationState: fieldValidationState,
215
+ ref: decoratorRef,
214
216
  children: (0, jsx_runtime_1.jsx)(list_1.Droplist, Object.assign({}, (0, utils_3.extractListProps)(props), {
215
217
  items: result,
216
218
  selection: {
@@ -1,4 +1,4 @@
1
- import { ReactElement, ReactNode } from 'react';
1
+ import { ForwardedRef, ReactElement, ReactNode } from 'react';
2
2
  import { InputPrivateProps } from '@snack-uikit/input-private';
3
3
  import { AccordionItemProps, BaseItemProps, DroplistProps, GroupItemProps, ItemContentProps, NextListItemProps, SelectionMultipleState, SelectionSingleState } from '@snack-uikit/list';
4
4
  import { TagProps } from '@snack-uikit/tag';
@@ -72,6 +72,8 @@ type FiledSelectCommonProps = WithSupportProps<{
72
72
  resetSearchOnOptionSelection?: boolean;
73
73
  onOpenChange?(open: boolean): void;
74
74
  selectedOptionFormatter?: SelectedOptionFormatter;
75
+ /** Ref для корневой обертки компонента */
76
+ decoratorRef?: ForwardedRef<HTMLDivElement>;
75
77
  }> & Pick<DroplistProps, 'dataError' | 'noDataState' | 'noResultsState' | 'errorDataState' | 'dataFiltered' | 'untouchableScrollbars' | 'scrollToSelectedItem'>;
76
78
  export type FieldSelectSingleProps = FieldSelectPrivateProps & Omit<SelectionSingleState, 'mode'> & WrapperProps & Omit<FiledSelectCommonProps, 'resetSearchOnOptionSelection'>;
77
79
  export type FieldSelectMultipleProps = FieldSelectPrivateProps & {
@@ -1,4 +1,4 @@
1
- import { ReactElement, ReactNode } from 'react';
1
+ import { ForwardedRef, ReactElement, ReactNode } from 'react';
2
2
  import { InputPrivateProps } from '@snack-uikit/input-private';
3
3
  import { SliderProps as SliderComponentProps } from '@snack-uikit/slider';
4
4
  import { WithSupportProps } from '@snack-uikit/utils';
@@ -19,6 +19,8 @@ type FieldSliderOwnProps = {
19
19
  prefix?: ReactNode;
20
20
  /** Произвольный постфикс для поля */
21
21
  postfix?: ReactNode;
22
+ /** Ref для корневой обертки компонента */
23
+ decoratorRef?: ForwardedRef<HTMLDivElement>;
22
24
  };
23
25
  export type FieldSliderProps = WithSupportProps<FieldSliderOwnProps & SliderProps & WrapperProps>;
24
26
  export declare const FieldSlider: import("react").ForwardRefExoticComponent<{
@@ -67,9 +67,10 @@ exports.FieldSlider = (0, react_1.forwardRef)((_a, ref) => {
67
67
  unbindInputFromMarks,
68
68
  postfixIcon,
69
69
  prefix,
70
- postfix
70
+ postfix,
71
+ decoratorRef
71
72
  } = _a,
72
- rest = __rest(_a, ["id", "name", "min", "max", "step", "marks", "showScaleBar", "value", "range", "disabled", "readonly", "onChange", "onFocus", "onBlur", "className", "label", "labelTooltip", "labelTooltipPlacement", "required", "caption", "hint", "showHintIcon", "size", "textInputFormatter", "unbindInputFromMarks", "postfixIcon", "prefix", "postfix"]);
73
+ rest = __rest(_a, ["id", "name", "min", "max", "step", "marks", "showScaleBar", "value", "range", "disabled", "readonly", "onChange", "onFocus", "onBlur", "className", "label", "labelTooltip", "labelTooltipPlacement", "required", "caption", "hint", "showHintIcon", "size", "textInputFormatter", "unbindInputFromMarks", "postfixIcon", "prefix", "postfix", "decoratorRef"]);
73
74
  const [value = getDefaultValue(range, min, max, valueProp), onChange] = (0, hooks_1.useValueControl)({
74
75
  value: valueProp,
75
76
  defaultValue: getDefaultValue(range, min, max, valueProp),
@@ -209,7 +210,8 @@ exports.FieldSlider = (0, react_1.forwardRef)((_a, ref) => {
209
210
  hint: hint,
210
211
  showHintIcon: showHintIcon,
211
212
  readonly: readonly,
212
- size: size
213
+ size: size,
214
+ ref: decoratorRef
213
215
  }, (0, utils_1.extractSupportProps)(rest), {
214
216
  children: [(0, jsx_runtime_1.jsx)(helperComponents_1.FieldContainerPrivate, {
215
217
  className: styles_module_scss_1.default.fieldContainer,
@@ -1,4 +1,4 @@
1
- import { ChangeEvent, ReactNode } from 'react';
1
+ import { ChangeEvent, ForwardedRef, ReactNode } from 'react';
2
2
  import { InputPrivateProps } from '@snack-uikit/input-private';
3
3
  import { WithSupportProps } from '@snack-uikit/utils';
4
4
  import { FieldDecoratorProps } from '../FieldDecorator';
@@ -17,6 +17,8 @@ type FieldStepperOwnProps = {
17
17
  prefix?: ReactNode;
18
18
  /** Произвольный постфикс для поля */
19
19
  postfix?: ReactNode;
20
+ /** Ref для корневой обертки компонента */
21
+ decoratorRef?: ForwardedRef<HTMLDivElement>;
20
22
  };
21
23
  export type FieldStepperProps = WithSupportProps<FieldStepperOwnProps & InputProps & WrapperProps>;
22
24
  export declare const FieldStepper: import("react").ForwardRefExoticComponent<{
@@ -74,9 +74,10 @@ exports.FieldStepper = (0, react_1.forwardRef)((_a, ref) => {
74
74
  validationState = constants_1.VALIDATION_STATE.Default,
75
75
  error,
76
76
  prefix,
77
- postfix
77
+ postfix,
78
+ decoratorRef
78
79
  } = _a,
79
- rest = __rest(_a, ["id", "name", "value", "min", "max", "step", "disabled", "readonly", "allowMoreThanLimits", "onChange", "onFocus", "onBlur", "className", "label", "labelTooltip", "labelTooltipPlacement", "required", "caption", "hint", "showHintIcon", "size", "validationState", "error", "prefix", "postfix"]);
80
+ rest = __rest(_a, ["id", "name", "value", "min", "max", "step", "disabled", "readonly", "allowMoreThanLimits", "onChange", "onFocus", "onBlur", "className", "label", "labelTooltip", "labelTooltipPlacement", "required", "caption", "hint", "showHintIcon", "size", "validationState", "error", "prefix", "postfix", "decoratorRef"]);
80
81
  const {
81
82
  t
82
83
  } = (0, locale_1.useLocale)('Fields');
@@ -173,7 +174,8 @@ exports.FieldStepper = (0, react_1.forwardRef)((_a, ref) => {
173
174
  showHintIcon: showHintIcon,
174
175
  size: size,
175
176
  validationState: fieldValidationState,
176
- error: error
177
+ error: error,
178
+ ref: decoratorRef
177
179
  }, (0, utils_1.extractSupportProps)(rest), {
178
180
  children: (0, jsx_runtime_1.jsx)(tooltip_1.Tooltip, {
179
181
  tip: tooltip,
@@ -1,4 +1,4 @@
1
- import { ReactElement, ReactNode } from 'react';
1
+ import { ForwardedRef, ReactElement, ReactNode } from 'react';
2
2
  import { InputPrivateProps } from '@snack-uikit/input-private';
3
3
  import { WithSupportProps } from '@snack-uikit/utils';
4
4
  import { Button } from '../../types';
@@ -25,6 +25,8 @@ type FieldTextOwnProps = {
25
25
  postfix?: ReactNode;
26
26
  /** Кнопка действия внутри поля */
27
27
  button?: Button;
28
+ /** Ref для корневой обертки компонента */
29
+ decoratorRef?: ForwardedRef<HTMLDivElement>;
28
30
  };
29
31
  export type FieldTextProps = WithSupportProps<FieldTextOwnProps & InputProps & WrapperProps>;
30
32
  export declare const FieldText: import("react").ForwardRefExoticComponent<{
@@ -61,9 +61,10 @@ exports.FieldText = (0, react_1.forwardRef)((_a, ref) => {
61
61
  postfix,
62
62
  button: buttonProp,
63
63
  onPaste,
64
- onKeyDown
64
+ onKeyDown,
65
+ decoratorRef
65
66
  } = _a,
66
- rest = __rest(_a, ["id", "name", "value", "placeholder", "maxLength", "disabled", "readonly", "showCopyButton", "showClearButton", "allowMoreThanMaxLength", "onChange", "onFocus", "onBlur", "onCopyButtonClick", "className", "label", "labelTooltip", "labelTooltipPlacement", "required", "caption", "hint", "showHintIcon", "size", "validationState", "error", "autoComplete", "prefixIcon", "prefix", "postfix", "button", "onPaste", "onKeyDown"]);
67
+ rest = __rest(_a, ["id", "name", "value", "placeholder", "maxLength", "disabled", "readonly", "showCopyButton", "showClearButton", "allowMoreThanMaxLength", "onChange", "onFocus", "onBlur", "onCopyButtonClick", "className", "label", "labelTooltip", "labelTooltipPlacement", "required", "caption", "hint", "showHintIcon", "size", "validationState", "error", "autoComplete", "prefixIcon", "prefix", "postfix", "button", "onPaste", "onKeyDown", "decoratorRef"]);
67
68
  const [value = '', onChange] = (0, hooks_1.useValueControl)({
68
69
  value: valueProp,
69
70
  defaultValue: '',
@@ -178,7 +179,8 @@ exports.FieldText = (0, react_1.forwardRef)((_a, ref) => {
178
179
  showHintIcon: showHintIcon,
179
180
  size: size,
180
181
  validationState: fieldValidationState,
181
- error: error
182
+ error: error,
183
+ ref: decoratorRef
182
184
  }, (0, utils_1.extractSupportProps)(rest), {
183
185
  children: (0, jsx_runtime_1.jsx)(helperComponents_1.FieldContainerPrivate, {
184
186
  size: size,
@@ -1,4 +1,4 @@
1
- import { ChangeEvent } from 'react';
1
+ import { ChangeEvent, ForwardedRef } from 'react';
2
2
  import { WithSupportProps } from '@snack-uikit/utils';
3
3
  import { TextAreaProps } from '../../helperComponents';
4
4
  import { FieldDecoratorProps } from '../FieldDecorator';
@@ -24,6 +24,8 @@ type FieldTextAreaOwnProps = {
24
24
  showClearButton?: boolean;
25
25
  /** Можно ли вводить больше разрешённого кол-ва символов */
26
26
  allowMoreThanMaxLength?: boolean;
27
+ /** Ref для корневой обертки компонента */
28
+ decoratorRef?: ForwardedRef<HTMLDivElement>;
27
29
  };
28
30
  export type FieldTextAreaProps = WithSupportProps<FieldTextAreaOwnProps & InputProps & WrapperProps>;
29
31
  export declare const FieldTextArea: import("react").ForwardRefExoticComponent<{
@@ -58,9 +58,10 @@ exports.FieldTextArea = (0, react_1.forwardRef)((_a, ref) => {
58
58
  error,
59
59
  size = input_private_1.SIZE.S,
60
60
  validationState = constants_1.VALIDATION_STATE.Default,
61
- onCopyButtonClick
61
+ onCopyButtonClick,
62
+ decoratorRef
62
63
  } = _a,
63
- rest = __rest(_a, ["id", "name", "value", "placeholder", "maxLength", "minRows", "maxRows", "disabled", "resizable", "readonly", "showCopyButton", "showClearButton", "allowMoreThanMaxLength", "showHintIcon", "onChange", "onFocus", "onBlur", "className", "label", "labelTooltip", "labelTooltipPlacement", "required", "caption", "hint", "error", "size", "validationState", "onCopyButtonClick"]);
64
+ rest = __rest(_a, ["id", "name", "value", "placeholder", "maxLength", "minRows", "maxRows", "disabled", "resizable", "readonly", "showCopyButton", "showClearButton", "allowMoreThanMaxLength", "showHintIcon", "onChange", "onFocus", "onBlur", "className", "label", "labelTooltip", "labelTooltipPlacement", "required", "caption", "hint", "error", "size", "validationState", "onCopyButtonClick", "decoratorRef"]);
64
65
  const localRef = (0, react_1.useRef)(null);
65
66
  const clearButtonRef = (0, react_1.useRef)(null);
66
67
  const copyButtonRef = (0, react_1.useRef)(null);
@@ -124,7 +125,8 @@ exports.FieldTextArea = (0, react_1.forwardRef)((_a, ref) => {
124
125
  showHintIcon: showHintIcon,
125
126
  size: size,
126
127
  error: error,
127
- validationState: fieldValidationState
128
+ validationState: fieldValidationState,
129
+ ref: decoratorRef
128
130
  }, (0, utils_1.extractSupportProps)(rest), {
129
131
  children: (0, jsx_runtime_1.jsx)(helperComponents_1.FieldContainerPrivate, {
130
132
  className: styles_module_scss_1.default.container,
@@ -1,3 +1,4 @@
1
+ import { ForwardedRef } from 'react';
1
2
  import { TimePickerProps } from '@snack-uikit/calendar';
2
3
  import { InputPrivateProps } from '@snack-uikit/input-private';
3
4
  import { WithSupportProps } from '@snack-uikit/utils';
@@ -24,6 +25,8 @@ type FieldTimeOwnProps = {
24
25
  * @default true
25
26
  */
26
27
  showClearButton?: boolean;
28
+ /** Ref для корневой обертки компонента */
29
+ decoratorRef?: ForwardedRef<HTMLDivElement>;
27
30
  };
28
31
  export type FieldTimeProps = WithSupportProps<FieldTimeOwnProps & InputProps & WrapperProps>;
29
32
  export declare const FieldTime: import("react").ForwardRefExoticComponent<{
@@ -77,9 +77,10 @@ exports.FieldTime = (0, react_1.forwardRef)((_a, ref) => {
77
77
  size = input_private_1.SIZE.S,
78
78
  validationState = constants_1.VALIDATION_STATE.Default,
79
79
  error,
80
- onCopyButtonClick
80
+ onCopyButtonClick,
81
+ decoratorRef
81
82
  } = _a,
82
- rest = __rest(_a, ["id", "name", "value", "disabled", "readonly", "showCopyButton", "showClearButton", "open", "onOpenChange", "onChange", "onFocus", "onBlur", "className", "label", "labelTooltip", "labelTooltipPlacement", "required", "caption", "hint", "showHintIcon", "showSeconds", "size", "validationState", "error", "onCopyButtonClick"]);
83
+ rest = __rest(_a, ["id", "name", "value", "disabled", "readonly", "showCopyButton", "showClearButton", "open", "onOpenChange", "onChange", "onFocus", "onBlur", "className", "label", "labelTooltip", "labelTooltipPlacement", "required", "caption", "hint", "showHintIcon", "showSeconds", "size", "validationState", "error", "onCopyButtonClick", "decoratorRef"]);
83
84
  const [isOpen, setIsOpen] = (0, uncontrollable_1.useUncontrolledProp)(open, false, onOpenChange);
84
85
  const localRef = (0, react_1.useRef)(null);
85
86
  const clearButtonRef = (0, react_1.useRef)(null);
@@ -243,7 +244,8 @@ exports.FieldTime = (0, react_1.forwardRef)((_a, ref) => {
243
244
  showHintIcon: showHintIcon,
244
245
  size: size,
245
246
  error: error,
246
- validationState: fieldValidationState
247
+ validationState: fieldValidationState,
248
+ ref: decoratorRef
247
249
  }, (0, utils_1.extractSupportProps)(rest), {
248
250
  children: (0, jsx_runtime_1.jsx)(dropdown_1.Dropdown, Object.assign({
249
251
  trigger: 'click',
@@ -1,4 +1,4 @@
1
1
  import { ButtonFieldProps } from '../ButtonField';
2
- export declare const ButtonFieldList: import("react").ForwardRefExoticComponent<Omit<ButtonFieldProps, "hasArrow" | "arrowOpen"> & Pick<import("@snack-uikit/list").DroplistProps, "open" | "onOpenChange" | "items"> & {
2
+ export declare const ButtonFieldList: import("react").ForwardRefExoticComponent<Omit<ButtonFieldProps, "hasArrow" | "arrowOpen"> & Pick<import("@snack-uikit/list").DroplistProps, "open" | "onOpenChange" | "items" | "search"> & {
3
3
  selection?: Omit<import("@snack-uikit/list").SelectionSingleState, "mode">;
4
4
  } & import("react").RefAttributes<HTMLButtonElement>>;
@@ -29,9 +29,10 @@ exports.ButtonFieldList = (0, react_1.forwardRef)((_a, ref) => {
29
29
  items,
30
30
  selection,
31
31
  open,
32
- onOpenChange
32
+ onOpenChange,
33
+ search
33
34
  } = _a,
34
- rest = __rest(_a, ["items", "selection", "open", "onOpenChange"]);
35
+ rest = __rest(_a, ["items", "selection", "open", "onOpenChange", "search"]);
35
36
  const [isOpen, setIsOpen] = (0, uncontrollable_1.useUncontrolledProp)(open, false, onOpenChange);
36
37
  const placement = (0, helpers_1.getPlacement)(rest);
37
38
  return (0, jsx_runtime_1.jsx)(list_1.Droplist, {
@@ -43,6 +44,7 @@ exports.ButtonFieldList = (0, react_1.forwardRef)((_a, ref) => {
43
44
  open: isOpen,
44
45
  onOpenChange: setIsOpen,
45
46
  closeDroplistOnItemClick: true,
47
+ search: search,
46
48
  // eslint-disable-next-line @typescript-eslint/ban-ts-comment
47
49
  // @ts-ignore
48
50
  triggerElemRef: ref,
@@ -9,7 +9,7 @@ export type AsyncValueRequest = Promise<{
9
9
  success: boolean;
10
10
  value?: string;
11
11
  }>;
12
- export type NativeDroplistProps = Pick<DroplistProps, 'items' | 'open' | 'onOpenChange'> & {
12
+ export type NativeDroplistProps = Pick<DroplistProps, 'items' | 'open' | 'onOpenChange' | 'search'> & {
13
13
  selection?: Omit<SelectionSingleState, 'mode'>;
14
14
  };
15
15
  export type Button = Omit<NativeDroplistProps, 'items'> & {
@@ -1,3 +1,4 @@
1
+ import { ForwardedRef } from 'react';
1
2
  import { ColorPickerProps } from '@snack-uikit/color-picker';
2
3
  import { InputPrivateProps } from '@snack-uikit/input-private';
3
4
  import { WithSupportProps } from '@snack-uikit/utils';
@@ -20,6 +21,8 @@ type FieldDateOwnProps = {
20
21
  showClearButton?: boolean;
21
22
  value?: string;
22
23
  onChange?(value: string): void;
24
+ /** Ref для корневой обертки компонента */
25
+ decoratorRef?: ForwardedRef<HTMLDivElement>;
23
26
  } & Omit<ColorPickerProps, 'onChange' | 'value'>;
24
27
  export type FieldColorProps = WithSupportProps<FieldDateOwnProps & InputProps & WrapperProps>;
25
28
  export declare const FieldColor: import("react").ForwardRefExoticComponent<{
@@ -40,5 +43,7 @@ export declare const FieldColor: import("react").ForwardRefExoticComponent<{
40
43
  showClearButton?: boolean;
41
44
  value?: string;
42
45
  onChange?(value: string): void;
46
+ /** Ref для корневой обертки компонента */
47
+ decoratorRef?: ForwardedRef<HTMLDivElement>;
43
48
  } & Omit<ColorPickerProps, "value" | "onChange"> & InputProps & WrapperProps & import("react").RefAttributes<HTMLInputElement>>;
44
49
  export {};