daisyui 4.12.10 → 5.0.0-alpha.2

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 (73) hide show
  1. package/components/badge/config.js +12 -0
  2. package/components/badge/index.css +1 -0
  3. package/components/badge/index.js +74 -0
  4. package/components/badge.css +109 -0
  5. package/components/button/config.js +12 -0
  6. package/components/button/index.css +1 -0
  7. package/components/button/index.js +170 -0
  8. package/components/button.css +293 -0
  9. package/components/checkbox/config.js +12 -0
  10. package/components/checkbox/index.css +1 -0
  11. package/components/checkbox/index.js +108 -0
  12. package/components/checkbox.css +144 -0
  13. package/components/input/config.js +12 -0
  14. package/components/input/index.css +1 -0
  15. package/components/input/index.js +128 -0
  16. package/components/input.css +204 -0
  17. package/components/kbd/config.js +12 -0
  18. package/components/kbd/index.css +1 -0
  19. package/components/kbd/index.js +27 -0
  20. package/components/kbd.css +49 -0
  21. package/components/mask/config.js +12 -0
  22. package/components/mask/index.css +1 -0
  23. package/components/mask/index.js +74 -0
  24. package/components/mask.css +78 -0
  25. package/components/radio/config.js +12 -0
  26. package/components/radio/index.css +1 -0
  27. package/components/radio/index.js +73 -0
  28. package/components/radio.css +102 -0
  29. package/components/range/config.js +12 -0
  30. package/components/range/index.css +1 -0
  31. package/components/range/index.js +132 -0
  32. package/components/range.css +164 -0
  33. package/components/rating/config.js +12 -0
  34. package/components/rating/index.css +1 -0
  35. package/components/rating/index.js +82 -0
  36. package/components/rating.css +104 -0
  37. package/components/select/config.js +12 -0
  38. package/components/select/index.css +1 -0
  39. package/components/select/index.js +99 -0
  40. package/components/select.css +166 -0
  41. package/components/toggle/config.js +12 -0
  42. package/components/toggle/index.css +1 -0
  43. package/components/toggle/index.js +102 -0
  44. package/components/toggle.css +143 -0
  45. package/functions/plugin.js +10 -0
  46. package/index.css +14 -0
  47. package/package.json +74 -83
  48. package/themes/dark/index.css +26 -0
  49. package/themes/default/index.css +26 -0
  50. package/themes/index.css +26 -0
  51. package/themes/light/index.css +26 -0
  52. package/dist/base.js +0 -1
  53. package/dist/full.css +0 -62904
  54. package/dist/styled.css +0 -5183
  55. package/dist/styled.js +0 -1
  56. package/dist/themes.css +0 -2118
  57. package/dist/unstyled.css +0 -1324
  58. package/dist/unstyled.js +0 -1
  59. package/dist/utilities-styled.js +0 -1
  60. package/dist/utilities-unstyled.js +0 -1
  61. package/dist/utilities.js +0 -1
  62. package/src/index.d.ts +0 -122
  63. package/src/index.js +0 -149
  64. package/src/lib/addPrefix.js +0 -104
  65. package/src/lib/createPlugin.js +0 -19
  66. package/src/lib/responsiveRegex.js +0 -45
  67. package/src/lib/utility-classes.js +0 -7
  68. package/src/theming/colorNames.js +0 -30
  69. package/src/theming/functions.js +0 -262
  70. package/src/theming/index.js +0 -35
  71. package/src/theming/themeDefaults.js +0 -47
  72. package/src/theming/themes.d.ts +0 -5
  73. package/src/theming/themes.js +0 -485
@@ -0,0 +1,164 @@
1
+ .range {
2
+ appearance: none;
3
+ -webkit-appearance: none;
4
+ --range-shdw: currentColor;
5
+ height: var(--spacing-6, 1.5rem);
6
+ width: 100%;
7
+ cursor: pointer;
8
+ overflow: hidden;
9
+ border-radius: var(--radius-box, 1rem);
10
+ --tw-border-style: none;
11
+ border-style: none;
12
+ background-color: transparent;
13
+ vertical-align: middle;
14
+ &:focus {
15
+ outline: none;
16
+ }
17
+ &:focus-visible {
18
+ --focus-shadow: 0 0 0 6px var(--color-base-100) inset, 0 0 0 2rem var(--range-shdw) inset;
19
+ }
20
+ &::-webkit-slider-runnable-track {
21
+ height: var(--spacing-2, 0.5rem);
22
+ width: 100%;
23
+ border-radius: var(--radius-box, 1rem);
24
+ background-color: color-mix(in srgb, var(--color-base-content, oklch(27.8078% 0.029596 256.84795)) 10%, transparent);
25
+ }
26
+ &::-webkit-slider-thumb {
27
+ position: relative;
28
+ height: var(--spacing-6, 1.5rem);
29
+ width: var(--spacing-6, 1.5rem);
30
+ border-radius: var(--radius-box, 1rem);
31
+ --tw-border-style: none;
32
+ border-style: none;
33
+ background-color: var(--color-base-100, oklch(100% 0 0));
34
+ appearance: none;
35
+ -webkit-appearance: none;
36
+ top: 50%;
37
+ color: var(--range-shdw);
38
+ transform: translateY(-50%);
39
+ --filler-size: 100rem;
40
+ --filler-offset: 0.6rem;
41
+ --track-shdw: calc(var(--filler-size) * -1 - var(--filler-offset)) 0 0 var(--filler-size);
42
+ box-shadow: 0 0 0 3px var(--range-shdw) inset, var(--focus-shadow, 0 0), var(--track-shdw);
43
+ }
44
+ [dir=rtl] &::-webkit-slider-thumb {
45
+ --track-shdw: calc(var(--filler-size) * 1 + var(--filler-offset)) 0 0 var(--filler-size);
46
+ }
47
+ &::-moz-range-track {
48
+ height: var(--spacing-2, 0.5rem);
49
+ width: 100%;
50
+ border-radius: var(--radius-box, 1rem);
51
+ background-color: color-mix(in srgb, var(--color-base-content, oklch(27.8078% 0.029596 256.84795)) 10%, transparent);
52
+ }
53
+ &::-moz-range-thumb {
54
+ position: relative;
55
+ height: var(--spacing-6, 1.5rem);
56
+ width: var(--spacing-6, 1.5rem);
57
+ border-radius: var(--radius-box, 1rem);
58
+ --tw-border-style: none;
59
+ border-style: none;
60
+ background-color: var(--color-base-100, oklch(100% 0 0));
61
+ top: 50%;
62
+ color: var(--range-shdw);
63
+ --filler-size: 100rem;
64
+ --filler-offset: 0.5rem;
65
+ box-shadow: 0 0 0 3px var(--range-shdw) inset, var(--focus-shadow, 0 0), calc(var(--filler-size) * -1 - var(--filler-offset)) 0 0 var(--filler-size);
66
+ }
67
+ }
68
+ .range-primary {
69
+ color: var(--color-primary, oklch(49.12% 0.3096 275.75));
70
+ }
71
+ .range-secondary {
72
+ color: var(--color-secondary, oklch(69.71% 0.329 342.55));
73
+ }
74
+ .range-accent {
75
+ color: var(--color-accent, oklch(76.76% 0.184 183.61));
76
+ }
77
+ .range-success {
78
+ color: var(--color-success, oklch(64.8% 0.15 160));
79
+ }
80
+ .range-warning {
81
+ color: var(--color-warning, oklch(84.71% 0.199 83.87));
82
+ }
83
+ .range-info {
84
+ color: var(--color-info, oklch(72.06% 0.191 231.6));
85
+ }
86
+ .range-error {
87
+ color: var(--color-error, oklch(71.76% 0.221 22.18));
88
+ }
89
+ .range-xs {
90
+ height: var(--spacing-4, 1rem);
91
+ &::-webkit-slider-runnable-track {
92
+ height: var(--spacing-1, 0.25rem);
93
+ }
94
+ &::-webkit-slider-thumb {
95
+ width: var(--spacing-4, 1rem);
96
+ height: var(--spacing-4, 1rem);
97
+ --filler-offset: 0.4rem;
98
+ }
99
+ &::-moz-range-track {
100
+ height: var(--spacing-1, 0.25rem);
101
+ }
102
+ &::-moz-range-thumb {
103
+ width: var(--spacing-4, 1rem);
104
+ height: var(--spacing-4, 1rem);
105
+ --filler-offset: 0.4rem;
106
+ }
107
+ }
108
+ .range-sm {
109
+ height: var(--spacing-5, 1.25rem);
110
+ &::-webkit-slider-runnable-track {
111
+ height: var(--spacing-1, 0.25rem);
112
+ }
113
+ &::-webkit-slider-thumb {
114
+ width: var(--spacing-5, 1.25rem);
115
+ height: var(--spacing-5, 1.25rem);
116
+ --filler-offset: 0.5rem;
117
+ }
118
+ &::-moz-range-track {
119
+ height: var(--spacing-1, 0.25rem);
120
+ }
121
+ &::-moz-range-thumb {
122
+ width: var(--spacing-5, 1.25rem);
123
+ height: var(--spacing-5, 1.25rem);
124
+ --filler-offset: 0.5rem;
125
+ }
126
+ }
127
+ .range-md {
128
+ height: var(--spacing-6, 1.5rem);
129
+ &::-webkit-slider-runnable-track {
130
+ height: var(--spacing-2, 0.5rem);
131
+ }
132
+ &::-webkit-slider-thumb {
133
+ width: var(--spacing-6, 1.5rem);
134
+ height: var(--spacing-6, 1.5rem);
135
+ --filler-offset: 0.6rem;
136
+ }
137
+ &::-moz-range-track {
138
+ height: var(--spacing-2, 0.5rem);
139
+ }
140
+ &::-moz-range-thumb {
141
+ width: var(--spacing-6, 1.5rem);
142
+ height: var(--spacing-6, 1.5rem);
143
+ --filler-offset: 0.6rem;
144
+ }
145
+ }
146
+ .range-lg {
147
+ height: var(--spacing-8, 2rem);
148
+ &::-webkit-slider-runnable-track {
149
+ height: var(--spacing-4, 1rem);
150
+ }
151
+ &::-webkit-slider-thumb {
152
+ width: var(--spacing-8, 2rem);
153
+ height: var(--spacing-8, 2rem);
154
+ --filler-offset: 1rem;
155
+ }
156
+ &::-moz-range-track {
157
+ height: var(--spacing-4, 1rem);
158
+ }
159
+ &::-moz-range-thumb {
160
+ width: var(--spacing-8, 2rem);
161
+ height: var(--spacing-8, 2rem);
162
+ --filler-offset: 1rem;
163
+ }
164
+ }
@@ -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,82 @@
1
+ export default {
2
+ ".rating": {
3
+ "@apply relative inline-flex align-middle": {},
4
+ "& input": {
5
+ "@apply appearance-none border-none": {},
6
+ "WebkitAppearance": "none"
7
+ },
8
+ ":where(input)": {
9
+ "animation": "rating-pop var(--animation-input, 0.25s) ease-out",
10
+ "@apply bg-base-content h-6 w-6 cursor-pointer rounded-none opacity-100": {}
11
+ },
12
+ "& .rating-hidden": {
13
+ "@apply w-2 bg-transparent": {}
14
+ },
15
+ "input[type=\"radio\"]:checked": {
16
+ "backgroundImage": "none"
17
+ },
18
+ "input": {
19
+ "&:checked,\n &[aria-checked=\"true\"]": {
20
+ "&~input": {
21
+ "@apply opacity-20": {}
22
+ }
23
+ },
24
+ "&:focus-visible": {
25
+ "@apply transition-transform duration-300 ease-out": {},
26
+ "transform": "translateY(-0.125em)"
27
+ }
28
+ },
29
+ "& input:active:focus": {
30
+ "animation": "none",
31
+ "transform": "translateY(-0.125em)"
32
+ },
33
+ "&:is(.rating-xs)": {
34
+ "input": {
35
+ "@apply size-3": {}
36
+ }
37
+ },
38
+ "&:is(.rating-sm)": {
39
+ "input": {
40
+ "@apply size-4": {}
41
+ }
42
+ },
43
+ "&:is(.rating-md)": {
44
+ "input": {
45
+ "@apply size-6": {}
46
+ }
47
+ },
48
+ "&:is(.rating-lg)": {
49
+ "input": {
50
+ "@apply size-10": {}
51
+ }
52
+ }
53
+ },
54
+ ".rating-half": {
55
+ ":where(input:not(.rating-hidden))": {
56
+ "@apply w-3": {}
57
+ },
58
+ "&.rating-xs input:not(.rating-hidden)": {
59
+ "@apply w-1.5": {}
60
+ },
61
+ "&.rating-sm input:not(.rating-hidden)": {
62
+ "@apply w-2": {}
63
+ },
64
+ "&.rating-md input:not(.rating-hidden)": {
65
+ "@apply w-3": {}
66
+ },
67
+ "&.rating-lg input:not(.rating-hidden)": {
68
+ "@apply w-5": {}
69
+ }
70
+ },
71
+ "@keyframes rating-pop": {
72
+ "0%": {
73
+ "transform": "translateY(-0.125em)"
74
+ },
75
+ "40%": {
76
+ "transform": "translateY(-0.125em)"
77
+ },
78
+ "100%": {
79
+ "transform": "translateY(0)"
80
+ }
81
+ }
82
+ };
@@ -0,0 +1,104 @@
1
+ .rating {
2
+ position: relative;
3
+ display: inline-flex;
4
+ vertical-align: middle;
5
+ & input {
6
+ appearance: none;
7
+ --tw-border-style: none;
8
+ border-style: none;
9
+ -webkit-appearance: none;
10
+ }
11
+ :where(input) {
12
+ animation: rating-pop var(--animation-input, 0.25s) ease-out;
13
+ height: var(--spacing-6, 1.5rem);
14
+ width: var(--spacing-6, 1.5rem);
15
+ cursor: pointer;
16
+ border-radius: 0;
17
+ background-color: var(--color-base-content, oklch(27.8078% 0.029596 256.84795));
18
+ opacity: 100%;
19
+ }
20
+ & .rating-hidden {
21
+ width: var(--spacing-2, 0.5rem);
22
+ background-color: transparent;
23
+ }
24
+ input[type="radio"]:checked {
25
+ background-image: none;
26
+ }
27
+ input {
28
+ &:checked, &[aria-checked="true"] {
29
+ &~input {
30
+ opacity: 20%;
31
+ }
32
+ }
33
+ &:focus-visible {
34
+ transition-property: transform, translate, scale, rotate;
35
+ transition-timing-function: var(--tw-ease, var(--default-transition-timing-function, cubic-bezier(0.4, 0, 0.2, 1)));
36
+ transition-duration: var(--tw-duration, var(--default-transition-duration, 150ms));
37
+ --tw-duration: 300ms;
38
+ transition-duration: 300ms;
39
+ --tw-ease: var(--transition-timing-function-out, cubic-bezier(0, 0, 0.2, 1));
40
+ transition-timing-function: var(--transition-timing-function-out, cubic-bezier(0, 0, 0.2, 1));
41
+ transform: translateY(-0.125em);
42
+ }
43
+ }
44
+ & input:active:focus {
45
+ animation: none;
46
+ }
47
+ & input:active:focus {
48
+ transform: translateY(-0.125em);
49
+ }
50
+ &:is(.rating-xs) {
51
+ input {
52
+ width: var(--spacing-3, 0.75rem);
53
+ height: var(--spacing-3, 0.75rem);
54
+ }
55
+ }
56
+ &:is(.rating-sm) {
57
+ input {
58
+ width: var(--spacing-4, 1rem);
59
+ height: var(--spacing-4, 1rem);
60
+ }
61
+ }
62
+ &:is(.rating-md) {
63
+ input {
64
+ width: var(--spacing-6, 1.5rem);
65
+ height: var(--spacing-6, 1.5rem);
66
+ }
67
+ }
68
+ &:is(.rating-lg) {
69
+ input {
70
+ width: var(--spacing-10, 2.5rem);
71
+ height: var(--spacing-10, 2.5rem);
72
+ }
73
+ }
74
+ }
75
+ .rating-half {
76
+ :where(input:not(.rating-hidden)) {
77
+ width: var(--spacing-3, 0.75rem);
78
+ }
79
+ }
80
+ @keyframes rating-pop {
81
+ 0% {
82
+ transform: translateY(-0.125em);
83
+ }
84
+ 40% {
85
+ transform: translateY(-0.125em);
86
+ }
87
+ 100% {
88
+ transform: translateY(0);
89
+ }
90
+ }
91
+ .rating-half {
92
+ &.rating-xs input:not(.rating-hidden) {
93
+ width: var(--spacing-1_5, 0.375rem);
94
+ }
95
+ &.rating-sm input:not(.rating-hidden) {
96
+ width: var(--spacing-2, 0.5rem);
97
+ }
98
+ &.rating-md input:not(.rating-hidden) {
99
+ width: var(--spacing-3, 0.75rem);
100
+ }
101
+ &.rating-lg input:not(.rating-hidden) {
102
+ width: var(--spacing-5, 1.25rem);
103
+ }
104
+ }
@@ -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,99 @@
1
+ export default {
2
+ ".select": {
3
+ "@apply relative bg-base-100 rounded-btn h-10 shrink appearance-none border border-transparent px-4 text-base text-sm leading-loose align-middle": {},
4
+ "backgroundImage": "linear-gradient(45deg, transparent 50%, currentColor 50%),\n linear-gradient(135deg, currentColor 50%, transparent 50%)",
5
+ "backgroundPosition": "calc(100% - 20px) calc(1px + 50%),\n calc(100% - 16.1px) calc(1px + 50%)",
6
+ "backgroundSize": "4px 4px,\n 4px 4px",
7
+ "backgroundRepeat": "no-repeat",
8
+ "input": {
9
+ "@apply border-none bg-transparent": {},
10
+ "&:focus": {
11
+ "@apply outline-none": {}
12
+ }
13
+ },
14
+ "&:focus,\n &:focus-within": {
15
+ "@apply border-base-content/20 outline-base-content/20 outline outline-2 outline-offset-2": {}
16
+ },
17
+ "&:has(> select[disabled]),\n &:is(:disabled, [disabled])": {
18
+ "@apply border-base-200 bg-base-200 placeholder-base-content text-base-content/40 placeholder-base-content/20 cursor-not-allowed": {}
19
+ },
20
+ "&:has(> select[disabled])>select[disabled]": {
21
+ "@apply cursor-not-allowed": {}
22
+ },
23
+ "&.select-bordered": {
24
+ "@apply border-base-content/20": {},
25
+ "boxShadow": "0 1px oklch(0% 0 0 / 0.1) inset,\n 0 -1px oklch(100% 0 0 / 0.1) inset",
26
+ "&:focus": {
27
+ "boxShadow": "0 1px oklch(0% 0 0 / 0.1)"
28
+ }
29
+ },
30
+ "&.select-ghost": {
31
+ "@apply bg-base-100/5 shadow-none": {},
32
+ "&:focus,\n &:focus-within": {
33
+ "@apply text-base-content bg-base-100": {},
34
+ "boxShadow": "none"
35
+ }
36
+ },
37
+ "&.select-primary": {
38
+ "@apply border-primary": {},
39
+ "backgroundColor": "color-mix(in oklab, var(--color-primary) 2%, transparent)",
40
+ "&:focus,\n &:focus-within": {
41
+ "@apply outline-primary border-primary": {}
42
+ }
43
+ },
44
+ "&.select-secondary": {
45
+ "@apply border-secondary": {},
46
+ "backgroundColor": "color-mix(in oklab, var(--color-secondary) 2%, transparent)",
47
+ "&:focus,\n &:focus-within": {
48
+ "@apply outline-secondary border-secondary": {}
49
+ }
50
+ },
51
+ "&.select-accent": {
52
+ "@apply border-accent": {},
53
+ "backgroundColor": "color-mix(in oklab, var(--color-accent) 2%, transparent)",
54
+ "&:focus,\n &:focus-within": {
55
+ "@apply outline-accent border-accent": {}
56
+ }
57
+ },
58
+ "&.select-info": {
59
+ "@apply border-info": {},
60
+ "backgroundColor": "color-mix(in oklab, var(--color-info) 2%, transparent)",
61
+ "&:focus,\n &:focus-within": {
62
+ "@apply outline-info border-info": {}
63
+ }
64
+ },
65
+ "&.select-success": {
66
+ "@apply border-success": {},
67
+ "backgroundColor": "color-mix(in oklab, var(--color-success) 2%, transparent)",
68
+ "&:focus,\n &:focus-within": {
69
+ "@apply outline-success border-success": {}
70
+ }
71
+ },
72
+ "&.select-warning": {
73
+ "@apply border-warning": {},
74
+ "backgroundColor": "color-mix(in oklab, var(--color-warning) 2%, transparent)",
75
+ "&:focus,\n &:focus-within": {
76
+ "@apply outline-warning border-warning": {}
77
+ }
78
+ },
79
+ "&.select-error": {
80
+ "@apply border-error": {},
81
+ "backgroundColor": "color-mix(in oklab, var(--color-error) 2%, transparent)",
82
+ "&:focus,\n &:focus-within": {
83
+ "@apply outline-error border-error": {}
84
+ }
85
+ },
86
+ "&.select-xs": {
87
+ "@apply h-6 px-2 text-xs leading-relaxed": {}
88
+ },
89
+ "&.select-sm": {
90
+ "@apply h-8 px-3 text-sm leading-8": {}
91
+ },
92
+ "&.select-md": {
93
+ "@apply h-10 px-4 text-sm leading-loose": {}
94
+ },
95
+ "&.select-lg": {
96
+ "@apply h-14 px-6 text-lg leading-loose": {}
97
+ }
98
+ }
99
+ };
@@ -0,0 +1,166 @@
1
+ .select {
2
+ position: relative;
3
+ height: var(--spacing-10, 2.5rem);
4
+ flex-shrink: 1;
5
+ appearance: none;
6
+ border-radius: var(--radius-btn, 0.5rem);
7
+ border-style: var(--tw-border-style);
8
+ border-width: 1px;
9
+ border-color: transparent;
10
+ background-color: var(--color-base-100, oklch(100% 0 0));
11
+ padding-left: var(--spacing-4, 1rem);
12
+ padding-right: var(--spacing-4, 1rem);
13
+ vertical-align: middle;
14
+ font-size: var(--font-size-base, 1rem);
15
+ line-height: var(--tw-leading, var(--font-size-base--line-height, 1.5rem));
16
+ font-size: var(--font-size-sm, 0.875rem);
17
+ line-height: var(--tw-leading, var(--font-size-sm--line-height, 1.25rem));
18
+ --tw-leading: var(--line-height-loose, 2);
19
+ line-height: var(--line-height-loose, 2);
20
+ background-image: linear-gradient(45deg, transparent 50%, currentColor 50%), linear-gradient(135deg, currentColor 50%, transparent 50%);
21
+ background-position: calc(100% - 20px) calc(1px + 50%), calc(100% - 16.1px) calc(1px + 50%);
22
+ background-size: 4px 4px, 4px 4px;
23
+ background-repeat: no-repeat;
24
+ input {
25
+ --tw-border-style: none;
26
+ border-style: none;
27
+ background-color: transparent;
28
+ &:focus {
29
+ outline: 2px solid transparent;
30
+ outline-offset: 2px;
31
+ }
32
+ }
33
+ &:focus, &:focus-within {
34
+ border-color: color-mix(in srgb, var(--color-base-content, oklch(27.8078% 0.029596 256.84795)) 20%, transparent);
35
+ outline-style: var(--tw-outline-style);
36
+ outline-width: 1px;
37
+ outline-style: var(--tw-outline-style);
38
+ outline-width: 2px;
39
+ outline-offset: 2px;
40
+ outline-color: color-mix(in srgb, var(--color-base-content, oklch(27.8078% 0.029596 256.84795)) 20%, transparent);
41
+ }
42
+ &:has(> select[disabled]), &:is(:disabled, [disabled]) {
43
+ cursor: not-allowed;
44
+ border-color: var(--color-base-200, oklch(96.1151% 0 0));
45
+ background-color: var(--color-base-200, oklch(96.1151% 0 0));
46
+ color: color-mix(in srgb, var(--color-base-content, oklch(27.8078% 0.029596 256.84795)) 40%, transparent);
47
+ &::placeholder {
48
+ color: var(--color-base-content, oklch(27.8078% 0.029596 256.84795));
49
+ }
50
+ &::placeholder {
51
+ color: color-mix(in srgb, var(--color-base-content, oklch(27.8078% 0.029596 256.84795)) 20%, transparent);
52
+ }
53
+ }
54
+ &:has(> select[disabled])>select[disabled] {
55
+ cursor: not-allowed;
56
+ }
57
+ &.select-bordered {
58
+ border-color: color-mix(in srgb, var(--color-base-content, oklch(27.8078% 0.029596 256.84795)) 20%, transparent);
59
+ box-shadow: 0 1px oklch(0% 0 0 / 0.1) inset, 0 -1px oklch(100% 0 0 / 0.1) inset;
60
+ &:focus {
61
+ box-shadow: 0 1px oklch(0% 0 0 / 0.1);
62
+ }
63
+ }
64
+ &.select-ghost {
65
+ background-color: color-mix(in srgb, var(--color-base-100, oklch(100% 0 0)) 5%, transparent);
66
+ --tw-shadow: 0 0 #0000;
67
+ box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
68
+ &:focus, &:focus-within {
69
+ background-color: var(--color-base-100, oklch(100% 0 0));
70
+ color: var(--color-base-content, oklch(27.8078% 0.029596 256.84795));
71
+ box-shadow: none;
72
+ }
73
+ }
74
+ &.select-primary {
75
+ border-color: var(--color-primary, oklch(49.12% 0.3096 275.75));
76
+ background-color: color-mix(in oklab, var(--color-primary) 2%, transparent);
77
+ &:focus, &:focus-within {
78
+ border-color: var(--color-primary, oklch(49.12% 0.3096 275.75));
79
+ outline-color: var(--color-primary, oklch(49.12% 0.3096 275.75));
80
+ }
81
+ }
82
+ &.select-secondary {
83
+ border-color: var(--color-secondary, oklch(69.71% 0.329 342.55));
84
+ background-color: color-mix(in oklab, var(--color-secondary) 2%, transparent);
85
+ &:focus, &:focus-within {
86
+ border-color: var(--color-secondary, oklch(69.71% 0.329 342.55));
87
+ outline-color: var(--color-secondary, oklch(69.71% 0.329 342.55));
88
+ }
89
+ }
90
+ &.select-accent {
91
+ border-color: var(--color-accent, oklch(76.76% 0.184 183.61));
92
+ background-color: color-mix(in oklab, var(--color-accent) 2%, transparent);
93
+ &:focus, &:focus-within {
94
+ border-color: var(--color-accent, oklch(76.76% 0.184 183.61));
95
+ outline-color: var(--color-accent, oklch(76.76% 0.184 183.61));
96
+ }
97
+ }
98
+ &.select-info {
99
+ border-color: var(--color-info, oklch(72.06% 0.191 231.6));
100
+ background-color: color-mix(in oklab, var(--color-info) 2%, transparent);
101
+ &:focus, &:focus-within {
102
+ border-color: var(--color-info, oklch(72.06% 0.191 231.6));
103
+ outline-color: var(--color-info, oklch(72.06% 0.191 231.6));
104
+ }
105
+ }
106
+ &.select-success {
107
+ border-color: var(--color-success, oklch(64.8% 0.15 160));
108
+ background-color: color-mix(in oklab, var(--color-success) 2%, transparent);
109
+ &:focus, &:focus-within {
110
+ border-color: var(--color-success, oklch(64.8% 0.15 160));
111
+ outline-color: var(--color-success, oklch(64.8% 0.15 160));
112
+ }
113
+ }
114
+ &.select-warning {
115
+ border-color: var(--color-warning, oklch(84.71% 0.199 83.87));
116
+ background-color: color-mix(in oklab, var(--color-warning) 2%, transparent);
117
+ &:focus, &:focus-within {
118
+ border-color: var(--color-warning, oklch(84.71% 0.199 83.87));
119
+ outline-color: var(--color-warning, oklch(84.71% 0.199 83.87));
120
+ }
121
+ }
122
+ &.select-error {
123
+ border-color: var(--color-error, oklch(71.76% 0.221 22.18));
124
+ background-color: color-mix(in oklab, var(--color-error) 2%, transparent);
125
+ &:focus, &:focus-within {
126
+ border-color: var(--color-error, oklch(71.76% 0.221 22.18));
127
+ outline-color: var(--color-error, oklch(71.76% 0.221 22.18));
128
+ }
129
+ }
130
+ &.select-xs {
131
+ height: var(--spacing-6, 1.5rem);
132
+ padding-left: var(--spacing-2, 0.5rem);
133
+ padding-right: var(--spacing-2, 0.5rem);
134
+ font-size: var(--font-size-xs, 0.75rem);
135
+ line-height: var(--tw-leading, var(--font-size-xs--line-height, 1rem));
136
+ --tw-leading: var(--line-height-relaxed, 1.625);
137
+ line-height: var(--line-height-relaxed, 1.625);
138
+ }
139
+ &.select-sm {
140
+ height: var(--spacing-8, 2rem);
141
+ padding-left: var(--spacing-3, 0.75rem);
142
+ padding-right: var(--spacing-3, 0.75rem);
143
+ font-size: var(--font-size-sm, 0.875rem);
144
+ line-height: var(--tw-leading, var(--font-size-sm--line-height, 1.25rem));
145
+ --tw-leading: var(--line-height-8, 2rem);
146
+ line-height: var(--line-height-8, 2rem);
147
+ }
148
+ &.select-md {
149
+ height: var(--spacing-10, 2.5rem);
150
+ padding-left: var(--spacing-4, 1rem);
151
+ padding-right: var(--spacing-4, 1rem);
152
+ font-size: var(--font-size-sm, 0.875rem);
153
+ line-height: var(--tw-leading, var(--font-size-sm--line-height, 1.25rem));
154
+ --tw-leading: var(--line-height-loose, 2);
155
+ line-height: var(--line-height-loose, 2);
156
+ }
157
+ &.select-lg {
158
+ height: var(--spacing-14, 3.5rem);
159
+ padding-left: var(--spacing-6, 1.5rem);
160
+ padding-right: var(--spacing-6, 1.5rem);
161
+ font-size: var(--font-size-lg, 1.125rem);
162
+ line-height: var(--tw-leading, var(--font-size-lg--line-height, 1.75rem));
163
+ --tw-leading: var(--line-height-loose, 2);
164
+ line-height: var(--line-height-loose, 2);
165
+ }
166
+ }
@@ -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";