@shuriken-ui/tailwind 3.1.3 → 4.0.0-alpha.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (91) hide show
  1. package/package.json +30 -80
  2. package/src/css/accordion.css +175 -0
  3. package/src/css/autocomplete.css +511 -0
  4. package/src/css/avatar-group.css +138 -0
  5. package/src/css/avatar.css +738 -0
  6. package/src/css/breadcrumb.css +63 -0
  7. package/src/css/button-action.css +108 -0
  8. package/src/css/button-close.css +117 -0
  9. package/src/css/button-group.css +236 -0
  10. package/src/css/button-icon.css +97 -0
  11. package/src/css/button.css +565 -0
  12. package/src/css/card.css +69 -0
  13. package/src/css/checkbox.css +99 -0
  14. package/src/css/dropdown-divider.css +6 -0
  15. package/src/css/dropdown-item.css +62 -0
  16. package/src/css/dropdown.css +102 -0
  17. package/src/css/focus.css +12 -0
  18. package/src/css/fullscreen-dropfile.css +63 -0
  19. package/src/css/heading.css +78 -0
  20. package/src/css/icon-box.css +305 -0
  21. package/src/css/input-file-regular.css +255 -0
  22. package/src/css/input-file.css +224 -0
  23. package/src/css/input-help-text.css +7 -0
  24. package/src/css/input-number.css +469 -0
  25. package/src/css/input.css +402 -0
  26. package/src/css/kbd.css +94 -0
  27. package/src/css/label.css +6 -0
  28. package/src/css/link.css +8 -0
  29. package/src/css/list.css +23 -0
  30. package/src/css/listbox.css +511 -0
  31. package/src/css/mark.css +7 -0
  32. package/src/css/mask.css +23 -0
  33. package/src/css/message-text.css +72 -0
  34. package/src/css/message.css +245 -0
  35. package/src/css/modal.css +51 -0
  36. package/src/css/pagination.css +93 -0
  37. package/src/css/paragraph.css +78 -0
  38. package/src/css/placeholder-page.css +44 -0
  39. package/src/css/placeload.css +13 -0
  40. package/src/css/progress-circle.css +18 -0
  41. package/src/css/progress.css +90 -0
  42. package/src/css/prose.css +22 -0
  43. package/src/css/radio.css +73 -0
  44. package/src/css/select.css +404 -0
  45. package/src/css/slimscroll.css +32 -0
  46. package/src/css/snack.css +101 -0
  47. package/src/css/switch-ball.css +94 -0
  48. package/src/css/switch-thin.css +76 -0
  49. package/src/css/tab-slider.css +190 -0
  50. package/src/css/tabs.css +175 -0
  51. package/src/css/tag.css +312 -0
  52. package/src/css/text.css +78 -0
  53. package/src/css/textarea.css +228 -0
  54. package/src/css/theme-switch.css +65 -0
  55. package/src/css/theme-toggle.css +62 -0
  56. package/src/css/toast.css +132 -0
  57. package/src/css/tooltip.css +99 -0
  58. package/src/index.css +57 -0
  59. package/dist/colors.cjs +0 -2
  60. package/dist/colors.d.cts +0 -2
  61. package/dist/colors.d.mts +0 -2
  62. package/dist/colors.d.ts +0 -2
  63. package/dist/colors.mjs +0 -1
  64. package/dist/config.cjs +0 -18
  65. package/dist/config.d.cts +0 -6
  66. package/dist/config.d.mts +0 -6
  67. package/dist/config.d.ts +0 -6
  68. package/dist/config.mjs +0 -16
  69. package/dist/index.cjs +0 -25
  70. package/dist/index.d.cts +0 -11
  71. package/dist/index.d.mts +0 -11
  72. package/dist/index.d.ts +0 -11
  73. package/dist/index.mjs +0 -21
  74. package/dist/plugins/index.cjs +0 -21074
  75. package/dist/plugins/index.d.cts +0 -308
  76. package/dist/plugins/index.d.mts +0 -308
  77. package/dist/plugins/index.d.ts +0 -308
  78. package/dist/plugins/index.mjs +0 -21008
  79. package/dist/preset.cjs +0 -53
  80. package/dist/preset.d.cts +0 -3
  81. package/dist/preset.d.mts +0 -3
  82. package/dist/preset.d.ts +0 -3
  83. package/dist/preset.mjs +0 -44
  84. package/dist/shared/tailwind.6e316a50.d.cts +0 -49966
  85. package/dist/shared/tailwind.6e316a50.d.mts +0 -49966
  86. package/dist/shared/tailwind.6e316a50.d.ts +0 -49966
  87. package/dist/themes.cjs +0 -119
  88. package/dist/themes.d.cts +0 -187
  89. package/dist/themes.d.mts +0 -187
  90. package/dist/themes.d.ts +0 -187
  91. package/dist/themes.mjs +0 -113
@@ -0,0 +1,73 @@
1
+ /* generated using "pnpm jiti scripts/generate-utilities.ts" */
2
+ /* @utility nui-radio */
3
+
4
+ @utility nui-radio {
5
+ @apply relative inline-flex items-start gap-1;
6
+ }
7
+ @utility nui-radio-outer {
8
+ @apply nui-focus relative flex items-center justify-center shrink-0 cursor-pointer overflow-hidden rounded-full;
9
+ @apply h-5 w-5;
10
+ }
11
+ @utility nui-radio-inner {
12
+ @apply absolute start-0 top-0 z-0 rounded-full;
13
+ @apply h-full w-full;
14
+ @apply bg-white dark:bg-muted-700;
15
+ @apply border-2 border-muted-400 dark:border-muted-600;
16
+ }
17
+ @utility nui-radio-dot {
18
+ @apply pointer-events-none z-10 block scale-0 rounded-full;
19
+ @apply h-1 w-1;
20
+ @apply bg-current dark:bg-current;
21
+ @apply transition-all duration-300;
22
+ }
23
+ @utility nui-radio-input {
24
+ @apply absolute z-20 h-5 w-5 cursor-pointer opacity-0;
25
+
26
+ &:checked ~ .nui-radio-inner {
27
+ @apply border-current;
28
+ }
29
+
30
+ &:checked ~ .nui-radio-dot {
31
+ @apply scale-100;
32
+ }
33
+ }
34
+ @utility nui-radio-label-wrapper {
35
+ @apply inline-flex flex-col;
36
+ }
37
+ @utility nui-radio-label-text {
38
+ @apply ms-1 cursor-pointer select-none;
39
+ @apply font-sans text-sm text-muted-400 dark:text-muted-400;
40
+ }
41
+ @utility nui-radio-error {
42
+ @apply ms-1 inline-block;
43
+ }
44
+ @utility nui-radio-default {
45
+ @apply text-muted-600 dark:text-muted-200;
46
+ }
47
+ @utility nui-radio-muted {
48
+ @apply text-muted-400 dark:text-muted-400;
49
+ }
50
+ @utility nui-radio-light {
51
+ @apply text-muted-100 dark:text-muted-100;
52
+ }
53
+ @utility nui-radio-dark {
54
+ @apply text-muted-900 dark:text-muted-100;
55
+ }
56
+ @utility nui-radio-black {
57
+ @apply text-black dark:text-white;
58
+ }
59
+ @utility nui-radio-primary {
60
+ @apply text-primary-500 dark:text-primary-500;
61
+ }
62
+ @utility nui-radio-info {
63
+ @apply text-info-500 dark:text-info-500;
64
+ }
65
+ @utility nui-radio-success {
66
+ @apply text-success-500 dark:text-muted-200;
67
+ }
68
+ @utility nui-radio-warning {
69
+ @apply text-warning-500 dark:text-warning-500;
70
+ }
71
+ @utility nui-radio-danger {
72
+ @apply text-danger-500 dark:text-danger-500;
73
+ }
@@ -0,0 +1,404 @@
1
+ /* generated using "pnpm jiti scripts/generate-utilities.ts" */
2
+ /* @utility nui-select */
3
+
4
+ @utility nui-select-wrapper {
5
+ @apply relative;
6
+
7
+ .nui-select-label, .nui-label-float {
8
+ @apply nui-label;
9
+ }
10
+
11
+ &:not(.nui-select-loading) {
12
+ .nui-select ~ .nui-label-float {
13
+ @apply text-transparent;
14
+ }
15
+ }
16
+
17
+ &:not(.nui-has-icon).nui-select-sm {
18
+ .nui-select {
19
+ @apply h-8 py-1 text-xs leading-4 ps-2 pe-7;
20
+ }
21
+ }
22
+
23
+ &:not(.nui-has-icon).nui-select-md {
24
+ .nui-select {
25
+ @apply h-10 py-2 text-sm leading-5 ps-3 pe-8;
26
+ }
27
+ }
28
+
29
+ &:not(.nui-has-icon).nui-select-lg {
30
+ .nui-select {
31
+ @apply h-12 py-2 text-sm leading-5 ps-4 pe-9;
32
+ }
33
+ }
34
+
35
+ &:not(.nui-has-icon).nui-select-xl {
36
+ .nui-select {
37
+ @apply h-14 py-2 text-base leading-5 ps-4 pe-9;
38
+ }
39
+ }
40
+
41
+ &.nui-select-label-float:not(.nui-has-icon).nui-select-sm {
42
+ .nui-label-float {
43
+ @apply start-3 -ms-3 -mt-7 text-xs;
44
+ }
45
+
46
+ .nui-select:focus-visible ~ .nui-label-float {
47
+ @apply !-ms-3 !-mt-7;
48
+ }
49
+
50
+ .nui-select ~ .nui-label-float {
51
+ @apply ms-0 mt-0;
52
+ }
53
+ }
54
+
55
+ &.nui-select-label-float:not(.nui-has-icon).nui-select-md {
56
+ .nui-label-float {
57
+ @apply start-3 -ms-3 -mt-8 text-xs;
58
+ }
59
+
60
+ .nui-select:focus-visible ~ .nui-label-float {
61
+ @apply !-ms-3 !-mt-8 !text-xs;
62
+ }
63
+
64
+ .nui-select ~ .nui-label-float {
65
+ @apply ms-0 mt-0 text-[0.825rem];
66
+ }
67
+ }
68
+
69
+ &.nui-select-label-float:not(.nui-has-icon).nui-select-lg {
70
+ .nui-label-float {
71
+ @apply start-3 -ms-3 -mt-9 text-xs;
72
+ }
73
+
74
+ .nui-select:focus-visible ~ .nui-label-float {
75
+ @apply !-ms-3 !-mt-9 !text-xs;
76
+ }
77
+
78
+ .nui-select ~ .nui-label-float {
79
+ @apply ms-0 mt-0 text-[0.825rem];
80
+ }
81
+ }
82
+
83
+ &.nui-select-label-float:not(.nui-has-icon).nui-select-xl {
84
+ .nui-label-float {
85
+ @apply start-3 -ms-3 -mt-10 text-xs;
86
+ }
87
+
88
+ .nui-select:focus-visible ~ .nui-label-float {
89
+ @apply !-ms-3 !-mt-10 !text-xs;
90
+ }
91
+
92
+ .nui-select ~ .nui-label-float {
93
+ @apply ms-0 mt-0 text-[0.825rem];
94
+ }
95
+ }
96
+ }
97
+ @utility nui-label-float {
98
+ @apply h-5 absolute inline-flex items-center select-none pointer-events-none;
99
+ @apply font-sans text-primary-500 leading-none;
100
+ @apply transition-all duration-300;
101
+ }
102
+ @utility nui-select-outer {
103
+ @apply relative;
104
+ }
105
+ @utility nui-select-icon {
106
+ @apply absolute start-0 top-0 z-10 flex items-center justify-center;
107
+ @apply text-muted-400 dark:text-muted-400;
108
+ @apply transition-colors duration-300;
109
+ }
110
+ @utility nui-select {
111
+ @apply nui-focus appearance-none w-full font-sans disabled:cursor-not-allowed disabled:opacity-75;
112
+ @apply transition-all duration-300;
113
+
114
+ &:focus-visible ~ .nui-label-float {
115
+ @apply !text-primary-500 dark:!text-primary-500;
116
+ }
117
+
118
+ &:focus-visible ~ .nui-select-icon {
119
+ @apply !text-primary-500 dark:!text-primary-500;
120
+ }
121
+
122
+ &:focus-visible ~ .nui-select-chevron {
123
+ @apply rotate-180;
124
+ }
125
+
126
+ &:disabled ~ .nui-select-icon {
127
+ @apply cursor-not-allowed opacity-75;
128
+ }
129
+ }
130
+ @utility nui-select-placeload {
131
+ @apply absolute start-0 top-0 flex w-full items-center px-4;
132
+
133
+ .nui-placeload {
134
+ @apply h-3 w-full max-w-[75%] rounded;
135
+ }
136
+ }
137
+ @utility nui-select-chevron {
138
+ @apply pointer-events-none;
139
+ @apply absolute end-0 top-0 z-10 flex items-center justify-center;
140
+ @apply text-muted-400 dark:text-muted-400;
141
+ @apply transition-transform duration-300;
142
+ }
143
+ @utility nui-select-multiple {
144
+ .nui-select {
145
+ @apply p-2 h-32;
146
+ }
147
+ }
148
+ @utility nui-select-rounded-sm {
149
+ .nui-select {
150
+ @apply rounded-md;
151
+ }
152
+ }
153
+ @utility nui-select-rounded-md {
154
+ .nui-select {
155
+ @apply rounded-lg;
156
+ }
157
+ }
158
+ @utility nui-select-rounded-lg {
159
+ .nui-select {
160
+ @apply rounded-xl;
161
+ }
162
+ }
163
+ @utility nui-select-rounded-full {
164
+ .nui-select {
165
+ @apply rounded-full;
166
+ }
167
+ }
168
+ @utility nui-select-sm {
169
+ .nui-select {
170
+ @apply pe-8;
171
+ }
172
+
173
+ .nui-select-label {
174
+ @apply pb-1 text-xs;
175
+ }
176
+
177
+ .nui-label-float {
178
+ @apply top-1.5;
179
+ }
180
+
181
+ .nui-select-icon, .nui-select-chevron {
182
+ @apply h-8 w-8;
183
+
184
+ .nui-select-icon-inner, .nui-select-chevron-inner {
185
+ @apply h-4 w-4;
186
+ }
187
+ }
188
+
189
+ .nui-select-placeload {
190
+ @apply h-8;
191
+ }
192
+ }
193
+ @utility nui-select-md {
194
+ .nui-select {
195
+ @apply pe-10;
196
+ }
197
+
198
+ .nui-select-label {
199
+ @apply pb-1 text-[0.825rem];
200
+ }
201
+
202
+ .nui-label-float {
203
+ @apply top-2.5;
204
+ }
205
+
206
+ .nui-select-icon, .nui-select-chevron {
207
+ @apply h-10 w-10;
208
+
209
+ .nui-select-icon-inner, .nui-select-chevron-inner {
210
+ @apply h-[1.15rem] w-[1.15rem];
211
+ }
212
+ }
213
+
214
+ .nui-select-placeload {
215
+ @apply h-10;
216
+ }
217
+ }
218
+ @utility nui-select-lg {
219
+ .nui-select {
220
+ @apply pe-12;
221
+ }
222
+
223
+ .nui-select-label {
224
+ @apply pb-1 text-sm;
225
+ }
226
+
227
+ .nui-label-float {
228
+ @apply top-3.5;
229
+ }
230
+
231
+ .nui-select-icon, .nui-select-chevron {
232
+ @apply h-12 w-12;
233
+
234
+ .nui-select-icon-inner, .nui-select-chevron-inner {
235
+ @apply h-5 w-5;
236
+ }
237
+ }
238
+
239
+ .nui-select-placeload {
240
+ @apply h-12;
241
+ }
242
+ }
243
+ @utility nui-select-xl {
244
+ .nui-select {
245
+ @apply pe-14;
246
+ }
247
+
248
+ .nui-select-label {
249
+ @apply pb-1 text-sm;
250
+ }
251
+
252
+ .nui-label-float {
253
+ @apply top-[1.1rem];
254
+ }
255
+
256
+ .nui-select-icon, .nui-select-chevron {
257
+ @apply h-14 w-14;
258
+
259
+ .nui-select-icon-inner, .nui-select-chevron-inner {
260
+ @apply h-5 w-5;
261
+ }
262
+ }
263
+
264
+ .nui-select-placeload {
265
+ @apply h-14;
266
+ }
267
+ }
268
+ @utility nui-select-default {
269
+ .nui-select {
270
+ @apply text-muted-600 dark:text-muted-200;
271
+ @apply bg-white dark:bg-muted-900;
272
+ @apply border border-muted-300 dark:border-muted-700;
273
+ @apply hover:border-muted-300 dark:hover:border-muted-700;
274
+ }
275
+ }
276
+ @utility nui-select-default-contrast {
277
+ .nui-select {
278
+ @apply text-muted-600 dark:text-muted-200;
279
+ @apply bg-white dark:bg-muted-950;
280
+ @apply border border-muted-300 dark:border-muted-800;
281
+ @apply hover:border-muted-300 dark:hover:border-muted-800;
282
+ }
283
+ }
284
+ @utility nui-select-muted {
285
+ .nui-select {
286
+ @apply text-muted-600 dark:text-muted-200;
287
+ @apply bg-muted-100 dark:bg-muted-900;
288
+ @apply border border-muted-100 dark:border-muted-700;
289
+ @apply hover:border-muted-100 dark:hover:border-muted-700;
290
+ }
291
+ }
292
+ @utility nui-select-muted-contrast {
293
+ .nui-select {
294
+ @apply text-muted-600 dark:text-muted-200;
295
+ @apply bg-muted-100 dark:bg-muted-950;
296
+ @apply border border-muted-100 dark:border-muted-800;
297
+ @apply hover:border-muted-100 dark:hover:border-muted-800;
298
+ }
299
+ }
300
+ @utility nui-select-focus {
301
+ .nui-select {
302
+ @apply focus:!border-primary-500 dark:focus:!border-primary-500;
303
+ @apply focus:hover:!border-primary-500 dark:focus:hover:!border-primary-500;
304
+ }
305
+ }
306
+ @utility nui-select-loading {
307
+ .nui-select {
308
+ @apply !text-transparent placeholder:!text-transparent dark:placeholder:!text-transparent;
309
+ }
310
+
311
+ .nui-select ~ .nui-label-float {
312
+ @apply text-transparent;
313
+ }
314
+
315
+ .nui-select-icon {
316
+ @apply opacity-0;
317
+ }
318
+ }
319
+ @utility nui-select-label-float {
320
+ .nui-select {
321
+ @apply placeholder:text-transparent dark:placeholder:text-transparent;
322
+ }
323
+ }
324
+ @utility nui-select-error {
325
+ .nui-select {
326
+ @apply !border-danger-500 dark:!border-danger-500;
327
+ }
328
+
329
+ .nui-select-icon {
330
+ @apply !text-danger-500 dark:!text-danger-500;
331
+ }
332
+ }
333
+ @utility nui-has-icon {
334
+ .nui-select {
335
+ @apply h-8 py-1 text-xs leading-4 pe-7 ps-8;
336
+ }
337
+ }
338
+ @utility nui-has-icon {
339
+ .nui-select {
340
+ @apply h-10 py-2 text-sm leading-5 pe-8 ps-10;
341
+ }
342
+ }
343
+ @utility nui-has-icon {
344
+ .nui-select {
345
+ @apply h-12 py-2 text-sm leading-5 pe-9 ps-11;
346
+ }
347
+ }
348
+ @utility nui-has-icon {
349
+ .nui-select {
350
+ @apply h-14 py-2 text-base leading-5 pe-9 ps-12;
351
+ }
352
+ }
353
+ @utility nui-select-label-float {
354
+ .nui-label-float {
355
+ @apply start-8 -ms-8 -mt-7 text-xs;
356
+ }
357
+
358
+ .nui-select:focus-visible ~ .nui-label-float {
359
+ @apply !-ms-8 !-mt-7;
360
+ }
361
+
362
+ .nui-select ~ .nui-label-float {
363
+ @apply ms-0 mt-0;
364
+ }
365
+ }
366
+ @utility nui-select-label-float {
367
+ .nui-label-float {
368
+ @apply start-10 -ms-10 -mt-8 text-xs;
369
+ }
370
+
371
+ .nui-select:focus-visible ~ .nui-label-float {
372
+ @apply !-ms-10 !-mt-8 !text-xs;
373
+ }
374
+
375
+ .nui-select ~ .nui-label-float {
376
+ @apply ms-0 mt-0 text-[0.825rem];
377
+ }
378
+ }
379
+ @utility nui-select-label-float {
380
+ .nui-label-float {
381
+ @apply start-11 -ms-10 -mt-9 text-xs;
382
+ }
383
+
384
+ .nui-select:focus-visible ~ .nui-label-float {
385
+ @apply !-ms-10 !-mt-9 !text-xs;
386
+ }
387
+
388
+ .nui-select ~ .nui-label-float {
389
+ @apply ms-0 mt-0 text-[0.825rem];
390
+ }
391
+ }
392
+ @utility nui-select-label-float {
393
+ .nui-label-float {
394
+ @apply start-[3.25rem] -ms-[3.25rem] -mt-10 text-xs;
395
+ }
396
+
397
+ .nui-select:focus-visible ~ .nui-label-float {
398
+ @apply !-ms-[3.25rem] !-mt-10 !text-xs;
399
+ }
400
+
401
+ .nui-select ~ .nui-label-float {
402
+ @apply ms-0 mt-0 text-[0.825rem];
403
+ }
404
+ }
@@ -0,0 +1,32 @@
1
+ /* generated using "pnpm jiti scripts/generate-utilities.ts" */
2
+ /* @utility nui-slimscroll */
3
+
4
+ @utility nui-slimscroll {
5
+ &::-webkit-scrollbar {
6
+ scroll-behavior: smooth;
7
+ scrollbar-gutter: stable;
8
+ @apply w-[6px] h-[6px];
9
+ }
10
+
11
+ &::-webkit-scrollbar-thumb {
12
+ @apply rounded-lg bg-black/5 dark:bg-white/5 duration-300 transition-all;
13
+ }
14
+
15
+ &:hover::-webkit-scrollbar-thumb {
16
+ @apply bg-black/20 dark:bg-white/20;
17
+ }
18
+ }
19
+ @utility nui-slimscroll-opaque {
20
+ &::-webkit-scrollbar {
21
+ scroll-behavior: smooth;
22
+ scrollbar-gutter: stable;
23
+ @apply w-[6px] h-[6px];
24
+ }
25
+
26
+ &:hover::-webkit-scrollbar-thumb {
27
+ @apply bg-black/20 dark:bg-white/20;
28
+ }
29
+ }
30
+ @utility undefined {
31
+ @apply rounded-lg bg-transparent duration-300 transition-all;
32
+ }
@@ -0,0 +1,101 @@
1
+ /* generated using "pnpm jiti scripts/generate-utilities.ts" */
2
+ /* @utility nui-snack */
3
+
4
+ @utility nui-snack {
5
+ @apply inline-flex items-center gap-1 rounded-full outline-transparent;
6
+ }
7
+ @utility nui-snack-icon {
8
+ @apply -ms-0.5 flex items-center justify-center rounded-full;
9
+ @apply bg-white dark:bg-muted-950;
10
+ @apply border border-muted-200 dark:border-muted-700;
11
+ }
12
+ @utility nui-snack-image {
13
+ @apply -ms-0.5 flex items-center justify-center rounded-full shrink-0;
14
+ }
15
+ @utility nui-snack-image-inner {
16
+ @apply rounded-full;
17
+ }
18
+ @utility nui-snack-text {
19
+ @apply font-sans;
20
+ @apply text-muted-600 dark:text-muted-300;
21
+ }
22
+ @utility nui-snack-xs {
23
+ &:not(.nui-has-media) {
24
+ @apply !ps-2;
25
+ }
26
+
27
+ .nui-snack-text {
28
+ @apply text-xs;
29
+ }
30
+ @apply h-6;
31
+
32
+ .nui-snack-icon {
33
+ @apply w-6 h-6;
34
+ }
35
+
36
+ .nui-snack-icon-inner {
37
+ @apply h-3 w-3;
38
+ }
39
+
40
+ .nui-snack-image, .nui-snack-image-inner {
41
+ @apply w-6 h-6;
42
+ }
43
+ }
44
+ @utility nui-snack-sm {
45
+ &:not(.nui-has-media) {
46
+ @apply !ps-3;
47
+ }
48
+
49
+ .nui-snack-text {
50
+ @apply text-sm;
51
+ }
52
+ @apply h-8;
53
+
54
+ .nui-snack-icon {
55
+ @apply w-8 h-8;
56
+ }
57
+
58
+ .nui-snack-icon-inner {
59
+ @apply h-4 w-4;
60
+ }
61
+
62
+ .nui-snack-image, .nui-snack-image-inner {
63
+ @apply w-8 h-8;
64
+ }
65
+ }
66
+ @utility nui-snack-md {
67
+ &:not(.nui-has-media) {
68
+ @apply !ps-4;
69
+ }
70
+
71
+ .nui-snack-text {
72
+ @apply text-sm;
73
+ }
74
+ @apply h-10;
75
+
76
+ .nui-snack-icon {
77
+ @apply w-10 h-10;
78
+ }
79
+
80
+ .nui-snack-icon-inner {
81
+ @apply h-5 w-5;
82
+ }
83
+
84
+ .nui-snack-image, .nui-snack-image-inner {
85
+ @apply w-10 h-10;
86
+ }
87
+ }
88
+ @utility nui-snack-default {
89
+ @apply bg-white dark:bg-muted-700;
90
+ @apply border border-muted-300 dark:border-muted-600;
91
+ }
92
+ @utility nui-snack-default-contrast {
93
+ @apply bg-white dark:bg-muted-950;
94
+ @apply border border-muted-300 dark:border-muted-800;
95
+ }
96
+ @utility nui-snack-muted {
97
+ @apply bg-muted-200 dark:bg-muted-700;
98
+ }
99
+ @utility nui-snack-muted-contrast {
100
+ @apply bg-muted-200 dark:bg-muted-950;
101
+ }
@@ -0,0 +1,94 @@
1
+ /* generated using "pnpm jiti scripts/generate-utilities.ts" */
2
+ /* @utility nui-switch-ball */
3
+
4
+ @utility nui-switch-ball {
5
+ @apply flex cursor-pointer items-center;
6
+
7
+ &.nui-switch-ball-primary .nui-switch-ball-input:checked ~ .nui-switch-ball-track {
8
+ @apply bg-primary-400 dark:bg-primary-400;
9
+ }
10
+
11
+ &.nui-switch-ball-info .nui-switch-ball-input:checked ~ .nui-switch-ball-track {
12
+ @apply bg-info-400 dark:bg-info-400;
13
+ }
14
+
15
+ &.nui-switch-ball-success .nui-switch-ball-input:checked ~ .nui-switch-ball-track {
16
+ @apply bg-success-400 dark:bg-success-400;
17
+ }
18
+
19
+ &.nui-switch-ball-warning .nui-switch-ball-input:checked ~ .nui-switch-ball-track {
20
+ @apply bg-warning-400 dark:bg-warning-400;
21
+ }
22
+
23
+ &.nui-switch-ball-danger .nui-switch-ball-input:checked ~ .nui-switch-ball-track {
24
+ @apply bg-danger-400 dark:bg-danger-400;
25
+ }
26
+
27
+ &.nui-switch-ball-dark .nui-switch-ball-input:checked ~ .nui-switch-ball-track {
28
+ @apply bg-muted-900 dark:bg-muted-100;
29
+ }
30
+
31
+ &.nui-switch-ball-dark .nui-switch-ball-icon {
32
+ @apply text-muted-100 dark:text-muted-900;
33
+ }
34
+
35
+ &.nui-switch-ball-black .nui-switch-ball-input:checked ~ .nui-switch-ball-track {
36
+ @apply bg-black dark:bg-white;
37
+ }
38
+
39
+ &.nui-switch-ball-black .nui-switch-ball-icon {
40
+ @apply text-white dark:text-black;
41
+ }
42
+ }
43
+ @utility nui-switch-ball-outer {
44
+ @apply nui-focus relative block rounded-full;
45
+ }
46
+ @utility nui-switch-ball-handle {
47
+ @apply absolute start-0.5 top-1/2 -translate-y-1/2 z-10 flex items-center justify-center rounded-full shadow focus:w-6;
48
+ @apply h-5 w-5;
49
+ @apply bg-white dark:bg-muted-700;
50
+ @apply border border-muted-300 dark:border-muted-600;
51
+ @apply transition-all duration-300;
52
+ }
53
+ @utility nui-switch-ball-track {
54
+ @apply block h-6 w-11 rounded-full;
55
+ @apply bg-muted-300 dark:bg-muted-600;
56
+ @apply transition-all duration-300;
57
+ }
58
+ @utility nui-switch-ball-icon {
59
+ @apply pointer-events-none absolute start-2 top-1/2 z-10 translate-y-0 fill-current opacity-0;
60
+ @apply text-white dark:text-white;
61
+ @apply h-2.5 w-2.5;
62
+ @apply transition-all duration-300;
63
+ }
64
+ @utility nui-switch-ball-single-label {
65
+ @apply relative ms-3 cursor-pointer select-none;
66
+ @apply font-sans text-sm;
67
+ @apply text-muted-400 dark:text-muted-400;
68
+ }
69
+ @utility nui-switch-ball-dual-label {
70
+ @apply ms-3;
71
+
72
+ .nui-switch-ball-label {
73
+ @apply block;
74
+ @apply font-sans text-sm;
75
+ @apply text-muted-800 dark:text-white;
76
+ }
77
+
78
+ .nui-switch-ball-sublabel {
79
+ @apply block;
80
+ @apply font-sans text-xs;
81
+ @apply text-muted-400 dark:text-muted-400;
82
+ }
83
+ }
84
+ @utility nui-switch-ball-input {
85
+ @apply absolute z-0 h-full w-full cursor-pointer opacity-0;
86
+
87
+ &:checked ~ .nui-switch-ball-handle {
88
+ @apply -translate-y-1/2 translate-x-full rtl:-translate-x-full;
89
+ }
90
+
91
+ &:checked ~ .nui-switch-ball-icon {
92
+ @apply -translate-y-1/2 opacity-100;
93
+ }
94
+ }