shru-design-system 0.0.8 → 0.1.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/README.md +35 -107
- package/dist/index.d.mts +55 -0
- package/dist/index.d.ts +34 -1028
- package/dist/index.js +241 -7839
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +364 -0
- package/dist/index.mjs.map +1 -0
- package/package.json +37 -80
- package/apps/design-system/styles/globals.css +0 -402
- package/dist/index.cjs +0 -8452
- package/dist/index.cjs.map +0 -1
- package/dist/index.d.cts +0 -1049
- package/scripts/build-css.js +0 -231
- package/scripts/copy-globals.js +0 -106
- package/scripts/copy-tokens.js +0 -62
- package/src/tokens/base.json +0 -161
- package/src/tokens/palettes.json +0 -294
- package/src/tokens/themes/animation/brisk.json +0 -14
- package/src/tokens/themes/animation/gentle.json +0 -14
- package/src/tokens/themes/color/dark.json +0 -38
- package/src/tokens/themes/color/white.json +0 -38
- package/src/tokens/themes/custom/brand.json +0 -13
- package/src/tokens/themes/custom/minimal.json +0 -16
- package/src/tokens/themes/density/comfortable.json +0 -19
- package/src/tokens/themes/density/compact.json +0 -19
- package/src/tokens/themes/shape/sharp.json +0 -11
- package/src/tokens/themes/shape/smooth.json +0 -11
- package/src/tokens/themes/typography/sans.json +0 -25
- package/src/tokens/themes/typography/serif.json +0 -25
|
@@ -1,402 +0,0 @@
|
|
|
1
|
-
@import "tailwindcss";
|
|
2
|
-
@import "tw-animate-css";
|
|
3
|
-
/* refer: https://tailwindcss.com/docs/theme */
|
|
4
|
-
|
|
5
|
-
@custom-variant dark (&:is(.dark *));
|
|
6
|
-
|
|
7
|
-
@custom-variant fixed (&:is(.layout-fixed *));
|
|
8
|
-
|
|
9
|
-
@theme inline {
|
|
10
|
-
--breakpoint-3xl: 1600px;
|
|
11
|
-
--breakpoint-4xl: 2000px;
|
|
12
|
-
--font-sans: var(--font-sans);
|
|
13
|
-
--font-mono: var(--font-mono);
|
|
14
|
-
--radius-sm: calc(var(--radius) - 4px);
|
|
15
|
-
--radius-md: calc(var(--radius) - 2px);
|
|
16
|
-
--radius-lg: var(--radius);
|
|
17
|
-
--radius-xl: calc(var(--radius) + 4px);
|
|
18
|
-
--color-background: var(--background);
|
|
19
|
-
--color-foreground: var(--foreground);
|
|
20
|
-
--color-card: var(--card);
|
|
21
|
-
--color-card-foreground: var(--card-foreground);
|
|
22
|
-
--color-popover: var(--popover);
|
|
23
|
-
--color-popover-foreground: var(--popover-foreground);
|
|
24
|
-
--color-primary: var(--primary);
|
|
25
|
-
--color-primary-foreground: var(--primary-foreground);
|
|
26
|
-
--color-secondary: var(--secondary);
|
|
27
|
-
--color-secondary-foreground: var(--secondary-foreground);
|
|
28
|
-
--color-muted: var(--muted);
|
|
29
|
-
--color-muted-foreground: var(--muted-foreground);
|
|
30
|
-
--color-accent: var(--accent);
|
|
31
|
-
--color-accent-foreground: var(--accent-foreground);
|
|
32
|
-
--color-destructive: var(--destructive);
|
|
33
|
-
--color-border: var(--border);
|
|
34
|
-
--color-input: var(--input);
|
|
35
|
-
--color-ring: var(--ring);
|
|
36
|
-
--color-chart-1: var(--chart-1);
|
|
37
|
-
--color-chart-2: var(--chart-2);
|
|
38
|
-
--color-chart-3: var(--chart-3);
|
|
39
|
-
--color-chart-4: var(--chart-4);
|
|
40
|
-
--color-chart-5: var(--chart-5);
|
|
41
|
-
--color-sidebar: var(--sidebar);
|
|
42
|
-
--color-sidebar-foreground: var(--sidebar-foreground);
|
|
43
|
-
--color-sidebar-primary: var(--sidebar-primary);
|
|
44
|
-
--color-sidebar-primary-foreground: var(--sidebar-primary-foreground);
|
|
45
|
-
--color-sidebar-accent: var(--sidebar-accent);
|
|
46
|
-
--color-sidebar-accent-foreground: var(--sidebar-accent-foreground);
|
|
47
|
-
--color-sidebar-border: var(--sidebar-border);
|
|
48
|
-
--color-sidebar-ring: var(--sidebar-ring);
|
|
49
|
-
--color-surface: var(--surface);
|
|
50
|
-
--color-surface-foreground: var(--surface-foreground);
|
|
51
|
-
--color-code: var(--code);
|
|
52
|
-
--color-code-foreground: var(--code-foreground);
|
|
53
|
-
--color-code-highlight: var(--code-highlight);
|
|
54
|
-
--color-code-number: var(--code-number);
|
|
55
|
-
--color-selection: var(--selection);
|
|
56
|
-
--color-selection-foreground: var(--selection-foreground);
|
|
57
|
-
--color-skeleton: var(--skeleton);
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
:root {
|
|
61
|
-
--radius: 0.625rem;
|
|
62
|
-
/* Spacing variable - required for Tailwind v4's generated utilities */
|
|
63
|
-
--spacing: 0.25rem; /* 1 unit = 0.25rem (4px), so px-4 = calc(0.25rem * 4) = 1rem */
|
|
64
|
-
|
|
65
|
-
/* Color palette variables - required for chart and other components */
|
|
66
|
-
--color-blue-50: #eff6ff;
|
|
67
|
-
--color-blue-100: #dbeafe;
|
|
68
|
-
--color-blue-200: #bfdbfe;
|
|
69
|
-
--color-blue-300: #93c5fd;
|
|
70
|
-
--color-blue-400: #60a5fa;
|
|
71
|
-
--color-blue-500: #3b82f6;
|
|
72
|
-
--color-blue-600: #2563eb;
|
|
73
|
-
--color-blue-700: #1d4ed8;
|
|
74
|
-
--color-blue-800: #1e40af;
|
|
75
|
-
--color-blue-900: #1e3a8a;
|
|
76
|
-
--color-blue-950: #172554;
|
|
77
|
-
|
|
78
|
-
/* Semantic color variables */
|
|
79
|
-
--background: oklch(1 0 0);
|
|
80
|
-
--foreground: oklch(0.145 0 0);
|
|
81
|
-
--card: oklch(1 0 0);
|
|
82
|
-
--card-foreground: oklch(0.145 0 0);
|
|
83
|
-
--popover: oklch(1 0 0);
|
|
84
|
-
--popover-foreground: oklch(0.145 0 0);
|
|
85
|
-
--primary: oklch(0.205 0 0);
|
|
86
|
-
--primary-foreground: oklch(0.985 0 0);
|
|
87
|
-
--secondary: oklch(0.97 0 0);
|
|
88
|
-
--secondary-foreground: oklch(0.205 0 0);
|
|
89
|
-
--muted: oklch(0.97 0 0);
|
|
90
|
-
--muted-foreground: oklch(0.556 0 0);
|
|
91
|
-
--accent: oklch(0.97 0 0);
|
|
92
|
-
--accent-foreground: oklch(0.205 0 0);
|
|
93
|
-
--destructive: oklch(0.577 0.245 27.325);
|
|
94
|
-
--border: oklch(0.922 0 0);
|
|
95
|
-
--input: oklch(0.922 0 0);
|
|
96
|
-
--ring: oklch(0.708 0 0);
|
|
97
|
-
--chart-1: var(--color-blue-300);
|
|
98
|
-
--chart-2: var(--color-blue-500);
|
|
99
|
-
--chart-3: var(--color-blue-600);
|
|
100
|
-
--chart-4: var(--color-blue-700);
|
|
101
|
-
--chart-5: var(--color-blue-800);
|
|
102
|
-
--sidebar: oklch(0.985 0 0);
|
|
103
|
-
--sidebar-foreground: oklch(0.145 0 0);
|
|
104
|
-
--sidebar-primary: oklch(0.205 0 0);
|
|
105
|
-
--sidebar-primary-foreground: oklch(0.985 0 0);
|
|
106
|
-
--sidebar-accent: oklch(0.97 0 0);
|
|
107
|
-
--sidebar-accent-foreground: oklch(0.205 0 0);
|
|
108
|
-
--sidebar-border: oklch(0.922 0 0);
|
|
109
|
-
--sidebar-ring: oklch(0.708 0 0);
|
|
110
|
-
--surface: oklch(0.98 0 0);
|
|
111
|
-
--surface-foreground: var(--foreground);
|
|
112
|
-
--code: var(--surface);
|
|
113
|
-
--code-foreground: var(--surface-foreground);
|
|
114
|
-
--code-highlight: oklch(0.96 0 0);
|
|
115
|
-
--code-number: oklch(0.56 0 0);
|
|
116
|
-
--selection: oklch(0.145 0 0);
|
|
117
|
-
--selection-foreground: oklch(1 0 0);
|
|
118
|
-
--skeleton: oklch(0.92 0 0);
|
|
119
|
-
}
|
|
120
|
-
|
|
121
|
-
.dark {
|
|
122
|
-
--background: oklch(0.145 0 0);
|
|
123
|
-
--foreground: oklch(0.985 0 0);
|
|
124
|
-
--card: oklch(0.205 0 0);
|
|
125
|
-
--card-foreground: oklch(0.985 0 0);
|
|
126
|
-
--popover: oklch(0.269 0 0);
|
|
127
|
-
--popover-foreground: oklch(0.985 0 0);
|
|
128
|
-
--primary: oklch(0.922 0 0);
|
|
129
|
-
--primary-foreground: oklch(0.205 0 0);
|
|
130
|
-
--secondary: oklch(0.269 0 0);
|
|
131
|
-
--secondary-foreground: oklch(0.985 0 0);
|
|
132
|
-
--muted: oklch(0.269 0 0);
|
|
133
|
-
--muted-foreground: oklch(0.708 0 0);
|
|
134
|
-
--accent: oklch(0.371 0 0);
|
|
135
|
-
--accent-foreground: oklch(0.985 0 0);
|
|
136
|
-
--destructive: oklch(0.704 0.191 22.216);
|
|
137
|
-
--border: oklch(1 0 0 / 10%);
|
|
138
|
-
--input: oklch(1 0 0 / 15%);
|
|
139
|
-
--ring: oklch(0.556 0 0);
|
|
140
|
-
--chart-1: var(--color-blue-300);
|
|
141
|
-
--chart-2: var(--color-blue-500);
|
|
142
|
-
--chart-3: var(--color-blue-600);
|
|
143
|
-
--chart-4: var(--color-blue-700);
|
|
144
|
-
--chart-5: var(--color-blue-800);
|
|
145
|
-
--sidebar: oklch(0.205 0 0);
|
|
146
|
-
--sidebar-foreground: oklch(0.985 0 0);
|
|
147
|
-
--sidebar-primary: oklch(0.488 0.243 264.376);
|
|
148
|
-
--sidebar-primary-foreground: oklch(0.985 0 0);
|
|
149
|
-
--sidebar-accent: oklch(0.269 0 0);
|
|
150
|
-
--sidebar-accent-foreground: oklch(0.985 0 0);
|
|
151
|
-
--sidebar-border: oklch(1 0 0 / 10%);
|
|
152
|
-
--sidebar-ring: oklch(0.439 0 0);
|
|
153
|
-
--surface: oklch(0.2 0 0);
|
|
154
|
-
--surface-foreground: oklch(0.708 0 0);
|
|
155
|
-
--code: var(--surface);
|
|
156
|
-
--code-foreground: var(--surface-foreground);
|
|
157
|
-
--code-highlight: oklch(0.27 0 0);
|
|
158
|
-
--code-number: oklch(0.72 0 0);
|
|
159
|
-
--selection: oklch(0.922 0 0);
|
|
160
|
-
--selection-foreground: oklch(0.205 0 0);
|
|
161
|
-
--skeleton: oklch(0.32 0 0);
|
|
162
|
-
}
|
|
163
|
-
|
|
164
|
-
@layer base {
|
|
165
|
-
* {
|
|
166
|
-
@apply border-border outline-ring/50;
|
|
167
|
-
}
|
|
168
|
-
::selection {
|
|
169
|
-
@apply bg-selection text-selection-foreground;
|
|
170
|
-
}
|
|
171
|
-
html {
|
|
172
|
-
@apply overscroll-none scroll-smooth;
|
|
173
|
-
}
|
|
174
|
-
body {
|
|
175
|
-
@apply bg-background text-foreground;
|
|
176
|
-
font-synthesis-weight: none;
|
|
177
|
-
text-rendering: optimizeLegibility;
|
|
178
|
-
}
|
|
179
|
-
|
|
180
|
-
[data-slot="layout"] {
|
|
181
|
-
@apply 3xl:p-2 3xl:fixed:p-0 overscroll-none;
|
|
182
|
-
}
|
|
183
|
-
|
|
184
|
-
@supports (font: -apple-system-body) and (-webkit-appearance: none) {
|
|
185
|
-
[data-wrapper] {
|
|
186
|
-
@apply min-[1800px]:border-t;
|
|
187
|
-
}
|
|
188
|
-
}
|
|
189
|
-
|
|
190
|
-
a:active,
|
|
191
|
-
button:active {
|
|
192
|
-
@apply opacity-60 md:opacity-100;
|
|
193
|
-
}
|
|
194
|
-
}
|
|
195
|
-
|
|
196
|
-
@utility border-grid {
|
|
197
|
-
@apply border-border/50 dark:border-border;
|
|
198
|
-
}
|
|
199
|
-
|
|
200
|
-
@utility section-soft {
|
|
201
|
-
@apply from-background to-surface/40 dark:bg-background 3xl:fixed:bg-none bg-gradient-to-b;
|
|
202
|
-
}
|
|
203
|
-
|
|
204
|
-
@utility theme-container {
|
|
205
|
-
@apply font-sans;
|
|
206
|
-
}
|
|
207
|
-
|
|
208
|
-
@utility container-wrapper {
|
|
209
|
-
@apply 3xl:fixed:max-w-[calc(var(--breakpoint-2xl)+2rem)] mx-auto w-full px-2;
|
|
210
|
-
}
|
|
211
|
-
|
|
212
|
-
@utility container {
|
|
213
|
-
@apply 3xl:max-w-screen-2xl mx-auto max-w-[1400px] px-4 lg:px-8;
|
|
214
|
-
}
|
|
215
|
-
|
|
216
|
-
@utility no-scrollbar {
|
|
217
|
-
-ms-overflow-style: none;
|
|
218
|
-
scrollbar-width: none;
|
|
219
|
-
|
|
220
|
-
&::-webkit-scrollbar {
|
|
221
|
-
display: none;
|
|
222
|
-
}
|
|
223
|
-
}
|
|
224
|
-
|
|
225
|
-
@utility border-ghost {
|
|
226
|
-
@apply after:border-border relative after:absolute after:inset-0 after:border after:mix-blend-darken dark:after:mix-blend-lighten;
|
|
227
|
-
}
|
|
228
|
-
|
|
229
|
-
@utility step {
|
|
230
|
-
counter-increment: step;
|
|
231
|
-
@apply relative;
|
|
232
|
-
|
|
233
|
-
&:before {
|
|
234
|
-
@apply text-muted-foreground right-0 mr-2 hidden size-7 items-center justify-center rounded-full text-center -indent-px font-mono text-sm font-medium md:absolute;
|
|
235
|
-
content: counter(step);
|
|
236
|
-
}
|
|
237
|
-
}
|
|
238
|
-
|
|
239
|
-
@utility extend-touch-target {
|
|
240
|
-
@media (pointer: coarse) {
|
|
241
|
-
@apply relative touch-manipulation after:absolute after:-inset-2;
|
|
242
|
-
}
|
|
243
|
-
}
|
|
244
|
-
|
|
245
|
-
/*
|
|
246
|
-
* Override broken Tailwind v4 generated utilities
|
|
247
|
-
* Tailwind v4 has bugs with some utility generation (e.g., rounded-full generates infinity)
|
|
248
|
-
* We explicitly define these to ensure they work correctly
|
|
249
|
-
*/
|
|
250
|
-
|
|
251
|
-
/*
|
|
252
|
-
* Pre-generated utility classes for design system components
|
|
253
|
-
* These utilities are explicitly defined to ensure they work in consuming apps
|
|
254
|
-
* without requiring Tailwind configuration or scanning
|
|
255
|
-
*
|
|
256
|
-
* Generated from 98 component files
|
|
257
|
-
* Total classes: 423
|
|
258
|
-
*/
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
/*
|
|
262
|
-
* Pre-generated utility classes for design system components
|
|
263
|
-
* These utilities are explicitly defined to ensure they work in consuming apps
|
|
264
|
-
* without requiring Tailwind configuration or scanning
|
|
265
|
-
*
|
|
266
|
-
* Generated from 98 component files
|
|
267
|
-
* Total classes: 423
|
|
268
|
-
*/
|
|
269
|
-
|
|
270
|
-
@layer utilities {
|
|
271
|
-
.rounded-2xl { border-radius: calc(var(--radius) + 8px) !important; }
|
|
272
|
-
.rounded-full { border-radius: 9999px !important; }
|
|
273
|
-
.rounded-lg { border-radius: var(--radius-lg) !important; }
|
|
274
|
-
.rounded-md { border-radius: var(--radius-md) !important; }
|
|
275
|
-
.rounded-none { border-radius: 0 !important; }
|
|
276
|
-
.rounded-sm { border-radius: var(--radius-sm) !important; }
|
|
277
|
-
.rounded-xl { border-radius: var(--radius-xl) !important; }
|
|
278
|
-
}
|
|
279
|
-
|
|
280
|
-
@layer components {
|
|
281
|
-
.steps {
|
|
282
|
-
&:first-child {
|
|
283
|
-
@apply !mt-0;
|
|
284
|
-
}
|
|
285
|
-
|
|
286
|
-
&:first-child > h3:first-child {
|
|
287
|
-
@apply !mt-0;
|
|
288
|
-
}
|
|
289
|
-
|
|
290
|
-
> h3 {
|
|
291
|
-
@apply !mt-16;
|
|
292
|
-
}
|
|
293
|
-
|
|
294
|
-
> h3 + p {
|
|
295
|
-
@apply !mt-2;
|
|
296
|
-
}
|
|
297
|
-
}
|
|
298
|
-
|
|
299
|
-
[data-rehype-pretty-code-figure] {
|
|
300
|
-
background-color: var(--color-code);
|
|
301
|
-
color: var(--color-code-foreground);
|
|
302
|
-
border-radius: var(--radius-lg);
|
|
303
|
-
border-width: 0px;
|
|
304
|
-
border-color: var(--border);
|
|
305
|
-
margin-top: calc(var(--spacing) * 6);
|
|
306
|
-
overflow: hidden;
|
|
307
|
-
font-size: var(--text-sm);
|
|
308
|
-
outline: none;
|
|
309
|
-
position: relative;
|
|
310
|
-
@apply -mx-1 md:-mx-1;
|
|
311
|
-
|
|
312
|
-
&:has([data-rehype-pretty-code-title]) [data-slot="copy-button"] {
|
|
313
|
-
top: calc(var(--spacing) * 1.5) !important;
|
|
314
|
-
}
|
|
315
|
-
}
|
|
316
|
-
|
|
317
|
-
[data-rehype-pretty-code-title] {
|
|
318
|
-
border-bottom: color-mix(in oklab, var(--border) 30%, transparent);
|
|
319
|
-
border-bottom-width: 1px;
|
|
320
|
-
border-bottom-style: solid;
|
|
321
|
-
padding-block: calc(var(--spacing) * 2.5);
|
|
322
|
-
padding-inline: calc(var(--spacing) * 4);
|
|
323
|
-
font-size: var(--text-sm);
|
|
324
|
-
font-family: var(--font-mono);
|
|
325
|
-
color: var(--color-code-foreground);
|
|
326
|
-
}
|
|
327
|
-
|
|
328
|
-
[data-line-numbers] {
|
|
329
|
-
display: grid;
|
|
330
|
-
min-width: 100%;
|
|
331
|
-
white-space: pre;
|
|
332
|
-
border: 0;
|
|
333
|
-
background: transparent;
|
|
334
|
-
padding: 0;
|
|
335
|
-
counter-reset: line;
|
|
336
|
-
box-decoration-break: clone;
|
|
337
|
-
}
|
|
338
|
-
|
|
339
|
-
[data-line-numbers] [data-line]::before {
|
|
340
|
-
font-size: var(--text-sm);
|
|
341
|
-
counter-increment: line;
|
|
342
|
-
content: counter(line);
|
|
343
|
-
display: inline-block;
|
|
344
|
-
width: calc(var(--spacing) * 16);
|
|
345
|
-
padding-right: calc(var(--spacing) * 6);
|
|
346
|
-
text-align: right;
|
|
347
|
-
color: var(--color-code-number);
|
|
348
|
-
background-color: var(--color-code);
|
|
349
|
-
position: sticky;
|
|
350
|
-
left: 0;
|
|
351
|
-
}
|
|
352
|
-
|
|
353
|
-
[data-line-numbers] [data-highlighted-line][data-line]::before {
|
|
354
|
-
background-color: var(--color-code-highlight);
|
|
355
|
-
}
|
|
356
|
-
|
|
357
|
-
[data-line] {
|
|
358
|
-
padding-top: calc(var(--spacing) * 0.5);
|
|
359
|
-
padding-bottom: calc(var(--spacing) * 0.5);
|
|
360
|
-
min-height: calc(var(--spacing) * 1);
|
|
361
|
-
width: 100%;
|
|
362
|
-
display: inline-block;
|
|
363
|
-
}
|
|
364
|
-
|
|
365
|
-
[data-line] span {
|
|
366
|
-
color: var(--shiki-light);
|
|
367
|
-
|
|
368
|
-
@variant dark {
|
|
369
|
-
color: var(--shiki-dark) !important;
|
|
370
|
-
}
|
|
371
|
-
}
|
|
372
|
-
|
|
373
|
-
[data-highlighted-line],
|
|
374
|
-
[data-highlighted-chars] {
|
|
375
|
-
position: relative;
|
|
376
|
-
background-color: var(--color-code-highlight);
|
|
377
|
-
}
|
|
378
|
-
|
|
379
|
-
[data-highlighted-line] {
|
|
380
|
-
&:after {
|
|
381
|
-
position: absolute;
|
|
382
|
-
top: 0;
|
|
383
|
-
left: 0;
|
|
384
|
-
width: 2px;
|
|
385
|
-
height: 100%;
|
|
386
|
-
content: "";
|
|
387
|
-
background-color: color-mix(
|
|
388
|
-
in oklab,
|
|
389
|
-
var(--muted-foreground) 50%,
|
|
390
|
-
transparent
|
|
391
|
-
);
|
|
392
|
-
}
|
|
393
|
-
}
|
|
394
|
-
|
|
395
|
-
[data-highlighted-chars] {
|
|
396
|
-
border-radius: var(--radius-sm);
|
|
397
|
-
padding-inline: 0.3rem;
|
|
398
|
-
padding-block: 0.1rem;
|
|
399
|
-
font-family: var(--font-mono);
|
|
400
|
-
font-size: 0.8rem;
|
|
401
|
-
}
|
|
402
|
-
}
|