@rovula/ui 0.1.28 → 0.1.30
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/dist/cjs/bundle.css +522 -67
- package/dist/cjs/bundle.js +589 -589
- package/dist/cjs/bundle.js.map +1 -1
- package/dist/cjs/types/components/DataTable/DataTable.d.ts +195 -4
- package/dist/cjs/types/components/DataTable/DataTable.editing.d.ts +20 -0
- package/dist/cjs/types/components/DataTable/DataTable.editing.types.d.ts +145 -0
- package/dist/cjs/types/components/DataTable/DataTable.stories.d.ts +294 -6
- package/dist/cjs/types/components/Dropdown/Dropdown.d.ts +22 -0
- package/dist/cjs/types/components/Dropdown/Dropdown.stories.d.ts +4 -0
- package/dist/cjs/types/components/ScrollArea/ScrollArea.d.ts +3 -3
- package/dist/cjs/types/components/ScrollArea/ScrollArea.stories.d.ts +4 -0
- package/dist/cjs/types/components/Table/Table.d.ts +33 -3
- package/dist/cjs/types/components/Table/Table.stories.d.ts +86 -4
- package/dist/cjs/types/components/TextInput/TextInput.stories.d.ts +8 -0
- package/dist/cjs/types/components/TextInput/TextInput.styles.d.ts +1 -0
- package/dist/components/DataTable/DataTable.editing.js +385 -0
- package/dist/components/DataTable/DataTable.editing.types.js +1 -0
- package/dist/components/DataTable/DataTable.js +993 -50
- package/dist/components/DataTable/DataTable.stories.js +1137 -25
- package/dist/components/Dropdown/Dropdown.js +8 -6
- package/dist/components/ScrollArea/ScrollArea.js +2 -2
- package/dist/components/ScrollArea/ScrollArea.stories.js +68 -2
- package/dist/components/Table/Table.js +103 -13
- package/dist/components/Table/Table.stories.js +226 -9
- package/dist/components/TextInput/TextInput.js +6 -4
- package/dist/components/TextInput/TextInput.stories.js +8 -0
- package/dist/components/TextInput/TextInput.styles.js +7 -1
- package/dist/esm/bundle.css +522 -67
- package/dist/esm/bundle.js +1545 -1545
- package/dist/esm/bundle.js.map +1 -1
- package/dist/esm/types/components/DataTable/DataTable.d.ts +195 -4
- package/dist/esm/types/components/DataTable/DataTable.editing.d.ts +20 -0
- package/dist/esm/types/components/DataTable/DataTable.editing.types.d.ts +145 -0
- package/dist/esm/types/components/DataTable/DataTable.stories.d.ts +294 -6
- package/dist/esm/types/components/Dropdown/Dropdown.d.ts +22 -0
- package/dist/esm/types/components/Dropdown/Dropdown.stories.d.ts +4 -0
- package/dist/esm/types/components/ScrollArea/ScrollArea.d.ts +3 -3
- package/dist/esm/types/components/ScrollArea/ScrollArea.stories.d.ts +4 -0
- package/dist/esm/types/components/Table/Table.d.ts +33 -3
- package/dist/esm/types/components/Table/Table.stories.d.ts +86 -4
- package/dist/esm/types/components/TextInput/TextInput.stories.d.ts +8 -0
- package/dist/esm/types/components/TextInput/TextInput.styles.d.ts +1 -0
- package/dist/index.d.ts +493 -122
- package/dist/src/theme/global.css +775 -96
- package/package.json +14 -2
- package/src/components/DataTable/DataTable.editing.tsx +861 -0
- package/src/components/DataTable/DataTable.editing.types.ts +192 -0
- package/src/components/DataTable/DataTable.stories.tsx +2310 -31
- package/src/components/DataTable/DataTable.test.tsx +696 -0
- package/src/components/DataTable/DataTable.tsx +2275 -94
- package/src/components/Dropdown/Dropdown.tsx +22 -6
- package/src/components/ScrollArea/ScrollArea.stories.tsx +146 -3
- package/src/components/ScrollArea/ScrollArea.tsx +6 -6
- package/src/components/Table/Table.stories.tsx +789 -44
- package/src/components/Table/Table.tsx +306 -28
- package/src/components/TextInput/TextInput.stories.tsx +80 -0
- package/src/components/TextInput/TextInput.styles.ts +7 -1
- package/src/components/TextInput/TextInput.tsx +21 -14
- package/src/test/setup.ts +50 -0
- package/src/theme/global.css +81 -42
- package/src/theme/presets/colors.js +12 -0
- package/src/theme/themes/variable.css +27 -28
- package/src/theme/tokens/baseline.css +2 -1
- package/src/theme/tokens/components/scrollbar.css +9 -4
- package/src/theme/tokens/components/table.css +63 -0
package/src/theme/global.css
CHANGED
|
@@ -12,13 +12,29 @@
|
|
|
12
12
|
@tailwind utilities;
|
|
13
13
|
|
|
14
14
|
@layer base {
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
15
|
+
/*
|
|
16
|
+
* Scrollbar baseline
|
|
17
|
+
*
|
|
18
|
+
* Chrome 121+ conflict: when scrollbar-width is set on an element,
|
|
19
|
+
* Chrome IGNORES -webkit-scrollbar width/height entirely.
|
|
20
|
+
* They are mutually exclusive for sizing.
|
|
21
|
+
*
|
|
22
|
+
* Solution: apply scrollbar-width only in Firefox (where -webkit-scrollbar
|
|
23
|
+
* is not supported). Chrome/Safari use -webkit-scrollbar exclusively.
|
|
24
|
+
*/
|
|
25
|
+
|
|
26
|
+
/* Firefox only — standard scrollbar API */
|
|
27
|
+
@supports (-moz-appearance: none) {
|
|
28
|
+
* {
|
|
29
|
+
scrollbar-width: thin;
|
|
30
|
+
scrollbar-color: var(--scrollbar-thumb-default-color) transparent;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
/* Chrome / Safari / Edge — WebKit scrollbar API */
|
|
35
|
+
/* scrollbar-width must NOT be set on these elements or sizes are ignored */
|
|
21
36
|
*::-webkit-scrollbar {
|
|
37
|
+
-webkit-appearance: none;
|
|
22
38
|
width: var(--scrollbar-s-thickness);
|
|
23
39
|
height: var(--scrollbar-s-thickness);
|
|
24
40
|
background: transparent;
|
|
@@ -47,11 +63,9 @@
|
|
|
47
63
|
|
|
48
64
|
body {
|
|
49
65
|
/* @apply bg-background text-foreground; */
|
|
50
|
-
/* @apply bg-[var(--background)] text-[var(--foreground)]; */
|
|
51
66
|
}
|
|
52
67
|
|
|
53
|
-
/* hide input number arrow */
|
|
54
|
-
/* Chrome, Safari, Edge, Opera */
|
|
68
|
+
/* hide input number arrow — Chrome, Safari, Edge, Opera */
|
|
55
69
|
input::-webkit-outer-spin-button,
|
|
56
70
|
input::-webkit-inner-spin-button {
|
|
57
71
|
-webkit-appearance: none;
|
|
@@ -67,68 +81,93 @@
|
|
|
67
81
|
@layer utilities {
|
|
68
82
|
|
|
69
83
|
/* ------------------------------------------------------------------ */
|
|
70
|
-
/*
|
|
71
|
-
/*
|
|
72
|
-
/*
|
|
73
|
-
/*
|
|
84
|
+
/* ui-scrollbar — design-system themed scrollbar */
|
|
85
|
+
/* */
|
|
86
|
+
/* Sizing uses COMPOUND SELECTORS (not CSS variables) because */
|
|
87
|
+
/* -webkit-scrollbar pseudo-elements don't reliably inherit custom */
|
|
88
|
+
/* properties in Chrome. Compound selectors have higher specificity */
|
|
89
|
+
/* and directly override the base width/height. */
|
|
90
|
+
/* */
|
|
91
|
+
/* Usage: */
|
|
92
|
+
/* <div class="ui-scrollbar"> default M+M */
|
|
93
|
+
/* <div class="ui-scrollbar ui-scrollbar-y-s"> M horiz + S vert */
|
|
74
94
|
/* ------------------------------------------------------------------ */
|
|
75
95
|
|
|
76
|
-
/*
|
|
96
|
+
/* Firefox: standard API */
|
|
97
|
+
@supports (-moz-appearance: none) {
|
|
98
|
+
.ui-scrollbar {
|
|
99
|
+
scrollbar-width: thin;
|
|
100
|
+
scrollbar-color: var(--scrollbar-thumb-default-color) transparent;
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
/* ── Base track: default M on both axes ────────────────────────────── */
|
|
77
105
|
.ui-scrollbar::-webkit-scrollbar {
|
|
78
|
-
|
|
79
|
-
height: var(--scrollbar-
|
|
106
|
+
-webkit-appearance: none;
|
|
107
|
+
height: var(--scrollbar-m-thickness); /* horizontal bar height */
|
|
108
|
+
width: var(--scrollbar-m-thickness); /* vertical bar width */
|
|
80
109
|
background: transparent;
|
|
81
110
|
}
|
|
82
111
|
|
|
83
|
-
/* --- Thumb --- */
|
|
84
112
|
.ui-scrollbar::-webkit-scrollbar-thumb {
|
|
85
113
|
border-radius: 12px;
|
|
86
114
|
background: var(--scrollbar-thumb-default-color);
|
|
115
|
+
/* 2px inset from track edges — matches Figma py-[2px] */
|
|
116
|
+
border: 2px solid transparent;
|
|
117
|
+
background-clip: padding-box;
|
|
87
118
|
}
|
|
88
119
|
|
|
89
120
|
.ui-scrollbar::-webkit-scrollbar-thumb:hover {
|
|
90
121
|
background: var(--scrollbar-thumb-hover-color);
|
|
91
|
-
cursor: pointer;
|
|
92
122
|
}
|
|
93
123
|
|
|
94
|
-
/*
|
|
124
|
+
/* Track border — M only (Figma: S and XS have no border) */
|
|
95
125
|
.ui-scrollbar::-webkit-scrollbar-track:vertical {
|
|
96
126
|
border-left: var(--scrollbar-track-border-width) solid var(--scrollbar-track-border-color);
|
|
97
127
|
}
|
|
98
|
-
|
|
99
|
-
/* --- Track border (horizontal) --- */
|
|
100
128
|
.ui-scrollbar::-webkit-scrollbar-track:horizontal {
|
|
101
129
|
border-top: var(--scrollbar-track-border-width) solid var(--scrollbar-track-border-color);
|
|
102
130
|
}
|
|
103
131
|
|
|
104
|
-
|
|
105
|
-
|
|
132
|
+
/* S and XS: no track border, no thumb inset (compound selector removes it) */
|
|
133
|
+
.ui-scrollbar.ui-scrollbar-s::-webkit-scrollbar-track,
|
|
134
|
+
.ui-scrollbar.ui-scrollbar-x-s::-webkit-scrollbar-track:horizontal,
|
|
135
|
+
.ui-scrollbar.ui-scrollbar-y-s::-webkit-scrollbar-track:vertical,
|
|
136
|
+
.ui-scrollbar.ui-scrollbar-xs::-webkit-scrollbar-track,
|
|
137
|
+
.ui-scrollbar.ui-scrollbar-x-xs::-webkit-scrollbar-track:horizontal,
|
|
138
|
+
.ui-scrollbar.ui-scrollbar-y-xs::-webkit-scrollbar-track:vertical {
|
|
139
|
+
border: none;
|
|
106
140
|
}
|
|
107
141
|
|
|
108
|
-
|
|
142
|
+
.ui-scrollbar::-webkit-scrollbar-corner { background: transparent; }
|
|
109
143
|
|
|
110
|
-
/* Size
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
144
|
+
/* ── Size overrides — compound selectors (0,0,2,0 > 0,0,1,0)
|
|
145
|
+
*
|
|
146
|
+
* IMPORTANT source order: "both axes" MUST come before per-axis rules.
|
|
147
|
+
* Same specificity → last declared wins. Per-axis (x-s, y-s …) must win
|
|
148
|
+
* over both-axes (m, s …) so they are placed AFTER both-axes below. */
|
|
115
149
|
|
|
116
|
-
/*
|
|
117
|
-
.ui-scrollbar-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
}
|
|
150
|
+
/* Both axes — set height AND width together */
|
|
151
|
+
.ui-scrollbar.ui-scrollbar-m::-webkit-scrollbar { height: var(--scrollbar-m-thickness); width: var(--scrollbar-m-thickness); }
|
|
152
|
+
.ui-scrollbar.ui-scrollbar-s::-webkit-scrollbar { height: var(--scrollbar-s-thickness); width: var(--scrollbar-s-thickness); }
|
|
153
|
+
.ui-scrollbar.ui-scrollbar-xs::-webkit-scrollbar { height: var(--scrollbar-xs-thickness); width: var(--scrollbar-xs-thickness); }
|
|
121
154
|
|
|
122
|
-
/*
|
|
123
|
-
.ui-scrollbar-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
155
|
+
/* Per-axis horizontal (height only) — declared after both-axes so they win */
|
|
156
|
+
.ui-scrollbar.ui-scrollbar-x-m::-webkit-scrollbar { height: var(--scrollbar-m-thickness); }
|
|
157
|
+
.ui-scrollbar.ui-scrollbar-x-s::-webkit-scrollbar { height: var(--scrollbar-s-thickness); }
|
|
158
|
+
.ui-scrollbar.ui-scrollbar-x-xs::-webkit-scrollbar { height: var(--scrollbar-xs-thickness); }
|
|
159
|
+
|
|
160
|
+
/* Per-axis vertical (width only) — declared after both-axes so they win */
|
|
161
|
+
.ui-scrollbar.ui-scrollbar-y-m::-webkit-scrollbar { width: var(--scrollbar-m-thickness); }
|
|
162
|
+
.ui-scrollbar.ui-scrollbar-y-s::-webkit-scrollbar { width: var(--scrollbar-s-thickness); }
|
|
163
|
+
.ui-scrollbar.ui-scrollbar-y-xs::-webkit-scrollbar { width: var(--scrollbar-xs-thickness); }
|
|
127
164
|
|
|
128
|
-
/* XS
|
|
129
|
-
.ui-scrollbar-xs::-webkit-scrollbar-
|
|
130
|
-
.ui-scrollbar-xs::-webkit-scrollbar-
|
|
165
|
+
/* XS: no border inset on thumb (4px track has no room) */
|
|
166
|
+
.ui-scrollbar.ui-scrollbar-xs::-webkit-scrollbar-thumb,
|
|
167
|
+
.ui-scrollbar.ui-scrollbar-x-xs::-webkit-scrollbar-thumb:horizontal,
|
|
168
|
+
.ui-scrollbar.ui-scrollbar-y-xs::-webkit-scrollbar-thumb:vertical {
|
|
131
169
|
border: none;
|
|
170
|
+
background-clip: border-box;
|
|
132
171
|
}
|
|
133
172
|
|
|
134
173
|
}
|
|
@@ -170,6 +170,18 @@ module.exports = {
|
|
|
170
170
|
"table-panel-main-line": withColorMixin("--table-panel-main-line"),
|
|
171
171
|
"table-panel-selected": withColorMixin("--table-panel-selected"),
|
|
172
172
|
|
|
173
|
+
// Table component-scoped aliases (resolve from table.css tokens;
|
|
174
|
+
// swap automatically when an ancestor has data-surface="panel")
|
|
175
|
+
"table-c-header-bg": withColorMixin("--table-c-header-bg"),
|
|
176
|
+
"table-c-header-line": withColorMixin("--table-c-header-line"),
|
|
177
|
+
"table-c-border": withColorMixin("--table-c-border"),
|
|
178
|
+
"table-c-row-bg": withColorMixin("--table-c-row-bg"),
|
|
179
|
+
"table-c-row-bg-even": withColorMixin("--table-c-row-bg-even"),
|
|
180
|
+
"table-c-row-line": withColorMixin("--table-c-row-line"),
|
|
181
|
+
"table-c-col-line": withColorMixin("--table-c-col-line"),
|
|
182
|
+
"table-c-hover": withColorMixin("--table-c-hover"),
|
|
183
|
+
"table-c-selected": withColorMixin("--table-c-selected"),
|
|
184
|
+
|
|
173
185
|
// Modal dropdown surface
|
|
174
186
|
"modal-dropdown-surface": withColorMixin("--modal-dropdown-surface"),
|
|
175
187
|
|
|
@@ -77,64 +77,64 @@
|
|
|
77
77
|
--state-primary-text-pressed-skyller: #1e40af;
|
|
78
78
|
--state-secondary-default-xspector: #ececec;
|
|
79
79
|
--state-secondary-default-report-xspector-light-mode: #9b8f00;
|
|
80
|
-
--state-secondary-default-skyller: #
|
|
80
|
+
--state-secondary-default-skyller: #171717;
|
|
81
81
|
--state-secondary-hover-xspector: #fafafa;
|
|
82
82
|
--state-secondary-hover-report-xspector-light-mode: #b1a400;
|
|
83
|
-
--state-secondary-hover-skyller: #
|
|
83
|
+
--state-secondary-hover-skyller: #424242;
|
|
84
84
|
--state-secondary-stroke-xspector: rgba(236 236 236 / 0.48);
|
|
85
85
|
--state-secondary-stroke-report-xspector-light-mode: rgba(155 143 0 / 0.64);
|
|
86
86
|
--state-secondary-stroke-skyller: rgba(189 189 189 / 0.64);
|
|
87
87
|
--state-secondary-hover-bg-xspector: rgba(250 250 250 / 0.08);
|
|
88
88
|
--state-secondary-hover-bg-report-xspector-light-mode: rgba(221 205 0 / 0.08);
|
|
89
|
-
--state-secondary-hover-bg-skyller: rgba(
|
|
89
|
+
--state-secondary-hover-bg-skyller: rgba(66 66 66 / 0.08);
|
|
90
90
|
--state-secondary-pressed-xspector: #bbbbbb;
|
|
91
91
|
--state-secondary-pressed-report-xspector-light-mode: #6f6700;
|
|
92
|
-
--state-secondary-pressed-skyller: #
|
|
92
|
+
--state-secondary-pressed-skyller: #000000;
|
|
93
93
|
--state-secondary-active-xspector: #fafafa;
|
|
94
94
|
--state-secondary-active-report-xspector-light-mode: #b1a400;
|
|
95
|
-
--state-secondary-active-skyller: #
|
|
95
|
+
--state-secondary-active-skyller: #000000;
|
|
96
96
|
--state-secondary-text-solid-xspector: #212b36;
|
|
97
97
|
--state-secondary-text-solid-report-xspector-light-mode: #ffffff;
|
|
98
98
|
--state-secondary-text-solid-skyller: #ffffff;
|
|
99
99
|
--state-secondary-text-outline-xspector: #ececec;
|
|
100
100
|
--state-secondary-text-outline-report-xspector-light-mode: #9b8f00;
|
|
101
|
-
--state-secondary-text-outline-skyller: #
|
|
101
|
+
--state-secondary-text-outline-skyller: #171717;
|
|
102
102
|
--state-secondary-text-hover-xspector: #fafafa;
|
|
103
103
|
--state-secondary-text-hover-report-xspector-light-mode: #b1a400;
|
|
104
|
-
--state-secondary-text-hover-skyller: #
|
|
104
|
+
--state-secondary-text-hover-skyller: #424242;
|
|
105
105
|
--state-secondary-text-pressed-xspector: #c5c5c5;
|
|
106
106
|
--state-secondary-text-pressed-report-xspector-light-mode: #6f6700;
|
|
107
|
-
--state-secondary-text-pressed-skyller: #
|
|
107
|
+
--state-secondary-text-pressed-skyller: #000000;
|
|
108
108
|
--state-tertiary-default-xspector: #8aa2ab;
|
|
109
109
|
--state-tertiary-default-report-xspector-light-mode: #4f4f4f;
|
|
110
|
-
--state-tertiary-default-skyller: #
|
|
110
|
+
--state-tertiary-default-skyller: #60a5fa;
|
|
111
111
|
--state-tertiary-hover-xspector: #adcad6;
|
|
112
112
|
--state-tertiary-hover-report-xspector-light-mode: #6f6f6f;
|
|
113
|
-
--state-tertiary-hover-skyller: #
|
|
113
|
+
--state-tertiary-hover-skyller: #90c0fc;
|
|
114
114
|
--state-tertiary-stroke-xspector: rgba(138 162 171 / 0.48);
|
|
115
115
|
--state-tertiary-stroke-report-xspector-light-mode: rgba(79 79 79 / 0.48);
|
|
116
|
-
--state-tertiary-stroke-skyller: rgba(
|
|
116
|
+
--state-tertiary-stroke-skyller: rgba(189 189 189 / 0.48);
|
|
117
117
|
--state-tertiary-hover-bg-xspector: rgba(173 202 214 / 0.08);
|
|
118
118
|
--state-tertiary-hover-bg-report-xspector-light-mode: rgba(158 158 158 / 0.08);
|
|
119
|
-
--state-tertiary-hover-bg-skyller: rgba(
|
|
119
|
+
--state-tertiary-hover-bg-skyller: rgba(144 192 252 / 0.08);
|
|
120
120
|
--state-tertiary-pressed-xspector: #57656b;
|
|
121
121
|
--state-tertiary-pressed-report-xspector-light-mode: #b1b1b1;
|
|
122
|
-
--state-tertiary-pressed-skyller: #
|
|
122
|
+
--state-tertiary-pressed-skyller: #1e40af;
|
|
123
123
|
--state-tertiary-active-xspector: #adcad6;
|
|
124
124
|
--state-tertiary-active-report-xspector-light-mode: #6f6f6f;
|
|
125
|
-
--state-tertiary-active-skyller: #
|
|
125
|
+
--state-tertiary-active-skyller: #1e3a8a;
|
|
126
126
|
--state-tertiary-text-solid-xspector: #212b36;
|
|
127
127
|
--state-tertiary-text-solid-report-xspector-light-mode: #ffffff;
|
|
128
128
|
--state-tertiary-text-solid-skyller: #ffffff;
|
|
129
129
|
--state-tertiary-text-outline-xspector: #8aa2ab;
|
|
130
130
|
--state-tertiary-text-outline-report-xspector-light-mode: #4f4f4f;
|
|
131
|
-
--state-tertiary-text-outline-skyller: #
|
|
131
|
+
--state-tertiary-text-outline-skyller: #60a5fa;
|
|
132
132
|
--state-tertiary-text-hover-xspector: #adcad6;
|
|
133
133
|
--state-tertiary-text-hover-report-xspector-light-mode: #6f6f6f;
|
|
134
|
-
--state-tertiary-text-hover-skyller: #
|
|
134
|
+
--state-tertiary-text-hover-skyller: #90c0fc;
|
|
135
135
|
--state-tertiary-text-pressed-xspector: #57656b;
|
|
136
136
|
--state-tertiary-text-pressed-report-xspector-light-mode: #b1b1b1;
|
|
137
|
-
--state-tertiary-text-pressed-skyller: #
|
|
137
|
+
--state-tertiary-text-pressed-skyller: #1e40af;
|
|
138
138
|
--state-info-default-xspector: #1b7df5;
|
|
139
139
|
--state-info-default-report-xspector-light-mode: #1b7df5;
|
|
140
140
|
--state-info-default-skyller: #2563eb;
|
|
@@ -869,13 +869,13 @@
|
|
|
869
869
|
--input-error-skyller: #dc2626;
|
|
870
870
|
--function-default-solid-xspector: #ececec;
|
|
871
871
|
--function-default-solid-report-xspector-light-mode: #1e3249;
|
|
872
|
-
--function-default-solid-skyller: #
|
|
872
|
+
--function-default-solid-skyller: #171717;
|
|
873
873
|
--function-default-hover-xspector: #fafafa;
|
|
874
874
|
--function-default-hover-report-xspector-light-mode: #35475b;
|
|
875
|
-
--function-default-hover-skyller: #
|
|
875
|
+
--function-default-hover-skyller: #424242;
|
|
876
876
|
--function-default-hover-bg-xspector: rgba(250 250 250 / 0.08);
|
|
877
877
|
--function-default-hover-bg-report-xspector-light-mode: rgba(30 50 73 / 0.08);
|
|
878
|
-
--function-default-hover-bg-skyller: rgba(
|
|
878
|
+
--function-default-hover-bg-skyller: rgba(23 23 23 / 0.08);
|
|
879
879
|
--function-default-stroke-xspector: rgba(158 158 158 / 0.24);
|
|
880
880
|
--function-default-stroke-report-xspector-light-mode: rgba(30 50 73 / 0.48);
|
|
881
881
|
--function-default-stroke-skyller: rgba(189 189 189 / 0.48);
|
|
@@ -884,19 +884,19 @@
|
|
|
884
884
|
--function-default-icon-skyller: #ffffff;
|
|
885
885
|
--function-default-outline-icon-xspector: #9e9e9e;
|
|
886
886
|
--function-default-outline-icon-report-xspector-light-mode: #1e3249;
|
|
887
|
-
--function-default-outline-icon-skyller: #
|
|
887
|
+
--function-default-outline-icon-skyller: #171717;
|
|
888
888
|
--function-active-solid-xspector: #b1a400;
|
|
889
889
|
--function-active-solid-report-xspector-light-mode: #9b8f00;
|
|
890
|
-
--function-active-solid-skyller: #
|
|
890
|
+
--function-active-solid-skyller: #2563eb;
|
|
891
891
|
--function-active-hover-xspector: #ddcd00;
|
|
892
892
|
--function-active-hover-report-xspector-light-mode: #b1a400;
|
|
893
|
-
--function-active-hover-skyller: #
|
|
893
|
+
--function-active-hover-skyller: #5182ef;
|
|
894
894
|
--function-active-hover-bg-xspector: rgba(221 205 0 / 0.08);
|
|
895
895
|
--function-active-hover-bg-report-xspector-light-mode: rgba(221 205 0 / 0.08);
|
|
896
|
-
--function-active-hover-bg-skyller: rgba(
|
|
896
|
+
--function-active-hover-bg-skyller: rgba(81 130 239 / 0.08);
|
|
897
897
|
--function-active-stroke-xspector: rgba(177 164 0 / 0.48);
|
|
898
898
|
--function-active-stroke-report-xspector-light-mode: rgba(177 164 0 / 0.48);
|
|
899
|
-
--function-active-stroke-skyller: rgba(
|
|
899
|
+
--function-active-stroke-skyller: rgba(37 99 235 / 0.48);
|
|
900
900
|
--function-active-icon-xspector: #212b36;
|
|
901
901
|
--function-active-icon-report-xspector-light-mode: #ffffff;
|
|
902
902
|
--function-active-icon-skyller: #ffffff;
|
|
@@ -1038,7 +1038,7 @@
|
|
|
1038
1038
|
--modal-line-xspector: #4a4a4a;
|
|
1039
1039
|
--modal-line-report-xspector-light-mode: #cfcfcf;
|
|
1040
1040
|
--modal-line-skyller: #d4d4d4;
|
|
1041
|
-
--bg-bg4-xspector: #
|
|
1041
|
+
--bg-bg4-xspector: #0c2948;
|
|
1042
1042
|
--bg-bg4-report-xspector-light-mode: #ffffff;
|
|
1043
1043
|
--bg-bg4-skyller: #ffffff;
|
|
1044
1044
|
--bg-bg5-xspector: #000000;
|
|
@@ -1055,7 +1055,7 @@
|
|
|
1055
1055
|
--bg-stroke5-skyller: #000000;
|
|
1056
1056
|
--table-bg-main-xspector: #091a2a;
|
|
1057
1057
|
--table-bg-main-report-xspector-light-mode: #e5e5e5;
|
|
1058
|
-
--table-bg-main-skyller: #
|
|
1058
|
+
--table-bg-main-skyller: #d4d4d6;
|
|
1059
1059
|
--table-bg-line-xspector: #1c3955;
|
|
1060
1060
|
--table-bg-line-report-xspector-light-mode: #d2d2d2;
|
|
1061
1061
|
--table-bg-line-skyller: #ececec;
|
|
@@ -1083,7 +1083,6 @@
|
|
|
1083
1083
|
--modal-dropdown-surface-xspector: #252628;
|
|
1084
1084
|
--modal-dropdown-surface-report-xspector-light-mode: #ffffff;
|
|
1085
1085
|
--modal-dropdown-surface-skyller: #ffffff;
|
|
1086
|
-
--modal-dropdown-surface-skyller: #ffffff;
|
|
1087
1086
|
|
|
1088
1087
|
/* BUTTON RADIUS */
|
|
1089
1088
|
--button-l-round: 8px;
|
|
@@ -1,12 +1,17 @@
|
|
|
1
1
|
:root {
|
|
2
2
|
/* ------------------------------------------------------------------ */
|
|
3
3
|
/* Scrollbar Component Tokens */
|
|
4
|
+
/* Values represent TOTAL TRACK SIZE (thumb + padding + border). */
|
|
5
|
+
/* Figma node: 9466-13957 */
|
|
4
6
|
/* ------------------------------------------------------------------ */
|
|
5
7
|
|
|
6
|
-
/*
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
/* Track thickness (= thumb + 2×2px padding)
|
|
9
|
+
* M: 16px = 12px thumb + 2px top + 2px bottom
|
|
10
|
+
* S: 10px = 6px thumb + 2px top + 2px bottom (no track border)
|
|
11
|
+
* XS: 4px = 4px thumb, no padding, no border */
|
|
12
|
+
--scrollbar-m-thickness: 16px;
|
|
13
|
+
--scrollbar-s-thickness: 10px;
|
|
14
|
+
--scrollbar-xs-thickness: 4px;
|
|
10
15
|
|
|
11
16
|
/* Track border — visible on M size only */
|
|
12
17
|
--scrollbar-track-border-width: 1px;
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
:root {
|
|
2
|
+
/* ------------------------------------------------------------------ */
|
|
3
|
+
/* Table Component Tokens */
|
|
4
|
+
/* Figma node: 9637-8978 (section "Use case" on Design System page) */
|
|
5
|
+
/* */
|
|
6
|
+
/* These are component-scoped aliases that the Table component uses */
|
|
7
|
+
/* exclusively. They default to the "on-bg" values and are */
|
|
8
|
+
/* automatically overridden when an ancestor carries */
|
|
9
|
+
/* data-surface="panel" — no React prop or variant needed. */
|
|
10
|
+
/* ------------------------------------------------------------------ */
|
|
11
|
+
|
|
12
|
+
/* Header cell background.
|
|
13
|
+
* Default: table-bg-main (opaque dark blue).
|
|
14
|
+
* Panel: transparent — the modal/panel surface shows through. */
|
|
15
|
+
--table-c-header-bg: var(--table-bg-main);
|
|
16
|
+
|
|
17
|
+
/* Separator below the header row.
|
|
18
|
+
* Default: transparent — the bg contrast between header and rows
|
|
19
|
+
* provides visual separation; no explicit line needed.
|
|
20
|
+
* Panel: table-panel-main-line — explicit separator required
|
|
21
|
+
* because all backgrounds are transparent. */
|
|
22
|
+
--table-c-header-line: transparent;
|
|
23
|
+
|
|
24
|
+
/* Outer border when Table / DataTable uses a framed shell. */
|
|
25
|
+
--table-c-border: transparent;
|
|
26
|
+
|
|
27
|
+
/* Body row backgrounds.
|
|
28
|
+
* Default: bg-a for all rows; striped mode uses bg-a/bg-b alternate.
|
|
29
|
+
* Panel: transparent for both — panel surface provides the bg. */
|
|
30
|
+
--table-c-row-bg: var(--table-bg-a);
|
|
31
|
+
--table-c-row-bg-even: var(--table-bg-b);
|
|
32
|
+
|
|
33
|
+
/* Horizontal row dividers (used when TableRow divided=true). */
|
|
34
|
+
--table-c-row-line: var(--table-bg-line);
|
|
35
|
+
|
|
36
|
+
/* Vertical column dividers (used when TableRow colDivided=true). */
|
|
37
|
+
--table-c-col-line: var(--table-bg-line);
|
|
38
|
+
|
|
39
|
+
/* Hover overlay on body rows. */
|
|
40
|
+
--table-c-hover: var(--table-bg-hover);
|
|
41
|
+
|
|
42
|
+
/* Selected row overlay (data-state="selected" on <tr>). */
|
|
43
|
+
--table-c-selected: var(--transparent-primary-12);
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
/* ------------------------------------------------------------------ */
|
|
47
|
+
/* Panel / Modal / Drawer surface override */
|
|
48
|
+
/* Apply data-surface="panel" to the Modal, Drawer, or Panel wrapper. */
|
|
49
|
+
/* All Table instances inside the scope inherit these tokens. */
|
|
50
|
+
/* Avoid scoping the whole Storybook/page: row bgs are transparent and */
|
|
51
|
+
/* expect --modal-surface behind the table, not --workspace/page bg. */
|
|
52
|
+
/* ------------------------------------------------------------------ */
|
|
53
|
+
[data-surface="panel"] {
|
|
54
|
+
--table-c-header-bg: var(--modal-surface);
|
|
55
|
+
--table-c-header-line: var(--table-panel-main-line);
|
|
56
|
+
--table-c-border: var(--table-panel-main-line);
|
|
57
|
+
--table-c-row-bg: var(--modal-surface); /* TODO: not have this token in Figma for now. */
|
|
58
|
+
--table-c-row-bg-even: var(--table-panel-hover); /* TODO: not have this token in Figma for now. */
|
|
59
|
+
--table-c-row-line: var(--table-panel-sub-line);
|
|
60
|
+
--table-c-col-line: var(--table-panel-sub-line);
|
|
61
|
+
--table-c-hover: var(--table-panel-hover);
|
|
62
|
+
--table-c-selected: var(--table-panel-selected);
|
|
63
|
+
}
|