@alfalab/core-components-tabs 7.2.4 → 7.2.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Component-0d7ca9a7.d.ts +40 -0
- package/Component-3e68f8db.d.ts +11 -0
- package/Component-3fe0d3e6.d.ts +234 -0
- package/Component-85892853.d.ts +5 -0
- package/Component-97288072.d.ts +49 -0
- package/Component-bdb4c6b9.d.ts +12 -0
- package/Component-db573794.d.ts +33 -0
- package/Component-e67996e9.d.ts +168 -0
- package/Component-ebda875c.d.ts +135 -0
- package/Context-bdb4c6b9.d.ts +4 -0
- package/ResponsiveContext-baf4875b.d.ts +5 -0
- package/components/primary-tablist/Component.desktop.js +3 -3
- package/components/primary-tablist/Component.js +2 -2
- package/components/primary-tablist/Component.mobile.js +4 -4
- package/components/primary-tablist/Component.responsive.js +3 -3
- package/components/primary-tablist/index.css +29 -29
- package/components/primary-tablist/mobile.css +32 -32
- package/components/scrollable-container/Component.js +1 -1
- package/components/scrollable-container/index.css +5 -5
- package/components/secondary-tablist/Component.desktop.js +2 -2
- package/components/secondary-tablist/Component.js +1 -1
- package/components/secondary-tablist/Component.mobile.js +3 -3
- package/components/secondary-tablist/Component.responsive.js +2 -2
- package/components/secondary-tablist/index.css +11 -11
- package/components/secondary-tablist/mobile.css +13 -13
- package/components/tab/Component.js +1 -1
- package/components/tab/index.css +3 -3
- package/components/tabs/Component.desktop.js +4 -4
- package/components/tabs/Component.mobile.js +4 -4
- package/components/tabs/Component.responsive.js +4 -4
- package/components/title/Component.js +1 -1
- package/components/title/index.js +1 -1
- package/cssm/Component-0d7ca9a7.d.ts +40 -0
- package/cssm/Component-3e68f8db.d.ts +11 -0
- package/cssm/Component-3fe0d3e6.d.ts +234 -0
- package/cssm/Component-85892853.d.ts +5 -0
- package/cssm/Component-97288072.d.ts +49 -0
- package/cssm/Component-bdb4c6b9.d.ts +12 -0
- package/cssm/Component-db573794.d.ts +33 -0
- package/cssm/Component-e67996e9.d.ts +168 -0
- package/cssm/Component-ebda875c.d.ts +135 -0
- package/cssm/Context-bdb4c6b9.d.ts +4 -0
- package/cssm/ResponsiveContext-baf4875b.d.ts +5 -0
- package/cssm/components/primary-tablist/Component.desktop.js +1 -1
- package/cssm/components/primary-tablist/Component.js +1 -1
- package/cssm/components/primary-tablist/Component.mobile.js +1 -1
- package/cssm/components/primary-tablist/Component.responsive.js +1 -1
- package/cssm/components/tabs/Component.desktop.js +1 -1
- package/cssm/components/tabs/Component.mobile.js +1 -1
- package/cssm/components/tabs/Component.responsive.js +1 -1
- package/cssm/desktop.js +1 -1
- package/cssm/getDataTestId-3fe0d3e6.d.ts +2 -0
- package/cssm/hook-edac5428.d.ts +54 -0
- package/cssm/index-0d7ca9a7.d.ts +27 -0
- package/cssm/index-136acbb1.d.ts +28 -0
- package/cssm/index-3e68f8db.d.ts +98 -0
- package/cssm/index-3fe0d3e6.d.ts +1 -0
- package/cssm/index-48646db0.d.ts +2 -0
- package/cssm/index-7ca84eff.d.ts +196 -0
- package/cssm/index-bdb4c6b9.d.ts +2 -0
- package/cssm/index-e67996e9.d.ts +1 -0
- package/cssm/index-ebda875c.d.ts +3 -0
- package/cssm/index.js +1 -1
- package/cssm/mobile.js +1 -1
- package/cssm/responsive.js +1 -1
- package/cssm/typings-85892853.d.ts +553 -0
- package/cssm/typings-bdb4c6b9.d.ts +52 -0
- package/cssm/utils-1574ad8b.d.ts +28 -0
- package/cssm/utils-85892853.d.ts +38 -0
- package/desktop.js +4 -4
- package/esm/Component-0d7ca9a7.d.ts +40 -0
- package/esm/Component-3e68f8db.d.ts +11 -0
- package/esm/Component-3fe0d3e6.d.ts +234 -0
- package/esm/Component-85892853.d.ts +5 -0
- package/esm/Component-97288072.d.ts +49 -0
- package/esm/Component-bdb4c6b9.d.ts +12 -0
- package/esm/Component-db573794.d.ts +33 -0
- package/esm/Component-e67996e9.d.ts +168 -0
- package/esm/Component-ebda875c.d.ts +135 -0
- package/esm/Context-bdb4c6b9.d.ts +4 -0
- package/esm/ResponsiveContext-baf4875b.d.ts +5 -0
- package/esm/components/primary-tablist/Component.desktop.js +3 -3
- package/esm/components/primary-tablist/Component.js +2 -2
- package/esm/components/primary-tablist/Component.mobile.js +4 -4
- package/esm/components/primary-tablist/Component.responsive.js +3 -3
- package/esm/components/primary-tablist/index.css +29 -29
- package/esm/components/primary-tablist/mobile.css +32 -32
- package/esm/components/scrollable-container/Component.js +1 -1
- package/esm/components/scrollable-container/index.css +5 -5
- package/esm/components/secondary-tablist/Component.desktop.js +2 -2
- package/esm/components/secondary-tablist/Component.js +1 -1
- package/esm/components/secondary-tablist/Component.mobile.js +3 -3
- package/esm/components/secondary-tablist/Component.responsive.js +2 -2
- package/esm/components/secondary-tablist/index.css +11 -11
- package/esm/components/secondary-tablist/mobile.css +13 -13
- package/esm/components/tab/Component.js +1 -1
- package/esm/components/tab/index.css +3 -3
- package/esm/components/tabs/Component.desktop.js +4 -4
- package/esm/components/tabs/Component.mobile.js +4 -4
- package/esm/components/tabs/Component.responsive.js +4 -4
- package/esm/components/title/Component.js +1 -1
- package/esm/components/title/index.js +1 -1
- package/esm/desktop.js +4 -4
- package/esm/getDataTestId-3fe0d3e6.d.ts +2 -0
- package/esm/hook-edac5428.d.ts +54 -0
- package/esm/hooks/use-collapsible-elements.js +1 -1
- package/esm/hooks/use-tablist-titles.js +1 -1
- package/esm/index-0d7ca9a7.d.ts +27 -0
- package/esm/index-136acbb1.d.ts +28 -0
- package/esm/index-3e68f8db.d.ts +98 -0
- package/esm/index-3fe0d3e6.d.ts +1 -0
- package/esm/index-48646db0.d.ts +2 -0
- package/esm/index-7ca84eff.d.ts +196 -0
- package/esm/index-bdb4c6b9.d.ts +2 -0
- package/esm/index-e67996e9.d.ts +1 -0
- package/esm/index-ebda875c.d.ts +3 -0
- package/esm/index.js +4 -4
- package/esm/index.module-06a4ba0a.js +4 -0
- package/esm/index.module-fff420f1.js +4 -0
- package/esm/mobile.js +4 -4
- package/esm/responsive.js +4 -4
- package/esm/synthetic-events.js +1 -1
- package/esm/{tslib.es6-c7045249.d.ts → tslib.es6-442504cd.d.ts} +0 -0
- package/esm/{tslib.es6-c7045249.js → tslib.es6-442504cd.js} +0 -0
- package/esm/typings-85892853.d.ts +553 -0
- package/esm/typings-bdb4c6b9.d.ts +52 -0
- package/esm/utils-1574ad8b.d.ts +28 -0
- package/esm/utils-85892853.d.ts +38 -0
- package/getDataTestId-3fe0d3e6.d.ts +2 -0
- package/hook-edac5428.d.ts +54 -0
- package/hooks/use-collapsible-elements.js +1 -1
- package/hooks/use-tablist-titles.js +1 -1
- package/index-0d7ca9a7.d.ts +27 -0
- package/index-136acbb1.d.ts +28 -0
- package/index-3e68f8db.d.ts +98 -0
- package/index-3fe0d3e6.d.ts +1 -0
- package/index-48646db0.d.ts +2 -0
- package/index-7ca84eff.d.ts +196 -0
- package/index-bdb4c6b9.d.ts +2 -0
- package/index-e67996e9.d.ts +1 -0
- package/index-ebda875c.d.ts +3 -0
- package/index.js +4 -4
- package/index.module-a1b32357.js +6 -0
- package/index.module-cfa18052.js +6 -0
- package/mobile.js +4 -4
- package/modern/Component-0d7ca9a7.d.ts +40 -0
- package/modern/Component-3e68f8db.d.ts +11 -0
- package/modern/Component-3fe0d3e6.d.ts +234 -0
- package/modern/Component-85892853.d.ts +5 -0
- package/modern/Component-97288072.d.ts +49 -0
- package/modern/Component-bdb4c6b9.d.ts +12 -0
- package/modern/Component-db573794.d.ts +33 -0
- package/modern/Component-e67996e9.d.ts +168 -0
- package/modern/Component-ebda875c.d.ts +135 -0
- package/modern/Context-bdb4c6b9.d.ts +4 -0
- package/modern/ResponsiveContext-baf4875b.d.ts +5 -0
- package/modern/components/primary-tablist/Component.desktop.js +2 -2
- package/modern/components/primary-tablist/Component.js +1 -1
- package/modern/components/primary-tablist/Component.mobile.js +3 -3
- package/modern/components/primary-tablist/Component.responsive.js +2 -2
- package/modern/components/primary-tablist/index.css +29 -29
- package/modern/components/primary-tablist/mobile.css +32 -32
- package/modern/components/scrollable-container/Component.js +1 -1
- package/modern/components/scrollable-container/index.css +5 -5
- package/modern/components/secondary-tablist/Component.desktop.js +1 -1
- package/modern/components/secondary-tablist/Component.mobile.js +2 -2
- package/modern/components/secondary-tablist/Component.responsive.js +1 -1
- package/modern/components/secondary-tablist/index.css +11 -11
- package/modern/components/secondary-tablist/mobile.css +13 -13
- package/modern/components/tab/Component.js +1 -1
- package/modern/components/tab/index.css +3 -3
- package/modern/components/tabs/Component.desktop.js +3 -3
- package/modern/components/tabs/Component.mobile.js +3 -3
- package/modern/components/tabs/Component.responsive.js +3 -3
- package/modern/desktop.js +3 -3
- package/modern/getDataTestId-3fe0d3e6.d.ts +2 -0
- package/modern/hook-edac5428.d.ts +54 -0
- package/modern/index-0d7ca9a7.d.ts +27 -0
- package/modern/index-136acbb1.d.ts +28 -0
- package/modern/index-3e68f8db.d.ts +98 -0
- package/modern/index-3fe0d3e6.d.ts +1 -0
- package/modern/index-48646db0.d.ts +2 -0
- package/modern/index-7ca84eff.d.ts +196 -0
- package/modern/index-bdb4c6b9.d.ts +2 -0
- package/modern/index-e67996e9.d.ts +1 -0
- package/modern/index-ebda875c.d.ts +3 -0
- package/modern/index.js +3 -3
- package/modern/index.module-06a4ba0a.js +4 -0
- package/modern/index.module-fff420f1.js +4 -0
- package/modern/mobile.js +3 -3
- package/modern/responsive.js +3 -3
- package/modern/typings-85892853.d.ts +553 -0
- package/modern/typings-bdb4c6b9.d.ts +52 -0
- package/modern/utils-1574ad8b.d.ts +28 -0
- package/modern/utils-85892853.d.ts +38 -0
- package/package.json +1 -1
- package/responsive.js +4 -4
- package/synthetic-events.js +1 -1
- package/{tslib.es6-f581fd25.d.ts → tslib.es6-e85b77d3.d.ts} +0 -0
- package/{tslib.es6-f581fd25.js → tslib.es6-e85b77d3.js} +0 -0
- package/typings-85892853.d.ts +553 -0
- package/typings-bdb4c6b9.d.ts +52 -0
- package/utils-1574ad8b.d.ts +28 -0
- package/utils-85892853.d.ts +38 -0
- package/esm/index.module-0d5bb957.js +0 -4
- package/esm/index.module-464ce309.js +0 -4
- package/index.module-1f2c27dd.js +0 -6
- package/index.module-4ae8ce0c.js +0 -6
- package/modern/index.module-0d5bb957.js +0 -4
- package/modern/index.module-464ce309.js +0 -4
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import React from 'react';
|
|
3
|
+
import { FC, SVGProps } from "react";
|
|
4
|
+
import { ButtonProps } from "./index-ebda875c";
|
|
5
|
+
import { BaseSelectProps } from "./index-3e68f8db";
|
|
6
|
+
type PickerButtonSize = 'xxs' | 'xs' | 's' | 'm' | 'l' | 'xl';
|
|
7
|
+
type PickerButtonVariant = 'default' | 'compact';
|
|
8
|
+
type PickerButtonDesktopProps = Omit<BaseSelectProps, 'Field' | 'placeholder' | 'Arrow' | 'autocomplete' | 'size' | 'onFocus' | 'selected' | 'closeOnSelect' | 'multiple' | 'fieldProps' | 'hint' | 'allowUnselect' | 'options'> & Pick<ButtonProps, 'view' | 'loading' | 'leftAddons' | 'rightAddons'> & {
|
|
9
|
+
options: Array<BaseSelectProps['options'][0] & {
|
|
10
|
+
/**
|
|
11
|
+
* Иконка, отображающаяся слева от текстового представления пункта
|
|
12
|
+
*/
|
|
13
|
+
icon?: FC<SVGProps<SVGSVGElement>>;
|
|
14
|
+
}>;
|
|
15
|
+
/**
|
|
16
|
+
* Размер кнопки
|
|
17
|
+
*/
|
|
18
|
+
size?: PickerButtonSize;
|
|
19
|
+
/**
|
|
20
|
+
* Тип кнопки
|
|
21
|
+
*/
|
|
22
|
+
variant?: PickerButtonVariant;
|
|
23
|
+
};
|
|
24
|
+
declare const PickerButtonDesktop: React.ForwardRefExoticComponent<Omit<BaseSelectProps, "placeholder" | "onFocus" | "size" | "selected" | "multiple" | "hint" | "options" | "autocomplete" | "allowUnselect" | "closeOnSelect" | "fieldProps" | "Arrow" | "Field"> & Pick<ButtonProps, "rightAddons" | "leftAddons" | "view" | "loading"> & {
|
|
25
|
+
options: Array<BaseSelectProps['options'][0] & {
|
|
26
|
+
/**
|
|
27
|
+
* Иконка, отображающаяся слева от текстового представления пункта
|
|
28
|
+
*/
|
|
29
|
+
icon?: FC<SVGProps<SVGSVGElement>>;
|
|
30
|
+
}>;
|
|
31
|
+
/**
|
|
32
|
+
* Размер кнопки
|
|
33
|
+
*/
|
|
34
|
+
size?: PickerButtonSize | undefined;
|
|
35
|
+
/**
|
|
36
|
+
* Тип кнопки
|
|
37
|
+
*/
|
|
38
|
+
variant?: PickerButtonVariant | undefined;
|
|
39
|
+
} & React.RefAttributes<HTMLInputElement>>;
|
|
40
|
+
export { PickerButtonSize, PickerButtonVariant, PickerButtonDesktopProps, PickerButtonDesktop };
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { FC, SVGProps } from 'react';
|
|
3
|
+
import { OptionShape } from "./typings-85892853";
|
|
4
|
+
import { OptionProps as BaseOptionProps } from "./typings-85892853";
|
|
5
|
+
type OptionProps = Omit<BaseOptionProps, 'option'> & {
|
|
6
|
+
option: OptionShape & {
|
|
7
|
+
icon?: FC<SVGProps<SVGSVGElement>>;
|
|
8
|
+
};
|
|
9
|
+
};
|
|
10
|
+
declare const Option: ({ option, children, ...restProps }: OptionProps) => JSX.Element;
|
|
11
|
+
export { Option };
|
|
@@ -0,0 +1,234 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { ButtonHTMLAttributes, ElementType, FC, ForwardRefExoticComponent, RefAttributes, HTMLAttributes, ReactNode } from "react";
|
|
3
|
+
import { IconButtonProps } from "./index-ebda875c";
|
|
4
|
+
import { BottomSheetTitleAlign } from "./index-7ca84eff";
|
|
5
|
+
type CloserProps = ButtonHTMLAttributes<HTMLButtonElement> & {
|
|
6
|
+
/**
|
|
7
|
+
* Дополнительный класс
|
|
8
|
+
*/
|
|
9
|
+
className?: string;
|
|
10
|
+
/**
|
|
11
|
+
* Размер кнопки
|
|
12
|
+
*/
|
|
13
|
+
size?: IconButtonProps["size"];
|
|
14
|
+
/**
|
|
15
|
+
* Идентификатор для систем автоматизированного тестирования
|
|
16
|
+
*/
|
|
17
|
+
dataTestId?: string;
|
|
18
|
+
/**
|
|
19
|
+
* Иконка
|
|
20
|
+
*/
|
|
21
|
+
icon?: ElementType;
|
|
22
|
+
};
|
|
23
|
+
declare const Closer: React.FC<CloserProps>;
|
|
24
|
+
declare const colors: readonly [
|
|
25
|
+
"tertiary",
|
|
26
|
+
"disabled",
|
|
27
|
+
"accent",
|
|
28
|
+
"primary",
|
|
29
|
+
"attention",
|
|
30
|
+
"positive",
|
|
31
|
+
"secondary",
|
|
32
|
+
"tertiary-inverted",
|
|
33
|
+
"primary-inverted",
|
|
34
|
+
"secondary-inverted",
|
|
35
|
+
"link",
|
|
36
|
+
"negative"
|
|
37
|
+
];
|
|
38
|
+
type Color = typeof colors[number];
|
|
39
|
+
type TextElementType = HTMLParagraphElement | HTMLSpanElement | HTMLDivElement;
|
|
40
|
+
type NativeProps = HTMLAttributes<HTMLSpanElement>;
|
|
41
|
+
type TextBaseProps = {
|
|
42
|
+
/**
|
|
43
|
+
* [Вариант начертания](https://core-ds.github.io/core-components/master/?path=/docs/инструкции-типографика--page)
|
|
44
|
+
*/
|
|
45
|
+
view?: "primary-large" | "primary-medium" | "primary-small" | "secondary-large" | "secondary-medium" | "secondary-small" | "component" | "caps";
|
|
46
|
+
/**
|
|
47
|
+
* Цвет текста
|
|
48
|
+
*/
|
|
49
|
+
color?: Color;
|
|
50
|
+
/**
|
|
51
|
+
* Толщина шрифта
|
|
52
|
+
*/
|
|
53
|
+
weight?: "regular" | "medium" | "bold";
|
|
54
|
+
/**
|
|
55
|
+
* Делает цифры моноширинными
|
|
56
|
+
*/
|
|
57
|
+
monospaceNumbers?: boolean;
|
|
58
|
+
/**
|
|
59
|
+
* HTML тег
|
|
60
|
+
*/
|
|
61
|
+
tag?: "span" | "div";
|
|
62
|
+
/**
|
|
63
|
+
* Css-класс для стилизации (native prop)
|
|
64
|
+
*/
|
|
65
|
+
className?: string;
|
|
66
|
+
/**
|
|
67
|
+
* Id компонента для тестов
|
|
68
|
+
*/
|
|
69
|
+
dataTestId?: string;
|
|
70
|
+
/**
|
|
71
|
+
* Контент (native prop)
|
|
72
|
+
*/
|
|
73
|
+
children?: React.ReactNode;
|
|
74
|
+
/**
|
|
75
|
+
* Добавляет отступы к тэгу 'p'
|
|
76
|
+
*/
|
|
77
|
+
defaultMargins?: never;
|
|
78
|
+
};
|
|
79
|
+
type TextPTagProps = Omit<TextBaseProps, "tag" | "defaultMargins"> & {
|
|
80
|
+
tag?: "p";
|
|
81
|
+
defaultMargins?: boolean;
|
|
82
|
+
};
|
|
83
|
+
type TextProps = Omit<NativeProps, "color"> & (TextBaseProps | TextPTagProps);
|
|
84
|
+
type NativeProps$0 = HTMLAttributes<HTMLHeadingElement>;
|
|
85
|
+
type TitleProps = Omit<NativeProps$0, "color"> & {
|
|
86
|
+
/**
|
|
87
|
+
* HTML тег
|
|
88
|
+
*/
|
|
89
|
+
tag: "h1" | "h2" | "h3" | "h4" | "h5" | "h6" | "div";
|
|
90
|
+
/**
|
|
91
|
+
* [Вариант начертания](https://core-ds.github.io/core-components/master/?path=/docs/инструкции-типографика--page)
|
|
92
|
+
*/
|
|
93
|
+
view?: "xlarge" | "large" | "medium" | "small" | "xsmall";
|
|
94
|
+
/**
|
|
95
|
+
* Цвет текста
|
|
96
|
+
*/
|
|
97
|
+
color?: Color;
|
|
98
|
+
/**
|
|
99
|
+
* Толщина шрифта
|
|
100
|
+
*/
|
|
101
|
+
weight?: "regular" | "medium" | "bold";
|
|
102
|
+
/**
|
|
103
|
+
* Шрифт текста
|
|
104
|
+
*/
|
|
105
|
+
font?: "styrene" | "system";
|
|
106
|
+
/**
|
|
107
|
+
* Добавляет отступы
|
|
108
|
+
*/
|
|
109
|
+
defaultMargins?: boolean;
|
|
110
|
+
/**
|
|
111
|
+
* Css-класс для стилизации (native prop)
|
|
112
|
+
*/
|
|
113
|
+
className?: string;
|
|
114
|
+
/**
|
|
115
|
+
* Id компонента для тестов
|
|
116
|
+
*/
|
|
117
|
+
dataTestId?: string;
|
|
118
|
+
/**
|
|
119
|
+
* Контент (native prop)
|
|
120
|
+
*/
|
|
121
|
+
children?: React.ReactNode;
|
|
122
|
+
};
|
|
123
|
+
type TitleMobileProps = Omit<TitleProps, "defaultMargins">;
|
|
124
|
+
declare const Typography: {
|
|
125
|
+
Title: FC<TitleProps>;
|
|
126
|
+
Text: ForwardRefExoticComponent<TextProps & RefAttributes<TextElementType>>;
|
|
127
|
+
TitleResponsive: FC<TitleProps>;
|
|
128
|
+
TitleMobile: FC<TitleMobileProps>;
|
|
129
|
+
};
|
|
130
|
+
declare const typographyPresets: {
|
|
131
|
+
mobile: {
|
|
132
|
+
list: {
|
|
133
|
+
text: {
|
|
134
|
+
primary: {
|
|
135
|
+
tag: string;
|
|
136
|
+
view: string;
|
|
137
|
+
};
|
|
138
|
+
secondary: {
|
|
139
|
+
tag: string;
|
|
140
|
+
color: string;
|
|
141
|
+
view: string;
|
|
142
|
+
};
|
|
143
|
+
};
|
|
144
|
+
};
|
|
145
|
+
};
|
|
146
|
+
};
|
|
147
|
+
type BackerProps = ButtonHTMLAttributes<HTMLButtonElement> & {
|
|
148
|
+
/**
|
|
149
|
+
* Дополнительный класс
|
|
150
|
+
*/
|
|
151
|
+
className?: string;
|
|
152
|
+
/**
|
|
153
|
+
* Размер кнопки
|
|
154
|
+
*/
|
|
155
|
+
size?: IconButtonProps["size"];
|
|
156
|
+
/**
|
|
157
|
+
* Иконка
|
|
158
|
+
*/
|
|
159
|
+
icon?: ElementType;
|
|
160
|
+
/**
|
|
161
|
+
* Идентификатор для систем автоматизированного тестирования
|
|
162
|
+
*/
|
|
163
|
+
dataTestId?: string;
|
|
164
|
+
/**
|
|
165
|
+
* Обработчик нажатия
|
|
166
|
+
*/
|
|
167
|
+
onClick?: () => void;
|
|
168
|
+
};
|
|
169
|
+
declare const Backer: React.FC<BackerProps>;
|
|
170
|
+
declare const TitleResponsive: FC<TitleProps>;
|
|
171
|
+
type HeaderProps = {
|
|
172
|
+
/**
|
|
173
|
+
* Заголовок
|
|
174
|
+
*/
|
|
175
|
+
title?: ReactNode;
|
|
176
|
+
/**
|
|
177
|
+
* Дополнительный класс
|
|
178
|
+
*/
|
|
179
|
+
headerClassName?: string;
|
|
180
|
+
/**
|
|
181
|
+
* Дополнительный класс для аддонов
|
|
182
|
+
*/
|
|
183
|
+
addonClassName?: string;
|
|
184
|
+
/**
|
|
185
|
+
* Дополнительный класс для компонента крестика
|
|
186
|
+
*/
|
|
187
|
+
closerClassName?: string;
|
|
188
|
+
/**
|
|
189
|
+
* Дополнительный класс для компонента стрелки назад
|
|
190
|
+
*/
|
|
191
|
+
backerClassName?: string;
|
|
192
|
+
/**
|
|
193
|
+
* Слот слева
|
|
194
|
+
*/
|
|
195
|
+
leftAddons?: ReactNode;
|
|
196
|
+
/**
|
|
197
|
+
* Слот справа
|
|
198
|
+
*/
|
|
199
|
+
rightAddons?: ReactNode;
|
|
200
|
+
/**
|
|
201
|
+
* Слот снизу
|
|
202
|
+
*/
|
|
203
|
+
bottomAddons?: ReactNode;
|
|
204
|
+
/**
|
|
205
|
+
* Наличие компонента крестика
|
|
206
|
+
*/
|
|
207
|
+
hasCloser?: boolean;
|
|
208
|
+
/**
|
|
209
|
+
* Наличие компонента стрелки назад
|
|
210
|
+
*/
|
|
211
|
+
hasBacker?: boolean;
|
|
212
|
+
/**
|
|
213
|
+
* Выравнивание заголовка
|
|
214
|
+
*/
|
|
215
|
+
titleAlign?: BottomSheetTitleAlign;
|
|
216
|
+
/**
|
|
217
|
+
* Будет ли обрезан заголовок
|
|
218
|
+
*/
|
|
219
|
+
trimTitle?: boolean;
|
|
220
|
+
/**
|
|
221
|
+
* Фиксирует шапку
|
|
222
|
+
*/
|
|
223
|
+
sticky?: boolean;
|
|
224
|
+
/**
|
|
225
|
+
* Идентификатор для систем автоматизированного тестирования
|
|
226
|
+
*/
|
|
227
|
+
dataTestId?: string;
|
|
228
|
+
/**
|
|
229
|
+
* Обработчик нажатия на стрелку назад
|
|
230
|
+
*/
|
|
231
|
+
onBack?: () => void;
|
|
232
|
+
};
|
|
233
|
+
declare const Header: FC<HeaderProps>;
|
|
234
|
+
export { CloserProps, Closer, Typography, typographyPresets, TitleProps, TextProps, Color, BackerProps, Backer, TitleResponsive, HeaderProps, Header };
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { FC, ReactNode } from 'react';
|
|
2
|
+
type HeaderProps = {
|
|
3
|
+
/**
|
|
4
|
+
* Контент шапки
|
|
5
|
+
*/
|
|
6
|
+
children?: ReactNode;
|
|
7
|
+
/**
|
|
8
|
+
* Слот слева
|
|
9
|
+
*/
|
|
10
|
+
leftAddons?: ReactNode;
|
|
11
|
+
/**
|
|
12
|
+
* Наличие компонента крестика
|
|
13
|
+
*/
|
|
14
|
+
hasCloser?: ReactNode;
|
|
15
|
+
/**
|
|
16
|
+
* Дополнительный класс
|
|
17
|
+
*/
|
|
18
|
+
className?: string;
|
|
19
|
+
/**
|
|
20
|
+
* Дополнительный класс для аддонов
|
|
21
|
+
*/
|
|
22
|
+
addonClassName?: string;
|
|
23
|
+
/**
|
|
24
|
+
* Дополнительный класс для контента
|
|
25
|
+
*/
|
|
26
|
+
contentClassName?: string;
|
|
27
|
+
/**
|
|
28
|
+
* Заголовок шапки
|
|
29
|
+
*/
|
|
30
|
+
title?: string;
|
|
31
|
+
/**
|
|
32
|
+
* Выравнивание заголовка
|
|
33
|
+
*/
|
|
34
|
+
align?: 'left' | 'center';
|
|
35
|
+
/**
|
|
36
|
+
* Обрезать ли заголовок
|
|
37
|
+
*/
|
|
38
|
+
trim?: boolean;
|
|
39
|
+
/**
|
|
40
|
+
* Фиксирует шапку
|
|
41
|
+
*/
|
|
42
|
+
sticky?: boolean;
|
|
43
|
+
/**
|
|
44
|
+
* Идентификатор для систем автоматизированного тестирования
|
|
45
|
+
*/
|
|
46
|
+
dataTestId?: string;
|
|
47
|
+
};
|
|
48
|
+
declare const Header: FC<HeaderProps>;
|
|
49
|
+
export { HeaderProps, Header };
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import React from 'react';
|
|
3
|
+
import { View } from "./typings-bdb4c6b9";
|
|
4
|
+
declare const Modal: React.ForwardRefExoticComponent<import("./index-bdb4c6b9").BaseModalProps & {
|
|
5
|
+
size?: "s" | "m" | "l" | "xl" | "fullscreen" | undefined;
|
|
6
|
+
fullscreen?: boolean | undefined;
|
|
7
|
+
fixedPosition?: boolean | undefined;
|
|
8
|
+
hasCloser?: boolean | undefined;
|
|
9
|
+
} & {
|
|
10
|
+
view: View;
|
|
11
|
+
} & React.RefAttributes<HTMLDivElement>>;
|
|
12
|
+
export { Modal };
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { ButtonHTMLAttributes, ElementType, FC } from 'react';
|
|
2
|
+
import { IconButtonProps } from "./index-ebda875c";
|
|
3
|
+
type CloserProps = ButtonHTMLAttributes<HTMLButtonElement> & {
|
|
4
|
+
/**
|
|
5
|
+
* Дополнительный класс
|
|
6
|
+
*/
|
|
7
|
+
className?: string;
|
|
8
|
+
/**
|
|
9
|
+
* Позиция крестика
|
|
10
|
+
*/
|
|
11
|
+
align?: 'left' | 'right';
|
|
12
|
+
/**
|
|
13
|
+
* Размер кнопки
|
|
14
|
+
*/
|
|
15
|
+
size?: IconButtonProps['size'];
|
|
16
|
+
/**
|
|
17
|
+
* Фиксирует крестик
|
|
18
|
+
*/
|
|
19
|
+
sticky?: boolean;
|
|
20
|
+
/**
|
|
21
|
+
* Иконка
|
|
22
|
+
*/
|
|
23
|
+
icon?: ElementType;
|
|
24
|
+
/**
|
|
25
|
+
* Идентификатор для систем автоматизированного тестирования
|
|
26
|
+
*/
|
|
27
|
+
dataTestId?: string;
|
|
28
|
+
};
|
|
29
|
+
/**
|
|
30
|
+
* @deprecated Компонент только для внутреннего использования. Используйте <Header />
|
|
31
|
+
*/
|
|
32
|
+
declare const Closer: FC<CloserProps>;
|
|
33
|
+
export { CloserProps, Closer };
|
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import React from 'react';
|
|
3
|
+
import { HTMLAttributes, ReactNode } from "react";
|
|
4
|
+
type FormControlProps = HTMLAttributes<HTMLDivElement> & {
|
|
5
|
+
/**
|
|
6
|
+
* Растягивает компонент на ширину контейнера
|
|
7
|
+
*/
|
|
8
|
+
block?: boolean;
|
|
9
|
+
/**
|
|
10
|
+
* Размер компонента
|
|
11
|
+
*/
|
|
12
|
+
size?: 's' | 'm' | 'l' | 'xl';
|
|
13
|
+
/**
|
|
14
|
+
* Набор цветов для компонента
|
|
15
|
+
*/
|
|
16
|
+
colors?: 'default' | 'inverted';
|
|
17
|
+
/**
|
|
18
|
+
* Заблокированное состояние
|
|
19
|
+
*/
|
|
20
|
+
disabled?: boolean;
|
|
21
|
+
/**
|
|
22
|
+
* Cостояние только для чтения
|
|
23
|
+
*/
|
|
24
|
+
readOnly?: boolean;
|
|
25
|
+
/**
|
|
26
|
+
* Заполненное состояние
|
|
27
|
+
*/
|
|
28
|
+
filled?: boolean;
|
|
29
|
+
/**
|
|
30
|
+
* Выбранное (фокус) состояние
|
|
31
|
+
*/
|
|
32
|
+
focused?: boolean;
|
|
33
|
+
/**
|
|
34
|
+
* Отображение ошибки
|
|
35
|
+
*/
|
|
36
|
+
error?: ReactNode | boolean;
|
|
37
|
+
/**
|
|
38
|
+
* Текст подсказки
|
|
39
|
+
*/
|
|
40
|
+
hint?: ReactNode;
|
|
41
|
+
/**
|
|
42
|
+
* Лейбл компонента
|
|
43
|
+
*/
|
|
44
|
+
label?: ReactNode;
|
|
45
|
+
/**
|
|
46
|
+
* Вид лейбла внутри / снаружи
|
|
47
|
+
*/
|
|
48
|
+
labelView?: 'inner' | 'outer';
|
|
49
|
+
/**
|
|
50
|
+
* Слот слева
|
|
51
|
+
*/
|
|
52
|
+
leftAddons?: ReactNode;
|
|
53
|
+
/**
|
|
54
|
+
* Слот справа
|
|
55
|
+
*/
|
|
56
|
+
rightAddons?: ReactNode;
|
|
57
|
+
/**
|
|
58
|
+
* Слот под полем
|
|
59
|
+
*/
|
|
60
|
+
bottomAddons?: ReactNode;
|
|
61
|
+
/**
|
|
62
|
+
* Дополнительный класс
|
|
63
|
+
*/
|
|
64
|
+
className?: string;
|
|
65
|
+
/**
|
|
66
|
+
* Дополнительный класс для поля
|
|
67
|
+
*/
|
|
68
|
+
fieldClassName?: string;
|
|
69
|
+
/**
|
|
70
|
+
* Дополнительный класс для лейбла
|
|
71
|
+
*/
|
|
72
|
+
labelClassName?: string;
|
|
73
|
+
/**
|
|
74
|
+
* Дополнительный класс для аддонов
|
|
75
|
+
*/
|
|
76
|
+
addonsClassName?: string;
|
|
77
|
+
/**
|
|
78
|
+
* Идентификатор для систем автоматизированного тестирования
|
|
79
|
+
*/
|
|
80
|
+
dataTestId?: string;
|
|
81
|
+
/**
|
|
82
|
+
* Компонент поля (инпут, textarea и пр.)
|
|
83
|
+
*/
|
|
84
|
+
children?: ReactNode;
|
|
85
|
+
};
|
|
86
|
+
declare const FormControl: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & {
|
|
87
|
+
/**
|
|
88
|
+
* Растягивает компонент на ширину контейнера
|
|
89
|
+
*/
|
|
90
|
+
block?: boolean | undefined;
|
|
91
|
+
/**
|
|
92
|
+
* Размер компонента
|
|
93
|
+
*/
|
|
94
|
+
size?: "s" | "m" | "l" | "xl" | undefined;
|
|
95
|
+
/**
|
|
96
|
+
* Набор цветов для компонента
|
|
97
|
+
*/
|
|
98
|
+
colors?: "default" | "inverted" | undefined;
|
|
99
|
+
/**
|
|
100
|
+
* Заблокированное состояние
|
|
101
|
+
*/
|
|
102
|
+
disabled?: boolean | undefined;
|
|
103
|
+
/**
|
|
104
|
+
* Cостояние только для чтения
|
|
105
|
+
*/
|
|
106
|
+
readOnly?: boolean | undefined;
|
|
107
|
+
/**
|
|
108
|
+
* Заполненное состояние
|
|
109
|
+
*/
|
|
110
|
+
filled?: boolean | undefined;
|
|
111
|
+
/**
|
|
112
|
+
* Выбранное (фокус) состояние
|
|
113
|
+
*/
|
|
114
|
+
focused?: boolean | undefined;
|
|
115
|
+
/**
|
|
116
|
+
* Отображение ошибки
|
|
117
|
+
*/
|
|
118
|
+
error?: ReactNode | boolean;
|
|
119
|
+
/**
|
|
120
|
+
* Текст подсказки
|
|
121
|
+
*/
|
|
122
|
+
hint?: ReactNode;
|
|
123
|
+
/**
|
|
124
|
+
* Лейбл компонента
|
|
125
|
+
*/
|
|
126
|
+
label?: ReactNode;
|
|
127
|
+
/**
|
|
128
|
+
* Вид лейбла внутри / снаружи
|
|
129
|
+
*/
|
|
130
|
+
labelView?: "inner" | "outer" | undefined;
|
|
131
|
+
/**
|
|
132
|
+
* Слот слева
|
|
133
|
+
*/
|
|
134
|
+
leftAddons?: ReactNode;
|
|
135
|
+
/**
|
|
136
|
+
* Слот справа
|
|
137
|
+
*/
|
|
138
|
+
rightAddons?: ReactNode;
|
|
139
|
+
/**
|
|
140
|
+
* Слот под полем
|
|
141
|
+
*/
|
|
142
|
+
bottomAddons?: ReactNode;
|
|
143
|
+
/**
|
|
144
|
+
* Дополнительный класс
|
|
145
|
+
*/
|
|
146
|
+
className?: string | undefined;
|
|
147
|
+
/**
|
|
148
|
+
* Дополнительный класс для поля
|
|
149
|
+
*/
|
|
150
|
+
fieldClassName?: string | undefined;
|
|
151
|
+
/**
|
|
152
|
+
* Дополнительный класс для лейбла
|
|
153
|
+
*/
|
|
154
|
+
labelClassName?: string | undefined;
|
|
155
|
+
/**
|
|
156
|
+
* Дополнительный класс для аддонов
|
|
157
|
+
*/
|
|
158
|
+
addonsClassName?: string | undefined;
|
|
159
|
+
/**
|
|
160
|
+
* Идентификатор для систем автоматизированного тестирования
|
|
161
|
+
*/
|
|
162
|
+
dataTestId?: string | undefined;
|
|
163
|
+
/**
|
|
164
|
+
* Компонент поля (инпут, textarea и пр.)
|
|
165
|
+
*/
|
|
166
|
+
children?: ReactNode;
|
|
167
|
+
} & React.RefAttributes<HTMLDivElement>>;
|
|
168
|
+
export { FormControlProps, FormControl };
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
/// <reference types="react-transition-group" />
|
|
2
|
+
/// <reference types="react" />
|
|
3
|
+
import React from 'react';
|
|
4
|
+
import { FC, KeyboardEvent, MouseEvent, MutableRefObject, ReactNode, Ref } from "react";
|
|
5
|
+
import { TransitionProps } from 'react-transition-group/Transition';
|
|
6
|
+
import { BackdropProps, PortalProps } from "./index-ebda875c";
|
|
7
|
+
type BaseModalProps = {
|
|
8
|
+
/**
|
|
9
|
+
* Контент
|
|
10
|
+
*/
|
|
11
|
+
children?: ReactNode;
|
|
12
|
+
/**
|
|
13
|
+
* Компонент бэкдропа
|
|
14
|
+
*/
|
|
15
|
+
Backdrop?: FC<BackdropProps>;
|
|
16
|
+
/**
|
|
17
|
+
* Свойства для Бэкдропа
|
|
18
|
+
*/
|
|
19
|
+
backdropProps?: Partial<BackdropProps> & Record<string, unknown>;
|
|
20
|
+
/**
|
|
21
|
+
* Нода, компонент или функция возвращающая их
|
|
22
|
+
*
|
|
23
|
+
* Контейнер к которому будут добавляться порталы
|
|
24
|
+
*/
|
|
25
|
+
container?: PortalProps['getPortalContainer'];
|
|
26
|
+
/**
|
|
27
|
+
* Отключает автоматический перевод фокуса на модалку при открытии
|
|
28
|
+
* @default false
|
|
29
|
+
*/
|
|
30
|
+
disableAutoFocus?: boolean;
|
|
31
|
+
/**
|
|
32
|
+
* Отключает ловушку фокуса
|
|
33
|
+
* @default false
|
|
34
|
+
*/
|
|
35
|
+
disableFocusLock?: boolean;
|
|
36
|
+
/**
|
|
37
|
+
* Отключает восстановление фокуса на предыдущем элементе после закрытия модалки
|
|
38
|
+
* @default false
|
|
39
|
+
*/
|
|
40
|
+
disableRestoreFocus?: boolean;
|
|
41
|
+
/**
|
|
42
|
+
* Отключает вызов `callback` при нажатии Escape
|
|
43
|
+
* @default false
|
|
44
|
+
*/
|
|
45
|
+
disableEscapeKeyDown?: boolean;
|
|
46
|
+
/**
|
|
47
|
+
* Отключает вызов `callback` при клике на бэкдроп
|
|
48
|
+
* @default false
|
|
49
|
+
*/
|
|
50
|
+
disableBackdropClick?: boolean;
|
|
51
|
+
/**
|
|
52
|
+
* Отключает блокировку скролла при открытии модального окна
|
|
53
|
+
* @default false
|
|
54
|
+
*/
|
|
55
|
+
disableBlockingScroll?: boolean;
|
|
56
|
+
/**
|
|
57
|
+
* Содержимое модалки всегда в DOM
|
|
58
|
+
* @default false
|
|
59
|
+
*/
|
|
60
|
+
keepMounted?: boolean;
|
|
61
|
+
/**
|
|
62
|
+
* Управление видимостью модалки
|
|
63
|
+
*/
|
|
64
|
+
open: boolean;
|
|
65
|
+
/**
|
|
66
|
+
* Дополнительный класс
|
|
67
|
+
*/
|
|
68
|
+
className?: string;
|
|
69
|
+
/**
|
|
70
|
+
* Дополнительный класс
|
|
71
|
+
*/
|
|
72
|
+
contentClassName?: string;
|
|
73
|
+
/**
|
|
74
|
+
* Дополнительный класс для обертки (Modal)
|
|
75
|
+
*/
|
|
76
|
+
wrapperClassName?: string;
|
|
77
|
+
/**
|
|
78
|
+
* Обработчик скролла контента
|
|
79
|
+
*/
|
|
80
|
+
scrollHandler?: 'wrapper' | 'content' | MutableRefObject<HTMLDivElement | null>;
|
|
81
|
+
/**
|
|
82
|
+
* Пропсы для анимации (CSSTransition)
|
|
83
|
+
*/
|
|
84
|
+
transitionProps?: Partial<TransitionProps>;
|
|
85
|
+
/**
|
|
86
|
+
* Обработчик события нажатия на бэкдроп
|
|
87
|
+
*/
|
|
88
|
+
onBackdropClick?: (event: MouseEvent) => void;
|
|
89
|
+
/**
|
|
90
|
+
* Обработчик события нажатия на Escape
|
|
91
|
+
*
|
|
92
|
+
* Если `disableEscapeKeyDown` - false и модальное окно в фокусе
|
|
93
|
+
*/
|
|
94
|
+
onEscapeKeyDown?: (event: KeyboardEvent) => void;
|
|
95
|
+
/**
|
|
96
|
+
* Обработчик закрытия
|
|
97
|
+
*/
|
|
98
|
+
onClose?: (event: MouseEvent<HTMLElement> | KeyboardEvent<HTMLElement>, reason?: 'backdropClick' | 'escapeKeyDown' | 'closerClick') => void;
|
|
99
|
+
/**
|
|
100
|
+
* Обработчик события onEntered компонента Transition
|
|
101
|
+
*/
|
|
102
|
+
onMount?: () => void;
|
|
103
|
+
/**
|
|
104
|
+
* Обработчик события onExited компонента Transition
|
|
105
|
+
*/
|
|
106
|
+
onUnmount?: () => void;
|
|
107
|
+
/**
|
|
108
|
+
* Идентификатор для систем автоматизированного тестирования
|
|
109
|
+
*/
|
|
110
|
+
dataTestId?: string;
|
|
111
|
+
/**
|
|
112
|
+
* z-index компонента
|
|
113
|
+
*/
|
|
114
|
+
zIndex?: number;
|
|
115
|
+
/**
|
|
116
|
+
* Реф, который должен быть установлен компонентной области
|
|
117
|
+
*/
|
|
118
|
+
componentRef?: MutableRefObject<HTMLDivElement | null>;
|
|
119
|
+
};
|
|
120
|
+
type BaseModalContext = {
|
|
121
|
+
hasFooter?: boolean;
|
|
122
|
+
hasHeader?: boolean;
|
|
123
|
+
hasScroll?: boolean;
|
|
124
|
+
headerHighlighted?: boolean;
|
|
125
|
+
footerHighlighted?: boolean;
|
|
126
|
+
headerOffset?: number;
|
|
127
|
+
setHeaderOffset: (offset: number) => void;
|
|
128
|
+
contentRef: Ref<HTMLElement>;
|
|
129
|
+
setHasHeader: (exists: boolean) => void;
|
|
130
|
+
setHasFooter: (exists: boolean) => void;
|
|
131
|
+
onClose: Required<BaseModalProps>['onClose'];
|
|
132
|
+
};
|
|
133
|
+
declare const BaseModalContext: React.Context<BaseModalContext>;
|
|
134
|
+
declare const BaseModal: React.ForwardRefExoticComponent<BaseModalProps & React.RefAttributes<HTMLDivElement>>;
|
|
135
|
+
export { BaseModalProps, BaseModalContext, BaseModal };
|