daisyui 5.0.0-alpha.3 → 5.0.0-alpha.5

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 (87) hide show
  1. package/base/root-color/config.js +12 -0
  2. package/base/root-color/index.css +1 -0
  3. package/base/root-color/index.js +6 -0
  4. package/base/root-color.css +1 -0
  5. package/base/scrollbar/config.js +12 -0
  6. package/base/scrollbar/index.css +1 -0
  7. package/base/scrollbar/index.js +5 -0
  8. package/base/scrollbar.css +1 -0
  9. package/base/tap-color/config.js +12 -0
  10. package/base/tap-color/index.css +1 -0
  11. package/base/tap-color/index.js +5 -0
  12. package/base/tap-color.css +1 -0
  13. package/colors/properties.css +1 -0
  14. package/colors/responsive.css +1 -0
  15. package/colors/states.css +1 -0
  16. package/components/avatar/class.json +7 -0
  17. package/components/avatar/config.js +12 -0
  18. package/components/avatar/index.css +1 -0
  19. package/components/avatar/index.js +42 -0
  20. package/components/avatar.css +1 -0
  21. package/components/badge/class.json +18 -0
  22. package/components/badge/config.js +1 -1
  23. package/components/badge.css +1 -109
  24. package/components/button/class.json +24 -0
  25. package/components/button/config.js +1 -1
  26. package/components/button/index.js +12 -10
  27. package/components/button.css +1 -293
  28. package/components/checkbox/class.json +17 -0
  29. package/components/checkbox/config.js +1 -1
  30. package/components/checkbox.css +1 -144
  31. package/components/dropdown/class.json +13 -0
  32. package/components/dropdown/config.js +12 -0
  33. package/components/dropdown/index.css +1 -0
  34. package/components/dropdown/index.js +146 -0
  35. package/components/dropdown.css +1 -0
  36. package/components/input/class.json +16 -0
  37. package/components/input/config.js +1 -1
  38. package/components/input.css +1 -204
  39. package/components/kbd/class.json +7 -0
  40. package/components/kbd/config.js +1 -1
  41. package/components/kbd.css +1 -49
  42. package/components/loading/class.json +21 -0
  43. package/components/loading/config.js +12 -0
  44. package/components/loading/index.css +1 -0
  45. package/components/loading/index.js +39 -0
  46. package/components/loading.css +1 -0
  47. package/components/mask/class.json +24 -0
  48. package/components/mask/config.js +1 -1
  49. package/components/mask.css +1 -78
  50. package/components/menu/class.json +15 -0
  51. package/components/menu/config.js +12 -0
  52. package/components/menu/index.css +1 -0
  53. package/components/menu/index.js +129 -0
  54. package/components/menu.css +1 -0
  55. package/components/radio/class.json +14 -0
  56. package/components/radio/config.js +1 -1
  57. package/components/radio.css +1 -102
  58. package/components/range/class.json +14 -0
  59. package/components/range/config.js +1 -1
  60. package/components/range.css +1 -164
  61. package/components/rating/class.json +5 -0
  62. package/components/rating/config.js +1 -1
  63. package/components/rating.css +1 -104
  64. package/components/select/class.json +16 -0
  65. package/components/select/config.js +1 -1
  66. package/components/select.css +1 -166
  67. package/components/tab/class.json +13 -0
  68. package/components/tab/config.js +12 -0
  69. package/components/tab/index.css +1 -0
  70. package/components/tab/index.js +165 -0
  71. package/components/tab.css +1 -0
  72. package/components/toggle/class.json +16 -0
  73. package/components/toggle/config.js +1 -1
  74. package/components/toggle.css +1 -143
  75. package/components/tooltip/class.json +15 -0
  76. package/components/tooltip/config.js +12 -0
  77. package/components/tooltip/index.css +1 -0
  78. package/components/tooltip/index.js +135 -0
  79. package/components/tooltip.css +1 -0
  80. package/full.css +12 -0
  81. package/functions/plugin.js +8 -8
  82. package/index.css +9 -0
  83. package/package.json +5 -1
  84. package/themes/dark/index.css +1 -0
  85. package/themes/default/index.css +1 -0
  86. package/themes/index.css +1 -0
  87. package/themes/light/index.css +1 -0
@@ -1,293 +1 @@
1
- .btn {
2
- display: inline-flex;
3
- height: var(--spacing-10, 2.5rem);
4
- flex-shrink: 0;
5
- cursor: pointer;
6
- flex-wrap: wrap;
7
- align-items: center;
8
- justify-content: center;
9
- gap: var(--spacing-2, 0.5rem);
10
- border-radius: var(--radius-btn);
11
- padding-left: var(--spacing-4, 1rem);
12
- padding-right: var(--spacing-4, 1rem);
13
- text-align: center;
14
- vertical-align: middle;
15
- font-size: var(--font-size-sm, 0.875rem);
16
- line-height: var(--line-height-none, 1);
17
- --tw-font-weight: 600;
18
- font-weight: 600;
19
- color: var(--color-base-content, oklch(27.8078% 0.029596 256.84795));
20
- text-decoration-line: none;
21
- outline-offset: 2px;
22
- outline-color: var(--color-base-content, oklch(27.8078% 0.029596 256.84795));
23
- --tw-duration: 200ms;
24
- transition-duration: 200ms;
25
- --tw-ease: var(--transition-timing-function-out, cubic-bezier(0, 0, 0.2, 1));
26
- transition-timing-function: var(--transition-timing-function-out, cubic-bezier(0, 0, 0.2, 1));
27
- -webkit-user-select: none;
28
- user-select: none;
29
- transition-property: color, background-color, border-color, opacity, box-shadow, transform;
30
- background-color: var(--btn-bg, var(--color-base-200));
31
- border-width: var(--spacing-button-border);
32
- border-color: color-mix(in oklab, var(--btn-bg, var(--color-base-200)), black 2%);
33
- border-bottom-color: color-mix(in oklab, var(--btn-bg, var(--color-base-200)), black 4%);
34
- box-shadow: 0 1px 0 0 color-mix(in oklch, white 3%, transparent) inset, 0 1px 1px 0 oklch(0% 0 0/0.07);
35
- &:hover {
36
- border-color: color-mix(in oklab, var(--btn-bg, var(--color-base-200)), black 5%);
37
- border-bottom-color: color-mix(in oklab, var(--btn-bg, var(--color-base-200)), black 7%);
38
- background-color: color-mix(in oklab, var(--btn-bg, var(--color-base-200)), black 5%);
39
- }
40
- &.btn-active {
41
- border-color: color-mix(in oklab, var(--btn-bg, var(--color-base-200)), black 5%);
42
- border-bottom-color: color-mix(in oklab, var(--btn-bg, var(--color-base-200)), black 7%);
43
- background-color: color-mix(in oklab, var(--btn-bg, var(--color-base-200)), black 5%);
44
- }
45
- &:focus-visible {
46
- outline-style: var(--tw-outline-style);
47
- outline-width: 1px;
48
- outline-style: var(--tw-outline-style);
49
- outline-width: 2px;
50
- }
51
- &:active {
52
- &:focus {
53
- transform: scale(var(--btn-focus-scale, 0.98));
54
- animation: button-pop 0s ease-out;
55
- border-color: color-mix(in oklab, var(--btn-bg, var(--color-base-200)), black 5%);
56
- border-bottom-color: color-mix(in oklab, var(--btn-bg, var(--color-base-200)), black 7%);
57
- box-shadow: 0 1px 0 0 oklch(0% 0 0/0.07) inset, 0 0 0 0 oklch(0% 0 0/0.1);
58
- }
59
- &:hover {
60
- transform: scale(var(--btn-focus-scale, 0.97));
61
- animation: button-pop 0s ease-out;
62
- }
63
- }
64
- }
65
- .btn-primary {
66
- --btn-bg: var(--color-primary);
67
- color: var(--color-primary-content, oklch(89.824% 0.06192 275.75));
68
- outline-color: var(--color-primary, oklch(49.12% 0.3096 275.75));
69
- }
70
- .btn-secondary {
71
- --btn-bg: var(--color-secondary);
72
- color: var(--color-secondary-content, oklch(98.71% 0.0106 342.55));
73
- outline-color: var(--color-secondary, oklch(69.71% 0.329 342.55));
74
- }
75
- .btn-accent {
76
- --btn-bg: var(--color-accent);
77
- color: var(--color-accent-content, oklch(15.352% 0.0368 183.61));
78
- outline-color: var(--color-accent, oklch(76.76% 0.184 183.61));
79
- }
80
- .btn-neutral {
81
- --btn-bg: var(--color-neutral);
82
- color: var(--color-neutral-content, oklch(89.4994% 0.011585 252.096176));
83
- outline-color: var(--color-neutral, oklch(32.1785% 0.02476 255.701624));
84
- }
85
- .btn-info {
86
- --btn-bg: var(--color-info);
87
- color: var(--color-info-content, oklch(0% 0 0));
88
- outline-color: var(--color-info, oklch(72.06% 0.191 231.6));
89
- }
90
- .btn-success {
91
- --btn-bg: var(--color-success);
92
- color: var(--color-success-content, oklch(0% 0 0));
93
- outline-color: var(--color-success, oklch(64.8% 0.15 160));
94
- }
95
- .btn-warning {
96
- --btn-bg: var(--color-warning);
97
- color: var(--color-warning-content, oklch(0% 0 0));
98
- outline-color: var(--color-warning, oklch(84.71% 0.199 83.87));
99
- }
100
- .btn-error {
101
- --btn-bg: var(--color-error);
102
- color: var(--color-error-content, oklch(0% 0 0));
103
- outline-color: var(--color-error, oklch(71.76% 0.221 22.18));
104
- }
105
- .btn.glass {
106
- --tw-shadow: 0 0 #0000;
107
- box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
108
- outline-color: currentColor;
109
- &:hover {
110
- @media (hover: hover) {
111
- --glass-border-opacity: 15%;
112
- }
113
- }
114
- &:hover {
115
- @media (hover: hover) {
116
- --glass-opacity: 25%;
117
- }
118
- }
119
- &.btn-active {
120
- --glass-border-opacity: 15%;
121
- --glass-opacity: 25%;
122
- }
123
- }
124
- .btn-ghost {
125
- border-style: var(--tw-border-style);
126
- border-width: 1px;
127
- border-color: transparent;
128
- background-color: transparent;
129
- color: currentColor;
130
- --tw-shadow: 0 0 #0000;
131
- box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
132
- outline-color: currentColor;
133
- &:hover {
134
- @media (hover: hover) {
135
- border-color: transparent;
136
- }
137
- }
138
- &:hover {
139
- @media (hover: hover) {
140
- background-color: color-mix(in srgb, var(--color-base-content, oklch(27.8078% 0.029596 256.84795)) 20%, transparent);
141
- }
142
- }
143
- &.btn-active {
144
- border-color: transparent;
145
- background-color: color-mix(in srgb, var(--color-base-content, oklch(27.8078% 0.029596 256.84795)) 20%, transparent);
146
- }
147
- }
148
- .btn-link {
149
- border-color: transparent;
150
- background-color: transparent;
151
- color: var(--color-primary, oklch(49.12% 0.3096 275.75));
152
- text-decoration-line: underline;
153
- --tw-shadow: 0 0 #0000;
154
- box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
155
- outline-color: currentColor;
156
- &:hover {
157
- @media (hover: hover) {
158
- border-color: transparent;
159
- }
160
- }
161
- &:hover {
162
- @media (hover: hover) {
163
- background-color: transparent;
164
- }
165
- }
166
- &:hover {
167
- @media (hover: hover) {
168
- text-decoration-line: underline;
169
- }
170
- }
171
- &.btn-active {
172
- border-color: transparent;
173
- background-color: transparent;
174
- text-decoration-line: underline;
175
- }
176
- }
177
- .btn-outline {
178
- &:not(.btn-active):not(:hover) {
179
- background-color: transparent;
180
- color: var(--btn-bg);
181
- --tw-shadow: 0 0 #0000;
182
- box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
183
- }
184
- &.btn-active {
185
- border-color: color-mix(in oklab, var(--btn-bg, var(--color-base-200)) 90%, black);
186
- background-color: color-mix(in oklab, var(--btn-bg, var(--color-base-200)) 90%, black);
187
- }
188
- }
189
- .btn {
190
- &:is(:disabled, [disabled], .btn-disabled) {
191
- pointer-events: none;
192
- border-color: transparent;
193
- background-color: color-mix(in srgb, var(--color-neutral, oklch(32.1785% 0.02476 255.701624)) 20%, transparent);
194
- color: color-mix(in srgb, var(--color-base-content, oklch(27.8078% 0.029596 256.84795)) 20%, transparent);
195
- &:hover {
196
- pointer-events: none;
197
- border-color: transparent;
198
- background-color: color-mix(in srgb, var(--color-neutral, oklch(32.1785% 0.02476 255.701624)) 20%, transparent);
199
- color: color-mix(in srgb, var(--color-base-content, oklch(27.8078% 0.029596 256.84795)) 20%, transparent);
200
- }
201
- }
202
- }
203
- .btn {
204
- &:is(input[type=checkbox]), &:is(input[type=radio]) {
205
- width: auto;
206
- appearance: none;
207
- &::after {
208
- --tw-content: attr(aria-label);
209
- content: var(--tw-content);
210
- }
211
- &:checked {
212
- border-color: var(--color-primary, oklch(49.12% 0.3096 275.75));
213
- background-color: var(--color-primary, oklch(49.12% 0.3096 275.75));
214
- color: var(--color-primary-content, oklch(89.824% 0.06192 275.75));
215
- &:focus-visible {
216
- outline-color: var(--color-primary, oklch(49.12% 0.3096 275.75));
217
- }
218
- &:hover {
219
- background-color: color-mix(in oklab, var(--color-primary) 90%, black);
220
- border-color: color-mix(in oklab, var(--color-primary) 90%, black);
221
- }
222
- }
223
- }
224
- }
225
- .btn-xs {
226
- height: var(--spacing-6, 1.5rem);
227
- padding-left: var(--spacing-2, 0.5rem);
228
- padding-right: var(--spacing-2, 0.5rem);
229
- font-size: var(--font-size-xs);
230
- }
231
- .btn-sm {
232
- height: var(--spacing-8, 2rem);
233
- padding-left: var(--spacing-3, 0.75rem);
234
- padding-right: var(--spacing-3, 0.75rem);
235
- font-size: var(--font-size-sm);
236
- }
237
- .btn-md {
238
- height: var(--spacing-10, 2.5rem);
239
- padding-left: var(--spacing-4, 1rem);
240
- padding-right: var(--spacing-4, 1rem);
241
- font-size: var(--font-size-sm);
242
- }
243
- .btn-lg {
244
- height: var(--spacing-14, 3.5rem);
245
- padding-left: var(--spacing-6, 1.5rem);
246
- padding-right: var(--spacing-6, 1.5rem);
247
- font-size: var(--font-size-lg);
248
- }
249
- .btn-square {
250
- width: var(--spacing-12, 3rem);
251
- height: var(--spacing-12, 3rem);
252
- padding-left: var(--spacing-0, 0px);
253
- padding-right: var(--spacing-0, 0px);
254
- &.btn-xs {
255
- width: var(--spacing-6, 1.5rem);
256
- height: var(--spacing-6, 1.5rem);
257
- }
258
- &.btn-sm {
259
- width: var(--spacing-8, 2rem);
260
- height: var(--spacing-8, 2rem);
261
- }
262
- &.btn-md {
263
- width: var(--spacing-12, 3rem);
264
- height: var(--spacing-12, 3rem);
265
- }
266
- &.btn-lg {
267
- width: var(--spacing-16, 4rem);
268
- height: var(--spacing-16, 4rem);
269
- }
270
- }
271
- .btn-circle {
272
- aspect-ratio: 1 / 1;
273
- border-radius: calc(infinity * 1px);
274
- padding-left: var(--spacing-0, 0px);
275
- padding-right: var(--spacing-0, 0px);
276
- }
277
- .btn-wide {
278
- width: var(--spacing-64, 16rem);
279
- }
280
- .btn-block {
281
- width: 100%;
282
- }
283
- @keyframes button-pop {
284
- 0% {
285
- transform: scale(var(--btn-focus-scale, 0.98));
286
- }
287
- 40% {
288
- transform: scale(1.02);
289
- }
290
- 100% {
291
- transform: scale(1);
292
- }
293
- }
1
+ .btn{height:var(--spacing-10,2.5rem);cursor:pointer;justify-content:center;align-items:center;gap:var(--spacing-2,.5rem);border-radius:var(--radius-btn);padding-left:var(--spacing-4,1rem);padding-right:var(--spacing-4,1rem);text-align:center;vertical-align:middle;font-size:var(--font-size-sm,.875rem);line-height:var(--line-height-none,1);--tw-font-weight:600;color:var(--color-base-content,oklch(27.8078% .029596 256.848));outline-offset:2px;outline-color:var(--color-base-content,oklch(27.8078% .029596 256.848));--tw-duration:.2s;--tw-ease:var(--transition-timing-function-out,cubic-bezier(0,0,.2,1));transition-duration:.2s;transition-timing-function:var(--transition-timing-function-out,cubic-bezier(0,0,.2,1));-webkit-user-select:none;user-select:none;background-color:var(--btn-bg,var(--color-base-200));border-width:var(--spacing-button-border);border-color:color-mix(in oklab,var(--btn-bg,var(--color-base-200)),black 2%);border-bottom-color:color-mix(in oklab,var(--btn-bg,var(--color-base-200)),black 4%);flex-wrap:wrap;flex-shrink:0;font-weight:600;text-decoration-line:none;transition-property:color,background-color,border-color,opacity,box-shadow,transform;display:inline-flex;box-shadow:0 1px 1px oklch(0% 0 0/.07);&:hover{background-color:color-mix(in oklab,var(--btn-bg,var(--color-base-200)),black 5%);border-color:color-mix(in oklab,var(--btn-bg,var(--color-base-200)),black 7%);border-bottom-color:color-mix(in oklab,var(--btn-bg,var(--color-base-200)),black 9%)}&.btn-active{background-color:color-mix(in oklab,var(--btn-bg,var(--color-base-200)),black 5%);border-color:color-mix(in oklab,var(--btn-bg,var(--color-base-200)),black 7%);border-bottom-color:color-mix(in oklab,var(--btn-bg,var(--color-base-200)),black 9%);box-shadow:0 0 oklch(0% 0 0/.07)}&:focus-visible{outline-style:var(--tw-outline-style);outline-width:1px;outline-style:var(--tw-outline-style);outline-width:2px}&:active{&:focus{transform:scale(var(--btn-focus-scale,.98));background-color:color-mix(in oklab,var(--btn-bg,var(--color-base-200)),black 5%);border-color:color-mix(in oklab,var(--btn-bg,var(--color-base-200)),black 7%);border-bottom-color:color-mix(in oklab,var(--btn-bg,var(--color-base-200)),black 9%);animation:ease-out button-pop;box-shadow:0 0 oklch(0% 0 0/.07)}&:hover{transform:scale(var(--btn-focus-scale,.97));animation:ease-out button-pop}}}.btn-primary{--btn-bg:var(--color-primary);color:var(--color-primary-content,oklch(89.824% .06192 275.75));outline-color:var(--color-primary,oklch(49.12% .3096 275.75))}.btn-secondary{--btn-bg:var(--color-secondary);color:var(--color-secondary-content,oklch(98.71% .0106 342.55));outline-color:var(--color-secondary,oklch(69.71% .329 342.55))}.btn-accent{--btn-bg:var(--color-accent);color:var(--color-accent-content,oklch(15.352% .0368 183.61));outline-color:var(--color-accent,oklch(76.76% .184 183.61))}.btn-neutral{--btn-bg:var(--color-neutral);color:var(--color-neutral-content,oklch(89.4994% .011585 252.096));outline-color:var(--color-neutral,oklch(32.1785% .02476 255.702))}.btn-info{--btn-bg:var(--color-info);color:var(--color-info-content,oklch(0% 0 0));outline-color:var(--color-info,oklch(72.06% .191 231.6))}.btn-success{--btn-bg:var(--color-success);color:var(--color-success-content,oklch(0% 0 0));outline-color:var(--color-success,oklch(64.8% .15 160))}.btn-warning{--btn-bg:var(--color-warning);color:var(--color-warning-content,oklch(0% 0 0));outline-color:var(--color-warning,oklch(84.71% .199 83.87))}.btn-error{--btn-bg:var(--color-error);color:var(--color-error-content,oklch(0% 0 0));outline-color:var(--color-error,oklch(71.76% .221 22.18))}.btn.glass{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);outline-color:currentColor;&:hover{@media (hover:hover){&{--glass-border-opacity:15%}}}&:hover{@media (hover:hover){&{--glass-opacity:25%}}}&.btn-active{--glass-border-opacity:15%;--glass-opacity:25%}}.btn-ghost{border-style:var(--tw-border-style);color:currentColor;--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);background-color:#0000;border-width:1px;border-color:#0000;outline-color:currentColor;&:hover{@media (hover:hover){&{border-color:#0000}}}&:hover{@media (hover:hover){&{background-color:color-mix(in srgb,var(--color-base-content,oklch(27.8078% .029596 256.848))20%,transparent)}}}&.btn-active{background-color:color-mix(in srgb,var(--color-base-content,oklch(27.8078% .029596 256.848))20%,transparent);border-color:#0000}}.btn-link{color:var(--color-primary,oklch(49.12% .3096 275.75));--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);background-color:#0000;border-color:#0000;outline-color:currentColor;text-decoration-line:underline;&:hover{@media (hover:hover){&{border-color:#0000}}}&:hover{@media (hover:hover){&{background-color:#0000}}}&:hover{@media (hover:hover){&{text-decoration-line:underline}}}&.btn-active{background-color:#0000;border-color:#0000;text-decoration-line:underline}}.btn-outline{&:not(.btn-active):not(:hover){color:var(--btn-bg);--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);background-color:#0000}&.btn-active{border-color:color-mix(in oklab,var(--btn-bg,var(--color-base-200))90%,black);background-color:color-mix(in oklab,var(--btn-bg,var(--color-base-200))90%,black)}}.btn{&:is(:disabled,[disabled],.btn-disabled){pointer-events:none;background-color:color-mix(in srgb,var(--color-neutral,oklch(32.1785% .02476 255.702))20%,transparent);color:color-mix(in srgb,var(--color-base-content,oklch(27.8078% .029596 256.848))20%,transparent);border-color:#0000;&:hover{pointer-events:none;background-color:color-mix(in srgb,var(--color-neutral,oklch(32.1785% .02476 255.702))20%,transparent);color:color-mix(in srgb,var(--color-base-content,oklch(27.8078% .029596 256.848))20%,transparent);border-color:#0000}}}.btn{&:is(input[type=checkbox]),&:is(input[type=radio]){appearance:none;width:auto;&:after{--tw-content:attr(aria-label);content:var(--tw-content)}&:checked{border-color:var(--color-primary,oklch(49.12% .3096 275.75));background-color:var(--color-primary,oklch(49.12% .3096 275.75));color:var(--color-primary-content,oklch(89.824% .06192 275.75));&:focus-visible{outline-color:var(--color-primary,oklch(49.12% .3096 275.75))}&:hover{background-color:color-mix(in oklab,var(--color-primary)90%,black);border-color:color-mix(in oklab,var(--color-primary)90%,black)}}}}.btn-xs{height:var(--spacing-6,1.5rem);padding-left:var(--spacing-2,.5rem);padding-right:var(--spacing-2,.5rem);font-size:var(--font-size-xs)}.btn-sm{height:var(--spacing-8,2rem);padding-left:var(--spacing-3,.75rem);padding-right:var(--spacing-3,.75rem);font-size:var(--font-size-sm)}.btn-md{height:var(--spacing-10,2.5rem);padding-left:var(--spacing-4,1rem);padding-right:var(--spacing-4,1rem);font-size:var(--font-size-sm)}.btn-lg{height:var(--spacing-14,3.5rem);padding-left:var(--spacing-6,1.5rem);padding-right:var(--spacing-6,1.5rem);font-size:var(--font-size-lg)}.btn-square{width:var(--spacing-12,3rem);height:var(--spacing-12,3rem);padding-left:var(--spacing-0,0px);padding-right:var(--spacing-0,0px);&.btn-xs{width:var(--spacing-6,1.5rem);height:var(--spacing-6,1.5rem)}&.btn-sm{width:var(--spacing-8,2rem);height:var(--spacing-8,2rem)}&.btn-md{width:var(--spacing-12,3rem);height:var(--spacing-12,3rem)}&.btn-lg{width:var(--spacing-16,4rem);height:var(--spacing-16,4rem)}}.btn-circle{aspect-ratio:1;padding-left:var(--spacing-0,0px);padding-right:var(--spacing-0,0px);border-radius:3.40282e38px}.btn-wide{width:var(--spacing-64,16rem)}.btn-block{width:100%}@keyframes button-pop{0%{transform:scale(var(--btn-focus-scale,.98))}40%{transform:scale(1.02)}to{transform:scale(1)}}
@@ -0,0 +1,17 @@
1
+ [
2
+ "checkbox",
3
+ "2s",
4
+ "3s",
5
+ "1s",
6
+ "checkbox-primary",
7
+ "checkbox-secondary",
8
+ "checkbox-accent",
9
+ "checkbox-success",
10
+ "checkbox-warning",
11
+ "checkbox-info",
12
+ "checkbox-error",
13
+ "checkbox-xs",
14
+ "checkbox-sm",
15
+ "checkbox-md",
16
+ "checkbox-lg"
17
+ ]
@@ -4,7 +4,7 @@ import index from './index.js';
4
4
  export default {
5
5
  plugins: [
6
6
  plugin(({ addComponents }) => {
7
- addComponents({
7
+ addComponents({
8
8
  ...index
9
9
  });
10
10
  })
@@ -1,144 +1 @@
1
- .checkbox {
2
- position: relative;
3
- width: var(--spacing-6, 1.5rem);
4
- height: var(--spacing-6, 1.5rem);
5
- flex-shrink: 0;
6
- cursor: pointer;
7
- appearance: none;
8
- border-radius: var(--radius-btn);
9
- border-style: var(--tw-border-style);
10
- border-width: 1px;
11
- border-color: color-mix(in srgb, var(--color-base-content, oklch(27.8078% 0.029596 256.84795)) 20%, transparent);
12
- padding: var(--spacing-1, 0.25rem);
13
- vertical-align: middle;
14
- color: var(--color-base-content, oklch(27.8078% 0.029596 256.84795));
15
- box-shadow: 0 1px oklch(0% 0 0 / 0.1) inset;
16
- transition: background-color 0.2s, box-shadow 0.2s;
17
- &:before {
18
- display: block;
19
- width: 100%;
20
- height: 100%;
21
- rotate: 45deg;
22
- background-color: currentColor;
23
- opacity: 0%;
24
- --tw-content: '';
25
- content: var(--tw-content);
26
- transition: clip-path 0.3s, opacity 0.1s, rotate 0.3s, translate 0.3s;
27
- transition-delay: 0.1s;
28
- clip-path: polygon(20% 100%, 20% 80%, 50% 80%, 50% 80%, 70% 80%, 70% 100%);
29
- box-shadow: 0px 3px 0 0px oklch(100% 0 0 / 0.1) inset;
30
- }
31
- &:focus-visible {
32
- outline-style: var(--tw-outline-style);
33
- outline-width: 2px;
34
- outline-offset: 2px;
35
- outline-color: currentColor;
36
- }
37
- &:checked, &[aria-checked="true"] {
38
- box-shadow: 0 8px 0 -4px oklch(100% 0 0 / 0.1) inset, 0 1px oklch(0% 0 0 / 0.1);
39
- &:before {
40
- opacity: 100%;
41
- clip-path: polygon(20% 100%, 20% 80%, 50% 80%, 50% 0%, 70% 0%, 70% 100%);
42
- }
43
- }
44
- &:indeterminate {
45
- &:before {
46
- --tw-translate-y: -35%;
47
- translate: var(--tw-translate-x) var(--tw-translate-y);
48
- rotate: 0deg;
49
- opacity: 100%;
50
- clip-path: polygon(20% 100%, 20% 80%, 50% 80%, 50% 80%, 80% 80%, 80% 100%);
51
- }
52
- }
53
- }
54
- .checkbox-primary {
55
- border-color: var(--color-primary, oklch(49.12% 0.3096 275.75));
56
- color: var(--color-primary-content, oklch(89.824% 0.06192 275.75));
57
- &:focus-visible {
58
- outline-color: var(--color-primary, oklch(49.12% 0.3096 275.75));
59
- }
60
- &:checked {
61
- background-color: var(--color-primary, oklch(49.12% 0.3096 275.75));
62
- }
63
- }
64
- .checkbox-secondary {
65
- border-color: var(--color-secondary, oklch(69.71% 0.329 342.55));
66
- color: var(--color-secondary-content, oklch(98.71% 0.0106 342.55));
67
- &:focus-visible {
68
- outline-color: var(--color-secondary, oklch(69.71% 0.329 342.55));
69
- }
70
- &:checked {
71
- background-color: var(--color-secondary, oklch(69.71% 0.329 342.55));
72
- }
73
- }
74
- .checkbox-accent {
75
- border-color: var(--color-accent, oklch(76.76% 0.184 183.61));
76
- color: var(--color-accent-content, oklch(15.352% 0.0368 183.61));
77
- &:focus-visible {
78
- outline-color: var(--color-accent, oklch(76.76% 0.184 183.61));
79
- }
80
- &:checked {
81
- background-color: var(--color-accent, oklch(76.76% 0.184 183.61));
82
- }
83
- }
84
- .checkbox-success {
85
- border-color: var(--color-success, oklch(64.8% 0.15 160));
86
- color: var(--color-success-content, oklch(0% 0 0));
87
- &:focus-visible {
88
- outline-color: var(--color-success, oklch(64.8% 0.15 160));
89
- }
90
- &:checked {
91
- background-color: var(--color-success, oklch(64.8% 0.15 160));
92
- }
93
- }
94
- .checkbox-warning {
95
- border-color: var(--color-warning, oklch(84.71% 0.199 83.87));
96
- color: var(--color-warning-content, oklch(0% 0 0));
97
- &:focus-visible {
98
- outline-color: var(--color-warning, oklch(84.71% 0.199 83.87));
99
- }
100
- &:checked {
101
- background-color: var(--color-warning, oklch(84.71% 0.199 83.87));
102
- }
103
- }
104
- .checkbox-info {
105
- border-color: var(--color-info, oklch(72.06% 0.191 231.6));
106
- color: var(--color-info-content, oklch(0% 0 0));
107
- &:focus-visible {
108
- outline-color: var(--color-info, oklch(72.06% 0.191 231.6));
109
- }
110
- &:checked {
111
- background-color: var(--color-info, oklch(72.06% 0.191 231.6));
112
- }
113
- }
114
- .checkbox-error {
115
- border-color: var(--color-error, oklch(71.76% 0.221 22.18));
116
- color: var(--color-error-content, oklch(0% 0 0));
117
- &:focus-visible {
118
- outline-color: var(--color-error, oklch(71.76% 0.221 22.18));
119
- }
120
- &:checked {
121
- background-color: var(--color-error, oklch(71.76% 0.221 22.18));
122
- }
123
- }
124
- .checkbox:disabled {
125
- cursor: not-allowed;
126
- opacity: 20%;
127
- }
128
- .checkbox-xs {
129
- width: var(--spacing-4, 1rem);
130
- height: var(--spacing-4, 1rem);
131
- padding: var(--spacing-0_5, 0.125rem);
132
- }
133
- .checkbox-sm {
134
- width: var(--spacing-5, 1.25rem);
135
- height: var(--spacing-5, 1.25rem);
136
- }
137
- .checkbox-md {
138
- width: var(--spacing-6, 1.5rem);
139
- height: var(--spacing-6, 1.5rem);
140
- }
141
- .checkbox-lg {
142
- width: var(--spacing-8, 2rem);
143
- height: var(--spacing-8, 2rem);
144
- }
1
+ .checkbox{width:var(--spacing-6,1.5rem);height:var(--spacing-6,1.5rem);cursor:pointer;appearance:none;border-radius:var(--radius-btn);border-style:var(--tw-border-style);border-width:1px;border-color:color-mix(in srgb,var(--color-base-content,oklch(27.8078% .029596 256.848))20%,transparent);padding:var(--spacing-1,.25rem);vertical-align:middle;color:var(--color-base-content,oklch(27.8078% .029596 256.848));flex-shrink:0;transition:background-color .2s,box-shadow .2s;position:relative;box-shadow:inset 0 1px oklch(0% 0 0/.1);&:before{opacity:0;--tw-content:"";content:var(--tw-content);clip-path:polygon(20% 100%,20% 80%,50% 80%,50% 80%,70% 80%,70% 100%);background-color:currentColor;width:100%;height:100%;transition:clip-path .3s .1s,opacity .1s .1s,rotate .3s .1s,translate .3s .1s;display:block;rotate:45deg;box-shadow:inset 0 3px oklch(100% 0 0/.1)}&:focus-visible{outline-style:var(--tw-outline-style);outline-offset:2px;outline-width:2px;outline-color:currentColor}&:checked,&[aria-checked=true]{box-shadow:inset 0 8px 0 -4px oklch(100% 0 0/.1),0 1px oklch(0% 0 0/.1);&:before{opacity:1;clip-path:polygon(20% 100%,20% 80%,50% 80%,50% 0%,70% 0%,70% 100%)}}&:indeterminate{&:before{--tw-translate-y:-35%;translate:var(--tw-translate-x)var(--tw-translate-y);opacity:1;clip-path:polygon(20% 100%,20% 80%,50% 80%,50% 80%,80% 80%,80% 100%);rotate:none}}}.checkbox-primary{border-color:var(--color-primary,oklch(49.12% .3096 275.75));color:var(--color-primary-content,oklch(89.824% .06192 275.75));&:focus-visible{outline-color:var(--color-primary,oklch(49.12% .3096 275.75))}&:checked{background-color:var(--color-primary,oklch(49.12% .3096 275.75))}}.checkbox-secondary{border-color:var(--color-secondary,oklch(69.71% .329 342.55));color:var(--color-secondary-content,oklch(98.71% .0106 342.55));&:focus-visible{outline-color:var(--color-secondary,oklch(69.71% .329 342.55))}&:checked{background-color:var(--color-secondary,oklch(69.71% .329 342.55))}}.checkbox-accent{border-color:var(--color-accent,oklch(76.76% .184 183.61));color:var(--color-accent-content,oklch(15.352% .0368 183.61));&:focus-visible{outline-color:var(--color-accent,oklch(76.76% .184 183.61))}&:checked{background-color:var(--color-accent,oklch(76.76% .184 183.61))}}.checkbox-success{border-color:var(--color-success,oklch(64.8% .15 160));color:var(--color-success-content,oklch(0% 0 0));&:focus-visible{outline-color:var(--color-success,oklch(64.8% .15 160))}&:checked{background-color:var(--color-success,oklch(64.8% .15 160))}}.checkbox-warning{border-color:var(--color-warning,oklch(84.71% .199 83.87));color:var(--color-warning-content,oklch(0% 0 0));&:focus-visible{outline-color:var(--color-warning,oklch(84.71% .199 83.87))}&:checked{background-color:var(--color-warning,oklch(84.71% .199 83.87))}}.checkbox-info{border-color:var(--color-info,oklch(72.06% .191 231.6));color:var(--color-info-content,oklch(0% 0 0));&:focus-visible{outline-color:var(--color-info,oklch(72.06% .191 231.6))}&:checked{background-color:var(--color-info,oklch(72.06% .191 231.6))}}.checkbox-error{border-color:var(--color-error,oklch(71.76% .221 22.18));color:var(--color-error-content,oklch(0% 0 0));&:focus-visible{outline-color:var(--color-error,oklch(71.76% .221 22.18))}&:checked{background-color:var(--color-error,oklch(71.76% .221 22.18))}}.checkbox:disabled{cursor:not-allowed;opacity:.2}.checkbox-xs{width:var(--spacing-4,1rem);height:var(--spacing-4,1rem);padding:var(--spacing-0_5,.125rem)}.checkbox-sm{width:var(--spacing-5,1.25rem);height:var(--spacing-5,1.25rem)}.checkbox-md{width:var(--spacing-6,1.5rem);height:var(--spacing-6,1.5rem)}.checkbox-lg{width:var(--spacing-8,2rem);height:var(--spacing-8,2rem)}
@@ -0,0 +1,13 @@
1
+ [
2
+ "dropdown",
3
+ "dropdown-content",
4
+ "dropdown-open",
5
+ "dropdown-hover",
6
+ "dropdown-start",
7
+ "dropdown-left",
8
+ "dropdown-right",
9
+ "dropdown-center",
10
+ "dropdown-end",
11
+ "dropdown-bottom",
12
+ "dropdown-top"
13
+ ]
@@ -0,0 +1,12 @@
1
+ import { plugin } from '../../functions/plugin.js';
2
+ import index from './index.js';
3
+
4
+ export default {
5
+ plugins: [
6
+ plugin(({ addComponents }) => {
7
+ addComponents({
8
+ ...index
9
+ });
10
+ })
11
+ ],
12
+ };
@@ -0,0 +1 @@
1
+ @config "./config.js";
@@ -0,0 +1,146 @@
1
+ export default {
2
+ ".dropdown": {
3
+ "@apply relative inline-block": {},
4
+ "positionArea": "var(--anchor-v, bottom) var(--anchor-h, span-right)",
5
+ "&>*:not(summary):focus": {
6
+ "@apply outline-none": {}
7
+ },
8
+ ".dropdown-content": {
9
+ "@apply absolute transition duration-200 ease-out": {}
10
+ },
11
+ "&:not(details)": {
12
+ ".dropdown-content": {
13
+ "@apply invisible opacity-0 origin-top scale-95": {}
14
+ }
15
+ },
16
+ "&.dropdown-open,\n &:not(.dropdown-hover):focus,\n &:focus-within": {
17
+ ".dropdown-content": {
18
+ "@apply visible opacity-100": {}
19
+ }
20
+ },
21
+ "&.dropdown-hover:hover": {
22
+ ".dropdown-content": {
23
+ "@apply visible opacity-100 scale-100": {}
24
+ }
25
+ },
26
+ "&:is(details)": {
27
+ "summary": {
28
+ "&::-webkit-details-marker": {
29
+ "@apply hidden": {}
30
+ }
31
+ }
32
+ },
33
+ "&.dropdown-open,\n &:focus,\n &:focus-within": {
34
+ ".dropdown-content": {
35
+ "@apply scale-100": {}
36
+ }
37
+ },
38
+ "&[popover]": {
39
+ "@apply fixed transition duration-200 ease-out z-[1000]": {},
40
+ "@supports not (position-area: bottom)": {
41
+ "@apply m-auto": {},
42
+ "&.dropdown-open": {
43
+ "@apply invisible opacity-0 origin-top scale-95": {},
44
+ "&:popover-open": {
45
+ "@apply visible opacity-100 scale-100": {}
46
+ }
47
+ },
48
+ "&::backdrop": {
49
+ "@apply bg-black/30": {}
50
+ }
51
+ },
52
+ "&:not(.dropdown-open, :popover-open)": {
53
+ "@apply invisible opacity-0 origin-top scale-95": {}
54
+ }
55
+ }
56
+ },
57
+ ".dropdown-start": {
58
+ "--anchor-h": "span-right",
59
+ ":where(.dropdown-content)": {
60
+ "@apply end-auto": {}
61
+ },
62
+ "&.dropdown-left": {
63
+ "--anchor-h": "left",
64
+ "--anchor-v": "span-bottom",
65
+ ".dropdown-content": {
66
+ "@apply bottom-auto top-0": {}
67
+ }
68
+ },
69
+ "&.dropdown-right": {
70
+ "--anchor-h": "right",
71
+ "--anchor-v": "span-bottom",
72
+ ".dropdown-content": {
73
+ "@apply bottom-auto top-0": {}
74
+ }
75
+ }
76
+ },
77
+ ".dropdown-center": {
78
+ "--anchor-h": "center",
79
+ ":where(.dropdown-content)": {
80
+ "@apply end-1/2": {},
81
+ "translate": "50% 0"
82
+ },
83
+ "&.dropdown-left": {
84
+ "--anchor-h": "left",
85
+ "--anchor-v": "center",
86
+ ".dropdown-content": {
87
+ "@apply bottom-1/2 top-auto": {},
88
+ "translate": "0 50%"
89
+ }
90
+ },
91
+ "&.dropdown-right": {
92
+ "--anchor-h": "right",
93
+ "--anchor-v": "center",
94
+ ".dropdown-content": {
95
+ "@apply bottom-1/2 top-auto": {},
96
+ "translate": "0 50%"
97
+ }
98
+ }
99
+ },
100
+ ".dropdown-end": {
101
+ "--anchor-h": "span-left",
102
+ ":where(.dropdown-content)": {
103
+ "@apply end-0": {}
104
+ },
105
+ "&.dropdown-left": {
106
+ "--anchor-h": "left",
107
+ "--anchor-v": "span-top",
108
+ ".dropdown-content": {
109
+ "@apply bottom-0 top-auto": {}
110
+ }
111
+ },
112
+ "&.dropdown-right": {
113
+ "--anchor-h": "right",
114
+ "--anchor-v": "span-top",
115
+ ".dropdown-content": {
116
+ "@apply bottom-0 top-auto": {}
117
+ }
118
+ }
119
+ },
120
+ ".dropdown-left": {
121
+ "--anchor-h": "left",
122
+ "--anchor-v": "span-bottom",
123
+ ".dropdown-content": {
124
+ "@apply bottom-auto end-full top-0 origin-right": {}
125
+ }
126
+ },
127
+ ".dropdown-right": {
128
+ "--anchor-h": "right",
129
+ "--anchor-v": "span-bottom",
130
+ ".dropdown-content": {
131
+ "@apply bottom-auto start-full top-0 origin-left": {}
132
+ }
133
+ },
134
+ ".dropdown-bottom": {
135
+ "--anchor-v": "bottom",
136
+ ".dropdown-content": {
137
+ "@apply bottom-auto top-full origin-top": {}
138
+ }
139
+ },
140
+ ".dropdown-top": {
141
+ "--anchor-v": "top",
142
+ ".dropdown-content": {
143
+ "@apply bottom-full top-auto origin-bottom": {}
144
+ }
145
+ }
146
+ };
@@ -0,0 +1 @@
1
+ .dropdown{position-area:var(--anchor-v,bottom)var(--anchor-h,span-right);display:inline-block;position:relative;&>:not(summary):focus{outline-offset:2px;outline:2px solid #0000}& .dropdown-content{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function,cubic-bezier(.4,0,.2,1)));transition-duration:var(--tw-duration,var(--default-transition-duration,.15s));--tw-duration:.2s;--tw-ease:var(--transition-timing-function-out,cubic-bezier(0,0,.2,1));transition-duration:.2s;transition-timing-function:var(--transition-timing-function-out,cubic-bezier(0,0,.2,1));position:absolute}&:not(details){& .dropdown-content{visibility:hidden;transform-origin:top;--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x)var(--tw-scale-y);opacity:0}}&.dropdown-open,&:not(.dropdown-hover):focus,&:focus-within{& .dropdown-content{visibility:visible;opacity:1}}&.dropdown-hover:hover{& .dropdown-content{visibility:visible;--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x)var(--tw-scale-y);opacity:1}}&:is(details){& summary{&::-webkit-details-marker{display:none}}}&.dropdown-open,&:focus,&:focus-within{& .dropdown-content{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x)var(--tw-scale-y)}}&[popover]{z-index:1000;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function,cubic-bezier(.4,0,.2,1)));transition-duration:var(--tw-duration,var(--default-transition-duration,.15s));--tw-duration:.2s;--tw-ease:var(--transition-timing-function-out,cubic-bezier(0,0,.2,1));transition-duration:.2s;transition-timing-function:var(--transition-timing-function-out,cubic-bezier(0,0,.2,1));position:fixed;@supports not (position-area:bottom){&{margin:auto}&.dropdown-open{visibility:hidden;transform-origin:top;--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x)var(--tw-scale-y);opacity:0;&:popover-open{visibility:visible;--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x)var(--tw-scale-y);opacity:1}}&::backdrop{background-color:color-mix(in srgb,var(--color-black,#000)30%,transparent)}}&:not(.dropdown-open,:popover-open){visibility:hidden;transform-origin:top;--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x)var(--tw-scale-y);opacity:0}}}.dropdown-start{--anchor-h:span-right;& :where(.dropdown-content){inset-inline-end:auto}&.dropdown-left{--anchor-h:left;--anchor-v:span-bottom;& .dropdown-content{top:var(--spacing-0,0px);bottom:auto}}&.dropdown-right{--anchor-h:right;--anchor-v:span-bottom;& .dropdown-content{top:var(--spacing-0,0px);bottom:auto}}}.dropdown-center{--anchor-h:center;& :where(.dropdown-content){inset-inline-end:50%;translate:50%}&.dropdown-left{--anchor-h:left;--anchor-v:center;& .dropdown-content{top:auto;bottom:50%;translate:0 50%}}&.dropdown-right{--anchor-h:right;--anchor-v:center;& .dropdown-content{top:auto;bottom:50%;translate:0 50%}}}.dropdown-end{--anchor-h:span-left;& :where(.dropdown-content){inset-inline-end:var(--spacing-0,0px)}&.dropdown-left{--anchor-h:left;--anchor-v:span-top;& .dropdown-content{top:auto;bottom:var(--spacing-0,0px)}}&.dropdown-right{--anchor-h:right;--anchor-v:span-top;& .dropdown-content{top:auto;bottom:var(--spacing-0,0px)}}}.dropdown-left{--anchor-h:left;--anchor-v:span-bottom;& .dropdown-content{inset-inline-end:100%;top:var(--spacing-0,0px);transform-origin:100%;bottom:auto}}.dropdown-right{--anchor-h:right;--anchor-v:span-bottom;& .dropdown-content{inset-inline-start:100%;top:var(--spacing-0,0px);transform-origin:0;bottom:auto}}.dropdown-bottom{--anchor-v:bottom;& .dropdown-content{transform-origin:top;top:100%;bottom:auto}}.dropdown-top{--anchor-v:top;& .dropdown-content{transform-origin:bottom;top:auto;bottom:100%}}