@rkosafo/cai.components 0.0.1 → 0.0.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 (255) hide show
  1. package/dist/baseEditor/index.svelte +32 -0
  2. package/dist/baseEditor/index.svelte.d.ts +18 -0
  3. package/dist/builders/filters/FilterBuilder.svelte +638 -0
  4. package/dist/builders/filters/FilterBuilder.svelte.d.ts +4 -0
  5. package/dist/builders/filters/index.d.ts +1 -0
  6. package/dist/builders/filters/index.js +1 -0
  7. package/dist/forms/FormCheckbox/FormCheckbox.svelte +53 -0
  8. package/dist/forms/FormCheckbox/FormCheckbox.svelte.d.ts +4 -0
  9. package/dist/forms/FormCheckbox/index.d.ts +1 -0
  10. package/dist/forms/FormCheckbox/index.js +1 -0
  11. package/dist/forms/FormDatepicker/FormDatepicker.svelte +159 -0
  12. package/dist/forms/FormDatepicker/FormDatepicker.svelte.d.ts +13 -0
  13. package/dist/forms/FormDatepicker/index.d.ts +1 -0
  14. package/dist/forms/FormDatepicker/index.js +1 -0
  15. package/dist/forms/FormInput/FormInput.svelte +87 -0
  16. package/dist/forms/FormInput/FormInput.svelte.d.ts +4 -0
  17. package/dist/forms/FormInput/index.d.ts +1 -0
  18. package/dist/forms/FormInput/index.js +1 -0
  19. package/dist/forms/FormRadio/FormRadio.svelte +53 -0
  20. package/dist/forms/FormRadio/FormRadio.svelte.d.ts +4 -0
  21. package/dist/forms/FormRadio/index.d.ts +1 -0
  22. package/dist/forms/FormRadio/index.js +1 -0
  23. package/dist/forms/FormSelect/FormSelect.svelte +86 -0
  24. package/dist/forms/FormSelect/FormSelect.svelte.d.ts +4 -0
  25. package/dist/forms/FormSelect/index.d.ts +1 -0
  26. package/dist/forms/FormSelect/index.js +1 -0
  27. package/dist/forms/FormTextarea/FormTextarea.svelte +77 -0
  28. package/dist/forms/FormTextarea/FormTextarea.svelte.d.ts +4 -0
  29. package/dist/forms/FormTextarea/index.d.ts +1 -0
  30. package/dist/forms/FormTextarea/index.js +1 -0
  31. package/dist/forms/checkbox/Checkbox.svelte +82 -0
  32. package/dist/forms/checkbox/Checkbox.svelte.d.ts +4 -0
  33. package/dist/forms/checkbox/CheckboxButton.svelte +92 -0
  34. package/dist/forms/checkbox/CheckboxButton.svelte.d.ts +18 -0
  35. package/dist/forms/checkbox/index.d.ts +3 -0
  36. package/dist/forms/checkbox/index.js +3 -0
  37. package/dist/forms/checkbox/theme.d.ts +317 -0
  38. package/dist/forms/checkbox/theme.js +113 -0
  39. package/dist/forms/datepicker/Datepicker.svelte +706 -0
  40. package/dist/forms/datepicker/Datepicker.svelte.d.ts +41 -0
  41. package/dist/forms/datepicker/index.d.ts +2 -0
  42. package/dist/forms/datepicker/index.js +2 -0
  43. package/dist/forms/datepicker/theme.d.ts +385 -0
  44. package/dist/forms/datepicker/theme.js +56 -0
  45. package/dist/forms/form/Form.svelte +69 -0
  46. package/dist/forms/form/Form.svelte.d.ts +6 -0
  47. package/dist/forms/form/index.d.ts +2 -0
  48. package/dist/forms/form/index.js +2 -0
  49. package/dist/forms/input/Input.svelte +363 -0
  50. package/dist/forms/input/Input.svelte.d.ts +4 -0
  51. package/dist/forms/input/index.d.ts +4 -0
  52. package/dist/forms/input/index.js +5 -0
  53. package/dist/forms/input/theme.d.ts +301 -0
  54. package/dist/forms/input/theme.js +100 -0
  55. package/dist/forms/label/Label.svelte +38 -0
  56. package/dist/forms/label/Label.svelte.d.ts +15 -0
  57. package/dist/forms/label/index.d.ts +2 -0
  58. package/dist/forms/label/index.js +2 -0
  59. package/dist/forms/label/theme.d.ts +75 -0
  60. package/dist/forms/label/theme.js +29 -0
  61. package/dist/forms/radio/Radio.svelte +48 -0
  62. package/dist/forms/radio/Radio.svelte.d.ts +25 -0
  63. package/dist/forms/radio/RadioButton.svelte +22 -0
  64. package/dist/forms/radio/RadioButton.svelte.d.ts +25 -0
  65. package/dist/forms/radio/index.d.ts +3 -0
  66. package/dist/forms/radio/index.js +3 -0
  67. package/dist/forms/radio/theme.d.ts +290 -0
  68. package/dist/forms/radio/theme.js +95 -0
  69. package/dist/forms/select/Select.svelte +50 -0
  70. package/dist/forms/select/Select.svelte.d.ts +4 -0
  71. package/dist/forms/select/index.d.ts +1 -0
  72. package/dist/forms/select/index.js +1 -0
  73. package/dist/forms/textarea/Textarea.svelte +165 -0
  74. package/dist/forms/textarea/Textarea.svelte.d.ts +4 -0
  75. package/dist/forms/textarea/index.d.ts +2 -0
  76. package/dist/forms/textarea/index.js +2 -0
  77. package/dist/forms/textarea/theme.d.ts +100 -0
  78. package/dist/forms/textarea/theme.js +35 -0
  79. package/dist/index.d.ts +42 -2
  80. package/dist/index.js +42 -2
  81. package/dist/layout/TF/Content/Content.svelte +28 -0
  82. package/dist/layout/TF/Content/Content.svelte.d.ts +8 -0
  83. package/dist/layout/TF/Content/index.d.ts +1 -0
  84. package/dist/layout/TF/Content/index.js +1 -0
  85. package/dist/layout/TF/Header/Header.svelte +159 -0
  86. package/dist/layout/TF/Header/Header.svelte.d.ts +21 -0
  87. package/dist/layout/TF/Header/index.d.ts +1 -0
  88. package/dist/layout/TF/Header/index.js +1 -0
  89. package/dist/layout/TF/Sidebar/Sidebar.svelte +74 -0
  90. package/dist/layout/TF/Sidebar/Sidebar.svelte.d.ts +23 -0
  91. package/dist/layout/TF/Sidebar/index.d.ts +1 -0
  92. package/dist/layout/TF/Sidebar/index.js +1 -0
  93. package/dist/layout/TF/Wrapper/Wrapper.svelte +17 -0
  94. package/dist/layout/TF/Wrapper/Wrapper.svelte.d.ts +8 -0
  95. package/dist/layout/TF/Wrapper/index.d.ts +1 -0
  96. package/dist/layout/TF/Wrapper/index.js +1 -0
  97. package/dist/layout/TF/index.d.ts +5 -0
  98. package/dist/layout/TF/index.js +5 -0
  99. package/dist/themes/ThemeProvider.svelte +20 -0
  100. package/dist/themes/ThemeProvider.svelte.d.ts +9 -0
  101. package/dist/themes/index.d.ts +7 -0
  102. package/dist/themes/index.js +1 -0
  103. package/dist/themes/themeUtils.d.ts +24 -0
  104. package/dist/themes/themeUtils.js +74 -0
  105. package/dist/themes/themes.d.ts +18 -0
  106. package/dist/themes/themes.js +18 -0
  107. package/dist/types/index.d.ts +755 -0
  108. package/dist/types/index.js +1 -0
  109. package/dist/typography/heading/Heading.svelte +35 -0
  110. package/dist/typography/heading/Heading.svelte.d.ts +10 -0
  111. package/dist/typography/heading/index.d.ts +2 -0
  112. package/dist/typography/heading/index.js +2 -0
  113. package/dist/typography/heading/theme.d.ts +30 -0
  114. package/dist/typography/heading/theme.js +17 -0
  115. package/dist/ui/accordion/Accordion.svelte +49 -0
  116. package/dist/ui/accordion/Accordion.svelte.d.ts +4 -0
  117. package/dist/ui/accordion/AccordionItem.svelte +173 -0
  118. package/dist/ui/accordion/AccordionItem.svelte.d.ts +4 -0
  119. package/dist/ui/accordion/index.d.ts +3 -0
  120. package/dist/ui/accordion/index.js +3 -0
  121. package/dist/ui/accordion/theme.d.ts +96 -0
  122. package/dist/ui/accordion/theme.js +59 -0
  123. package/dist/ui/alert/Alert.svelte +83 -0
  124. package/dist/ui/alert/Alert.svelte.d.ts +5 -0
  125. package/dist/ui/alert/index.d.ts +2 -0
  126. package/dist/ui/alert/index.js +2 -0
  127. package/dist/ui/alert/theme.d.ts +108 -0
  128. package/dist/ui/alert/theme.js +149 -0
  129. package/dist/ui/alertDialog/AlertDialog.svelte +40 -0
  130. package/dist/ui/alertDialog/AlertDialog.svelte.d.ts +4 -0
  131. package/dist/ui/alertDialog/index.d.ts +1 -0
  132. package/dist/ui/alertDialog/index.js +1 -0
  133. package/dist/ui/avatar/Avatar.svelte +77 -0
  134. package/dist/ui/avatar/Avatar.svelte.d.ts +4 -0
  135. package/dist/ui/avatar/index.d.ts +2 -0
  136. package/dist/ui/avatar/index.js +2 -0
  137. package/dist/ui/avatar/theme.d.ts +63 -0
  138. package/dist/ui/avatar/theme.js +31 -0
  139. package/dist/ui/buttons/Button.svelte +102 -0
  140. package/dist/ui/buttons/Button.svelte.d.ts +4 -0
  141. package/dist/ui/buttons/GradientButton.svelte +59 -0
  142. package/dist/ui/buttons/GradientButton.svelte.d.ts +4 -0
  143. package/dist/ui/buttons/index.d.ts +3 -0
  144. package/dist/ui/buttons/index.js +3 -0
  145. package/dist/ui/buttons/theme.d.ts +704 -0
  146. package/dist/ui/buttons/theme.js +332 -0
  147. package/dist/ui/datatable/Datatable.svelte +516 -0
  148. package/dist/ui/datatable/Datatable.svelte.d.ts +5 -0
  149. package/dist/ui/datatable/index.d.ts +2 -0
  150. package/dist/ui/datatable/index.js +2 -0
  151. package/dist/ui/drawer/Drawer.svelte +280 -0
  152. package/dist/ui/drawer/Drawer.svelte.d.ts +37 -0
  153. package/dist/ui/drawer/index.d.ts +2 -0
  154. package/dist/ui/drawer/index.js +2 -0
  155. package/dist/ui/drawer/theme.d.ts +211 -0
  156. package/dist/ui/drawer/theme.js +46 -0
  157. package/dist/ui/dropdown/Dropdown.svelte +36 -0
  158. package/dist/ui/dropdown/Dropdown.svelte.d.ts +4 -0
  159. package/dist/ui/dropdown/DropdownDivider.svelte +11 -0
  160. package/dist/ui/dropdown/DropdownDivider.svelte.d.ts +4 -0
  161. package/dist/ui/dropdown/DropdownGroup.svelte +14 -0
  162. package/dist/ui/dropdown/DropdownGroup.svelte.d.ts +4 -0
  163. package/dist/ui/dropdown/DropdownHeader.svelte +14 -0
  164. package/dist/ui/dropdown/DropdownHeader.svelte.d.ts +4 -0
  165. package/dist/ui/dropdown/DropdownItem.svelte +52 -0
  166. package/dist/ui/dropdown/DropdownItem.svelte.d.ts +4 -0
  167. package/dist/ui/dropdown/index.d.ts +6 -0
  168. package/dist/ui/dropdown/index.js +6 -0
  169. package/dist/ui/dropdown/theme.d.ts +55 -0
  170. package/dist/ui/dropdown/theme.js +20 -0
  171. package/dist/ui/footer/Footer.svelte +15 -0
  172. package/dist/ui/footer/Footer.svelte.d.ts +4 -0
  173. package/dist/ui/footer/FooterBrand.svelte +37 -0
  174. package/dist/ui/footer/FooterBrand.svelte.d.ts +4 -0
  175. package/dist/ui/footer/FooterCopyright.svelte +45 -0
  176. package/dist/ui/footer/FooterCopyright.svelte.d.ts +4 -0
  177. package/dist/ui/footer/FooterIcon.svelte +22 -0
  178. package/dist/ui/footer/FooterIcon.svelte.d.ts +4 -0
  179. package/dist/ui/footer/FooterLink.svelte +33 -0
  180. package/dist/ui/footer/FooterLink.svelte.d.ts +4 -0
  181. package/dist/ui/footer/FooterLinkGroup.svelte +13 -0
  182. package/dist/ui/footer/FooterLinkGroup.svelte.d.ts +4 -0
  183. package/dist/ui/footer/index.d.ts +7 -0
  184. package/dist/ui/footer/index.js +7 -0
  185. package/dist/ui/footer/theme.d.ts +137 -0
  186. package/dist/ui/footer/theme.js +39 -0
  187. package/dist/ui/indicator/Indicator.svelte +42 -0
  188. package/dist/ui/indicator/Indicator.svelte.d.ts +4 -0
  189. package/dist/ui/indicator/index.d.ts +2 -0
  190. package/dist/ui/indicator/index.js +2 -0
  191. package/dist/ui/indicator/theme.d.ts +177 -0
  192. package/dist/ui/indicator/theme.js +114 -0
  193. package/dist/ui/modal/Modal.svelte +265 -0
  194. package/dist/ui/modal/Modal.svelte.d.ts +38 -0
  195. package/dist/ui/modal/index.d.ts +2 -0
  196. package/dist/ui/modal/index.js +2 -0
  197. package/dist/ui/modal/theme.d.ts +190 -0
  198. package/dist/ui/modal/theme.js +41 -0
  199. package/dist/ui/notificationList/NotificationList.svelte +123 -0
  200. package/dist/ui/notificationList/NotificationList.svelte.d.ts +25 -0
  201. package/dist/ui/notificationList/index.d.ts +1 -0
  202. package/dist/ui/notificationList/index.js +1 -0
  203. package/dist/ui/pageLoader/PageLoader.svelte +10 -0
  204. package/dist/ui/pageLoader/PageLoader.svelte.d.ts +4 -0
  205. package/dist/ui/pageLoader/index.d.ts +1 -0
  206. package/dist/ui/pageLoader/index.js +1 -0
  207. package/dist/ui/paginate/Paginate.svelte +96 -0
  208. package/dist/ui/paginate/Paginate.svelte.d.ts +4 -0
  209. package/dist/ui/paginate/index.d.ts +1 -0
  210. package/dist/ui/paginate/index.js +1 -0
  211. package/dist/ui/tab/Tab.svelte +65 -0
  212. package/dist/ui/tab/Tab.svelte.d.ts +4 -0
  213. package/dist/ui/tab/index.d.ts +2 -0
  214. package/dist/ui/tab/index.js +2 -0
  215. package/dist/ui/tab/theme.d.ts +135 -0
  216. package/dist/ui/tab/theme.js +83 -0
  217. package/dist/ui/table/Table.svelte +385 -0
  218. package/dist/ui/table/Table.svelte.d.ts +4 -0
  219. package/dist/ui/table/index.d.ts +1 -0
  220. package/dist/ui/table/index.js +1 -0
  221. package/dist/ui/tableLoader/TableLoader.svelte +24 -0
  222. package/dist/ui/tableLoader/TableLoader.svelte.d.ts +13 -0
  223. package/dist/ui/tableLoader/index.d.ts +1 -0
  224. package/dist/ui/tableLoader/index.js +1 -0
  225. package/dist/ui/toolbar/Toolbar.svelte +59 -0
  226. package/dist/ui/toolbar/Toolbar.svelte.d.ts +17 -0
  227. package/dist/ui/toolbar/ToolbarButton.svelte +56 -0
  228. package/dist/ui/toolbar/ToolbarButton.svelte.d.ts +17 -0
  229. package/dist/ui/toolbar/ToolbarGroup.svelte +43 -0
  230. package/dist/ui/toolbar/ToolbarGroup.svelte.d.ts +16 -0
  231. package/dist/ui/toolbar/index.d.ts +4 -0
  232. package/dist/ui/toolbar/index.js +4 -0
  233. package/dist/ui/toolbar/theme.d.ts +320 -0
  234. package/dist/ui/toolbar/theme.js +155 -0
  235. package/dist/utils/Popper.svelte +257 -0
  236. package/dist/utils/Popper.svelte.d.ts +4 -0
  237. package/dist/utils/action.d.ts +16 -0
  238. package/dist/utils/action.js +107 -0
  239. package/dist/utils/closeButton/CloseButton.svelte +88 -0
  240. package/dist/utils/closeButton/CloseButton.svelte.d.ts +12 -0
  241. package/dist/utils/closeButton/index.d.ts +2 -0
  242. package/dist/utils/closeButton/index.js +2 -0
  243. package/dist/utils/closeButton/theme.d.ts +100 -0
  244. package/dist/utils/closeButton/theme.js +69 -0
  245. package/dist/utils/dismissable.d.ts +9 -0
  246. package/dist/utils/dismissable.js +16 -0
  247. package/dist/utils/index.d.ts +8 -0
  248. package/dist/utils/index.js +35 -0
  249. package/dist/utils/paginate.svelte.d.ts +22 -0
  250. package/dist/utils/paginate.svelte.js +167 -0
  251. package/dist/utils/singleSelection.svelte.d.ts +15 -0
  252. package/dist/utils/singleSelection.svelte.js +49 -0
  253. package/dist/utils/svelte-legos.d.ts +7 -0
  254. package/dist/utils/svelte-legos.js +14 -0
  255. package/package.json +30 -4
@@ -0,0 +1,290 @@
1
+ import type { Classes } from "../../themes/themeUtils.js";
2
+ import { type VariantProps } from "tailwind-variants";
3
+ export type RadioVariants = VariantProps<typeof radio> & Classes<typeof radio>;
4
+ export declare const radio: import("tailwind-variants").TVReturnType<{
5
+ color: {
6
+ primary: {
7
+ input: string;
8
+ };
9
+ secondary: {
10
+ input: string;
11
+ };
12
+ gray: {
13
+ input: string;
14
+ };
15
+ red: {
16
+ input: string;
17
+ };
18
+ orange: {
19
+ input: string;
20
+ };
21
+ amber: {
22
+ input: string;
23
+ };
24
+ yellow: {
25
+ input: string;
26
+ };
27
+ lime: {
28
+ input: string;
29
+ };
30
+ green: {
31
+ input: string;
32
+ };
33
+ emerald: {
34
+ input: string;
35
+ };
36
+ teal: {
37
+ input: string;
38
+ };
39
+ cyan: {
40
+ input: string;
41
+ };
42
+ sky: {
43
+ input: string;
44
+ };
45
+ blue: {
46
+ input: string;
47
+ };
48
+ indigo: {
49
+ input: string;
50
+ };
51
+ violet: {
52
+ input: string;
53
+ };
54
+ purple: {
55
+ input: string;
56
+ };
57
+ fuchsia: {
58
+ input: string;
59
+ };
60
+ pink: {
61
+ input: string;
62
+ };
63
+ rose: {
64
+ input: string;
65
+ };
66
+ };
67
+ tinted: {
68
+ true: {
69
+ input: string;
70
+ };
71
+ false: {
72
+ input: string;
73
+ };
74
+ };
75
+ custom: {
76
+ true: {
77
+ input: string;
78
+ };
79
+ false: {
80
+ input: string;
81
+ };
82
+ };
83
+ inline: {
84
+ true: {
85
+ label: string;
86
+ };
87
+ false: {
88
+ label: string;
89
+ };
90
+ };
91
+ }, {
92
+ input: string;
93
+ label: string;
94
+ }, undefined, {
95
+ color: {
96
+ primary: {
97
+ input: string;
98
+ };
99
+ secondary: {
100
+ input: string;
101
+ };
102
+ gray: {
103
+ input: string;
104
+ };
105
+ red: {
106
+ input: string;
107
+ };
108
+ orange: {
109
+ input: string;
110
+ };
111
+ amber: {
112
+ input: string;
113
+ };
114
+ yellow: {
115
+ input: string;
116
+ };
117
+ lime: {
118
+ input: string;
119
+ };
120
+ green: {
121
+ input: string;
122
+ };
123
+ emerald: {
124
+ input: string;
125
+ };
126
+ teal: {
127
+ input: string;
128
+ };
129
+ cyan: {
130
+ input: string;
131
+ };
132
+ sky: {
133
+ input: string;
134
+ };
135
+ blue: {
136
+ input: string;
137
+ };
138
+ indigo: {
139
+ input: string;
140
+ };
141
+ violet: {
142
+ input: string;
143
+ };
144
+ purple: {
145
+ input: string;
146
+ };
147
+ fuchsia: {
148
+ input: string;
149
+ };
150
+ pink: {
151
+ input: string;
152
+ };
153
+ rose: {
154
+ input: string;
155
+ };
156
+ };
157
+ tinted: {
158
+ true: {
159
+ input: string;
160
+ };
161
+ false: {
162
+ input: string;
163
+ };
164
+ };
165
+ custom: {
166
+ true: {
167
+ input: string;
168
+ };
169
+ false: {
170
+ input: string;
171
+ };
172
+ };
173
+ inline: {
174
+ true: {
175
+ label: string;
176
+ };
177
+ false: {
178
+ label: string;
179
+ };
180
+ };
181
+ }, {
182
+ input: string;
183
+ label: string;
184
+ }, import("tailwind-variants").TVReturnType<{
185
+ color: {
186
+ primary: {
187
+ input: string;
188
+ };
189
+ secondary: {
190
+ input: string;
191
+ };
192
+ gray: {
193
+ input: string;
194
+ };
195
+ red: {
196
+ input: string;
197
+ };
198
+ orange: {
199
+ input: string;
200
+ };
201
+ amber: {
202
+ input: string;
203
+ };
204
+ yellow: {
205
+ input: string;
206
+ };
207
+ lime: {
208
+ input: string;
209
+ };
210
+ green: {
211
+ input: string;
212
+ };
213
+ emerald: {
214
+ input: string;
215
+ };
216
+ teal: {
217
+ input: string;
218
+ };
219
+ cyan: {
220
+ input: string;
221
+ };
222
+ sky: {
223
+ input: string;
224
+ };
225
+ blue: {
226
+ input: string;
227
+ };
228
+ indigo: {
229
+ input: string;
230
+ };
231
+ violet: {
232
+ input: string;
233
+ };
234
+ purple: {
235
+ input: string;
236
+ };
237
+ fuchsia: {
238
+ input: string;
239
+ };
240
+ pink: {
241
+ input: string;
242
+ };
243
+ rose: {
244
+ input: string;
245
+ };
246
+ };
247
+ tinted: {
248
+ true: {
249
+ input: string;
250
+ };
251
+ false: {
252
+ input: string;
253
+ };
254
+ };
255
+ custom: {
256
+ true: {
257
+ input: string;
258
+ };
259
+ false: {
260
+ input: string;
261
+ };
262
+ };
263
+ inline: {
264
+ true: {
265
+ label: string;
266
+ };
267
+ false: {
268
+ label: string;
269
+ };
270
+ };
271
+ }, {
272
+ input: string;
273
+ label: string;
274
+ }, undefined, unknown, unknown, undefined>>;
275
+ export declare const radioButton: import("tailwind-variants").TVReturnType<{
276
+ inline: {
277
+ true: string;
278
+ false: string;
279
+ };
280
+ }, undefined, "", {
281
+ inline: {
282
+ true: string;
283
+ false: string;
284
+ };
285
+ }, undefined, import("tailwind-variants").TVReturnType<{
286
+ inline: {
287
+ true: string;
288
+ false: string;
289
+ };
290
+ }, undefined, "", unknown, unknown, undefined>>;
@@ -0,0 +1,95 @@
1
+ import { tv } from "tailwind-variants";
2
+ export const radio = tv({
3
+ slots: {
4
+ input: "flex items-center w-4 h-4 border-gray-300 dark:ring-offset-gray-800 focus:ring-2 mr-2",
5
+ label: "flex items-center"
6
+ },
7
+ variants: {
8
+ color: {
9
+ // primary, secondary, gray, red, orange, amber, yellow, lime, green, emerald, teal, cyan, sky, blue, indigo, violet, purple, fuchsia, pink, rose
10
+ primary: {
11
+ input: "text-primary-600 focus:ring-primary-500 dark:focus:ring-primary-600"
12
+ },
13
+ secondary: {
14
+ input: "text-secondary-600 focus:ring-secondary-500 dark:focus:ring-secondary-600"
15
+ },
16
+ gray: {
17
+ input: "text-gray-600 focus:ring-gray-500 dark:focus:ring-gray-600"
18
+ },
19
+ red: { input: "text-red-600 focus:ring-red-500 dark:focus:ring-red-600" },
20
+ orange: {
21
+ input: "text-orange-500 focus:ring-orange-500 dark:focus:ring-orange-600"
22
+ },
23
+ amber: {
24
+ input: "text-amber-600 focus:ring-amber-500 dark:focus:ring-amber-600"
25
+ },
26
+ yellow: {
27
+ input: "text-yellow-400 focus:ring-yellow-500 dark:focus:ring-yellow-600"
28
+ },
29
+ lime: {
30
+ input: "text-lime-600 focus:ring-lime-500 dark:focus:ring-lime-600"
31
+ },
32
+ green: {
33
+ input: "text-green-600 focus:ring-green-500 dark:focus:ring-green-600"
34
+ },
35
+ emerald: {
36
+ input: "text-emerald-600 focus:ring-emerald-500 dark:focus:ring-emerald-600"
37
+ },
38
+ teal: {
39
+ input: "text-teal-600 focus:ring-teal-500 dark:focus:ring-teal-600"
40
+ },
41
+ cyan: {
42
+ input: "text-cyan-600 focus:ring-cyan-500 dark:focus:ring-cyan-600"
43
+ },
44
+ sky: { input: "text-sky-600 focus:ring-sky-500 dark:focus:ring-sky-600" },
45
+ blue: {
46
+ input: "text-blue-600 focus:ring-blue-500 dark:focus:ring-blue-600"
47
+ },
48
+ indigo: {
49
+ input: "text-indigo-600 focus:ring-indigo-500 dark:focus:ring-indigo-600"
50
+ },
51
+ violet: {
52
+ input: "text-violet-600 focus:ring-violet-500 dark:focus:ring-violet-600"
53
+ },
54
+ purple: {
55
+ input: "text-purple-600 focus:ring-purple-500 dark:focus:ring-purple-600"
56
+ },
57
+ fuchsia: {
58
+ input: "text-fuchsia-600 focus:ring-fuchsia-500 dark:focus:ring-fuchsia-600"
59
+ },
60
+ pink: {
61
+ input: "text-pink-600 focus:ring-pink-500 dark:focus:ring-pink-600"
62
+ },
63
+ rose: {
64
+ input: "text-rose-600 focus:ring-rose-500 dark:focus:ring-rose-600"
65
+ }
66
+ },
67
+ tinted: {
68
+ true: { input: "dark:bg-gray-600 dark:border-gray-500" },
69
+ false: { input: "dark:bg-gray-700 dark:border-gray-600" }
70
+ },
71
+ custom: {
72
+ true: { input: "sr-only peer" },
73
+ false: { input: "relative" }
74
+ },
75
+ inline: {
76
+ true: { label: "inline-flex" },
77
+ false: { label: "flex" }
78
+ }
79
+ },
80
+ defaultVariants: {
81
+ color: "primary"
82
+ }
83
+ });
84
+ export const radioButton = tv({
85
+ base: "",
86
+ variants: {
87
+ inline: {
88
+ true: "inline-flex",
89
+ false: "flex"
90
+ }
91
+ },
92
+ defaultVariants: {
93
+ inline: true
94
+ }
95
+ });
@@ -0,0 +1,50 @@
1
+ <script lang="ts">
2
+ import type { SelectProps } from '../../types/index.js';
3
+ import Svelecte from 'svelecte';
4
+
5
+ let {
6
+ options = [],
7
+ placeholder = '',
8
+ valueAsObject = false,
9
+ creatable = false,
10
+ multiple = false,
11
+ searchable = true,
12
+ labelAsValue = false,
13
+ disabled = false,
14
+ clearable = true,
15
+ onChange,
16
+ hasError,
17
+ minHeight,
18
+ hasSuccess,
19
+ ...restProps
20
+ }: SelectProps = $props();
21
+ </script>
22
+
23
+ <div
24
+ style="--sv-min-height: {minHeight}px; --sv-border: 1px solid {hasError
25
+ ? 'red'
26
+ : hasSuccess
27
+ ? 'green'
28
+ : '#ccc'};"
29
+ >
30
+ <Svelecte
31
+ {options}
32
+ {placeholder}
33
+ {valueAsObject}
34
+ {creatable}
35
+ {multiple}
36
+ {clearable}
37
+ {onChange}
38
+ {disabled}
39
+ {searchable}
40
+ {...restProps}
41
+ />
42
+ </div>
43
+
44
+ <!-- <style>
45
+ div :global(.sv-input) {
46
+ min-height: var(--sv-min-height);
47
+ border: var(--sv-border, 1px solid #ccc);
48
+ border-radius: 5px;
49
+ }
50
+ </style> -->
@@ -0,0 +1,4 @@
1
+ import type { SelectProps } from '../../types/index.js';
2
+ declare const Select: import("svelte").Component<SelectProps, {}, "">;
3
+ type Select = ReturnType<typeof Select>;
4
+ export default Select;
@@ -0,0 +1 @@
1
+ export { default as Select } from './Select.svelte';
@@ -0,0 +1 @@
1
+ export { default as Select } from './Select.svelte';
@@ -0,0 +1,165 @@
1
+ <script lang="ts">
2
+ import { getTheme, warnThemeDeprecation } from '../../themes/themeUtils.js';
3
+ import clsx from 'clsx';
4
+ import { textarea } from './index.js';
5
+ import { CloseButton, type TextareaProps } from '../../index.js';
6
+ import { createDismissableContext } from '../../utils/dismissable.js';
7
+
8
+ let {
9
+ header,
10
+ footer,
11
+ addon,
12
+ value = $bindable(),
13
+ elementRef = $bindable(),
14
+ divClass,
15
+ innerClass,
16
+ headerClass,
17
+ footerClass,
18
+ addonClass,
19
+ disabled,
20
+ class: className,
21
+ classes,
22
+ clearable,
23
+ clearableSvgClass,
24
+ clearableColor = 'none',
25
+ clearableClass,
26
+ clearableOnClick,
27
+ textareaClass,
28
+ ...restProps
29
+ }: TextareaProps = $props();
30
+
31
+ warnThemeDeprecation(
32
+ 'Textarea',
33
+ {
34
+ divClass,
35
+ innerClass,
36
+ headerClass,
37
+ footerClass,
38
+ addonClass,
39
+ textareaClass,
40
+ clearableClass,
41
+ clearableSvgClass
42
+ },
43
+ {
44
+ divClass: 'div',
45
+ innerClass: 'inner',
46
+ headerClass: 'header',
47
+ footerClass: 'footer',
48
+ addonClass: 'addon',
49
+ textareaClass: 'class',
50
+ clearableClass: 'close',
51
+ clearableSvgClass: 'svg'
52
+ }
53
+ );
54
+ const styling = $derived(
55
+ classes ?? {
56
+ div: divClass,
57
+ inner: innerClass,
58
+ header: headerClass,
59
+ footer: footerClass,
60
+ addon: addonClass,
61
+ textarea: textareaClass,
62
+ close: clearableClass,
63
+ svg: clearableSvgClass
64
+ }
65
+ );
66
+
67
+ const theme = getTheme('textarea');
68
+
69
+ let hasHeader = $derived(!!header);
70
+ let hasFooter = $derived(!!footer);
71
+ let hasAddon = $derived(!!addon);
72
+ let wrapped: boolean = $derived(hasHeader || hasFooter || hasAddon);
73
+
74
+ const {
75
+ div,
76
+ base,
77
+ wrapper,
78
+ inner,
79
+ header: headerCls,
80
+ footer: footerCls,
81
+ addon: addonCls,
82
+ close
83
+ } = $derived(textarea({ wrapped, hasHeader, hasFooter }));
84
+
85
+ const clearAll = () => {
86
+ if (elementRef) {
87
+ elementRef.value = '';
88
+ value = undefined;
89
+ }
90
+ if (clearableOnClick) clearableOnClick();
91
+ };
92
+
93
+ createDismissableContext(clearAll);
94
+ </script>
95
+
96
+ <div class={div({ class: clsx(theme?.div, styling.div) })}>
97
+ {#if !wrapped}
98
+ <textarea
99
+ bind:value
100
+ bind:this={elementRef}
101
+ {disabled}
102
+ {...restProps}
103
+ class={wrapper({ class: clsx(className, classes?.wrapper) })}
104
+ ></textarea>
105
+ {:else}
106
+ <div class={wrapper({ class: clsx(theme?.wrapper, classes?.wrapper) })}>
107
+ {#if header}
108
+ <div class={headerCls({ class: clsx(theme?.header, styling.header) })}>
109
+ {@render header()}
110
+ </div>
111
+ {/if}
112
+ <div class={inner({ class: clsx(theme?.inner, styling.inner) })}>
113
+ {#if addon}
114
+ <div class={addonCls({ class: clsx(theme?.addon, styling.addon) })}>
115
+ {@render addon()}
116
+ </div>
117
+ {/if}
118
+ <textarea
119
+ bind:value
120
+ bind:this={elementRef}
121
+ {disabled}
122
+ {...restProps}
123
+ class={base({ class: clsx(theme?.base, className) })}
124
+ ></textarea>
125
+ </div>
126
+ {#if footer}
127
+ <div class={footerCls({ class: clsx(theme?.footer, styling.footer) })}>
128
+ {@render footer()}
129
+ </div>
130
+ {/if}
131
+ </div>
132
+ {/if}
133
+ {#if value !== undefined && value !== '' && clearable}
134
+ <CloseButton
135
+ class={close({ class: clsx(theme?.close, styling.close) })}
136
+ color={clearableColor}
137
+ aria-label="Clear search value"
138
+ svgClass={clsx(styling.svg)}
139
+ />
140
+ {/if}
141
+ </div>
142
+
143
+ <!--
144
+ ## Props
145
+ @prop header
146
+ @prop footer
147
+ @prop addon
148
+ @prop value = $bindable()
149
+ @prop elementRef = $bindable()
150
+ @prop divClass
151
+ @prop innerClass
152
+ @prop headerClass
153
+ @prop footerClass
154
+ @prop addonClass
155
+ @prop disabled
156
+ @prop class: className
157
+ @prop classes
158
+ @prop clearable
159
+ @prop clearableSvgClass
160
+ @prop clearableColor = "none"
161
+ @prop clearableClass
162
+ @prop clearableOnClick
163
+ @prop textareaClass
164
+ @prop ...restProps
165
+ -->
@@ -0,0 +1,4 @@
1
+ import { type TextareaProps } from '../../index.js';
2
+ declare const Textarea: import("svelte").Component<TextareaProps, {}, "value" | "elementRef">;
3
+ type Textarea = ReturnType<typeof Textarea>;
4
+ export default Textarea;
@@ -0,0 +1,2 @@
1
+ export { default as Textarea } from "./Textarea.svelte";
2
+ export { textarea } from "./theme.js";
@@ -0,0 +1,2 @@
1
+ export { default as Textarea } from "./Textarea.svelte";
2
+ export { textarea } from "./theme.js";