@ozen-ui/kit 0.9.1 → 0.10.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.
- package/__inner__/cjs/components/DataList/DataList.d.ts +2 -30
- package/__inner__/cjs/components/DataList/DataList.js +3 -2
- package/__inner__/cjs/components/DataList/constants.d.ts +1 -0
- package/__inner__/cjs/components/DataList/constants.js +3 -1
- package/__inner__/cjs/components/DataList/index.d.ts +1 -0
- package/__inner__/cjs/components/DataList/index.js +1 -0
- package/__inner__/cjs/components/DataList/types.d.ts +33 -0
- package/__inner__/cjs/components/DataList/types.js +2 -0
- package/__inner__/cjs/components/Menu/Menu.d.ts +4 -3
- package/__inner__/cjs/components/Skeleton/index.d.ts +3 -0
- package/__inner__/cjs/components/Skeleton/index.js +7 -0
- package/__inner__/cjs/components/ThemeProvider/_color/Theme_color_bBusinessDefault.css +150 -0
- package/__inner__/cjs/components/ThemeProvider/index.d.ts +1 -0
- package/__inner__/cjs/components/ThemeProvider/index.js +1 -0
- package/__inner__/cjs/components/ThemeProvider/themes/themeBBusinessDefault.d.ts +12 -0
- package/__inner__/cjs/components/ThemeProvider/themes/themeBBusinessDefault.js +27 -0
- package/__inner__/cjs/components/Tooltip/Tooltip.d.ts +2 -3
- package/__inner__/cjs/components/Tooltip/Tooltip.js +2 -1
- package/__inner__/cjs/components/Tooltip/types.d.ts +6 -3
- package/__inner__/cjs/utils/polymorphicComponentWithRef.d.ts +3 -3
- package/__inner__/esm/components/DataList/DataList.d.ts +2 -30
- package/__inner__/esm/components/DataList/DataList.js +5 -4
- package/__inner__/esm/components/DataList/constants.d.ts +1 -0
- package/__inner__/esm/components/DataList/constants.js +2 -0
- package/__inner__/esm/components/DataList/index.d.ts +1 -0
- package/__inner__/esm/components/DataList/index.js +1 -0
- package/__inner__/esm/components/DataList/types.d.ts +33 -0
- package/__inner__/esm/components/DataList/types.js +1 -0
- package/__inner__/esm/components/Menu/Menu.d.ts +4 -3
- package/__inner__/esm/components/Skeleton/index.d.ts +3 -0
- package/__inner__/esm/components/Skeleton/index.js +3 -0
- package/__inner__/esm/components/ThemeProvider/_color/Theme_color_bBusinessDefault.css +150 -0
- package/__inner__/esm/components/ThemeProvider/index.d.ts +1 -0
- package/__inner__/esm/components/ThemeProvider/index.js +1 -0
- package/__inner__/esm/components/ThemeProvider/themes/themeBBusinessDefault.d.ts +12 -0
- package/__inner__/esm/components/ThemeProvider/themes/themeBBusinessDefault.js +24 -0
- package/__inner__/esm/components/Tooltip/Tooltip.d.ts +2 -3
- package/__inner__/esm/components/Tooltip/Tooltip.js +3 -2
- package/__inner__/esm/components/Tooltip/types.d.ts +6 -3
- package/__inner__/esm/utils/polymorphicComponentWithRef.d.ts +3 -3
- package/package.json +1 -1
|
@@ -1,32 +1,4 @@
|
|
|
1
1
|
import './DataList.css';
|
|
2
|
-
import
|
|
3
|
-
import type { ReactNode } from 'react';
|
|
4
|
-
import type { FormElementSizeVariant } from '../../types/FormElementSizeVariant';
|
|
5
|
-
import { type ListProps } from '../List';
|
|
6
|
-
import { type PopoverProps } from '../Popover';
|
|
2
|
+
import type { DataListBaseProps } from './index';
|
|
7
3
|
export declare const cnDataList: import("@bem-react/classname").ClassNameFormatter;
|
|
8
|
-
export
|
|
9
|
-
name?: string;
|
|
10
|
-
value: string;
|
|
11
|
-
};
|
|
12
|
-
export type DataListProps = Omit<PopoverProps, 'onSelect'> & {
|
|
13
|
-
/** Имя списка */
|
|
14
|
-
name?: string;
|
|
15
|
-
/** Признак по которому компонент будет представлен */
|
|
16
|
-
open?: boolean;
|
|
17
|
-
/** Содержимое компонента */
|
|
18
|
-
children: ReactNode;
|
|
19
|
-
/** Дополнительные CSS-классы */
|
|
20
|
-
className?: string;
|
|
21
|
-
/** Размер компонента */
|
|
22
|
-
size?: FormElementSizeVariant;
|
|
23
|
-
/** Выбранная опция */
|
|
24
|
-
selected?: string;
|
|
25
|
-
/** Выбранная опция по умолчанию */
|
|
26
|
-
defaultSelected?: string;
|
|
27
|
-
/** Функция обратного вызова для выбора значения */
|
|
28
|
-
onSelect?: (event: React.SyntheticEvent | KeyboardEvent, payload: DataListPayload) => void;
|
|
29
|
-
/** Свойства компонента List */
|
|
30
|
-
listProps?: ListProps;
|
|
31
|
-
};
|
|
32
|
-
export declare const DataList: React.ForwardRefExoticComponent<Omit<DataListProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
4
|
+
export declare const DataList: import("../../utils/polymorphicComponentWithRef").PolymorphicComponentWithRef<DataListBaseProps, "div">;
|
|
@@ -10,13 +10,14 @@ var useMultiRef_1 = require("../../hooks/useMultiRef");
|
|
|
10
10
|
var useThemeProps_1 = require("../../hooks/useThemeProps");
|
|
11
11
|
var classname_1 = require("../../utils/classname");
|
|
12
12
|
var isKey_1 = require("../../utils/isKey");
|
|
13
|
+
var polymorphicComponentWithRef_1 = require("../../utils/polymorphicComponentWithRef");
|
|
13
14
|
var List_1 = require("../List");
|
|
14
15
|
var Popover_1 = require("../Popover");
|
|
15
16
|
var constants_1 = require("./constants");
|
|
16
17
|
var DataListProvider_1 = require("./DataListProvider");
|
|
17
18
|
var useDataListNavigation_1 = require("./useDataListNavigation");
|
|
18
19
|
exports.cnDataList = (0, classname_1.cn)('DataList');
|
|
19
|
-
exports.DataList = (0,
|
|
20
|
+
exports.DataList = (0, polymorphicComponentWithRef_1.polymorphicComponentWithRef)(function (inProps, ref) {
|
|
20
21
|
var _a = (0, useThemeProps_1.useThemeProps)({ props: inProps, name: 'DataList' }), _b = _a.open, open = _b === void 0 ? constants_1.DATA_LIST_DEFAULT_OPEN : _b, _c = _a.size, size = _c === void 0 ? constants_1.DATA_LIST_DEFAULT_SIZE : _c, name = _a.name, children = _a.children, anchorRef = _a.anchorRef, onSelect = _a.onSelect, selectedProp = _a.selected, defaultSelected = _a.defaultSelected, listProps = _a.listProps, other = tslib_1.__rest(_a, ["open", "size", "name", "children", "anchorRef", "onSelect", "selected", "defaultSelected", "listProps"]);
|
|
21
22
|
var _d = tslib_1.__read((0, useControlled_1.useControlled)({
|
|
22
23
|
name: 'DataList',
|
|
@@ -45,7 +46,7 @@ exports.DataList = (0, react_1.forwardRef)(function (inProps, ref) {
|
|
|
45
46
|
}
|
|
46
47
|
}
|
|
47
48
|
});
|
|
48
|
-
return (react_1["default"].createElement(Popover_1.Popover, tslib_1.__assign({ open: open, placement: "bottom-start", disableReturnFocus: true, disableEnforceFocus: true, equalAnchorWidth: true, offset: [0, 4], anchorRef: anchorRef }, other, { ref: ref }),
|
|
49
|
+
return (react_1["default"].createElement(Popover_1.Popover, tslib_1.__assign({ as: constants_1.DATA_LIST_DEFAULT_TAG, open: open, placement: "bottom-start", disableReturnFocus: true, disableEnforceFocus: true, equalAnchorWidth: true, offset: [0, 4], anchorRef: anchorRef }, other, { ref: ref }),
|
|
49
50
|
react_1["default"].createElement(DataListProvider_1.DataListContext.Provider, { value: tslib_1.__assign({ selected: selected, size: size, onSelect: handleSelect, currentItem: currentItem }, listNavigation) },
|
|
50
51
|
react_1["default"].createElement(List_1.List, tslib_1.__assign({ as: "ul", size: size }, listProps, { ref: (0, useMultiRef_1.useMultiRef)([listRef, listProps === null || listProps === void 0 ? void 0 : listProps.ref]), className: (0, exports.cnDataList)('', [listProps === null || listProps === void 0 ? void 0 : listProps.className]) }), children))));
|
|
51
52
|
});
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
export declare const DATA_LIST_DEFAULT_TAG: import("../../utils/polymorphicComponentWithRef").PolymorphicComponentWithRef<import("../Paper").PaperBaseProps, "div">;
|
|
1
2
|
export declare const DATA_LIST_DEFAULT_SIZE = "m";
|
|
2
3
|
export declare const DATA_LIST_DEFAULT_OPEN = false;
|
|
3
4
|
export declare const DATA_LIST_OPTION_DEFAULT_DISABLED = false;
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
exports.__esModule = true;
|
|
3
|
-
exports.DATA_LIST_OPTION_DEFAULT_DISABLED = exports.DATA_LIST_DEFAULT_OPEN = exports.DATA_LIST_DEFAULT_SIZE = void 0;
|
|
3
|
+
exports.DATA_LIST_OPTION_DEFAULT_DISABLED = exports.DATA_LIST_DEFAULT_OPEN = exports.DATA_LIST_DEFAULT_SIZE = exports.DATA_LIST_DEFAULT_TAG = void 0;
|
|
4
|
+
var Paper_1 = require("../Paper");
|
|
5
|
+
exports.DATA_LIST_DEFAULT_TAG = Paper_1.Paper;
|
|
4
6
|
exports.DATA_LIST_DEFAULT_SIZE = 'm';
|
|
5
7
|
exports.DATA_LIST_DEFAULT_OPEN = false;
|
|
6
8
|
exports.DATA_LIST_OPTION_DEFAULT_DISABLED = false;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import type { ReactNode, ComponentRef, ElementType } from 'react';
|
|
2
|
+
import type React from 'react';
|
|
3
|
+
import type { FormElementSizeVariant } from '../../types/FormElementSizeVariant';
|
|
4
|
+
import type { PolymorphicComponentPropsWithRef } from '../../utils/polymorphicComponentWithRef';
|
|
5
|
+
import type { ListProps } from '../List';
|
|
6
|
+
import type { PopoverBaseProps } from '../Popover';
|
|
7
|
+
import type { DATA_LIST_DEFAULT_TAG } from './constants';
|
|
8
|
+
export type DataListPayload = {
|
|
9
|
+
name?: string;
|
|
10
|
+
value: string;
|
|
11
|
+
};
|
|
12
|
+
export type DataListBaseProps = Omit<PopoverBaseProps, 'onSelect'> & {
|
|
13
|
+
/** Имя списка */
|
|
14
|
+
name?: string;
|
|
15
|
+
/** Признак по которому компонент будет представлен */
|
|
16
|
+
open?: boolean;
|
|
17
|
+
/** Содержимое компонента */
|
|
18
|
+
children: ReactNode;
|
|
19
|
+
/** Дополнительные CSS-классы */
|
|
20
|
+
className?: string;
|
|
21
|
+
/** Размер компонента */
|
|
22
|
+
size?: FormElementSizeVariant;
|
|
23
|
+
/** Выбранная опция */
|
|
24
|
+
selected?: string;
|
|
25
|
+
/** Выбранная опция по умолчанию */
|
|
26
|
+
defaultSelected?: string;
|
|
27
|
+
/** Функция обратного вызова для выбора значения */
|
|
28
|
+
onSelect?: (event: React.SyntheticEvent | KeyboardEvent, payload: DataListPayload) => void;
|
|
29
|
+
/** Свойства компонента List */
|
|
30
|
+
listProps?: ListProps;
|
|
31
|
+
};
|
|
32
|
+
export type DataListRef = ComponentRef<typeof DATA_LIST_DEFAULT_TAG>;
|
|
33
|
+
export type DataListProps<As extends ElementType = typeof DATA_LIST_DEFAULT_TAG> = PolymorphicComponentPropsWithRef<DataListBaseProps, As>;
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import './Menu.css';
|
|
2
2
|
import React from 'react';
|
|
3
|
-
import type { RefObject } from 'react';
|
|
4
|
-
import { type
|
|
3
|
+
import type { RefObject, ComponentPropsWithRef } from 'react';
|
|
4
|
+
import { type PopoverBaseProps } from '../Popover';
|
|
5
|
+
import type { PORTAL_DEFAULT_TAG } from '../Portal';
|
|
5
6
|
import { type MenuListProps } from './components';
|
|
6
7
|
export declare const cnMenu: import("@bem-react/classname").ClassNameFormatter;
|
|
7
8
|
export type MenuProps = {
|
|
8
9
|
/** Свойства компонента MenuList */
|
|
9
10
|
menuListProps?: Omit<MenuListProps, 'children'>;
|
|
10
11
|
menuListRef?: RefObject<HTMLDivElement>;
|
|
11
|
-
} & Omit<
|
|
12
|
+
} & Omit<PopoverBaseProps, 'disableEnforceFocus'> & ComponentPropsWithRef<typeof PORTAL_DEFAULT_TAG>;
|
|
12
13
|
export declare const Menu: React.ForwardRefExoticComponent<Omit<MenuProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
@@ -1,4 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
exports.__esModule = true;
|
|
3
|
+
exports.cnSkeletonTypography = exports.cnSkeleton = exports.cnSkeletonCircular = void 0;
|
|
3
4
|
var tslib_1 = require("tslib");
|
|
4
5
|
tslib_1.__exportStar(require("./Skeleton"), exports);
|
|
6
|
+
var SkeletonCircular_1 = require("./SkeletonCircular");
|
|
7
|
+
tslib_1.__createBinding(exports, SkeletonCircular_1, "cnSkeletonCircular");
|
|
8
|
+
var SkeletonRectangular_1 = require("./SkeletonRectangular");
|
|
9
|
+
tslib_1.__createBinding(exports, SkeletonRectangular_1, "cnSkeleton");
|
|
10
|
+
var SkeletonTypography_1 = require("./SkeletonTypography");
|
|
11
|
+
tslib_1.__createBinding(exports, SkeletonTypography_1, "cnSkeletonTypography");
|
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
.Theme_color_bBusinessDefault {
|
|
2
|
+
--color-content-primary: #080808;
|
|
3
|
+
--color-content-secondary: #707070;
|
|
4
|
+
--color-additional-h3: #e1e4e7;
|
|
5
|
+
--color-content-tertiary: #949494;
|
|
6
|
+
--color-content-disabled: #949494;
|
|
7
|
+
--color-content-ghost-disabled: rgb(255 255 255 / 47%);
|
|
8
|
+
--color-content-action: #019f99;
|
|
9
|
+
--color-content-action-hover: #088695;
|
|
10
|
+
--color-content-action-pressed: #006081;
|
|
11
|
+
--color-content-action-dark: #003c51;
|
|
12
|
+
--color-content-action-on: #fff;
|
|
13
|
+
--color-content-error: #e32346;
|
|
14
|
+
--color-content-error-hover: #c61031;
|
|
15
|
+
--color-content-error-pressed: #ae0f2c;
|
|
16
|
+
--color-content-error-dark: #7c0218;
|
|
17
|
+
--color-content-warning: #ffb039;
|
|
18
|
+
--color-content-warning-hover: #ff9c09;
|
|
19
|
+
--color-content-warning-pressed: #e78b00;
|
|
20
|
+
--color-content-warning-dark: #5c3801;
|
|
21
|
+
--color-content-success: #68d3bf;
|
|
22
|
+
--color-content-success-hover: #35ccb0;
|
|
23
|
+
--color-content-success-pressed: #129e84;
|
|
24
|
+
--color-content-success-dark: #024d3e;
|
|
25
|
+
--color-content-info: #3b81ea;
|
|
26
|
+
--color-content-info-hover: #1161d9;
|
|
27
|
+
--color-content-info-pressed: #105ba4;
|
|
28
|
+
--color-content-info-dark: #022f5a;
|
|
29
|
+
--color-content-primary-inverse: #fff;
|
|
30
|
+
--color-content-accent-main: #a0a0a0;
|
|
31
|
+
--color-accent-main: #181818;
|
|
32
|
+
--color-content-accent-primary: #fff;
|
|
33
|
+
--color-accent-primary: #282828;
|
|
34
|
+
--color-content-accent-disabled: #606060;
|
|
35
|
+
--color-background-main: #fff;
|
|
36
|
+
--color-background-main-hover: #f5f5f5;
|
|
37
|
+
--color-background-main-pressed: #e8e8e8;
|
|
38
|
+
--color-background-primary: #f5f5f5;
|
|
39
|
+
--color-background-primary-hover: #e8e8e8;
|
|
40
|
+
--color-background-primary-pressed: #dcdcdc;
|
|
41
|
+
--color-background-secondary: #e8e8e8;
|
|
42
|
+
--color-background-secondary-hover: #dcdcdc;
|
|
43
|
+
--color-background-secondary-pressed: #c7c7c7;
|
|
44
|
+
--color-background-tertiary: #dcdcdc;
|
|
45
|
+
--color-background-tertiary-hover: #c7c7c7;
|
|
46
|
+
--color-background-tertiary-pressed: #b2b2b2;
|
|
47
|
+
--color-background-disabled: #e8e8e8;
|
|
48
|
+
--color-background-action: #019f99;
|
|
49
|
+
--color-background-action-hover: #088695;
|
|
50
|
+
--color-background-action-pressed: #006081;
|
|
51
|
+
--color-background-action-active-disabled: #a0f3df;
|
|
52
|
+
--color-background-action-light: #e2fef8;
|
|
53
|
+
--color-background-action-light-hover: #cdfaf1;
|
|
54
|
+
--color-background-action-light-pressed: #a0f3df;
|
|
55
|
+
--color-background-error: #e32346;
|
|
56
|
+
--color-background-error-hover: #c61031;
|
|
57
|
+
--color-background-error-pressed: #ae0f2c;
|
|
58
|
+
--color-background-error-light: #fff5f6;
|
|
59
|
+
--color-background-error-light-hover: #ffe2e6;
|
|
60
|
+
--color-background-error-light-pressed: #ffa9b3;
|
|
61
|
+
--color-background-warning: #ffb039;
|
|
62
|
+
--color-background-warning-hover: #ff9c09;
|
|
63
|
+
--color-background-warning-pressed: #e78b00;
|
|
64
|
+
--color-background-warning-light: #fffaf3;
|
|
65
|
+
--color-background-warning-light-hover: #fff5e7;
|
|
66
|
+
--color-background-warning-light-pressed: #ffd89e;
|
|
67
|
+
--color-background-success: #68d3bf;
|
|
68
|
+
--color-background-success-hover: #35ccb0;
|
|
69
|
+
--color-background-success-pressed: #129e84;
|
|
70
|
+
--color-background-success-light: #eafdf9;
|
|
71
|
+
--color-background-success-light-hover: #d3f8f0;
|
|
72
|
+
--color-background-success-light-pressed: #a8eee1;
|
|
73
|
+
--color-background-info: #3b81ea;
|
|
74
|
+
--color-background-info-hover: #1161d9;
|
|
75
|
+
--color-background-info-pressed: #105ba4;
|
|
76
|
+
--color-background-info-light: #f7fbff;
|
|
77
|
+
--color-background-info-light-hover: #ecf5ff;
|
|
78
|
+
--color-background-info-light-pressed: #a1c0ef;
|
|
79
|
+
--color-background-main-inverse: #202023;
|
|
80
|
+
--color-background-overlay: rgb(0 0 0 / 55%);
|
|
81
|
+
--color-background-ghost: rgb(255 255 255 / 12%);
|
|
82
|
+
--color-background-ghost-hover: rgb(255 255 255 / 24%);
|
|
83
|
+
--color-background-ghost-pressed: rgb(255 255 255 / 32%);
|
|
84
|
+
--color-background-ghost-disabled: rgb(255 255 255 / 47%);
|
|
85
|
+
--color-background-accent-action-light-hover: #005573;
|
|
86
|
+
--color-background-accent-action-light-pressed: #003c51;
|
|
87
|
+
--color-background-accent-error-light-hover: #a30925;
|
|
88
|
+
--color-background-accent-error-light-pressed: #7c0118;
|
|
89
|
+
--color-background-accent-warning-light-hover: #995c00;
|
|
90
|
+
--color-background-accent-warning-light-pressed: #5c3800;
|
|
91
|
+
--color-background-accent-success-light-hover: #046d5a;
|
|
92
|
+
--color-background-accent-success-light-pressed: #014d3e;
|
|
93
|
+
--color-background-accent-info-light-hover: #064889;
|
|
94
|
+
--color-background-accent-info-light-pressed: #032f5a;
|
|
95
|
+
--color-border-main: #c7c7c7;
|
|
96
|
+
--color-border-main-hover: #b2b2b2;
|
|
97
|
+
--color-border-main-pressed: #949494;
|
|
98
|
+
--color-border-secondary: #e8e8e8;
|
|
99
|
+
--color-border-secondary-hover: #c7c7c7;
|
|
100
|
+
--color-border-secondary-pressed: #b2b2b2;
|
|
101
|
+
--color-border-disabled: #c7c7c7;
|
|
102
|
+
--color-border-ghost-disabled: rgb(255 255 255 / 47%);
|
|
103
|
+
--color-border-focused: #a0f3df;
|
|
104
|
+
--color-border-action: #019f99;
|
|
105
|
+
--color-border-action-hover: #088695;
|
|
106
|
+
--color-border-action-pressed: #006081;
|
|
107
|
+
--color-border-error: #c61031;
|
|
108
|
+
--color-border-warning: #ff9c09;
|
|
109
|
+
--color-border-success: #35ccb0;
|
|
110
|
+
--color-border-info: #1161d9;
|
|
111
|
+
--color-border-main-on: #fff;
|
|
112
|
+
--color-border-accent-main: #a0a0a0;
|
|
113
|
+
--color-border-accent-disabled: #606060;
|
|
114
|
+
--color-border-accent-focused: #004258;
|
|
115
|
+
--color-accent-main-hover: #282828;
|
|
116
|
+
--color-accent-main-pressed: #383838;
|
|
117
|
+
--color-accent-primary-hover: #383838;
|
|
118
|
+
--color-accent-primary-pressed: #484848;
|
|
119
|
+
--color-accent-secondary: #383838;
|
|
120
|
+
--color-accent-secondary-hover: #484848;
|
|
121
|
+
--color-accent-secondary-pressed: #585858;
|
|
122
|
+
--color-accent-tertiary: #484848;
|
|
123
|
+
--color-accent-tertiary-hover: #585858;
|
|
124
|
+
--color-accent-tertiary-pressed: #686868;
|
|
125
|
+
--color-accent-disabled: #484848;
|
|
126
|
+
--color-accent-main-inverse: #fff;
|
|
127
|
+
--color-additional-a1: #0b6abe;
|
|
128
|
+
--color-additional-a2: #1899e9;
|
|
129
|
+
--color-additional-a3: #b3f1ff;
|
|
130
|
+
--color-additional-b1: #b5215f;
|
|
131
|
+
--color-additional-b2: #e62d73;
|
|
132
|
+
--color-additional-b3: #ffb5cd;
|
|
133
|
+
--color-additional-c1: #e64920;
|
|
134
|
+
--color-additional-c2: #f46c1b;
|
|
135
|
+
--color-additional-c3: #ffe2a8;
|
|
136
|
+
--color-additional-d1: #ff8e00;
|
|
137
|
+
--color-additional-d2: #ffc100;
|
|
138
|
+
--color-additional-d3: #fff9a2;
|
|
139
|
+
--color-additional-e1: #771db4;
|
|
140
|
+
--color-additional-e2: #a02be5;
|
|
141
|
+
--color-additional-e3: #e9b7fe;
|
|
142
|
+
--color-additional-f1: #107c60;
|
|
143
|
+
--color-additional-f2: #17ae87;
|
|
144
|
+
--color-additional-f3: #abeada;
|
|
145
|
+
--color-additional-g1: #b88f27;
|
|
146
|
+
--color-additional-g2: #e0b548;
|
|
147
|
+
--color-additional-g3: #f4d37d;
|
|
148
|
+
--color-additional-h1: #747e89;
|
|
149
|
+
--color-additional-h2: #bdc4cb;
|
|
150
|
+
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export * from './ThemeProvider';
|
|
2
2
|
export * from './themes/themeOzenDark';
|
|
3
3
|
export * from './themes/themeOzenDefault';
|
|
4
|
+
export * from './themes/themeBBusinessDefault';
|
|
4
5
|
export * as themeHelper from './themes/helper';
|
|
5
6
|
export { useTheme } from './ThemeProviderContext';
|
|
6
7
|
export * from './localization/localization';
|
|
@@ -5,6 +5,7 @@ var tslib_1 = require("tslib");
|
|
|
5
5
|
tslib_1.__exportStar(require("./ThemeProvider"), exports);
|
|
6
6
|
tslib_1.__exportStar(require("./themes/themeOzenDark"), exports);
|
|
7
7
|
tslib_1.__exportStar(require("./themes/themeOzenDefault"), exports);
|
|
8
|
+
tslib_1.__exportStar(require("./themes/themeBBusinessDefault"), exports);
|
|
8
9
|
exports.themeHelper = tslib_1.__importStar(require("./themes/helper"));
|
|
9
10
|
var ThemeProviderContext_1 = require("./ThemeProviderContext");
|
|
10
11
|
tslib_1.__createBinding(exports, ThemeProviderContext_1, "useTheme");
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import '@ozen-ui/fonts';
|
|
2
|
+
import type { Theme } from '../index';
|
|
3
|
+
import '../_color/Theme_color_bBusinessDefault.css';
|
|
4
|
+
import '../_typography/Theme_typography_ozenDefault.css';
|
|
5
|
+
import '../_borderRadius/Theme_borderRadius_ozenDefault.css';
|
|
6
|
+
import '../_space/Theme_space_ozenDefault.css';
|
|
7
|
+
import '../_shadow/Theme_shadow_ozenDefault.css';
|
|
8
|
+
import '../_breakpoint/Theme_breakpoint_ozenDefault.css';
|
|
9
|
+
import '../_borderWidth/Theme_borderWidth_ozenDefault.css';
|
|
10
|
+
import '../_zIndex/Theme_zIndex_ozenDefault.css';
|
|
11
|
+
import '../_transition/Theme_transition_ozenDefault.css';
|
|
12
|
+
export declare const themeBBusinessDefault: Theme;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
exports.__esModule = true;
|
|
3
|
+
exports.themeBBusinessDefault = void 0;
|
|
4
|
+
require("@ozen-ui/fonts");
|
|
5
|
+
require("../_color/Theme_color_bBusinessDefault.css");
|
|
6
|
+
require("../_typography/Theme_typography_ozenDefault.css");
|
|
7
|
+
require("../_borderRadius/Theme_borderRadius_ozenDefault.css");
|
|
8
|
+
require("../_space/Theme_space_ozenDefault.css");
|
|
9
|
+
require("../_shadow/Theme_shadow_ozenDefault.css");
|
|
10
|
+
require("../_breakpoint/Theme_breakpoint_ozenDefault.css");
|
|
11
|
+
require("../_borderWidth/Theme_borderWidth_ozenDefault.css");
|
|
12
|
+
require("../_zIndex/Theme_zIndex_ozenDefault.css");
|
|
13
|
+
require("../_transition/Theme_transition_ozenDefault.css");
|
|
14
|
+
exports.themeBBusinessDefault = {
|
|
15
|
+
tokens: {
|
|
16
|
+
color: 'bBusinessDefault',
|
|
17
|
+
space: 'ozenDefault',
|
|
18
|
+
typography: 'ozenDefault',
|
|
19
|
+
borderRadius: 'ozenDefault',
|
|
20
|
+
borderWidth: 'ozenDefault',
|
|
21
|
+
shadow: 'ozenDefault',
|
|
22
|
+
breakpoint: 'ozenDefault',
|
|
23
|
+
zIndex: 'ozenDefault',
|
|
24
|
+
transition: 'ozenDefault'
|
|
25
|
+
},
|
|
26
|
+
defaultProps: {}
|
|
27
|
+
};
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import './Tooltip.css';
|
|
2
|
-
import
|
|
3
|
-
import type { TooltipProps } from './types';
|
|
2
|
+
import type { TooltipBaseProps } from './types';
|
|
4
3
|
export declare const cnTooltip: import("@bem-react/classname").ClassNameFormatter;
|
|
5
|
-
export declare const Tooltip:
|
|
4
|
+
export declare const Tooltip: import("../../utils/polymorphicComponentWithRef").PolymorphicComponentWithRef<TooltipBaseProps, "div">;
|
|
@@ -9,10 +9,11 @@ var useDebounceCallback_1 = require("../../hooks/useDebounceCallback");
|
|
|
9
9
|
var useMultiRef_1 = require("../../hooks/useMultiRef");
|
|
10
10
|
var useThemeProps_1 = require("../../hooks/useThemeProps");
|
|
11
11
|
var classname_1 = require("../../utils/classname");
|
|
12
|
+
var polymorphicComponentWithRef_1 = require("../../utils/polymorphicComponentWithRef");
|
|
12
13
|
var Popover_1 = require("../Popover");
|
|
13
14
|
var constants_1 = require("./constants");
|
|
14
15
|
exports.cnTooltip = (0, classname_1.cn)('Tooltip');
|
|
15
|
-
exports.Tooltip = (0,
|
|
16
|
+
exports.Tooltip = (0, polymorphicComponentWithRef_1.polymorphicComponentWithRef)(function (inProps, ref) {
|
|
16
17
|
var props = (0, useThemeProps_1.useThemeProps)({ props: inProps, name: 'Tooltip' });
|
|
17
18
|
var _a = props.trigger, trigger = _a === void 0 ? constants_1.TOOLTIP_DEFAULT_TRIGGER : _a, _b = props.size, size = _b === void 0 ? constants_1.TOOLTIP_DEFAULT_SIZE : _b, _c = props.variant, variant = _c === void 0 ? constants_1.TOOLTIP_DEFAULT_VARIANT : _c, _d = props.offset, offset = _d === void 0 ? constants_1.TOOLTIP_DEFAULT_OFFSET : _d, _e = props.delayEnter, delayEnter = _e === void 0 ? constants_1.TOOLTIP_DEFAULT_DELAY_ENTER : _e, _f = props.delayLeave, delayLeave = _f === void 0 ? constants_1.TOOLTIP_DEFAULT_DELAY_LEAVE : _f, _g = props.arrow, arrow = _g === void 0 ? constants_1.TOOLTIP_DEFAULT_ARROW : _g, _h = props.shouldWrapChildren, shouldWrapChildren = _h === void 0 ? constants_1.TOOLTIP_DEFAULT_SHOULD_WRAP_CHILDREN : _h, _j = props.disabled, disabled = _j === void 0 ? constants_1.TOOLTIP_DEFAULT_DISABLED : _j, children = props.children, label = props.label, openProp = props.open, placement = props.placement, disableInteractive = props.disableInteractive, className = props.className, onOpen = props.onOpen, onClose = props.onClose, other = tslib_1.__rest(props, ["trigger", "size", "variant", "offset", "delayEnter", "delayLeave", "arrow", "shouldWrapChildren", "disabled", "children", "label", "open", "placement", "disableInteractive", "className", "onOpen", "onClose"]);
|
|
18
19
|
var _k = tslib_1.__read((0, react_1.useState)(), 2), delay = _k[0], setDelay = _k[1];
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import type { Ref, ReactNode, ReactElement,
|
|
1
|
+
import type { Ref, ReactNode, ReactElement, ComponentRef, ElementType } from 'react';
|
|
2
|
+
import type { PolymorphicComponentPropsWithRef } from '../../utils/polymorphicComponentWithRef';
|
|
2
3
|
import type { PopoverBaseProps } from '../Popover';
|
|
3
4
|
import type { TOOLTIP_DEFAULT_TAG } from './constants';
|
|
4
5
|
export declare const tooltipSizeVariant: readonly ["xs", "s"];
|
|
@@ -7,7 +8,7 @@ export declare const tooltipVariant: readonly ["light", "dark"];
|
|
|
7
8
|
export type TooltipVariant = (typeof tooltipVariant)[number];
|
|
8
9
|
export declare const tooltipTriggerVariant: readonly ["hover", "focus", "click", "hover&focus"];
|
|
9
10
|
export type TooltipTriggerVariant = (typeof tooltipTriggerVariant)[number];
|
|
10
|
-
export type
|
|
11
|
+
export type TooltipBaseProps = {
|
|
11
12
|
/** Признак по которому тултип будет представлен */
|
|
12
13
|
open?: boolean;
|
|
13
14
|
/** Элемент представляющий тултип, здесь может быть иконка, ссылка, кнопка и т.д. */
|
|
@@ -40,4 +41,6 @@ export type TooltipProps = {
|
|
|
40
41
|
'data-testid'?: string;
|
|
41
42
|
/** Дополнительные CSS-классы */
|
|
42
43
|
className?: string;
|
|
43
|
-
} & Pick<PopoverBaseProps, 'offset' | 'placement' | 'arrow' | 'anchorRef' | 'ignoreClickOutsideRefs' | 'disableInteractive' | 'onEnter' | 'onEntered' | 'onExit' | 'onExited' | 'setUpdate'
|
|
44
|
+
} & Pick<PopoverBaseProps, 'offset' | 'placement' | 'arrow' | 'anchorRef' | 'ignoreClickOutsideRefs' | 'disableInteractive' | 'onEnter' | 'onEntered' | 'onExit' | 'onExited' | 'setUpdate'>;
|
|
45
|
+
export type TooltipRef = ComponentRef<typeof TOOLTIP_DEFAULT_TAG>;
|
|
46
|
+
export type TooltipProps<As extends ElementType = typeof TOOLTIP_DEFAULT_TAG> = PolymorphicComponentPropsWithRef<TooltipBaseProps, As>;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { ComponentPropsWithRef, ElementType, ComponentPropsWithoutRef } from 'react';
|
|
1
|
+
import type { ComponentPropsWithRef, ElementType, ComponentPropsWithoutRef, ReactElement } from 'react';
|
|
2
2
|
declare const defaultElement = "div";
|
|
3
3
|
export type PolymorphicComponentPropsWithRef<Props, As extends ElementType> = Props & {
|
|
4
4
|
as?: As;
|
|
@@ -7,10 +7,10 @@ export type PolymorphicComponentPropsWithoutRef<Props, As extends ElementType> =
|
|
|
7
7
|
as?: As;
|
|
8
8
|
} & Omit<ComponentPropsWithoutRef<As>, keyof Props>;
|
|
9
9
|
export type PolymorphicComponentRef<As extends ElementType> = ComponentPropsWithRef<As>['ref'];
|
|
10
|
-
type ComponentWithAs<Props, DefaultTag extends ElementType = typeof defaultElement> = <As extends ElementType = DefaultTag>(props: PolymorphicComponentPropsWithRef<Props, As>) =>
|
|
10
|
+
type ComponentWithAs<Props, DefaultTag extends ElementType = typeof defaultElement> = <As extends ElementType = DefaultTag>(props: PolymorphicComponentPropsWithRef<Props, As>) => ReactElement | null;
|
|
11
11
|
export type PolymorphicComponentWithRef<Props, As extends ElementType> = ComponentWithAs<Props, As> & {
|
|
12
12
|
displayName?: string | undefined;
|
|
13
13
|
};
|
|
14
|
-
type ForwardRefWithAs<Props> = <As extends ElementType>(props: PolymorphicComponentPropsWithRef<Props, As>, ref: PolymorphicComponentRef<As>) =>
|
|
14
|
+
type ForwardRefWithAs<Props> = <As extends ElementType>(props: PolymorphicComponentPropsWithRef<Props, As>, ref: PolymorphicComponentRef<As>) => ReactElement | null;
|
|
15
15
|
export declare function polymorphicComponentWithRef<Props, As extends ElementType = typeof defaultElement>(baseComponent: ForwardRefWithAs<Props>): PolymorphicComponentWithRef<Props, As>;
|
|
16
16
|
export {};
|
|
@@ -1,32 +1,4 @@
|
|
|
1
1
|
import './DataList.css';
|
|
2
|
-
import
|
|
3
|
-
import type { ReactNode } from 'react';
|
|
4
|
-
import type { FormElementSizeVariant } from '../../types/FormElementSizeVariant';
|
|
5
|
-
import { type ListProps } from '../List';
|
|
6
|
-
import { type PopoverProps } from '../Popover';
|
|
2
|
+
import type { DataListBaseProps } from './index';
|
|
7
3
|
export declare const cnDataList: import("@bem-react/classname").ClassNameFormatter;
|
|
8
|
-
export
|
|
9
|
-
name?: string;
|
|
10
|
-
value: string;
|
|
11
|
-
};
|
|
12
|
-
export type DataListProps = Omit<PopoverProps, 'onSelect'> & {
|
|
13
|
-
/** Имя списка */
|
|
14
|
-
name?: string;
|
|
15
|
-
/** Признак по которому компонент будет представлен */
|
|
16
|
-
open?: boolean;
|
|
17
|
-
/** Содержимое компонента */
|
|
18
|
-
children: ReactNode;
|
|
19
|
-
/** Дополнительные CSS-классы */
|
|
20
|
-
className?: string;
|
|
21
|
-
/** Размер компонента */
|
|
22
|
-
size?: FormElementSizeVariant;
|
|
23
|
-
/** Выбранная опция */
|
|
24
|
-
selected?: string;
|
|
25
|
-
/** Выбранная опция по умолчанию */
|
|
26
|
-
defaultSelected?: string;
|
|
27
|
-
/** Функция обратного вызова для выбора значения */
|
|
28
|
-
onSelect?: (event: React.SyntheticEvent | KeyboardEvent, payload: DataListPayload) => void;
|
|
29
|
-
/** Свойства компонента List */
|
|
30
|
-
listProps?: ListProps;
|
|
31
|
-
};
|
|
32
|
-
export declare const DataList: React.ForwardRefExoticComponent<Omit<DataListProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
4
|
+
export declare const DataList: import("../../utils/polymorphicComponentWithRef").PolymorphicComponentWithRef<DataListBaseProps, "div">;
|
|
@@ -1,19 +1,20 @@
|
|
|
1
1
|
import { __assign, __read, __rest } from "tslib";
|
|
2
2
|
import './DataList.css';
|
|
3
|
-
import React, {
|
|
3
|
+
import React, { useRef } from 'react';
|
|
4
4
|
import { useControlled } from '../../hooks/useControlled';
|
|
5
5
|
import { useEventListener } from '../../hooks/useEventListener';
|
|
6
6
|
import { useMultiRef } from '../../hooks/useMultiRef';
|
|
7
7
|
import { useThemeProps } from '../../hooks/useThemeProps';
|
|
8
8
|
import { cn } from '../../utils/classname';
|
|
9
9
|
import { isKey } from '../../utils/isKey';
|
|
10
|
+
import { polymorphicComponentWithRef } from '../../utils/polymorphicComponentWithRef';
|
|
10
11
|
import { List } from '../List';
|
|
11
12
|
import { Popover } from '../Popover';
|
|
12
|
-
import { DATA_LIST_DEFAULT_SIZE, DATA_LIST_DEFAULT_OPEN } from './constants';
|
|
13
|
+
import { DATA_LIST_DEFAULT_SIZE, DATA_LIST_DEFAULT_OPEN, DATA_LIST_DEFAULT_TAG, } from './constants';
|
|
13
14
|
import { DataListContext } from './DataListProvider';
|
|
14
15
|
import { useDataListNavigation } from './useDataListNavigation';
|
|
15
16
|
export var cnDataList = cn('DataList');
|
|
16
|
-
export var DataList =
|
|
17
|
+
export var DataList = polymorphicComponentWithRef(function (inProps, ref) {
|
|
17
18
|
var _a = useThemeProps({ props: inProps, name: 'DataList' }), _b = _a.open, open = _b === void 0 ? DATA_LIST_DEFAULT_OPEN : _b, _c = _a.size, size = _c === void 0 ? DATA_LIST_DEFAULT_SIZE : _c, name = _a.name, children = _a.children, anchorRef = _a.anchorRef, onSelect = _a.onSelect, selectedProp = _a.selected, defaultSelected = _a.defaultSelected, listProps = _a.listProps, other = __rest(_a, ["open", "size", "name", "children", "anchorRef", "onSelect", "selected", "defaultSelected", "listProps"]);
|
|
18
19
|
var _d = __read(useControlled({
|
|
19
20
|
name: 'DataList',
|
|
@@ -42,7 +43,7 @@ export var DataList = forwardRef(function (inProps, ref) {
|
|
|
42
43
|
}
|
|
43
44
|
}
|
|
44
45
|
});
|
|
45
|
-
return (React.createElement(Popover, __assign({ open: open, placement: "bottom-start", disableReturnFocus: true, disableEnforceFocus: true, equalAnchorWidth: true, offset: [0, 4], anchorRef: anchorRef }, other, { ref: ref }),
|
|
46
|
+
return (React.createElement(Popover, __assign({ as: DATA_LIST_DEFAULT_TAG, open: open, placement: "bottom-start", disableReturnFocus: true, disableEnforceFocus: true, equalAnchorWidth: true, offset: [0, 4], anchorRef: anchorRef }, other, { ref: ref }),
|
|
46
47
|
React.createElement(DataListContext.Provider, { value: __assign({ selected: selected, size: size, onSelect: handleSelect, currentItem: currentItem }, listNavigation) },
|
|
47
48
|
React.createElement(List, __assign({ as: "ul", size: size }, listProps, { ref: useMultiRef([listRef, listProps === null || listProps === void 0 ? void 0 : listProps.ref]), className: cnDataList('', [listProps === null || listProps === void 0 ? void 0 : listProps.className]) }), children))));
|
|
48
49
|
});
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
export declare const DATA_LIST_DEFAULT_TAG: import("../../utils/polymorphicComponentWithRef").PolymorphicComponentWithRef<import("../Paper").PaperBaseProps, "div">;
|
|
1
2
|
export declare const DATA_LIST_DEFAULT_SIZE = "m";
|
|
2
3
|
export declare const DATA_LIST_DEFAULT_OPEN = false;
|
|
3
4
|
export declare const DATA_LIST_OPTION_DEFAULT_DISABLED = false;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import type { ReactNode, ComponentRef, ElementType } from 'react';
|
|
2
|
+
import type React from 'react';
|
|
3
|
+
import type { FormElementSizeVariant } from '../../types/FormElementSizeVariant';
|
|
4
|
+
import type { PolymorphicComponentPropsWithRef } from '../../utils/polymorphicComponentWithRef';
|
|
5
|
+
import type { ListProps } from '../List';
|
|
6
|
+
import type { PopoverBaseProps } from '../Popover';
|
|
7
|
+
import type { DATA_LIST_DEFAULT_TAG } from './constants';
|
|
8
|
+
export type DataListPayload = {
|
|
9
|
+
name?: string;
|
|
10
|
+
value: string;
|
|
11
|
+
};
|
|
12
|
+
export type DataListBaseProps = Omit<PopoverBaseProps, 'onSelect'> & {
|
|
13
|
+
/** Имя списка */
|
|
14
|
+
name?: string;
|
|
15
|
+
/** Признак по которому компонент будет представлен */
|
|
16
|
+
open?: boolean;
|
|
17
|
+
/** Содержимое компонента */
|
|
18
|
+
children: ReactNode;
|
|
19
|
+
/** Дополнительные CSS-классы */
|
|
20
|
+
className?: string;
|
|
21
|
+
/** Размер компонента */
|
|
22
|
+
size?: FormElementSizeVariant;
|
|
23
|
+
/** Выбранная опция */
|
|
24
|
+
selected?: string;
|
|
25
|
+
/** Выбранная опция по умолчанию */
|
|
26
|
+
defaultSelected?: string;
|
|
27
|
+
/** Функция обратного вызова для выбора значения */
|
|
28
|
+
onSelect?: (event: React.SyntheticEvent | KeyboardEvent, payload: DataListPayload) => void;
|
|
29
|
+
/** Свойства компонента List */
|
|
30
|
+
listProps?: ListProps;
|
|
31
|
+
};
|
|
32
|
+
export type DataListRef = ComponentRef<typeof DATA_LIST_DEFAULT_TAG>;
|
|
33
|
+
export type DataListProps<As extends ElementType = typeof DATA_LIST_DEFAULT_TAG> = PolymorphicComponentPropsWithRef<DataListBaseProps, As>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import './Menu.css';
|
|
2
2
|
import React from 'react';
|
|
3
|
-
import type { RefObject } from 'react';
|
|
4
|
-
import { type
|
|
3
|
+
import type { RefObject, ComponentPropsWithRef } from 'react';
|
|
4
|
+
import { type PopoverBaseProps } from '../Popover';
|
|
5
|
+
import type { PORTAL_DEFAULT_TAG } from '../Portal';
|
|
5
6
|
import { type MenuListProps } from './components';
|
|
6
7
|
export declare const cnMenu: import("@bem-react/classname").ClassNameFormatter;
|
|
7
8
|
export type MenuProps = {
|
|
8
9
|
/** Свойства компонента MenuList */
|
|
9
10
|
menuListProps?: Omit<MenuListProps, 'children'>;
|
|
10
11
|
menuListRef?: RefObject<HTMLDivElement>;
|
|
11
|
-
} & Omit<
|
|
12
|
+
} & Omit<PopoverBaseProps, 'disableEnforceFocus'> & ComponentPropsWithRef<typeof PORTAL_DEFAULT_TAG>;
|
|
12
13
|
export declare const Menu: React.ForwardRefExoticComponent<Omit<MenuProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
.Theme_color_bBusinessDefault {
|
|
2
|
+
--color-content-primary: #080808;
|
|
3
|
+
--color-content-secondary: #707070;
|
|
4
|
+
--color-additional-h3: #e1e4e7;
|
|
5
|
+
--color-content-tertiary: #949494;
|
|
6
|
+
--color-content-disabled: #949494;
|
|
7
|
+
--color-content-ghost-disabled: rgb(255 255 255 / 47%);
|
|
8
|
+
--color-content-action: #019f99;
|
|
9
|
+
--color-content-action-hover: #088695;
|
|
10
|
+
--color-content-action-pressed: #006081;
|
|
11
|
+
--color-content-action-dark: #003c51;
|
|
12
|
+
--color-content-action-on: #fff;
|
|
13
|
+
--color-content-error: #e32346;
|
|
14
|
+
--color-content-error-hover: #c61031;
|
|
15
|
+
--color-content-error-pressed: #ae0f2c;
|
|
16
|
+
--color-content-error-dark: #7c0218;
|
|
17
|
+
--color-content-warning: #ffb039;
|
|
18
|
+
--color-content-warning-hover: #ff9c09;
|
|
19
|
+
--color-content-warning-pressed: #e78b00;
|
|
20
|
+
--color-content-warning-dark: #5c3801;
|
|
21
|
+
--color-content-success: #68d3bf;
|
|
22
|
+
--color-content-success-hover: #35ccb0;
|
|
23
|
+
--color-content-success-pressed: #129e84;
|
|
24
|
+
--color-content-success-dark: #024d3e;
|
|
25
|
+
--color-content-info: #3b81ea;
|
|
26
|
+
--color-content-info-hover: #1161d9;
|
|
27
|
+
--color-content-info-pressed: #105ba4;
|
|
28
|
+
--color-content-info-dark: #022f5a;
|
|
29
|
+
--color-content-primary-inverse: #fff;
|
|
30
|
+
--color-content-accent-main: #a0a0a0;
|
|
31
|
+
--color-accent-main: #181818;
|
|
32
|
+
--color-content-accent-primary: #fff;
|
|
33
|
+
--color-accent-primary: #282828;
|
|
34
|
+
--color-content-accent-disabled: #606060;
|
|
35
|
+
--color-background-main: #fff;
|
|
36
|
+
--color-background-main-hover: #f5f5f5;
|
|
37
|
+
--color-background-main-pressed: #e8e8e8;
|
|
38
|
+
--color-background-primary: #f5f5f5;
|
|
39
|
+
--color-background-primary-hover: #e8e8e8;
|
|
40
|
+
--color-background-primary-pressed: #dcdcdc;
|
|
41
|
+
--color-background-secondary: #e8e8e8;
|
|
42
|
+
--color-background-secondary-hover: #dcdcdc;
|
|
43
|
+
--color-background-secondary-pressed: #c7c7c7;
|
|
44
|
+
--color-background-tertiary: #dcdcdc;
|
|
45
|
+
--color-background-tertiary-hover: #c7c7c7;
|
|
46
|
+
--color-background-tertiary-pressed: #b2b2b2;
|
|
47
|
+
--color-background-disabled: #e8e8e8;
|
|
48
|
+
--color-background-action: #019f99;
|
|
49
|
+
--color-background-action-hover: #088695;
|
|
50
|
+
--color-background-action-pressed: #006081;
|
|
51
|
+
--color-background-action-active-disabled: #a0f3df;
|
|
52
|
+
--color-background-action-light: #e2fef8;
|
|
53
|
+
--color-background-action-light-hover: #cdfaf1;
|
|
54
|
+
--color-background-action-light-pressed: #a0f3df;
|
|
55
|
+
--color-background-error: #e32346;
|
|
56
|
+
--color-background-error-hover: #c61031;
|
|
57
|
+
--color-background-error-pressed: #ae0f2c;
|
|
58
|
+
--color-background-error-light: #fff5f6;
|
|
59
|
+
--color-background-error-light-hover: #ffe2e6;
|
|
60
|
+
--color-background-error-light-pressed: #ffa9b3;
|
|
61
|
+
--color-background-warning: #ffb039;
|
|
62
|
+
--color-background-warning-hover: #ff9c09;
|
|
63
|
+
--color-background-warning-pressed: #e78b00;
|
|
64
|
+
--color-background-warning-light: #fffaf3;
|
|
65
|
+
--color-background-warning-light-hover: #fff5e7;
|
|
66
|
+
--color-background-warning-light-pressed: #ffd89e;
|
|
67
|
+
--color-background-success: #68d3bf;
|
|
68
|
+
--color-background-success-hover: #35ccb0;
|
|
69
|
+
--color-background-success-pressed: #129e84;
|
|
70
|
+
--color-background-success-light: #eafdf9;
|
|
71
|
+
--color-background-success-light-hover: #d3f8f0;
|
|
72
|
+
--color-background-success-light-pressed: #a8eee1;
|
|
73
|
+
--color-background-info: #3b81ea;
|
|
74
|
+
--color-background-info-hover: #1161d9;
|
|
75
|
+
--color-background-info-pressed: #105ba4;
|
|
76
|
+
--color-background-info-light: #f7fbff;
|
|
77
|
+
--color-background-info-light-hover: #ecf5ff;
|
|
78
|
+
--color-background-info-light-pressed: #a1c0ef;
|
|
79
|
+
--color-background-main-inverse: #202023;
|
|
80
|
+
--color-background-overlay: rgb(0 0 0 / 55%);
|
|
81
|
+
--color-background-ghost: rgb(255 255 255 / 12%);
|
|
82
|
+
--color-background-ghost-hover: rgb(255 255 255 / 24%);
|
|
83
|
+
--color-background-ghost-pressed: rgb(255 255 255 / 32%);
|
|
84
|
+
--color-background-ghost-disabled: rgb(255 255 255 / 47%);
|
|
85
|
+
--color-background-accent-action-light-hover: #005573;
|
|
86
|
+
--color-background-accent-action-light-pressed: #003c51;
|
|
87
|
+
--color-background-accent-error-light-hover: #a30925;
|
|
88
|
+
--color-background-accent-error-light-pressed: #7c0118;
|
|
89
|
+
--color-background-accent-warning-light-hover: #995c00;
|
|
90
|
+
--color-background-accent-warning-light-pressed: #5c3800;
|
|
91
|
+
--color-background-accent-success-light-hover: #046d5a;
|
|
92
|
+
--color-background-accent-success-light-pressed: #014d3e;
|
|
93
|
+
--color-background-accent-info-light-hover: #064889;
|
|
94
|
+
--color-background-accent-info-light-pressed: #032f5a;
|
|
95
|
+
--color-border-main: #c7c7c7;
|
|
96
|
+
--color-border-main-hover: #b2b2b2;
|
|
97
|
+
--color-border-main-pressed: #949494;
|
|
98
|
+
--color-border-secondary: #e8e8e8;
|
|
99
|
+
--color-border-secondary-hover: #c7c7c7;
|
|
100
|
+
--color-border-secondary-pressed: #b2b2b2;
|
|
101
|
+
--color-border-disabled: #c7c7c7;
|
|
102
|
+
--color-border-ghost-disabled: rgb(255 255 255 / 47%);
|
|
103
|
+
--color-border-focused: #a0f3df;
|
|
104
|
+
--color-border-action: #019f99;
|
|
105
|
+
--color-border-action-hover: #088695;
|
|
106
|
+
--color-border-action-pressed: #006081;
|
|
107
|
+
--color-border-error: #c61031;
|
|
108
|
+
--color-border-warning: #ff9c09;
|
|
109
|
+
--color-border-success: #35ccb0;
|
|
110
|
+
--color-border-info: #1161d9;
|
|
111
|
+
--color-border-main-on: #fff;
|
|
112
|
+
--color-border-accent-main: #a0a0a0;
|
|
113
|
+
--color-border-accent-disabled: #606060;
|
|
114
|
+
--color-border-accent-focused: #004258;
|
|
115
|
+
--color-accent-main-hover: #282828;
|
|
116
|
+
--color-accent-main-pressed: #383838;
|
|
117
|
+
--color-accent-primary-hover: #383838;
|
|
118
|
+
--color-accent-primary-pressed: #484848;
|
|
119
|
+
--color-accent-secondary: #383838;
|
|
120
|
+
--color-accent-secondary-hover: #484848;
|
|
121
|
+
--color-accent-secondary-pressed: #585858;
|
|
122
|
+
--color-accent-tertiary: #484848;
|
|
123
|
+
--color-accent-tertiary-hover: #585858;
|
|
124
|
+
--color-accent-tertiary-pressed: #686868;
|
|
125
|
+
--color-accent-disabled: #484848;
|
|
126
|
+
--color-accent-main-inverse: #fff;
|
|
127
|
+
--color-additional-a1: #0b6abe;
|
|
128
|
+
--color-additional-a2: #1899e9;
|
|
129
|
+
--color-additional-a3: #b3f1ff;
|
|
130
|
+
--color-additional-b1: #b5215f;
|
|
131
|
+
--color-additional-b2: #e62d73;
|
|
132
|
+
--color-additional-b3: #ffb5cd;
|
|
133
|
+
--color-additional-c1: #e64920;
|
|
134
|
+
--color-additional-c2: #f46c1b;
|
|
135
|
+
--color-additional-c3: #ffe2a8;
|
|
136
|
+
--color-additional-d1: #ff8e00;
|
|
137
|
+
--color-additional-d2: #ffc100;
|
|
138
|
+
--color-additional-d3: #fff9a2;
|
|
139
|
+
--color-additional-e1: #771db4;
|
|
140
|
+
--color-additional-e2: #a02be5;
|
|
141
|
+
--color-additional-e3: #e9b7fe;
|
|
142
|
+
--color-additional-f1: #107c60;
|
|
143
|
+
--color-additional-f2: #17ae87;
|
|
144
|
+
--color-additional-f3: #abeada;
|
|
145
|
+
--color-additional-g1: #b88f27;
|
|
146
|
+
--color-additional-g2: #e0b548;
|
|
147
|
+
--color-additional-g3: #f4d37d;
|
|
148
|
+
--color-additional-h1: #747e89;
|
|
149
|
+
--color-additional-h2: #bdc4cb;
|
|
150
|
+
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export * from './ThemeProvider';
|
|
2
2
|
export * from './themes/themeOzenDark';
|
|
3
3
|
export * from './themes/themeOzenDefault';
|
|
4
|
+
export * from './themes/themeBBusinessDefault';
|
|
4
5
|
export * as themeHelper from './themes/helper';
|
|
5
6
|
export { useTheme } from './ThemeProviderContext';
|
|
6
7
|
export * from './localization/localization';
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export * from './ThemeProvider';
|
|
2
2
|
export * from './themes/themeOzenDark';
|
|
3
3
|
export * from './themes/themeOzenDefault';
|
|
4
|
+
export * from './themes/themeBBusinessDefault';
|
|
4
5
|
import * as themeHelper_1 from './themes/helper';
|
|
5
6
|
export { themeHelper_1 as themeHelper };
|
|
6
7
|
export { useTheme } from './ThemeProviderContext';
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import '@ozen-ui/fonts';
|
|
2
|
+
import type { Theme } from '../index';
|
|
3
|
+
import '../_color/Theme_color_bBusinessDefault.css';
|
|
4
|
+
import '../_typography/Theme_typography_ozenDefault.css';
|
|
5
|
+
import '../_borderRadius/Theme_borderRadius_ozenDefault.css';
|
|
6
|
+
import '../_space/Theme_space_ozenDefault.css';
|
|
7
|
+
import '../_shadow/Theme_shadow_ozenDefault.css';
|
|
8
|
+
import '../_breakpoint/Theme_breakpoint_ozenDefault.css';
|
|
9
|
+
import '../_borderWidth/Theme_borderWidth_ozenDefault.css';
|
|
10
|
+
import '../_zIndex/Theme_zIndex_ozenDefault.css';
|
|
11
|
+
import '../_transition/Theme_transition_ozenDefault.css';
|
|
12
|
+
export declare const themeBBusinessDefault: Theme;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import '@ozen-ui/fonts';
|
|
2
|
+
import '../_color/Theme_color_bBusinessDefault.css';
|
|
3
|
+
import '../_typography/Theme_typography_ozenDefault.css';
|
|
4
|
+
import '../_borderRadius/Theme_borderRadius_ozenDefault.css';
|
|
5
|
+
import '../_space/Theme_space_ozenDefault.css';
|
|
6
|
+
import '../_shadow/Theme_shadow_ozenDefault.css';
|
|
7
|
+
import '../_breakpoint/Theme_breakpoint_ozenDefault.css';
|
|
8
|
+
import '../_borderWidth/Theme_borderWidth_ozenDefault.css';
|
|
9
|
+
import '../_zIndex/Theme_zIndex_ozenDefault.css';
|
|
10
|
+
import '../_transition/Theme_transition_ozenDefault.css';
|
|
11
|
+
export var themeBBusinessDefault = {
|
|
12
|
+
tokens: {
|
|
13
|
+
color: 'bBusinessDefault',
|
|
14
|
+
space: 'ozenDefault',
|
|
15
|
+
typography: 'ozenDefault',
|
|
16
|
+
borderRadius: 'ozenDefault',
|
|
17
|
+
borderWidth: 'ozenDefault',
|
|
18
|
+
shadow: 'ozenDefault',
|
|
19
|
+
breakpoint: 'ozenDefault',
|
|
20
|
+
zIndex: 'ozenDefault',
|
|
21
|
+
transition: 'ozenDefault'
|
|
22
|
+
},
|
|
23
|
+
defaultProps: {}
|
|
24
|
+
};
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import './Tooltip.css';
|
|
2
|
-
import
|
|
3
|
-
import type { TooltipProps } from './types';
|
|
2
|
+
import type { TooltipBaseProps } from './types';
|
|
4
3
|
export declare const cnTooltip: import("@bem-react/classname").ClassNameFormatter;
|
|
5
|
-
export declare const Tooltip:
|
|
4
|
+
export declare const Tooltip: import("../../utils/polymorphicComponentWithRef").PolymorphicComponentWithRef<TooltipBaseProps, "div">;
|
|
@@ -1,15 +1,16 @@
|
|
|
1
1
|
import { __assign, __read, __rest } from "tslib";
|
|
2
2
|
import './Tooltip.css';
|
|
3
|
-
import React, {
|
|
3
|
+
import React, { useRef, useMemo, useState, useEffect } from 'react';
|
|
4
4
|
import { useControlled } from '../../hooks/useControlled';
|
|
5
5
|
import { useDebounceCallback } from '../../hooks/useDebounceCallback';
|
|
6
6
|
import { useMultiRef } from '../../hooks/useMultiRef';
|
|
7
7
|
import { useThemeProps } from '../../hooks/useThemeProps';
|
|
8
8
|
import { cn } from '../../utils/classname';
|
|
9
|
+
import { polymorphicComponentWithRef } from '../../utils/polymorphicComponentWithRef';
|
|
9
10
|
import { Popover } from '../Popover';
|
|
10
11
|
import { TOOLTIP_DEFAULT_ARROW, TOOLTIP_DEFAULT_DELAY_ENTER, TOOLTIP_DEFAULT_DELAY_LEAVE, TOOLTIP_DEFAULT_DISABLED, TOOLTIP_DEFAULT_OFFSET, TOOLTIP_DEFAULT_SHOULD_WRAP_CHILDREN, TOOLTIP_DEFAULT_SIZE, TOOLTIP_DEFAULT_TAG, TOOLTIP_DEFAULT_TRIGGER, TOOLTIP_DEFAULT_VARIANT, } from './constants';
|
|
11
12
|
export var cnTooltip = cn('Tooltip');
|
|
12
|
-
export var Tooltip =
|
|
13
|
+
export var Tooltip = polymorphicComponentWithRef(function (inProps, ref) {
|
|
13
14
|
var props = useThemeProps({ props: inProps, name: 'Tooltip' });
|
|
14
15
|
var _a = props.trigger, trigger = _a === void 0 ? TOOLTIP_DEFAULT_TRIGGER : _a, _b = props.size, size = _b === void 0 ? TOOLTIP_DEFAULT_SIZE : _b, _c = props.variant, variant = _c === void 0 ? TOOLTIP_DEFAULT_VARIANT : _c, _d = props.offset, offset = _d === void 0 ? TOOLTIP_DEFAULT_OFFSET : _d, _e = props.delayEnter, delayEnter = _e === void 0 ? TOOLTIP_DEFAULT_DELAY_ENTER : _e, _f = props.delayLeave, delayLeave = _f === void 0 ? TOOLTIP_DEFAULT_DELAY_LEAVE : _f, _g = props.arrow, arrow = _g === void 0 ? TOOLTIP_DEFAULT_ARROW : _g, _h = props.shouldWrapChildren, shouldWrapChildren = _h === void 0 ? TOOLTIP_DEFAULT_SHOULD_WRAP_CHILDREN : _h, _j = props.disabled, disabled = _j === void 0 ? TOOLTIP_DEFAULT_DISABLED : _j, children = props.children, label = props.label, openProp = props.open, placement = props.placement, disableInteractive = props.disableInteractive, className = props.className, onOpen = props.onOpen, onClose = props.onClose, other = __rest(props, ["trigger", "size", "variant", "offset", "delayEnter", "delayLeave", "arrow", "shouldWrapChildren", "disabled", "children", "label", "open", "placement", "disableInteractive", "className", "onOpen", "onClose"]);
|
|
15
16
|
var _k = __read(useState(), 2), delay = _k[0], setDelay = _k[1];
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import type { Ref, ReactNode, ReactElement,
|
|
1
|
+
import type { Ref, ReactNode, ReactElement, ComponentRef, ElementType } from 'react';
|
|
2
|
+
import type { PolymorphicComponentPropsWithRef } from '../../utils/polymorphicComponentWithRef';
|
|
2
3
|
import type { PopoverBaseProps } from '../Popover';
|
|
3
4
|
import type { TOOLTIP_DEFAULT_TAG } from './constants';
|
|
4
5
|
export declare const tooltipSizeVariant: readonly ["xs", "s"];
|
|
@@ -7,7 +8,7 @@ export declare const tooltipVariant: readonly ["light", "dark"];
|
|
|
7
8
|
export type TooltipVariant = (typeof tooltipVariant)[number];
|
|
8
9
|
export declare const tooltipTriggerVariant: readonly ["hover", "focus", "click", "hover&focus"];
|
|
9
10
|
export type TooltipTriggerVariant = (typeof tooltipTriggerVariant)[number];
|
|
10
|
-
export type
|
|
11
|
+
export type TooltipBaseProps = {
|
|
11
12
|
/** Признак по которому тултип будет представлен */
|
|
12
13
|
open?: boolean;
|
|
13
14
|
/** Элемент представляющий тултип, здесь может быть иконка, ссылка, кнопка и т.д. */
|
|
@@ -40,4 +41,6 @@ export type TooltipProps = {
|
|
|
40
41
|
'data-testid'?: string;
|
|
41
42
|
/** Дополнительные CSS-классы */
|
|
42
43
|
className?: string;
|
|
43
|
-
} & Pick<PopoverBaseProps, 'offset' | 'placement' | 'arrow' | 'anchorRef' | 'ignoreClickOutsideRefs' | 'disableInteractive' | 'onEnter' | 'onEntered' | 'onExit' | 'onExited' | 'setUpdate'
|
|
44
|
+
} & Pick<PopoverBaseProps, 'offset' | 'placement' | 'arrow' | 'anchorRef' | 'ignoreClickOutsideRefs' | 'disableInteractive' | 'onEnter' | 'onEntered' | 'onExit' | 'onExited' | 'setUpdate'>;
|
|
45
|
+
export type TooltipRef = ComponentRef<typeof TOOLTIP_DEFAULT_TAG>;
|
|
46
|
+
export type TooltipProps<As extends ElementType = typeof TOOLTIP_DEFAULT_TAG> = PolymorphicComponentPropsWithRef<TooltipBaseProps, As>;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { ComponentPropsWithRef, ElementType, ComponentPropsWithoutRef } from 'react';
|
|
1
|
+
import type { ComponentPropsWithRef, ElementType, ComponentPropsWithoutRef, ReactElement } from 'react';
|
|
2
2
|
declare const defaultElement = "div";
|
|
3
3
|
export type PolymorphicComponentPropsWithRef<Props, As extends ElementType> = Props & {
|
|
4
4
|
as?: As;
|
|
@@ -7,10 +7,10 @@ export type PolymorphicComponentPropsWithoutRef<Props, As extends ElementType> =
|
|
|
7
7
|
as?: As;
|
|
8
8
|
} & Omit<ComponentPropsWithoutRef<As>, keyof Props>;
|
|
9
9
|
export type PolymorphicComponentRef<As extends ElementType> = ComponentPropsWithRef<As>['ref'];
|
|
10
|
-
type ComponentWithAs<Props, DefaultTag extends ElementType = typeof defaultElement> = <As extends ElementType = DefaultTag>(props: PolymorphicComponentPropsWithRef<Props, As>) =>
|
|
10
|
+
type ComponentWithAs<Props, DefaultTag extends ElementType = typeof defaultElement> = <As extends ElementType = DefaultTag>(props: PolymorphicComponentPropsWithRef<Props, As>) => ReactElement | null;
|
|
11
11
|
export type PolymorphicComponentWithRef<Props, As extends ElementType> = ComponentWithAs<Props, As> & {
|
|
12
12
|
displayName?: string | undefined;
|
|
13
13
|
};
|
|
14
|
-
type ForwardRefWithAs<Props> = <As extends ElementType>(props: PolymorphicComponentPropsWithRef<Props, As>, ref: PolymorphicComponentRef<As>) =>
|
|
14
|
+
type ForwardRefWithAs<Props> = <As extends ElementType>(props: PolymorphicComponentPropsWithRef<Props, As>, ref: PolymorphicComponentRef<As>) => ReactElement | null;
|
|
15
15
|
export declare function polymorphicComponentWithRef<Props, As extends ElementType = typeof defaultElement>(baseComponent: ForwardRefWithAs<Props>): PolymorphicComponentWithRef<Props, As>;
|
|
16
16
|
export {};
|