@vielzeug/buildit 2.0.0

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 (792) hide show
  1. package/README.md +124 -0
  2. package/dist/accordion-item.cjs +32 -0
  3. package/dist/accordion-item.cjs.map +1 -0
  4. package/dist/accordion-item.js +72 -0
  5. package/dist/accordion-item.js.map +1 -0
  6. package/dist/accordion.cjs +2 -0
  7. package/dist/accordion.cjs.map +1 -0
  8. package/dist/accordion.js +37 -0
  9. package/dist/accordion.js.map +1 -0
  10. package/dist/alert.cjs +31 -0
  11. package/dist/alert.cjs.map +1 -0
  12. package/dist/alert.js +85 -0
  13. package/dist/alert.js.map +1 -0
  14. package/dist/avatar.cjs +37 -0
  15. package/dist/avatar.cjs.map +1 -0
  16. package/dist/avatar.js +123 -0
  17. package/dist/avatar.js.map +1 -0
  18. package/dist/badge.cjs +7 -0
  19. package/dist/badge.cjs.map +1 -0
  20. package/dist/badge.js +60 -0
  21. package/dist/badge.js.map +1 -0
  22. package/dist/box.cjs +2 -0
  23. package/dist/box.cjs.map +1 -0
  24. package/dist/box.js +22 -0
  25. package/dist/box.js.map +1 -0
  26. package/dist/breadcrumb.cjs +21 -0
  27. package/dist/breadcrumb.cjs.map +1 -0
  28. package/dist/breadcrumb.js +58 -0
  29. package/dist/breadcrumb.js.map +1 -0
  30. package/dist/buildit.cjs +1892 -0
  31. package/dist/buildit.cjs.map +1 -0
  32. package/dist/buildit.js +1892 -0
  33. package/dist/buildit.js.map +1 -0
  34. package/dist/button-group.cjs +6 -0
  35. package/dist/button-group.cjs.map +1 -0
  36. package/dist/button-group.js +31 -0
  37. package/dist/button-group.js.map +1 -0
  38. package/dist/button.cjs +30 -0
  39. package/dist/button.cjs.map +1 -0
  40. package/dist/button.js +115 -0
  41. package/dist/button.js.map +1 -0
  42. package/dist/card.cjs +23 -0
  43. package/dist/card.cjs.map +1 -0
  44. package/dist/card.js +99 -0
  45. package/dist/card.js.map +1 -0
  46. package/dist/checkbox-group.cjs +20 -0
  47. package/dist/checkbox-group.cjs.map +1 -0
  48. package/dist/checkbox-group.js +88 -0
  49. package/dist/checkbox-group.js.map +1 -0
  50. package/dist/checkbox.cjs +37 -0
  51. package/dist/checkbox.cjs.map +1 -0
  52. package/dist/checkbox.js +115 -0
  53. package/dist/checkbox.js.map +1 -0
  54. package/dist/chip.cjs +56 -0
  55. package/dist/chip.cjs.map +1 -0
  56. package/dist/chip.js +140 -0
  57. package/dist/chip.js.map +1 -0
  58. package/dist/combobox.cjs +93 -0
  59. package/dist/combobox.cjs.map +1 -0
  60. package/dist/combobox.js +401 -0
  61. package/dist/combobox.js.map +1 -0
  62. package/dist/content/avatar/avatar-group.css?inline.cjs +2 -0
  63. package/dist/content/avatar/avatar-group.css?inline.cjs.map +1 -0
  64. package/dist/content/avatar/avatar-group.css?inline.js +6 -0
  65. package/dist/content/avatar/avatar-group.css?inline.js.map +1 -0
  66. package/dist/content/avatar/avatar.css?inline.cjs +2 -0
  67. package/dist/content/avatar/avatar.css?inline.cjs.map +1 -0
  68. package/dist/content/avatar/avatar.css?inline.js +6 -0
  69. package/dist/content/avatar/avatar.css?inline.js.map +1 -0
  70. package/dist/content/avatar/avatar.d.ts +78 -0
  71. package/dist/content/avatar/avatar.d.ts.map +1 -0
  72. package/dist/content/breadcrumb/breadcrumb-item.css?inline.cjs +2 -0
  73. package/dist/content/breadcrumb/breadcrumb-item.css?inline.cjs.map +1 -0
  74. package/dist/content/breadcrumb/breadcrumb-item.css?inline.js +6 -0
  75. package/dist/content/breadcrumb/breadcrumb-item.css?inline.js.map +1 -0
  76. package/dist/content/breadcrumb/breadcrumb.css?inline.cjs +2 -0
  77. package/dist/content/breadcrumb/breadcrumb.css?inline.cjs.map +1 -0
  78. package/dist/content/breadcrumb/breadcrumb.css?inline.js +6 -0
  79. package/dist/content/breadcrumb/breadcrumb.css?inline.js.map +1 -0
  80. package/dist/content/breadcrumb/breadcrumb.d.ts +36 -0
  81. package/dist/content/breadcrumb/breadcrumb.d.ts.map +1 -0
  82. package/dist/content/card/card.css?inline.cjs +2 -0
  83. package/dist/content/card/card.css?inline.cjs.map +1 -0
  84. package/dist/content/card/card.css?inline.js +6 -0
  85. package/dist/content/card/card.css?inline.js.map +1 -0
  86. package/dist/content/card/card.d.ts +66 -0
  87. package/dist/content/card/card.d.ts.map +1 -0
  88. package/dist/content/index.cjs +1 -0
  89. package/dist/content/index.d.ts +15 -0
  90. package/dist/content/index.d.ts.map +1 -0
  91. package/dist/content/index.js +7 -0
  92. package/dist/content/pagination/pagination.css?inline.cjs +2 -0
  93. package/dist/content/pagination/pagination.css?inline.cjs.map +1 -0
  94. package/dist/content/pagination/pagination.css?inline.js +6 -0
  95. package/dist/content/pagination/pagination.css?inline.js.map +1 -0
  96. package/dist/content/pagination/pagination.d.ts +56 -0
  97. package/dist/content/pagination/pagination.d.ts.map +1 -0
  98. package/dist/content/separator/separator.css?inline.cjs +2 -0
  99. package/dist/content/separator/separator.css?inline.cjs.map +1 -0
  100. package/dist/content/separator/separator.css?inline.js +6 -0
  101. package/dist/content/separator/separator.css?inline.js.map +1 -0
  102. package/dist/content/separator/separator.d.ts +35 -0
  103. package/dist/content/separator/separator.d.ts.map +1 -0
  104. package/dist/content/table/table.css?inline.cjs +2 -0
  105. package/dist/content/table/table.css?inline.cjs.map +1 -0
  106. package/dist/content/table/table.css?inline.js +6 -0
  107. package/dist/content/table/table.css?inline.js.map +1 -0
  108. package/dist/content/table/table.d.ts +69 -0
  109. package/dist/content/table/table.d.ts.map +1 -0
  110. package/dist/content/text/text.css?inline.cjs +2 -0
  111. package/dist/content/text/text.css?inline.cjs.map +1 -0
  112. package/dist/content/text/text.css?inline.js +6 -0
  113. package/dist/content/text/text.css?inline.js.map +1 -0
  114. package/dist/content/text/text.d.ts +55 -0
  115. package/dist/content/text/text.d.ts.map +1 -0
  116. package/dist/craftit/dist/core/internal.cjs +2 -0
  117. package/dist/craftit/dist/core/internal.cjs.map +1 -0
  118. package/dist/craftit/dist/core/internal.js +25 -0
  119. package/dist/craftit/dist/core/internal.js.map +1 -0
  120. package/dist/craftit/dist/core/runtime-bindings.cjs +2 -0
  121. package/dist/craftit/dist/core/runtime-bindings.cjs.map +1 -0
  122. package/dist/craftit/dist/core/runtime-bindings.js +38 -0
  123. package/dist/craftit/dist/core/runtime-bindings.js.map +1 -0
  124. package/dist/craftit/dist/core/runtime-lifecycle.cjs +2 -0
  125. package/dist/craftit/dist/core/runtime-lifecycle.cjs.map +1 -0
  126. package/dist/craftit/dist/core/runtime-lifecycle.js +68 -0
  127. package/dist/craftit/dist/core/runtime-lifecycle.js.map +1 -0
  128. package/dist/craftit/dist/core/runtime.cjs +1 -0
  129. package/dist/craftit/dist/core/runtime.js +2 -0
  130. package/dist/craftit/dist/core/utilities.cjs +2 -0
  131. package/dist/craftit/dist/core/utilities.cjs.map +1 -0
  132. package/dist/craftit/dist/core/utilities.js +12 -0
  133. package/dist/craftit/dist/core/utilities.js.map +1 -0
  134. package/dist/craftit/dist/directives/attr.cjs +2 -0
  135. package/dist/craftit/dist/directives/attr.cjs.map +1 -0
  136. package/dist/craftit/dist/directives/attr.js +13 -0
  137. package/dist/craftit/dist/directives/attr.js.map +1 -0
  138. package/dist/craftit/dist/directives/bind.cjs +1 -0
  139. package/dist/craftit/dist/directives/bind.js +3 -0
  140. package/dist/craftit/dist/directives/choose.cjs +1 -0
  141. package/dist/craftit/dist/directives/choose.js +1 -0
  142. package/dist/craftit/dist/directives/classes.cjs +2 -0
  143. package/dist/craftit/dist/directives/classes.cjs.map +1 -0
  144. package/dist/craftit/dist/directives/classes.js +12 -0
  145. package/dist/craftit/dist/directives/classes.js.map +1 -0
  146. package/dist/craftit/dist/directives/each.cjs +2 -0
  147. package/dist/craftit/dist/directives/each.cjs.map +1 -0
  148. package/dist/craftit/dist/directives/each.js +96 -0
  149. package/dist/craftit/dist/directives/each.js.map +1 -0
  150. package/dist/craftit/dist/directives/index.cjs +1 -0
  151. package/dist/craftit/dist/directives/index.js +12 -0
  152. package/dist/craftit/dist/directives/match.cjs +1 -0
  153. package/dist/craftit/dist/directives/match.js +1 -0
  154. package/dist/craftit/dist/directives/memo.cjs +1 -0
  155. package/dist/craftit/dist/directives/memo.js +1 -0
  156. package/dist/craftit/dist/directives/raw.cjs +1 -0
  157. package/dist/craftit/dist/directives/raw.js +2 -0
  158. package/dist/craftit/dist/directives/spread.cjs +2 -0
  159. package/dist/craftit/dist/directives/spread.cjs.map +1 -0
  160. package/dist/craftit/dist/directives/spread.js +30 -0
  161. package/dist/craftit/dist/directives/spread.js.map +1 -0
  162. package/dist/craftit/dist/directives/style.cjs +1 -0
  163. package/dist/craftit/dist/directives/style.js +1 -0
  164. package/dist/craftit/dist/directives/until.cjs +1 -0
  165. package/dist/craftit/dist/directives/until.js +1 -0
  166. package/dist/craftit/dist/directives/when.cjs +2 -0
  167. package/dist/craftit/dist/directives/when.cjs.map +1 -0
  168. package/dist/craftit/dist/directives/when.js +14 -0
  169. package/dist/craftit/dist/directives/when.js.map +1 -0
  170. package/dist/craftit/dist/labs/a11y.cjs +2 -0
  171. package/dist/craftit/dist/labs/a11y.cjs.map +1 -0
  172. package/dist/craftit/dist/labs/a11y.js +38 -0
  173. package/dist/craftit/dist/labs/a11y.js.map +1 -0
  174. package/dist/craftit/dist/labs/list.cjs +2 -0
  175. package/dist/craftit/dist/labs/list.cjs.map +1 -0
  176. package/dist/craftit/dist/labs/list.js +87 -0
  177. package/dist/craftit/dist/labs/list.js.map +1 -0
  178. package/dist/craftit/dist/labs/observers.cjs +2 -0
  179. package/dist/craftit/dist/labs/observers.cjs.map +1 -0
  180. package/dist/craftit/dist/labs/observers.js +28 -0
  181. package/dist/craftit/dist/labs/observers.js.map +1 -0
  182. package/dist/craftit/dist/labs/overlay.cjs +2 -0
  183. package/dist/craftit/dist/labs/overlay.cjs.map +1 -0
  184. package/dist/craftit/dist/labs/overlay.js +49 -0
  185. package/dist/craftit/dist/labs/overlay.js.map +1 -0
  186. package/dist/craftit/dist/labs/selectable.cjs +2 -0
  187. package/dist/craftit/dist/labs/selectable.cjs.map +1 -0
  188. package/dist/craftit/dist/labs/selectable.js +29 -0
  189. package/dist/craftit/dist/labs/selectable.js.map +1 -0
  190. package/dist/craftit/dist/labs/selection.cjs +2 -0
  191. package/dist/craftit/dist/labs/selection.cjs.map +1 -0
  192. package/dist/craftit/dist/labs/selection.js +42 -0
  193. package/dist/craftit/dist/labs/selection.js.map +1 -0
  194. package/dist/craftit/dist/labs.cjs +1 -0
  195. package/dist/craftit/dist/labs.js +6 -0
  196. package/dist/custom-elements.json +2321 -0
  197. package/dist/dialog.cjs +33 -0
  198. package/dist/dialog.cjs.map +1 -0
  199. package/dist/dialog.js +94 -0
  200. package/dist/dialog.js.map +1 -0
  201. package/dist/disclosure/accordion/accordion.css?inline.cjs +2 -0
  202. package/dist/disclosure/accordion/accordion.css?inline.cjs.map +1 -0
  203. package/dist/disclosure/accordion/accordion.css?inline.js +6 -0
  204. package/dist/disclosure/accordion/accordion.css?inline.js.map +1 -0
  205. package/dist/disclosure/accordion/accordion.d.ts +47 -0
  206. package/dist/disclosure/accordion/accordion.d.ts.map +1 -0
  207. package/dist/disclosure/accordion-item/accordion-item.css?inline.cjs +2 -0
  208. package/dist/disclosure/accordion-item/accordion-item.css?inline.cjs.map +1 -0
  209. package/dist/disclosure/accordion-item/accordion-item.css?inline.js +6 -0
  210. package/dist/disclosure/accordion-item/accordion-item.css?inline.js.map +1 -0
  211. package/dist/disclosure/accordion-item/accordion-item.d.ts +62 -0
  212. package/dist/disclosure/accordion-item/accordion-item.d.ts.map +1 -0
  213. package/dist/disclosure/index.cjs +1 -0
  214. package/dist/disclosure/index.d.ts +11 -0
  215. package/dist/disclosure/index.d.ts.map +1 -0
  216. package/dist/disclosure/index.js +5 -0
  217. package/dist/disclosure/tab-item/tab-item.css?inline.cjs +2 -0
  218. package/dist/disclosure/tab-item/tab-item.css?inline.cjs.map +1 -0
  219. package/dist/disclosure/tab-item/tab-item.css?inline.js +6 -0
  220. package/dist/disclosure/tab-item/tab-item.css?inline.js.map +1 -0
  221. package/dist/disclosure/tab-item/tab-item.d.ts +39 -0
  222. package/dist/disclosure/tab-item/tab-item.d.ts.map +1 -0
  223. package/dist/disclosure/tab-panel/tab-panel.css?inline.cjs +2 -0
  224. package/dist/disclosure/tab-panel/tab-panel.css?inline.cjs.map +1 -0
  225. package/dist/disclosure/tab-panel/tab-panel.css?inline.js +6 -0
  226. package/dist/disclosure/tab-panel/tab-panel.css?inline.js.map +1 -0
  227. package/dist/disclosure/tab-panel/tab-panel.d.ts +30 -0
  228. package/dist/disclosure/tab-panel/tab-panel.d.ts.map +1 -0
  229. package/dist/disclosure/tabs/tabs.css?inline.cjs +2 -0
  230. package/dist/disclosure/tabs/tabs.css?inline.cjs.map +1 -0
  231. package/dist/disclosure/tabs/tabs.css?inline.js +6 -0
  232. package/dist/disclosure/tabs/tabs.css?inline.js.map +1 -0
  233. package/dist/disclosure/tabs/tabs.d.ts +64 -0
  234. package/dist/disclosure/tabs/tabs.d.ts.map +1 -0
  235. package/dist/drawer.cjs +31 -0
  236. package/dist/drawer.cjs.map +1 -0
  237. package/dist/drawer.js +98 -0
  238. package/dist/drawer.js.map +1 -0
  239. package/dist/feedback/alert/alert.css?inline.cjs +2 -0
  240. package/dist/feedback/alert/alert.css?inline.cjs.map +1 -0
  241. package/dist/feedback/alert/alert.css?inline.js +6 -0
  242. package/dist/feedback/alert/alert.css?inline.js.map +1 -0
  243. package/dist/feedback/alert/alert.d.ts +63 -0
  244. package/dist/feedback/alert/alert.d.ts.map +1 -0
  245. package/dist/feedback/badge/badge.css?inline.cjs +2 -0
  246. package/dist/feedback/badge/badge.css?inline.cjs.map +1 -0
  247. package/dist/feedback/badge/badge.css?inline.js +6 -0
  248. package/dist/feedback/badge/badge.css?inline.js.map +1 -0
  249. package/dist/feedback/badge/badge.d.ts +67 -0
  250. package/dist/feedback/badge/badge.d.ts.map +1 -0
  251. package/dist/feedback/chip/chip.css?inline.cjs +2 -0
  252. package/dist/feedback/chip/chip.css?inline.cjs.map +1 -0
  253. package/dist/feedback/chip/chip.css?inline.js +6 -0
  254. package/dist/feedback/chip/chip.css?inline.js.map +1 -0
  255. package/dist/feedback/chip/chip.d.ts +124 -0
  256. package/dist/feedback/chip/chip.d.ts.map +1 -0
  257. package/dist/feedback/index.cjs +1 -0
  258. package/dist/feedback/index.d.ts +13 -0
  259. package/dist/feedback/index.d.ts.map +1 -0
  260. package/dist/feedback/index.js +6 -0
  261. package/dist/feedback/progress/progress.css?inline.cjs +2 -0
  262. package/dist/feedback/progress/progress.css?inline.cjs.map +1 -0
  263. package/dist/feedback/progress/progress.css?inline.js +6 -0
  264. package/dist/feedback/progress/progress.css?inline.js.map +1 -0
  265. package/dist/feedback/progress/progress.d.ts +64 -0
  266. package/dist/feedback/progress/progress.d.ts.map +1 -0
  267. package/dist/feedback/skeleton/skeleton.css?inline.cjs +2 -0
  268. package/dist/feedback/skeleton/skeleton.css?inline.cjs.map +1 -0
  269. package/dist/feedback/skeleton/skeleton.css?inline.js +6 -0
  270. package/dist/feedback/skeleton/skeleton.css?inline.js.map +1 -0
  271. package/dist/feedback/skeleton/skeleton.d.ts +61 -0
  272. package/dist/feedback/skeleton/skeleton.d.ts.map +1 -0
  273. package/dist/feedback/toast/index.d.ts +2 -0
  274. package/dist/feedback/toast/index.d.ts.map +1 -0
  275. package/dist/feedback/toast/toast.css?inline.cjs +2 -0
  276. package/dist/feedback/toast/toast.css?inline.cjs.map +1 -0
  277. package/dist/feedback/toast/toast.css?inline.js +6 -0
  278. package/dist/feedback/toast/toast.css?inline.js.map +1 -0
  279. package/dist/feedback/toast/toast.d.ts +95 -0
  280. package/dist/feedback/toast/toast.d.ts.map +1 -0
  281. package/dist/file-input.cjs +66 -0
  282. package/dist/file-input.cjs.map +1 -0
  283. package/dist/file-input.js +210 -0
  284. package/dist/file-input.js.map +1 -0
  285. package/dist/form.cjs +11 -0
  286. package/dist/form.cjs.map +1 -0
  287. package/dist/form.js +49 -0
  288. package/dist/form.js.map +1 -0
  289. package/dist/grid-item.cjs +2 -0
  290. package/dist/grid-item.cjs.map +1 -0
  291. package/dist/grid-item.js +28 -0
  292. package/dist/grid-item.js.map +1 -0
  293. package/dist/grid.cjs +2 -0
  294. package/dist/grid.cjs.map +1 -0
  295. package/dist/grid.js +90 -0
  296. package/dist/grid.js.map +1 -0
  297. package/dist/icons.cjs +176 -0
  298. package/dist/icons.cjs.map +1 -0
  299. package/dist/icons.d.ts +15 -0
  300. package/dist/icons.d.ts.map +1 -0
  301. package/dist/icons.js +181 -0
  302. package/dist/icons.js.map +1 -0
  303. package/dist/index.cjs +1 -0
  304. package/dist/index.d.ts +9 -0
  305. package/dist/index.d.ts.map +1 -0
  306. package/dist/index.js +53 -0
  307. package/dist/input.cjs +48 -0
  308. package/dist/input.cjs.map +1 -0
  309. package/dist/input.js +182 -0
  310. package/dist/input.js.map +1 -0
  311. package/dist/inputs/button/button.css?inline.cjs +2 -0
  312. package/dist/inputs/button/button.css?inline.cjs.map +1 -0
  313. package/dist/inputs/button/button.css?inline.js +6 -0
  314. package/dist/inputs/button/button.css?inline.js.map +1 -0
  315. package/dist/inputs/button/button.d.ts +73 -0
  316. package/dist/inputs/button/button.d.ts.map +1 -0
  317. package/dist/inputs/button-group/button-group.css?inline.cjs +2 -0
  318. package/dist/inputs/button-group/button-group.css?inline.cjs.map +1 -0
  319. package/dist/inputs/button-group/button-group.css?inline.js +6 -0
  320. package/dist/inputs/button-group/button-group.css?inline.js.map +1 -0
  321. package/dist/inputs/button-group/button-group.d.ts +52 -0
  322. package/dist/inputs/button-group/button-group.d.ts.map +1 -0
  323. package/dist/inputs/checkbox/checkbox.css?inline.cjs +2 -0
  324. package/dist/inputs/checkbox/checkbox.css?inline.cjs.map +1 -0
  325. package/dist/inputs/checkbox/checkbox.css?inline.js +6 -0
  326. package/dist/inputs/checkbox/checkbox.css?inline.js.map +1 -0
  327. package/dist/inputs/checkbox/checkbox.d.ts +43 -0
  328. package/dist/inputs/checkbox/checkbox.d.ts.map +1 -0
  329. package/dist/inputs/checkbox-group/checkbox-group.css?inline.cjs +2 -0
  330. package/dist/inputs/checkbox-group/checkbox-group.css?inline.cjs.map +1 -0
  331. package/dist/inputs/checkbox-group/checkbox-group.css?inline.js +6 -0
  332. package/dist/inputs/checkbox-group/checkbox-group.css?inline.js.map +1 -0
  333. package/dist/inputs/checkbox-group/checkbox-group.d.ts +56 -0
  334. package/dist/inputs/checkbox-group/checkbox-group.d.ts.map +1 -0
  335. package/dist/inputs/combobox/combobox-options.cjs +2 -0
  336. package/dist/inputs/combobox/combobox-options.cjs.map +1 -0
  337. package/dist/inputs/combobox/combobox-options.d.ts +7 -0
  338. package/dist/inputs/combobox/combobox-options.d.ts.map +1 -0
  339. package/dist/inputs/combobox/combobox-options.js +36 -0
  340. package/dist/inputs/combobox/combobox-options.js.map +1 -0
  341. package/dist/inputs/combobox/combobox-virtualizer.cjs +2 -0
  342. package/dist/inputs/combobox/combobox-virtualizer.cjs.map +1 -0
  343. package/dist/inputs/combobox/combobox-virtualizer.d.ts +20 -0
  344. package/dist/inputs/combobox/combobox-virtualizer.d.ts.map +1 -0
  345. package/dist/inputs/combobox/combobox-virtualizer.js +71 -0
  346. package/dist/inputs/combobox/combobox-virtualizer.js.map +1 -0
  347. package/dist/inputs/combobox/combobox.css?inline.cjs +2 -0
  348. package/dist/inputs/combobox/combobox.css?inline.cjs.map +1 -0
  349. package/dist/inputs/combobox/combobox.css?inline.js +6 -0
  350. package/dist/inputs/combobox/combobox.css?inline.js.map +1 -0
  351. package/dist/inputs/combobox/combobox.d.ts +28 -0
  352. package/dist/inputs/combobox/combobox.d.ts.map +1 -0
  353. package/dist/inputs/combobox/combobox.types.d.ts +36 -0
  354. package/dist/inputs/combobox/combobox.types.d.ts.map +1 -0
  355. package/dist/inputs/file-input/file-input.css?inline.cjs +2 -0
  356. package/dist/inputs/file-input/file-input.css?inline.cjs.map +1 -0
  357. package/dist/inputs/file-input/file-input.css?inline.js +6 -0
  358. package/dist/inputs/file-input/file-input.css?inline.js.map +1 -0
  359. package/dist/inputs/file-input/file-input.d.ts +94 -0
  360. package/dist/inputs/file-input/file-input.d.ts.map +1 -0
  361. package/dist/inputs/form/form.css?inline.cjs +2 -0
  362. package/dist/inputs/form/form.css?inline.cjs.map +1 -0
  363. package/dist/inputs/form/form.css?inline.js +6 -0
  364. package/dist/inputs/form/form.css?inline.js.map +1 -0
  365. package/dist/inputs/form/form.d.ts +61 -0
  366. package/dist/inputs/form/form.d.ts.map +1 -0
  367. package/dist/inputs/index.cjs +1 -0
  368. package/dist/inputs/index.d.ts +38 -0
  369. package/dist/inputs/index.d.ts.map +1 -0
  370. package/dist/inputs/index.js +18 -0
  371. package/dist/inputs/input/input.css?inline.cjs +2 -0
  372. package/dist/inputs/input/input.css?inline.cjs.map +1 -0
  373. package/dist/inputs/input/input.css?inline.js +6 -0
  374. package/dist/inputs/input/input.css?inline.js.map +1 -0
  375. package/dist/inputs/input/input.d.ts +82 -0
  376. package/dist/inputs/input/input.d.ts.map +1 -0
  377. package/dist/inputs/number-input/number-input.css?inline.cjs +2 -0
  378. package/dist/inputs/number-input/number-input.css?inline.cjs.map +1 -0
  379. package/dist/inputs/number-input/number-input.css?inline.js +6 -0
  380. package/dist/inputs/number-input/number-input.css?inline.js.map +1 -0
  381. package/dist/inputs/number-input/number-input.d.ts +76 -0
  382. package/dist/inputs/number-input/number-input.d.ts.map +1 -0
  383. package/dist/inputs/otp-input/otp-input.css?inline.cjs +2 -0
  384. package/dist/inputs/otp-input/otp-input.css?inline.cjs.map +1 -0
  385. package/dist/inputs/otp-input/otp-input.css?inline.js +6 -0
  386. package/dist/inputs/otp-input/otp-input.css?inline.js.map +1 -0
  387. package/dist/inputs/otp-input/otp-input.d.ts +71 -0
  388. package/dist/inputs/otp-input/otp-input.d.ts.map +1 -0
  389. package/dist/inputs/radio/radio.css?inline.cjs +2 -0
  390. package/dist/inputs/radio/radio.css?inline.cjs.map +1 -0
  391. package/dist/inputs/radio/radio.css?inline.js +6 -0
  392. package/dist/inputs/radio/radio.css?inline.js.map +1 -0
  393. package/dist/inputs/radio/radio.d.ts +41 -0
  394. package/dist/inputs/radio/radio.d.ts.map +1 -0
  395. package/dist/inputs/radio-group/radio-group.css?inline.cjs +2 -0
  396. package/dist/inputs/radio-group/radio-group.css?inline.cjs.map +1 -0
  397. package/dist/inputs/radio-group/radio-group.css?inline.js +6 -0
  398. package/dist/inputs/radio-group/radio-group.css?inline.js.map +1 -0
  399. package/dist/inputs/radio-group/radio-group.d.ts +61 -0
  400. package/dist/inputs/radio-group/radio-group.d.ts.map +1 -0
  401. package/dist/inputs/rating/rating.css?inline.cjs +2 -0
  402. package/dist/inputs/rating/rating.css?inline.cjs.map +1 -0
  403. package/dist/inputs/rating/rating.css?inline.js +6 -0
  404. package/dist/inputs/rating/rating.css?inline.js.map +1 -0
  405. package/dist/inputs/rating/rating.d.ts +48 -0
  406. package/dist/inputs/rating/rating.d.ts.map +1 -0
  407. package/dist/inputs/select/select.css?inline.cjs +2 -0
  408. package/dist/inputs/select/select.css?inline.cjs.map +1 -0
  409. package/dist/inputs/select/select.css?inline.js +6 -0
  410. package/dist/inputs/select/select.css?inline.js.map +1 -0
  411. package/dist/inputs/select/select.d.ts +79 -0
  412. package/dist/inputs/select/select.d.ts.map +1 -0
  413. package/dist/inputs/shared/base-props.d.ts +39 -0
  414. package/dist/inputs/shared/base-props.d.ts.map +1 -0
  415. package/dist/inputs/shared/composables/index.cjs +1 -0
  416. package/dist/inputs/shared/composables/index.d.ts +3 -0
  417. package/dist/inputs/shared/composables/index.d.ts.map +1 -0
  418. package/dist/inputs/shared/composables/index.js +2 -0
  419. package/dist/inputs/shared/composables/use-text-field.cjs +2 -0
  420. package/dist/inputs/shared/composables/use-text-field.cjs.map +1 -0
  421. package/dist/inputs/shared/composables/use-text-field.d.ts +33 -0
  422. package/dist/inputs/shared/composables/use-text-field.d.ts.map +1 -0
  423. package/dist/inputs/shared/composables/use-text-field.js +41 -0
  424. package/dist/inputs/shared/composables/use-text-field.js.map +1 -0
  425. package/dist/inputs/shared/composables/use-toggle-field.cjs +2 -0
  426. package/dist/inputs/shared/composables/use-toggle-field.cjs.map +1 -0
  427. package/dist/inputs/shared/composables/use-toggle-field.d.ts +18 -0
  428. package/dist/inputs/shared/composables/use-toggle-field.d.ts.map +1 -0
  429. package/dist/inputs/shared/composables/use-toggle-field.js +26 -0
  430. package/dist/inputs/shared/composables/use-toggle-field.js.map +1 -0
  431. package/dist/inputs/shared/design-presets.cjs +2 -0
  432. package/dist/inputs/shared/design-presets.cjs.map +1 -0
  433. package/dist/inputs/shared/design-presets.d.ts +97 -0
  434. package/dist/inputs/shared/design-presets.d.ts.map +1 -0
  435. package/dist/inputs/shared/design-presets.js +92 -0
  436. package/dist/inputs/shared/design-presets.js.map +1 -0
  437. package/dist/inputs/shared/dom-sync/dropdown.cjs +2 -0
  438. package/dist/inputs/shared/dom-sync/dropdown.cjs.map +1 -0
  439. package/dist/inputs/shared/dom-sync/dropdown.d.ts +7 -0
  440. package/dist/inputs/shared/dom-sync/dropdown.d.ts.map +1 -0
  441. package/dist/inputs/shared/dom-sync/dropdown.js +30 -0
  442. package/dist/inputs/shared/dom-sync/dropdown.js.map +1 -0
  443. package/dist/inputs/shared/dom-sync/field-sync.cjs +2 -0
  444. package/dist/inputs/shared/dom-sync/field-sync.cjs.map +1 -0
  445. package/dist/inputs/shared/dom-sync/field-sync.d.ts +36 -0
  446. package/dist/inputs/shared/dom-sync/field-sync.d.ts.map +1 -0
  447. package/dist/inputs/shared/dom-sync/field-sync.js +37 -0
  448. package/dist/inputs/shared/dom-sync/field-sync.js.map +1 -0
  449. package/dist/inputs/shared/dom-sync/form-context.cjs +2 -0
  450. package/dist/inputs/shared/dom-sync/form-context.cjs.map +1 -0
  451. package/dist/inputs/shared/dom-sync/form-context.d.ts +18 -0
  452. package/dist/inputs/shared/dom-sync/form-context.d.ts.map +1 -0
  453. package/dist/inputs/shared/dom-sync/form-context.js +20 -0
  454. package/dist/inputs/shared/dom-sync/form-context.js.map +1 -0
  455. package/dist/inputs/shared/dom-sync/index.cjs +1 -0
  456. package/dist/inputs/shared/dom-sync/index.d.ts +5 -0
  457. package/dist/inputs/shared/dom-sync/index.d.ts.map +1 -0
  458. package/dist/inputs/shared/dom-sync/index.js +4 -0
  459. package/dist/inputs/shared/dom-sync/label-sync.cjs +2 -0
  460. package/dist/inputs/shared/dom-sync/label-sync.cjs.map +1 -0
  461. package/dist/inputs/shared/dom-sync/label-sync.d.ts +16 -0
  462. package/dist/inputs/shared/dom-sync/label-sync.d.ts.map +1 -0
  463. package/dist/inputs/shared/dom-sync/label-sync.js +12 -0
  464. package/dist/inputs/shared/dom-sync/label-sync.js.map +1 -0
  465. package/dist/inputs/shared/form-context.cjs +2 -0
  466. package/dist/inputs/shared/form-context.cjs.map +1 -0
  467. package/dist/inputs/shared/form-context.d.ts +19 -0
  468. package/dist/inputs/shared/form-context.d.ts.map +1 -0
  469. package/dist/inputs/shared/form-context.js +7 -0
  470. package/dist/inputs/shared/form-context.js.map +1 -0
  471. package/dist/inputs/shared/utils/assistive-text.cjs +2 -0
  472. package/dist/inputs/shared/utils/assistive-text.cjs.map +1 -0
  473. package/dist/inputs/shared/utils/assistive-text.d.ts +24 -0
  474. package/dist/inputs/shared/utils/assistive-text.d.ts.map +1 -0
  475. package/dist/inputs/shared/utils/assistive-text.js +37 -0
  476. package/dist/inputs/shared/utils/assistive-text.js.map +1 -0
  477. package/dist/inputs/shared/utils/choice-change.cjs +2 -0
  478. package/dist/inputs/shared/utils/choice-change.cjs.map +1 -0
  479. package/dist/inputs/shared/utils/choice-change.d.ts +8 -0
  480. package/dist/inputs/shared/utils/choice-change.d.ts.map +1 -0
  481. package/dist/inputs/shared/utils/choice-change.js +13 -0
  482. package/dist/inputs/shared/utils/choice-change.js.map +1 -0
  483. package/dist/inputs/shared/utils/controlled-csv.cjs +2 -0
  484. package/dist/inputs/shared/utils/controlled-csv.cjs.map +1 -0
  485. package/dist/inputs/shared/utils/controlled-csv.d.ts +8 -0
  486. package/dist/inputs/shared/utils/controlled-csv.d.ts.map +1 -0
  487. package/dist/inputs/shared/utils/controlled-csv.js +15 -0
  488. package/dist/inputs/shared/utils/controlled-csv.js.map +1 -0
  489. package/dist/inputs/shared/utils/field-values.cjs +2 -0
  490. package/dist/inputs/shared/utils/field-values.cjs.map +1 -0
  491. package/dist/inputs/shared/utils/field-values.d.ts +5 -0
  492. package/dist/inputs/shared/utils/field-values.d.ts.map +1 -0
  493. package/dist/inputs/shared/utils/field-values.js +13 -0
  494. package/dist/inputs/shared/utils/field-values.js.map +1 -0
  495. package/dist/inputs/shared/utils/index.d.ts +5 -0
  496. package/dist/inputs/shared/utils/index.d.ts.map +1 -0
  497. package/dist/inputs/shared/validation/index.cjs +2 -0
  498. package/dist/inputs/shared/validation/index.cjs.map +1 -0
  499. package/dist/inputs/shared/validation/index.d.ts +14 -0
  500. package/dist/inputs/shared/validation/index.d.ts.map +1 -0
  501. package/dist/inputs/shared/validation/index.js +13 -0
  502. package/dist/inputs/shared/validation/index.js.map +1 -0
  503. package/dist/inputs/slider/slider.css?inline.cjs +2 -0
  504. package/dist/inputs/slider/slider.css?inline.cjs.map +1 -0
  505. package/dist/inputs/slider/slider.css?inline.js +6 -0
  506. package/dist/inputs/slider/slider.css?inline.js.map +1 -0
  507. package/dist/inputs/slider/slider.d.ts +82 -0
  508. package/dist/inputs/slider/slider.d.ts.map +1 -0
  509. package/dist/inputs/switch/switch.css?inline.cjs +2 -0
  510. package/dist/inputs/switch/switch.css?inline.cjs.map +1 -0
  511. package/dist/inputs/switch/switch.css?inline.js +6 -0
  512. package/dist/inputs/switch/switch.css?inline.js.map +1 -0
  513. package/dist/inputs/switch/switch.d.ts +40 -0
  514. package/dist/inputs/switch/switch.d.ts.map +1 -0
  515. package/dist/inputs/textarea/textarea.css?inline.cjs +2 -0
  516. package/dist/inputs/textarea/textarea.css?inline.cjs.map +1 -0
  517. package/dist/inputs/textarea/textarea.css?inline.js +6 -0
  518. package/dist/inputs/textarea/textarea.css?inline.js.map +1 -0
  519. package/dist/inputs/textarea/textarea.d.ts +57 -0
  520. package/dist/inputs/textarea/textarea.d.ts.map +1 -0
  521. package/dist/layout/box/box.css?inline.cjs +2 -0
  522. package/dist/layout/box/box.css?inline.cjs.map +1 -0
  523. package/dist/layout/box/box.css?inline.js +6 -0
  524. package/dist/layout/box/box.css?inline.js.map +1 -0
  525. package/dist/layout/box/box.d.ts +52 -0
  526. package/dist/layout/box/box.d.ts.map +1 -0
  527. package/dist/layout/grid/grid.css?inline.cjs +2 -0
  528. package/dist/layout/grid/grid.css?inline.cjs.map +1 -0
  529. package/dist/layout/grid/grid.css?inline.js +6 -0
  530. package/dist/layout/grid/grid.css?inline.js.map +1 -0
  531. package/dist/layout/grid/grid.d.ts +105 -0
  532. package/dist/layout/grid/grid.d.ts.map +1 -0
  533. package/dist/layout/grid-item/grid-item.css?inline.cjs +2 -0
  534. package/dist/layout/grid-item/grid-item.css?inline.cjs.map +1 -0
  535. package/dist/layout/grid-item/grid-item.css?inline.js +6 -0
  536. package/dist/layout/grid-item/grid-item.css?inline.js.map +1 -0
  537. package/dist/layout/grid-item/grid-item.d.ts +47 -0
  538. package/dist/layout/grid-item/grid-item.d.ts.map +1 -0
  539. package/dist/layout/index.cjs +1 -0
  540. package/dist/layout/index.d.ts +9 -0
  541. package/dist/layout/index.d.ts.map +1 -0
  542. package/dist/layout/index.js +4 -0
  543. package/dist/layout/sidebar/sidebar-group.css?inline.cjs +2 -0
  544. package/dist/layout/sidebar/sidebar-group.css?inline.cjs.map +1 -0
  545. package/dist/layout/sidebar/sidebar-group.css?inline.js +6 -0
  546. package/dist/layout/sidebar/sidebar-group.css?inline.js.map +1 -0
  547. package/dist/layout/sidebar/sidebar-item.css?inline.cjs +2 -0
  548. package/dist/layout/sidebar/sidebar-item.css?inline.cjs.map +1 -0
  549. package/dist/layout/sidebar/sidebar-item.css?inline.js +6 -0
  550. package/dist/layout/sidebar/sidebar-item.css?inline.js.map +1 -0
  551. package/dist/layout/sidebar/sidebar.css?inline.cjs +2 -0
  552. package/dist/layout/sidebar/sidebar.css?inline.cjs.map +1 -0
  553. package/dist/layout/sidebar/sidebar.css?inline.js +6 -0
  554. package/dist/layout/sidebar/sidebar.css?inline.js.map +1 -0
  555. package/dist/layout/sidebar/sidebar.d.ts +190 -0
  556. package/dist/layout/sidebar/sidebar.d.ts.map +1 -0
  557. package/dist/menu.cjs +133 -0
  558. package/dist/menu.cjs.map +1 -0
  559. package/dist/menu.js +296 -0
  560. package/dist/menu.js.map +1 -0
  561. package/dist/number-input.cjs +55 -0
  562. package/dist/number-input.cjs.map +1 -0
  563. package/dist/number-input.js +158 -0
  564. package/dist/number-input.js.map +1 -0
  565. package/dist/otp-input.cjs +22 -0
  566. package/dist/otp-input.cjs.map +1 -0
  567. package/dist/otp-input.js +120 -0
  568. package/dist/otp-input.js.map +1 -0
  569. package/dist/overlay/dialog/dialog.css?inline.cjs +2 -0
  570. package/dist/overlay/dialog/dialog.css?inline.cjs.map +1 -0
  571. package/dist/overlay/dialog/dialog.css?inline.js +6 -0
  572. package/dist/overlay/dialog/dialog.css?inline.js.map +1 -0
  573. package/dist/overlay/dialog/dialog.d.ts +98 -0
  574. package/dist/overlay/dialog/dialog.d.ts.map +1 -0
  575. package/dist/overlay/drawer/drawer.css?inline.cjs +2 -0
  576. package/dist/overlay/drawer/drawer.css?inline.cjs.map +1 -0
  577. package/dist/overlay/drawer/drawer.css?inline.js +6 -0
  578. package/dist/overlay/drawer/drawer.css?inline.js.map +1 -0
  579. package/dist/overlay/drawer/drawer.d.ts +98 -0
  580. package/dist/overlay/drawer/drawer.d.ts.map +1 -0
  581. package/dist/overlay/index.cjs +1 -0
  582. package/dist/overlay/index.d.ts +11 -0
  583. package/dist/overlay/index.d.ts.map +1 -0
  584. package/dist/overlay/index.js +5 -0
  585. package/dist/overlay/menu/menu.css?inline.cjs +2 -0
  586. package/dist/overlay/menu/menu.css?inline.cjs.map +1 -0
  587. package/dist/overlay/menu/menu.css?inline.js +6 -0
  588. package/dist/overlay/menu/menu.css?inline.js.map +1 -0
  589. package/dist/overlay/menu/menu.d.ts +45 -0
  590. package/dist/overlay/menu/menu.d.ts.map +1 -0
  591. package/dist/overlay/popover/popover.css?inline.cjs +2 -0
  592. package/dist/overlay/popover/popover.css?inline.cjs.map +1 -0
  593. package/dist/overlay/popover/popover.css?inline.js +6 -0
  594. package/dist/overlay/popover/popover.css?inline.js.map +1 -0
  595. package/dist/overlay/popover/popover.d.ts +56 -0
  596. package/dist/overlay/popover/popover.d.ts.map +1 -0
  597. package/dist/overlay/tooltip/tooltip.css?inline.cjs +2 -0
  598. package/dist/overlay/tooltip/tooltip.css?inline.cjs.map +1 -0
  599. package/dist/overlay/tooltip/tooltip.css?inline.js +6 -0
  600. package/dist/overlay/tooltip/tooltip.css?inline.js.map +1 -0
  601. package/dist/overlay/tooltip/tooltip.d.ts +55 -0
  602. package/dist/overlay/tooltip/tooltip.d.ts.map +1 -0
  603. package/dist/pagination.cjs +102 -0
  604. package/dist/pagination.cjs.map +1 -0
  605. package/dist/pagination.js +168 -0
  606. package/dist/pagination.js.map +1 -0
  607. package/dist/popover.cjs +16 -0
  608. package/dist/popover.cjs.map +1 -0
  609. package/dist/popover.js +110 -0
  610. package/dist/popover.js.map +1 -0
  611. package/dist/progress.cjs +51 -0
  612. package/dist/progress.cjs.map +1 -0
  613. package/dist/progress.js +90 -0
  614. package/dist/progress.js.map +1 -0
  615. package/dist/radio-group.cjs +20 -0
  616. package/dist/radio-group.cjs.map +1 -0
  617. package/dist/radio-group.js +104 -0
  618. package/dist/radio-group.js.map +1 -0
  619. package/dist/radio.cjs +16 -0
  620. package/dist/radio.cjs.map +1 -0
  621. package/dist/radio.js +135 -0
  622. package/dist/radio.js.map +1 -0
  623. package/dist/rating.cjs +37 -0
  624. package/dist/rating.cjs.map +1 -0
  625. package/dist/rating.js +123 -0
  626. package/dist/rating.js.map +1 -0
  627. package/dist/select.cjs +77 -0
  628. package/dist/select.cjs.map +1 -0
  629. package/dist/select.js +317 -0
  630. package/dist/select.js.map +1 -0
  631. package/dist/separator.cjs +26 -0
  632. package/dist/separator.cjs.map +1 -0
  633. package/dist/separator.js +46 -0
  634. package/dist/separator.js.map +1 -0
  635. package/dist/sidebar.cjs +69 -0
  636. package/dist/sidebar.cjs.map +1 -0
  637. package/dist/sidebar.js +202 -0
  638. package/dist/sidebar.js.map +1 -0
  639. package/dist/skeleton.cjs +10 -0
  640. package/dist/skeleton.cjs.map +1 -0
  641. package/dist/skeleton.js +56 -0
  642. package/dist/skeleton.js.map +1 -0
  643. package/dist/slider.cjs +24 -0
  644. package/dist/slider.cjs.map +1 -0
  645. package/dist/slider.js +209 -0
  646. package/dist/slider.js.map +1 -0
  647. package/dist/stateit/dist/computed.cjs +2 -0
  648. package/dist/stateit/dist/computed.cjs.map +1 -0
  649. package/dist/stateit/dist/computed.js +65 -0
  650. package/dist/stateit/dist/computed.js.map +1 -0
  651. package/dist/stateit/dist/effect.cjs +2 -0
  652. package/dist/stateit/dist/effect.cjs.map +1 -0
  653. package/dist/stateit/dist/effect.js +53 -0
  654. package/dist/stateit/dist/effect.js.map +1 -0
  655. package/dist/stateit/dist/index.cjs +1 -0
  656. package/dist/stateit/dist/index.js +5 -0
  657. package/dist/stateit/dist/runtime.cjs +2 -0
  658. package/dist/stateit/dist/runtime.cjs.map +1 -0
  659. package/dist/stateit/dist/runtime.js +43 -0
  660. package/dist/stateit/dist/runtime.js.map +1 -0
  661. package/dist/stateit/dist/signal.cjs +2 -0
  662. package/dist/stateit/dist/signal.cjs.map +1 -0
  663. package/dist/stateit/dist/signal.js +27 -0
  664. package/dist/stateit/dist/signal.js.map +1 -0
  665. package/dist/stateit/dist/store.cjs +2 -0
  666. package/dist/stateit/dist/store.cjs.map +1 -0
  667. package/dist/stateit/dist/store.js +17 -0
  668. package/dist/stateit/dist/store.js.map +1 -0
  669. package/dist/stateit/dist/types.cjs +2 -0
  670. package/dist/stateit/dist/types.cjs.map +1 -0
  671. package/dist/stateit/dist/types.js +6 -0
  672. package/dist/stateit/dist/types.js.map +1 -0
  673. package/dist/styles/animation.css +87 -0
  674. package/dist/styles/index.cjs +2 -0
  675. package/dist/styles/index.cjs.map +1 -0
  676. package/dist/styles/index.d.ts +48 -0
  677. package/dist/styles/index.d.ts.map +1 -0
  678. package/dist/styles/index.js +26 -0
  679. package/dist/styles/index.js.map +1 -0
  680. package/dist/styles/layer.css +18 -0
  681. package/dist/styles/mixins/accessibility.css.cjs +15 -0
  682. package/dist/styles/mixins/accessibility.css.cjs.map +1 -0
  683. package/dist/styles/mixins/accessibility.css.d.ts +46 -0
  684. package/dist/styles/mixins/accessibility.css.d.ts.map +1 -0
  685. package/dist/styles/mixins/accessibility.css.js +20 -0
  686. package/dist/styles/mixins/accessibility.css.js.map +1 -0
  687. package/dist/styles/mixins/animation.css.cjs +71 -0
  688. package/dist/styles/mixins/animation.css.cjs.map +1 -0
  689. package/dist/styles/mixins/animation.css.d.ts +22 -0
  690. package/dist/styles/mixins/animation.css.d.ts.map +1 -0
  691. package/dist/styles/mixins/animation.css.js +90 -0
  692. package/dist/styles/mixins/animation.css.js.map +1 -0
  693. package/dist/styles/mixins/shape.css.cjs +72 -0
  694. package/dist/styles/mixins/shape.css.cjs.map +1 -0
  695. package/dist/styles/mixins/shape.css.d.ts +97 -0
  696. package/dist/styles/mixins/shape.css.d.ts.map +1 -0
  697. package/dist/styles/mixins/shape.css.js +104 -0
  698. package/dist/styles/mixins/shape.css.js.map +1 -0
  699. package/dist/styles/mixins/states.css.cjs +18 -0
  700. package/dist/styles/mixins/states.css.cjs.map +1 -0
  701. package/dist/styles/mixins/states.css.d.ts +61 -0
  702. package/dist/styles/mixins/states.css.d.ts.map +1 -0
  703. package/dist/styles/mixins/states.css.js +26 -0
  704. package/dist/styles/mixins/states.css.js.map +1 -0
  705. package/dist/styles/mixins/theme.css.cjs +146 -0
  706. package/dist/styles/mixins/theme.css.cjs.map +1 -0
  707. package/dist/styles/mixins/theme.css.d.ts +93 -0
  708. package/dist/styles/mixins/theme.css.d.ts.map +1 -0
  709. package/dist/styles/mixins/theme.css.js +151 -0
  710. package/dist/styles/mixins/theme.css.js.map +1 -0
  711. package/dist/styles/mixins/variants.css.cjs +84 -0
  712. package/dist/styles/mixins/variants.css.cjs.map +1 -0
  713. package/dist/styles/mixins/variants.css.d.ts +22 -0
  714. package/dist/styles/mixins/variants.css.d.ts.map +1 -0
  715. package/dist/styles/mixins/variants.css.js +89 -0
  716. package/dist/styles/mixins/variants.css.js.map +1 -0
  717. package/dist/styles/preflight.css +237 -0
  718. package/dist/styles/styles.css +5 -0
  719. package/dist/styles/theme.css +457 -0
  720. package/dist/switch.cjs +16 -0
  721. package/dist/switch.cjs.map +1 -0
  722. package/dist/switch.js +82 -0
  723. package/dist/switch.js.map +1 -0
  724. package/dist/tab-item.cjs +17 -0
  725. package/dist/tab-item.cjs.map +1 -0
  726. package/dist/tab-item.js +57 -0
  727. package/dist/tab-item.js.map +1 -0
  728. package/dist/tab-panel.cjs +14 -0
  729. package/dist/tab-panel.cjs.map +1 -0
  730. package/dist/tab-panel.js +51 -0
  731. package/dist/tab-panel.js.map +1 -0
  732. package/dist/table.cjs +2 -0
  733. package/dist/table.cjs.map +1 -0
  734. package/dist/table.js +101 -0
  735. package/dist/table.js.map +1 -0
  736. package/dist/tabs.cjs +17 -0
  737. package/dist/tabs.cjs.map +1 -0
  738. package/dist/tabs.js +98 -0
  739. package/dist/tabs.js.map +1 -0
  740. package/dist/text.cjs +2 -0
  741. package/dist/text.cjs.map +1 -0
  742. package/dist/text.js +30 -0
  743. package/dist/text.js.map +1 -0
  744. package/dist/textarea.cjs +16 -0
  745. package/dist/textarea.cjs.map +1 -0
  746. package/dist/textarea.js +122 -0
  747. package/dist/textarea.js.map +1 -0
  748. package/dist/toast.cjs +63 -0
  749. package/dist/toast.cjs.map +1 -0
  750. package/dist/toast.js +221 -0
  751. package/dist/toast.js.map +1 -0
  752. package/dist/tooltip.cjs +15 -0
  753. package/dist/tooltip.cjs.map +1 -0
  754. package/dist/tooltip.js +111 -0
  755. package/dist/tooltip.js.map +1 -0
  756. package/dist/types/index.d.ts +7 -0
  757. package/dist/types/index.d.ts.map +1 -0
  758. package/dist/types/shared.d.ts +120 -0
  759. package/dist/types/shared.d.ts.map +1 -0
  760. package/dist/utils/animation.cjs +2 -0
  761. package/dist/utils/animation.cjs.map +1 -0
  762. package/dist/utils/animation.d.ts +2 -0
  763. package/dist/utils/animation.d.ts.map +1 -0
  764. package/dist/utils/animation.js +29 -0
  765. package/dist/utils/animation.js.map +1 -0
  766. package/dist/utils/background-lock.cjs +2 -0
  767. package/dist/utils/background-lock.cjs.map +1 -0
  768. package/dist/utils/background-lock.d.ts +20 -0
  769. package/dist/utils/background-lock.d.ts.map +1 -0
  770. package/dist/utils/background-lock.js +21 -0
  771. package/dist/utils/background-lock.js.map +1 -0
  772. package/dist/utils/index.cjs +1 -0
  773. package/dist/utils/index.d.ts +4 -0
  774. package/dist/utils/index.d.ts.map +1 -0
  775. package/dist/utils/index.js +3 -0
  776. package/dist/utils/use-overlay.cjs +2 -0
  777. package/dist/utils/use-overlay.cjs.map +1 -0
  778. package/dist/utils/use-overlay.d.ts +26 -0
  779. package/dist/utils/use-overlay.d.ts.map +1 -0
  780. package/dist/utils/use-overlay.js +34 -0
  781. package/dist/utils/use-overlay.js.map +1 -0
  782. package/dist/virtualit/dist/dom/dom.cjs +2 -0
  783. package/dist/virtualit/dist/dom/dom.cjs.map +1 -0
  784. package/dist/virtualit/dist/dom/dom.js +47 -0
  785. package/dist/virtualit/dist/dom/dom.js.map +1 -0
  786. package/dist/virtualit/dist/dom.cjs +1 -0
  787. package/dist/virtualit/dist/dom.js +2 -0
  788. package/dist/virtualit/dist/virtualit.cjs +2 -0
  789. package/dist/virtualit/dist/virtualit.cjs.map +1 -0
  790. package/dist/virtualit/dist/virtualit.js +129 -0
  791. package/dist/virtualit/dist/virtualit.js.map +1 -0
  792. package/package.json +282 -0
@@ -0,0 +1,457 @@
1
+ :root {
2
+ /* ========================================
3
+ Spacing Scale
4
+ Based on 0.25rem (4px) increments
5
+ ======================================== */
6
+ --size-0: 0;
7
+ --size-px: 1px;
8
+ --size-0-5: 0.125rem; /* 2px */
9
+ --size-1: 0.25rem; /* 4px */
10
+ --size-1-5: 0.375rem; /* 6px */
11
+ --size-2: 0.5rem; /* 8px */
12
+ --size-2-5: 0.625rem; /* 10px */
13
+ --size-3: 0.75rem; /* 12px */
14
+ --size-3-5: 0.875rem; /* 14px */
15
+ --size-4: 1rem; /* 16px */
16
+ --size-5: 1.25rem; /* 20px */
17
+ --size-6: 1.5rem; /* 24px */
18
+ --size-7: 1.75rem; /* 28px */
19
+ --size-8: 2rem; /* 32px */
20
+ --size-9: 2.25rem; /* 36px */
21
+ --size-10: 2.5rem; /* 40px */
22
+ --size-11: 2.75rem; /* 44px */
23
+ --size-12: 3rem; /* 48px */
24
+ --size-14: 3.5rem; /* 56px */
25
+ --size-16: 4rem; /* 64px */
26
+ --size-20: 5rem; /* 80px */
27
+ --size-24: 6rem; /* 96px */
28
+ --size-28: 7rem; /* 112px */
29
+ --size-32: 8rem; /* 128px */
30
+ --size-36: 9rem; /* 144px */
31
+ --size-40: 10rem; /* 160px */
32
+ --size-44: 11rem; /* 176px */
33
+ --size-48: 12rem; /* 192px */
34
+ --size-52: 13rem; /* 208px */
35
+ --size-56: 14rem; /* 224px */
36
+ --size-60: 15rem; /* 240px */
37
+ --size-64: 16rem; /* 256px */
38
+ --size-72: 18rem; /* 288px */
39
+ --size-80: 20rem; /* 320px */
40
+ --size-96: 24rem; /* 384px */
41
+
42
+ /* Section Spacing */
43
+ --section-spacing: 2rem; /* 32px */
44
+
45
+ /* Container Sizes */
46
+ --size-2xs: 16rem; /* 256px */
47
+ --size-xs: 20rem; /* 320px */
48
+ --size-sm: 24rem; /* 384px */
49
+ --size-md: 28rem; /* 448px */
50
+ --size-lg: 32rem; /* 512px */
51
+ --size-xl: 36rem; /* 576px */
52
+ --size-2xl: 42rem; /* 672px */
53
+ --size-3xl: 48rem; /* 768px */
54
+ --size-4xl: 56rem; /* 896px */
55
+ --size-5xl: 64rem; /* 1024px */
56
+ --size-6xl: 72rem; /* 1152px */
57
+ --size-7xl: 80rem; /* 1280px */
58
+
59
+ /* Special Sizes */
60
+ --size-full: 100%;
61
+ --size-fit: fit-content;
62
+ --size-min: min-content;
63
+ --size-max: max-content;
64
+ --size-auto: auto;
65
+ --size-none: none;
66
+ --size-prose: 65ch; /* Optimal reading width */
67
+
68
+ /* Viewport Units */
69
+ --size-screen-width: 100dvw;
70
+ --size-screen-height: 100dvh;
71
+
72
+ /* Breakpoints */
73
+
74
+ /* Breakpoints */
75
+ --size-screen-xs: 480px;
76
+ --size-screen-sm: 640px;
77
+ --size-screen-md: 768px;
78
+ --size-screen-lg: 1024px;
79
+ --size-screen-xl: 1280px;
80
+ --size-screen-2xl: 1536px;
81
+
82
+ /* ========================================
83
+ 3D Perspective (for transforms)
84
+ ======================================== */
85
+ --perspective-dramatic: 100px;
86
+ --perspective-near: 300px;
87
+ --perspective-normal: 500px;
88
+ --perspective-midrange: 800px;
89
+ --perspective-distant: 1200px;
90
+
91
+ /* ========================================
92
+ Aspect Ratios
93
+ ======================================== */
94
+ --aspect-square: 1 / 1;
95
+ --aspect-video: 16 / 9;
96
+ --aspect-wide: 21 / 9;
97
+ --aspect-ultrawide: 32 / 9;
98
+ --aspect-portrait: 3 / 4;
99
+ --aspect-photo: 4 / 3;
100
+
101
+ /* ========================================
102
+ Grid Template Columns
103
+ ======================================== */
104
+ --grid-1: repeat(1, minmax(0, 1fr));
105
+ --grid-2: repeat(2, minmax(0, 1fr));
106
+ --grid-3: repeat(3, minmax(0, 1fr));
107
+ --grid-4: repeat(4, minmax(0, 1fr));
108
+ --grid-5: repeat(5, minmax(0, 1fr));
109
+ --grid-6: repeat(6, minmax(0, 1fr));
110
+ --grid-7: repeat(7, minmax(0, 1fr));
111
+ --grid-8: repeat(8, minmax(0, 1fr));
112
+ --grid-9: repeat(9, minmax(0, 1fr));
113
+ --grid-10: repeat(10, minmax(0, 1fr));
114
+ --grid-11: repeat(11, minmax(0, 1fr));
115
+ --grid-12: repeat(12, minmax(0, 1fr));
116
+
117
+ /* ========================================
118
+ Border Widths
119
+ ======================================== */
120
+ --border-0: 0;
121
+ --border: 1px;
122
+ --border-2: 2px;
123
+ --border-4: 4px;
124
+ --border-8: 8px;
125
+
126
+ /* Ring Utilities (for focus states) */
127
+ --ring-0: 0 0 0 0;
128
+ --ring: 0 0 0 var(--border);
129
+ --ring-2: 0 0 0 var(--border-2);
130
+ --ring-4: 0 0 0 var(--border-4);
131
+ --ring-8: 0 0 0 var(--border-8);
132
+
133
+ /* ========================================
134
+ Border Radius
135
+ Optimized for accessibility - minimum 4px for touch targets
136
+ ======================================== */
137
+ --rounded-none: 0;
138
+ --rounded-xs: 0.125rem; /* 2px - minimal */
139
+ --rounded-sm: 0.25rem; /* 4px - small */
140
+ --rounded: 0.25rem; /* 4px - default */
141
+ --rounded-md: 0.375rem; /* 6px - medium */
142
+ --rounded-lg: 0.5rem; /* 8px - large */
143
+ --rounded-xl: 0.75rem; /* 12px - extra large */
144
+ --rounded-2xl: 1rem; /* 16px - 2x extra large */
145
+ --rounded-3xl: 1.5rem; /* 24px - 3x extra large */
146
+ --rounded-full: 9999px; /* Full circle/pill */
147
+
148
+ /* ========================================
149
+ Blur Effects
150
+ ======================================== */
151
+ --blur-none: 0;
152
+ --blur-xs: 4px;
153
+ --blur-sm: 8px;
154
+ --blur-md: 12px;
155
+ --blur: 12px;
156
+ --blur-lg: 16px;
157
+ --blur-xl: 24px;
158
+ --blur-2xl: 40px;
159
+ --blur-3xl: 64px;
160
+
161
+ /* ========================================
162
+ Box Shadows
163
+ Optimized for depth perception and accessibility
164
+ ======================================== */
165
+ --shadow-none: 0 0 transparent;
166
+ --shadow-2xs: 0 1px 2px rgb(0 0 0 / 3%);
167
+ --shadow-xs: 0 2px 4px rgb(0 0 0 / 3%);
168
+ --shadow-sm: 0 4px 10px -1px rgb(0 0 0 / 5%), 0 2px 4px -2px rgb(0 0 0 / 4%);
169
+ --shadow: 0 8px 16px -2px rgb(0 0 0 / 6%), 0 4px 8px -4px rgb(0 0 0 / 6%);
170
+ --shadow-md: 0 12px 24px -4px rgb(0 0 0 / 6%), 0 8px 12px -6px rgb(0 0 0 / 8%);
171
+ --shadow-lg: 0 24px 32px -8px rgb(0 0 0 / 8%), 0 12px 16px -8px rgb(0 0 0 / 8%);
172
+ --shadow-xl: 0 32px 64px -16px rgb(0 0 0 / 12%);
173
+ --shadow-2xl: 0 48px 80px -20px rgb(0 0 0 / 20%);
174
+
175
+ /* Inset Shadows */
176
+ --inset-shadow-none: inset 0 0 transparent;
177
+ --inset-shadow-2xs: inset 0 1px rgb(0 0 0 / 5%);
178
+ --inset-shadow-xs: inset 0 1px 1px rgb(0 0 0 / 5%);
179
+ --inset-shadow-sm: inset 0 2px 4px rgb(0 0 0 / 5%);
180
+ --inset-shadow: inset 0 2px 4px rgb(0 0 0 / 6%);
181
+
182
+ /* Drop Shadows (for filters) */
183
+ --drop-shadow-none: 0 0 transparent;
184
+ --drop-shadow-xs: 0 1px 1px rgb(0 0 0 / 5%);
185
+ --drop-shadow-sm: 0 1px 2px rgb(0 0 0 / 15%);
186
+ --drop-shadow: 0 1px 2px rgb(0 0 0 / 10%), 0 1px 1px rgb(0 0 0 / 6%);
187
+ --drop-shadow-md: 0 3px 3px rgb(0 0 0 / 12%);
188
+ --drop-shadow-lg: 0 4px 4px rgb(0 0 0 / 15%);
189
+ --drop-shadow-xl: 0 9px 7px rgb(0 0 0 / 10%);
190
+ --drop-shadow-2xl: 0 25px 25px rgb(0 0 0 / 15%);
191
+
192
+ /* Text Shadows (for readability) */
193
+ --text-shadow-none: 0 0 transparent;
194
+ --text-shadow-2xs: 0 1px 0 rgb(0 0 0 / 15%);
195
+ --text-shadow-xs: 0 1px 1px rgb(0 0 0 / 20%);
196
+ --text-shadow-sm: 0 1px 0 rgb(0 0 0 / 7.5%), 0 1px 1px rgb(0 0 0 / 7.5%), 0 2px 2px rgb(0 0 0 / 7.5%);
197
+ --text-shadow: 0 1px 1px rgb(0 0 0 / 10%), 0 2px 2px rgb(0 0 0 / 10%);
198
+ --text-shadow-md: 0 1px 1px rgb(0 0 0 / 10%), 0 1px 2px rgb(0 0 0 / 10%), 0 2px 4px rgb(0 0 0 / 10%);
199
+ --text-shadow-lg: 0 1px 2px rgb(0 0 0 / 10%), 0 3px 2px rgb(0 0 0 / 10%), 0 4px 8px rgb(0 0 0 / 10%);
200
+
201
+ /* ========================================
202
+ Typography
203
+ Optimized for WCAG AAA readability
204
+ ======================================== */
205
+
206
+ /* Font Family */
207
+ --font-sans:
208
+ 'Inter Variable', 'Plus Jakarta Sans Variable', system-ui, -apple-system, blinkmacsystemfont, 'Segoe UI', roboto,
209
+ sans-serif;
210
+ --font-serif: ui-serif, georgia, cambria, 'Times New Roman', times, serif;
211
+ --font-mono: ui-monospace, 'Cascadia Code', 'Source Code Pro', menlo, consolas, 'Liberation Mono', monospace;
212
+
213
+ /* Font Weights (Accessibility: minimum 400 for body text) */
214
+ --font-thin: 100;
215
+ --font-extralight: 200;
216
+ --font-light: 300;
217
+ --font-normal: 400; /* Minimum for body text */
218
+ --font-medium: 500;
219
+ --font-semibold: 600;
220
+ --font-bold: 700;
221
+ --font-extrabold: 800;
222
+ --font-black: 900;
223
+
224
+ /* Letter Spacing (for headers) */
225
+ --tracking-header: -0.025em; /* -2.5% tight */
226
+
227
+ /* Line Heights (Optimized for readability - WCAG recommends 1.5 for body text) */
228
+ --leading-none: 1;
229
+ --leading-tight: 1.15; /* 115% for headers */
230
+ --leading-snug: 1.375;
231
+ --leading-normal: 1.5; /* Optimal for body text (WCAG) */
232
+ --leading-relaxed: 1.625;
233
+ --leading-loose: 2;
234
+
235
+ /* Absolute Line Heights */
236
+ --leading-3: 0.75rem; /* 12px */
237
+ --leading-4: 1rem; /* 16px */
238
+ --leading-5: 1.25rem; /* 20px */
239
+ --leading-6: 1.5rem; /* 24px */
240
+ --leading-7: 1.75rem; /* 28px */
241
+ --leading-8: 2rem; /* 32px */
242
+ --leading-9: 2.25rem; /* 36px */
243
+ --leading-10: 2.5rem; /* 40px */
244
+
245
+ /* Font Sizes
246
+ Limited to 6 sizes for design consistency */
247
+ --text-xs: 0.75rem; /* 12px - small labels only */
248
+ --text-sm: 0.875rem; /* 14px - secondary text */
249
+ --text-base: 1rem; /* 16px - body text (minimum) */
250
+ --text-lg: 1.125rem; /* 18px - large UI / headings */
251
+ --text-xl: 1.25rem; /* 20px - subheadings */
252
+ --text-2xl: 1.5rem; /* 24px - major headings */
253
+
254
+ /* Headings Sizes
255
+ Limited to 6 (h1-h6) sizes for design consistency */
256
+ --heading-xs: 0.875rem;
257
+ --heading-sm: 1rem;
258
+ --heading-md: 1.5rem;
259
+ --heading-lg: 2rem;
260
+ --heading-xl: 3rem;
261
+ --heading-2xl: 4rem;
262
+
263
+ /* Semantic Text Colors (for accessibility)
264
+ These adapt to light/dark mode automatically */
265
+ --text-color-heading: var(--color-contrast-900);
266
+ --text-color-body: var(--color-contrast-800);
267
+ --text-color-secondary: var(--color-contrast-600);
268
+ --text-color-tertiary: var(--color-contrast-500);
269
+ --text-color-disabled: var(--color-contrast-400);
270
+ --text-color-contrast: var(--color-contrast-100);
271
+
272
+ /* ========================================
273
+ Transitions & Animations
274
+ Optimized for smooth, accessible motion
275
+ ======================================== */
276
+
277
+ /* Easing Functions */
278
+ --ease-linear: linear;
279
+ --ease-in: cubic-bezier(0.4, 0, 1, 1);
280
+ --ease-out: cubic-bezier(0, 0, 0.2, 1);
281
+ --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
282
+ --ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1); /* Bouncy */
283
+
284
+ /* Duration (respects prefers-reduced-motion) */
285
+ --duration-75: 75ms;
286
+ --duration-100: 100ms;
287
+ --duration-150: 150ms;
288
+ --duration-200: 200ms;
289
+ --duration-300: 300ms;
290
+ --duration-500: 500ms;
291
+ --duration-700: 700ms;
292
+ --duration-1000: 1000ms;
293
+
294
+ /* Combined Transitions (most commonly used) */
295
+ --transition-none: none;
296
+ --transition-fast: 150ms var(--ease-in-out);
297
+ --transition-normal: 200ms var(--ease-in-out);
298
+ --transition-slow: 300ms var(--ease-in-out);
299
+ --transition-slower: 500ms var(--ease-in-out);
300
+ --transition-spring: 300ms var(--ease-spring);
301
+ --transition-all: all 150ms var(--ease-in-out);
302
+
303
+ /* ========================================
304
+ Colors
305
+ light-dark() resolves based on color-scheme:
306
+ html.dark → dark, html:not(.dark) → light, default → OS preference
307
+ ======================================== */
308
+ color-scheme: light dark;
309
+
310
+ /* Contrast scale */
311
+ --color-contrast-50: light-dark(hsl(240deg 5% 98%), hsl(210deg 6% 10%)); /* Canvas, page background */
312
+ --color-contrast-100: light-dark(hsl(240deg 5% 96%), hsl(210deg 5% 14%)); /* Cards, elevated surfaces */
313
+ --color-contrast-200: light-dark(hsl(240deg 5% 93%), hsl(210deg 5% 18%)); /* Nested cards, hover states */
314
+ --color-contrast-300: light-dark(hsl(240deg 5% 88%), hsl(210deg 5% 24%)); /* Borders, dividers */
315
+ --color-contrast-400: light-dark(hsl(240deg 4% 80%), hsl(210deg 4% 32%)); /* Disabled backgrounds, subtle UI */
316
+ --color-contrast-500: light-dark(hsl(240deg 4% 60%), hsl(210deg 4% 52%)); /* Tertiary text - AA for large text */
317
+ --color-contrast-600: light-dark(hsl(240deg 4% 46%), hsl(210deg 3% 64%)); /* Secondary text - AA compliant */
318
+ --color-contrast-700: light-dark(hsl(240deg 4% 32%), hsl(210deg 3% 76%)); /* Body text - AAA compliant */
319
+ --color-contrast-800: light-dark(hsl(240deg 4% 22%), hsl(210deg 4% 86%)); /* Headings - AAA compliant */
320
+ --color-contrast-900: light-dark(hsl(240deg 4% 12%), hsl(210deg 5% 94%)); /* High contrast text - AAA compliant */
321
+ --color-canvas: var(--color-contrast-50);
322
+ --color-contrast: var(--color-contrast-900);
323
+
324
+ /* Halo Shadows */
325
+ --halo-shadow-neutral:
326
+ inset 0 1px 1px light-dark(rgb(0 0 0 / 5%), rgb(0 0 0 / 15%)),
327
+ 0 0 var(--size-1) light-dark(rgb(255 255 255 / 10%), rgb(0 0 0 / 20%)) inset,
328
+ 0 var(--size-2) var(--size-6) light-dark(hsl(240deg 3% 65% / 15%), hsl(210deg 8% 20% / 30%)),
329
+ 0 var(--size-1) var(--size-3) light-dark(hsl(240deg 3% 65% / 8%), hsl(210deg 8% 20% / 18%));
330
+ --halo-shadow-primary:
331
+ inset 0 1px 1px light-dark(rgb(0 0 0 / 5%), rgb(255 255 255 / 3%)),
332
+ 0 0 var(--size-1) light-dark(rgb(255 255 255 / 10%), rgb(255 255 255 / 12%)) inset,
333
+ 0 var(--size-2) var(--size-6) light-dark(hsl(260deg 85% 65% / 15%), hsl(260deg 85% 70% / 18%)),
334
+ 0 var(--size-1) var(--size-3) light-dark(hsl(260deg 85% 65% / 8%), hsl(260deg 85% 70% / 10%));
335
+ --halo-shadow-secondary:
336
+ inset 0 1px 1px light-dark(rgb(0 0 0 / 5%), rgb(255 255 255 / 3%)),
337
+ 0 0 var(--size-1) light-dark(rgb(255 255 255 / 10%), rgb(255 255 255 / 12%)) inset,
338
+ 0 var(--size-2) var(--size-6) light-dark(hsl(240deg 5% 18% / 12%), hsl(210deg 5% 82% / 12%)),
339
+ 0 var(--size-1) var(--size-3) light-dark(hsl(240deg 5% 18% / 7%), hsl(210deg 5% 82% / 7%));
340
+ --halo-shadow-info:
341
+ inset 0 1px 1px light-dark(rgb(0 0 0 / 5%), rgb(255 255 255 / 3%)),
342
+ 0 0 var(--size-1) light-dark(rgb(255 255 255 / 10%), rgb(255 255 255 / 12%)) inset,
343
+ 0 var(--size-2) var(--size-6) light-dark(hsl(200deg 90% 50% / 15%), hsl(200deg 90% 60% / 18%)),
344
+ 0 var(--size-1) var(--size-3) light-dark(hsl(200deg 90% 50% / 8%), hsl(200deg 90% 60% / 10%));
345
+ --halo-shadow-success:
346
+ inset 0 1px 1px light-dark(rgb(0 0 0 / 5%), rgb(255 255 255 / 3%)),
347
+ 0 0 var(--size-1) light-dark(rgb(255 255 255 / 10%), rgb(255 255 255 / 12%)) inset,
348
+ 0 var(--size-2) var(--size-6) light-dark(hsl(168deg 76% 42% / 15%), hsl(168deg 76% 50% / 18%)),
349
+ 0 var(--size-1) var(--size-3) light-dark(hsl(168deg 76% 42% / 8%), hsl(168deg 76% 50% / 10%));
350
+ --halo-shadow-warning:
351
+ inset 0 1px 1px light-dark(rgb(0 0 0 / 5%), rgb(255 255 255 / 3%)),
352
+ 0 0 var(--size-1) light-dark(rgb(255 255 255 / 10%), rgb(255 255 255 / 12%)) inset,
353
+ 0 var(--size-2) var(--size-6) light-dark(hsl(38deg 100% 52% / 15%), hsl(38deg 100% 60% / 18%)),
354
+ 0 var(--size-1) var(--size-3) light-dark(hsl(38deg 100% 52% / 8%), hsl(38deg 100% 60% / 10%));
355
+ --halo-shadow-error:
356
+ inset 0 1px 1px light-dark(rgb(0 0 0 / 5%), rgb(255 255 255 / 3%)),
357
+ 0 0 var(--size-1) light-dark(rgb(255 255 255 / 10%), rgb(255 255 255 / 12%)) inset,
358
+ 0 var(--size-2) var(--size-6) light-dark(hsl(8deg 90% 50% / 15%), hsl(8deg 90% 62% / 18%)),
359
+ 0 var(--size-1) var(--size-3) light-dark(hsl(8deg 90% 50% / 8%), hsl(8deg 90% 62% / 10%));
360
+
361
+ /* Neutral */
362
+ --color-neutral: light-dark(hsl(240deg 2% 50% / 91%), hsl(210deg 2% 74% / 91%));
363
+ --color-neutral-backdrop: light-dark(hsl(240deg 2% 96% / 83%), hsl(210deg 2% 24% / 60%));
364
+ --color-neutral-content: light-dark(hsl(240deg 2% 36% / 91%), hsl(210deg 2% 84% / 91%));
365
+ --color-neutral-contrast: light-dark(hsl(240deg 2% 98% / 91%), hsl(210deg 2% 10% / 91%));
366
+ --color-neutral-focus: light-dark(hsl(240deg 2% 56% / 91%), hsl(210deg 2% 68% / 91%));
367
+ --color-neutral-border: light-dark(hsl(240deg 2% 88% / 75%), hsl(210deg 2% 26% / 75%));
368
+ --color-neutral-focus-shadow: 0 0 0 4px color-mix(in srgb, var(--color-neutral) 15%, transparent), var(--shadow-sm);
369
+
370
+ /* Primary */
371
+ --color-primary: light-dark(hsl(260deg 85% 65% / 100%), hsl(260deg 85% 70% / 100%));
372
+ --color-primary-backdrop: light-dark(hsl(260deg 85% 92% / 100%), hsl(260deg 85% 30% / 40%));
373
+ --color-primary-content: light-dark(hsl(260deg 85% 15% / 100%), hsl(260deg 85% 95% / 100%));
374
+ --color-primary-contrast: light-dark(hsl(260deg 85% 98% / 100%), hsl(260deg 85% 10% / 100%));
375
+ --color-primary-focus: light-dark(hsl(260deg 85% 70% / 100%), hsl(260deg 85% 75% / 100%));
376
+ --color-primary-border: light-dark(hsl(260deg 85% 70% / 60%), hsl(260deg 85% 75% / 60%));
377
+ --color-primary-focus-shadow: 0 0 0 4px color-mix(in srgb, var(--color-primary) 15%, transparent), var(--shadow-sm);
378
+
379
+ /* Secondary */
380
+ --color-secondary: light-dark(hsl(240deg 6% 18% / 100%), hsl(210deg 5% 82% / 100%));
381
+ --color-secondary-backdrop: light-dark(hsl(240deg 5% 94% / 83%), hsl(210deg 4% 16% / 60%));
382
+ --color-secondary-content: light-dark(hsl(240deg 4% 98% / 100%), hsl(210deg 5% 10% / 100%));
383
+ --color-secondary-contrast: light-dark(hsl(240deg 5% 98% / 100%), hsl(210deg 4% 10% / 100%));
384
+ --color-secondary-focus: light-dark(hsl(240deg 6% 26% / 100%), hsl(210deg 5% 88% / 100%));
385
+ --color-secondary-border: light-dark(hsl(240deg 5% 26% / 60%), hsl(210deg 4% 80% / 60%));
386
+ --color-secondary-focus-shadow:
387
+ 0 0 0 4px color-mix(in srgb, var(--color-secondary) 15%, transparent), var(--shadow-sm);
388
+
389
+ /* Info */
390
+ --color-info: light-dark(hsl(200deg 90% 50% / 91%), hsl(200deg 90% 60% / 91%));
391
+ --color-info-backdrop: light-dark(hsl(200deg 90% 90% / 83%), hsl(200deg 50% 30% / 50%));
392
+ --color-info-content: light-dark(hsl(200deg 90% 15% / 91%), hsl(200deg 90% 75% / 91%));
393
+ --color-info-contrast: light-dark(hsl(200deg 90% 96% / 91%), hsl(200deg 90% 15% / 91%));
394
+ --color-info-focus: light-dark(hsl(200deg 90% 56% / 91%), hsl(200deg 90% 65% / 91%));
395
+ --color-info-border: light-dark(hsl(200deg 90% 56% / 60%), hsl(200deg 90% 65% / 60%));
396
+ --color-info-focus-shadow: 0 0 0 4px color-mix(in srgb, var(--color-info) 15%, transparent), var(--shadow-sm);
397
+
398
+ /* Success */
399
+ --color-success: light-dark(hsl(168deg 76% 42% / 91%), hsl(168deg 76% 50% / 91%));
400
+ --color-success-backdrop: light-dark(hsl(168deg 76% 88% / 83%), hsl(168deg 40% 25% / 50%));
401
+ --color-success-content: light-dark(hsl(168deg 76% 15% / 91%), hsl(168deg 76% 70% / 91%));
402
+ --color-success-contrast: light-dark(hsl(168deg 76% 97% / 91%), hsl(168deg 76% 15% / 91%));
403
+ --color-success-focus: light-dark(hsl(168deg 76% 48% / 91%), hsl(168deg 76% 55% / 91%));
404
+ --color-success-border: light-dark(hsl(168deg 76% 48% / 60%), hsl(168deg 76% 55% / 60%));
405
+ --color-success-focus-shadow: 0 0 0 4px color-mix(in srgb, var(--color-success) 15%, transparent), var(--shadow-sm);
406
+
407
+ /* Warning */
408
+ --color-warning: light-dark(hsl(38deg 100% 52% / 91%), hsl(38deg 100% 60% / 91%));
409
+ --color-warning-backdrop: light-dark(hsl(38deg 100% 88% / 83%), hsl(38deg 50% 30% / 50%));
410
+ --color-warning-content: light-dark(hsl(38deg 100% 15% / 91%), hsl(38deg 100% 75% / 91%));
411
+ --color-warning-contrast: light-dark(hsl(38deg 100% 94% / 91%), hsl(38deg 100% 20% / 91%));
412
+ --color-warning-focus: light-dark(hsl(38deg 100% 58% / 91%), hsl(38deg 100% 65% / 91%));
413
+ --color-warning-border: light-dark(hsl(38deg 100% 58% / 60%), hsl(38deg 100% 65% / 60%));
414
+ --color-warning-focus-shadow: 0 0 0 4px color-mix(in srgb, var(--color-warning) 15%, transparent), var(--shadow-sm);
415
+
416
+ /* Error */
417
+ --color-error: light-dark(hsl(8deg 90% 50% / 91%), hsl(8deg 90% 62% / 91%));
418
+ --color-error-backdrop: light-dark(hsl(8deg 90% 90% / 83%), hsl(8deg 50% 28% / 50%));
419
+ --color-error-content: light-dark(hsl(8deg 90% 15% / 91%), hsl(8deg 90% 80% / 91%));
420
+ --color-error-contrast: light-dark(hsl(8deg 90% 96% / 91%), hsl(8deg 90% 12% / 91%));
421
+ --color-error-focus: light-dark(hsl(8deg 90% 56% / 91%), hsl(8deg 90% 67% / 91%));
422
+ --color-error-border: light-dark(hsl(8deg 90% 56% / 60%), hsl(8deg 90% 67% / 60%));
423
+ --color-error-focus-shadow: 0 0 0 4px color-mix(in srgb, var(--color-error) 15%, transparent), var(--shadow-sm);
424
+ }
425
+
426
+ /* ========================================
427
+ Reduced Motion
428
+ ======================================== */
429
+
430
+ @media (prefers-reduced-motion: reduce) {
431
+ :root {
432
+ --duration-75: 0ms;
433
+ --duration-100: 0ms;
434
+ --duration-150: 0ms;
435
+ --duration-200: 0ms;
436
+ --duration-300: 0ms;
437
+ --duration-500: 0ms;
438
+ --duration-700: 0ms;
439
+ --duration-1000: 0ms;
440
+ --transition-fast: none;
441
+ --transition-normal: none;
442
+ --transition-slow: none;
443
+ --transition-slower: none;
444
+ --transition-spring: none;
445
+ --transition-all: none;
446
+ }
447
+ }
448
+
449
+ /* VitePress dark theme: force dark color-scheme so light-dark() resolves to dark values */
450
+ html.dark {
451
+ color-scheme: dark;
452
+ }
453
+
454
+ /* VitePress light theme: force light color-scheme so light-dark() resolves to light values */
455
+ html:not(.dark) {
456
+ color-scheme: light;
457
+ }
@@ -0,0 +1,16 @@
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`./styles/mixins/shape.css.cjs`),t=require(`./styles/index.cjs`),n=require(`./craftit/dist/labs/a11y.cjs`),r=require(`./craftit/dist/labs/selectable.cjs`);require(`./craftit/dist/labs.cjs`);const i=require(`./inputs/shared/dom-sync/form-context.cjs`);require(`./inputs/shared/dom-sync/index.cjs`);const a=require(`./inputs/shared/composables/use-toggle-field.cjs`);require(`./inputs/shared/composables/index.cjs`);const o=require(`./inputs/shared/design-presets.cjs`),s=require(`./inputs/switch/switch.css?inline.cjs`);let c=require(`@vielzeug/craftit`);var l=(0,c.defineComponent)({formAssociated:!0,props:{checked:{default:!1},color:{default:void 0},disabled:{default:!1},error:{default:``},helper:{default:``},name:{default:``},size:{default:void 0},value:{default:`on`}},setup({emit:e,host:t,props:o,reflect:s}){let{checkedSignal:l,formCtx:u,triggerValidation:d}=a.useToggleField(o);i.mountFormContextSync(t,u,o);let f=r.t({checked:l,clearIndeterminateFirst:!1,disabled:o.disabled,onToggle:t=>{d(`change`),e(`change`,f.changePayload(t))},value:o.value}),p=n.r(t,{checked:()=>f.checked.value?`true`:`false`,helperText:()=>o.error.value||o.helper.value,helperTone:()=>o.error.value?`error`:`default`,invalid:()=>!!o.error.value,role:`switch`});return s({checked:()=>f.checked.value,classMap:()=>({"is-checked":f.checked.value,"is-disabled":!!o.disabled.value}),onClick:e=>f.toggle(e),onKeydown:e=>{let t=e;(t.key===` `||t.key===`Enter`)&&(t.preventDefault(),f.toggle(e))},tabindex:()=>o.disabled.value?void 0:0}),c.html`
2
+ <div class="switch-wrapper" part="switch">
3
+ <div class="switch-track" part="track">
4
+ <div class="switch-thumb" part="thumb"></div>
5
+ </div>
6
+ </div>
7
+ <span class="label" part="label" data-a11y-label id="${p.labelId}"><slot></slot></span>
8
+ <div
9
+ class="helper-text"
10
+ part="helper-text"
11
+ data-a11y-helper
12
+ id="${p.helperId}"
13
+ aria-live="polite"
14
+ hidden></div>
15
+ `},styles:[...t.formControlMixins,e.sizeVariantMixin(o.SWITCH_SIZE_PRESET),s.default],tag:`bit-switch`});exports.SWITCH_TAG=l;
16
+ //# sourceMappingURL=switch.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"switch.cjs","names":[],"sources":["../src/inputs/switch/switch.ts"],"sourcesContent":["import { defineComponent, html } from '@vielzeug/craftit';\nimport { useA11yControl, createCheckableControl } from '@vielzeug/craftit/labs';\n\nimport type { CheckableProps, DisablableProps, SizableProps, ThemableProps } from '../../types';\n\nimport { formControlMixins, sizeVariantMixin } from '../../styles';\nimport { useToggleField } from '../shared/composables';\nimport { SWITCH_SIZE_PRESET } from '../shared/design-presets';\nimport { mountFormContextSync } from '../shared/dom-sync';\nimport componentStyles from './switch.css?inline';\n\nexport type BitSwitchEvents = {\n change: { checked: boolean; originalEvent?: Event; value: boolean };\n};\n\nexport type BitSwitchProps = CheckableProps &\n ThemableProps &\n SizableProps &\n DisablableProps & {\n /** Error message (marks field as invalid) */\n error?: string;\n /** Helper text displayed below the switch */\n helper?: string;\n };\n\n/**\n * A toggle switch component for binary on/off states.\n *\n * @element bit-switch\n *\n * @attr {boolean} checked - Checked/on state\n * @attr {boolean} disabled - Disable switch interaction\n * @attr {string} value - Field value\n * @attr {string} name - Form field name\n * @attr {string} color - Theme color: 'primary' | 'secondary' | 'info' | 'success' | 'warning' | 'error'\n * @attr {string} size - Switch size: 'sm' | 'md' | 'lg'\n * @attr {string} error - Error message (marks field as invalid)\n * @attr {string} helper - Helper text displayed below the switch\n *\n * @fires change - Emitted when switch is toggled. detail: { value: boolean, checked: boolean, originalEvent?: Event }\n *\n * @slot - Switch label text\n *\n * @part switch - The switch wrapper element\n * @part track - The switch track element\n * @part thumb - The switch thumb element\n * @part label - The label element\n * @part helper-text - The helper/error text element\n */\nexport const SWITCH_TAG = defineComponent<BitSwitchProps, BitSwitchEvents>({\n formAssociated: true,\n props: {\n checked: { default: false },\n color: { default: undefined },\n disabled: { default: false },\n error: { default: '' },\n helper: { default: '' },\n name: { default: '' },\n size: { default: undefined },\n value: { default: 'on' },\n },\n setup({ emit, host, props, reflect }) {\n const { checkedSignal, formCtx, triggerValidation } = useToggleField(props);\n\n mountFormContextSync(host, formCtx, props);\n\n // Pass writable checkedSignal directly — toggle() mutates it in place\n const control = createCheckableControl({\n checked: checkedSignal,\n clearIndeterminateFirst: false,\n disabled: props.disabled,\n onToggle: (e) => {\n triggerValidation('change');\n emit('change', control.changePayload(e));\n },\n value: props.value,\n });\n\n const a11y = useA11yControl(host, {\n checked: () => (control.checked.value ? 'true' : 'false'),\n helperText: () => props.error.value || props.helper.value,\n helperTone: () => (props.error.value ? 'error' : 'default'),\n invalid: () => !!props.error.value,\n role: 'switch',\n });\n\n reflect({\n checked: () => control.checked.value,\n classMap: () => ({\n 'is-checked': control.checked.value,\n 'is-disabled': !!props.disabled.value,\n }),\n onClick: (e: Event) => control.toggle(e),\n onKeydown: (e: Event) => {\n const ke = e as KeyboardEvent;\n\n if (ke.key === ' ' || ke.key === 'Enter') {\n ke.preventDefault();\n control.toggle(e);\n }\n },\n tabindex: () => (props.disabled.value ? undefined : 0),\n });\n\n return html`\n <div class=\"switch-wrapper\" part=\"switch\">\n <div class=\"switch-track\" part=\"track\">\n <div class=\"switch-thumb\" part=\"thumb\"></div>\n </div>\n </div>\n <span class=\"label\" part=\"label\" data-a11y-label id=\"${a11y.labelId}\"><slot></slot></span>\n <div\n class=\"helper-text\"\n part=\"helper-text\"\n data-a11y-helper\n id=\"${a11y.helperId}\"\n aria-live=\"polite\"\n hidden></div>\n `;\n },\n styles: [...formControlMixins, sizeVariantMixin(SWITCH_SIZE_PRESET), componentStyles],\n tag: 'bit-switch',\n});\n"],"mappings":"6nBAiDA,IAAa,GAAA,EAAA,EAAA,iBAA8D,CACzE,eAAgB,GAChB,MAAO,CACL,QAAS,CAAE,QAAS,GAAO,CAC3B,MAAO,CAAE,QAAS,IAAA,GAAW,CAC7B,SAAU,CAAE,QAAS,GAAO,CAC5B,MAAO,CAAE,QAAS,GAAI,CACtB,OAAQ,CAAE,QAAS,GAAI,CACvB,KAAM,CAAE,QAAS,GAAI,CACrB,KAAM,CAAE,QAAS,IAAA,GAAW,CAC5B,MAAO,CAAE,QAAS,KAAM,CACzB,CACD,MAAM,CAAE,OAAM,OAAM,QAAO,WAAW,CACpC,GAAM,CAAE,gBAAe,UAAS,qBAAsB,EAAA,eAAe,EAAM,CAE3E,EAAA,qBAAqB,EAAM,EAAS,EAAM,CAG1C,IAAM,EAAU,EAAA,EAAuB,CACrC,QAAS,EACT,wBAAyB,GACzB,SAAU,EAAM,SAChB,SAAW,GAAM,CACf,EAAkB,SAAS,CAC3B,EAAK,SAAU,EAAQ,cAAc,EAAE,CAAC,EAE1C,MAAO,EAAM,MACd,CAAC,CAEI,EAAO,EAAA,EAAe,EAAM,CAChC,YAAgB,EAAQ,QAAQ,MAAQ,OAAS,QACjD,eAAkB,EAAM,MAAM,OAAS,EAAM,OAAO,MACpD,eAAmB,EAAM,MAAM,MAAQ,QAAU,UACjD,YAAe,CAAC,CAAC,EAAM,MAAM,MAC7B,KAAM,SACP,CAAC,CAoBF,OAlBA,EAAQ,CACN,YAAe,EAAQ,QAAQ,MAC/B,cAAiB,CACf,aAAc,EAAQ,QAAQ,MAC9B,cAAe,CAAC,CAAC,EAAM,SAAS,MACjC,EACD,QAAU,GAAa,EAAQ,OAAO,EAAE,CACxC,UAAY,GAAa,CACvB,IAAM,EAAK,GAEP,EAAG,MAAQ,KAAO,EAAG,MAAQ,WAC/B,EAAG,gBAAgB,CACnB,EAAQ,OAAO,EAAE,GAGrB,aAAiB,EAAM,SAAS,MAAQ,IAAA,GAAY,EACrD,CAAC,CAEK,EAAA,IAAI;;;;;;6DAM8C,EAAK,QAAQ;;;;;cAK5D,EAAK,SAAS;;;OAK1B,OAAQ,CAAC,GAAG,EAAA,kBAAmB,EAAA,iBAAiB,EAAA,mBAAmB,CAAE,EAAA,QAAgB,CACrF,IAAK,aACN,CAAC"}
package/dist/switch.js ADDED
@@ -0,0 +1,82 @@
1
+ import { sizeVariantMixin as e } from "./styles/mixins/shape.css.js";
2
+ import { formControlMixins as t } from "./styles/index.js";
3
+ import { r as n } from "./craftit/dist/labs/a11y.js";
4
+ import { t as r } from "./craftit/dist/labs/selectable.js";
5
+ import "./craftit/dist/labs.js";
6
+ import { mountFormContextSync as i } from "./inputs/shared/dom-sync/form-context.js";
7
+ import "./inputs/shared/dom-sync/index.js";
8
+ import { useToggleField as a } from "./inputs/shared/composables/use-toggle-field.js";
9
+ import "./inputs/shared/composables/index.js";
10
+ import { SWITCH_SIZE_PRESET as o } from "./inputs/shared/design-presets.js";
11
+ import s from "./inputs/switch/switch.css?inline.js";
12
+ import { defineComponent as c, html as l } from "@vielzeug/craftit";
13
+ //#region src/inputs/switch/switch.ts
14
+ var u = c({
15
+ formAssociated: !0,
16
+ props: {
17
+ checked: { default: !1 },
18
+ color: { default: void 0 },
19
+ disabled: { default: !1 },
20
+ error: { default: "" },
21
+ helper: { default: "" },
22
+ name: { default: "" },
23
+ size: { default: void 0 },
24
+ value: { default: "on" }
25
+ },
26
+ setup({ emit: e, host: t, props: o, reflect: s }) {
27
+ let { checkedSignal: c, formCtx: u, triggerValidation: d } = a(o);
28
+ i(t, u, o);
29
+ let f = r({
30
+ checked: c,
31
+ clearIndeterminateFirst: !1,
32
+ disabled: o.disabled,
33
+ onToggle: (t) => {
34
+ d("change"), e("change", f.changePayload(t));
35
+ },
36
+ value: o.value
37
+ }), p = n(t, {
38
+ checked: () => f.checked.value ? "true" : "false",
39
+ helperText: () => o.error.value || o.helper.value,
40
+ helperTone: () => o.error.value ? "error" : "default",
41
+ invalid: () => !!o.error.value,
42
+ role: "switch"
43
+ });
44
+ return s({
45
+ checked: () => f.checked.value,
46
+ classMap: () => ({
47
+ "is-checked": f.checked.value,
48
+ "is-disabled": !!o.disabled.value
49
+ }),
50
+ onClick: (e) => f.toggle(e),
51
+ onKeydown: (e) => {
52
+ let t = e;
53
+ (t.key === " " || t.key === "Enter") && (t.preventDefault(), f.toggle(e));
54
+ },
55
+ tabindex: () => o.disabled.value ? void 0 : 0
56
+ }), l`
57
+ <div class="switch-wrapper" part="switch">
58
+ <div class="switch-track" part="track">
59
+ <div class="switch-thumb" part="thumb"></div>
60
+ </div>
61
+ </div>
62
+ <span class="label" part="label" data-a11y-label id="${p.labelId}"><slot></slot></span>
63
+ <div
64
+ class="helper-text"
65
+ part="helper-text"
66
+ data-a11y-helper
67
+ id="${p.helperId}"
68
+ aria-live="polite"
69
+ hidden></div>
70
+ `;
71
+ },
72
+ styles: [
73
+ ...t,
74
+ e(o),
75
+ s
76
+ ],
77
+ tag: "bit-switch"
78
+ });
79
+ //#endregion
80
+ export { u as SWITCH_TAG };
81
+
82
+ //# sourceMappingURL=switch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"switch.js","names":[],"sources":["../src/inputs/switch/switch.ts"],"sourcesContent":["import { defineComponent, html } from '@vielzeug/craftit';\nimport { useA11yControl, createCheckableControl } from '@vielzeug/craftit/labs';\n\nimport type { CheckableProps, DisablableProps, SizableProps, ThemableProps } from '../../types';\n\nimport { formControlMixins, sizeVariantMixin } from '../../styles';\nimport { useToggleField } from '../shared/composables';\nimport { SWITCH_SIZE_PRESET } from '../shared/design-presets';\nimport { mountFormContextSync } from '../shared/dom-sync';\nimport componentStyles from './switch.css?inline';\n\nexport type BitSwitchEvents = {\n change: { checked: boolean; originalEvent?: Event; value: boolean };\n};\n\nexport type BitSwitchProps = CheckableProps &\n ThemableProps &\n SizableProps &\n DisablableProps & {\n /** Error message (marks field as invalid) */\n error?: string;\n /** Helper text displayed below the switch */\n helper?: string;\n };\n\n/**\n * A toggle switch component for binary on/off states.\n *\n * @element bit-switch\n *\n * @attr {boolean} checked - Checked/on state\n * @attr {boolean} disabled - Disable switch interaction\n * @attr {string} value - Field value\n * @attr {string} name - Form field name\n * @attr {string} color - Theme color: 'primary' | 'secondary' | 'info' | 'success' | 'warning' | 'error'\n * @attr {string} size - Switch size: 'sm' | 'md' | 'lg'\n * @attr {string} error - Error message (marks field as invalid)\n * @attr {string} helper - Helper text displayed below the switch\n *\n * @fires change - Emitted when switch is toggled. detail: { value: boolean, checked: boolean, originalEvent?: Event }\n *\n * @slot - Switch label text\n *\n * @part switch - The switch wrapper element\n * @part track - The switch track element\n * @part thumb - The switch thumb element\n * @part label - The label element\n * @part helper-text - The helper/error text element\n */\nexport const SWITCH_TAG = defineComponent<BitSwitchProps, BitSwitchEvents>({\n formAssociated: true,\n props: {\n checked: { default: false },\n color: { default: undefined },\n disabled: { default: false },\n error: { default: '' },\n helper: { default: '' },\n name: { default: '' },\n size: { default: undefined },\n value: { default: 'on' },\n },\n setup({ emit, host, props, reflect }) {\n const { checkedSignal, formCtx, triggerValidation } = useToggleField(props);\n\n mountFormContextSync(host, formCtx, props);\n\n // Pass writable checkedSignal directly — toggle() mutates it in place\n const control = createCheckableControl({\n checked: checkedSignal,\n clearIndeterminateFirst: false,\n disabled: props.disabled,\n onToggle: (e) => {\n triggerValidation('change');\n emit('change', control.changePayload(e));\n },\n value: props.value,\n });\n\n const a11y = useA11yControl(host, {\n checked: () => (control.checked.value ? 'true' : 'false'),\n helperText: () => props.error.value || props.helper.value,\n helperTone: () => (props.error.value ? 'error' : 'default'),\n invalid: () => !!props.error.value,\n role: 'switch',\n });\n\n reflect({\n checked: () => control.checked.value,\n classMap: () => ({\n 'is-checked': control.checked.value,\n 'is-disabled': !!props.disabled.value,\n }),\n onClick: (e: Event) => control.toggle(e),\n onKeydown: (e: Event) => {\n const ke = e as KeyboardEvent;\n\n if (ke.key === ' ' || ke.key === 'Enter') {\n ke.preventDefault();\n control.toggle(e);\n }\n },\n tabindex: () => (props.disabled.value ? undefined : 0),\n });\n\n return html`\n <div class=\"switch-wrapper\" part=\"switch\">\n <div class=\"switch-track\" part=\"track\">\n <div class=\"switch-thumb\" part=\"thumb\"></div>\n </div>\n </div>\n <span class=\"label\" part=\"label\" data-a11y-label id=\"${a11y.labelId}\"><slot></slot></span>\n <div\n class=\"helper-text\"\n part=\"helper-text\"\n data-a11y-helper\n id=\"${a11y.helperId}\"\n aria-live=\"polite\"\n hidden></div>\n `;\n },\n styles: [...formControlMixins, sizeVariantMixin(SWITCH_SIZE_PRESET), componentStyles],\n tag: 'bit-switch',\n});\n"],"mappings":";;;;;;;;;;;;;AAiDA,IAAa,IAAa,EAAiD;CACzE,gBAAgB;CAChB,OAAO;EACL,SAAS,EAAE,SAAS,IAAO;EAC3B,OAAO,EAAE,SAAS,KAAA,GAAW;EAC7B,UAAU,EAAE,SAAS,IAAO;EAC5B,OAAO,EAAE,SAAS,IAAI;EACtB,QAAQ,EAAE,SAAS,IAAI;EACvB,MAAM,EAAE,SAAS,IAAI;EACrB,MAAM,EAAE,SAAS,KAAA,GAAW;EAC5B,OAAO,EAAE,SAAS,MAAM;EACzB;CACD,MAAM,EAAE,SAAM,SAAM,UAAO,cAAW;EACpC,IAAM,EAAE,kBAAe,YAAS,yBAAsB,EAAe,EAAM;AAE3E,IAAqB,GAAM,GAAS,EAAM;EAG1C,IAAM,IAAU,EAAuB;GACrC,SAAS;GACT,yBAAyB;GACzB,UAAU,EAAM;GAChB,WAAW,MAAM;AAEf,IADA,EAAkB,SAAS,EAC3B,EAAK,UAAU,EAAQ,cAAc,EAAE,CAAC;;GAE1C,OAAO,EAAM;GACd,CAAC,EAEI,IAAO,EAAe,GAAM;GAChC,eAAgB,EAAQ,QAAQ,QAAQ,SAAS;GACjD,kBAAkB,EAAM,MAAM,SAAS,EAAM,OAAO;GACpD,kBAAmB,EAAM,MAAM,QAAQ,UAAU;GACjD,eAAe,CAAC,CAAC,EAAM,MAAM;GAC7B,MAAM;GACP,CAAC;AAoBF,SAlBA,EAAQ;GACN,eAAe,EAAQ,QAAQ;GAC/B,iBAAiB;IACf,cAAc,EAAQ,QAAQ;IAC9B,eAAe,CAAC,CAAC,EAAM,SAAS;IACjC;GACD,UAAU,MAAa,EAAQ,OAAO,EAAE;GACxC,YAAY,MAAa;IACvB,IAAM,IAAK;AAEX,KAAI,EAAG,QAAQ,OAAO,EAAG,QAAQ,aAC/B,EAAG,gBAAgB,EACnB,EAAQ,OAAO,EAAE;;GAGrB,gBAAiB,EAAM,SAAS,QAAQ,KAAA,IAAY;GACrD,CAAC,EAEK,CAAI;;;;;;6DAM8C,EAAK,QAAQ;;;;;cAK5D,EAAK,SAAS;;;;;CAK1B,QAAQ;EAAC,GAAG;EAAmB,EAAiB,EAAmB;EAAE;EAAgB;CACrF,KAAK;CACN,CAAC"}
@@ -0,0 +1,17 @@
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`./styles/mixins/accessibility.css.cjs`),t=require(`./styles/mixins/theme.css.cjs`);require(`./styles/index.cjs`);const n=require(`./tabs.cjs`),r=require(`./disclosure/tab-item/tab-item.css?inline.cjs`);let i=require(`@vielzeug/craftit`);var a=(0,i.defineComponent)({props:{active:(0,i.typed)(!1),color:(0,i.typed)(void 0),disabled:(0,i.typed)(!1),size:(0,i.typed)(void 0),value:(0,i.typed)(``),variant:(0,i.typed)(void 0)},setup({host:e,props:t}){let r=(0,i.inject)(n.TABS_CTX,void 0);(0,i.syncContextProps)(r,t,[`color`,`size`,`variant`]);let a=r?(0,i.computed)(()=>!!r.value.value&&r.value.value===t.value.value):t.active;(0,i.effect)(()=>{e.toggleAttribute(`active`,a.value)});let o=(0,i.computed)(()=>String(a.value)),s=(0,i.computed)(()=>a.value?`0`:`-1`);return i.html`
2
+ <button
3
+ role="tab"
4
+ type="button"
5
+ part="tab"
6
+ :id="${()=>`tab-${t.value.value}`}"
7
+ :aria-selected=${o}
8
+ :tabindex=${s}
9
+ :aria-disabled=${(0,i.computed)(()=>String(t.disabled.value))}
10
+ :aria-controls="${()=>`tabpanel-${t.value.value}`}"
11
+ @click=${()=>{t.disabled.value||i.fire.custom(e,`click`,{detail:{value:t.value.value}})}}>
12
+ <slot name="prefix"></slot>
13
+ <slot></slot>
14
+ <slot name="suffix"></slot>
15
+ </button>
16
+ `},styles:[t.colorThemeMixin,t.forcedColorsFocusMixin(`button`),e.coarsePointerMixin,r.default],tag:`bit-tab-item`});exports.TAB_ITEM_TAG=a;
17
+ //# sourceMappingURL=tab-item.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tab-item.cjs","names":[],"sources":["../src/disclosure/tab-item/tab-item.ts"],"sourcesContent":["import { computed, defineComponent, effect, fire, html, typed, inject, syncContextProps } from '@vielzeug/craftit';\n\nimport type { ComponentSize, ThemeColor, VisualVariant } from '../../types';\n\nimport { coarsePointerMixin, colorThemeMixin, forcedColorsFocusMixin } from '../../styles';\nimport { TABS_CTX } from '../tabs/tabs';\nimport styles from './tab-item.css?inline';\n\nexport type BitTabItemProps = {\n /** Whether this tab is currently selected (set by bit-tabs) */\n active?: boolean;\n /** Theme color (inherited from bit-tabs) */\n color?: ThemeColor;\n /** Disable this tab */\n disabled?: boolean;\n /** Size (inherited from bit-tabs) */\n size?: ComponentSize;\n /** Unique value identifier — must match a bit-tab-panel value */\n value: string;\n /** Visual variant (inherited from bit-tabs) */\n variant?: VisualVariant;\n};\n\n/**\n * Individual tab trigger. Must be placed in the `tabs` slot of `bit-tabs`.\n *\n * @element bit-tab-item\n *\n * @attr {string} value - Unique identifier, matches the corresponding bit-tab-panel value\n * @attr {boolean} active - Set by the parent bit-tabs when this tab is selected\n * @attr {boolean} disabled - Prevents selection\n * @attr {string} size - 'sm' | 'md' | 'lg'\n * @attr {string} variant - Inherited from bit-tabs\n * @attr {string} color - Inherited from bit-tabs: 'primary' | 'secondary' | 'info' | 'success' | 'warning' | 'error'\n *\n * @slot prefix - Icon or content before the label\n * @slot - Tab label\n * @slot suffix - Badge or count after the label\n *\n * @example\n * ```html\n * <bit-tab-item slot=\"tabs\" value=\"overview\">Overview</bit-tab-item>\n * <bit-tab-item slot=\"tabs\" value=\"settings\" disabled>Settings</bit-tab-item>\n * ```\n */\nexport const TAB_ITEM_TAG = defineComponent<BitTabItemProps>({\n props: {\n active: typed<boolean>(false),\n color: typed<BitTabItemProps['color']>(undefined),\n disabled: typed<boolean>(false),\n size: typed<BitTabItemProps['size']>(undefined),\n value: typed<string>(''),\n variant: typed<BitTabItemProps['variant']>(undefined),\n },\n setup({ host, props }) {\n const tabsCtx = inject(TABS_CTX, undefined);\n\n syncContextProps(tabsCtx, props, ['color', 'size', 'variant']);\n\n const isActive = tabsCtx\n ? computed(() => !!tabsCtx.value.value && tabsCtx.value.value === props.value.value)\n : props.active;\n\n effect(() => {\n host.toggleAttribute('active', isActive.value);\n });\n\n const ariaSelected = computed(() => String(isActive.value));\n const tabIndex = computed(() => (isActive.value ? '0' : '-1'));\n const handleClick = () => {\n if (props.disabled.value) return;\n\n fire.custom(host, 'click', {\n detail: { value: props.value.value },\n });\n };\n\n return html`\n <button\n role=\"tab\"\n type=\"button\"\n part=\"tab\"\n :id=\"${() => `tab-${props.value.value}`}\"\n :aria-selected=${ariaSelected}\n :tabindex=${tabIndex}\n :aria-disabled=${computed(() => String(props.disabled.value))}\n :aria-controls=\"${() => `tabpanel-${props.value.value}`}\"\n @click=${handleClick}>\n <slot name=\"prefix\"></slot>\n <slot></slot>\n <slot name=\"suffix\"></slot>\n </button>\n `;\n },\n styles: [colorThemeMixin, forcedColorsFocusMixin('button'), coarsePointerMixin, styles],\n tag: 'bit-tab-item',\n});\n"],"mappings":"iUA6CA,IAAa,GAAA,EAAA,EAAA,iBAAgD,CAC3D,MAAO,CACL,QAAA,EAAA,EAAA,OAAuB,GAAM,CAC7B,OAAA,EAAA,EAAA,OAAuC,IAAA,GAAU,CACjD,UAAA,EAAA,EAAA,OAAyB,GAAM,CAC/B,MAAA,EAAA,EAAA,OAAqC,IAAA,GAAU,CAC/C,OAAA,EAAA,EAAA,OAAqB,GAAG,CACxB,SAAA,EAAA,EAAA,OAA2C,IAAA,GAAU,CACtD,CACD,MAAM,CAAE,OAAM,SAAS,CACrB,IAAM,GAAA,EAAA,EAAA,QAAiB,EAAA,SAAU,IAAA,GAAU,EAE3C,EAAA,EAAA,kBAAiB,EAAS,EAAO,CAAC,QAAS,OAAQ,UAAU,CAAC,CAE9D,IAAM,EAAW,GAAA,EAAA,EAAA,cACE,CAAC,CAAC,EAAQ,MAAM,OAAS,EAAQ,MAAM,QAAU,EAAM,MAAM,MAAM,CAClF,EAAM,QAEV,EAAA,EAAA,YAAa,CACX,EAAK,gBAAgB,SAAU,EAAS,MAAM,EAC9C,CAEF,IAAM,GAAA,EAAA,EAAA,cAA8B,OAAO,EAAS,MAAM,CAAC,CACrD,GAAA,EAAA,EAAA,cAA2B,EAAS,MAAQ,IAAM,KAAM,CAS9D,MAAO,GAAA,IAAI;;;;;mBAKM,OAAO,EAAM,MAAM,QAAQ;yBACvB,EAAa;oBAClB,EAAS;4CACW,OAAO,EAAM,SAAS,MAAM,CAAC,CAAC;8BACtC,YAAY,EAAM,MAAM,QAAQ;qBAjBlC,CACpB,EAAM,SAAS,OAEnB,EAAA,KAAK,OAAO,EAAM,QAAS,CACzB,OAAQ,CAAE,MAAO,EAAM,MAAM,MAAO,CACrC,CAAC,EAaqB;;;;;OAO3B,OAAQ,CAAC,EAAA,gBAAiB,EAAA,uBAAuB,SAAS,CAAE,EAAA,mBAAoB,EAAA,QAAO,CACvF,IAAK,eACN,CAAC"}