@dss-kit/ui-kit 0.3.10 → 1.0.1
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/README.md +29 -29
- package/dist/components/builders/Modal/Modal.js +3 -3
- package/dist/components/builders/Modal/ModalFooter/ModalFooter.js +7 -7
- package/dist/components/builders/Modal/ModalHeader/ModalHeader.js +15 -15
- package/dist/components/builders/Modal/ModalMain/styles.js +3 -3
- package/dist/components/builders/Modal/styles.js +2 -2
- package/dist/components/builders/Table/Table.js +66 -58
- package/dist/components/builders/Table/Table.utils.js +5 -5
- package/dist/components/builders/Table/TableBodyRow/TableBodyRow.js +5 -5
- package/dist/components/builders/Table/TableHeadRow/TableHeadRow.js +4 -4
- package/dist/components/builders/Table/TablePagination/TablePagination.js +44 -44
- package/dist/components/builders/Table/TableWrapper/TableWrapper.js +19 -19
- package/dist/components/charts/LineChart/constants.js +16 -16
- package/dist/components/charts/LineChart/utils.js +2 -2
- package/dist/components/charts/PieProgressChart/constants.js +16 -10
- package/dist/components/controls/Button/Button.js +35 -35
- package/dist/components/controls/Button/styles.js +4 -4
- package/dist/components/controls/Checkbox/styles.js +7 -7
- package/dist/components/controls/IconButton/styles.js +27 -27
- package/dist/components/controls/Input/styles.js +10 -10
- package/dist/components/controls/MarkdownTextEditor/MarkdownTextEditor.js +28 -28
- package/dist/components/controls/MarkdownTextEditor/components/EditorToolbar/ActionMenuButton/ActionMenuButton.js +13 -13
- package/dist/components/controls/MarkdownTextEditor/components/EditorToolbar/ActionMenuButton/ActionMenuButton.styles.js +2 -2
- package/dist/components/controls/MarkdownTextEditor/components/EditorToolbar/EditorToolbar.js +43 -43
- package/dist/components/controls/MarkdownTextEditor/nodes/CustomLinkNode/parts/CustomLinkNodeComponent/CustomLinkNodeComponent.styles.js +3 -3
- package/dist/components/controls/MarkdownTextEditor/nodes/ImageRowNode/parts/ImageRowNodeComponent/ImageRowNodeComponent.styles.js +2 -2
- package/dist/components/controls/MarkdownTextEditor/themes/editor.theme.js +1 -1
- package/dist/components/controls/OtpInput/styles.js +11 -11
- package/dist/components/controls/RadioGroup/Radio.js +48 -48
- package/dist/components/controls/SegmentControl/SegmentControl.js +12 -12
- package/dist/components/controls/SegmentControl/styles.js +8 -8
- package/dist/components/controls/Select/styles.js +19 -19
- package/dist/components/controls/Switch/Switch.d.ts +3 -3
- package/dist/components/controls/Switch/styles.d.ts +1 -0
- package/dist/components/controls/Switch/styles.js +44 -34
- package/dist/components/controls/Tabs/TabItem/TabItem.d.ts +5 -0
- package/dist/components/controls/Tabs/TabItem/TabItem.js +68 -49
- package/dist/components/controls/Tabs/Tabs.d.ts +6 -1
- package/dist/components/controls/Tabs/Tabs.js +28 -25
- package/dist/components/shared/Avatar/Avatar.js +8 -8
- package/dist/components/shared/Badge/Badge.js +40 -40
- package/dist/components/shared/Counter/Counter.const.d.ts +6 -0
- package/dist/components/shared/Counter/Counter.const.js +16 -0
- package/dist/components/shared/Counter/Counter.d.ts +11 -0
- package/dist/components/shared/Counter/Counter.js +58 -0
- package/dist/components/shared/Counter/Counter.types.d.ts +29 -0
- package/dist/components/shared/Counter/Counter.utils.d.ts +2 -0
- package/dist/components/shared/Counter/Counter.utils.js +6 -0
- package/dist/components/shared/Counter/index.d.ts +2 -0
- package/dist/components/shared/Counter/styles.d.ts +2 -0
- package/dist/components/shared/Counter/styles.js +11 -0
- package/dist/components/shared/Dot/Dot.const.d.ts +5 -0
- package/dist/components/shared/Dot/Dot.const.js +15 -0
- package/dist/components/shared/Dot/Dot.d.ts +10 -0
- package/dist/components/shared/Dot/Dot.js +32 -0
- package/dist/components/shared/Dot/Dot.types.d.ts +17 -0
- package/dist/components/shared/Dot/index.d.ts +2 -0
- package/dist/components/shared/Dot/styles.d.ts +1 -0
- package/dist/components/shared/Dot/styles.js +7 -0
- package/dist/components/shared/Hint/styles.js +6 -6
- package/dist/components/shared/MarkdownText/MarkdownText.styles.js +4 -4
- package/dist/components/shared/Popover/PopoverContent/PopoverContent.js +2 -2
- package/dist/components/shared/Skeleton/Skeleton.js +11 -11
- package/dist/components/shared/Tag/Tag.js +14 -14
- package/dist/components/shared/Toast/Toast.js +30 -30
- package/dist/components/shared/Tooltip/Tooltip.js +28 -28
- package/dist/components/shared/Tooltip/constants.js +3 -3
- package/dist/components/shared/index.d.ts +2 -0
- package/dist/index.js +55 -48
- package/dist/providers/ThemeProviderScoped/ThemeProviderScoped.const.d.ts +8 -0
- package/dist/providers/ThemeProviderScoped/ThemeProviderScoped.context.d.ts +12 -0
- package/dist/providers/ThemeProviderScoped/ThemeProviderScoped.context.js +12 -0
- package/dist/providers/ThemeProviderScoped/ThemeProviderScoped.d.ts +1 -1
- package/dist/providers/ThemeProviderScoped/ThemeProviderScoped.js +37 -26
- package/dist/providers/ThemeProviderScoped/ThemeProviderScoped.types.d.ts +30 -5
- package/dist/providers/ThemeProviderScoped/index.d.ts +1 -0
- package/dist/root.css +1 -1
- package/dist/styles/utils/breakpoints/base.scss +11 -11
- package/dist/styles/utils/breakpoints/index.scss +3 -3
- package/dist/styles/utils/breakpoints/screen.scss +61 -61
- package/dist/styles/utils/breakpoints/semantic.scss +31 -31
- package/dist/styles/utils/fonts/font-family.scss +3 -3
- package/dist/styles/utils/fonts/index.scss +1 -1
- package/dist/styles/utils/index.scss +5 -5
- package/dist/styles/utils/size/index.scss +1 -1
- package/dist/styles/utils/size/modifiers.scss +40 -40
- package/dist/styles/utils/style/index.scss +1 -1
- package/dist/styles/utils/style/variants.scss +34 -34
- package/dist/styles/utils/typography/_font-weight.scss +33 -33
- package/dist/styles/utils/typography/_variants.scss +85 -85
- package/dist/styles/utils/typography/index.scss +2 -2
- package/dist/ui-kit.cjs +8 -8
- package/dist/ui-kit.css +1 -1
- package/dist/utils/theme/index.d.ts +141 -141
- package/dist/utils/theme/index.js +14 -14
- package/dist/utils/theme/palette.d.ts +184 -0
- package/dist/utils/theme/palette.js +187 -0
- package/package.json +94 -94
- package/dist/providers/ThemeProviderScoped/styles.module.scss.js +0 -7
- package/dist/utils/theme/color.d.ts +0 -184
- package/dist/utils/theme/color.js +0 -187
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import { css as
|
|
2
|
-
import { theme as
|
|
3
|
-
const { color:
|
|
4
|
-
container:
|
|
1
|
+
import { css as i } from "@emotion/css";
|
|
2
|
+
import { theme as c } from "../../../utils/theme/index.js";
|
|
3
|
+
const { color: t, cornerRadius: r, height: h, spacing: s, transition: e } = c, l = {
|
|
4
|
+
container: i({
|
|
5
5
|
width: "100%",
|
|
6
6
|
cursor: "pointer",
|
|
7
7
|
outline: "none",
|
|
8
8
|
userSelect: "none",
|
|
9
9
|
display: "flex",
|
|
10
10
|
justifyContent: "space-between",
|
|
11
|
-
gap:
|
|
11
|
+
gap: s.md,
|
|
12
12
|
"&.disabled": {
|
|
13
13
|
cursor: "not-allowed",
|
|
14
14
|
opacity: 0.5
|
|
@@ -17,14 +17,14 @@ const { color: i, cornerRadius: e, height: h, spacing: c, transition: r } = s, l
|
|
|
17
17
|
flexDirection: "row-reverse"
|
|
18
18
|
}
|
|
19
19
|
}),
|
|
20
|
-
disabled:
|
|
20
|
+
disabled: i({
|
|
21
21
|
cursor: "not-allowed",
|
|
22
22
|
opacity: 0.5
|
|
23
23
|
}),
|
|
24
|
-
reverse:
|
|
24
|
+
reverse: i({
|
|
25
25
|
flexDirection: "row-reverse"
|
|
26
26
|
}),
|
|
27
|
-
switchContainer:
|
|
27
|
+
switchContainer: i({
|
|
28
28
|
"--width-switch-sm": "34px",
|
|
29
29
|
"--width-switch-md": "40px",
|
|
30
30
|
"--width-switch-lg": "52px",
|
|
@@ -37,82 +37,92 @@ const { color: i, cornerRadius: e, height: h, spacing: c, transition: r } = s, l
|
|
|
37
37
|
}
|
|
38
38
|
}),
|
|
39
39
|
// Variant classes — each handles both checked and unchecked states
|
|
40
|
-
variant_accent:
|
|
40
|
+
variant_accent: i({
|
|
41
41
|
"&:has(input:not(:checked))": {
|
|
42
|
-
"--switch-bg-color":
|
|
43
|
-
"--thumb-bg-color":
|
|
42
|
+
"--switch-bg-color": t.fill.bg_tertiary,
|
|
43
|
+
"--thumb-bg-color": t.fill.bg_primary
|
|
44
44
|
},
|
|
45
45
|
"&:has(input:checked)": {
|
|
46
|
-
"--switch-bg-color":
|
|
47
|
-
"--thumb-bg-color":
|
|
46
|
+
"--switch-bg-color": t.fill.accent_primary,
|
|
47
|
+
"--thumb-bg-color": t.fill.bg_primary
|
|
48
48
|
}
|
|
49
49
|
}),
|
|
50
|
-
variant_secondary:
|
|
50
|
+
variant_secondary: i({
|
|
51
51
|
"&:has(input:not(:checked))": {
|
|
52
|
-
"--switch-bg-color":
|
|
53
|
-
"--thumb-bg-color":
|
|
52
|
+
"--switch-bg-color": t.fill.bg_tertiary,
|
|
53
|
+
"--thumb-bg-color": t.fill.bg_primary
|
|
54
54
|
},
|
|
55
55
|
"&:has(input:checked)": {
|
|
56
|
-
"--switch-bg-color":
|
|
57
|
-
"--thumb-bg-color":
|
|
56
|
+
"--switch-bg-color": t.fill.accent_secondary,
|
|
57
|
+
"--thumb-bg-color": t.fill.accent_primary
|
|
58
58
|
}
|
|
59
59
|
}),
|
|
60
|
-
|
|
60
|
+
variant_positive: i({
|
|
61
61
|
"&:has(input:not(:checked))": {
|
|
62
|
-
"--switch-bg-color":
|
|
63
|
-
"--thumb-bg-color":
|
|
62
|
+
"--switch-bg-color": t.fill.bg_tertiary,
|
|
63
|
+
"--thumb-bg-color": t.fill.bg_primary
|
|
64
64
|
},
|
|
65
65
|
"&:has(input:checked)": {
|
|
66
|
-
"--switch-bg-color":
|
|
67
|
-
"--thumb-bg-color":
|
|
66
|
+
"--switch-bg-color": t.fill.positive_primary,
|
|
67
|
+
"--thumb-bg-color": t.fill.bg_primary
|
|
68
|
+
}
|
|
69
|
+
}),
|
|
70
|
+
variant_theme: i({
|
|
71
|
+
"&:has(input:not(:checked))": {
|
|
72
|
+
"--switch-bg-color": t.fill.bg_tertiary,
|
|
73
|
+
"--thumb-bg-color": t.fill.bg_primary
|
|
74
|
+
},
|
|
75
|
+
"&:has(input:checked)": {
|
|
76
|
+
"--switch-bg-color": t.fill.bg_secondary,
|
|
77
|
+
"--thumb-bg-color": t.fill.bg_tertiary
|
|
68
78
|
}
|
|
69
79
|
}),
|
|
70
80
|
// Size classes
|
|
71
|
-
size_sm:
|
|
81
|
+
size_sm: i({
|
|
72
82
|
"--switch-width": "var(--width-switch-sm)",
|
|
73
83
|
"--switch-height": h.switch.sm,
|
|
74
84
|
"--thumb-width": "var(--size-thumb-sm)",
|
|
75
85
|
"--thumb-height": "var(--size-thumb-sm)"
|
|
76
86
|
}),
|
|
77
|
-
size_md:
|
|
87
|
+
size_md: i({
|
|
78
88
|
"--switch-width": "var(--width-switch-md)",
|
|
79
89
|
"--switch-height": h.switch.md,
|
|
80
90
|
"--thumb-width": "var(--size-thumb-md)",
|
|
81
91
|
"--thumb-height": "var(--size-thumb-md)"
|
|
82
92
|
}),
|
|
83
|
-
size_lg:
|
|
93
|
+
size_lg: i({
|
|
84
94
|
"--switch-width": "var(--width-switch-lg)",
|
|
85
95
|
"--switch-height": h.switch.lg,
|
|
86
96
|
"--thumb-width": "var(--size-thumb-lg)",
|
|
87
97
|
"--thumb-height": "var(--size-thumb-lg)"
|
|
88
98
|
}),
|
|
89
|
-
switch:
|
|
99
|
+
switch: i({
|
|
90
100
|
width: "var(--switch-width)",
|
|
91
101
|
height: "var(--switch-height)",
|
|
92
|
-
transition:
|
|
102
|
+
transition: e.general,
|
|
93
103
|
display: "flex",
|
|
94
104
|
alignItems: "center",
|
|
95
105
|
padding: 2,
|
|
96
106
|
backgroundColor: "var(--switch-bg-color)",
|
|
97
|
-
borderRadius:
|
|
107
|
+
borderRadius: r.xl
|
|
98
108
|
}),
|
|
99
|
-
thumb:
|
|
109
|
+
thumb: i({
|
|
100
110
|
display: "flex",
|
|
101
111
|
alignItems: "center",
|
|
102
112
|
justifyContent: "center",
|
|
103
113
|
padding: 4,
|
|
104
|
-
transition:
|
|
114
|
+
transition: e.general,
|
|
105
115
|
transform: "translateX(var(--thumb-translate, 0))",
|
|
106
116
|
width: "var(--thumb-width)",
|
|
107
117
|
height: "var(--thumb-height)",
|
|
108
118
|
backgroundColor: "var(--thumb-bg-color)",
|
|
109
|
-
borderRadius:
|
|
119
|
+
borderRadius: r.fullRound
|
|
110
120
|
}),
|
|
111
|
-
moon:
|
|
121
|
+
moon: i({
|
|
112
122
|
width: "100%",
|
|
113
123
|
height: "100%"
|
|
114
124
|
}),
|
|
115
|
-
fire:
|
|
125
|
+
fire: i({
|
|
116
126
|
width: "100%",
|
|
117
127
|
height: "100%"
|
|
118
128
|
})
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
1
2
|
interface TabItemProps {
|
|
2
3
|
label: string;
|
|
3
4
|
selected: boolean;
|
|
@@ -10,6 +11,10 @@ interface TabItemProps {
|
|
|
10
11
|
activeClassName?: string;
|
|
11
12
|
/** Класс для текста внутри таба (`Text`). */
|
|
12
13
|
textClassName?: string;
|
|
14
|
+
/** Элемент справа от подписи, например `Counter`. */
|
|
15
|
+
endSlot?: ReactNode;
|
|
16
|
+
/** Класс для обёртки `endSlot`. */
|
|
17
|
+
endSlotClassName?: string;
|
|
13
18
|
}
|
|
14
19
|
export declare const TabItem: import('react').ForwardRefExoticComponent<TabItemProps & import('react').RefAttributes<HTMLDivElement>>;
|
|
15
20
|
export {};
|
|
@@ -1,58 +1,77 @@
|
|
|
1
|
-
import { jsx as
|
|
2
|
-
import { cx as
|
|
3
|
-
import { forwardRef as
|
|
4
|
-
import { Box as
|
|
5
|
-
import { theme as
|
|
6
|
-
import { Text as
|
|
7
|
-
const { spacing:
|
|
1
|
+
import { jsxs as h, jsx as n } from "react/jsx-runtime";
|
|
2
|
+
import { cx as i, css as o } from "@emotion/css";
|
|
3
|
+
import { forwardRef as g } from "react";
|
|
4
|
+
import { Box as m } from "../../../builders/Box/Box.js";
|
|
5
|
+
import { theme as w } from "../../../../utils/theme/index.js";
|
|
6
|
+
import { Text as S } from "../../../builders/Text/Text.js";
|
|
7
|
+
const { spacing: t } = w, N = o({
|
|
8
8
|
cursor: "pointer",
|
|
9
9
|
userSelect: "none"
|
|
10
|
-
}),
|
|
10
|
+
}), b = o({
|
|
11
11
|
cursor: "not-allowed",
|
|
12
12
|
opacity: 0.5
|
|
13
|
-
}),
|
|
13
|
+
}), j = o({
|
|
14
14
|
transition: "color 0.2s ease"
|
|
15
|
-
}),
|
|
15
|
+
}), E = g(
|
|
16
16
|
({
|
|
17
|
-
label:
|
|
18
|
-
selected:
|
|
19
|
-
disabled:
|
|
20
|
-
fullWidth:
|
|
21
|
-
onClick:
|
|
22
|
-
className:
|
|
23
|
-
activeClassName:
|
|
24
|
-
textClassName:
|
|
25
|
-
|
|
26
|
-
y
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
17
|
+
label: a,
|
|
18
|
+
selected: r,
|
|
19
|
+
disabled: c,
|
|
20
|
+
fullWidth: l,
|
|
21
|
+
onClick: p,
|
|
22
|
+
className: f,
|
|
23
|
+
activeClassName: x,
|
|
24
|
+
textClassName: d,
|
|
25
|
+
endSlot: e,
|
|
26
|
+
endSlotClassName: y
|
|
27
|
+
}, u) => {
|
|
28
|
+
const s = !!e;
|
|
29
|
+
return /* @__PURE__ */ h(
|
|
30
|
+
m,
|
|
31
|
+
{
|
|
32
|
+
row: s,
|
|
33
|
+
gap: t.xs,
|
|
34
|
+
w: l ? "full" : void 0,
|
|
35
|
+
justifyContent: "center",
|
|
36
|
+
alignItems: "center",
|
|
37
|
+
ref: u,
|
|
38
|
+
py: t.md,
|
|
39
|
+
px: t.xl,
|
|
40
|
+
onClick: p,
|
|
41
|
+
className: i(
|
|
42
|
+
N,
|
|
43
|
+
{
|
|
44
|
+
[b]: c
|
|
45
|
+
},
|
|
46
|
+
f,
|
|
47
|
+
r && x
|
|
48
|
+
),
|
|
49
|
+
children: [
|
|
50
|
+
/* @__PURE__ */ n(
|
|
51
|
+
S,
|
|
52
|
+
{
|
|
53
|
+
className: i(j, d),
|
|
54
|
+
colorName: r ? "primary" : "tertiary",
|
|
55
|
+
fontWeight: "medium",
|
|
56
|
+
variant: "body-2",
|
|
57
|
+
children: a
|
|
58
|
+
}
|
|
59
|
+
),
|
|
60
|
+
s && /* @__PURE__ */ n(
|
|
61
|
+
m,
|
|
62
|
+
{
|
|
63
|
+
row: !0,
|
|
64
|
+
alignItems: "center",
|
|
65
|
+
flexShrink: 0,
|
|
66
|
+
className: y,
|
|
67
|
+
children: e
|
|
68
|
+
}
|
|
69
|
+
)
|
|
70
|
+
]
|
|
71
|
+
}
|
|
72
|
+
);
|
|
73
|
+
}
|
|
55
74
|
);
|
|
56
75
|
export {
|
|
57
|
-
|
|
76
|
+
E as TabItem
|
|
58
77
|
};
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
1
2
|
export interface TabOption<T extends string | number> {
|
|
2
3
|
/** Текстовая метка опции */
|
|
3
4
|
label: string;
|
|
@@ -5,6 +6,8 @@ export interface TabOption<T extends string | number> {
|
|
|
5
6
|
value: T;
|
|
6
7
|
/** Флаг отключения опции */
|
|
7
8
|
disabled?: boolean;
|
|
9
|
+
/** Элемент справа от подписи, например `Counter` */
|
|
10
|
+
endSlot?: ReactNode;
|
|
8
11
|
}
|
|
9
12
|
export interface TabsProps<T extends string | number> {
|
|
10
13
|
/** Текущее выбранное значение */
|
|
@@ -25,6 +28,8 @@ export interface TabsProps<T extends string | number> {
|
|
|
25
28
|
activeTabClassName?: string;
|
|
26
29
|
/** Класс для текста внутри табов. */
|
|
27
30
|
tabTextClassName?: string;
|
|
31
|
+
/** Класс для обёртки `endSlot` внутри табов. */
|
|
32
|
+
endSlotClassName?: string;
|
|
28
33
|
/** Класс для индикатора выбранного таба. */
|
|
29
34
|
indicatorClassName?: string;
|
|
30
35
|
}
|
|
@@ -41,7 +46,7 @@ export interface TabsProps<T extends string | number> {
|
|
|
41
46
|
* ```
|
|
42
47
|
*/
|
|
43
48
|
declare const Tabs: {
|
|
44
|
-
<T extends string | number>({ value, onChange, options, fullWidth, className, tabClassName, activeTabClassName, tabTextClassName, indicatorClassName, }: TabsProps<T>): import("react/jsx-runtime").JSX.Element;
|
|
49
|
+
<T extends string | number>({ value, onChange, options, fullWidth, className, tabClassName, activeTabClassName, tabTextClassName, endSlotClassName, indicatorClassName, }: TabsProps<T>): import("react/jsx-runtime").JSX.Element;
|
|
45
50
|
displayName: string;
|
|
46
51
|
};
|
|
47
52
|
export { Tabs };
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { jsxs as C, jsx as c } from "react/jsx-runtime";
|
|
2
|
-
import { cx as
|
|
3
|
-
import { useState as p, useRef as I, useEffect as
|
|
4
|
-
import { TabItem as
|
|
5
|
-
import { Box as
|
|
6
|
-
import { theme as
|
|
7
|
-
const { color:
|
|
8
|
-
borderBottom: `1px solid ${
|
|
9
|
-
}),
|
|
2
|
+
import { cx as d, css as m } from "@emotion/css";
|
|
3
|
+
import { useState as p, useRef as I, useEffect as k } from "react";
|
|
4
|
+
import { TabItem as R } from "./TabItem/TabItem.js";
|
|
5
|
+
import { Box as f } from "../../builders/Box/Box.js";
|
|
6
|
+
import { theme as _ } from "../../../utils/theme/index.js";
|
|
7
|
+
const { color: i } = _, g = m({
|
|
8
|
+
borderBottom: `1px solid ${i.border.neutral_alpha_basic}`
|
|
9
|
+
}), j = ({
|
|
10
10
|
value: a,
|
|
11
11
|
onChange: n,
|
|
12
12
|
options: s,
|
|
@@ -15,59 +15,62 @@ const { color: m } = B, R = i({
|
|
|
15
15
|
tabClassName: u,
|
|
16
16
|
activeTabClassName: h,
|
|
17
17
|
tabTextClassName: x,
|
|
18
|
-
|
|
18
|
+
endSlotClassName: w,
|
|
19
|
+
indicatorClassName: v
|
|
19
20
|
}) => {
|
|
20
|
-
const [l,
|
|
21
|
+
const [l, N] = p({
|
|
21
22
|
left: 0,
|
|
22
23
|
width: 0
|
|
23
|
-
}), o = I([]),
|
|
24
|
+
}), o = I([]), S = (e) => (t) => {
|
|
24
25
|
o.current[e] = t;
|
|
25
26
|
};
|
|
26
|
-
|
|
27
|
+
k(() => {
|
|
27
28
|
const e = s.findIndex((y) => y.value === a), t = o.current[e];
|
|
28
|
-
t &&
|
|
29
|
+
t && N({
|
|
29
30
|
left: t.offsetLeft,
|
|
30
31
|
width: t.offsetWidth
|
|
31
32
|
});
|
|
32
33
|
}, [a, s]);
|
|
33
34
|
const T = (e, t = !1) => () => !t && n(e);
|
|
34
35
|
return /* @__PURE__ */ C(
|
|
35
|
-
|
|
36
|
+
f,
|
|
36
37
|
{
|
|
37
38
|
row: !0,
|
|
38
39
|
w: r ? "full" : "auto",
|
|
39
40
|
relative: !0,
|
|
40
|
-
className:
|
|
41
|
+
className: d(g, b),
|
|
41
42
|
children: [
|
|
42
43
|
s.map((e, t) => /* @__PURE__ */ c(
|
|
43
|
-
|
|
44
|
+
R,
|
|
44
45
|
{
|
|
45
46
|
selected: a === e.value,
|
|
46
47
|
onClick: T(e.value, e.disabled),
|
|
47
|
-
ref:
|
|
48
|
+
ref: S(t),
|
|
48
49
|
label: e.label,
|
|
49
50
|
disabled: e.disabled,
|
|
50
51
|
fullWidth: r,
|
|
51
52
|
className: u,
|
|
52
53
|
activeClassName: h,
|
|
53
|
-
textClassName: x
|
|
54
|
+
textClassName: x,
|
|
55
|
+
endSlot: e.endSlot,
|
|
56
|
+
endSlotClassName: w
|
|
54
57
|
},
|
|
55
58
|
e.value
|
|
56
59
|
)),
|
|
57
60
|
/* @__PURE__ */ c(
|
|
58
|
-
|
|
61
|
+
f,
|
|
59
62
|
{
|
|
60
63
|
h: 2,
|
|
61
64
|
w: l.width,
|
|
62
65
|
absolute: !0,
|
|
63
66
|
bottom: -1,
|
|
64
67
|
left: l.left,
|
|
65
|
-
backgroundColor:
|
|
66
|
-
className:
|
|
67
|
-
|
|
68
|
+
backgroundColor: i.border.accent_primary,
|
|
69
|
+
className: d(
|
|
70
|
+
m({
|
|
68
71
|
transition: "left 0.2s ease, width 0.2s ease"
|
|
69
72
|
}),
|
|
70
|
-
|
|
73
|
+
v
|
|
71
74
|
)
|
|
72
75
|
}
|
|
73
76
|
)
|
|
@@ -75,7 +78,7 @@ const { color: m } = B, R = i({
|
|
|
75
78
|
}
|
|
76
79
|
);
|
|
77
80
|
};
|
|
78
|
-
|
|
81
|
+
j.displayName = "Tabs";
|
|
79
82
|
export {
|
|
80
|
-
|
|
83
|
+
j as Tabs
|
|
81
84
|
};
|
|
@@ -5,32 +5,32 @@ import { theme as b } from "../../../utils/theme/index.js";
|
|
|
5
5
|
import { Box as h } from "../../builders/Box/Box.js";
|
|
6
6
|
const { color: i, cornerRadius: o, height: t, transition: d } = b, S = {
|
|
7
7
|
primary: {
|
|
8
|
-
bg: i.fill.
|
|
8
|
+
bg: i.fill.accent_tint,
|
|
9
9
|
text: i.text.accent,
|
|
10
10
|
icon: i.icon.accent
|
|
11
11
|
},
|
|
12
12
|
secondary: {
|
|
13
|
-
bg: i.fill.
|
|
13
|
+
bg: i.fill.neutral_tint,
|
|
14
14
|
text: i.text.secondary,
|
|
15
15
|
icon: i.icon.tertiary
|
|
16
16
|
},
|
|
17
17
|
negative: {
|
|
18
|
-
bg: i.fill.
|
|
18
|
+
bg: i.fill.negative_tint,
|
|
19
19
|
text: i.text.negative,
|
|
20
20
|
icon: i.icon.negative
|
|
21
21
|
},
|
|
22
22
|
positive: {
|
|
23
|
-
bg: i.fill.
|
|
23
|
+
bg: i.fill.positive_tint,
|
|
24
24
|
text: i.text.positive,
|
|
25
25
|
icon: i.icon.positive
|
|
26
26
|
},
|
|
27
27
|
warning: {
|
|
28
|
-
bg: i.fill.
|
|
28
|
+
bg: i.fill.warning_tint,
|
|
29
29
|
text: i.text.warning,
|
|
30
30
|
icon: i.icon.warning
|
|
31
31
|
},
|
|
32
32
|
neutral: {
|
|
33
|
-
bg: i.fill.
|
|
33
|
+
bg: i.fill.neutral_tint,
|
|
34
34
|
text: i.text.tertiary,
|
|
35
35
|
icon: i.icon.tertiary
|
|
36
36
|
},
|
|
@@ -40,7 +40,7 @@ const { color: i, cornerRadius: o, height: t, transition: d } = b, S = {
|
|
|
40
40
|
icon: "var(--icon-transfer)"
|
|
41
41
|
},
|
|
42
42
|
custom: {
|
|
43
|
-
bg: i.fill.
|
|
43
|
+
bg: i.fill.accent_tint,
|
|
44
44
|
text: i.text.accent,
|
|
45
45
|
icon: i.icon.accent
|
|
46
46
|
}
|
|
@@ -126,7 +126,7 @@ const { color: i, cornerRadius: o, height: t, transition: d } = b, S = {
|
|
|
126
126
|
},
|
|
127
127
|
"&:has(img)": {
|
|
128
128
|
backgroundColor: "transparent",
|
|
129
|
-
border: `1px solid ${i.border.
|
|
129
|
+
border: `1px solid ${i.border.neutral_alpha_low}`
|
|
130
130
|
}
|
|
131
131
|
}), [n, e, c]);
|
|
132
132
|
return /* @__PURE__ */ v(
|