@visitwonders/assembly 0.1.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 (564) hide show
  1. package/LICENSE.md +9 -0
  2. package/README.md +26 -0
  3. package/addon-main.cjs +4 -0
  4. package/declarations/action/button.d.ts +50 -0
  5. package/declarations/action/button.d.ts.map +1 -0
  6. package/declarations/action/index.d.ts +3 -0
  7. package/declarations/action/index.d.ts.map +1 -0
  8. package/declarations/action/link.d.ts +16 -0
  9. package/declarations/action/link.d.ts.map +1 -0
  10. package/declarations/components/form/checkbox.d.ts +65 -0
  11. package/declarations/components/form/checkbox.d.ts.map +1 -0
  12. package/declarations/components/form/control.d.ts +36 -0
  13. package/declarations/components/form/control.d.ts.map +1 -0
  14. package/declarations/components/form/error-message.d.ts +22 -0
  15. package/declarations/components/form/error-message.d.ts.map +1 -0
  16. package/declarations/components/form/field.d.ts +21 -0
  17. package/declarations/components/form/field.d.ts.map +1 -0
  18. package/declarations/components/form/form.d.ts +14 -0
  19. package/declarations/components/form/form.d.ts.map +1 -0
  20. package/declarations/components/form/help-text.d.ts +14 -0
  21. package/declarations/components/form/help-text.d.ts.map +1 -0
  22. package/declarations/components/form/index.d.ts +15 -0
  23. package/declarations/components/form/index.d.ts.map +1 -0
  24. package/declarations/components/form/input.d.ts +80 -0
  25. package/declarations/components/form/input.d.ts.map +1 -0
  26. package/declarations/components/form/label.d.ts +34 -0
  27. package/declarations/components/form/label.d.ts.map +1 -0
  28. package/declarations/components/form/radio-group.d.ts +43 -0
  29. package/declarations/components/form/radio-group.d.ts.map +1 -0
  30. package/declarations/components/form/radio.d.ts +54 -0
  31. package/declarations/components/form/radio.d.ts.map +1 -0
  32. package/declarations/components/form/search-input.d.ts +35 -0
  33. package/declarations/components/form/search-input.d.ts.map +1 -0
  34. package/declarations/components/form/select.d.ts +36 -0
  35. package/declarations/components/form/select.d.ts.map +1 -0
  36. package/declarations/components/form/test.d.ts +11 -0
  37. package/declarations/components/form/test.d.ts.map +1 -0
  38. package/declarations/components/form/textarea.d.ts +79 -0
  39. package/declarations/components/form/textarea.d.ts.map +1 -0
  40. package/declarations/components/form/toggle.d.ts +23 -0
  41. package/declarations/components/form/toggle.d.ts.map +1 -0
  42. package/declarations/components/primitives/grid-item.d.ts +21 -0
  43. package/declarations/components/primitives/grid-item.d.ts.map +1 -0
  44. package/declarations/components/primitives/grid.d.ts +49 -0
  45. package/declarations/components/primitives/grid.d.ts.map +1 -0
  46. package/declarations/components/primitives/h-stack.d.ts +17 -0
  47. package/declarations/components/primitives/h-stack.d.ts.map +1 -0
  48. package/declarations/components/primitives/heading.d.ts +52 -0
  49. package/declarations/components/primitives/heading.d.ts.map +1 -0
  50. package/declarations/components/primitives/image.d.ts +24 -0
  51. package/declarations/components/primitives/image.d.ts.map +1 -0
  52. package/declarations/components/primitives/index.d.ts +8 -0
  53. package/declarations/components/primitives/index.d.ts.map +1 -0
  54. package/declarations/components/primitives/link.d.ts +16 -0
  55. package/declarations/components/primitives/link.d.ts.map +1 -0
  56. package/declarations/components/primitives/stack.d.ts +23 -0
  57. package/declarations/components/primitives/stack.d.ts.map +1 -0
  58. package/declarations/components/primitives/text.d.ts +50 -0
  59. package/declarations/components/primitives/text.d.ts.map +1 -0
  60. package/declarations/components/primitives/v-stack.d.ts +16 -0
  61. package/declarations/components/primitives/v-stack.d.ts.map +1 -0
  62. package/declarations/components/ui/badge.d.ts +14 -0
  63. package/declarations/components/ui/badge.d.ts.map +1 -0
  64. package/declarations/components/ui/button.d.ts +32 -0
  65. package/declarations/components/ui/button.d.ts.map +1 -0
  66. package/declarations/components/ui/card.d.ts +27 -0
  67. package/declarations/components/ui/card.d.ts.map +1 -0
  68. package/declarations/components/ui/description-list.d.ts +22 -0
  69. package/declarations/components/ui/description-list.d.ts.map +1 -0
  70. package/declarations/components/ui/drawer.d.ts +14 -0
  71. package/declarations/components/ui/drawer.d.ts.map +1 -0
  72. package/declarations/components/ui/icon-button.d.ts +21 -0
  73. package/declarations/components/ui/icon-button.d.ts.map +1 -0
  74. package/declarations/components/ui/icon.d.ts +21 -0
  75. package/declarations/components/ui/icon.d.ts.map +1 -0
  76. package/declarations/components/ui/index.d.ts +17 -0
  77. package/declarations/components/ui/index.d.ts.map +1 -0
  78. package/declarations/components/ui/modal.d.ts +14 -0
  79. package/declarations/components/ui/modal.d.ts.map +1 -0
  80. package/declarations/components/ui/page-header.d.ts +16 -0
  81. package/declarations/components/ui/page-header.d.ts.map +1 -0
  82. package/declarations/components/ui/skeleton-card.d.ts +17 -0
  83. package/declarations/components/ui/skeleton-card.d.ts.map +1 -0
  84. package/declarations/components/ui/skeleton-text.d.ts +16 -0
  85. package/declarations/components/ui/skeleton-text.d.ts.map +1 -0
  86. package/declarations/components/ui/skeleton.d.ts +20 -0
  87. package/declarations/components/ui/skeleton.d.ts.map +1 -0
  88. package/declarations/components/ui/spinner.d.ts +11 -0
  89. package/declarations/components/ui/spinner.d.ts.map +1 -0
  90. package/declarations/components/ui/tab-nav/index.d.ts +36 -0
  91. package/declarations/components/ui/tab-nav/index.d.ts.map +1 -0
  92. package/declarations/components/ui/table/body.d.ts +11 -0
  93. package/declarations/components/ui/table/body.d.ts.map +1 -0
  94. package/declarations/components/ui/table/caption.d.ts +18 -0
  95. package/declarations/components/ui/table/caption.d.ts.map +1 -0
  96. package/declarations/components/ui/table/cell.d.ts +31 -0
  97. package/declarations/components/ui/table/cell.d.ts.map +1 -0
  98. package/declarations/components/ui/table/footer.d.ts +11 -0
  99. package/declarations/components/ui/table/footer.d.ts.map +1 -0
  100. package/declarations/components/ui/table/header-cell.d.ts +35 -0
  101. package/declarations/components/ui/table/header-cell.d.ts.map +1 -0
  102. package/declarations/components/ui/table/header.d.ts +11 -0
  103. package/declarations/components/ui/table/header.d.ts.map +1 -0
  104. package/declarations/components/ui/table/index.d.ts +0 -0
  105. package/declarations/components/ui/table/index.d.ts.map +1 -0
  106. package/declarations/components/ui/table/row.d.ts +21 -0
  107. package/declarations/components/ui/table/row.d.ts.map +1 -0
  108. package/declarations/components/ui/table_old.d.ts +29 -0
  109. package/declarations/components/ui/table_old.d.ts.map +1 -0
  110. package/declarations/data/index.d.ts +2 -0
  111. package/declarations/data/index.d.ts.map +1 -0
  112. package/declarations/data/table.d.ts +147 -0
  113. package/declarations/data/table.d.ts.map +1 -0
  114. package/declarations/form/calendar.d.ts +113 -0
  115. package/declarations/form/calendar.d.ts.map +1 -0
  116. package/declarations/form/checkbox-group.d.ts +84 -0
  117. package/declarations/form/checkbox-group.d.ts.map +1 -0
  118. package/declarations/form/checkbox.d.ts +65 -0
  119. package/declarations/form/checkbox.d.ts.map +1 -0
  120. package/declarations/form/control.d.ts +53 -0
  121. package/declarations/form/control.d.ts.map +1 -0
  122. package/declarations/form/country-data.d.ts +42 -0
  123. package/declarations/form/country-data.d.ts.map +1 -0
  124. package/declarations/form/country-select-field.d.ts +52 -0
  125. package/declarations/form/country-select-field.d.ts.map +1 -0
  126. package/declarations/form/country-select.d.ts +117 -0
  127. package/declarations/form/country-select.d.ts.map +1 -0
  128. package/declarations/form/date-picker-field.d.ts +69 -0
  129. package/declarations/form/date-picker-field.d.ts.map +1 -0
  130. package/declarations/form/date-picker.d.ts +128 -0
  131. package/declarations/form/date-picker.d.ts.map +1 -0
  132. package/declarations/form/date-range-picker-field.d.ts +71 -0
  133. package/declarations/form/date-range-picker-field.d.ts.map +1 -0
  134. package/declarations/form/date-range-picker.d.ts +146 -0
  135. package/declarations/form/date-range-picker.d.ts.map +1 -0
  136. package/declarations/form/error-message.d.ts +22 -0
  137. package/declarations/form/error-message.d.ts.map +1 -0
  138. package/declarations/form/field.d.ts +21 -0
  139. package/declarations/form/field.d.ts.map +1 -0
  140. package/declarations/form/form.d.ts +61 -0
  141. package/declarations/form/form.d.ts.map +1 -0
  142. package/declarations/form/help-text.d.ts +14 -0
  143. package/declarations/form/help-text.d.ts.map +1 -0
  144. package/declarations/form/index.d.ts +35 -0
  145. package/declarations/form/index.d.ts.map +1 -0
  146. package/declarations/form/input.d.ts +78 -0
  147. package/declarations/form/input.d.ts.map +1 -0
  148. package/declarations/form/label.d.ts +34 -0
  149. package/declarations/form/label.d.ts.map +1 -0
  150. package/declarations/form/listbox.d.ts +181 -0
  151. package/declarations/form/listbox.d.ts.map +1 -0
  152. package/declarations/form/money-field.d.ts +74 -0
  153. package/declarations/form/money-field.d.ts.map +1 -0
  154. package/declarations/form/multi-select.d.ts +121 -0
  155. package/declarations/form/multi-select.d.ts.map +1 -0
  156. package/declarations/form/number-field.d.ts +86 -0
  157. package/declarations/form/number-field.d.ts.map +1 -0
  158. package/declarations/form/option-group.d.ts +2 -0
  159. package/declarations/form/option-group.d.ts.map +1 -0
  160. package/declarations/form/option.d.ts +2 -0
  161. package/declarations/form/option.d.ts.map +1 -0
  162. package/declarations/form/radio-group.d.ts +43 -0
  163. package/declarations/form/radio-group.d.ts.map +1 -0
  164. package/declarations/form/radio.d.ts +54 -0
  165. package/declarations/form/radio.d.ts.map +1 -0
  166. package/declarations/form/search-input.d.ts +35 -0
  167. package/declarations/form/search-input.d.ts.map +1 -0
  168. package/declarations/form/select-field.d.ts +49 -0
  169. package/declarations/form/select-field.d.ts.map +1 -0
  170. package/declarations/form/select.d.ts +145 -0
  171. package/declarations/form/select.d.ts.map +1 -0
  172. package/declarations/form/test.d.ts +11 -0
  173. package/declarations/form/test.d.ts.map +1 -0
  174. package/declarations/form/text-field.d.ts +95 -0
  175. package/declarations/form/text-field.d.ts.map +1 -0
  176. package/declarations/form/textarea.d.ts +81 -0
  177. package/declarations/form/textarea.d.ts.map +1 -0
  178. package/declarations/form/time-picker-field.d.ts +61 -0
  179. package/declarations/form/time-picker-field.d.ts.map +1 -0
  180. package/declarations/form/time-picker.d.ts +151 -0
  181. package/declarations/form/time-picker.d.ts.map +1 -0
  182. package/declarations/form/toggle-field.d.ts +45 -0
  183. package/declarations/form/toggle-field.d.ts.map +1 -0
  184. package/declarations/form/toggle-group.d.ts +21 -0
  185. package/declarations/form/toggle-group.d.ts.map +1 -0
  186. package/declarations/form/toggle.d.ts +59 -0
  187. package/declarations/form/toggle.d.ts.map +1 -0
  188. package/declarations/index.d.ts +1 -0
  189. package/declarations/index.d.ts.map +1 -0
  190. package/declarations/layout/divider.d.ts +21 -0
  191. package/declarations/layout/divider.d.ts.map +1 -0
  192. package/declarations/layout/grid-item.d.ts +21 -0
  193. package/declarations/layout/grid-item.d.ts.map +1 -0
  194. package/declarations/layout/grid.d.ts +49 -0
  195. package/declarations/layout/grid.d.ts.map +1 -0
  196. package/declarations/layout/h-stack.d.ts +17 -0
  197. package/declarations/layout/h-stack.d.ts.map +1 -0
  198. package/declarations/layout/index.d.ts +7 -0
  199. package/declarations/layout/index.d.ts.map +1 -0
  200. package/declarations/layout/stack.d.ts +23 -0
  201. package/declarations/layout/stack.d.ts.map +1 -0
  202. package/declarations/layout/v-stack.d.ts +16 -0
  203. package/declarations/layout/v-stack.d.ts.map +1 -0
  204. package/declarations/media/icon.d.ts +34 -0
  205. package/declarations/media/icon.d.ts.map +1 -0
  206. package/declarations/media/image.d.ts +24 -0
  207. package/declarations/media/image.d.ts.map +1 -0
  208. package/declarations/media/index.d.ts +3 -0
  209. package/declarations/media/index.d.ts.map +1 -0
  210. package/declarations/overlay/blanket.d.ts +78 -0
  211. package/declarations/overlay/blanket.d.ts.map +1 -0
  212. package/declarations/overlay/drawer.d.ts +140 -0
  213. package/declarations/overlay/drawer.d.ts.map +1 -0
  214. package/declarations/overlay/index.d.ts +7 -0
  215. package/declarations/overlay/index.d.ts.map +1 -0
  216. package/declarations/overlay/modal.d.ts +138 -0
  217. package/declarations/overlay/modal.d.ts.map +1 -0
  218. package/declarations/overlay/popover.d.ts +205 -0
  219. package/declarations/overlay/popover.d.ts.map +1 -0
  220. package/declarations/overlay/toast.d.ts +58 -0
  221. package/declarations/overlay/toast.d.ts.map +1 -0
  222. package/declarations/overlay/tooltip.d.ts +154 -0
  223. package/declarations/overlay/tooltip.d.ts.map +1 -0
  224. package/declarations/primitives/grid-item.d.ts +21 -0
  225. package/declarations/primitives/grid-item.d.ts.map +1 -0
  226. package/declarations/primitives/grid.d.ts +49 -0
  227. package/declarations/primitives/grid.d.ts.map +1 -0
  228. package/declarations/primitives/h-stack.d.ts +17 -0
  229. package/declarations/primitives/h-stack.d.ts.map +1 -0
  230. package/declarations/primitives/heading.d.ts +52 -0
  231. package/declarations/primitives/heading.d.ts.map +1 -0
  232. package/declarations/primitives/image.d.ts +24 -0
  233. package/declarations/primitives/image.d.ts.map +1 -0
  234. package/declarations/primitives/index.d.ts +4 -0
  235. package/declarations/primitives/index.d.ts.map +1 -0
  236. package/declarations/primitives/link.d.ts +16 -0
  237. package/declarations/primitives/link.d.ts.map +1 -0
  238. package/declarations/primitives/stack.d.ts +23 -0
  239. package/declarations/primitives/stack.d.ts.map +1 -0
  240. package/declarations/primitives/text.d.ts +50 -0
  241. package/declarations/primitives/text.d.ts.map +1 -0
  242. package/declarations/primitives/v-stack.d.ts +16 -0
  243. package/declarations/primitives/v-stack.d.ts.map +1 -0
  244. package/declarations/services/index.d.ts +3 -0
  245. package/declarations/services/index.d.ts.map +1 -0
  246. package/declarations/services/toast.d.ts +81 -0
  247. package/declarations/services/toast.d.ts.map +1 -0
  248. package/declarations/status/badge.d.ts +38 -0
  249. package/declarations/status/badge.d.ts.map +1 -0
  250. package/declarations/status/index.d.ts +8 -0
  251. package/declarations/status/index.d.ts.map +1 -0
  252. package/declarations/status/skeleton-avatar.d.ts +22 -0
  253. package/declarations/status/skeleton-avatar.d.ts.map +1 -0
  254. package/declarations/status/skeleton-button.d.ts +21 -0
  255. package/declarations/status/skeleton-button.d.ts.map +1 -0
  256. package/declarations/status/skeleton-image.d.ts +21 -0
  257. package/declarations/status/skeleton-image.d.ts.map +1 -0
  258. package/declarations/status/skeleton-text.d.ts +24 -0
  259. package/declarations/status/skeleton-text.d.ts.map +1 -0
  260. package/declarations/status/skeleton.d.ts +33 -0
  261. package/declarations/status/skeleton.d.ts.map +1 -0
  262. package/declarations/status/tag.d.ts +48 -0
  263. package/declarations/status/tag.d.ts.map +1 -0
  264. package/declarations/template-registry.d.ts +1 -0
  265. package/declarations/template-registry.d.ts.map +1 -0
  266. package/declarations/types/design-system.d.ts +42 -0
  267. package/declarations/types/design-system.d.ts.map +1 -0
  268. package/declarations/typography/heading.d.ts +52 -0
  269. package/declarations/typography/heading.d.ts.map +1 -0
  270. package/declarations/typography/index.d.ts +3 -0
  271. package/declarations/typography/index.d.ts.map +1 -0
  272. package/declarations/typography/link.d.ts +16 -0
  273. package/declarations/typography/link.d.ts.map +1 -0
  274. package/declarations/typography/text.d.ts +50 -0
  275. package/declarations/typography/text.d.ts.map +1 -0
  276. package/declarations/ui/button.d.ts +50 -0
  277. package/declarations/ui/button.d.ts.map +1 -0
  278. package/declarations/ui/icon.d.ts +21 -0
  279. package/declarations/ui/icon.d.ts.map +1 -0
  280. package/declarations/ui/index.d.ts +2 -0
  281. package/declarations/ui/index.d.ts.map +1 -0
  282. package/dist/_app_/action/button.js +1 -0
  283. package/dist/_app_/action/link.js +1 -0
  284. package/dist/_app_/data/table.js +1 -0
  285. package/dist/_app_/form/calendar.js +1 -0
  286. package/dist/_app_/form/checkbox-group.js +1 -0
  287. package/dist/_app_/form/checkbox.js +1 -0
  288. package/dist/_app_/form/control.js +1 -0
  289. package/dist/_app_/form/country-data.js +1 -0
  290. package/dist/_app_/form/country-select-field.js +1 -0
  291. package/dist/_app_/form/country-select.js +1 -0
  292. package/dist/_app_/form/date-picker-field.js +1 -0
  293. package/dist/_app_/form/date-picker.js +1 -0
  294. package/dist/_app_/form/date-range-picker-field.js +1 -0
  295. package/dist/_app_/form/date-range-picker.js +1 -0
  296. package/dist/_app_/form/error-message.js +1 -0
  297. package/dist/_app_/form/field.js +1 -0
  298. package/dist/_app_/form/form.js +1 -0
  299. package/dist/_app_/form/help-text.js +1 -0
  300. package/dist/_app_/form/input.js +1 -0
  301. package/dist/_app_/form/label.js +1 -0
  302. package/dist/_app_/form/listbox.js +1 -0
  303. package/dist/_app_/form/money-field.js +1 -0
  304. package/dist/_app_/form/multi-select.js +1 -0
  305. package/dist/_app_/form/number-field.js +1 -0
  306. package/dist/_app_/form/option-group.js +1 -0
  307. package/dist/_app_/form/option.js +1 -0
  308. package/dist/_app_/form/radio-group.js +1 -0
  309. package/dist/_app_/form/radio.js +1 -0
  310. package/dist/_app_/form/search-input.js +1 -0
  311. package/dist/_app_/form/select-field.js +1 -0
  312. package/dist/_app_/form/select.js +1 -0
  313. package/dist/_app_/form/text-field.js +1 -0
  314. package/dist/_app_/form/textarea.js +1 -0
  315. package/dist/_app_/form/time-picker-field.js +1 -0
  316. package/dist/_app_/form/time-picker.js +1 -0
  317. package/dist/_app_/form/toggle-field.js +1 -0
  318. package/dist/_app_/form/toggle-group.js +1 -0
  319. package/dist/_app_/form/toggle.js +1 -0
  320. package/dist/_app_/layout/divider.js +1 -0
  321. package/dist/_app_/layout/grid-item.js +1 -0
  322. package/dist/_app_/layout/grid.js +1 -0
  323. package/dist/_app_/layout/h-stack.js +1 -0
  324. package/dist/_app_/layout/stack.js +1 -0
  325. package/dist/_app_/layout/v-stack.js +1 -0
  326. package/dist/_app_/media/icon.js +1 -0
  327. package/dist/_app_/media/image.js +1 -0
  328. package/dist/_app_/overlay/blanket.js +1 -0
  329. package/dist/_app_/overlay/drawer.js +1 -0
  330. package/dist/_app_/overlay/modal.js +1 -0
  331. package/dist/_app_/overlay/popover.js +1 -0
  332. package/dist/_app_/overlay/toast.js +1 -0
  333. package/dist/_app_/overlay/tooltip.js +1 -0
  334. package/dist/_app_/services/toast.js +1 -0
  335. package/dist/_app_/status/badge.js +1 -0
  336. package/dist/_app_/status/skeleton-avatar.js +1 -0
  337. package/dist/_app_/status/skeleton-button.js +1 -0
  338. package/dist/_app_/status/skeleton-image.js +1 -0
  339. package/dist/_app_/status/skeleton-text.js +1 -0
  340. package/dist/_app_/status/skeleton.js +1 -0
  341. package/dist/_app_/status/tag.js +1 -0
  342. package/dist/_app_/typography/heading.js +1 -0
  343. package/dist/_app_/typography/text.js +1 -0
  344. package/dist/action/button.css +360 -0
  345. package/dist/action/button.js +50 -0
  346. package/dist/action/button.js.map +1 -0
  347. package/dist/action/index.js +3 -0
  348. package/dist/action/index.js.map +1 -0
  349. package/dist/action/link-css-2b7265326c02ebb264835b3680b7e81e.css +19 -0
  350. package/dist/action/link.js +17 -0
  351. package/dist/action/link.js.map +1 -0
  352. package/dist/data/index.js +2 -0
  353. package/dist/data/index.js.map +1 -0
  354. package/dist/data/table.css +270 -0
  355. package/dist/data/table.js +478 -0
  356. package/dist/data/table.js.map +1 -0
  357. package/dist/form/calendar.css +239 -0
  358. package/dist/form/calendar.js +532 -0
  359. package/dist/form/calendar.js.map +1 -0
  360. package/dist/form/checkbox-group.css +47 -0
  361. package/dist/form/checkbox-group.js +102 -0
  362. package/dist/form/checkbox-group.js.map +1 -0
  363. package/dist/form/checkbox.css +193 -0
  364. package/dist/form/checkbox.js +70 -0
  365. package/dist/form/checkbox.js.map +1 -0
  366. package/dist/form/control-css-6c81caf37fd813b36033091d5340bc70.css +20 -0
  367. package/dist/form/control.js +57 -0
  368. package/dist/form/control.js.map +1 -0
  369. package/dist/form/country-data.js +1075 -0
  370. package/dist/form/country-data.js.map +1 -0
  371. package/dist/form/country-select-field.js +37 -0
  372. package/dist/form/country-select-field.js.map +1 -0
  373. package/dist/form/country-select.css +299 -0
  374. package/dist/form/country-select.js +336 -0
  375. package/dist/form/country-select.js.map +1 -0
  376. package/dist/form/date-picker-field.js +37 -0
  377. package/dist/form/date-picker-field.js.map +1 -0
  378. package/dist/form/date-picker.css +177 -0
  379. package/dist/form/date-picker.js +366 -0
  380. package/dist/form/date-picker.js.map +1 -0
  381. package/dist/form/date-range-picker-field.js +37 -0
  382. package/dist/form/date-range-picker-field.js.map +1 -0
  383. package/dist/form/date-range-picker.css +259 -0
  384. package/dist/form/date-range-picker.js +451 -0
  385. package/dist/form/date-range-picker.js.map +1 -0
  386. package/dist/form/error-message.css +27 -0
  387. package/dist/form/error-message.js +27 -0
  388. package/dist/form/error-message.js.map +1 -0
  389. package/dist/form/field.css +45 -0
  390. package/dist/form/field.js +28 -0
  391. package/dist/form/field.js.map +1 -0
  392. package/dist/form/form.css +6 -0
  393. package/dist/form/form.js +120 -0
  394. package/dist/form/form.js.map +1 -0
  395. package/dist/form/help-text.css +7 -0
  396. package/dist/form/help-text.js +13 -0
  397. package/dist/form/help-text.js.map +1 -0
  398. package/dist/form/index.js +33 -0
  399. package/dist/form/index.js.map +1 -0
  400. package/dist/form/input.css +176 -0
  401. package/dist/form/input.js +43 -0
  402. package/dist/form/input.js.map +1 -0
  403. package/dist/form/label.css +59 -0
  404. package/dist/form/label.js +54 -0
  405. package/dist/form/label.js.map +1 -0
  406. package/dist/form/listbox.css +125 -0
  407. package/dist/form/listbox.js +388 -0
  408. package/dist/form/listbox.js.map +1 -0
  409. package/dist/form/money-field.css +9 -0
  410. package/dist/form/money-field.js +203 -0
  411. package/dist/form/money-field.js.map +1 -0
  412. package/dist/form/multi-select.css +343 -0
  413. package/dist/form/multi-select.js +429 -0
  414. package/dist/form/multi-select.js.map +1 -0
  415. package/dist/form/number-field.css +170 -0
  416. package/dist/form/number-field.js +184 -0
  417. package/dist/form/number-field.js.map +1 -0
  418. package/dist/form/option-group.js +2 -0
  419. package/dist/form/option-group.js.map +1 -0
  420. package/dist/form/option.js +2 -0
  421. package/dist/form/option.js.map +1 -0
  422. package/dist/form/radio-group.css +54 -0
  423. package/dist/form/radio-group.js +53 -0
  424. package/dist/form/radio-group.js.map +1 -0
  425. package/dist/form/radio.css +183 -0
  426. package/dist/form/radio.js +65 -0
  427. package/dist/form/radio.js.map +1 -0
  428. package/dist/form/search-input.css +118 -0
  429. package/dist/form/search-input.js +87 -0
  430. package/dist/form/search-input.js.map +1 -0
  431. package/dist/form/select-field.js +39 -0
  432. package/dist/form/select-field.js.map +1 -0
  433. package/dist/form/select.css +201 -0
  434. package/dist/form/select.js +394 -0
  435. package/dist/form/select.js.map +1 -0
  436. package/dist/form/text-field-css-f60360f3f8aaf4da664eaccd1bcc9f8f.css +31 -0
  437. package/dist/form/text-field.js +141 -0
  438. package/dist/form/text-field.js.map +1 -0
  439. package/dist/form/textarea.css +139 -0
  440. package/dist/form/textarea.js +140 -0
  441. package/dist/form/textarea.js.map +1 -0
  442. package/dist/form/time-picker-field.js +37 -0
  443. package/dist/form/time-picker-field.js.map +1 -0
  444. package/dist/form/time-picker.css +239 -0
  445. package/dist/form/time-picker.js +618 -0
  446. package/dist/form/time-picker.js.map +1 -0
  447. package/dist/form/toggle-field.css +6 -0
  448. package/dist/form/toggle-field.js +40 -0
  449. package/dist/form/toggle-field.js.map +1 -0
  450. package/dist/form/toggle-group.css +46 -0
  451. package/dist/form/toggle-group.js +20 -0
  452. package/dist/form/toggle-group.js.map +1 -0
  453. package/dist/form/toggle.css +206 -0
  454. package/dist/form/toggle.js +103 -0
  455. package/dist/form/toggle.js.map +1 -0
  456. package/dist/index.js +2 -0
  457. package/dist/index.js.map +1 -0
  458. package/dist/layout/divider-css-1ba104b9c606cbd1f542b45640fb5f2b.css +122 -0
  459. package/dist/layout/divider.js +35 -0
  460. package/dist/layout/divider.js.map +1 -0
  461. package/dist/layout/grid-css-086976eb41686e3714554f56c098d3d5.css +155 -0
  462. package/dist/layout/grid-item-css-8d0f842568d1e8345ac709bdf2ed6745.css +122 -0
  463. package/dist/layout/grid-item.js +13 -0
  464. package/dist/layout/grid-item.js.map +1 -0
  465. package/dist/layout/grid.js +96 -0
  466. package/dist/layout/grid.js.map +1 -0
  467. package/dist/layout/h-stack.js +14 -0
  468. package/dist/layout/h-stack.js.map +1 -0
  469. package/dist/layout/index.js +7 -0
  470. package/dist/layout/index.js.map +1 -0
  471. package/dist/layout/stack-css-f094dc4a0a45b6af2acedca81dcce289.css +77 -0
  472. package/dist/layout/stack.js +32 -0
  473. package/dist/layout/stack.js.map +1 -0
  474. package/dist/layout/v-stack.js +14 -0
  475. package/dist/layout/v-stack.js.map +1 -0
  476. package/dist/media/icon.css +43 -0
  477. package/dist/media/icon.js +71 -0
  478. package/dist/media/icon.js.map +1 -0
  479. package/dist/media/image-css-6bc4899d3a8b992c3d4d2f1a796ce0fc.css +78 -0
  480. package/dist/media/image.js +47 -0
  481. package/dist/media/image.js.map +1 -0
  482. package/dist/media/index.js +3 -0
  483. package/dist/media/index.js.map +1 -0
  484. package/dist/overlay/blanket.css +67 -0
  485. package/dist/overlay/blanket.js +139 -0
  486. package/dist/overlay/blanket.js.map +1 -0
  487. package/dist/overlay/drawer.css +369 -0
  488. package/dist/overlay/drawer.js +275 -0
  489. package/dist/overlay/drawer.js.map +1 -0
  490. package/dist/overlay/index.js +7 -0
  491. package/dist/overlay/index.js.map +1 -0
  492. package/dist/overlay/modal.css +209 -0
  493. package/dist/overlay/modal.js +269 -0
  494. package/dist/overlay/modal.js.map +1 -0
  495. package/dist/overlay/popover.css +210 -0
  496. package/dist/overlay/popover.js +396 -0
  497. package/dist/overlay/popover.js.map +1 -0
  498. package/dist/overlay/toast.css +300 -0
  499. package/dist/overlay/toast.js +123 -0
  500. package/dist/overlay/toast.js.map +1 -0
  501. package/dist/overlay/tooltip.css +246 -0
  502. package/dist/overlay/tooltip.js +368 -0
  503. package/dist/overlay/tooltip.js.map +1 -0
  504. package/dist/services/index.js +2 -0
  505. package/dist/services/index.js.map +1 -0
  506. package/dist/services/toast.js +162 -0
  507. package/dist/services/toast.js.map +1 -0
  508. package/dist/skeleton-CL5Pcwrk.js +3 -0
  509. package/dist/skeleton-CL5Pcwrk.js.map +1 -0
  510. package/dist/status/badge.css +218 -0
  511. package/dist/status/badge.js +38 -0
  512. package/dist/status/badge.js.map +1 -0
  513. package/dist/status/index.js +8 -0
  514. package/dist/status/index.js.map +1 -0
  515. package/dist/status/skeleton-avatar.js +29 -0
  516. package/dist/status/skeleton-avatar.js.map +1 -0
  517. package/dist/status/skeleton-button.js +25 -0
  518. package/dist/status/skeleton-button.js.map +1 -0
  519. package/dist/status/skeleton-image.js +31 -0
  520. package/dist/status/skeleton-image.js.map +1 -0
  521. package/dist/status/skeleton-text.js +41 -0
  522. package/dist/status/skeleton-text.js.map +1 -0
  523. package/dist/status/skeleton.css +185 -0
  524. package/dist/status/skeleton.js +44 -0
  525. package/dist/status/skeleton.js.map +1 -0
  526. package/dist/status/tag.css +352 -0
  527. package/dist/status/tag.js +81 -0
  528. package/dist/status/tag.js.map +1 -0
  529. package/dist/styles/animations.css +11 -0
  530. package/dist/styles/base/typography.css +47 -0
  531. package/dist/styles/ember-promise-modals.css +43 -0
  532. package/dist/styles/primitive/colors.css +86 -0
  533. package/dist/styles/primitive/effects.css +29 -0
  534. package/dist/styles/primitive/fonts.css +19 -0
  535. package/dist/styles/primitive/motion.css +18 -0
  536. package/dist/styles/primitive/shape.css +17 -0
  537. package/dist/styles/primitive/spacing.css +29 -0
  538. package/dist/styles/primitive/typography.css +45 -0
  539. package/dist/styles/primitive/z-index.css +14 -0
  540. package/dist/styles/semantic/colors.css +155 -0
  541. package/dist/styles/semantic/component.css +0 -0
  542. package/dist/styles/semantic/effects.css +17 -0
  543. package/dist/styles/semantic/motion.css +10 -0
  544. package/dist/styles/semantic/shape.css +20 -0
  545. package/dist/styles/semantic/sizing.css +53 -0
  546. package/dist/styles/semantic/spacing.css +32 -0
  547. package/dist/styles/semantic/typography.css +32 -0
  548. package/dist/styles/tokens.css +31 -0
  549. package/dist/styles.css +710 -0
  550. package/dist/template-registry.js +2 -0
  551. package/dist/template-registry.js.map +1 -0
  552. package/dist/types/design-system.js +2 -0
  553. package/dist/types/design-system.js.map +1 -0
  554. package/dist/typography/heading-css-8850735eabc2efb34f15240b852c99e7.css +99 -0
  555. package/dist/typography/heading.js +80 -0
  556. package/dist/typography/heading.js.map +1 -0
  557. package/dist/typography/index.js +3 -0
  558. package/dist/typography/index.js.map +1 -0
  559. package/dist/typography/text-css-73e03f1b750b32d7064d4ef87562289c.css +143 -0
  560. package/dist/typography/text.js +76 -0
  561. package/dist/typography/text.js.map +1 -0
  562. package/dist/ui/index.js +3 -0
  563. package/dist/ui/index.js.map +1 -0
  564. package/package.json +218 -0
@@ -0,0 +1,34 @@
1
+ import Component from '@glimmer/component';
2
+ export type LabelSize = 'sm' | 'md' | 'lg';
3
+ export interface LabelSignature {
4
+ Element: HTMLLabelElement;
5
+ Args: {
6
+ /** The ID of the input this label is for */
7
+ for?: string;
8
+ /** Required indicator - shows asterisk or custom text when required */
9
+ requiredIndicator?: boolean | string;
10
+ /** Optional indicator - shows "(optional)" or custom text when not required */
11
+ optionalIndicator?: boolean | string;
12
+ /** Secondary label text (e.g., "recommended") */
13
+ secondaryLabel?: string;
14
+ /** Visually hide label (keeps accessible for screen readers) */
15
+ isVisuallyHidden?: boolean;
16
+ /** Size variant */
17
+ size?: LabelSize;
18
+ /** Required state */
19
+ isRequired?: boolean;
20
+ /** Disabled styling */
21
+ isDisabled?: boolean;
22
+ };
23
+ Blocks: {
24
+ default: [];
25
+ };
26
+ }
27
+ export default class Label extends Component<LabelSignature> {
28
+ get size(): LabelSize;
29
+ get showRequiredIndicator(): boolean;
30
+ get requiredIndicatorText(): string;
31
+ get showOptionalIndicator(): boolean;
32
+ get optionalIndicatorText(): string;
33
+ }
34
+ //# sourceMappingURL=label.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"label.d.ts","sourceRoot":"","sources":["../../src/form/label.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,oBAAoB,CAAC;AAE3C,MAAM,MAAM,SAAS,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAE3C,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,gBAAgB,CAAC;IAC1B,IAAI,EAAE;QACJ,4CAA4C;QAC5C,GAAG,CAAC,EAAE,MAAM,CAAC;QAEb,uEAAuE;QACvE,iBAAiB,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;QAErC,+EAA+E;QAC/E,iBAAiB,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;QAErC,iDAAiD;QACjD,cAAc,CAAC,EAAE,MAAM,CAAC;QAExB,gEAAgE;QAChE,gBAAgB,CAAC,EAAE,OAAO,CAAC;QAE3B,mBAAmB;QACnB,IAAI,CAAC,EAAE,SAAS,CAAC;QAEjB,qBAAqB;QACrB,UAAU,CAAC,EAAE,OAAO,CAAC;QAErB,uBAAuB;QACvB,UAAU,CAAC,EAAE,OAAO,CAAC;KACtB,CAAC;IACF,MAAM,EAAE;QACN,OAAO,EAAE,EAAE,CAAC;KACb,CAAC;CACH;AAED,MAAM,CAAC,OAAO,OAAO,KAAM,SAAQ,SAAS,CAAC,cAAc,CAAC;IAC1D,IAAI,IAAI,IAAI,SAAS,CAEpB;IAED,IAAI,qBAAqB,IAAI,OAAO,CAInC;IAED,IAAI,qBAAqB,IAAI,MAAM,CAMlC;IAED,IAAI,qBAAqB,IAAI,OAAO,CAInC;IAED,IAAI,qBAAqB,IAAI,MAAM,CAMlC;CAwDF"}
@@ -0,0 +1,181 @@
1
+ import Component from '@glimmer/component';
2
+ import './listbox.css';
3
+ export interface ListboxOption {
4
+ value: string;
5
+ label: string;
6
+ disabled?: boolean;
7
+ group?: string;
8
+ }
9
+ export type ListboxMode = 'single' | 'multiple';
10
+ export interface OptionState {
11
+ value: string;
12
+ label: string;
13
+ isSelected: boolean;
14
+ isFocused: boolean;
15
+ isDisabled: boolean;
16
+ }
17
+ interface GroupedOptions {
18
+ group: string | null;
19
+ options: ListboxOption[];
20
+ }
21
+ interface ListboxOptionSignature {
22
+ Element: HTMLDivElement;
23
+ Args: {
24
+ value: string;
25
+ disabled?: boolean;
26
+ /** Internal: provided by parent - is this option selected */
27
+ selected?: boolean;
28
+ /** Internal: provided by parent - is this option focused */
29
+ focused?: boolean;
30
+ /** Internal: provided by parent - unique ID for this option */
31
+ id?: string;
32
+ /** Internal: provided by parent - select handler */
33
+ onselect?: (value: string) => void;
34
+ /** Internal: provided by parent - mouse enter handler */
35
+ onhover?: (value: string) => void;
36
+ };
37
+ Blocks: {
38
+ default: [];
39
+ };
40
+ }
41
+ interface ListboxGroupSignature {
42
+ Element: HTMLDivElement;
43
+ Args: {
44
+ label: string;
45
+ };
46
+ Blocks: {
47
+ default: [];
48
+ };
49
+ }
50
+ interface ListboxGroupLabelSignature {
51
+ Element: HTMLDivElement;
52
+ Args: Record<string, never>;
53
+ Blocks: {
54
+ default: [];
55
+ };
56
+ }
57
+ interface ListboxEmptySignature {
58
+ Element: HTMLDivElement;
59
+ Args: Record<string, never>;
60
+ Blocks: {
61
+ default: [];
62
+ };
63
+ }
64
+ declare class ListboxOptionComponent extends Component<ListboxOptionSignature> {
65
+ handleClick: () => void;
66
+ handleMouseEnter: () => void;
67
+ }
68
+ declare class ListboxGroupComponent extends Component<ListboxGroupSignature> {
69
+ labelId: string;
70
+ }
71
+ declare class ListboxGroupLabelComponent extends Component<ListboxGroupLabelSignature> {
72
+ get role(): string;
73
+ }
74
+ declare class ListboxEmptyComponent extends Component<ListboxEmptySignature> {
75
+ get className(): string;
76
+ }
77
+ export interface ListboxSignature {
78
+ Element: HTMLDivElement;
79
+ Args: {
80
+ /** Array of options (strings or objects) */
81
+ options?: ListboxOption[] | string[];
82
+ /** Function to get option value from custom objects */
83
+ getOptionValue?: (option: unknown) => string;
84
+ /** Function to get option label from custom objects */
85
+ getOptionLabel?: (option: unknown) => string;
86
+ /** Function to check if option is disabled */
87
+ isOptionDisabled?: (option: unknown) => boolean;
88
+ /** Function to group options */
89
+ groupBy?: (option: unknown) => string;
90
+ /** Selection mode */
91
+ mode?: ListboxMode;
92
+ /** Selected value (single mode: string, multiple mode: string[]) */
93
+ value?: string | string[];
94
+ /** Change handler - called with new value when selection changes */
95
+ onChange?: (value: string | string[]) => void;
96
+ /** Focus first option on mount */
97
+ autoFocus?: boolean;
98
+ /** Move focus on mouse hover */
99
+ focusOnHover?: boolean;
100
+ /** Loop navigation at boundaries */
101
+ loop?: boolean;
102
+ /** Enable typeahead search */
103
+ typeahead?: boolean;
104
+ /** Typeahead timeout in ms */
105
+ typeaheadTimeout?: number;
106
+ /** Disabled state */
107
+ isDisabled?: boolean;
108
+ /** Focus change handler */
109
+ onFocusChange?: (value: string | null) => void;
110
+ /** Select handler (called on each selection) */
111
+ onSelect?: (value: string) => void;
112
+ };
113
+ Blocks: {
114
+ default: [
115
+ {
116
+ option: typeof ListboxOptionComponent;
117
+ group: typeof ListboxGroupComponent;
118
+ groupLabel: typeof ListboxGroupLabelComponent;
119
+ empty: typeof ListboxEmptyComponent;
120
+ /** Check if a value is selected */
121
+ isSelected: (value: string) => boolean;
122
+ /** Check if a value is focused */
123
+ isFocused: (value: string) => boolean;
124
+ /** The currently focused value */
125
+ focusedValue: string | null;
126
+ /** Select a value programmatically */
127
+ select: (value: string) => void;
128
+ /** Option ID generator for aria-activedescendant */
129
+ getOptionId: (value: string) => string;
130
+ /** Handler for option mouse enter */
131
+ onOptionMouseEnter: (value: string) => void;
132
+ }
133
+ ];
134
+ empty: [];
135
+ };
136
+ }
137
+ export default class Listbox extends Component<ListboxSignature> {
138
+ private focusedValue;
139
+ private typeaheadBuffer;
140
+ private typeaheadTimeout;
141
+ private elementRef;
142
+ willDestroy(): void;
143
+ get componentId(): string;
144
+ get mode(): ListboxMode;
145
+ get selectedValue(): string | string[];
146
+ get loop(): boolean;
147
+ get typeaheadEnabled(): boolean;
148
+ get typeaheadTimeoutMs(): number;
149
+ get focusOnHover(): boolean;
150
+ /** Normalize options to consistent format */
151
+ get normalizedOptions(): ListboxOption[];
152
+ /** Get enabled (non-disabled) options for navigation */
153
+ get enabledOptions(): ListboxOption[];
154
+ /** Group options by group key */
155
+ get groupedOptions(): GroupedOptions[];
156
+ get hasGroups(): boolean;
157
+ get isEmpty(): boolean;
158
+ get activedescendant(): string | undefined;
159
+ get tabIndex(): number;
160
+ getOptionId: (value: string) => string;
161
+ getGroupId: (groupName: string) => string;
162
+ isSelected: (value: string) => boolean;
163
+ isFocused: (value: string) => boolean;
164
+ selectValue: (value: string) => void;
165
+ private moveFocus;
166
+ private setFocusedValue;
167
+ private handleTypeahead;
168
+ handleKeyDown: (event: KeyboardEvent) => void;
169
+ handleFocus: () => void;
170
+ handleBlur: () => void;
171
+ handleOptionMouseEnter: (value: string) => void;
172
+ setupRef: import("ember-modifier").FunctionBasedModifier<{
173
+ Args: {
174
+ Positional: unknown[];
175
+ Named: import("ember-modifier/-private/signature").EmptyObject;
176
+ };
177
+ Element: HTMLDivElement;
178
+ }>;
179
+ }
180
+ export {};
181
+ //# sourceMappingURL=listbox.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"listbox.d.ts","sourceRoot":"","sources":["../../src/form/listbox.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,74 @@
1
+ import Component from '@glimmer/component';
2
+ import './money-field.css';
3
+ export type CurrencyPosition = 'prefix' | 'suffix';
4
+ export type LabelVisibility = 'visible' | 'hidden';
5
+ interface CurrencyConfig {
6
+ symbol: string;
7
+ decimals: number;
8
+ position: CurrencyPosition;
9
+ }
10
+ export interface MoneyFieldSignature {
11
+ Element: HTMLDivElement;
12
+ Args: {
13
+ /** Label text (required) */
14
+ label: string;
15
+ /** ISO 4217 currency code (required) */
16
+ currency: string;
17
+ /** Current value in minor units (e.g., pence, cents). Supports negative values for refunds/adjustments. */
18
+ value?: number;
19
+ /** Minimum allowed value (in minor units) */
20
+ min?: number;
21
+ /** Maximum allowed value (in minor units) */
22
+ max?: number;
23
+ /** Placeholder text */
24
+ placeholder?: string;
25
+ /** Help text displayed below input */
26
+ helpText?: string;
27
+ /** Error message (also sets invalid state) */
28
+ error?: string;
29
+ /** Field is required */
30
+ isRequired?: boolean;
31
+ /** Field is disabled */
32
+ isDisabled?: boolean;
33
+ /** Field is read-only */
34
+ isReadOnly?: boolean;
35
+ /** Show currency symbol */
36
+ showCurrencySymbol?: boolean;
37
+ /** Currency symbol position */
38
+ currencyPosition?: CurrencyPosition;
39
+ /** Label visibility */
40
+ labelVisibility?: LabelVisibility;
41
+ /** Input name for forms */
42
+ name?: string;
43
+ /** Input event handler (value in minor units) */
44
+ onInput?: (value: number | null, event: Event) => void;
45
+ /** Change event handler (value in minor units) */
46
+ onChange?: (value: number | null, event: Event) => void;
47
+ /** Blur event handler */
48
+ onBlur?: (event: FocusEvent) => void;
49
+ /** Focus event handler */
50
+ onFocus?: (event: FocusEvent) => void;
51
+ };
52
+ }
53
+ export default class MoneyField extends Component<MoneyFieldSignature> {
54
+ internalDisplayValue: string;
55
+ get currencyConfig(): CurrencyConfig;
56
+ get showCurrencySymbol(): boolean;
57
+ get currencyPosition(): CurrencyPosition;
58
+ get currencySymbol(): string;
59
+ get showPrefix(): boolean;
60
+ get showSuffix(): boolean;
61
+ get isLabelHidden(): boolean;
62
+ get isInvalid(): boolean;
63
+ get isControlled(): boolean;
64
+ get displayValue(): string;
65
+ get placeholder(): string;
66
+ formatMinorToDisplay(minorUnits: number | undefined | null): string;
67
+ parseDisplayToMinor(displayValue: string): number | null;
68
+ clampValue(value: number): number;
69
+ handleInput(event: Event): void;
70
+ handleBlur(event: FocusEvent): void;
71
+ handleFocus(event: FocusEvent): void;
72
+ }
73
+ export {};
74
+ //# sourceMappingURL=money-field.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"money-field.d.ts","sourceRoot":"","sources":["../../src/form/money-field.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,oBAAoB,CAAC;AAQ3C,OAAO,mBAAmB,CAAC;AAE3B,MAAM,MAAM,gBAAgB,GAAG,QAAQ,GAAG,QAAQ,CAAC;AACnD,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG,QAAQ,CAAC;AAEnD,UAAU,cAAc;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,gBAAgB,CAAC;CAC5B;AAUD,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,cAAc,CAAC;IACxB,IAAI,EAAE;QACJ,4BAA4B;QAC5B,KAAK,EAAE,MAAM,CAAC;QAEd,wCAAwC;QACxC,QAAQ,EAAE,MAAM,CAAC;QAEjB,2GAA2G;QAC3G,KAAK,CAAC,EAAE,MAAM,CAAC;QAEf,6CAA6C;QAC7C,GAAG,CAAC,EAAE,MAAM,CAAC;QAEb,6CAA6C;QAC7C,GAAG,CAAC,EAAE,MAAM,CAAC;QAEb,uBAAuB;QACvB,WAAW,CAAC,EAAE,MAAM,CAAC;QAErB,sCAAsC;QACtC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAElB,8CAA8C;QAC9C,KAAK,CAAC,EAAE,MAAM,CAAC;QAEf,wBAAwB;QACxB,UAAU,CAAC,EAAE,OAAO,CAAC;QAErB,wBAAwB;QACxB,UAAU,CAAC,EAAE,OAAO,CAAC;QAErB,yBAAyB;QACzB,UAAU,CAAC,EAAE,OAAO,CAAC;QAErB,2BAA2B;QAC3B,kBAAkB,CAAC,EAAE,OAAO,CAAC;QAE7B,+BAA+B;QAC/B,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;QAEpC,uBAAuB;QACvB,eAAe,CAAC,EAAE,eAAe,CAAC;QAElC,2BAA2B;QAC3B,IAAI,CAAC,EAAE,MAAM,CAAC;QAEd,iDAAiD;QACjD,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,EAAE,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;QAEvD,kDAAkD;QAClD,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,EAAE,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;QAExD,yBAAyB;QACzB,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;QAErC,0BAA0B;QAC1B,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;KACvC,CAAC;CACH;AAED,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,SAAS,CAAC,mBAAmB,CAAC;IAC3D,oBAAoB,SAAM;IAEnC,IAAI,cAAc,IAAI,cAAc,CAQnC;IAED,IAAI,kBAAkB,IAAI,OAAO,CAEhC;IAED,IAAI,gBAAgB,IAAI,gBAAgB,CAEvC;IAED,IAAI,cAAc,IAAI,MAAM,CAE3B;IAED,IAAI,UAAU,IAAI,OAAO,CAExB;IAED,IAAI,UAAU,IAAI,OAAO,CAExB;IAED,IAAI,aAAa,IAAI,OAAO,CAE3B;IAED,IAAI,SAAS,IAAI,OAAO,CAEvB;IAED,IAAI,YAAY,IAAI,OAAO,CAE1B;IAED,IAAI,YAAY,IAAI,MAAM,CAKzB;IAED,IAAI,WAAW,IAAI,MAAM,CASxB;IAED,oBAAoB,CAAC,UAAU,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,GAAG,MAAM;IAYnE,mBAAmB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAYxD,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAOjC,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAgC/B,UAAU,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;IA6BnC,WAAW,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;CAsDrC"}
@@ -0,0 +1,121 @@
1
+ import Component from '@glimmer/component';
2
+ import './multi-select.css';
3
+ export interface MultiSelectOption {
4
+ value: string;
5
+ label: string;
6
+ disabled?: boolean;
7
+ group?: string;
8
+ }
9
+ interface GroupedOptions {
10
+ group: string | null;
11
+ options: MultiSelectOption[];
12
+ }
13
+ export interface MultiSelectSignature {
14
+ Element: HTMLDivElement;
15
+ Args: {
16
+ /** Array of options (strings or objects) */
17
+ options?: MultiSelectOption[] | string[];
18
+ /** Function to get option value from custom objects */
19
+ getOptionValue?: (option: unknown) => string;
20
+ /** Function to get option label from custom objects */
21
+ getOptionLabel?: (option: unknown) => string;
22
+ /** Function to check if option is disabled */
23
+ isOptionDisabled?: (option: unknown) => boolean;
24
+ /** Function to group options */
25
+ groupBy?: (option: unknown) => string;
26
+ /** Selected values array */
27
+ value?: string[];
28
+ /** Change handler - called with new values when selection changes */
29
+ onChange?: (values: string[]) => void;
30
+ /** Placeholder text shown when no value is selected */
31
+ placeholder?: string;
32
+ /** Placeholder for the search input */
33
+ searchPlaceholder?: string;
34
+ /** Whether the multi-select is disabled */
35
+ isDisabled?: boolean;
36
+ /** Whether the multi-select is in an invalid state */
37
+ isInvalid?: boolean;
38
+ /** Whether the multi-select is required */
39
+ isRequired?: boolean;
40
+ /** Maximum number of selections allowed */
41
+ maxSelections?: number;
42
+ /** Maximum number of chips to display before showing "+N more" */
43
+ maxDisplayedChips?: number;
44
+ /** Input name for forms */
45
+ name?: string;
46
+ /** ID for the multi-select element (typically provided by Control) */
47
+ id?: string;
48
+ /** aria-describedby for accessibility (typically provided by Control) */
49
+ 'aria-describedby'?: string;
50
+ /** Blur event handler */
51
+ onBlur?: (event: FocusEvent) => void;
52
+ /** Focus event handler */
53
+ onFocus?: (event: FocusEvent) => void;
54
+ };
55
+ Blocks: {
56
+ default: [];
57
+ };
58
+ }
59
+ export default class MultiSelect extends Component<MultiSelectSignature> {
60
+ isOpen: boolean;
61
+ searchValue: string;
62
+ focusedValue: string | null;
63
+ inputElement: HTMLInputElement | null;
64
+ get componentId(): string;
65
+ get listboxId(): string;
66
+ get selectedValues(): string[];
67
+ get placeholder(): string;
68
+ get searchPlaceholder(): string;
69
+ get maxDisplayedChips(): number;
70
+ /** Normalize options to consistent format */
71
+ get normalizedOptions(): MultiSelectOption[];
72
+ /** Filter options based on search value */
73
+ get filteredOptions(): MultiSelectOption[];
74
+ /** Get enabled (non-disabled) options for navigation */
75
+ get enabledFilteredOptions(): MultiSelectOption[];
76
+ /** Group options by group key */
77
+ get groupedOptions(): GroupedOptions[];
78
+ get hasGroups(): boolean;
79
+ get isEmpty(): boolean;
80
+ /** Get selected options with their labels */
81
+ get selectedOptions(): MultiSelectOption[];
82
+ /** Chips to display (respecting maxDisplayedChips) */
83
+ get displayedChips(): MultiSelectOption[];
84
+ /** Number of additional chips not displayed */
85
+ get hiddenChipsCount(): number;
86
+ /** Whether max selections has been reached */
87
+ get isMaxSelectionsReached(): boolean;
88
+ get activedescendant(): string | undefined;
89
+ get ariaExpanded(): 'true' | 'false';
90
+ get ariaRequired(): 'true' | undefined;
91
+ get ariaInvalid(): 'true' | undefined;
92
+ getOptionId: (value: string) => string;
93
+ getGroupId: (groupName: string) => string;
94
+ isSelected: (value: string) => boolean;
95
+ isFocused: (value: string) => boolean;
96
+ toggleOption: (value: string) => void;
97
+ removeOption: (value: string) => void;
98
+ clearAll: () => void;
99
+ private setFocusedValue;
100
+ private moveFocus;
101
+ openDropdown: () => void;
102
+ closeDropdown: () => void;
103
+ handleOpenChange: (open: boolean) => void;
104
+ handleTriggerClick: (event: MouseEvent) => void;
105
+ handleInputClick: (event: MouseEvent) => void;
106
+ handleInputChange: (event: Event) => void;
107
+ handleInputFocus: (event: FocusEvent) => void;
108
+ handleInputBlur: (event: FocusEvent) => void;
109
+ handleKeyDown: (event: KeyboardEvent) => void;
110
+ handleOptionClick: (value: string) => void;
111
+ handleOptionMouseEnter: (value: string) => void;
112
+ setupInput: import("ember-modifier").FunctionBasedModifier<{
113
+ Args: {
114
+ Positional: unknown[];
115
+ Named: import("ember-modifier/-private/signature").EmptyObject;
116
+ };
117
+ Element: HTMLInputElement;
118
+ }>;
119
+ }
120
+ export {};
121
+ //# sourceMappingURL=multi-select.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"multi-select.d.ts","sourceRoot":"","sources":["../../src/form/multi-select.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,86 @@
1
+ import Component from '@glimmer/component';
2
+ import './number-field.css';
3
+ export type NumberFieldInputMode = 'numeric' | 'decimal';
4
+ export type LabelVisibility = 'visible' | 'hidden';
5
+ export interface NumberFieldSignature {
6
+ Element: HTMLDivElement;
7
+ Args: {
8
+ /** Label text (required) */
9
+ label: string;
10
+ /** Current value */
11
+ value?: number;
12
+ /** Minimum allowed value */
13
+ min?: number;
14
+ /** Maximum allowed value */
15
+ max?: number;
16
+ /** Step increment (default: 1) */
17
+ step?: number;
18
+ /** Placeholder text */
19
+ placeholder?: string;
20
+ /** Help text displayed below input */
21
+ helpText?: string;
22
+ /** Error message (also sets invalid state) */
23
+ error?: string;
24
+ /** Field is required */
25
+ isRequired?: boolean;
26
+ /** Field is disabled */
27
+ isDisabled?: boolean;
28
+ /** Field is read-only */
29
+ isReadOnly?: boolean;
30
+ /** Show increment/decrement buttons (default: true) */
31
+ showStepper?: boolean;
32
+ /** Text before input (e.g., "$") */
33
+ prefix?: string;
34
+ /** Text after input (e.g., "%", "kg") */
35
+ suffix?: string;
36
+ /** Label visibility */
37
+ labelVisibility?: LabelVisibility;
38
+ /** Input mode for mobile keyboard */
39
+ inputMode?: NumberFieldInputMode;
40
+ /** Input name for forms */
41
+ name?: string;
42
+ /** Input event handler */
43
+ onInput?: (value: number | null, event: Event) => void;
44
+ /** Change event handler (on blur or stepper click) */
45
+ onChange?: (value: number | null, event: Event) => void;
46
+ /** Blur event handler */
47
+ onBlur?: (event: FocusEvent) => void;
48
+ /** Focus event handler */
49
+ onFocus?: (event: FocusEvent) => void;
50
+ };
51
+ }
52
+ export default class NumberField extends Component<NumberFieldSignature> {
53
+ get step(): number;
54
+ get min(): number;
55
+ get max(): number;
56
+ get showStepper(): boolean;
57
+ get isInvalid(): boolean;
58
+ get isLabelHidden(): boolean;
59
+ /** Auto-detect inputMode based on step if not explicitly set */
60
+ get inputMode(): NumberFieldInputMode;
61
+ /** Display value for the input */
62
+ get displayValue(): string;
63
+ /** Check if at minimum bound */
64
+ get isAtMin(): boolean;
65
+ /** Check if at maximum bound */
66
+ get isAtMax(): boolean;
67
+ /** Clamp value to min/max bounds */
68
+ clamp: (value: number) => number;
69
+ /** Round to step precision to avoid floating point issues */
70
+ roundToStep: (value: number) => number;
71
+ increment: (event: Event) => void;
72
+ decrement: (event: Event) => void;
73
+ handleInput: (event: Event) => void;
74
+ handleFocus: (event: FocusEvent) => void;
75
+ handleBlur: (event: FocusEvent) => void;
76
+ /** Build aria-describedby from the control's help text and error message IDs */
77
+ getAriaDescribedBy: (controlId: string) => string | undefined;
78
+ /** aria-valuemin - only show if min is not -Infinity */
79
+ get ariaValueMin(): number | undefined;
80
+ /** aria-valuemax - only show if max is not Infinity */
81
+ get ariaValueMax(): number | undefined;
82
+ /** aria-valuenow - current value or undefined if empty */
83
+ get ariaValueNow(): number | undefined;
84
+ handleKeyDown: (event: KeyboardEvent) => void;
85
+ }
86
+ //# sourceMappingURL=number-field.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"number-field.d.ts","sourceRoot":"","sources":["../../src/form/number-field.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export { SelectOptionGroup as default } from './select';
2
+ //# sourceMappingURL=option-group.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"option-group.d.ts","sourceRoot":"","sources":["../../src/form/option-group.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,iBAAiB,IAAI,OAAO,EAAE,MAAM,cAAc,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { SelectOption as default } from './select';
2
+ //# sourceMappingURL=option.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"option.d.ts","sourceRoot":"","sources":["../../src/form/option.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,YAAY,IAAI,OAAO,EAAE,MAAM,cAAc,CAAC"}
@@ -0,0 +1,43 @@
1
+ import Component from '@glimmer/component';
2
+ import Radio, { type RadioSize } from './radio';
3
+ export interface RadioOption {
4
+ value: string;
5
+ label: string;
6
+ disabled?: boolean;
7
+ }
8
+ export interface RadioGroupSignature {
9
+ Element: HTMLFieldSetElement;
10
+ Args: {
11
+ label?: string;
12
+ value?: string;
13
+ options: RadioOption[] | string[];
14
+ name: string;
15
+ helperText?: string;
16
+ error?: string;
17
+ required?: boolean;
18
+ disabled?: boolean;
19
+ orientation?: 'horizontal' | 'vertical';
20
+ size?: RadioSize;
21
+ onChange?: (value: string) => void;
22
+ };
23
+ Blocks: {
24
+ default: [
25
+ {
26
+ Radio: typeof Radio;
27
+ value: string | undefined;
28
+ name: string;
29
+ disabled: boolean | undefined;
30
+ size: RadioSize;
31
+ onChange: (value: string) => void;
32
+ }
33
+ ];
34
+ };
35
+ }
36
+ export default class RadioGroup extends Component<RadioGroupSignature> {
37
+ get orientation(): string;
38
+ get size(): RadioSize;
39
+ get orientationClass(): string;
40
+ get normalizedOptions(): RadioOption[];
41
+ handleChange(value: string): void;
42
+ }
43
+ //# sourceMappingURL=radio-group.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"radio-group.d.ts","sourceRoot":"","sources":["../../src/form/radio-group.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,oBAAoB,CAAC;AAE3C,OAAO,KAAK,EAAE,EAAE,KAAK,SAAS,EAAE,MAAM,aAAa,CAAC;AAIpD,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,mBAAmB,CAAC;IAC7B,IAAI,EAAE;QACJ,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,WAAW,EAAE,GAAG,MAAM,EAAE,CAAC;QAClC,IAAI,EAAE,MAAM,CAAC;QACb,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,WAAW,CAAC,EAAE,YAAY,GAAG,UAAU,CAAC;QACxC,IAAI,CAAC,EAAE,SAAS,CAAC;QACjB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;KACpC,CAAC;IACF,MAAM,EAAE;QACN,OAAO,EAAE;YACP;gBACE,KAAK,EAAE,OAAO,KAAK,CAAC;gBACpB,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;gBAC1B,IAAI,EAAE,MAAM,CAAC;gBACb,QAAQ,EAAE,OAAO,GAAG,SAAS,CAAC;gBAC9B,IAAI,EAAE,SAAS,CAAC;gBAChB,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;aACnC;SACF,CAAC;KACH,CAAC;CACH;AAED,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,SAAS,CAAC,mBAAmB,CAAC;IACpE,IAAI,WAAW,IAAI,MAAM,CAExB;IAED,IAAI,IAAI,IAAI,SAAS,CAEpB;IAED,IAAI,gBAAgB,IAAI,MAAM,CAE7B;IAED,IAAI,iBAAiB,IAAI,WAAW,EAAE,CAOrC;IAGD,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;CA6ElC"}
@@ -0,0 +1,54 @@
1
+ import Component from '@glimmer/component';
2
+ export type RadioSize = 'sm' | 'md' | 'lg';
3
+ export interface RadioSignature {
4
+ Element: HTMLInputElement;
5
+ Args: {
6
+ /** The value this radio represents (required) */
7
+ value: string;
8
+ /** Current value of the radio group (for controlled group usage) */
9
+ groupValue?: string;
10
+ /** Whether this radio is selected (controlled) */
11
+ isChecked?: boolean;
12
+ /** Default checked state (uncontrolled) */
13
+ defaultChecked?: boolean;
14
+ /** Radio group name */
15
+ name?: string;
16
+ /** Size variant */
17
+ size?: RadioSize;
18
+ /** Disabled state */
19
+ isDisabled?: boolean;
20
+ /** Required state */
21
+ isRequired?: boolean;
22
+ /** Invalid state */
23
+ isInvalid?: boolean;
24
+ /** Inline label text */
25
+ label?: string;
26
+ /** Visually hide label (keep for screen readers) */
27
+ isLabelHidden?: boolean;
28
+ /** Description text below label */
29
+ description?: string;
30
+ /** Change handler */
31
+ onChange?: (value: string) => void;
32
+ };
33
+ Blocks: {
34
+ /** Custom label content */
35
+ default: [];
36
+ /** Custom description content */
37
+ description: [];
38
+ };
39
+ }
40
+ export default class Radio extends Component<RadioSignature> {
41
+ get inputId(): string;
42
+ get descriptionId(): string;
43
+ get size(): RadioSize;
44
+ get checkedValue(): boolean | undefined;
45
+ handleChange(): void;
46
+ /**
47
+ * Note: This only detects the @description prop, not the description block.
48
+ * Glimmer doesn't support detecting named blocks at runtime, so aria-describedby
49
+ * will only be set when using the @description prop.
50
+ */
51
+ get hasDescription(): boolean;
52
+ get ariaDescribedBy(): string | undefined;
53
+ }
54
+ //# sourceMappingURL=radio.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"radio.d.ts","sourceRoot":"","sources":["../../src/form/radio.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,oBAAoB,CAAC;AAK3C,MAAM,MAAM,SAAS,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAE3C,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,gBAAgB,CAAC;IAC1B,IAAI,EAAE;QACJ,iDAAiD;QACjD,KAAK,EAAE,MAAM,CAAC;QAEd,oEAAoE;QACpE,UAAU,CAAC,EAAE,MAAM,CAAC;QAEpB,kDAAkD;QAClD,SAAS,CAAC,EAAE,OAAO,CAAC;QAEpB,2CAA2C;QAC3C,cAAc,CAAC,EAAE,OAAO,CAAC;QAEzB,uBAAuB;QACvB,IAAI,CAAC,EAAE,MAAM,CAAC;QAEd,mBAAmB;QACnB,IAAI,CAAC,EAAE,SAAS,CAAC;QAEjB,qBAAqB;QACrB,UAAU,CAAC,EAAE,OAAO,CAAC;QAErB,qBAAqB;QACrB,UAAU,CAAC,EAAE,OAAO,CAAC;QAErB,oBAAoB;QACpB,SAAS,CAAC,EAAE,OAAO,CAAC;QAEpB,wBAAwB;QACxB,KAAK,CAAC,EAAE,MAAM,CAAC;QAEf,oDAAoD;QACpD,aAAa,CAAC,EAAE,OAAO,CAAC;QAExB,mCAAmC;QACnC,WAAW,CAAC,EAAE,MAAM,CAAC;QAErB,qBAAqB;QACrB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;KACpC,CAAC;IACF,MAAM,EAAE;QACN,2BAA2B;QAC3B,OAAO,EAAE,EAAE,CAAC;QACZ,iCAAiC;QACjC,WAAW,EAAE,EAAE,CAAC;KACjB,CAAC;CACH;AAED,MAAM,CAAC,OAAO,OAAO,KAAM,SAAQ,SAAS,CAAC,cAAc,CAAC;IAC1D,IAAI,OAAO,IAAI,MAAM,CAEpB;IAED,IAAI,aAAa,IAAI,MAAM,CAE1B;IAED,IAAI,IAAI,IAAI,SAAS,CAEpB;IAED,IAAI,YAAY,IAAI,OAAO,GAAG,SAAS,CAWtC;IAGD,YAAY,IAAI,IAAI;IAIpB;;;;OAIG;IACH,IAAI,cAAc,IAAI,OAAO,CAE5B;IAED,IAAI,eAAe,IAAI,MAAM,GAAG,SAAS,CAKxC;CAoGF"}