@rockshin/tao-ui 0.0.1 → 0.0.3

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.
Files changed (71) hide show
  1. package/dist/components/breadcrumb/breadcrumb.css +1091 -0
  2. package/dist/components/breadcrumb/breadcrumb.d.ts +43 -0
  3. package/dist/components/breadcrumb/breadcrumb.js +268 -0
  4. package/dist/components/button/button.css +46 -21
  5. package/dist/components/checkbox/checkbox.css +33 -12
  6. package/dist/components/collapsible/collapsible.css +1026 -0
  7. package/dist/components/collapsible/collapsible.d.ts +39 -0
  8. package/dist/components/collapsible/collapsible.js +168 -0
  9. package/dist/components/context-menu/context-menu.css +1149 -0
  10. package/dist/components/context-menu/context-menu.d.ts +19 -0
  11. package/dist/components/context-menu/context-menu.js +106 -0
  12. package/dist/components/date-picker/calendar/month-grid.d.ts +1 -1
  13. package/dist/components/date-picker/calendar/time-panel.d.ts +1 -1
  14. package/dist/components/date-picker/calendar/year-grid.d.ts +1 -1
  15. package/dist/components/date-picker/date-picker.css +87 -17
  16. package/dist/components/date-picker/date-picker.js +9 -7
  17. package/dist/components/date-picker/range-picker.js +9 -7
  18. package/dist/components/drawer/drawer.css +128 -15
  19. package/dist/components/drawer/drawer.d.ts +36 -3
  20. package/dist/components/drawer/drawer.js +323 -121
  21. package/dist/components/dropdown/dropdown.css +999 -0
  22. package/dist/components/dropdown/dropdown.d.ts +45 -0
  23. package/dist/components/dropdown/dropdown.js +383 -0
  24. package/dist/components/form-field/form.css +33 -12
  25. package/dist/components/input/input.css +86 -14
  26. package/dist/components/menu/menu-render.d.ts +89 -0
  27. package/dist/components/menu/menu-render.js +379 -0
  28. package/dist/components/menu/menu.css +1145 -0
  29. package/dist/components/modal/confirm-dialog.d.ts +37 -0
  30. package/dist/components/modal/confirm-dialog.js +193 -0
  31. package/dist/components/modal/confirm.d.ts +13 -0
  32. package/dist/components/modal/confirm.js +56 -0
  33. package/dist/components/modal/index.d.ts +21 -0
  34. package/dist/components/modal/index.js +18 -0
  35. package/dist/components/modal/modal.css +1169 -0
  36. package/dist/components/modal/modal.d.ts +50 -0
  37. package/dist/components/modal/modal.js +362 -0
  38. package/dist/components/modal/use-modal.d.ts +21 -0
  39. package/dist/components/modal/use-modal.js +83 -0
  40. package/dist/components/pagination/pagination.css +33 -12
  41. package/dist/components/pagination/pagination.js +3 -1
  42. package/dist/components/radio/radio.css +33 -12
  43. package/dist/components/scroll-area/scroll-area.css +33 -12
  44. package/dist/components/select/mobile-select.css +75 -13
  45. package/dist/components/select/mobile-select.d.ts +4 -1
  46. package/dist/components/select/mobile-select.js +103 -107
  47. package/dist/components/select/select.css +167 -26
  48. package/dist/components/select/select.d.ts +62 -4
  49. package/dist/components/select/select.js +359 -377
  50. package/dist/components/spinner/spinner.css +1084 -0
  51. package/dist/components/spinner/spinner.d.ts +26 -0
  52. package/dist/components/spinner/spinner.js +229 -0
  53. package/dist/components/splitter/splitter.css +33 -12
  54. package/dist/components/switch/switch.css +33 -12
  55. package/dist/components/table/table.css +57 -18
  56. package/dist/components/table/table.d.ts +17 -2
  57. package/dist/components/table/table.js +214 -206
  58. package/dist/components/tabs/tabs.css +36 -17
  59. package/dist/components/tag/tag.css +33 -12
  60. package/dist/components/textarea/textarea.css +1246 -0
  61. package/dist/components/textarea/textarea.d.ts +19 -0
  62. package/dist/components/textarea/textarea.js +181 -0
  63. package/dist/index.d.ts +25 -18
  64. package/dist/index.js +22 -15
  65. package/dist/layouts/stack/layout.css +33 -12
  66. package/dist/provider/tao-provider.d.ts +17 -1
  67. package/dist/provider/tao-provider.js +53 -15
  68. package/dist/theme/control.css +86 -13
  69. package/dist/theme/theme.css +33 -12
  70. package/llms.txt +7 -6
  71. package/package.json +18 -13
@@ -0,0 +1,1149 @@
1
+ @layer properties {
2
+ @supports (((-webkit-hyphens: none)) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color: rgb(from red r g b)))) {
3
+ *, :before, :after, ::backdrop {
4
+ --tw-rotate-x: initial;
5
+ --tw-rotate-y: initial;
6
+ --tw-rotate-z: initial;
7
+ --tw-skew-x: initial;
8
+ --tw-skew-y: initial;
9
+ --tw-border-style: solid;
10
+ --tw-shadow: 0 0 #0000;
11
+ --tw-shadow-color: initial;
12
+ --tw-shadow-alpha: 100%;
13
+ --tw-inset-shadow: 0 0 #0000;
14
+ --tw-inset-shadow-color: initial;
15
+ --tw-inset-shadow-alpha: 100%;
16
+ --tw-ring-color: initial;
17
+ --tw-ring-shadow: 0 0 #0000;
18
+ --tw-inset-ring-color: initial;
19
+ --tw-inset-ring-shadow: 0 0 #0000;
20
+ --tw-ring-inset: initial;
21
+ --tw-ring-offset-width: 0px;
22
+ --tw-ring-offset-color: #fff;
23
+ --tw-ring-offset-shadow: 0 0 #0000;
24
+ --tw-outline-style: solid;
25
+ --tw-blur: initial;
26
+ --tw-brightness: initial;
27
+ --tw-contrast: initial;
28
+ --tw-grayscale: initial;
29
+ --tw-hue-rotate: initial;
30
+ --tw-invert: initial;
31
+ --tw-opacity: initial;
32
+ --tw-saturate: initial;
33
+ --tw-sepia: initial;
34
+ --tw-drop-shadow: initial;
35
+ --tw-drop-shadow-color: initial;
36
+ --tw-drop-shadow-alpha: 100%;
37
+ --tw-drop-shadow-size: initial;
38
+ }
39
+ }
40
+ }
41
+
42
+ @layer theme {
43
+ :root, :host {
44
+ --font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
45
+ --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
46
+ --default-transition-duration: .15s;
47
+ --default-transition-timing-function: cubic-bezier(.4, 0, .2, 1);
48
+ --default-font-family: var(--font-sans);
49
+ --default-mono-font-family: var(--font-mono);
50
+ }
51
+ }
52
+
53
+ @layer base {
54
+ *, :after, :before, ::backdrop {
55
+ box-sizing: border-box;
56
+ border: 0 solid;
57
+ margin: 0;
58
+ padding: 0;
59
+ }
60
+
61
+ ::file-selector-button {
62
+ box-sizing: border-box;
63
+ border: 0 solid;
64
+ margin: 0;
65
+ padding: 0;
66
+ }
67
+
68
+ html, :host {
69
+ -webkit-text-size-adjust: 100%;
70
+ tab-size: 4;
71
+ line-height: 1.5;
72
+ font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
73
+ font-feature-settings: var(--default-font-feature-settings, normal);
74
+ font-variation-settings: var(--default-font-variation-settings, normal);
75
+ -webkit-tap-highlight-color: transparent;
76
+ }
77
+
78
+ hr {
79
+ height: 0;
80
+ color: inherit;
81
+ border-top-width: 1px;
82
+ }
83
+
84
+ abbr:where([title]) {
85
+ -webkit-text-decoration: underline dotted;
86
+ text-decoration: underline dotted;
87
+ }
88
+
89
+ h1, h2, h3, h4, h5, h6 {
90
+ font-size: inherit;
91
+ font-weight: inherit;
92
+ }
93
+
94
+ a {
95
+ color: inherit;
96
+ -webkit-text-decoration: inherit;
97
+ -webkit-text-decoration: inherit;
98
+ -webkit-text-decoration: inherit;
99
+ -webkit-text-decoration: inherit;
100
+ text-decoration: inherit;
101
+ }
102
+
103
+ b, strong {
104
+ font-weight: bolder;
105
+ }
106
+
107
+ code, kbd, samp, pre {
108
+ font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
109
+ font-feature-settings: var(--default-mono-font-feature-settings, normal);
110
+ font-variation-settings: var(--default-mono-font-variation-settings, normal);
111
+ font-size: 1em;
112
+ }
113
+
114
+ small {
115
+ font-size: 80%;
116
+ }
117
+
118
+ sub, sup {
119
+ vertical-align: baseline;
120
+ font-size: 75%;
121
+ line-height: 0;
122
+ position: relative;
123
+ }
124
+
125
+ sub {
126
+ bottom: -.25em;
127
+ }
128
+
129
+ sup {
130
+ top: -.5em;
131
+ }
132
+
133
+ table {
134
+ text-indent: 0;
135
+ border-color: inherit;
136
+ border-collapse: collapse;
137
+ }
138
+
139
+ :-moz-focusring {
140
+ outline: auto;
141
+ }
142
+
143
+ progress {
144
+ vertical-align: baseline;
145
+ }
146
+
147
+ summary {
148
+ display: list-item;
149
+ }
150
+
151
+ ol, ul, menu {
152
+ list-style: none;
153
+ }
154
+
155
+ img, svg, video, canvas, audio, iframe, embed, object {
156
+ vertical-align: middle;
157
+ display: block;
158
+ }
159
+
160
+ img, video {
161
+ max-width: 100%;
162
+ height: auto;
163
+ }
164
+
165
+ button, input, select, optgroup, textarea {
166
+ font: inherit;
167
+ font-feature-settings: inherit;
168
+ font-variation-settings: inherit;
169
+ letter-spacing: inherit;
170
+ color: inherit;
171
+ opacity: 1;
172
+ background-color: #0000;
173
+ border-radius: 0;
174
+ }
175
+
176
+ ::file-selector-button {
177
+ font: inherit;
178
+ font-feature-settings: inherit;
179
+ font-variation-settings: inherit;
180
+ letter-spacing: inherit;
181
+ color: inherit;
182
+ opacity: 1;
183
+ background-color: #0000;
184
+ border-radius: 0;
185
+ }
186
+
187
+ :where(select:is([multiple], [size])) optgroup {
188
+ font-weight: bolder;
189
+ }
190
+
191
+ :where(select:is([multiple], [size])) optgroup option {
192
+ padding-inline-start: 20px;
193
+ }
194
+
195
+ ::file-selector-button {
196
+ margin-inline-end: 4px;
197
+ }
198
+
199
+ ::placeholder {
200
+ opacity: 1;
201
+ }
202
+
203
+ @supports (not ((-webkit-appearance: -apple-pay-button))) or (contain-intrinsic-size: 1px) {
204
+ ::placeholder {
205
+ color: currentColor;
206
+ }
207
+
208
+ @supports (color: color-mix(in lab, red, red)) {
209
+ ::placeholder {
210
+ color: color-mix(in oklab, currentcolor 50%, transparent);
211
+ }
212
+ }
213
+ }
214
+
215
+ textarea {
216
+ resize: vertical;
217
+ }
218
+
219
+ ::-webkit-search-decoration {
220
+ -webkit-appearance: none;
221
+ }
222
+
223
+ ::-webkit-date-and-time-value {
224
+ min-height: 1lh;
225
+ text-align: inherit;
226
+ }
227
+
228
+ ::-webkit-datetime-edit {
229
+ display: inline-flex;
230
+ }
231
+
232
+ ::-webkit-datetime-edit-fields-wrapper {
233
+ padding: 0;
234
+ }
235
+
236
+ ::-webkit-datetime-edit {
237
+ padding-block: 0;
238
+ }
239
+
240
+ ::-webkit-datetime-edit-year-field {
241
+ padding-block: 0;
242
+ }
243
+
244
+ ::-webkit-datetime-edit-month-field {
245
+ padding-block: 0;
246
+ }
247
+
248
+ ::-webkit-datetime-edit-day-field {
249
+ padding-block: 0;
250
+ }
251
+
252
+ ::-webkit-datetime-edit-hour-field {
253
+ padding-block: 0;
254
+ }
255
+
256
+ ::-webkit-datetime-edit-minute-field {
257
+ padding-block: 0;
258
+ }
259
+
260
+ ::-webkit-datetime-edit-second-field {
261
+ padding-block: 0;
262
+ }
263
+
264
+ ::-webkit-datetime-edit-millisecond-field {
265
+ padding-block: 0;
266
+ }
267
+
268
+ ::-webkit-datetime-edit-meridiem-field {
269
+ padding-block: 0;
270
+ }
271
+
272
+ ::-webkit-calendar-picker-indicator {
273
+ line-height: 1;
274
+ }
275
+
276
+ :-moz-ui-invalid {
277
+ box-shadow: none;
278
+ }
279
+
280
+ button, input:where([type="button"], [type="reset"], [type="submit"]) {
281
+ appearance: button;
282
+ }
283
+
284
+ ::file-selector-button {
285
+ appearance: button;
286
+ }
287
+
288
+ ::-webkit-inner-spin-button {
289
+ height: auto;
290
+ }
291
+
292
+ ::-webkit-outer-spin-button {
293
+ height: auto;
294
+ }
295
+
296
+ [hidden]:where(:not([hidden="until-found"])) {
297
+ display: none !important;
298
+ }
299
+
300
+ :root, [data-tao-provider] {
301
+ --tao-color-primary: oklch(20.5% .01 70);
302
+ --tao-color-success: oklch(55.5% .14 155);
303
+ --tao-color-warning: oklch(70% .15 70);
304
+ --tao-color-error: oklch(57% .19 25);
305
+ --tao-color-bg-base: oklch(98.5% .004 70);
306
+ --tao-color-text-base: oklch(15.5% .01 70);
307
+ --tao-radius: 6px;
308
+ --tao-font-size: 14px;
309
+ --tao-control-height: 36px;
310
+ --tao-control-width: 200px;
311
+ --tao-control-range-width: 360px;
312
+ --tao-size-unit: 4px;
313
+ --tao-line-width: 1px;
314
+ --tao-font-family: "Geist Sans", ui-sans-serif, system-ui, -apple-system, sans-serif;
315
+ --tao-font-family-code: "Geist Mono", ui-monospace, SFMono-Regular, Menlo, monospace;
316
+ --tao-motion-unit: .1s;
317
+ --tao-z-index-drawer: 1000;
318
+ --tao-z-index-modal: 1000;
319
+ --tao-z-index-popup: 1100;
320
+ --tao-primary: var(--tao-color-primary);
321
+ --tao-primary-hover: var(--tao-color-primary);
322
+ }
323
+
324
+ @supports (color: color-mix(in lab, red, red)) {
325
+ :root, [data-tao-provider] {
326
+ --tao-primary-hover: color-mix(in oklch, var(--tao-color-primary) 80%, white);
327
+ }
328
+ }
329
+
330
+ :root, [data-tao-provider] {
331
+ --tao-primary-active: var(--tao-color-primary);
332
+ }
333
+
334
+ @supports (color: color-mix(in lab, red, red)) {
335
+ :root, [data-tao-provider] {
336
+ --tao-primary-active: color-mix(in oklch, var(--tao-color-primary) 90%, black);
337
+ }
338
+ }
339
+
340
+ :root, [data-tao-provider] {
341
+ --tao-primary-bg: var(--tao-color-primary);
342
+ }
343
+
344
+ @supports (color: color-mix(in lab, red, red)) {
345
+ :root, [data-tao-provider] {
346
+ --tao-primary-bg: color-mix(in oklch, var(--tao-color-primary) 8%, var(--tao-color-bg-base));
347
+ }
348
+ }
349
+
350
+ :root, [data-tao-provider] {
351
+ --tao-primary-bg-hover: var(--tao-color-primary);
352
+ }
353
+
354
+ @supports (color: color-mix(in lab, red, red)) {
355
+ :root, [data-tao-provider] {
356
+ --tao-primary-bg-hover: color-mix(in oklch, var(--tao-color-primary) 12%, var(--tao-color-bg-base));
357
+ }
358
+ }
359
+
360
+ :root, [data-tao-provider] {
361
+ --tao-primary-border: var(--tao-color-primary);
362
+ }
363
+
364
+ @supports (color: color-mix(in lab, red, red)) {
365
+ :root, [data-tao-provider] {
366
+ --tao-primary-border: color-mix(in oklch, var(--tao-color-primary) 30%, var(--tao-color-bg-base));
367
+ }
368
+ }
369
+
370
+ :root, [data-tao-provider] {
371
+ --tao-primary-fg: var(--tao-color-bg-base);
372
+ --tao-error: var(--tao-color-error);
373
+ --tao-error-hover: var(--tao-color-error);
374
+ }
375
+
376
+ @supports (color: color-mix(in lab, red, red)) {
377
+ :root, [data-tao-provider] {
378
+ --tao-error-hover: color-mix(in oklch, var(--tao-color-error) 80%, white);
379
+ }
380
+ }
381
+
382
+ :root, [data-tao-provider] {
383
+ --tao-error-active: var(--tao-color-error);
384
+ }
385
+
386
+ @supports (color: color-mix(in lab, red, red)) {
387
+ :root, [data-tao-provider] {
388
+ --tao-error-active: color-mix(in oklch, var(--tao-color-error) 90%, black);
389
+ }
390
+ }
391
+
392
+ :root, [data-tao-provider] {
393
+ --tao-error-bg: var(--tao-color-error);
394
+ }
395
+
396
+ @supports (color: color-mix(in lab, red, red)) {
397
+ :root, [data-tao-provider] {
398
+ --tao-error-bg: color-mix(in oklch, var(--tao-color-error) 6%, var(--tao-color-bg-base));
399
+ }
400
+ }
401
+
402
+ :root, [data-tao-provider] {
403
+ --tao-error-border: var(--tao-color-error);
404
+ }
405
+
406
+ @supports (color: color-mix(in lab, red, red)) {
407
+ :root, [data-tao-provider] {
408
+ --tao-error-border: color-mix(in oklch, var(--tao-color-error) 30%, var(--tao-color-bg-base));
409
+ }
410
+ }
411
+
412
+ :root, [data-tao-provider] {
413
+ --tao-error-fg: var(--tao-color-bg-base);
414
+ --tao-success: var(--tao-color-success);
415
+ --tao-success-bg: var(--tao-color-success);
416
+ }
417
+
418
+ @supports (color: color-mix(in lab, red, red)) {
419
+ :root, [data-tao-provider] {
420
+ --tao-success-bg: color-mix(in oklch, var(--tao-color-success) 6%, var(--tao-color-bg-base));
421
+ }
422
+ }
423
+
424
+ :root, [data-tao-provider] {
425
+ --tao-success-border: var(--tao-color-success);
426
+ }
427
+
428
+ @supports (color: color-mix(in lab, red, red)) {
429
+ :root, [data-tao-provider] {
430
+ --tao-success-border: color-mix(in oklch, var(--tao-color-success) 30%, var(--tao-color-bg-base));
431
+ }
432
+ }
433
+
434
+ :root, [data-tao-provider] {
435
+ --tao-warning: var(--tao-color-warning);
436
+ --tao-warning-bg: var(--tao-color-warning);
437
+ }
438
+
439
+ @supports (color: color-mix(in lab, red, red)) {
440
+ :root, [data-tao-provider] {
441
+ --tao-warning-bg: color-mix(in oklch, var(--tao-color-warning) 6%, var(--tao-color-bg-base));
442
+ }
443
+ }
444
+
445
+ :root, [data-tao-provider] {
446
+ --tao-warning-border: var(--tao-color-warning);
447
+ }
448
+
449
+ @supports (color: color-mix(in lab, red, red)) {
450
+ :root, [data-tao-provider] {
451
+ --tao-warning-border: color-mix(in oklch, var(--tao-color-warning) 30%, var(--tao-color-bg-base));
452
+ }
453
+ }
454
+
455
+ :root, [data-tao-provider] {
456
+ --tao-color-text: var(--tao-color-text-base);
457
+ --tao-color-text-secondary: var(--tao-color-text-base);
458
+ }
459
+
460
+ @supports (color: color-mix(in lab, red, red)) {
461
+ :root, [data-tao-provider] {
462
+ --tao-color-text-secondary: color-mix(in oklch, var(--tao-color-text-base) 65%, var(--tao-color-bg-base));
463
+ }
464
+ }
465
+
466
+ :root, [data-tao-provider] {
467
+ --tao-color-text-tertiary: var(--tao-color-text-base);
468
+ }
469
+
470
+ @supports (color: color-mix(in lab, red, red)) {
471
+ :root, [data-tao-provider] {
472
+ --tao-color-text-tertiary: color-mix(in oklch, var(--tao-color-text-base) 45%, var(--tao-color-bg-base));
473
+ }
474
+ }
475
+
476
+ :root, [data-tao-provider] {
477
+ --tao-color-text-quaternary: var(--tao-color-text-base);
478
+ }
479
+
480
+ @supports (color: color-mix(in lab, red, red)) {
481
+ :root, [data-tao-provider] {
482
+ --tao-color-text-quaternary: color-mix(in oklch, var(--tao-color-text-base) 30%, var(--tao-color-bg-base));
483
+ }
484
+ }
485
+
486
+ :root, [data-tao-provider] {
487
+ --tao-color-fill: var(--tao-color-text-base);
488
+ }
489
+
490
+ @supports (color: color-mix(in lab, red, red)) {
491
+ :root, [data-tao-provider] {
492
+ --tao-color-fill: color-mix(in oklch, var(--tao-color-text-base) 15%, var(--tao-color-bg-base));
493
+ }
494
+ }
495
+
496
+ :root, [data-tao-provider] {
497
+ --tao-color-fill-secondary: var(--tao-color-text-base);
498
+ }
499
+
500
+ @supports (color: color-mix(in lab, red, red)) {
501
+ :root, [data-tao-provider] {
502
+ --tao-color-fill-secondary: color-mix(in oklch, var(--tao-color-text-base) 10%, var(--tao-color-bg-base));
503
+ }
504
+ }
505
+
506
+ :root, [data-tao-provider] {
507
+ --tao-color-fill-tertiary: var(--tao-color-text-base);
508
+ }
509
+
510
+ @supports (color: color-mix(in lab, red, red)) {
511
+ :root, [data-tao-provider] {
512
+ --tao-color-fill-tertiary: color-mix(in oklch, var(--tao-color-text-base) 6%, var(--tao-color-bg-base));
513
+ }
514
+ }
515
+
516
+ :root, [data-tao-provider] {
517
+ --tao-color-fill-quaternary: var(--tao-color-text-base);
518
+ }
519
+
520
+ @supports (color: color-mix(in lab, red, red)) {
521
+ :root, [data-tao-provider] {
522
+ --tao-color-fill-quaternary: color-mix(in oklch, var(--tao-color-text-base) 3%, var(--tao-color-bg-base));
523
+ }
524
+ }
525
+
526
+ :root, [data-tao-provider] {
527
+ --tao-color-bg-layout: var(--tao-color-text-base);
528
+ }
529
+
530
+ @supports (color: color-mix(in lab, red, red)) {
531
+ :root, [data-tao-provider] {
532
+ --tao-color-bg-layout: color-mix(in oklch, var(--tao-color-text-base) 4%, var(--tao-color-bg-base));
533
+ }
534
+ }
535
+
536
+ :root, [data-tao-provider] {
537
+ --tao-color-bg-container: oklch(100% 0 0);
538
+ --tao-color-bg-elevated: oklch(100% 0 0);
539
+ --tao-color-border: var(--tao-color-text-base);
540
+ }
541
+
542
+ @supports (color: color-mix(in lab, red, red)) {
543
+ :root, [data-tao-provider] {
544
+ --tao-color-border: color-mix(in oklch, var(--tao-color-text-base) 18%, var(--tao-color-bg-base));
545
+ }
546
+ }
547
+
548
+ :root, [data-tao-provider] {
549
+ --tao-color-border-secondary: #0000170b;
550
+ --tao-radius-xs: 2px;
551
+ --tao-radius-sm: calc(var(--tao-radius) - 2px);
552
+ --tao-radius-md: var(--tao-radius);
553
+ --tao-radius-lg: calc(var(--tao-radius) + 2px);
554
+ --tao-radius-xl: calc(var(--tao-radius) * 2);
555
+ --tao-radius-2xl: calc(var(--tao-radius) * 2.67);
556
+ --tao-radius-full: 9999px;
557
+ --tao-control-height-sm: calc(var(--tao-control-height) - 4px);
558
+ --tao-control-height-lg: calc(var(--tao-control-height) + 4px);
559
+ --tao-font-size-xs: 12px;
560
+ --tao-font-size-sm: 13px;
561
+ --tao-font-size-base: var(--tao-font-size);
562
+ --tao-font-size-lg: 16px;
563
+ --tao-font-size-xl: 20px;
564
+ --tao-font-weight-normal: 400;
565
+ --tao-font-weight-medium: 500;
566
+ --tao-font-weight-strong: 600;
567
+ --tao-line-height: 1.5714;
568
+ --tao-line-height-sm: 1.6667;
569
+ --tao-line-height-lg: 1.5;
570
+ --tao-padding-xxs: 2px;
571
+ --tao-padding-xs: calc(var(--tao-size-unit) * 2);
572
+ --tao-padding-sm: calc(var(--tao-size-unit) * 3);
573
+ --tao-padding: calc(var(--tao-size-unit) * 4);
574
+ --tao-padding-md: calc(var(--tao-size-unit) * 5);
575
+ --tao-padding-lg: calc(var(--tao-size-unit) * 6);
576
+ --tao-padding-xl: calc(var(--tao-size-unit) * 8);
577
+ --tao-motion-duration-fast: calc(var(--tao-motion-unit) * 1);
578
+ --tao-motion-duration-mid: calc(var(--tao-motion-unit) * 2);
579
+ --tao-motion-duration-slow: calc(var(--tao-motion-unit) * 3);
580
+ --tao-motion-ease-out: cubic-bezier(.215, .61, .355, 1);
581
+ --tao-motion-ease-in-out: cubic-bezier(.645, .045, .355, 1);
582
+ --tao-motion-ease-out-quint: cubic-bezier(.23, 1, .32, 1);
583
+ --tao-box-shadow: 0 1px 2px oklch(0% 0 0 / .04), 0 0 1px oklch(0% 0 0 / .08);
584
+ --tao-box-shadow-secondary: 0 2px 8px oklch(0% 0 0 / .06), 0 0 1px oklch(0% 0 0 / .06);
585
+ --tao-box-shadow-tertiary: 0 1px 2px oklch(0% 0 0 / .04);
586
+ --tao-control-outline: var(--tao-color-primary);
587
+ }
588
+
589
+ @supports (color: color-mix(in lab, red, red)) {
590
+ :root, [data-tao-provider] {
591
+ --tao-control-outline: color-mix(in oklch, var(--tao-color-primary) 10%, transparent);
592
+ }
593
+ }
594
+
595
+ :root, [data-tao-provider] {
596
+ --tao-color-error-outline: var(--tao-color-error);
597
+ }
598
+
599
+ @supports (color: color-mix(in lab, red, red)) {
600
+ :root, [data-tao-provider] {
601
+ --tao-color-error-outline: color-mix(in oklch, var(--tao-color-error) 10%, transparent);
602
+ }
603
+ }
604
+
605
+ :root, [data-tao-provider] {
606
+ --tao-color-warning-outline: var(--tao-color-warning);
607
+ }
608
+
609
+ @supports (color: color-mix(in lab, red, red)) {
610
+ :root, [data-tao-provider] {
611
+ --tao-color-warning-outline: color-mix(in oklch, var(--tao-color-warning) 10%, transparent);
612
+ }
613
+ }
614
+
615
+ :root, [data-tao-provider] {
616
+ --tao-color-text-placeholder: var(--tao-color-text-quaternary);
617
+ --tao-color-text-disabled: var(--tao-color-text-quaternary);
618
+ --tao-color-bg-disabled: var(--tao-color-fill-tertiary);
619
+ --tao-control-item-bg-hover: var(--tao-color-fill-tertiary);
620
+ --tao-control-item-bg-active: var(--tao-primary-bg);
621
+ --tao-opacity-loading: .65;
622
+ }
623
+ }
624
+
625
+ @layer components;
626
+
627
+ @layer utilities {
628
+ .collapse {
629
+ visibility: collapse;
630
+ }
631
+
632
+ .visible {
633
+ visibility: visible;
634
+ }
635
+
636
+ .absolute {
637
+ position: absolute;
638
+ }
639
+
640
+ .fixed {
641
+ position: fixed;
642
+ }
643
+
644
+ .relative {
645
+ position: relative;
646
+ }
647
+
648
+ .static {
649
+ position: static;
650
+ }
651
+
652
+ .sticky {
653
+ position: sticky;
654
+ }
655
+
656
+ .isolate {
657
+ isolation: isolate;
658
+ }
659
+
660
+ .container {
661
+ width: 100%;
662
+ }
663
+
664
+ @media (width >= 40rem) {
665
+ .container {
666
+ max-width: 40rem;
667
+ }
668
+ }
669
+
670
+ @media (width >= 48rem) {
671
+ .container {
672
+ max-width: 48rem;
673
+ }
674
+ }
675
+
676
+ @media (width >= 64rem) {
677
+ .container {
678
+ max-width: 64rem;
679
+ }
680
+ }
681
+
682
+ @media (width >= 80rem) {
683
+ .container {
684
+ max-width: 80rem;
685
+ }
686
+ }
687
+
688
+ @media (width >= 96rem) {
689
+ .container {
690
+ max-width: 96rem;
691
+ }
692
+ }
693
+
694
+ .block {
695
+ display: block;
696
+ }
697
+
698
+ .contents {
699
+ display: contents;
700
+ }
701
+
702
+ .flex {
703
+ display: flex;
704
+ }
705
+
706
+ .grid {
707
+ display: grid;
708
+ }
709
+
710
+ .hidden {
711
+ display: none;
712
+ }
713
+
714
+ .inline {
715
+ display: inline;
716
+ }
717
+
718
+ .inline-flex {
719
+ display: inline-flex;
720
+ }
721
+
722
+ .table {
723
+ display: table;
724
+ }
725
+
726
+ .flex-shrink {
727
+ flex-shrink: 1;
728
+ }
729
+
730
+ .transform {
731
+ transform: var(--tw-rotate-x, ) var(--tw-rotate-y, ) var(--tw-rotate-z, ) var(--tw-skew-x, ) var(--tw-skew-y, );
732
+ }
733
+
734
+ .resize {
735
+ resize: both;
736
+ }
737
+
738
+ .flex-wrap {
739
+ flex-wrap: wrap;
740
+ }
741
+
742
+ .truncate {
743
+ text-overflow: ellipsis;
744
+ white-space: nowrap;
745
+ overflow: hidden;
746
+ }
747
+
748
+ .border {
749
+ border-style: var(--tw-border-style);
750
+ border-width: 1px;
751
+ }
752
+
753
+ .italic {
754
+ font-style: italic;
755
+ }
756
+
757
+ .underline {
758
+ text-decoration-line: underline;
759
+ }
760
+
761
+ .shadow {
762
+ --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, #0000001a), 0 1px 2px -1px var(--tw-shadow-color, #0000001a);
763
+ box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
764
+ }
765
+
766
+ .ring {
767
+ --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
768
+ box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
769
+ }
770
+
771
+ .outline {
772
+ outline-style: var(--tw-outline-style);
773
+ outline-width: 1px;
774
+ }
775
+
776
+ .blur {
777
+ --tw-blur: blur(8px);
778
+ filter: var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, );
779
+ }
780
+
781
+ .filter {
782
+ filter: var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, );
783
+ }
784
+
785
+ .transition {
786
+ transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
787
+ transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
788
+ transition-duration: var(--tw-duration, var(--default-transition-duration));
789
+ }
790
+
791
+ .select-all {
792
+ -webkit-user-select: all;
793
+ user-select: all;
794
+ }
795
+ }
796
+
797
+ [data-tao-menu-content] {
798
+ box-sizing: border-box;
799
+ min-width: 8rem;
800
+ padding: var(--tao-padding-xxs);
801
+ background: var(--tao-color-bg-elevated);
802
+ border: var(--tao-line-width) solid var(--tao-color-border-secondary);
803
+ border-radius: var(--tao-radius-lg);
804
+ box-shadow: var(--tao-box-shadow-secondary);
805
+ font-family: var(--tao-font-family);
806
+ color: var(--tao-color-text);
807
+ z-index: var(--tao-z-index-popup);
808
+ animation-duration: var(--tao-motion-duration-fast);
809
+ animation-timing-function: var(--tao-motion-ease-out-quint);
810
+ }
811
+
812
+ [data-tao-menu-content][data-state="open"] {
813
+ animation-name: tao-menu-in;
814
+ }
815
+
816
+ [data-tao-menu-content][data-side="top"] {
817
+ --tao-menu-from-y: 4px;
818
+ }
819
+
820
+ [data-tao-menu-content][data-side="bottom"] {
821
+ --tao-menu-from-y: -4px;
822
+ }
823
+
824
+ @keyframes tao-menu-in {
825
+ 0% {
826
+ opacity: 0;
827
+ transform: translateY(var(--tao-menu-from-y, -4px));
828
+ }
829
+
830
+ to {
831
+ opacity: 1;
832
+ transform: translateY(0);
833
+ }
834
+ }
835
+
836
+ [data-tao-menu-item] {
837
+ align-items: center;
838
+ gap: var(--tao-padding-xs);
839
+ min-height: 32px;
840
+ padding-block: 6px;
841
+ padding-inline: var(--tao-padding-sm);
842
+ font-size: var(--tao-font-size-base);
843
+ color: var(--tao-color-text);
844
+ border-radius: var(--tao-radius-sm);
845
+ cursor: pointer;
846
+ -webkit-user-select: none;
847
+ user-select: none;
848
+ transition: background-color var(--tao-motion-duration-fast) var(--tao-motion-ease-out);
849
+ outline: none;
850
+ display: flex;
851
+ position: relative;
852
+ }
853
+
854
+ [data-tao-menu-item][data-highlighted] {
855
+ background: var(--tao-control-item-bg-hover);
856
+ }
857
+
858
+ [data-tao-menu-item][data-disabled] {
859
+ color: var(--tao-color-text-disabled);
860
+ cursor: not-allowed;
861
+ pointer-events: none;
862
+ }
863
+
864
+ [data-tao-menu-item][data-tao-danger] {
865
+ color: var(--tao-error);
866
+ }
867
+
868
+ [data-tao-menu-item][data-tao-danger][data-highlighted] {
869
+ background: var(--tao-error-bg);
870
+ color: var(--tao-error);
871
+ }
872
+
873
+ [data-tao-menu-item-icon] {
874
+ flex-shrink: 0;
875
+ align-items: center;
876
+ font-size: 16px;
877
+ display: inline-flex;
878
+ }
879
+
880
+ [data-tao-menu-item-icon] svg {
881
+ width: 16px;
882
+ height: 16px;
883
+ }
884
+
885
+ [data-tao-menu-item-label] {
886
+ white-space: nowrap;
887
+ text-overflow: ellipsis;
888
+ flex: 1;
889
+ overflow: hidden;
890
+ }
891
+
892
+ [data-tao-menu-item-extra] {
893
+ font-size: var(--tao-font-size-xs);
894
+ color: var(--tao-color-text-tertiary);
895
+ letter-spacing: .05em;
896
+ margin-inline-start: auto;
897
+ padding-inline-start: var(--tao-padding);
898
+ }
899
+
900
+ [data-tao-menu-item][data-highlighted] [data-tao-menu-item-extra] {
901
+ color: var(--tao-color-text-secondary);
902
+ }
903
+
904
+ [data-tao-menu-selectable] {
905
+ padding-inline-start: calc(var(--tao-padding-sm) + 20px);
906
+ }
907
+
908
+ [data-tao-menu-item-indicator] {
909
+ width: 16px;
910
+ color: var(--tao-primary);
911
+ justify-content: center;
912
+ align-items: center;
913
+ display: inline-flex;
914
+ position: absolute;
915
+ inset-inline-start: var(--tao-padding-sm);
916
+ }
917
+
918
+ [data-tao-menu-sub-trigger][data-state="open"] {
919
+ background: var(--tao-control-item-bg-hover);
920
+ }
921
+
922
+ [data-tao-menu-sub-icon] {
923
+ color: var(--tao-color-text-tertiary);
924
+ margin-inline-start: auto;
925
+ }
926
+
927
+ [data-tao-menu-sub-trigger] [data-tao-menu-item-extra] {
928
+ margin-inline-start: auto;
929
+ }
930
+
931
+ [data-tao-menu-sub-trigger] [data-tao-menu-item-extra] + [data-tao-menu-sub-icon] {
932
+ margin-inline-start: 0;
933
+ }
934
+
935
+ [data-tao-menu-divider] {
936
+ height: var(--tao-line-width);
937
+ margin-block: var(--tao-padding-xxs);
938
+ margin-inline: calc(-1 * var(--tao-padding-xxs));
939
+ background: var(--tao-color-border-secondary);
940
+ }
941
+
942
+ [data-tao-menu-group-label] {
943
+ padding-block: 6px;
944
+ padding-inline: var(--tao-padding-sm);
945
+ font-size: var(--tao-font-size-xs);
946
+ font-weight: var(--tao-font-weight-medium);
947
+ color: var(--tao-color-text-tertiary);
948
+ -webkit-user-select: none;
949
+ user-select: none;
950
+ }
951
+
952
+ [data-tao-menu-content][data-tao-size="small"] [data-tao-menu-item] {
953
+ min-height: 28px;
954
+ font-size: var(--tao-font-size-sm);
955
+ padding-block: 4px;
956
+ }
957
+
958
+ [data-tao-menu-content][data-tao-size="large"] [data-tao-menu-item] {
959
+ min-height: 38px;
960
+ font-size: var(--tao-font-size-lg);
961
+ padding-block: 8px;
962
+ }
963
+
964
+ [data-tao-context-menu-trigger] {
965
+ display: contents;
966
+ }
967
+
968
+ @property --tw-rotate-x {
969
+ syntax: "*";
970
+ inherits: false
971
+ }
972
+
973
+ @property --tw-rotate-y {
974
+ syntax: "*";
975
+ inherits: false
976
+ }
977
+
978
+ @property --tw-rotate-z {
979
+ syntax: "*";
980
+ inherits: false
981
+ }
982
+
983
+ @property --tw-skew-x {
984
+ syntax: "*";
985
+ inherits: false
986
+ }
987
+
988
+ @property --tw-skew-y {
989
+ syntax: "*";
990
+ inherits: false
991
+ }
992
+
993
+ @property --tw-border-style {
994
+ syntax: "*";
995
+ inherits: false;
996
+ initial-value: solid;
997
+ }
998
+
999
+ @property --tw-shadow {
1000
+ syntax: "*";
1001
+ inherits: false;
1002
+ initial-value: 0 0 #0000;
1003
+ }
1004
+
1005
+ @property --tw-shadow-color {
1006
+ syntax: "*";
1007
+ inherits: false
1008
+ }
1009
+
1010
+ @property --tw-shadow-alpha {
1011
+ syntax: "<percentage>";
1012
+ inherits: false;
1013
+ initial-value: 100%;
1014
+ }
1015
+
1016
+ @property --tw-inset-shadow {
1017
+ syntax: "*";
1018
+ inherits: false;
1019
+ initial-value: 0 0 #0000;
1020
+ }
1021
+
1022
+ @property --tw-inset-shadow-color {
1023
+ syntax: "*";
1024
+ inherits: false
1025
+ }
1026
+
1027
+ @property --tw-inset-shadow-alpha {
1028
+ syntax: "<percentage>";
1029
+ inherits: false;
1030
+ initial-value: 100%;
1031
+ }
1032
+
1033
+ @property --tw-ring-color {
1034
+ syntax: "*";
1035
+ inherits: false
1036
+ }
1037
+
1038
+ @property --tw-ring-shadow {
1039
+ syntax: "*";
1040
+ inherits: false;
1041
+ initial-value: 0 0 #0000;
1042
+ }
1043
+
1044
+ @property --tw-inset-ring-color {
1045
+ syntax: "*";
1046
+ inherits: false
1047
+ }
1048
+
1049
+ @property --tw-inset-ring-shadow {
1050
+ syntax: "*";
1051
+ inherits: false;
1052
+ initial-value: 0 0 #0000;
1053
+ }
1054
+
1055
+ @property --tw-ring-inset {
1056
+ syntax: "*";
1057
+ inherits: false
1058
+ }
1059
+
1060
+ @property --tw-ring-offset-width {
1061
+ syntax: "<length>";
1062
+ inherits: false;
1063
+ initial-value: 0;
1064
+ }
1065
+
1066
+ @property --tw-ring-offset-color {
1067
+ syntax: "*";
1068
+ inherits: false;
1069
+ initial-value: #fff;
1070
+ }
1071
+
1072
+ @property --tw-ring-offset-shadow {
1073
+ syntax: "*";
1074
+ inherits: false;
1075
+ initial-value: 0 0 #0000;
1076
+ }
1077
+
1078
+ @property --tw-outline-style {
1079
+ syntax: "*";
1080
+ inherits: false;
1081
+ initial-value: solid;
1082
+ }
1083
+
1084
+ @property --tw-blur {
1085
+ syntax: "*";
1086
+ inherits: false
1087
+ }
1088
+
1089
+ @property --tw-brightness {
1090
+ syntax: "*";
1091
+ inherits: false
1092
+ }
1093
+
1094
+ @property --tw-contrast {
1095
+ syntax: "*";
1096
+ inherits: false
1097
+ }
1098
+
1099
+ @property --tw-grayscale {
1100
+ syntax: "*";
1101
+ inherits: false
1102
+ }
1103
+
1104
+ @property --tw-hue-rotate {
1105
+ syntax: "*";
1106
+ inherits: false
1107
+ }
1108
+
1109
+ @property --tw-invert {
1110
+ syntax: "*";
1111
+ inherits: false
1112
+ }
1113
+
1114
+ @property --tw-opacity {
1115
+ syntax: "*";
1116
+ inherits: false
1117
+ }
1118
+
1119
+ @property --tw-saturate {
1120
+ syntax: "*";
1121
+ inherits: false
1122
+ }
1123
+
1124
+ @property --tw-sepia {
1125
+ syntax: "*";
1126
+ inherits: false
1127
+ }
1128
+
1129
+ @property --tw-drop-shadow {
1130
+ syntax: "*";
1131
+ inherits: false
1132
+ }
1133
+
1134
+ @property --tw-drop-shadow-color {
1135
+ syntax: "*";
1136
+ inherits: false
1137
+ }
1138
+
1139
+ @property --tw-drop-shadow-alpha {
1140
+ syntax: "<percentage>";
1141
+ inherits: false;
1142
+ initial-value: 100%;
1143
+ }
1144
+
1145
+ @property --tw-drop-shadow-size {
1146
+ syntax: "*";
1147
+ inherits: false
1148
+ }
1149
+