@ztwoint/z-ui 0.1.8
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 +24 -0
- package/dist/css/config/colors/backgrounds.css +20 -0
- package/dist/css/config/colors/components/alert.css +83 -0
- package/dist/css/config/colors/components/avatar.css +53 -0
- package/dist/css/config/colors/components/badge.css +137 -0
- package/dist/css/config/colors/components/button.css +93 -0
- package/dist/css/config/colors/components/checkbox.css +7 -0
- package/dist/css/config/colors/components/featured-icon.css +80 -0
- package/dist/css/config/colors/components/progress-bar.css +7 -0
- package/dist/css/config/colors/components/radio-button.css +7 -0
- package/dist/css/config/colors/components/scroll-overlay.css +17 -0
- package/dist/css/config/colors/components/tab.css +60 -0
- package/dist/css/config/colors/components/text-button.css +67 -0
- package/dist/css/config/colors/components/toggle-switch.css +3 -0
- package/dist/css/config/colors/components/toggle.css +25 -0
- package/dist/css/config/colors/defaults.css +113 -0
- package/dist/css/config/colors/icons.css +81 -0
- package/dist/css/config/colors/overlay.css +3 -0
- package/dist/css/config/colors/shape.css +163 -0
- package/dist/css/config/colors/stroke.css +63 -0
- package/dist/css/config/colors/surfaces.css +141 -0
- package/dist/css/config/colors/text.css +77 -0
- package/dist/css/config/config.css +39 -0
- package/dist/css/config/typography/2xl.css +100 -0
- package/dist/css/config/typography/3xl.css +100 -0
- package/dist/css/config/typography/4xl.css +100 -0
- package/dist/css/config/typography/base.css +100 -0
- package/dist/css/config/typography/lg.css +100 -0
- package/dist/css/config/typography/sm.css +100 -0
- package/dist/css/config/typography/typography.css +8 -0
- package/dist/css/config/typography/xl.css +100 -0
- package/dist/css/config/typography/xs.css +100 -0
- package/package.json +96 -0
package/README.md
ADDED
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# Z2Data UI Library
|
|
2
|
+
|
|
3
|
+
A modern React UI component library built with TypeScript, Vite, and Tailwind CSS.
|
|
4
|
+
|
|
5
|
+
## Features
|
|
6
|
+
|
|
7
|
+
- ๐ Built with React 18 and TypeScript
|
|
8
|
+
- ๐จ Styled with Tailwind CSS
|
|
9
|
+
- ๐ฆ Tree-shakeable ES modules
|
|
10
|
+
- ๐ Storybook documentation
|
|
11
|
+
- ๐ฎ Interactive playground for development
|
|
12
|
+
- ๐ง Fully customizable components
|
|
13
|
+
- ๐งช Comprehensive test suite with Vitest
|
|
14
|
+
|
|
15
|
+
## Installation
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
npm install @ztwoint/z-ui
|
|
19
|
+
# or
|
|
20
|
+
yarn add @ztwoint/z-ui
|
|
21
|
+
```
|
|
22
|
+
> Note: To use this package on a remote server, you need to set up an SSH key with access to this repository.
|
|
23
|
+
|
|
24
|
+
This package will be published to npm registry later.
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/* neutral */
|
|
2
|
+
@utility bg-neutral-default {
|
|
3
|
+
background-color: var(--color-neutral-00);
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
@utility bg-neutral-secondary {
|
|
7
|
+
background-color: var(--color-neutral-50);
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
@utility bg-neutral-elevated {
|
|
11
|
+
background-color: var(--color-neutral-75);
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
@utility bg-neutral-attention {
|
|
15
|
+
background-color: var(--color-neutral-200);
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
@utility bg-neutral-transparent {
|
|
19
|
+
background-color: var(--color-alpha-white-00);
|
|
20
|
+
}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
/* NEUTRAL */
|
|
2
|
+
.c-alert-neutral-stroke {
|
|
3
|
+
border-color: var(--color-alpha-white-50);
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
.c-alert-neutral-bg {
|
|
7
|
+
background-color: var(--color-surface-neutral-default);
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
.c-alert-neutral-icon {
|
|
11
|
+
fill: var(--color-shape-neutral-default);
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
.c-alert-neutral-subtitle {
|
|
15
|
+
color: var(--color-subtitle-primary);
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
.c-alert-neutral-body {
|
|
19
|
+
color: var(--color-subtitle-secondary);
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
/* WARNING */
|
|
23
|
+
.c-alert-warning-stroke {
|
|
24
|
+
border-color: var(--color-warning-200);
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
.c-alert-warning-bg {
|
|
28
|
+
background-color: var(--color-warning-50);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
.c-alert-warning-icon {
|
|
32
|
+
fill: var(--color-warning-600);
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
.c-alert-warning-subtitle {
|
|
36
|
+
color: var(--color-warning-950);
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
.c-alert-warning-body {
|
|
40
|
+
color: rgba(69, 44, 3, 0.8);
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
/* DANGER */
|
|
44
|
+
.c-alert-danger-stroke {
|
|
45
|
+
border-color: var(--color-danger-200);
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
.c-alert-danger-bg {
|
|
49
|
+
background-color: var(--color-danger-50);
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
.c-alert-danger-icon {
|
|
53
|
+
fill: var(--color-danger-600);
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
.c-alert-danger-subtitle {
|
|
57
|
+
color: var(--color-danger-950);
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
.c-alert-danger-body {
|
|
61
|
+
color: rgba(62, 20, 17, 0.8);
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
/* DESTRUCTIVE */
|
|
65
|
+
.c-alert-destructive-stroke {
|
|
66
|
+
border-color: var(--color-danger-600);
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
.c-alert-destructive-bg {
|
|
70
|
+
background-color: var(--color-danger-100);
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
.c-alert-destructive-icon {
|
|
74
|
+
fill: var(--color-danger-600);
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
.c-alert-destructive-subtitle {
|
|
78
|
+
color: var(--color-danger-600);
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
.c-alert-destructive-body {
|
|
82
|
+
color: rgba(62, 20, 17, 0.8);
|
|
83
|
+
}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/* blue */
|
|
2
|
+
.c-avatar-blue-surface {
|
|
3
|
+
background-color: var(--color-accent-100);
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
.c-avatar-blue-name {
|
|
7
|
+
color: var(--color-accent-950);
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
/* red */
|
|
11
|
+
.c-avatar-red-surface {
|
|
12
|
+
background-color: var(--color-danger-100);
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
.c-avatar-red-name {
|
|
16
|
+
color: var(--color-danger-950);
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
/* yellow */
|
|
20
|
+
.c-avatar-yellow-surface {
|
|
21
|
+
background-color: var(--color-warning-100);
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
.c-avatar-yellow-name {
|
|
25
|
+
color: var(--color-warning-950);
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
/* green */
|
|
29
|
+
.c-avatar-green-surface {
|
|
30
|
+
background-color: var(--color-success-100);
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
.c-avatar-green-name {
|
|
34
|
+
color: var(--color-success-950);
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
/* purple */
|
|
38
|
+
.c-avatar-purple-surface {
|
|
39
|
+
background-color: var(--color-purple-100);
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
.c-avatar-purple-name {
|
|
43
|
+
color: var(--color-purple-950);
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
/* sky */
|
|
47
|
+
.c-avatar-sky-surface {
|
|
48
|
+
background-color: var(--color-sky-100);
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
.c-avatar-sky-name {
|
|
52
|
+
color: var(--color-sky-950);
|
|
53
|
+
}
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
/* FILLED (background-color) */
|
|
2
|
+
.c-badge-gray {
|
|
3
|
+
background-color: var(--color-neutral-900);
|
|
4
|
+
}
|
|
5
|
+
.c-badge-accent {
|
|
6
|
+
background-color: var(--color-accent-600);
|
|
7
|
+
}
|
|
8
|
+
.c-badge-danger {
|
|
9
|
+
background-color: var(--color-danger-600);
|
|
10
|
+
}
|
|
11
|
+
.c-badge-success {
|
|
12
|
+
background-color: var(--color-success-600);
|
|
13
|
+
}
|
|
14
|
+
.c-badge-warning {
|
|
15
|
+
background-color: var(--color-warning-600);
|
|
16
|
+
}
|
|
17
|
+
.c-badge-purple {
|
|
18
|
+
background-color: var(--color-purple-600);
|
|
19
|
+
}
|
|
20
|
+
.c-badge-sky {
|
|
21
|
+
background-color: var(--color-sky-600);
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
/* LIGHT (background-color) */
|
|
25
|
+
.c-badge-gray-light {
|
|
26
|
+
background-color: var(--color-gray-25);
|
|
27
|
+
}
|
|
28
|
+
.c-badge-accent-light {
|
|
29
|
+
background-color: var(--color-accent-50);
|
|
30
|
+
}
|
|
31
|
+
.c-badge-danger-light {
|
|
32
|
+
background-color: var(--color-danger-50);
|
|
33
|
+
}
|
|
34
|
+
.c-badge-success-light {
|
|
35
|
+
background-color: var(--color-success-50);
|
|
36
|
+
}
|
|
37
|
+
.c-badge-warning-light {
|
|
38
|
+
background-color: var(--color-warning-50);
|
|
39
|
+
}
|
|
40
|
+
.c-badge-purple-light {
|
|
41
|
+
background-color: var(--color-purple-50);
|
|
42
|
+
}
|
|
43
|
+
.c-badge-sky-light {
|
|
44
|
+
background-color: var(--color-sky-50);
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
/* STROKE (border-color) */
|
|
48
|
+
.c-badge-stroke-gray {
|
|
49
|
+
border-color: var(--color-gray-150);
|
|
50
|
+
}
|
|
51
|
+
.c-badge-stroke-accent {
|
|
52
|
+
border-color: var(--color-accent-100);
|
|
53
|
+
}
|
|
54
|
+
.c-badge-stroke-danger {
|
|
55
|
+
border-color: var(--color-danger-100);
|
|
56
|
+
}
|
|
57
|
+
.c-badge-stroke-success {
|
|
58
|
+
border-color: var(--color-success-100);
|
|
59
|
+
}
|
|
60
|
+
.c-badge-stroke-warning {
|
|
61
|
+
border-color: var(--color-warning-100);
|
|
62
|
+
}
|
|
63
|
+
.c-badge-stroke-purple {
|
|
64
|
+
border-color: var(--color-purple-100);
|
|
65
|
+
}
|
|
66
|
+
.c-badge-stroke-sky {
|
|
67
|
+
border-color: var(--color-sky-100);
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
/* TEXT (color) */
|
|
71
|
+
.c-badge-text-gray {
|
|
72
|
+
color: var(--color-neutral-600);
|
|
73
|
+
}
|
|
74
|
+
.c-badge-text-accent {
|
|
75
|
+
color: var(--color-accent-600);
|
|
76
|
+
}
|
|
77
|
+
.c-badge-text-danger {
|
|
78
|
+
color: var(--color-danger-600);
|
|
79
|
+
}
|
|
80
|
+
.c-badge-text-success {
|
|
81
|
+
color: var(--color-success-600);
|
|
82
|
+
}
|
|
83
|
+
.c-badge-text-warning {
|
|
84
|
+
color: var(--color-warning-600);
|
|
85
|
+
}
|
|
86
|
+
.c-badge-text-purple {
|
|
87
|
+
color: var(--color-purple-600);
|
|
88
|
+
}
|
|
89
|
+
.c-badge-text-sky {
|
|
90
|
+
color: var(--color-sky-600);
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
/* SHAPE (fill) */
|
|
94
|
+
.c-badge-shape-fill-gray {
|
|
95
|
+
fill: var(--color-neutral-600);
|
|
96
|
+
}
|
|
97
|
+
.c-badge-shape-fill-accent {
|
|
98
|
+
fill: var(--color-accent-600);
|
|
99
|
+
}
|
|
100
|
+
.c-badge-shape-fill-danger {
|
|
101
|
+
fill: var(--color-danger-600);
|
|
102
|
+
}
|
|
103
|
+
.c-badge-shape-fill-success {
|
|
104
|
+
fill: var(--color-success-600);
|
|
105
|
+
}
|
|
106
|
+
.c-badge-shape-fill-warning {
|
|
107
|
+
fill: var(--color-warning-600);
|
|
108
|
+
}
|
|
109
|
+
.c-badge-shape-fill-purple {
|
|
110
|
+
fill: var(--color-purple-600);
|
|
111
|
+
}
|
|
112
|
+
.c-badge-shape-fill-sky {
|
|
113
|
+
fill: var(--color-sky-600);
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
/* SHAPE (background-color) */
|
|
117
|
+
.c-badge-shape-bg-gray {
|
|
118
|
+
background-color: var(--color-neutral-600);
|
|
119
|
+
}
|
|
120
|
+
.c-badge-shape-bg-accent {
|
|
121
|
+
background-color: var(--color-accent-600);
|
|
122
|
+
}
|
|
123
|
+
.c-badge-shape-bg-danger {
|
|
124
|
+
background-color: var(--color-danger-600);
|
|
125
|
+
}
|
|
126
|
+
.c-badge-shape-bg-success {
|
|
127
|
+
background-color: var(--color-success-600);
|
|
128
|
+
}
|
|
129
|
+
.c-badge-shape-bg-warning {
|
|
130
|
+
background-color: var(--color-warning-600);
|
|
131
|
+
}
|
|
132
|
+
.c-badge-shape-bg-purple {
|
|
133
|
+
background-color: var(--color-purple-600);
|
|
134
|
+
}
|
|
135
|
+
.c-badge-shape-bg-sky {
|
|
136
|
+
background-color: var(--color-sky-600);
|
|
137
|
+
}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
/* Button utility classes for Tailwind CSS */
|
|
2
|
+
|
|
3
|
+
/* Type: Filled Style : Neutral */
|
|
4
|
+
@utility button-primary-neutral-surface-default {
|
|
5
|
+
background-color: var(--color-neutral-950);
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
@utility button-primary-neutral-surface-hover {
|
|
9
|
+
background-color: var(--color-neutral-900);
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
@utility button-primary-neutral-surface-pressed {
|
|
13
|
+
background-color: var(--color-neutral-500);
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
@utility button-primary-neutral-surface-disabled {
|
|
17
|
+
background-color: var(--color-neutral-50);
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
/* Type: Filled Style : Brand */
|
|
21
|
+
@utility button-primary-brand-surface-default {
|
|
22
|
+
background-color: var(--color-accent-600);
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
@utility button-primary-brand-surface-hover {
|
|
26
|
+
background-color: var(--color-accent-700);
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
@utility button-primary-brand-surface-pressed {
|
|
30
|
+
background-color: var(--color-accent-500);
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
@utility button-primary-brand-surface-disabled {
|
|
34
|
+
background-color: var(--color-neutral-50);
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
/* Type : Filled Style : Danger */
|
|
38
|
+
@utility button-primary-danger-surface-default {
|
|
39
|
+
background-color: var(--color-rose-600);
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
@utility button-primary-danger-surface-hover {
|
|
43
|
+
background-color: var(--color-rose-700);
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
@utility button-primary-danger-surface-pressed {
|
|
47
|
+
background-color: var(--color-rose-500);
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
@utility button-primary-danger-surface-disabled {
|
|
51
|
+
background-color: var(--color-neutral-50);
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
/* Type : Stroke Style : Neutral */
|
|
55
|
+
@utility button-secondary-surface-default {
|
|
56
|
+
background-color: var(--color-neutral-00);
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
@utility button-secondary-surface-hover {
|
|
60
|
+
background-color: var(--color-neutral-50);
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
@utility button-secondary-surface-pressed {
|
|
64
|
+
background-color: var(--color-neutral-100);
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
@utility button-secondary-surface-disabled {
|
|
68
|
+
background-color: var(--color-neutral-50);
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
/* Text utility classes */
|
|
72
|
+
@utility text-default-primary {
|
|
73
|
+
color: var(--color-neutral-950);
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
@utility text-default-secondary {
|
|
77
|
+
color: var(--color-neutral-600);
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
@utility text-default-disabled {
|
|
81
|
+
color: var(--color-neutral-400);
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
@utility text-default-danger {
|
|
85
|
+
color: var(--color-rose-600);
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
/* Shadow utility class */
|
|
89
|
+
@utility shadown-default {
|
|
90
|
+
box-shadow:
|
|
91
|
+
0px 1px 2px 0px var(--color-alpha-dark-50),
|
|
92
|
+
0px 0px 0px var(0.5px) var(--color-neutral-150);
|
|
93
|
+
}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
/* blue */
|
|
2
|
+
.c-featured-icon-surface {
|
|
3
|
+
fill: var(--color-accent-100);
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
.c-featured-icon-icon {
|
|
7
|
+
fill: var(--color-accent-950);
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
.c-featured-icon-bg-icon {
|
|
11
|
+
background-color: var(--color-accent-950);
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
/* red */
|
|
15
|
+
.c-featured-icon-surface {
|
|
16
|
+
fill: var(--color-danger-100);
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
.c-featured-icon-icon {
|
|
20
|
+
fill: var(--color-danger-950);
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
.c-featured-icon-bg-icon {
|
|
24
|
+
background-color: var(--color-danger-950);
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
/* yellow */
|
|
28
|
+
.c-featured-icon-surface {
|
|
29
|
+
fill: var(--color-warning-100);
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
.c-featured-icon-icon {
|
|
33
|
+
fill: var(--color-warning-950);
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
.c-featured-icon-bg-icon {
|
|
37
|
+
background-color: var(--color-warning-950);
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
/* green */
|
|
41
|
+
.c-featured-icon-surface {
|
|
42
|
+
fill: var(--color-success-100);
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
.c-featured-icon-icon {
|
|
46
|
+
fill: var(--color-success-950);
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
.c-featured-icon-bg-icon {
|
|
50
|
+
background-color: var(--color-success-950);
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
/* purple */
|
|
54
|
+
.c-featured-icon-surface {
|
|
55
|
+
fill: var(--color-purple-100);
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
.c-featured-icon-icon {
|
|
59
|
+
fill: var(--color-purple-950);
|
|
60
|
+
&:icon {
|
|
61
|
+
padding: 40px;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
.c-featured-icon-bg-icon {
|
|
66
|
+
background-color: var(--color-purple-950);
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
/* sky */
|
|
70
|
+
.c-featured-icon-surface {
|
|
71
|
+
fill: var(--color-sky-100);
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
.c-featured-icon-icon {
|
|
75
|
+
fill: var(--color-sky-950);
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
.c-featured-icon-bg-icon {
|
|
79
|
+
background-color: var(--color-sky-950);
|
|
80
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/* white */
|
|
2
|
+
.c-scroll-overlay-white {
|
|
3
|
+
background-color: var(--color-neutral-00);
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
.c-scroll-overlay-white-transparent {
|
|
7
|
+
background-color: rgba(255, 255, 255, 0);
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
/* secondary */
|
|
11
|
+
.c-scroll-overlay-secondary {
|
|
12
|
+
background-color: var(--color-neutral-25);
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
.c-scroll-overlay-secondary-transparent {
|
|
16
|
+
background-color: rgba(249, 250, 250, 0);
|
|
17
|
+
}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/* Tab component specific styles */
|
|
2
|
+
|
|
3
|
+
/* Base underline for all tabs */
|
|
4
|
+
[data-slot='tabs-trigger'] {
|
|
5
|
+
position: relative;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
[data-slot='tabs-trigger']::after {
|
|
9
|
+
content: '';
|
|
10
|
+
position: absolute;
|
|
11
|
+
left: 50%;
|
|
12
|
+
bottom: 0;
|
|
13
|
+
transform: translateX(-50%);
|
|
14
|
+
width: calc(100% - 24px);
|
|
15
|
+
border-bottom: 0.5px solid #000000;
|
|
16
|
+
opacity: 0;
|
|
17
|
+
transition: opacity 0.2s ease;
|
|
18
|
+
z-index: 10;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
/* Active state for underline */
|
|
22
|
+
[data-slot='tabs-trigger'][data-state='active']::after {
|
|
23
|
+
opacity: 1;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
/* Active state for text */
|
|
27
|
+
[data-slot='tabs-trigger'][data-state='active'] .tab-label {
|
|
28
|
+
color: var(--color-neutral-950) !important;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
/* Active state for text */
|
|
32
|
+
[data-slot='tabs-trigger'][data-state='active'] .tab-icon {
|
|
33
|
+
color: var(--color-neutral-950) !important;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
/* Inactive state for text */
|
|
37
|
+
[data-slot='tabs-trigger']:not([data-state='active']) .tab-label {
|
|
38
|
+
color: var(--color-neutral-600) !important;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
/* Inactive state for text */
|
|
42
|
+
[data-slot='tabs-trigger']:not([data-state='active']) .tab-icon {
|
|
43
|
+
color: var(--color-neutral-600) !important;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
/* Icon size enforcement */
|
|
47
|
+
[data-slot='tabs-trigger'] svg {
|
|
48
|
+
width: 14px !important;
|
|
49
|
+
height: 14px !important;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
/* Hover state for text */
|
|
53
|
+
[data-slot='tabs-trigger']:hover .tab-label {
|
|
54
|
+
color: var(--color-neutral-950) !important;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
/* Hover state for icon */
|
|
58
|
+
[data-slot='tabs-trigger']:hover .tab-icon {
|
|
59
|
+
color: var(--color-neutral-950) !important;
|
|
60
|
+
}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
/* neutral */
|
|
2
|
+
.c-text-button-neutral {
|
|
3
|
+
color: var(--color-neutral-950);
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
.c-text-button-neutral-hover {
|
|
7
|
+
color: var(--color-neutral-600);
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
.c-text-button-neutral-pressed {
|
|
11
|
+
color: var(--color-neutral-400);
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
.c-text-button-neutral-disabled {
|
|
15
|
+
color: var(--color-neutral-400);
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
/* accent */
|
|
19
|
+
.c-text-button-accent {
|
|
20
|
+
color: var(--color-accent-600);
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
.c-text-button-accent-hover {
|
|
24
|
+
color: var(--color-accent-800);
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
.c-text-button-accent-pressed {
|
|
28
|
+
color: var(--color-accent-400);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
.c-text-button-accent-disabled {
|
|
32
|
+
color: var(--color-neutral-400);
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
/* danger */
|
|
36
|
+
.c-text-button-danger {
|
|
37
|
+
color: var(--color-danger-600);
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
.c-text-button-danger-hover {
|
|
41
|
+
color: var(--color-danger-800);
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
.c-text-button-danger-pressed {
|
|
45
|
+
color: var(--color-danger-400);
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
.c-text-button-danger-disabled {
|
|
49
|
+
color: var(--color-neutral-400);
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
/* success */
|
|
53
|
+
.c-text-button-success {
|
|
54
|
+
color: var(--color-success-600);
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
.c-text-button-success-hover {
|
|
58
|
+
color: var(--color-success-800);
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
.c-text-button-success-pressed {
|
|
62
|
+
color: var(--color-success-400);
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
.c-text-button-success-disabled {
|
|
66
|
+
color: var(--color-neutral-400);
|
|
67
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/* surface */
|
|
2
|
+
.c-toggle-surface {
|
|
3
|
+
background-color: var(--color-neutral-200);
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
.c-toggle-surface-unactive-hover {
|
|
7
|
+
background-color: var(--color-neutral-300);
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
.c-toggle-surface-active {
|
|
11
|
+
background-color: var(--color-accent-600);
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
.c-toggle-surface-active-hover {
|
|
15
|
+
background-color: var(--color-accent-700);
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
/* knob */
|
|
19
|
+
.c-toggle-knob {
|
|
20
|
+
background-color: var(--color-neutral-00);
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
.c-toggle-knob-disabled {
|
|
24
|
+
background-color: var(--color-neutral-300);
|
|
25
|
+
}
|