@true-engineering/true-react-common-ui-kit 3.1.1 → 3.4.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 (102) hide show
  1. package/README.md +12 -0
  2. package/dist/components/AccountInfo/AccountInfo.d.ts +1 -0
  3. package/dist/components/AddButton/AddButton.d.ts +4 -1
  4. package/dist/components/Button/Button.d.ts +11 -29
  5. package/dist/components/Checkbox/Checkbox.d.ts +7 -5
  6. package/dist/components/CloseButton/CloseButton.d.ts +2 -1
  7. package/dist/components/DateInput/DateInput.d.ts +5 -2
  8. package/dist/components/DatePicker/DatePicker.d.ts +7 -5
  9. package/dist/components/Description/Description.d.ts +2 -0
  10. package/dist/components/FiltersPane/FiltersPane.d.ts +6 -3
  11. package/dist/components/FiltersPane/components/FilterWithDates/FilterWithDates.d.ts +3 -3
  12. package/dist/components/FiltersPane/components/FilterWithPeriod/FilterWithPeriod.d.ts +2 -2
  13. package/dist/components/FiltersPane/components/FilterWrapper/FilterWrapper.d.ts +1 -1
  14. package/dist/components/Flag/Flag.d.ts +1 -0
  15. package/dist/components/FlexibleTable/FlexibleTable.d.ts +7 -4
  16. package/dist/components/FlexibleTable/FlexibleTable.stories.d.ts +1 -1
  17. package/dist/components/FlexibleTable/FlexibleTable.styles.d.ts +1 -1
  18. package/dist/components/FlexibleTable/components/FlexibleTableCell/FlexibleTableCell.d.ts +4 -2
  19. package/dist/components/FlexibleTable/components/FlexibleTableRow/FlexibleTableRow.d.ts +6 -4
  20. package/dist/components/FlexibleTable/components/FlexibleTableRow/FlexibleTableRow.styles.d.ts +1 -1
  21. package/dist/components/IncrementInput/IncrementInput.d.ts +1 -0
  22. package/dist/components/Input/Input.d.ts +17 -23
  23. package/dist/components/Input/Input.stories.d.ts +1 -1
  24. package/dist/components/Input/types.d.ts +2 -0
  25. package/dist/components/List/List.d.ts +1 -1
  26. package/dist/components/List/components/ListItem/ListItem.d.ts +1 -1
  27. package/dist/components/Modal/Modal.d.ts +11 -1
  28. package/dist/components/MoreMenu/MoreMenu.d.ts +4 -5
  29. package/dist/components/MultiSelect/MultiSelect.d.ts +7 -2
  30. package/dist/components/MultiSelect/components/MultiSelectInput/MultiSelectInput.d.ts +1 -1
  31. package/dist/components/MultiSelectList/MultiSelectList.d.ts +3 -0
  32. package/dist/components/Notification/Notification.d.ts +2 -6
  33. package/dist/components/Notification/Notification.styles.d.ts +1 -1
  34. package/dist/components/NumberInput/NumberInput.d.ts +5 -1
  35. package/dist/components/PhoneInput/PhoneInput.d.ts +5 -1
  36. package/dist/components/PhoneInput/components/PhoneInputCountryList/PhoneInputCountryList.d.ts +2 -2
  37. package/dist/components/RadioButton/RadioButton.d.ts +3 -1
  38. package/dist/components/Select/Select.d.ts +17 -12
  39. package/dist/components/Select/components/SelectList/SelectList.d.ts +6 -6
  40. package/dist/components/Select/components/SelectListItem/SelectListItem.d.ts +2 -2
  41. package/dist/components/SmartInput/SmartInput.d.ts +2 -0
  42. package/dist/components/SmartInput/SmartInput.stories.d.ts +1 -1
  43. package/dist/components/Switch/Switch.d.ts +6 -7
  44. package/dist/components/TextArea/TextArea.d.ts +13 -4
  45. package/dist/components/TextButton/TextButton.d.ts +1 -1
  46. package/dist/components/TextWithInfo/TextWithInfo.d.ts +2 -1
  47. package/dist/components/TextWithTooltip/TextWithTooltip.d.ts +7 -0
  48. package/dist/components/ThemedPreloader/ThemedPreloader.d.ts +2 -3
  49. package/dist/components/Toaster/Toaster.d.ts +5 -11
  50. package/dist/components/Tooltip/Tooltip.d.ts +2 -6
  51. package/dist/hooks/use-dropdown.d.ts +1 -1
  52. package/dist/true-react-common-ui-kit.js +138 -45
  53. package/dist/true-react-common-ui-kit.js.map +1 -1
  54. package/dist/true-react-common-ui-kit.umd.cjs +138 -45
  55. package/dist/true-react-common-ui-kit.umd.cjs.map +1 -1
  56. package/package.json +1 -1
  57. package/src/components/AccountInfo/AccountInfo.tsx +1 -0
  58. package/src/components/AddButton/AddButton.tsx +6 -3
  59. package/src/components/Button/Button.tsx +11 -29
  60. package/src/components/Checkbox/Checkbox.tsx +12 -10
  61. package/src/components/CloseButton/CloseButton.tsx +2 -1
  62. package/src/components/DateInput/DateInput.tsx +6 -3
  63. package/src/components/DatePicker/DatePicker.tsx +10 -8
  64. package/src/components/Description/Description.tsx +2 -0
  65. package/src/components/FiltersPane/FiltersPane.tsx +6 -3
  66. package/src/components/FiltersPane/components/FilterWithDates/FilterWithDates.tsx +3 -3
  67. package/src/components/FiltersPane/components/FilterWithPeriod/FilterWithPeriod.tsx +2 -2
  68. package/src/components/FiltersPane/components/FilterWrapper/FilterWrapper.tsx +1 -1
  69. package/src/components/Flag/Flag.tsx +1 -0
  70. package/src/components/FlexibleTable/FlexibleTable.styles.ts +14 -0
  71. package/src/components/FlexibleTable/FlexibleTable.tsx +53 -33
  72. package/src/components/FlexibleTable/components/FlexibleTableCell/FlexibleTableCell.tsx +8 -3
  73. package/src/components/FlexibleTable/components/FlexibleTableRow/FlexibleTableRow.styles.ts +2 -0
  74. package/src/components/FlexibleTable/components/FlexibleTableRow/FlexibleTableRow.tsx +17 -8
  75. package/src/components/IncrementInput/IncrementInput.tsx +1 -0
  76. package/src/components/Input/Input.tsx +28 -41
  77. package/src/components/Input/types.ts +26 -0
  78. package/src/components/List/List.tsx +1 -1
  79. package/src/components/List/components/ListItem/ListItem.tsx +1 -1
  80. package/src/components/Modal/Modal.tsx +12 -2
  81. package/src/components/MoreMenu/MoreMenu.tsx +5 -6
  82. package/src/components/MultiSelect/MultiSelect.tsx +9 -4
  83. package/src/components/MultiSelect/components/MultiSelectInput/MultiSelectInput.tsx +1 -1
  84. package/src/components/MultiSelectList/MultiSelectList.tsx +3 -0
  85. package/src/components/Notification/Notification.tsx +2 -6
  86. package/src/components/NumberInput/NumberInput.tsx +5 -1
  87. package/src/components/PhoneInput/PhoneInput.tsx +6 -2
  88. package/src/components/PhoneInput/components/PhoneInputCountryList/PhoneInputCountryList.tsx +2 -2
  89. package/src/components/RadioButton/RadioButton.tsx +5 -3
  90. package/src/components/Select/Select.tsx +18 -13
  91. package/src/components/Select/components/SelectList/SelectList.tsx +6 -6
  92. package/src/components/Select/components/SelectListItem/SelectListItem.tsx +2 -2
  93. package/src/components/SmartInput/SmartInput.tsx +11 -1
  94. package/src/components/Switch/Switch.tsx +8 -9
  95. package/src/components/TextArea/TextArea.tsx +16 -7
  96. package/src/components/TextButton/TextButton.tsx +1 -1
  97. package/src/components/TextWithInfo/TextWithInfo.tsx +2 -1
  98. package/src/components/TextWithTooltip/TextWithTooltip.tsx +8 -1
  99. package/src/components/ThemedPreloader/ThemedPreloader.tsx +2 -3
  100. package/src/components/Toaster/Toaster.tsx +5 -11
  101. package/src/components/Tooltip/Tooltip.tsx +2 -6
  102. package/src/hooks/use-dropdown.ts +1 -1
package/README.md CHANGED
@@ -10,6 +10,18 @@
10
10
 
11
11
  # Release Notes
12
12
 
13
+ ## v3.4.0
14
+
15
+ - **Input**: Добавляет пропс onInput
16
+
17
+ ## v3.3.0
18
+
19
+ - Улучшение кодстайла
20
+
21
+ ## v3.2.0
22
+
23
+ - **FlexibleTable** **FlexibleTableCell** **FlexibleTableRow** Добавляет прорс `renderMode`: 'table' | 'divs';
24
+
13
25
  ## v3.1.1
14
26
 
15
27
  - **Status** фикс цветов
@@ -3,6 +3,7 @@ import { ICommonProps } from '../../types';
3
3
  import { IListProps } from '../List';
4
4
  import { IAccountInfoStyles } from './AccountInfo.styles';
5
5
  export interface IAccountInfoProps extends ICommonProps<IAccountInfoStyles> {
6
+ /** @default `<Icon type='avatar' />` */
6
7
  avatar?: ReactNode;
7
8
  accountName: ReactNode;
8
9
  options: IListProps['items'];
@@ -3,9 +3,12 @@ import { ICommonProps } from '../../types';
3
3
  import { IAddButtonStyles } from './AddButton.styles';
4
4
  export interface IAddButtonProps extends ICommonProps<IAddButtonStyles> {
5
5
  text: string;
6
+ /** @default 'button' */
6
7
  type?: 'submit' | 'button';
8
+ /** @default false */
7
9
  isDisabled?: boolean;
10
+ /** @default false */
8
11
  isFullWidth?: boolean;
9
- onClick?(): void | Promise<void>;
12
+ onClick?: () => void | Promise<void>;
10
13
  }
11
14
  export declare const AddButton: FC<IAddButtonProps>;
@@ -6,29 +6,17 @@ import { IButtonSize, IButtonView } from './types';
6
6
  import { IButtonStyles } from './Button.styles';
7
7
  export interface IButtonProps extends ICommonProps<IButtonStyles> {
8
8
  children?: ReactNode;
9
- /**
10
- * @default `button`
11
- */
9
+ /** @default 'button' */
12
10
  type?: ButtonHTMLAttributes<unknown>['type'];
13
- /**
14
- * @default `l`
15
- */
11
+ /** @default 'l' */
16
12
  size?: IButtonSize;
17
- /**
18
- * @default `primary`
19
- */
13
+ /** @default 'primary' */
20
14
  view?: IButtonView;
21
- /**
22
- * @default false
23
- */
15
+ /** @default false */
24
16
  shouldSkipTabNavigation?: boolean;
25
- /**
26
- * @default false
27
- */
17
+ /** @default false */
28
18
  isDisabled?: boolean;
29
- /**
30
- * @default false
31
- */
19
+ /** @default false */
32
20
  isFullWidth?: boolean;
33
21
  /**
34
22
  * Нужно ли убирать скругление у кнопки слева
@@ -40,20 +28,14 @@ export interface IButtonProps extends ICommonProps<IButtonStyles> {
40
28
  * @default false
41
29
  */
42
30
  isLoading?: boolean;
43
- /**
44
- * @default false
45
- */
31
+ /** @default false */
46
32
  isActive?: boolean;
47
33
  icon?: IIcon;
48
- /**
49
- * @default `left`
50
- */
34
+ /** @default 'left' */
51
35
  iconPosition?: 'left' | 'right';
52
- /**
53
- * @default `dots`
54
- */
36
+ /** @default 'dots' */
55
37
  preloaderType?: IThemedPreloaderProps['type'];
56
- onClick?(event: MouseEvent<HTMLButtonElement>): void | Promise<void>;
57
- onMouseDown?(event: MouseEvent<HTMLButtonElement>): void | Promise<void>;
38
+ onClick?: (event: MouseEvent<HTMLButtonElement>) => void | Promise<void>;
39
+ onMouseDown?: (event: MouseEvent<HTMLButtonElement>) => void | Promise<void>;
58
40
  }
59
41
  export declare const Button: import("react").ForwardRefExoticComponent<IButtonProps & import("react").RefAttributes<HTMLButtonElement>>;
@@ -4,18 +4,20 @@ import { ICheckboxStyles } from './Checkbox.styles';
4
4
  export interface ICheckboxProps<V> extends ICommonProps<ICheckboxStyles> {
5
5
  children?: ReactNode;
6
6
  isChecked: boolean | undefined;
7
+ /** @default false */
7
8
  isSemiChecked?: boolean;
9
+ /** @default false */
8
10
  isDisabled?: boolean;
11
+ /** @default false */
9
12
  isReadonly?: boolean;
13
+ /** @default false */
10
14
  isInvalid?: boolean;
11
15
  value: V;
12
- /**
13
- * @default `right`
14
- */
16
+ /** @default 'right' */
15
17
  labelPosition?: 'right' | 'left';
16
- onSelect(value: {
18
+ onSelect: (value: {
17
19
  value: V;
18
20
  isSelected: boolean;
19
- }): void;
21
+ }) => void;
20
22
  }
21
23
  export declare function Checkbox<V>({ children, isDisabled, isReadonly, isChecked, value, data, testId, isSemiChecked, labelPosition, tweakStyles, onSelect, }: ICheckboxProps<V>): JSX.Element;
@@ -2,7 +2,8 @@ import { FC } from 'react';
2
2
  import { ICommonProps } from '../../types';
3
3
  import { ICloseButtonStyles } from './CloseButton.styles';
4
4
  export interface ICloseButtonProps extends ICommonProps<ICloseButtonStyles> {
5
+ /** @default 'close' */
5
6
  iconType?: 'close' | 'close-large' | 'close-window';
6
- onClose?(): void;
7
+ onClose?: () => void;
7
8
  }
8
9
  export declare const CloseButton: FC<ICloseButtonProps>;
@@ -4,11 +4,14 @@ import { IInputProps } from '../Input';
4
4
  import { IDateInputStyles } from './DateInput.styles';
5
5
  export interface IDateInputProps extends Omit<IInputProps, 'value' | 'beforeMaskedStateChange' | 'onChange' | 'tweakStyles'>, ICommonProps<IDateInputStyles> {
6
6
  date?: string;
7
+ /** @default '' */
7
8
  startDate?: string;
9
+ /** @default '' */
8
10
  endDate?: string;
9
11
  className?: string;
12
+ /** @default false */
10
13
  isRange?: boolean;
11
- onClick?(event: MouseEvent<HTMLDivElement>): void;
12
- onChange?(event: FormEvent<HTMLInputElement>, value: string): void;
14
+ onClick?: (event: MouseEvent<HTMLDivElement>) => void;
15
+ onChange?: (event: FormEvent<HTMLInputElement>, value: string) => void;
13
16
  }
14
17
  export declare const DateInput: import("react").ForwardRefExoticComponent<IDateInputProps & import("react").RefAttributes<HTMLInputElement>>;
@@ -9,16 +9,18 @@ export interface IDatePickerProps extends IDatePickerBaseProps, ICommonProps<IDa
9
9
  selectedDate?: Date | null;
10
10
  locale: Locale;
11
11
  months?: string[];
12
- /**
13
- * @default `dd.MM.yyyy`
14
- */
12
+ /** @default 'dd.MM.yyyy' */
15
13
  dateFormat?: string;
14
+ /** @default 1 */
16
15
  calendarStartDay?: 0 | 1 | 2 | 3 | 4 | 5 | 6;
16
+ /** @default false */
17
17
  isRange?: boolean;
18
+ /** @default false */
18
19
  isInline?: boolean;
20
+ /** @default false */
19
21
  shouldRenderPopperInBody?: boolean;
20
22
  customInput?: FC<IDateInputProps>;
21
- onChangeDate?(date: Date | null, event?: SyntheticEvent): void;
22
- onChangeRange?(date: IRange, event?: SyntheticEvent): void;
23
+ onChangeDate?: (date: Date | null, event?: SyntheticEvent) => void;
24
+ onChangeRange?: (date: IRange, event?: SyntheticEvent) => void;
23
25
  }
24
26
  export declare const DatePicker: import("react").ForwardRefExoticComponent<IDatePickerProps & import("react").RefAttributes<ReactDatePicker<never, undefined>>>;
@@ -5,7 +5,9 @@ export interface IDescriptionProps extends ICommonProps<IDescriptionStyles> {
5
5
  text: string;
6
6
  moreTitle?: string;
7
7
  lessTitle?: string;
8
+ /** @default 150 */
8
9
  truncateIndex?: number;
10
+ /** @default true */
9
11
  isAlwaysOpen?: boolean;
10
12
  }
11
13
  export declare const Description: FC<IDescriptionProps>;
@@ -5,14 +5,17 @@ import { IFiltersPaneStyles } from './FiltersPane.styles';
5
5
  export interface IFiltersPaneProps<Values, Content = Values> extends ICommonProps<IFiltersPaneStyles> {
6
6
  filtersConfig: ConfigType<Values>;
7
7
  enabledFilters?: Array<keyof ConfigType<Values>>;
8
+ /** @default {} */
8
9
  values?: Partial<Values>;
9
10
  search?: IFiltersPaneSearchProps<keyof Content>;
10
11
  localeKey?: IFilterLocaleKey;
11
12
  locale?: IPartialFilterLocale;
13
+ /** @default false */
12
14
  isDisabled?: boolean;
15
+ /** @default true */
13
16
  hasClearButton?: boolean;
14
- onChangeFilters(values: Partial<Values>): void;
15
- onSettingsButtonClick?(): void;
16
- onClear?(): void;
17
+ onChangeFilters: (values: Partial<Values>) => void;
18
+ onSettingsButtonClick?: () => void;
19
+ onClear?: () => void;
17
20
  }
18
21
  export declare function FiltersPane<Values extends Record<string, unknown>, Content = Values>({ data, tweakStyles, filtersConfig, enabledFilters, values, localeKey, locale, search, isDisabled, hasClearButton, testId, onChangeFilters, onSettingsButtonClick, onClear, }: IFiltersPaneProps<Values, Content>): JSX.Element;
@@ -9,8 +9,8 @@ export interface IFilterWithDatesProps extends ICommonProps<IFilterWithDatesStyl
9
9
  isClearable?: boolean;
10
10
  startPickerProps?: IFilterWithDateDatePickerProps;
11
11
  endPickerProps?: IFilterWithDateDatePickerProps;
12
- onChange(val: IFilterWithDatesValue): void;
13
- onStartBtnSubmit?(): void;
14
- onEndBtnSubmit(): void;
12
+ onChange: (val: IFilterWithDatesValue) => void;
13
+ onStartBtnSubmit?: () => void;
14
+ onEndBtnSubmit: () => void;
15
15
  }
16
16
  export declare const FilterWithDates: FC<IFilterWithDatesProps>;
@@ -7,7 +7,7 @@ export interface IFilterWithPeriodProps extends ICommonProps<IFilterWithPeriodSt
7
7
  localeKey?: IFilterLocaleKey;
8
8
  locale?: IPartialFilterLocale;
9
9
  periods?: IPeriodsList;
10
- onChange(period?: IPeriod): void;
11
- onClose?(): void;
10
+ onChange: (period?: IPeriod) => void;
11
+ onClose?: () => void;
12
12
  }
13
13
  export declare const FilterWithPeriod: FC<IFilterWithPeriodProps>;
@@ -9,6 +9,6 @@ export interface IFilterWrapperProps<Values, Key extends keyof Values> extends I
9
9
  localeKey?: IFilterLocaleKey;
10
10
  locale?: IPartialFilterLocale;
11
11
  filtersPaneRef: RefObject<HTMLDivElement> | null;
12
- onChange<V>(value: V): void;
12
+ onChange: <V>(value: V) => void;
13
13
  }
14
14
  export declare function FilterWrapper<Values, Key extends keyof Values>({ filter, value, isDisabled, locale, localeKey, data, testId, filtersPaneRef, tweakStyles, onChange, }: IFilterWrapperProps<Values, Key>): JSX.Element;
@@ -2,6 +2,7 @@ import { FC } from 'react';
2
2
  import { ICommonProps } from '../../types';
3
3
  import { IFlagStyles } from './Flag.styles';
4
4
  export interface IFlagProps extends Pick<ICommonProps<IFlagStyles>, 'tweakStyles'> {
5
+ /** @default '' */
5
6
  countryCode?: string;
6
7
  }
7
8
  export declare const Flag: FC<IFlagProps>;
@@ -8,20 +8,23 @@ export interface IFlexibleTableProps<Values extends Record<string, any>> extends
8
8
  enabledColumns?: Array<keyof Values>;
9
9
  activeRows?: number[];
10
10
  config: IFlexibleTableConfigType<Values>;
11
+ /** @default false */
11
12
  isHorizontallyScrollable?: boolean;
13
+ /** @default false */
12
14
  isFirstColumnSticky?: boolean;
13
15
  infinityScrollConfig?: IInfinityScrollConfig;
14
- /**
15
- * @default Индекс строки
16
- */
16
+ /** @default Индекс строки */
17
17
  uniqueField?: keyof Values;
18
18
  onHeadClick?: (column: keyof Values) => void;
19
+ /** @default false */
19
20
  isLoading?: boolean;
20
21
  onRowClick?: (id: string) => void;
21
22
  onRowHover?: (id?: string) => void;
22
23
  rowAttributes?: Array<keyof Values>;
23
24
  refForScroll?: RefObject<HTMLDivElement>;
24
25
  nothingFoundContent?: ReactNode;
26
+ /** @default 'table' */
27
+ renderMode?: 'table' | 'divs';
25
28
  expandableRowComponent?: (item: Values, isOpen: boolean, close: () => void) => ReactNode;
26
29
  }
27
- export declare function FlexibleTable<Values extends Record<string, any>>({ data, tweakStyles, content, headerContent, config, activeRows, enabledColumns, isHorizontallyScrollable, isFirstColumnSticky, infinityScrollConfig, uniqueField, isLoading, onHeadClick, onRowHover, onRowClick, refForScroll, rowAttributes, nothingFoundContent, testId, expandableRowComponent, }: IFlexibleTableProps<Values>): JSX.Element;
30
+ export declare function FlexibleTable<Values extends Record<string, any>>({ data, tweakStyles, content, headerContent, config, activeRows, enabledColumns, isHorizontallyScrollable, isFirstColumnSticky, infinityScrollConfig, uniqueField, isLoading, renderMode, onHeadClick, onRowHover, onRowClick, refForScroll, rowAttributes, nothingFoundContent, testId, expandableRowComponent, }: IFlexibleTableProps<Values>): JSX.Element;
@@ -17,4 +17,4 @@ interface ITableContent {
17
17
  currency: string;
18
18
  status: string;
19
19
  }
20
- export declare const Default: ComponentStory<({ data, tweakStyles, content, headerContent, config, activeRows, enabledColumns, isHorizontallyScrollable, isFirstColumnSticky, infinityScrollConfig, uniqueField, isLoading, onHeadClick, onRowHover, onRowClick, refForScroll, rowAttributes, nothingFoundContent, testId, expandableRowComponent, }: import("./FlexibleTable").IFlexibleTableProps<ITableContent>) => JSX.Element>;
20
+ export declare const Default: ComponentStory<({ data, tweakStyles, content, headerContent, config, activeRows, enabledColumns, isHorizontallyScrollable, isFirstColumnSticky, infinityScrollConfig, uniqueField, isLoading, renderMode, onHeadClick, onRowHover, onRowClick, refForScroll, rowAttributes, nothingFoundContent, testId, expandableRowComponent, }: import("./FlexibleTable").IFlexibleTableProps<ITableContent>) => JSX.Element>;
@@ -1,7 +1,7 @@
1
1
  import { ITweakStyles } from '../../theme';
2
2
  import type { IFlexibleTableRowStyles } from './components';
3
3
  export declare const STICKY_SHADOW_PADDING = 12;
4
- export declare const useStyles: import("../../theme").IUseStyles<"scroll" | "root" | "loader" | "header" | "headerRow" | "headerSticky" | "headerSecond" | "skeleton", unknown>;
4
+ export declare const useStyles: import("../../theme").IUseStyles<"scroll" | "root" | "loader" | "header" | "nothingFound" | "head" | "body" | "loaderRow" | "loaderCell" | "headerRow" | "headerSticky" | "headerSecond" | "nothingFoundRow" | "skeletonRow" | "skeleton", unknown>;
5
5
  export type IFlexibleTableStyles = ITweakStyles<typeof useStyles, {
6
6
  tweakTableRow: IFlexibleTableRowStyles;
7
7
  }>;
@@ -6,11 +6,13 @@ export interface IFlexibleTableCellProps<Values extends Record<string, any>> ext
6
6
  item: Values;
7
7
  columnName: keyof Values;
8
8
  config: IFlexibleTableConfigType<Values>;
9
+ /** @default 'table' */
10
+ renderMode?: 'table' | 'divs';
9
11
  isFocusedRow?: boolean;
10
12
  isSecond?: boolean;
11
13
  isSticky?: boolean;
12
14
  isNestedComponentExpanded: boolean;
13
15
  isRowNestedComponentExpanded: boolean;
14
- onSetNestedComponent(component?: ReactNode): void;
16
+ onSetNestedComponent: (component?: ReactNode) => void;
15
17
  }
16
- export declare function FlexibleTableCell<Values extends Record<string, any>>({ item, columnName, config, isFocusedRow, isSecond, isSticky, isNestedComponentExpanded, isRowNestedComponentExpanded, tweakStyles, onSetNestedComponent, }: IFlexibleTableCellProps<Values>): JSX.Element;
18
+ export declare function FlexibleTableCell<Values extends Record<string, any>>({ item, columnName, config, renderMode, isFocusedRow, isSecond, isSticky, isNestedComponentExpanded, isRowNestedComponentExpanded, tweakStyles, onSetNestedComponent, }: IFlexibleTableCellProps<Values>): JSX.Element;
@@ -10,10 +10,12 @@ export interface IFlexibleTableRowProps<Values extends Record<string, any>> exte
10
10
  config: IFlexibleTableConfigType<Values>;
11
11
  enabledColumns?: Array<keyof Values>;
12
12
  rowAttributes?: Array<keyof Values>;
13
- expandableRowComponent?(item: Values, isOpen: boolean, close: () => void): ReactNode;
14
- onRowHover?(id?: string): void;
15
- onRowClick?(id: string): void;
13
+ /** @default 'table' */
14
+ renderMode?: 'table' | 'divs';
15
+ expandableRowComponent?: (item: Values, isOpen: boolean, close: () => void) => ReactNode;
16
+ onRowHover?: (id?: string) => void;
17
+ onRowClick?: (id: string) => void;
16
18
  }
17
- declare function FlexibleTableRowInner<Values extends Record<string, any>>({ item, uniqueField, isFirstColumnSticky, isActive, config, enabledColumns, rowAttributes, tweakStyles, expandableRowComponent, onRowHover, onRowClick, }: IFlexibleTableRowProps<Values>): JSX.Element;
19
+ declare function FlexibleTableRowInner<Values extends Record<string, any>>({ item, uniqueField, isFirstColumnSticky, isActive, config, enabledColumns, rowAttributes, renderMode, tweakStyles, expandableRowComponent, onRowHover, onRowClick, }: IFlexibleTableRowProps<Values>): JSX.Element;
18
20
  export declare const FlexibleTableRow: typeof FlexibleTableRowInner;
19
21
  export {};
@@ -1,6 +1,6 @@
1
1
  import { ITweakStyles } from '../../../../theme';
2
2
  import { IFlexibleTableCellStyles } from '../FlexibleTableCell';
3
- export declare const useStyles: import("../../../../theme").IUseStyles<"root" | "active" | "editable" | "clickable", unknown>;
3
+ export declare const useStyles: import("../../../../theme").IUseStyles<"root" | "active" | "editable" | "clickable" | "nestedComponent", unknown>;
4
4
  export type IFlexibleTableRowStyles = ITweakStyles<typeof useStyles, {
5
5
  tweakTableCell: IFlexibleTableCellStyles;
6
6
  }>;
@@ -3,6 +3,7 @@ import { ICommonProps } from '../../types';
3
3
  import { INumberInputProps } from '../NumberInput';
4
4
  import { IIncrementInputStyles } from './IncrementInput.styles';
5
5
  export interface IIncrementInputProps extends Omit<INumberInputProps, 'canBeFloat' | 'precision' | 'tweakStyles'>, ICommonProps<IIncrementInputStyles> {
6
+ /** @default 1 */
6
7
  step?: number;
7
8
  }
8
9
  export declare const IncrementInput: FC<IIncrementInputProps>;
@@ -1,34 +1,32 @@
1
- import { FormEvent, FocusEvent, KeyboardEvent, ClipboardEvent, ReactNode } from 'react';
1
+ import { FormEvent, ReactNode } from 'react';
2
2
  import { ICommonProps } from '../../types';
3
3
  import { IIcon } from '../Icon';
4
- import { IReactInputMaskProps } from './types';
4
+ import { IInputHTMLBaseProps, IReactInputMaskProps } from './types';
5
5
  import { IInputStyles } from './Input.styles';
6
- export interface IInputProps extends ICommonProps<IInputStyles>, IReactInputMaskProps {
6
+ export interface IInputProps extends ICommonProps<IInputStyles>, IReactInputMaskProps, IInputHTMLBaseProps {
7
7
  value?: string;
8
8
  label?: ReactNode;
9
- placeholder?: string;
10
- /**
11
- * @default `text`
12
- */
13
- type?: 'text' | 'password' | 'email' | 'number';
9
+ /** @default false */
14
10
  isDisabled?: boolean;
15
- /**
16
- * @default true
17
- */
11
+ /** @default true */
18
12
  hasFloatingLabel?: boolean;
13
+ /** @default false */
19
14
  isReadonly?: boolean;
15
+ /** @default false */
20
16
  isInvalid?: boolean;
17
+ /** @default false */
21
18
  isActive?: boolean;
19
+ /** @default false */
22
20
  isClearable?: boolean;
23
21
  infoMessage?: string;
24
22
  errorMessage?: string;
25
- /**
26
- * @default `bottom`
27
- */
23
+ /** @default 'bottom' */
28
24
  errorPosition?: 'top' | 'bottom';
29
25
  inlineStyle?: 'top' | 'bottom' | 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right' | 'left' | 'right' | 'middle';
30
26
  border?: 'top' | 'bottom' | 'left' | 'right';
27
+ /** @default false */
31
28
  isRequired?: boolean;
29
+ /** @default false */
32
30
  isLoading?: boolean;
33
31
  /**
34
32
  * Должна ли ширина input'а подстраиваться под ширину контента
@@ -42,17 +40,13 @@ export interface IInputProps extends ICommonProps<IInputStyles>, IReactInputMask
42
40
  defaultSize?: number;
43
41
  iconType?: IIcon;
44
42
  units?: string;
45
- name?: string;
43
+ /** @default false */
46
44
  hasRequiredLabel?: boolean;
45
+ /** @default false */
47
46
  shouldFocusOnMount?: boolean;
48
- maxLength?: number;
49
- tabIndex?: number;
47
+ /** @default false */
50
48
  shouldAlwaysShowPlaceholder?: boolean;
51
- onChange(value: string, event: FormEvent<HTMLInputElement>): void;
52
- onFocus?(event: FocusEvent<HTMLInputElement>): void;
53
- onBlur?(event: FocusEvent<HTMLInputElement>): void;
54
- onPaste?(event: ClipboardEvent<HTMLInputElement>): void;
55
- onIconClick?(): void;
56
- onKeyDown?(event: KeyboardEvent<HTMLInputElement>): void;
49
+ onChange: (value: string, event: FormEvent<HTMLInputElement>) => void;
50
+ onIconClick?: () => void;
57
51
  }
58
52
  export declare const Input: import("react").ForwardRefExoticComponent<IInputProps & import("react").RefAttributes<HTMLInputElement>>;
@@ -7,7 +7,7 @@ declare const _default: {
7
7
  argTypes: {
8
8
  type: {
9
9
  control: string;
10
- options: ("number" | "text" | "email" | "password" | undefined)[];
10
+ options: (import("react").HTMLInputTypeAttribute | undefined)[];
11
11
  };
12
12
  border: {
13
13
  control: string;
@@ -1,2 +1,4 @@
1
+ import { InputHTMLAttributes } from 'react';
1
2
  import { Props as ReactInputMaskBaseProps } from 'react-input-mask';
2
3
  export type IReactInputMaskProps = Pick<Partial<ReactInputMaskBaseProps>, 'mask' | 'maskPlaceholder' | 'alwaysShowMask' | 'beforeMaskedStateChange'>;
4
+ export type IInputHTMLBaseProps = Pick<InputHTMLAttributes<HTMLInputElement>, 'maxLength' | 'name' | 'tabIndex' | 'placeholder' | 'type' | 'onBlur' | 'onFocus' | 'onInput' | 'onKeyDown' | 'onPaste'>;
@@ -4,6 +4,6 @@ import { IListItemProps as IListItem } from './components';
4
4
  import { IListStyles } from './List.styles';
5
5
  export interface IListProps extends ICommonProps<IListStyles> {
6
6
  items: IListItem[];
7
- onClick?(event: MouseEvent | KeyboardEvent): void;
7
+ onClick?: (event: MouseEvent | KeyboardEvent) => void;
8
8
  }
9
9
  export declare const List: FC<IListProps>;
@@ -10,6 +10,6 @@ export interface IListItemProps extends ICommonProps<IListItemStyles> {
10
10
  shouldDrawSpacerAbove?: boolean;
11
11
  shouldDrawSpacerBelow?: boolean;
12
12
  withIconGap?: boolean;
13
- onClick(event: MouseEvent | KeyboardEvent): void;
13
+ onClick: (event: MouseEvent | KeyboardEvent) => void;
14
14
  }
15
15
  export declare const ListItem: FC<IListItemProps>;
@@ -4,19 +4,29 @@ import { IModalPosition, IModalTransitionProps } from './types';
4
4
  import { IModalStyles } from './Modal.styles';
5
5
  export interface IModalProps extends ICommonProps<IModalStyles>, IModalTransitionProps {
6
6
  title?: ReactNode;
7
+ /** @default 'l */
7
8
  size?: 'l' | 'm' | 's';
9
+ /** @default false */
8
10
  isFooterSticky?: boolean;
9
11
  buttons?: ReactNode[];
12
+ /** @default 'right' */
10
13
  buttonsAlign?: 'left' | 'center' | 'right';
11
14
  children?: ReactNode | ReactNode[];
15
+ /** @default 'center' */
12
16
  position?: IModalPosition;
17
+ /** @default true */
13
18
  hasCloseButton?: boolean;
19
+ /** @default true */
14
20
  hasOverlay?: boolean;
21
+ /** @default true */
15
22
  shouldCloseOnOverlayClick?: boolean;
23
+ /** @default true */
16
24
  shouldCloseOnEsc?: boolean;
25
+ /** @default true */
17
26
  shouldBlockScroll?: boolean;
27
+ /** @default false */
18
28
  isOpen?: boolean;
19
29
  zIndex?: number;
20
- onClose?(): void;
30
+ onClose?: () => void;
21
31
  }
22
32
  export declare const Modal: FC<IModalProps>;
@@ -4,12 +4,11 @@ import { IListItem } from '../List';
4
4
  import { IMoreMenuStyles } from './MoreMenu.styles';
5
5
  export interface IMoreMenuProps extends ICommonProps<IMoreMenuStyles> {
6
6
  items: IListItem[];
7
+ /** @default false */
7
8
  isDisabled?: boolean;
8
- /**
9
- * @default true
10
- */
9
+ /** @default true */
11
10
  hasDefaultStateBackground?: boolean;
12
- onMenuOpen?(): void;
13
- onMenuClose?(): void;
11
+ onMenuOpen?: () => void;
12
+ onMenuClose?: () => void;
14
13
  }
15
14
  export declare const MoreMenu: FC<IMoreMenuProps>;
@@ -4,14 +4,19 @@ import { IHorizontalCornerConnection } from './types';
4
4
  import { IMultiSelectStyles } from './MultiSelect.styles';
5
5
  export interface IMultiSelectProps<Value = string> extends ICommonProps<IMultiSelectStyles> {
6
6
  value?: IMultiSelectListValues<Value>;
7
+ /** @default 'full' */
7
8
  corners?: IHorizontalCornerConnection;
9
+ /** @default false */
8
10
  isInvalid?: boolean;
11
+ /** @default false */
9
12
  isRequired?: boolean;
13
+ /** @default false */
10
14
  isDisabled?: boolean;
15
+ /** @default '' */
11
16
  placeholder?: string;
12
17
  localeKey?: IMultiSelectLocaleKey;
13
18
  locale?: IMultiSelectLocale;
14
- onChange(value?: IMultiSelectListValues<Value>): void;
15
- fetchOptions(value?: string, page?: number): Promise<Value[]>;
19
+ onChange: (value?: IMultiSelectListValues<Value>) => void;
20
+ fetchOptions: (value?: string, page?: number) => Promise<Value[]>;
16
21
  }
17
22
  export declare function MultiSelect<Value = string>({ value, corners, isInvalid, isRequired, isDisabled, placeholder, localeKey, locale, testId, data, onChange, fetchOptions, tweakStyles, }: IMultiSelectProps<Value>): JSX.Element;
@@ -7,6 +7,6 @@ export interface IMultiSelectInputProps<Value> extends Pick<ICommonProps<IMultiS
7
7
  isOpen: boolean;
8
8
  isDisabled: boolean;
9
9
  placeholder: string;
10
- onToggle(state: boolean): void;
10
+ onToggle: (state: boolean) => void;
11
11
  }
12
12
  export declare function MultiSelectInput<Value>({ value: v, isOpen, isDisabled, placeholder, tweakStyles, onToggle, }: IMultiSelectInputProps<Value>): ReactElement | null;
@@ -4,6 +4,7 @@ import { IMultiSelectListValues, IMultiSelectLocale, IMultiSelectLocaleKey } fro
4
4
  import { IMultiSelectListStyles } from './MultiSelectList.styles';
5
5
  export interface IMultiSelectListProps<Value, Option> extends ICommonProps<IMultiSelectListStyles> {
6
6
  value?: Value;
7
+ /** @default false */
7
8
  isSearchEnabled?: boolean;
8
9
  localeKey?: IMultiSelectLocaleKey;
9
10
  locale?: Partial<IMultiSelectLocale>;
@@ -14,7 +15,9 @@ export interface IMultiSelectListProps<Value, Option> extends ICommonProps<IMult
14
15
  getValueView?: (val: Option) => ReactNode;
15
16
  getValueId?: (val: Option) => string;
16
17
  getValueString?: (val: Option) => string;
18
+ /** @default по умолчанию значение совпадает с isSearchEnabled */
17
19
  isGroupingEnabled?: boolean;
20
+ /** @default 'left' */
18
21
  checkboxPosition?: 'left' | 'right';
19
22
  pageSize?: number;
20
23
  searchMaxLength?: number;
@@ -4,15 +4,11 @@ import { INotificationType } from './types';
4
4
  import { INotificationStyles } from './Notification.styles';
5
5
  export interface INotificationProps extends ICommonProps<INotificationStyles> {
6
6
  type: INotificationType;
7
- /**
8
- * @default true
9
- */
7
+ /** @default true */
10
8
  isFullWidth?: boolean;
11
9
  text?: string;
12
10
  title?: string;
13
- /**
14
- * @default `s`
15
- */
11
+ /** @default 's' */
16
12
  size?: 's' | 'm' | 'l';
17
13
  children?: ReactNode;
18
14
  }
@@ -1,3 +1,3 @@
1
1
  import { ITweakStyles } from '../../theme';
2
- export declare const useStyles: import("../../theme").IUseStyles<"content" | "error" | "root" | "inline" | "text" | "icon" | "warning" | "s" | "m" | "l" | "info" | "title" | "body" | "withText" | "withTitle" | "ok" | "not-ok", unknown>;
2
+ export declare const useStyles: import("../../theme").IUseStyles<"content" | "error" | "root" | "inline" | "text" | "icon" | "warning" | "s" | "m" | "l" | "body" | "info" | "title" | "withText" | "withTitle" | "ok" | "not-ok", unknown>;
3
3
  export type INotificationStyles = ITweakStyles<typeof useStyles>;
@@ -2,13 +2,17 @@ import { FormEvent } from 'react';
2
2
  import { IInputProps } from '../Input';
3
3
  export interface INumberInputProps extends Omit<IInputProps, 'value' | 'onChange' | 'type'> {
4
4
  value?: number;
5
+ /** @default 3 */
5
6
  precision?: number;
7
+ /** @default 7 */
6
8
  intPartPrecision?: number;
7
9
  defaultValue?: number;
10
+ /** @default false */
8
11
  canBeFloat?: boolean;
12
+ /** @default false */
9
13
  canBeNegative?: boolean;
10
14
  min?: number;
11
15
  max?: number;
12
- onChange(value: number | undefined, event?: FormEvent<HTMLInputElement>): void;
16
+ onChange: (value: number | undefined, event?: FormEvent<HTMLInputElement>) => void;
13
17
  }
14
18
  export declare const NumberInput: import("react").ForwardRefExoticComponent<INumberInputProps & import("react").RefAttributes<HTMLInputElement>>;