@macroui/macroui 1.0.31 → 4.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (121) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +27 -193
  3. package/dist/base.js +1 -0
  4. package/dist/{macroui.css → full.css} +0 -9014
  5. package/dist/index.d.ts +122 -0
  6. package/dist/index.js +149 -0
  7. package/dist/styled.css +5192 -0
  8. package/dist/styled.js +1 -0
  9. package/dist/themes.css +2118 -0
  10. package/dist/unstyled.css +1330 -0
  11. package/dist/unstyled.js +1 -0
  12. package/dist/utilities-styled.js +1 -0
  13. package/dist/utilities-unstyled.js +1 -0
  14. package/dist/utilities.js +1 -0
  15. package/package.json +30 -66
  16. package/src/base/properties.css +5 -0
  17. package/src/base/reset.css +130 -0
  18. package/src/base/rootcolor.css +9 -0
  19. package/src/base/rootscrollgutter.css +21 -0
  20. package/src/base/rootscrolllock.css +4 -0
  21. package/src/base/scrollbar.css +3 -0
  22. package/src/base/svg.css +3 -0
  23. package/src/components/alert.css +126 -0
  24. package/src/components/avatar.css +60 -0
  25. package/src/components/badge.css +151 -0
  26. package/src/components/breadcrumbs.css +40 -0
  27. package/src/components/button.css +362 -0
  28. package/src/components/calendar.css +549 -0
  29. package/src/components/card.css +203 -0
  30. package/src/components/carousel.css +59 -0
  31. package/src/components/chat.css +157 -0
  32. package/src/components/checkbox.css +174 -0
  33. package/src/components/collapse.css +302 -0
  34. package/src/components/countdown.css +56 -0
  35. package/src/components/diff.css +93 -0
  36. package/src/components/divider.css +148 -0
  37. package/src/components/dock.css +123 -0
  38. package/src/components/drawer.css +166 -0
  39. package/src/components/dropdown.css +247 -0
  40. package/src/components/fab.css +139 -0
  41. package/src/components/fieldset.css +23 -0
  42. package/src/components/fileinput.css +265 -0
  43. package/src/components/filter.css +42 -0
  44. package/src/components/footer.css +45 -0
  45. package/src/components/hero.css +21 -0
  46. package/src/components/hover3d.css +128 -0
  47. package/src/components/hovergallery.css +87 -0
  48. package/src/components/indicator.css +76 -0
  49. package/src/components/input.css +263 -0
  50. package/src/components/kbd.css +49 -0
  51. package/src/components/label.css +101 -0
  52. package/src/components/link.css +116 -0
  53. package/src/components/list.css +58 -0
  54. package/src/components/loading.css +76 -0
  55. package/src/components/mask.css +108 -0
  56. package/src/components/menu.css +298 -0
  57. package/src/components/mockup.css +150 -0
  58. package/src/components/modal.css +182 -0
  59. package/src/components/navbar.css +36 -0
  60. package/src/components/progress.css +108 -0
  61. package/src/components/radialprogress.css +39 -0
  62. package/src/components/radio.css +158 -0
  63. package/src/components/range.css +186 -0
  64. package/src/components/rating.css +114 -0
  65. package/src/components/select.css +284 -0
  66. package/src/components/skeleton.css +41 -0
  67. package/src/components/stack.css +80 -0
  68. package/src/components/stat.css +73 -0
  69. package/src/components/status.css +92 -0
  70. package/src/components/steps.css +168 -0
  71. package/src/components/swap.css +94 -0
  72. package/src/components/tab.css +557 -0
  73. package/src/components/table.css +126 -0
  74. package/src/components/textarea.css +179 -0
  75. package/src/components/textrotate.css +71 -0
  76. package/src/components/timeline.css +250 -0
  77. package/src/components/toast.css +68 -0
  78. package/src/components/toggle.css +239 -0
  79. package/src/components/tooltip.css +203 -0
  80. package/src/components/validator.css +47 -0
  81. package/src/themes/abyss.css +29 -0
  82. package/src/themes/acid.css +29 -0
  83. package/src/themes/aqua.css +29 -0
  84. package/src/themes/autumn.css +29 -0
  85. package/src/themes/black.css +29 -0
  86. package/src/themes/bumblebee.css +29 -0
  87. package/src/themes/business.css +29 -0
  88. package/src/themes/caramellatte.css +29 -0
  89. package/src/themes/cmyk.css +29 -0
  90. package/src/themes/coffee.css +29 -0
  91. package/src/themes/corporate.css +29 -0
  92. package/src/themes/cupcake.css +29 -0
  93. package/src/themes/cyberpunk.css +29 -0
  94. package/src/themes/dark.css +29 -0
  95. package/src/themes/dim.css +29 -0
  96. package/src/themes/dracula.css +29 -0
  97. package/src/themes/emerald.css +29 -0
  98. package/src/themes/fantasy.css +29 -0
  99. package/src/themes/forest.css +29 -0
  100. package/src/themes/garden.css +29 -0
  101. package/src/themes/halloween.css +29 -0
  102. package/src/themes/lemonade.css +29 -0
  103. package/src/themes/light.css +29 -0
  104. package/src/themes/lofi.css +29 -0
  105. package/src/themes/luxury.css +29 -0
  106. package/src/themes/night.css +29 -0
  107. package/src/themes/nord.css +29 -0
  108. package/src/themes/pastel.css +29 -0
  109. package/src/themes/retro.css +29 -0
  110. package/src/themes/silk.css +29 -0
  111. package/src/themes/sunset.css +29 -0
  112. package/src/themes/synthwave.css +29 -0
  113. package/src/themes/valentine.css +29 -0
  114. package/src/themes/winter.css +29 -0
  115. package/src/themes/wireframe.css +29 -0
  116. package/src/utilities/glass.css +20 -0
  117. package/src/utilities/join.css +207 -0
  118. package/src/utilities/radius.css +119 -0
  119. package/src/utilities/typography.css +31 -0
  120. package/dist/index.cjs.js +0 -19742
  121. package/dist/index.es.js +0 -19564
@@ -0,0 +1,557 @@
1
+ .tabs {
2
+ @layer daisyui.l1.l2.l3 {
3
+ @apply flex flex-wrap;
4
+ --tabs-height: auto;
5
+ --tabs-direction: row;
6
+ --tab-height: calc(var(--size-field, 0.25rem) * 10);
7
+ height: var(--tabs-height);
8
+ flex-direction: var(--tabs-direction);
9
+ }
10
+ }
11
+
12
+ .tab {
13
+ @layer daisyui.l1.l2.l3 {
14
+ @apply hover:text-base-content relative inline-flex cursor-pointer appearance-none flex-wrap items-center justify-center text-center select-none;
15
+ --tab-p: 0.75rem;
16
+ --tab-bg: var(--color-base-100);
17
+ --tab-border-color: var(--color-base-300);
18
+ --tab-radius-ss: 0;
19
+ --tab-radius-se: 0;
20
+ --tab-radius-es: 0;
21
+ --tab-radius-ee: 0;
22
+ --tab-order: 0;
23
+ --tab-radius-min: calc(0.75rem - var(--border));
24
+ --tab-radius-limit: min(var(--radius-field), var(--tab-radius-min));
25
+ --tab-radius-grad:
26
+ #0000 calc(69% - var(--border)),
27
+ var(--tab-border-color) calc(69% - var(--border) + 0.25px),
28
+ var(--tab-border-color) 69%,
29
+ var(--tab-bg) calc(69% + 0.25px);
30
+ border-color: #0000;
31
+ order: var(--tab-order);
32
+ height: var(--tab-height);
33
+ font-size: 0.875rem;
34
+ padding-inline: var(--tab-p);
35
+
36
+ &:is(input[type="radio"]) {
37
+ @apply min-w-fit;
38
+
39
+ &:after {
40
+ --tw-content: attr(aria-label);
41
+ content: var(--tw-content);
42
+ }
43
+ }
44
+ &:is(label) {
45
+ @apply relative;
46
+ input {
47
+ @apply absolute inset-0 cursor-pointer appearance-none opacity-0;
48
+ }
49
+ }
50
+
51
+ &:checked,
52
+ &:is(label:has(:checked)),
53
+ &:is(.tab-active, [aria-selected="true"], [aria-current="true"], [aria-current="page"]) {
54
+ & + .tab-content {
55
+ @apply block;
56
+ }
57
+ }
58
+ &:not(
59
+ :checked,
60
+ label:has(:checked),
61
+ :hover,
62
+ .tab-active,
63
+ [aria-selected="true"],
64
+ [aria-current="true"],
65
+ [aria-current="page"]
66
+ ) {
67
+ @apply text-base-content/50;
68
+ }
69
+
70
+ &:not(input):empty {
71
+ @apply grow cursor-default;
72
+ }
73
+
74
+ /* &:is(.tab-active, [aria-selected=true], [aria-current=true], [aria-current=page]):not(.tab-disabled, [disabled]),
75
+ &:is(input:checked),
76
+ &:is(label:has(:checked)) {
77
+ @apply text-base-content;
78
+ } */
79
+
80
+ &:focus {
81
+ @apply outline-hidden;
82
+ }
83
+
84
+ &:focus-visible,
85
+ &:is(label:has(:checked:focus-visible)) {
86
+ outline: 2px solid currentColor;
87
+ outline-offset: -5px;
88
+ }
89
+
90
+ &[disabled] {
91
+ @apply pointer-events-none opacity-40;
92
+ }
93
+ }
94
+ }
95
+
96
+ .tab-content {
97
+ @layer daisyui.l1.l2.l3 {
98
+ @apply order-1 hidden border-transparent;
99
+ --tabcontent-radius-ss: var(--radius-box);
100
+ --tabcontent-radius-se: var(--radius-box);
101
+ --tabcontent-radius-es: var(--radius-box);
102
+ --tabcontent-radius-ee: var(--radius-box);
103
+
104
+ --tabcontent-order: 1;
105
+ width: 100%;
106
+ height: calc(100% - var(--tab-height) + var(--border));
107
+ margin: var(--tabcontent-margin);
108
+ order: var(--tabcontent-order);
109
+ border-width: var(--border);
110
+ border-start-start-radius: var(--tabcontent-radius-ss);
111
+ border-start-end-radius: var(--tabcontent-radius-se);
112
+ border-end-start-radius: var(--tabcontent-radius-es);
113
+ border-end-end-radius: var(--tabcontent-radius-ee);
114
+ }
115
+ }
116
+
117
+ .tab-disabled {
118
+ @layer daisyui.l1.l2 {
119
+ @apply pointer-events-none opacity-40;
120
+ }
121
+ }
122
+
123
+ .tabs-border {
124
+ @layer daisyui.l1.l2 {
125
+ > .tab {
126
+ --tab-border-color: #0000 #0000 var(--tab-border-color) #0000;
127
+ position: relative;
128
+ border-radius: var(--radius-field);
129
+ &:before {
130
+ content: "";
131
+ background-color: var(--tab-border-color);
132
+ transition: background-color 0.2s ease;
133
+ width: 80%;
134
+ height: 3px;
135
+ border-radius: var(--radius-field);
136
+ bottom: 0;
137
+ left: 10%;
138
+ position: absolute;
139
+ }
140
+ &:is(.tab-active, [aria-selected="true"], [aria-current="true"], [aria-current="page"]):not(
141
+ .tab-disabled,
142
+ [disabled]
143
+ ),
144
+ &:is(input:checked),
145
+ &:is(label:has(:checked)) {
146
+ &:before {
147
+ --tab-border-color: currentColor;
148
+ border-top: 3px solid;
149
+ }
150
+ }
151
+ }
152
+ }
153
+ }
154
+
155
+ .tabs-lift {
156
+ @layer daisyui.l1.l2 {
157
+ --tabs-height: auto;
158
+ --tabs-direction: row;
159
+
160
+ > .tab {
161
+ --tab-border: 0 0 var(--border) 0;
162
+ --tab-radius-ss: var(--tab-radius-limit);
163
+ --tab-radius-se: var(--tab-radius-limit);
164
+ --tab-radius-es: 0;
165
+ --tab-radius-ee: 0;
166
+ --tab-paddings: var(--border) var(--tab-p) 0 var(--tab-p);
167
+ --tab-border-colors: #0000 #0000 var(--tab-border-color) #0000;
168
+ --tab-corner-width: calc(100% + var(--tab-radius-limit) * 2);
169
+ --tab-corner-height: var(--tab-radius-limit);
170
+ --tab-corner-position: top left, top right;
171
+ /* --last-tab-margin: 0 var(--tab-p) 0 0; */
172
+
173
+ border-width: var(--tab-border);
174
+ border-start-start-radius: var(--tab-radius-ss);
175
+ border-start-end-radius: var(--tab-radius-se);
176
+ border-end-start-radius: var(--tab-radius-es);
177
+ border-end-end-radius: var(--tab-radius-ee);
178
+ padding: var(--tab-paddings);
179
+ border-color: var(--tab-border-colors);
180
+
181
+ &:is(.tab-active, [aria-selected="true"], [aria-current="true"], [aria-current="page"]):not(
182
+ .tab-disabled,
183
+ [disabled]
184
+ ),
185
+ &:is(input:checked, label:has(:checked)) {
186
+ --tab-border: var(--border) var(--border) 0 var(--border);
187
+ --tab-border-colors: var(--tab-border-color) var(--tab-border-color) #0000
188
+ var(--tab-border-color);
189
+ --tab-paddings: 0 calc(var(--tab-p) - var(--border)) var(--border)
190
+ calc(var(--tab-p) - var(--border));
191
+ --tab-inset: auto auto 0 auto;
192
+ --radius-start: radial-gradient(circle at top left, var(--tab-radius-grad));
193
+ --radius-end: radial-gradient(circle at top right, var(--tab-radius-grad));
194
+ background-color: var(--tab-bg);
195
+
196
+ &:before {
197
+ z-index: 1;
198
+ content: "";
199
+ display: block;
200
+ position: absolute;
201
+ width: var(--tab-corner-width);
202
+ height: var(--tab-corner-height);
203
+ background-position: var(--tab-corner-position);
204
+ background-image: var(--radius-start), var(--radius-end);
205
+ background-size: var(--tab-radius-limit) var(--tab-radius-limit);
206
+ background-repeat: no-repeat;
207
+ inset: var(--tab-inset);
208
+ }
209
+
210
+ &:first-child:before {
211
+ --radius-start: none;
212
+ }
213
+ [dir="rtl"] &:first-child:before {
214
+ transform: rotateY(180deg);
215
+ }
216
+
217
+ &:last-child:before {
218
+ --radius-end: none;
219
+ }
220
+ [dir="rtl"] &:last-child:before {
221
+ transform: rotateY(180deg);
222
+ }
223
+ }
224
+
225
+ /* &:last-of-type {
226
+ margin: var(--last-tab-margin);
227
+ } */
228
+ }
229
+
230
+ &:has(> .tab-content) {
231
+ > .tab:first-child {
232
+ &:not(.tab-active, [aria-selected="true"], [aria-current="true"], [aria-current="page"]) {
233
+ --tab-border-colors: var(--tab-border-color) var(--tab-border-color) #0000
234
+ var(--tab-border-color);
235
+ }
236
+ }
237
+ }
238
+
239
+ > .tab-content {
240
+ --tabcontent-margin: calc(-1 * var(--border)) 0 0 0;
241
+ --tabcontent-radius-ss: 0;
242
+ --tabcontent-radius-se: var(--radius-box);
243
+ --tabcontent-radius-es: var(--radius-box);
244
+ --tabcontent-radius-ee: var(--radius-box);
245
+ }
246
+
247
+ :checked,
248
+ label:has(:checked),
249
+ :is(.tab-active, [aria-selected="true"], [aria-current="true"], [aria-current="page"]) {
250
+ & + .tab-content {
251
+ &:nth-child(1),
252
+ &:nth-child(n + 3) {
253
+ --tabcontent-radius-ss: var(--radius-box);
254
+ }
255
+ }
256
+ }
257
+ }
258
+ }
259
+
260
+ .tabs-top {
261
+ @layer daisyui.l1.l2 {
262
+ --tabs-height: auto;
263
+ --tabs-direction: row;
264
+
265
+ > .tab {
266
+ --tab-order: 0;
267
+ --tab-border: 0 0 var(--border) 0;
268
+ --tab-radius-ss: var(--tab-radius-limit);
269
+ --tab-radius-se: var(--tab-radius-limit);
270
+ --tab-radius-es: 0;
271
+ --tab-radius-ee: 0;
272
+ --tab-paddings: var(--border) var(--tab-p) 0 var(--tab-p);
273
+ --tab-border-colors: #0000 #0000 var(--tab-border-color) #0000;
274
+ --tab-corner-width: calc(100% + var(--tab-radius-limit) * 2);
275
+ --tab-corner-height: var(--tab-radius-limit);
276
+ --tab-corner-position: top left, top right;
277
+ /* --last-tab-margin: 0 var(--tab-p) 0 0; */
278
+
279
+ &:is(.tab-active, [aria-selected="true"], [aria-current="true"], [aria-current="page"]):not(
280
+ .tab-disabled,
281
+ [disabled]
282
+ ),
283
+ &:is(input:checked),
284
+ &:is(label:has(:checked)) {
285
+ --tab-border: var(--border) var(--border) 0 var(--border);
286
+ --tab-border-colors: var(--tab-border-color) var(--tab-border-color) #0000
287
+ var(--tab-border-color);
288
+ --tab-paddings: 0 calc(var(--tab-p) - var(--border)) var(--border)
289
+ calc(var(--tab-p) - var(--border));
290
+ --tab-inset: auto auto 0 auto;
291
+ --radius-start: radial-gradient(circle at top left, var(--tab-radius-grad));
292
+ --radius-end: radial-gradient(circle at top right, var(--tab-radius-grad));
293
+ }
294
+ }
295
+
296
+ &:has(> .tab-content) {
297
+ > .tab:first-child {
298
+ &:not(.tab-active, [aria-selected="true"], [aria-current="true"], [aria-current="page"]) {
299
+ --tab-border-colors: var(--tab-border-color) var(--tab-border-color) #0000
300
+ var(--tab-border-color);
301
+ }
302
+ }
303
+ }
304
+
305
+ > .tab-content {
306
+ --tabcontent-order: 1;
307
+ --tabcontent-margin: calc(-1 * var(--border)) 0 0 0;
308
+ --tabcontent-radius-ss: 0;
309
+ --tabcontent-radius-se: var(--radius-box);
310
+ --tabcontent-radius-es: var(--radius-box);
311
+ --tabcontent-radius-ee: var(--radius-box);
312
+ }
313
+
314
+ :checked,
315
+ label:has(:checked),
316
+ :is(.tab-active, [aria-selected="true"], [aria-current="true"], [aria-current="page"]) {
317
+ & + .tab-content {
318
+ &:nth-child(1),
319
+ &:nth-child(n + 3) {
320
+ --tabcontent-radius-ss: var(--radius-box);
321
+ }
322
+ }
323
+ }
324
+ }
325
+ }
326
+
327
+ .tabs-bottom {
328
+ @layer daisyui.l1.l2 {
329
+ --tabs-height: auto;
330
+ --tabs-direction: row;
331
+
332
+ > .tab {
333
+ --tab-order: 1;
334
+ --tab-border: var(--border) 0 0 0;
335
+ --tab-radius-ss: 0;
336
+ --tab-radius-se: 0;
337
+ --tab-radius-es: var(--tab-radius-limit);
338
+ --tab-radius-ee: var(--tab-radius-limit);
339
+ --tab-border-colors: var(--tab-border-color) #0000 #0000 #0000;
340
+ --tab-paddings: 0 var(--tab-p) var(--border) var(--tab-p);
341
+ --tab-corner-width: calc(100% + var(--tab-radius-limit) * 2);
342
+ --tab-corner-height: var(--tab-radius-limit);
343
+ --tab-corner-position: top left, top right;
344
+ /* --last-tab-margin: 0 var(--tab-p) 0 0; */
345
+
346
+ &:is(.tab-active, [aria-selected="true"], [aria-current="true"], [aria-current="page"]):not(
347
+ .tab-disabled,
348
+ [disabled]
349
+ ),
350
+ &:is(input:checked),
351
+ &:is(label:has(:checked)) {
352
+ --tab-border: 0 var(--border) var(--border) var(--border);
353
+ --tab-border-colors: #0000 var(--tab-border-color) var(--tab-border-color)
354
+ var(--tab-border-color);
355
+ --tab-paddings: var(--border) calc(var(--tab-p) - var(--border)) 0
356
+ calc(var(--tab-p) - var(--border));
357
+ --tab-inset: 0 auto auto auto;
358
+ --radius-start: radial-gradient(circle at bottom left, var(--tab-radius-grad));
359
+ --radius-end: radial-gradient(circle at bottom right, var(--tab-radius-grad));
360
+ }
361
+ }
362
+
363
+ &:has(> .tab-content) {
364
+ > .tab:first-child {
365
+ &:not(.tab-active, [aria-selected="true"], [aria-current="true"], [aria-current="page"]) {
366
+ --tab-border-colors: #0000 var(--tab-border-color) var(--tab-border-color)
367
+ var(--tab-border-color);
368
+ }
369
+ }
370
+ }
371
+
372
+ > .tab-content {
373
+ --tabcontent-order: 0;
374
+ --tabcontent-margin: 0 0 calc(-1 * var(--border)) 0;
375
+ --tabcontent-radius-ss: var(--radius-box);
376
+ --tabcontent-radius-se: var(--radius-box);
377
+ --tabcontent-radius-es: 0;
378
+ --tabcontent-radius-ee: var(--radius-box);
379
+ }
380
+
381
+ > :checked,
382
+ > :is(label:has(:checked)),
383
+ > :is(.tab-active, [aria-selected="true"], [aria-current="true"], [aria-current="page"]) {
384
+ & + .tab-content:not(:nth-child(2)) {
385
+ --tabcontent-radius-es: var(--radius-box);
386
+ }
387
+ }
388
+ }
389
+ }
390
+
391
+ /* .tabs-start {
392
+ @layer daisyui.l1.l2 {
393
+ --tabs-height: 10rem;
394
+ --tabs-direction: column;
395
+
396
+ > .tab {
397
+ --tab-order: 0;
398
+ --tab-border: 0 1px 0 0;
399
+ --tab-radius-ss: var(--tab-radius-limit);
400
+ --tab-radius-se: 0;
401
+ --tab-radius-es: var(--tab-radius-limit);
402
+ --tab-radius-ee: 0;
403
+ --tab-paddings: 1px var(--tab-p) 1px calc(var(--tab-p) + 1px);
404
+ --tab-border-colors: #0000 #0000 var(--tab-border-color) #0000;
405
+ --tab-corner-width: var(--tab-radius-limit);
406
+ --tab-corner-height: calc(100% + var(--tab-radius-limit) * 2);
407
+ --tab-corner-position: top right, bottom right;
408
+ --last-tab-margin: 0 0 0 0;
409
+
410
+ &:is(.tab-active, [aria-selected=true], [aria-current=true], [aria-current=page]):not(.tab-disabled, [disabled]),
411
+ &:is(input:checked),
412
+ &:is(label:has(:checked)) {
413
+ --tab-border: 1px 0 1px 1px;
414
+ --tab-border-colors: var(--tab-border-color) #0000 var(--tab-border-color) var(--tab-border-color);
415
+ --tab-paddings: 0 calc(1px + var(--tab-p)) 0 var(--tab-p);
416
+ --tab-inset: auto 0 auto auto;
417
+ --radius-start: radial-gradient(circle at top left, var(--tab-radius-grad));
418
+ --radius-end: radial-gradient(circle at bottom right, var(--tab-radius-grad));
419
+ }
420
+ }
421
+
422
+ &:has(> .tab-content) {
423
+ > .tab:first-child {
424
+ &:not(.tab-active, [aria-selected=true], [aria-current=true], [aria-current=page]) {
425
+ --tab-border-colors: var(--tab-border-color) #0000 var(--tab-border-color) var(--tab-border-color);
426
+ }
427
+ }
428
+ }
429
+
430
+ > .tab-content {
431
+ --tabcontent-order: 1;
432
+ --tabcontent-margin: 0 0 0 -1px;
433
+ --tabcontent-radius-ss: 0;
434
+ --tabcontent-radius-se: var(--radius-box);
435
+ --tabcontent-radius-es: var(--radius-box);
436
+ --tabcontent-radius-ee: var(--radius-box);
437
+ }
438
+
439
+ :checked,
440
+ label:has(:checked),
441
+ :is(.tab-active, [aria-selected=true], [aria-current=true], [aria-current=page]) {
442
+ & + .tab-content:not(:nth-child(2)) {
443
+ --tabcontent-radius-ss: var(--radius-box);
444
+ }
445
+ }
446
+ }
447
+ } */
448
+
449
+ .tabs-box {
450
+ @layer daisyui.l1.l2 {
451
+ @apply bg-base-200 p-1;
452
+ /*
453
+ using --tabs-box-radius CSS variable to avoid Nuxt build issue
454
+ https://github.com/saadeghi/daisyui/issues/3724
455
+ */
456
+ --tabs-box-radius: calc(3 * var(--radius-field));
457
+ border-radius: calc(
458
+ min(var(--tab-height) / 2, var(--radius-field)) + min(0.25rem, var(--tabs-box-radius))
459
+ );
460
+ box-shadow:
461
+ 0 -0.5px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset,
462
+ 0 0.5px oklch(0% 0 0 / calc(var(--depth) * 0.05)) inset;
463
+
464
+ > .tab {
465
+ @apply rounded-field;
466
+ border-style: none;
467
+
468
+ &:focus-visible,
469
+ &:is(label:has(:checked:focus-visible)) {
470
+ outline-offset: 2px;
471
+ }
472
+ &:focus-visible {
473
+ @apply z-1;
474
+ }
475
+ }
476
+
477
+ > :is(.tab-active, [aria-selected="true"], [aria-current="true"], [aria-current="page"]):not(
478
+ .tab-disabled,
479
+ [disabled]
480
+ ),
481
+ > :is(input:checked),
482
+ > :is(label:has(:checked)) {
483
+ background-color: var(--tab-bg, var(--color-base-100));
484
+ box-shadow:
485
+ 0 1px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset,
486
+ 0 1px 1px -1px color-mix(in oklab, var(--color-neutral) calc(var(--depth) * 50%), #0000),
487
+ 0 1px 6px -4px color-mix(in oklab, var(--color-neutral) calc(var(--depth) * 100%), #0000);
488
+ @media (forced-colors: active) {
489
+ border: 1px solid;
490
+ }
491
+ }
492
+ > .tab-content {
493
+ @apply mt-1;
494
+ /* Compensate for p-1 */
495
+ height: calc(100% - var(--tab-height) + var(--border) - 0.5rem);
496
+ border-radius: calc(
497
+ min(var(--tab-height) / 2, var(--radius-field)) +
498
+ min(0.25rem, var(--tabs-box-radius)) - var(--border)
499
+ );
500
+ }
501
+ }
502
+ }
503
+
504
+ .tabs-xs {
505
+ @layer daisyui.l1.l2 {
506
+ --tab-height: calc(var(--size-field, 0.25rem) * 6);
507
+ & > .tab {
508
+ font-size: 0.75rem;
509
+ --tab-p: 0.375rem;
510
+ --tab-radius-min: calc(0.5rem - var(--border));
511
+ }
512
+ }
513
+ }
514
+
515
+ .tabs-sm {
516
+ @layer daisyui.l1.l2 {
517
+ --tab-height: calc(var(--size-field, 0.25rem) * 8);
518
+ & > .tab {
519
+ font-size: 0.875rem;
520
+ --tab-p: 0.5rem;
521
+ --tab-radius-min: calc(0.5rem - var(--border));
522
+ }
523
+ }
524
+ }
525
+
526
+ .tabs-md {
527
+ @layer daisyui.l1.l2 {
528
+ --tab-height: calc(var(--size-field, 0.25rem) * 10);
529
+ & > .tab {
530
+ font-size: 0.875rem;
531
+ --tab-p: 0.75rem;
532
+ --tab-radius-min: calc(0.75rem - var(--border));
533
+ }
534
+ }
535
+ }
536
+
537
+ .tabs-lg {
538
+ @layer daisyui.l1.l2 {
539
+ --tab-height: calc(var(--size-field, 0.25rem) * 12);
540
+ & > .tab {
541
+ font-size: 1.125rem;
542
+ --tab-p: 1rem;
543
+ --tab-radius-min: calc(1.5rem - var(--border));
544
+ }
545
+ }
546
+ }
547
+
548
+ .tabs-xl {
549
+ @layer daisyui.l1.l2 {
550
+ --tab-height: calc(var(--size-field, 0.25rem) * 14);
551
+ & > .tab {
552
+ font-size: 1.125rem;
553
+ --tab-p: 1.25rem;
554
+ --tab-radius-min: calc(2rem - var(--border));
555
+ }
556
+ }
557
+ }
@@ -0,0 +1,126 @@
1
+ .table {
2
+ @layer daisyui.l1.l2.l3 {
3
+ font-size: 0.875rem;
4
+ @apply rounded-box relative w-full border-separate border-spacing-0 text-left rtl:text-right;
5
+
6
+ tr.row-hover {
7
+ &,
8
+ &:nth-child(even) {
9
+ @apply hover:bg-base-200;
10
+ }
11
+ }
12
+
13
+ :where(th, td) {
14
+ @apply px-4 py-3 align-middle;
15
+ }
16
+
17
+ :where(thead, tfoot) {
18
+ @apply text-base-content/60 whitespace-nowrap;
19
+ font-size: 0.875rem;
20
+ font-weight: 600;
21
+ }
22
+
23
+ :where(tfoot tr:first-child :is(td, th)) {
24
+ border-top: var(--border) solid color-mix(in oklch, var(--color-base-content) 5%, #0000);
25
+ }
26
+
27
+ :where(.table-pin-rows thead tr) {
28
+ @apply bg-base-100 sticky top-0 z-1;
29
+ }
30
+
31
+ :where(.table-pin-rows tfoot tr) {
32
+ @apply bg-base-100 sticky bottom-0 z-1;
33
+ }
34
+
35
+ :where(.table-pin-cols tr th) {
36
+ @apply bg-base-100 sticky right-0 left-0;
37
+ }
38
+
39
+ :where(thead tr :is(td, th), tbody tr:not(:last-child) :is(td, th)) {
40
+ border-bottom: var(--border) solid color-mix(in oklch, var(--color-base-content) 5%, #0000);
41
+ }
42
+ }
43
+ }
44
+
45
+ .table-zebra {
46
+ @layer daisyui.l1.l2 {
47
+ tbody {
48
+ tr {
49
+ &:where(:nth-child(even)) {
50
+ @apply bg-base-200;
51
+
52
+ :where(.table-pin-cols tr th) {
53
+ @apply bg-base-200;
54
+ }
55
+ }
56
+
57
+ &.row-hover {
58
+ &,
59
+ &:where(:nth-child(even)) {
60
+ @apply hover:bg-base-300;
61
+ }
62
+ }
63
+ }
64
+ }
65
+ }
66
+ }
67
+
68
+ .table-xs {
69
+ @layer daisyui.l1.l2 {
70
+ :not(thead, tfoot) tr {
71
+ font-size: 0.6875rem;
72
+ }
73
+
74
+ :where(th, td) {
75
+ @apply px-2 py-1;
76
+ }
77
+ }
78
+ }
79
+
80
+ .table-sm {
81
+ @layer daisyui.l1.l2 {
82
+ :not(thead, tfoot) tr {
83
+ font-size: 0.75rem;
84
+ }
85
+
86
+ :where(th, td) {
87
+ @apply px-3 py-2;
88
+ }
89
+ }
90
+ }
91
+
92
+ .table-md {
93
+ @layer daisyui.l1.l2 {
94
+ :not(thead, tfoot) tr {
95
+ font-size: 0.875rem;
96
+ }
97
+
98
+ :where(th, td) {
99
+ @apply px-4 py-3;
100
+ }
101
+ }
102
+ }
103
+
104
+ .table-lg {
105
+ @layer daisyui.l1.l2 {
106
+ :not(thead, tfoot) tr {
107
+ font-size: 1.125rem;
108
+ }
109
+
110
+ :where(th, td) {
111
+ @apply px-5 py-4;
112
+ }
113
+ }
114
+ }
115
+
116
+ .table-xl {
117
+ @layer daisyui.l1.l2 {
118
+ :not(thead, tfoot) tr {
119
+ font-size: 1.375rem;
120
+ }
121
+
122
+ :where(th, td) {
123
+ @apply px-6 py-5;
124
+ }
125
+ }
126
+ }