@alfalab/core-components-custom-picker-button 2.0.14 → 2.0.15

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 (41) hide show
  1. package/Component-0f4b9bed.d.ts +4 -21
  2. package/Component-10db897e.d.ts +265 -41
  3. package/Component-aed0af6e.d.ts +11 -0
  4. package/Component-ebda875c.d.ts +98 -9
  5. package/Component-f12ee135.d.ts +72 -0
  6. package/Component.desktop-4cd3936b.d.ts +49 -0
  7. package/Component.desktop-785df74d.d.ts +1 -1
  8. package/Component.mobile-96988a65.d.ts +6 -0
  9. package/Component.mobile-d7e9f69d.d.ts +1 -1
  10. package/Component.mobile.d.ts +9 -1
  11. package/{index-8b2c2707.d.ts → Component.responsive-0aa4e915.d.ts} +1 -2
  12. package/Component.responsive-d7e9f69d.d.ts +26 -0
  13. package/desktop-d446ae02.d.ts +2 -39
  14. package/esm/field/Component.js +1 -1
  15. package/esm/field/index.css +5 -5
  16. package/field/Component.js +1 -1
  17. package/field/index.css +5 -5
  18. package/hook-8abfea97.d.ts +4 -4
  19. package/hook-ebda875c.d.ts +48 -0
  20. package/index-89f0cb07.d.ts +2 -0
  21. package/index-bdb4c6b9.d.ts +180 -2
  22. package/index-c44170fe.d.ts +2 -17
  23. package/index-ebda875c.d.ts +200 -18
  24. package/index-f12ee135.d.ts +324 -3
  25. package/modern/field/Component.js +1 -1
  26. package/modern/field/index.css +5 -5
  27. package/package.json +3 -23
  28. package/shared-4cd3936b.d.ts +1 -60
  29. package/Component-69921c40.d.ts +0 -184
  30. package/Component-89f0cb07.d.ts +0 -38
  31. package/Component-8b2c2707.d.ts +0 -12
  32. package/Component.mobile-d446ae02.d.ts +0 -23
  33. package/Component.modal.mobile-0f4b9bed.d.ts +0 -60
  34. package/component-10db897e.d.ts +0 -44
  35. package/mobile-89f0cb07.d.ts +0 -2
  36. package/types-67a2d8af.d.ts +0 -276
  37. package/utils-1574ad8b.d.ts +0 -29
  38. package/utils-49cc3c24.d.ts +0 -8
  39. /package/{desktop-89f0cb07.d.ts → desktop-69921c40.d.ts} +0 -0
  40. /package/{mobile-d7e9f69d.d.ts → mobile-96988a65.d.ts} +0 -0
  41. /package/{useSkeleton-ebda875c.d.ts → useSkeleton-1b036d4b.d.ts} +0 -0
@@ -0,0 +1,26 @@
1
+ /// <reference types="react" />
2
+ import React from 'react';
3
+ import { BaseFormControlProps } from "./index-ebda875c";
4
+ type FormControlProps = Omit<BaseFormControlProps, 'styles' | 'colorStyles'> & {
5
+ /**
6
+ * Контрольная точка, с нее начинается desktop версия
7
+ * @default 1024
8
+ */
9
+ breakpoint?: number;
10
+ /**
11
+ * Значение по-умолчанию для хука useMatchMedia
12
+ */
13
+ defaultMatchMediaValue?: boolean | (() => boolean);
14
+ };
15
+ declare const FormControl: React.ForwardRefExoticComponent<Omit<BaseFormControlProps, "styles" | "colorStyles"> & {
16
+ /**
17
+ * Контрольная точка, с нее начинается desktop версия
18
+ * @default 1024
19
+ */
20
+ breakpoint?: number | undefined;
21
+ /**
22
+ * Значение по-умолчанию для хука useMatchMedia
23
+ */
24
+ defaultMatchMediaValue?: boolean | (() => boolean) | undefined;
25
+ } & React.RefAttributes<HTMLDivElement>>;
26
+ export { FormControlProps, FormControl };
@@ -1,39 +1,2 @@
1
- /// <reference types="react" />
2
- import React from "react";
3
- import { FC, SVGProps } from "react";
4
- import { ButtonProps } from "./index-8b2c2707";
5
- import { BaseSelectProps } from "./shared-4cd3936b";
6
- import { PickerButtonSize, PickerButtonVariant } from "./types-4480ac4f";
7
- type PickerButtonDesktopProps = Omit<BaseSelectProps, "placeholder" | "Arrow" | "autocomplete" | "size" | "onFocus" | "selected" | "closeOnSelect" | "multiple" | "hint" | "allowUnselect" | "options" | "searchProps" | "showSearch" | "Search"> & Pick<ButtonProps, "view" | "loading" | "leftAddons" | "rightAddons"> & {
8
- options: Array<BaseSelectProps["options"][0] & {
9
- /**
10
- * Иконка, отображающаяся слева от текстового представления пункта
11
- */
12
- icon?: FC<SVGProps<SVGSVGElement>>;
13
- }>;
14
- /**
15
- * Размер кнопки
16
- */
17
- size?: PickerButtonSize;
18
- /**
19
- * Тип кнопки
20
- */
21
- variant?: PickerButtonVariant;
22
- /**
23
- * Показывать стрелку
24
- * @default true
25
- */
26
- showArrow?: boolean;
27
- };
28
- declare const PickerButtonDesktop: React.ForwardRefExoticComponent<Omit<BaseSelectProps, "size" | "placeholder" | "onFocus" | "selected" | "multiple" | "hint" | "options" | "autocomplete" | "allowUnselect" | "closeOnSelect" | "searchProps" | "showSearch" | "Arrow" | "Search"> & Pick<ButtonProps, "view" | "leftAddons" | "rightAddons" | "loading"> & {
29
- options: Array<BaseSelectProps["options"][0] & {
30
- /**
31
- * Иконка, отображающаяся слева от текстового представления пункта
32
- */
33
- icon?: FC<SVGProps<SVGSVGElement>>;
34
- }>;
35
- size?: PickerButtonSize | undefined;
36
- variant?: PickerButtonVariant | undefined;
37
- showArrow?: boolean | undefined;
38
- } & React.RefAttributes<HTMLInputElement>>;
39
- export { PickerButtonDesktopProps, PickerButtonDesktop };
1
+ export { PickerButtonDesktop, PickerButtonDesktopProps } from "./Component.desktop-4cd3936b";
2
+ export {};
@@ -4,7 +4,7 @@ import cn from 'classnames';
4
4
  import { CustomButton } from '@alfalab/core-components-custom-button/esm';
5
5
  import { getIcon } from '@alfalab/core-components-picker-button/esm/shared';
6
6
 
7
- var styles = {"iconContainer":"custom-picker-button__iconContainer_1np8g","addonsContainer":"custom-picker-button__addonsContainer_1np8g","showControlIcon":"custom-picker-button__showControlIcon_1np8g","open":"custom-picker-button__open_1np8g"};
7
+ var styles = {"iconContainer":"custom-picker-button__iconContainer_18w4g","addonsContainer":"custom-picker-button__addonsContainer_18w4g","showControlIcon":"custom-picker-button__showControlIcon_18w4g","open":"custom-picker-button__open_18w4g"};
8
8
  require('./index.css')
9
9
 
10
10
  var Field = function (_a) {
@@ -1,4 +1,4 @@
1
- /* hash: z6055 */
1
+ /* hash: 316of */
2
2
  :root {
3
3
  } /* deprecated */ :root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
4
4
  } :root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
@@ -16,13 +16,13 @@
16
16
  } :root {
17
17
  } :root {
18
18
  --arrow-transform: rotate(180deg);
19
- } .custom-picker-button__iconContainer_1np8g {
19
+ } .custom-picker-button__iconContainer_18w4g {
20
20
  display: flex;
21
21
  transition: transform 0.15s ease-in-out;
22
- } .custom-picker-button__addonsContainer_1np8g {
22
+ } .custom-picker-button__addonsContainer_18w4g {
23
23
  display: flex
24
- } .custom-picker-button__addonsContainer_1np8g.custom-picker-button__showControlIcon_1np8g {
24
+ } .custom-picker-button__addonsContainer_18w4g.custom-picker-button__showControlIcon_18w4g {
25
25
  margin-right: var(--gap-2xs);
26
- } .custom-picker-button__open_1np8g {
26
+ } .custom-picker-button__open_18w4g {
27
27
  transform: var(--arrow-transform);
28
28
  }
@@ -13,7 +13,7 @@ function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'defau
13
13
  var React__default = /*#__PURE__*/_interopDefaultCompat(React);
14
14
  var cn__default = /*#__PURE__*/_interopDefaultCompat(cn);
15
15
 
16
- var styles = {"iconContainer":"custom-picker-button__iconContainer_1np8g","addonsContainer":"custom-picker-button__addonsContainer_1np8g","showControlIcon":"custom-picker-button__showControlIcon_1np8g","open":"custom-picker-button__open_1np8g"};
16
+ var styles = {"iconContainer":"custom-picker-button__iconContainer_18w4g","addonsContainer":"custom-picker-button__addonsContainer_18w4g","showControlIcon":"custom-picker-button__showControlIcon_18w4g","open":"custom-picker-button__open_18w4g"};
17
17
  require('./index.css')
18
18
 
19
19
  var Field = function (_a) {
package/field/index.css CHANGED
@@ -1,4 +1,4 @@
1
- /* hash: z6055 */
1
+ /* hash: 316of */
2
2
  :root {
3
3
  } /* deprecated */ :root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
4
4
  } :root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
@@ -16,13 +16,13 @@
16
16
  } :root {
17
17
  } :root {
18
18
  --arrow-transform: rotate(180deg);
19
- } .custom-picker-button__iconContainer_1np8g {
19
+ } .custom-picker-button__iconContainer_18w4g {
20
20
  display: flex;
21
21
  transition: transform 0.15s ease-in-out;
22
- } .custom-picker-button__addonsContainer_1np8g {
22
+ } .custom-picker-button__addonsContainer_18w4g {
23
23
  display: flex
24
- } .custom-picker-button__addonsContainer_1np8g.custom-picker-button__showControlIcon_1np8g {
24
+ } .custom-picker-button__addonsContainer_18w4g.custom-picker-button__showControlIcon_18w4g {
25
25
  margin-right: var(--gap-2xs);
26
- } .custom-picker-button__open_1np8g {
26
+ } .custom-picker-button__open_18w4g {
27
27
  transform: var(--arrow-transform);
28
28
  }
@@ -51,9 +51,9 @@ declare function useSelectWithApply({ options, selected, onChange, OptionsList,
51
51
  */
52
52
  selectedDraft?: OptionShape[] | undefined;
53
53
  OptionsList?: import("react").FC<import("./typings-0f4b9bed").OptionsListProps & import("react").RefAttributes<HTMLDivElement>> | undefined;
54
- Footer?: import("react").FC<import("./Component-0f4b9bed").FooterProps> | undefined;
55
- Header?: import("react").FC<import("./Component-ebda875c").HeaderProps> | undefined;
56
- headerProps?: import("./Component-ebda875c").HeaderProps | undefined;
54
+ Footer?: import("react").FC<import("./Component-ebda875c").FooterProps> | undefined;
55
+ Header?: import("react").FC<import("./Component-aed0af6e").HeaderProps> | undefined;
56
+ headerProps?: import("./Component-aed0af6e").HeaderProps | undefined;
57
57
  showHeaderWithSelectAll?: boolean | undefined;
58
58
  } & import("react").RefAttributes<HTMLDivElement>>;
59
59
  optionsListProps: {
@@ -86,5 +86,5 @@ declare function useSelectWithApply({ options, selected, onChange, OptionsList,
86
86
  accessor?: ((option: OptionShape) => string) | undefined;
87
87
  } | undefined;
88
88
  };
89
- export * from "./Component-0f4b9bed";
89
+ export * from "./Component-ebda875c";
90
90
  export { UseSelectWithApplyProps, SELECT_ALL_KEY, useSelectWithApply };
@@ -0,0 +1,48 @@
1
+ /// <reference types="react" />
2
+ import React from 'react';
3
+ import { OptionProps, OptionShape } from "./typings-0f4b9bed";
4
+ type OptionsFetcherResponse = {
5
+ options: OptionShape[];
6
+ hasMore: boolean;
7
+ };
8
+ type useLazyLoadingProps = {
9
+ /** Количество элементов на "странице" */
10
+ limit?: number;
11
+ /** Начальный номер "страницы" */
12
+ initialOffset?: number;
13
+ /** Скелетон загружаемых элементов */
14
+ skeleton?: React.ReactNode;
15
+ /** Компонент пункта меню */
16
+ Option?: React.FC<OptionProps>;
17
+ /**
18
+ * Функция-загрузчик опций.
19
+ * @param offset - текущая страница
20
+ * @param limit - количество элементов на странице
21
+ * @param queryString - строчные данные, пробрасываемые для поиска из кастомного инпута, расположенного в заголовке OptionsList
22
+ * @returns Promise<{
23
+ * options - список опций следующей "страницы". Они аппендятся к предыдущим
24
+ * hasMore - указывает, есть ли еще незагруженные элементы (в случае false перестает загружать "следующую страницу")
25
+ * }>
26
+ */
27
+ optionsFetcher(offset: number, limit: number, queryString?: string): Promise<OptionsFetcherResponse>;
28
+ };
29
+ declare function useLazyLoading({ limit, initialOffset, optionsFetcher, skeleton, Option, }: useLazyLoadingProps): {
30
+ optionsProps: {
31
+ Option: (props: OptionProps) => React.JSX.Element;
32
+ options: OptionShape[];
33
+ optionsListProps: {
34
+ ref: React.RefObject<HTMLDivElement>;
35
+ inputProps: {
36
+ onChange: (event: React.ChangeEvent<HTMLInputElement>, payload: {
37
+ value: string;
38
+ }) => void;
39
+ value: string;
40
+ };
41
+ };
42
+ onOpen: (payload: {
43
+ open?: boolean;
44
+ }) => void;
45
+ };
46
+ reset: () => void;
47
+ };
48
+ export { useLazyLoading };
@@ -0,0 +1,2 @@
1
+ export { Button } from "./Component.responsive-0aa4e915";
2
+ export type { ButtonProps } from "./typings-89f0cb07";
@@ -1,2 +1,180 @@
1
- export * from "./Component-ebda875c";
2
- export * from "./utils-1574ad8b";
1
+ /// <reference types="react" />
2
+ /// <reference types="react-transition-group" />
3
+ /* eslint-disable jsx-a11y/no-noninteractive-element-interactions */
4
+ import React from "react";
5
+ import { FC, KeyboardEvent, MouseEvent, MutableRefObject, ReactNode, Ref } from "react";
6
+ import { TransitionProps } from "react-transition-group/Transition";
7
+ import { BackdropProps, PortalProps } from "./index-ebda875c";
8
+ type BaseModalProps = {
9
+ /**
10
+ * Контент
11
+ */
12
+ children?: ReactNode;
13
+ /**
14
+ * Компонент бэкдропа
15
+ */
16
+ Backdrop?: FC<BackdropProps>;
17
+ /**
18
+ * Свойства для Бэкдропа
19
+ */
20
+ backdropProps?: Partial<BackdropProps> & Record<string, unknown>;
21
+ /**
22
+ * Нода, компонент или функция возвращающая их
23
+ *
24
+ * Контейнер к которому будут добавляться порталы
25
+ */
26
+ container?: PortalProps["getPortalContainer"];
27
+ /**
28
+ * Отключает автоматический перевод фокуса на модалку при открытии
29
+ * @default false
30
+ */
31
+ disableAutoFocus?: boolean;
32
+ /**
33
+ * Отключает ловушку фокуса
34
+ * @default false
35
+ */
36
+ disableFocusLock?: boolean;
37
+ /**
38
+ * Отключает восстановление фокуса на предыдущем элементе после закрытия модалки
39
+ * @default false
40
+ */
41
+ disableRestoreFocus?: boolean;
42
+ /**
43
+ * Отключает вызов `callback` при нажатии Escape
44
+ * @default false
45
+ */
46
+ disableEscapeKeyDown?: boolean;
47
+ /**
48
+ * Отключает вызов `callback` при клике на бэкдроп
49
+ * @default false
50
+ */
51
+ disableBackdropClick?: boolean;
52
+ /**
53
+ * Отключает блокировку скролла при открытии модального окна
54
+ * @default false
55
+ */
56
+ disableBlockingScroll?: boolean;
57
+ /**
58
+ * Содержимое модалки всегда в DOM
59
+ * @default false
60
+ */
61
+ keepMounted?: boolean;
62
+ /**
63
+ * Управление видимостью модалки
64
+ */
65
+ open: boolean;
66
+ /**
67
+ * Дополнительный класс
68
+ */
69
+ className?: string;
70
+ /**
71
+ * Дополнительный класс
72
+ */
73
+ contentClassName?: string;
74
+ /**
75
+ * Дополнительные пропсы на обертку контента
76
+ */
77
+ contentProps?: React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>;
78
+ /**
79
+ * Дополнительные пропсы на компонентную обертку контента
80
+ */
81
+ componentDivProps?: React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>;
82
+ /**
83
+ * Дополнительный класс для обертки (Modal)
84
+ */
85
+ wrapperClassName?: string;
86
+ /**
87
+ * Обработчик скролла контента
88
+ */
89
+ scrollHandler?: "wrapper" | "content" | MutableRefObject<HTMLDivElement | null>;
90
+ /**
91
+ * Пропсы для анимации (CSSTransition)
92
+ */
93
+ transitionProps?: Partial<TransitionProps>;
94
+ /**
95
+ * Рендерить ли в контейнер через портал.
96
+ * @default true
97
+ */
98
+ usePortal?: boolean;
99
+ /**
100
+ * Обработчик события нажатия на бэкдроп
101
+ */
102
+ onBackdropClick?: (event: MouseEvent) => void;
103
+ /**
104
+ * Обработчик события нажатия на Escape
105
+ *
106
+ * Если `disableEscapeKeyDown` - false и модальное окно в фокусе
107
+ */
108
+ onEscapeKeyDown?: (event: KeyboardEvent) => void;
109
+ /**
110
+ * Обработчик закрытия
111
+ */
112
+ onClose?: (event: MouseEvent<HTMLElement> | KeyboardEvent<HTMLElement>, reason?: "backdropClick" | "escapeKeyDown" | "closerClick") => void;
113
+ /**
114
+ * Обработчик события onEntered компонента Transition
115
+ */
116
+ onMount?: () => void;
117
+ /**
118
+ * Обработчик события onExited компонента Transition
119
+ */
120
+ onUnmount?: () => void;
121
+ /**
122
+ * Идентификатор для систем автоматизированного тестирования
123
+ */
124
+ dataTestId?: string;
125
+ /**
126
+ * z-index компонента
127
+ */
128
+ zIndex?: number;
129
+ /**
130
+ * Реф, который должен быть установлен компонентной области
131
+ */
132
+ componentRef?: MutableRefObject<HTMLDivElement | null>;
133
+ };
134
+ type BaseModalContext = {
135
+ parentRef: React.RefObject<HTMLDivElement>;
136
+ componentRef: React.RefObject<HTMLDivElement>;
137
+ hasFooter?: boolean;
138
+ hasHeader?: boolean;
139
+ hasScroll?: boolean;
140
+ headerHighlighted?: boolean;
141
+ footerHighlighted?: boolean;
142
+ headerOffset?: number;
143
+ setHeaderOffset: (offset: number) => void;
144
+ contentRef: Ref<HTMLElement>;
145
+ setHasHeader: (exists: boolean) => void;
146
+ setHasFooter: (exists: boolean) => void;
147
+ onClose: Required<BaseModalProps>["onClose"];
148
+ };
149
+ // eslint-disable-next-line @typescript-eslint/no-redeclare
150
+ declare const BaseModalContext: React.Context<BaseModalContext>;
151
+ declare const BaseModal: React.ForwardRefExoticComponent<BaseModalProps & React.RefAttributes<HTMLDivElement>>;
152
+ declare function isScrolledToTop(target: HTMLElement): boolean;
153
+ declare function isScrolledToBottom(target: HTMLElement): boolean;
154
+ declare function hasScrollbar(target: HTMLElement): boolean;
155
+ declare const getScrollbarSize: () => number;
156
+ declare const restoreContainerStyles: (container: HTMLElement) => void;
157
+ declare const handleContainer: (container?: HTMLElement) => void;
158
+ type SavedStyle = {
159
+ value: string;
160
+ key: string;
161
+ el: HTMLElement;
162
+ };
163
+ type RestoreStyle = {
164
+ container: HTMLElement;
165
+ modals: number;
166
+ styles: SavedStyle[];
167
+ };
168
+ declare class ModalStore {
169
+ private readonly restoreStyles;
170
+ constructor();
171
+ getRestoreStyles: () => RestoreStyle[];
172
+ }
173
+ declare const getModalStore: () => ModalStore;
174
+ declare class GlobalStore {
175
+ private readonly modalStore;
176
+ constructor();
177
+ getModalStore: () => ModalStore;
178
+ }
179
+ export { BaseModalProps, BaseModalContext, BaseModal, isScrolledToTop, isScrolledToBottom, hasScrollbar, getScrollbarSize, restoreContainerStyles, handleContainer, getModalStore, GlobalStore };
180
+ export type { SavedStyle };
@@ -1,18 +1,3 @@
1
1
  /// <reference types="react" />
2
- import React from "react";
3
- type FormControlProps = Omit<BaseFormControlProps, "styles" | "colorStyles"> & {
4
- /**
5
- * Контрольная точка, с нее начинается desktop версия
6
- * @default 1024
7
- */
8
- breakpoint?: number;
9
- /**
10
- * Значение по-умолчанию для хука useMatchMedia
11
- */
12
- defaultMatchMediaValue?: boolean | (() => boolean);
13
- };
14
- declare const FormControl: React.ForwardRefExoticComponent<Omit<BaseFormControlProps, "styles" | "colorStyles"> & {
15
- breakpoint?: number | undefined;
16
- defaultMatchMediaValue?: boolean | (() => boolean) | undefined;
17
- } & React.RefAttributes<HTMLDivElement>>;
18
- export { FormControlProps, FormControl };
2
+ export * from "./Component.responsive-d7e9f69d";
3
+ export {};
@@ -1,37 +1,219 @@
1
1
  /// <reference types="react" />
2
2
  /// <reference types="react-transition-group" />
3
3
  import React from "react";
4
- import { ButtonHTMLAttributes, ElementType, FC } from "react";
5
- interface CloserProps extends ButtonHTMLAttributes<HTMLButtonElement> {
4
+ import { HTMLAttributes } from "react";
5
+ type ScrollbarProps = {
6
6
  /**
7
- * Вид компонента
7
+ * Оборачиваемый элемент.
8
8
  */
9
- view: "desktop" | "mobile";
9
+ children?: React.ReactNode;
10
10
  /**
11
- * Дополнительный класс
11
+ * Дополнительный класс на корневой элемент.
12
12
  */
13
13
  className?: string;
14
14
  /**
15
- * Позиция крестика
15
+ * Набор цветов для компонента
16
16
  */
17
- align?: "left" | "right";
17
+ colors?: "default" | "inverted";
18
18
  /**
19
- * Фиксирует крестик
19
+ * Растягивать контент по горизонтали по ширине содержимого.
20
20
  */
21
- sticky?: boolean;
21
+ horizontalAutoStretch?: boolean;
22
22
  /**
23
- * Иконка
23
+ * Название css свойства, которое устанавливается на контейнер при horizontalAutoStretch.
24
24
  */
25
- icon?: ElementType;
25
+ widthPropName?: "minWidth" | "width" | "maxWidth";
26
26
  /**
27
- * Идентификатор для систем автоматизированного тестирования
27
+ * Включает автоскрытие ползунка.
28
28
  */
29
- dataTestId?: string;
29
+ autoHide?: boolean;
30
30
  /**
31
- * Коллбэк закрытия.
31
+ * Время в мс, определяющее задержку до исчезновения полосы прокрутки (при включенной опции autoHide).
32
32
  */
33
- onClose?: (event: React.MouseEvent<HTMLElement> | React.KeyboardEvent<HTMLElement>, reason?: "backdropClick" | "escapeKeyDown" | "closerClick") => void;
33
+ autoHideTimeout?: number;
34
+ /**
35
+ * Принудительное отображение полосы прокрутки.
36
+ */
37
+ forceVisible?: boolean | "x" | "y";
38
+ /**
39
+ * Управление поведением клика по треку.
40
+ * Если true, то будет выполняться прокрутка к месту клика.
41
+ */
42
+ clickOnTrack?: boolean;
43
+ /**
44
+ * HTML-aтрибуты на прокручиваемый узел.
45
+ */
46
+ scrollableNodeProps?: React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>;
47
+ /**
48
+ * HTML-aтрибуты на узел с контентом.
49
+ */
50
+ contentNodeProps?: React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>;
51
+ } & HTMLAttributes<HTMLDivElement>;
52
+ declare const Scrollbar: React.ForwardRefExoticComponent<{
53
+ children?: React.ReactNode;
54
+ className?: string | undefined;
55
+ colors?: "default" | "inverted" | undefined;
56
+ horizontalAutoStretch?: boolean | undefined;
57
+ widthPropName?: "width" | "minWidth" | "maxWidth" | undefined;
58
+ autoHide?: boolean | undefined;
59
+ autoHideTimeout?: number | undefined;
60
+ forceVisible?: boolean | "x" | "y" | undefined;
61
+ clickOnTrack?: boolean | undefined;
62
+ scrollableNodeProps?: React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement> | undefined;
63
+ contentNodeProps?: React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement> | undefined;
64
+ } & React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>;
65
+ declare class SimpleBar {
66
+ static getRtlHelpers(): {
67
+ isRtlScrollingInverted: boolean;
68
+ isRtlScrollbarInverted: boolean;
69
+ };
70
+ static defaultOptions: {
71
+ autoHide: boolean;
72
+ forceVisible: boolean;
73
+ clickOnTrack: boolean;
74
+ clickOnTrackSpeed: number;
75
+ classNames: {
76
+ contentEl: string;
77
+ contentWrapper: string;
78
+ offset: string;
79
+ mask: string;
80
+ wrapper: string;
81
+ placeholder: string;
82
+ scrollbar: string;
83
+ track: string;
84
+ heightAutoObserverWrapperEl: string;
85
+ heightAutoObserverEl: string;
86
+ visible: string;
87
+ horizontal: string;
88
+ vertical: string;
89
+ hover: string;
90
+ dragging: string;
91
+ };
92
+ scrollbarMinSize: number;
93
+ scrollbarMaxSize: number;
94
+ timeout: number;
95
+ };
96
+ static getOffset(el: any): {
97
+ top: any;
98
+ left: any;
99
+ };
100
+ static instances: WeakMap<object, any>;
101
+ constructor(element: any, options: any);
102
+ el: any;
103
+ minScrollbarWidth: number;
104
+ options: any;
105
+ classNames: any;
106
+ axis: {
107
+ x: {
108
+ scrollOffsetAttr: string;
109
+ sizeAttr: string;
110
+ scrollSizeAttr: string;
111
+ offsetSizeAttr: string;
112
+ offsetAttr: string;
113
+ overflowAttr: string;
114
+ dragOffset: number;
115
+ isOverflowing: boolean;
116
+ isVisible: boolean;
117
+ forceVisible: boolean;
118
+ track: {};
119
+ scrollbar: {};
120
+ };
121
+ y: {
122
+ scrollOffsetAttr: string;
123
+ sizeAttr: string;
124
+ scrollSizeAttr: string;
125
+ offsetSizeAttr: string;
126
+ offsetAttr: string;
127
+ overflowAttr: string;
128
+ dragOffset: number;
129
+ isOverflowing: boolean;
130
+ isVisible: boolean;
131
+ forceVisible: boolean;
132
+ track: {};
133
+ scrollbar: {};
134
+ };
135
+ };
136
+ removePreventClickId: any;
137
+ recalculate(): void;
138
+ onMouseMove: (e: any) => void;
139
+ hideScrollbars: () => void;
140
+ onWindowResize: () => void;
141
+ init(): void;
142
+ scrollbarWidth: any;
143
+ initDOM(): void;
144
+ wrapperEl: any;
145
+ contentWrapperEl: any;
146
+ contentEl: any;
147
+ offsetEl: any;
148
+ maskEl: any;
149
+ placeholderEl: any;
150
+ heightAutoObserverWrapperEl: any;
151
+ heightAutoObserverEl: any;
152
+ setAccessibilityAttributes(): void;
153
+ initListeners(): void;
154
+ resizeObserver: any;
155
+ mutationObserver: any;
156
+ elStyles: any;
157
+ isRtl: boolean | undefined;
158
+ getScrollbarSize(axis?: string): number;
159
+ positionScrollbar(axis?: string): void;
160
+ toggleTrackVisibility(axis?: string): void;
161
+ hideNativeScrollbar(): void;
162
+ onScroll: () => void;
163
+ scrollXTicking: boolean | undefined;
164
+ scrollYTicking: boolean | undefined;
165
+ scrollX: () => void;
166
+ scrollY: () => void;
167
+ onMouseEnter: () => void;
168
+ mouseX: any;
169
+ mouseY: any;
170
+ onMouseMoveForAxis(axis?: string): void;
171
+ onMouseLeave: () => void;
172
+ onMouseLeaveForAxis(axis?: string): void;
173
+ showScrollbar(axis?: string): void;
174
+ onPointerEvent: (e: any) => void;
175
+ onDragStart(e: any, axis?: string): void;
176
+ draggedAxis: string | undefined;
177
+ drag: (e: any) => void;
178
+ onEndDrag: (e: any) => void;
179
+ preventClick: (e: any) => void;
180
+ onTrackClick(e: any, axis?: string): void;
181
+ getContentElement(): any;
182
+ getScrollElement(): any;
183
+ getScrollbarWidth(): any;
184
+ removeListeners(): void;
185
+ unMount(): void;
186
+ isWithinBounds(bbox: any): boolean;
187
+ findChild(el: any, query: any): any;
188
+ }
189
+ declare function memoize(func: Function, resolver?: Function | undefined): Function;
190
+ declare namespace memoize$0 {
191
+ export { MapCache as Cache };
192
+ }
193
+ declare function MapCache(entries?: any[] | undefined): void;
194
+ declare class MapCache {
195
+ private constructor();
196
+ clear: typeof mapCacheClear;
197
+ delete: typeof mapCacheDelete;
198
+ get: typeof mapCacheGet;
199
+ has: typeof mapCacheHas;
200
+ set: typeof mapCacheSet;
201
+ }
202
+ declare function mapCacheClear(): void;
203
+ declare class mapCacheClear {
204
+ __data__: {
205
+ hash: Hash;
206
+ map: any;
207
+ string: Hash;
208
+ };
34
209
  }
35
- declare const Closer: FC<CloserProps>;
36
- export { CloserProps, Closer };
37
- export * from "./Component-8b2c2707";
210
+ declare function mapCacheDelete(key: string): boolean;
211
+ declare function mapCacheGet(key: string): any;
212
+ declare function mapCacheHas(key: string): boolean;
213
+ declare function mapCacheSet(key: string, value: any): Object;
214
+ declare var canUseDOM: boolean;
215
+ declare function scrollbarWidth(el: any): any;
216
+ declare function getElementWindow(element: any): any;
217
+ declare function getElementDocument(element: any): any;
218
+ declare function getOptions(obj: any): unknown;
219
+ export { memoize as default, ScrollbarProps, Scrollbar, getElementWindow, getElementDocument, getOptions };