@svelte-atoms/core 1.0.0-alpha.25 → 1.0.0-alpha.27

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 (354) hide show
  1. package/README.md +645 -645
  2. package/dist/components/accordion/accordion-root.svelte +61 -79
  3. package/dist/components/accordion/accordion-root.svelte.d.ts +2 -15
  4. package/dist/components/accordion/index.d.ts +2 -1
  5. package/dist/components/accordion/index.js +2 -1
  6. package/dist/components/accordion/item/accordion-item-body.svelte +42 -52
  7. package/dist/components/accordion/item/accordion-item-body.svelte.d.ts +2 -8
  8. package/dist/components/accordion/item/accordion-item-header.svelte +50 -56
  9. package/dist/components/accordion/item/accordion-item-header.svelte.d.ts +3 -20
  10. package/dist/components/accordion/item/accordion-item-indicator.svelte +50 -59
  11. package/dist/components/accordion/item/accordion-item-indicator.svelte.d.ts +2 -8
  12. package/dist/components/accordion/item/accordion-item-root.svelte +65 -79
  13. package/dist/components/accordion/item/accordion-item-root.svelte.d.ts +2 -12
  14. package/dist/components/accordion/item/index.d.ts +1 -0
  15. package/dist/components/accordion/item/types.d.ts +52 -0
  16. package/dist/components/accordion/item/types.js +1 -0
  17. package/dist/components/accordion/types.d.ts +21 -0
  18. package/dist/components/accordion/types.js +1 -0
  19. package/dist/components/alert/alert-actions.svelte +42 -52
  20. package/dist/components/alert/alert-actions.svelte.d.ts +3 -30
  21. package/dist/components/alert/alert-close-button.svelte +72 -79
  22. package/dist/components/alert/alert-close-button.svelte.d.ts +8 -35
  23. package/dist/components/alert/alert-content.svelte +42 -52
  24. package/dist/components/alert/alert-content.svelte.d.ts +3 -30
  25. package/dist/components/alert/alert-description.svelte +41 -51
  26. package/dist/components/alert/alert-description.svelte.d.ts +7 -10
  27. package/dist/components/alert/alert-icon.svelte +46 -56
  28. package/dist/components/alert/alert-icon.svelte.d.ts +2 -8
  29. package/dist/components/alert/alert-root.svelte +102 -118
  30. package/dist/components/alert/alert-root.svelte.d.ts +2 -13
  31. package/dist/components/alert/alert-title.svelte +41 -51
  32. package/dist/components/alert/alert-title.svelte.d.ts +2 -8
  33. package/dist/components/alert/index.d.ts +1 -0
  34. package/dist/components/alert/index.js +1 -0
  35. package/dist/components/alert/types.d.ts +85 -0
  36. package/dist/components/alert/types.js +1 -0
  37. package/dist/components/atom/html-atom.svelte +201 -217
  38. package/dist/components/atom/html-atom.svelte.d.ts +2 -22
  39. package/dist/components/atom/types.d.ts +7 -2
  40. package/dist/components/avatar/types.d.ts +7 -2
  41. package/dist/components/badge/badge.svelte +1 -1
  42. package/dist/components/badge/types.d.ts +7 -2
  43. package/dist/components/breadcrumb/breadcrumb-item.svelte +1 -1
  44. package/dist/components/breadcrumb/breadcrumb-root.svelte +1 -1
  45. package/dist/components/breadcrumb/breadcrumb-separator.svelte +1 -1
  46. package/dist/components/button/button.stories.svelte +57 -57
  47. package/dist/components/button/button.svelte +1 -1
  48. package/dist/components/button/button.svelte.d.ts +4 -1
  49. package/dist/components/button/index.d.ts +1 -0
  50. package/dist/components/button/index.js +1 -0
  51. package/dist/components/button/types.d.ts +8 -3
  52. package/dist/components/card/card-body.svelte +39 -45
  53. package/dist/components/card/card-body.svelte.d.ts +7 -4
  54. package/dist/components/card/card-description.svelte +41 -48
  55. package/dist/components/card/card-description.svelte.d.ts +7 -7
  56. package/dist/components/card/card-footer.svelte +41 -48
  57. package/dist/components/card/card-footer.svelte.d.ts +7 -4
  58. package/dist/components/card/card-header.svelte +41 -48
  59. package/dist/components/card/card-header.svelte.d.ts +7 -4
  60. package/dist/components/card/card-media.svelte +41 -48
  61. package/dist/components/card/card-media.svelte.d.ts +7 -4
  62. package/dist/components/card/card-root.svelte +91 -91
  63. package/dist/components/card/card-root.svelte.d.ts +1 -1
  64. package/dist/components/card/card-subtitle.svelte +41 -48
  65. package/dist/components/card/card-subtitle.svelte.d.ts +12 -9
  66. package/dist/components/card/card-title.svelte +45 -48
  67. package/dist/components/card/card-title.svelte.d.ts +12 -9
  68. package/dist/components/card/index.d.ts +1 -0
  69. package/dist/components/card/index.js +1 -0
  70. package/dist/components/card/types.d.ts +57 -2
  71. package/dist/components/checkbox/checkbox.svelte +39 -28
  72. package/dist/components/checkbox/types.d.ts +7 -2
  73. package/dist/components/collapsible/collapsible-body.svelte +39 -52
  74. package/dist/components/collapsible/collapsible-body.svelte.d.ts +2 -9
  75. package/dist/components/collapsible/collapsible-header.svelte +39 -52
  76. package/dist/components/collapsible/collapsible-header.svelte.d.ts +2 -9
  77. package/dist/components/collapsible/collapsible-indicator.svelte +50 -65
  78. package/dist/components/collapsible/collapsible-indicator.svelte.d.ts +3 -10
  79. package/dist/components/collapsible/collapsible-root.svelte +66 -85
  80. package/dist/components/collapsible/collapsible-root.svelte.d.ts +2 -14
  81. package/dist/components/collapsible/index.d.ts +1 -0
  82. package/dist/components/collapsible/index.js +1 -0
  83. package/dist/components/collapsible/types.d.ts +54 -0
  84. package/dist/components/collapsible/types.js +1 -0
  85. package/dist/components/combobox/atoms.d.ts +5 -1
  86. package/dist/components/combobox/atoms.js +5 -1
  87. package/dist/components/combobox/{combobox-input.svelte → combobox-control.svelte} +3 -3
  88. package/dist/components/combobox/{combobox-input.svelte.d.ts → combobox-control.svelte.d.ts} +3 -3
  89. package/dist/components/combobox/combobox-root.svelte +65 -68
  90. package/dist/components/combobox/combobox-root.svelte.d.ts +5 -18
  91. package/dist/components/combobox/combobox-trigger.svelte +1 -1
  92. package/dist/components/combobox/compobox-item.svelte +1 -1
  93. package/dist/components/combobox/index.d.ts +1 -0
  94. package/dist/components/combobox/index.js +1 -0
  95. package/dist/components/combobox/types.d.ts +25 -0
  96. package/dist/components/combobox/types.js +1 -0
  97. package/dist/components/container/container.svelte +1 -1
  98. package/dist/components/container/types.d.ts +7 -2
  99. package/dist/components/contextmenu/types.d.ts +8 -0
  100. package/dist/components/contextmenu/types.js +1 -0
  101. package/dist/components/datagrid/datagrid-body.svelte +37 -44
  102. package/dist/components/datagrid/datagrid-body.svelte.d.ts +17 -20
  103. package/dist/components/datagrid/datagrid-checkbox.svelte +101 -108
  104. package/dist/components/datagrid/datagrid-checkbox.svelte.d.ts +4 -6
  105. package/dist/components/datagrid/datagrid-footer.svelte +34 -34
  106. package/dist/components/datagrid/datagrid-footer.svelte.d.ts +1 -1
  107. package/dist/components/datagrid/datagrid-header.svelte +49 -49
  108. package/dist/components/datagrid/datagrid-header.svelte.d.ts +1 -1
  109. package/dist/components/datagrid/datagrid-root.svelte +59 -59
  110. package/dist/components/datagrid/datagrid-root.svelte.d.ts +1 -1
  111. package/dist/components/datagrid/datagrid.stories.svelte +75 -75
  112. package/dist/components/datagrid/td/datagrid-td.svelte +66 -80
  113. package/dist/components/datagrid/td/datagrid-td.svelte.d.ts +7 -16
  114. package/dist/components/datagrid/th/datagrid-th-sort-icon.svelte +1 -1
  115. package/dist/components/datagrid/th/datagrid-th.svelte +106 -127
  116. package/dist/components/datagrid/th/datagrid-th.svelte.d.ts +2 -20
  117. package/dist/components/datagrid/tr/bond.svelte.d.ts +3 -1
  118. package/dist/components/datagrid/tr/bond.svelte.js +4 -2
  119. package/dist/components/datagrid/tr/datagrid-tr.svelte +88 -103
  120. package/dist/components/datagrid/tr/datagrid-tr.svelte.d.ts +2 -18
  121. package/dist/components/datagrid/types.d.ts +85 -37
  122. package/dist/components/dialog/dialog-body.svelte +39 -45
  123. package/dist/components/dialog/dialog-body.svelte.d.ts +2 -2
  124. package/dist/components/dialog/dialog-close-button.svelte +58 -61
  125. package/dist/components/dialog/dialog-close-button.svelte.d.ts +7 -7
  126. package/dist/components/dialog/dialog-content.svelte +62 -71
  127. package/dist/components/dialog/dialog-content.svelte.d.ts +2 -2
  128. package/dist/components/dialog/dialog-description.svelte +40 -46
  129. package/dist/components/dialog/dialog-description.svelte.d.ts +2 -2
  130. package/dist/components/dialog/dialog-footer.svelte +39 -45
  131. package/dist/components/dialog/dialog-footer.svelte.d.ts +2 -2
  132. package/dist/components/dialog/dialog-header.svelte +39 -45
  133. package/dist/components/dialog/dialog-header.svelte.d.ts +2 -2
  134. package/dist/components/dialog/dialog-root.svelte +110 -120
  135. package/dist/components/dialog/dialog-root.svelte.d.ts +2 -10
  136. package/dist/components/dialog/dialog-title.svelte +41 -47
  137. package/dist/components/dialog/dialog-title.svelte.d.ts +7 -7
  138. package/dist/components/dialog/index.d.ts +1 -0
  139. package/dist/components/dialog/index.js +1 -0
  140. package/dist/components/dialog/types.d.ts +67 -0
  141. package/dist/components/dialog/types.js +1 -0
  142. package/dist/components/divider/types.d.ts +10 -0
  143. package/dist/components/divider/types.js +1 -0
  144. package/dist/components/drawer/drawer-backdrop.svelte +38 -47
  145. package/dist/components/drawer/drawer-backdrop.svelte.d.ts +3 -26
  146. package/dist/components/drawer/drawer-body.svelte +42 -56
  147. package/dist/components/drawer/drawer-body.svelte.d.ts +3 -16
  148. package/dist/components/drawer/drawer-content.svelte +42 -55
  149. package/dist/components/drawer/drawer-content.svelte.d.ts +3 -14
  150. package/dist/components/drawer/drawer-description.svelte +44 -57
  151. package/dist/components/drawer/drawer-description.svelte.d.ts +3 -14
  152. package/dist/components/drawer/drawer-footer.svelte +41 -54
  153. package/dist/components/drawer/drawer-footer.svelte.d.ts +3 -14
  154. package/dist/components/drawer/drawer-header.svelte +43 -56
  155. package/dist/components/drawer/drawer-header.svelte.d.ts +3 -14
  156. package/dist/components/drawer/drawer-root.svelte +93 -113
  157. package/dist/components/drawer/drawer-root.svelte.d.ts +3 -31
  158. package/dist/components/drawer/drawer-title.svelte +44 -57
  159. package/dist/components/drawer/drawer-title.svelte.d.ts +3 -14
  160. package/dist/components/drawer/index.d.ts +1 -0
  161. package/dist/components/drawer/index.js +1 -0
  162. package/dist/components/drawer/types.d.ts +86 -0
  163. package/dist/components/drawer/types.js +1 -0
  164. package/dist/components/dropdown/dropdown-placeholder.svelte +1 -1
  165. package/dist/components/dropdown/dropdown-query.svelte +54 -53
  166. package/dist/components/dropdown/dropdown-query.svelte.d.ts +11 -10
  167. package/dist/components/dropdown/dropdown-root.svelte +59 -59
  168. package/dist/components/dropdown/dropdown-trigger.svelte +41 -52
  169. package/dist/components/dropdown/dropdown-trigger.svelte.d.ts +1 -8
  170. package/dist/components/dropdown/dropdown-value.svelte +60 -62
  171. package/dist/components/dropdown/index.d.ts +1 -0
  172. package/dist/components/dropdown/index.js +1 -0
  173. package/dist/components/dropdown/item/bond.svelte.d.ts +4 -0
  174. package/dist/components/dropdown/item/bond.svelte.js +9 -0
  175. package/dist/components/dropdown/item/dropdown-item.svelte +10 -6
  176. package/dist/components/dropdown/types.d.ts +37 -0
  177. package/dist/components/dropdown/types.js +1 -0
  178. package/dist/components/element/html-element.svelte.d.ts +2 -14
  179. package/dist/components/element/svg-element.svelte.d.ts +2 -14
  180. package/dist/components/element/types.d.ts +14 -7
  181. package/dist/components/form/field/bond.svelte.d.ts +8 -0
  182. package/dist/components/form/field/bond.svelte.js +13 -1
  183. package/dist/components/form/field/field-control.svelte +48 -58
  184. package/dist/components/form/field/field-control.svelte.d.ts +5 -19
  185. package/dist/components/form/field/field-label.svelte +24 -31
  186. package/dist/components/form/field/field-label.svelte.d.ts +1 -2
  187. package/dist/components/form/field/field-root.svelte +59 -88
  188. package/dist/components/form/field/field-root.svelte.d.ts +5 -20
  189. package/dist/components/form/form.stories.svelte +3 -3
  190. package/dist/components/form/index.d.ts +1 -0
  191. package/dist/components/form/index.js +1 -0
  192. package/dist/components/form/types.d.ts +76 -0
  193. package/dist/components/form/types.js +1 -0
  194. package/dist/components/icon/icon.svelte +44 -55
  195. package/dist/components/icon/icon.svelte.d.ts +4 -29
  196. package/dist/components/icon/types.d.ts +11 -7
  197. package/dist/components/input/atoms.d.ts +5 -1
  198. package/dist/components/input/atoms.js +5 -1
  199. package/dist/components/input/index.d.ts +1 -0
  200. package/dist/components/input/index.js +1 -0
  201. package/dist/components/input/{input-value.svelte → input-control.svelte} +14 -24
  202. package/dist/components/input/input-control.svelte.d.ts +26 -0
  203. package/dist/components/input/input-icon.svelte +1 -1
  204. package/dist/components/input/input-icon.svelte.d.ts +1 -1
  205. package/dist/components/input/input-placeholder.svelte +54 -56
  206. package/dist/components/input/input-placeholder.svelte.d.ts +2 -19
  207. package/dist/components/input/input-root.svelte +5 -12
  208. package/dist/components/input/input-root.svelte.d.ts +3 -20
  209. package/dist/components/input/input.stories.svelte +2 -2
  210. package/dist/components/input/types.d.ts +33 -0
  211. package/dist/components/input/types.js +1 -0
  212. package/dist/components/label/index.d.ts +1 -0
  213. package/dist/components/label/index.js +1 -0
  214. package/dist/components/label/label.svelte +25 -41
  215. package/dist/components/label/label.svelte.d.ts +3 -27
  216. package/dist/components/label/types.d.ts +11 -0
  217. package/dist/components/label/types.js +1 -0
  218. package/dist/components/layer/layer-inner.svelte.d.ts +2 -19
  219. package/dist/components/layer/layer-root.svelte.d.ts +2 -19
  220. package/dist/components/layer/types.d.ts +11 -0
  221. package/dist/components/layer/types.js +1 -0
  222. package/dist/components/link/types.d.ts +8 -0
  223. package/dist/components/link/types.js +1 -0
  224. package/dist/components/list/list-group.svelte +1 -1
  225. package/dist/components/list/list-item.svelte +1 -1
  226. package/dist/components/list/list-root.svelte +6 -1
  227. package/dist/components/list/list-title.svelte +1 -1
  228. package/dist/components/list/types.d.ts +8 -0
  229. package/dist/components/list/types.js +1 -0
  230. package/dist/components/menu/index.d.ts +1 -0
  231. package/dist/components/menu/index.js +1 -0
  232. package/dist/components/menu/menu-list.svelte +1 -1
  233. package/dist/components/menu/types.d.ts +15 -0
  234. package/dist/components/menu/types.js +1 -0
  235. package/dist/components/popover/bond.svelte.d.ts +2 -0
  236. package/dist/components/popover/bond.svelte.js +1 -1
  237. package/dist/components/popover/index.d.ts +1 -0
  238. package/dist/components/popover/index.js +1 -0
  239. package/dist/components/popover/popover-arrow.svelte +111 -117
  240. package/dist/components/popover/popover-arrow.svelte.d.ts +3 -20
  241. package/dist/components/popover/popover-content.svelte +139 -147
  242. package/dist/components/popover/popover-content.svelte.d.ts +3 -17
  243. package/dist/components/popover/popover-indicator.svelte +1 -1
  244. package/dist/components/popover/popover-root.svelte +4 -18
  245. package/dist/components/popover/popover-root.svelte.d.ts +1 -15
  246. package/dist/components/popover/popover-trigger.svelte +3 -12
  247. package/dist/components/popover/popover-trigger.svelte.d.ts +2 -8
  248. package/dist/components/popover/types.d.ts +61 -0
  249. package/dist/components/popover/types.js +1 -0
  250. package/dist/components/portal/active-portal.svelte +8 -2
  251. package/dist/components/portal/active-portal.svelte.d.ts +2 -2
  252. package/dist/components/portal/index.d.ts +1 -0
  253. package/dist/components/portal/index.js +1 -0
  254. package/dist/components/portal/portal-inner.svelte +1 -1
  255. package/dist/components/portal/portal-inner.svelte.d.ts +2 -19
  256. package/dist/components/portal/portal-root.svelte +83 -88
  257. package/dist/components/portal/portal-root.svelte.d.ts +2 -22
  258. package/dist/components/portal/teleport.svelte +50 -49
  259. package/dist/components/portal/teleport.svelte.d.ts +5 -23
  260. package/dist/components/portal/types.d.ts +39 -0
  261. package/dist/components/portal/types.js +1 -0
  262. package/dist/components/radio/radio-group.stories.svelte +4 -4
  263. package/dist/components/radio/radio.svelte +109 -109
  264. package/dist/components/radio/radio.svelte.d.ts +14 -36
  265. package/dist/components/root/root.css +24 -66
  266. package/dist/components/root/root.svelte +121 -121
  267. package/dist/components/root/types.d.ts +8 -0
  268. package/dist/components/root/types.js +1 -0
  269. package/dist/components/scrollable/index.d.ts +1 -0
  270. package/dist/components/scrollable/index.js +1 -0
  271. package/dist/components/scrollable/scrollable-container.svelte +82 -89
  272. package/dist/components/scrollable/scrollable-container.svelte.d.ts +2 -6
  273. package/dist/components/scrollable/scrollable-content.svelte +41 -51
  274. package/dist/components/scrollable/scrollable-content.svelte.d.ts +1 -6
  275. package/dist/components/scrollable/scrollable-root.svelte +100 -120
  276. package/dist/components/scrollable/scrollable-root.svelte.d.ts +3 -19
  277. package/dist/components/scrollable/scrollable-thumb.svelte +75 -86
  278. package/dist/components/scrollable/scrollable-thumb.svelte.d.ts +1 -7
  279. package/dist/components/scrollable/scrollable-track.svelte +59 -70
  280. package/dist/components/scrollable/scrollable-track.svelte.d.ts +1 -7
  281. package/dist/components/scrollable/types.d.ts +62 -0
  282. package/dist/components/scrollable/types.js +1 -0
  283. package/dist/components/sidebar/index.d.ts +1 -0
  284. package/dist/components/sidebar/index.js +1 -0
  285. package/dist/components/sidebar/sidebar-content.svelte +2 -16
  286. package/dist/components/sidebar/sidebar-content.svelte.d.ts +2 -9
  287. package/dist/components/sidebar/sidebar-root.svelte +4 -23
  288. package/dist/components/sidebar/sidebar-root.svelte.d.ts +2 -13
  289. package/dist/components/sidebar/types.d.ts +30 -0
  290. package/dist/components/sidebar/types.js +1 -0
  291. package/dist/components/stack/stack-item.svelte +5 -1
  292. package/dist/components/stack/stack-root.svelte +5 -1
  293. package/dist/components/stack/stack-root.svelte.d.ts +2 -19
  294. package/dist/components/stack/types.d.ts +12 -0
  295. package/dist/components/stack/types.js +1 -0
  296. package/dist/components/tabs/index.d.ts +1 -0
  297. package/dist/components/tabs/index.js +1 -0
  298. package/dist/components/tabs/tab/tab-body.svelte +52 -61
  299. package/dist/components/tabs/tab/tab-body.svelte.d.ts +2 -8
  300. package/dist/components/tabs/tab/tab-description.svelte +41 -50
  301. package/dist/components/tabs/tab/tab-description.svelte.d.ts +2 -8
  302. package/dist/components/tabs/tab/tab-header.svelte +71 -81
  303. package/dist/components/tabs/tab/tab-header.svelte.d.ts +2 -11
  304. package/dist/components/tabs/tab/tab-root.svelte +86 -81
  305. package/dist/components/tabs/tabs-body.svelte +1 -1
  306. package/dist/components/tabs/tabs-header.svelte +1 -1
  307. package/dist/components/tabs/tabs-root.svelte +1 -1
  308. package/dist/components/tabs/types.d.ts +55 -0
  309. package/dist/components/tabs/types.js +1 -0
  310. package/dist/components/textarea/index.d.ts +1 -0
  311. package/dist/components/textarea/index.js +1 -0
  312. package/dist/components/textarea/textarea-input.svelte +2 -1
  313. package/dist/components/textarea/types.d.ts +28 -0
  314. package/dist/components/textarea/types.js +1 -0
  315. package/dist/components/toast/index.d.ts +1 -0
  316. package/dist/components/toast/index.js +1 -0
  317. package/dist/components/toast/toast-description.svelte +38 -44
  318. package/dist/components/toast/toast-description.svelte.d.ts +8 -34
  319. package/dist/components/toast/toast-root.svelte +61 -74
  320. package/dist/components/toast/toast-root.svelte.d.ts +4 -43
  321. package/dist/components/toast/toast-title.svelte +35 -43
  322. package/dist/components/toast/toast-title.svelte.d.ts +2 -34
  323. package/dist/components/toast/types.d.ts +40 -0
  324. package/dist/components/toast/types.js +1 -0
  325. package/dist/components/tooltip/types.d.ts +13 -0
  326. package/dist/components/tooltip/types.js +1 -0
  327. package/dist/components/tree/index.d.ts +1 -0
  328. package/dist/components/tree/index.js +1 -0
  329. package/dist/components/tree/tree-body.svelte +39 -50
  330. package/dist/components/tree/tree-body.svelte.d.ts +2 -10
  331. package/dist/components/tree/tree-header.svelte +54 -66
  332. package/dist/components/tree/tree-header.svelte.d.ts +3 -29
  333. package/dist/components/tree/tree-indicator.svelte +40 -50
  334. package/dist/components/tree/tree-indicator.svelte.d.ts +3 -9
  335. package/dist/components/tree/tree-root.svelte +65 -80
  336. package/dist/components/tree/tree-root.svelte.d.ts +2 -12
  337. package/dist/components/tree/types.d.ts +59 -0
  338. package/dist/components/tree/types.js +1 -0
  339. package/dist/components/virtual/types.d.ts +23 -0
  340. package/dist/components/virtual/types.js +1 -0
  341. package/dist/components/virtual/virtual-root.svelte +239 -258
  342. package/dist/components/virtual/virtual-root.svelte.d.ts +1 -18
  343. package/dist/context/preset.svelte.d.ts +1 -1
  344. package/llm/composition.md +395 -395
  345. package/llm/crafting.md +838 -838
  346. package/llm/motion.md +970 -970
  347. package/llm/philosophy.md +23 -23
  348. package/llm/preset-variant-integration.md +516 -516
  349. package/llm/preset.md +383 -383
  350. package/llm/styling.md +216 -216
  351. package/llm/usage.md +46 -46
  352. package/llm/variants.md +712 -712
  353. package/package.json +437 -437
  354. package/dist/components/input/input-value.svelte.d.ts +0 -19
@@ -1,79 +1,61 @@
1
- <script module>
2
- import type { Factory } from '../../types';
3
-
4
- export type AccordionRootProps<
5
- E extends keyof HTMLElementTagNameMap = 'div',
6
- B extends Base = Base
7
- > = HtmlAtomProps<E, B> & {
8
- value?: string;
9
- values?: string[];
10
- data?: unknown;
11
- multiple?: boolean;
12
- collapsible?: boolean;
13
- disabled?: boolean;
14
- factory?: Factory<AccordionBond>;
15
- children?: Snippet<[{ accordion: AccordionBond }]>;
16
- };
17
- </script>
18
-
19
- <script lang="ts" generics="E extends keyof HTMLElementTagNameMap = 'div', B extends Base = Base">
20
- import type { Snippet } from 'svelte';
21
- import { AccordionBond, AccordionState, type AccordionStateProps } from './bond.svelte';
22
- import { defineProperty, defineState } from '../../utils';
23
- import { HtmlAtom, type HtmlAtomProps, type Base } from '../atom';
24
-
25
- let {
26
- value = $bindable(undefined),
27
- values = $bindable([]),
28
- data = $bindable([]),
29
- class: klass = '',
30
- multiple = false,
31
- collapsible = false,
32
- disabled = false,
33
- children = undefined,
34
- factory = _factory,
35
- onmount = undefined,
36
- ondestroy = undefined,
37
- animate = undefined,
38
- enter = undefined,
39
- exit = undefined,
40
- initial = undefined,
41
- ...restProps
42
- }: AccordionRootProps<E, B> = $props();
43
-
44
- const bondProps = defineState<AccordionStateProps>([
45
- defineProperty(
46
- 'values',
47
- () => (multiple ? values : ([value].filter(Boolean) as string[])),
48
- (v) => {
49
- values = v;
50
- value = values[0];
51
- }
52
- )
53
- ]);
54
- const bond = factory(bondProps).share();
55
-
56
- const rootProps = $derived({
57
- ...bond.root(),
58
- ...restProps
59
- });
60
-
61
- function _factory(props: typeof bondProps = bondProps) {
62
- const bondState = new AccordionState(() => props);
63
-
64
- return new AccordionBond(bondState);
65
- }
66
-
67
- export function getBond() {
68
- return bond;
69
- }
70
- </script>
71
-
72
- <HtmlAtom
73
- preset="accordion"
74
- class={['bg-card flex list-none flex-col', '$preset', klass]}
75
- {bond}
76
- {...rootProps}
77
- >
78
- {@render children?.({ accordion: bond })}
79
- </HtmlAtom>
1
+ <script lang="ts" generics="E extends keyof HTMLElementTagNameMap = 'div', B extends Base = Base">
2
+ import { AccordionBond, AccordionState, type AccordionStateProps } from './bond.svelte';
3
+ import { defineProperty, defineState } from '../../utils';
4
+ import { HtmlAtom, type Base } from '../atom';
5
+ import type { AccordionRootProps } from './types';
6
+
7
+ let {
8
+ value = $bindable(undefined),
9
+ values = $bindable([]),
10
+ data = $bindable([]),
11
+ class: klass = '',
12
+ multiple = false,
13
+ collapsible = false,
14
+ disabled = false,
15
+ children = undefined,
16
+ factory = _factory,
17
+ onmount = undefined,
18
+ ondestroy = undefined,
19
+ animate = undefined,
20
+ enter = undefined,
21
+ exit = undefined,
22
+ initial = undefined,
23
+ ...restProps
24
+ }: AccordionRootProps<E, B> = $props();
25
+
26
+ const bondProps = defineState<AccordionStateProps>([
27
+ defineProperty(
28
+ 'values',
29
+ () => (multiple ? values : ([value].filter(Boolean) as string[])),
30
+ (v) => {
31
+ values = v;
32
+ value = values[0];
33
+ }
34
+ )
35
+ ]);
36
+ const bond = factory(bondProps).share();
37
+
38
+ const rootProps = $derived({
39
+ ...bond.root(),
40
+ ...restProps
41
+ });
42
+
43
+ function _factory(props: typeof bondProps = bondProps) {
44
+ const bondState = new AccordionState(() => props);
45
+
46
+ return new AccordionBond(bondState);
47
+ }
48
+
49
+ export function getBond() {
50
+ return bond;
51
+ }
52
+ </script>
53
+
54
+ <HtmlAtom
55
+ preset="accordion"
56
+ class={['bg-card border-border flex list-none flex-col', '$preset', klass]}
57
+ {bond}
58
+ {...rootProps}
59
+ >
60
+ {@render children?.({ accordion: bond })}
61
+ </HtmlAtom>
@@ -1,19 +1,6 @@
1
- import type { Factory } from '../../types';
2
- export type AccordionRootProps<E extends keyof HTMLElementTagNameMap = 'div', B extends Base = Base> = HtmlAtomProps<E, B> & {
3
- value?: string;
4
- values?: string[];
5
- data?: unknown;
6
- multiple?: boolean;
7
- collapsible?: boolean;
8
- disabled?: boolean;
9
- factory?: Factory<AccordionBond>;
10
- children?: Snippet<[{
11
- accordion: AccordionBond;
12
- }]>;
13
- };
14
- import type { Snippet } from 'svelte';
15
1
  import { AccordionBond } from './bond.svelte';
16
- import { type HtmlAtomProps, type Base } from '../atom';
2
+ import { type Base } from '../atom';
3
+ import type { AccordionRootProps } from './types';
17
4
  declare function $$render<E extends keyof HTMLElementTagNameMap = 'div', B extends Base = Base>(): {
18
5
  props: AccordionRootProps<E, B>;
19
6
  exports: {
@@ -1,2 +1,3 @@
1
1
  export { Root as Accordion } from './atoms';
2
- export { AccordionItem } from './item';
2
+ export * from './item';
3
+ export * from './types';
@@ -1,2 +1,3 @@
1
1
  export { Root as Accordion } from './atoms';
2
- export { AccordionItem } from './item';
2
+ export * from './item';
3
+ export * from './types';
@@ -1,52 +1,42 @@
1
- <script lang="ts" module>
2
- export type AccordionItemBodyProps<
3
- E extends keyof HTMLElementTagNameMap = 'div',
4
- B extends Base = Base
5
- > = HtmlAtomProps<E, B> & {
6
- children?: Snippet<[{ accordionItem: AccordionItemBond }]>;
7
- };
8
- </script>
9
-
10
- <script lang="ts" generics="E extends keyof HTMLElementTagNameMap = 'div', B extends Base = Base">
11
- import type { Snippet } from 'svelte';
12
- import { AccordionItemBond } from './bond.svelte';
13
-
14
- import { HtmlAtom, type HtmlAtomProps, type Base } from '../../atom';
15
-
16
- const bond = AccordionItemBond.get();
17
- const isOpen = $derived(bond?.state.isOpen ?? false);
18
-
19
- let {
20
- class: klass = '',
21
- children = undefined,
22
- onmount = undefined,
23
- ondestroy = undefined,
24
- animate = undefined,
25
- enter = undefined,
26
- exit = undefined,
27
- initial = undefined,
28
- ...restProps
29
- }: AccordionItemBodyProps<E, B> = $props();
30
-
31
- const bodyProps = $derived({
32
- ...bond?.body(),
33
- ...restProps
34
- });
35
- </script>
36
-
37
- {#if isOpen}
38
- <HtmlAtom
39
- preset="accordion.item.body"
40
- class={['box-content', '$preset', klass]}
41
- {bond}
42
- onmount={onmount?.bind(bond.state)}
43
- ondestroy={ondestroy?.bind(bond.state)}
44
- animate={animate?.bind(bond.state)}
45
- enter={enter?.bind(bond.state)}
46
- exit={exit?.bind(bond.state)}
47
- initial={initial?.bind(bond.state)}
48
- {...bodyProps}
49
- >
50
- {@render children?.({ accordionItem: bond })}
51
- </HtmlAtom>
52
- {/if}
1
+ <script lang="ts" generics="E extends keyof HTMLElementTagNameMap = 'div', B extends Base = Base">
2
+ import { HtmlAtom, type Base } from '../../atom';
3
+ import { AccordionItemBond } from './bond.svelte';
4
+ import type { AccordionItemBodyProps } from './types';
5
+
6
+ const bond = AccordionItemBond.get();
7
+ const isOpen = $derived(bond?.state.isOpen ?? false);
8
+
9
+ let {
10
+ class: klass = '',
11
+ children = undefined,
12
+ onmount = undefined,
13
+ ondestroy = undefined,
14
+ animate = undefined,
15
+ enter = undefined,
16
+ exit = undefined,
17
+ initial = undefined,
18
+ ...restProps
19
+ }: AccordionItemBodyProps<E, B> = $props();
20
+
21
+ const bodyProps = $derived({
22
+ ...bond?.body(),
23
+ ...restProps
24
+ });
25
+ </script>
26
+
27
+ {#if isOpen}
28
+ <HtmlAtom
29
+ preset="accordion.item.body"
30
+ class={['border-border box-content', '$preset', klass]}
31
+ {bond}
32
+ onmount={onmount?.bind(bond.state)}
33
+ ondestroy={ondestroy?.bind(bond.state)}
34
+ animate={animate?.bind(bond.state)}
35
+ enter={enter?.bind(bond.state)}
36
+ exit={exit?.bind(bond.state)}
37
+ initial={initial?.bind(bond.state)}
38
+ {...bodyProps}
39
+ >
40
+ {@render children?.({ accordionItem: bond })}
41
+ </HtmlAtom>
42
+ {/if}
@@ -1,11 +1,5 @@
1
- export type AccordionItemBodyProps<E extends keyof HTMLElementTagNameMap = 'div', B extends Base = Base> = HtmlAtomProps<E, B> & {
2
- children?: Snippet<[{
3
- accordionItem: AccordionItemBond;
4
- }]>;
5
- };
6
- import type { Snippet } from 'svelte';
7
- import { AccordionItemBond } from './bond.svelte';
8
- import { type HtmlAtomProps, type Base } from '../../atom';
1
+ import { type Base } from '../../atom';
2
+ import type { AccordionItemBodyProps } from './types';
9
3
  declare function $$render<E extends keyof HTMLElementTagNameMap = 'div', B extends Base = Base>(): {
10
4
  props: AccordionItemBodyProps<E, B>;
11
5
  exports: {};
@@ -1,56 +1,50 @@
1
- <script lang="ts" module>
2
- export type AccordionItemHeaderProps<
3
- E extends keyof HTMLElementTagNameMap = 'div',
4
- B extends Base = Base
5
- > = HtmlAtomProps<E, B> & {
6
- children?: Snippet<[{ accordionItem: AccordionItemBond }]>;
7
- };
8
- </script>
9
-
10
- <script lang="ts" generics="E extends keyof HTMLElementTagNameMap = 'div', B extends Base = Base">
11
- import type { Snippet } from 'svelte';
12
- import { AccordionItemBond } from './bond.svelte';
13
-
14
- import { HtmlAtom, type HtmlAtomProps, type Base } from '../../atom';
15
-
16
- let {
17
- class: klass = '',
18
- as = 'button',
19
- children = undefined,
20
- onpointerdown = undefined,
21
- onmount = undefined,
22
- ondestroy = undefined,
23
- animate = undefined,
24
- enter = undefined,
25
- exit = undefined,
26
- initial = undefined,
27
- ...restProps
28
- } = $props();
29
-
30
- const bond = AccordionItemBond.get();
31
-
32
- const headerProps = $derived({
33
- ...bond?.header(),
34
- ...restProps
35
- });
36
- </script>
37
-
38
- <!-- svelte-ignore a11y_no_static_element_interactions -->
39
- <HtmlAtom
40
- {as}
41
- {bond}
42
- preset="accordion.item.header"
43
- class={['relative box-border flex w-full cursor-pointer items-center', '$preset', klass]}
44
- onmount={onmount?.bind(bond.state)}
45
- ondestroy={ondestroy?.bind(bond.state)}
46
- animate={animate?.bind(bond.state)}
47
- enter={enter?.bind(bond.state)}
48
- exit={exit?.bind(bond.state)}
49
- initial={initial?.bind(bond.state)}
50
- tabindex={as !== 'button' ? 0 : undefined}
51
- {...headerProps}
52
- >
53
- {@render children?.({
54
- accordionItem: bond
55
- })}
56
- </HtmlAtom>
1
+ <script lang="ts" generics="E extends keyof HTMLElementTagNameMap = 'div', B extends Base = Base">
2
+ import { HtmlAtom, type Base } from '../../atom';
3
+ import { AccordionItemBond } from './bond.svelte';
4
+ import type { AccordionItemHeaderProps } from './types';
5
+
6
+ let {
7
+ class: klass = '',
8
+ as = 'button',
9
+ children = undefined,
10
+ onpointerdown = undefined,
11
+ onmount = undefined,
12
+ ondestroy = undefined,
13
+ animate = undefined,
14
+ enter = undefined,
15
+ exit = undefined,
16
+ initial = undefined,
17
+ ...restProps
18
+ }: AccordionItemHeaderProps = $props();
19
+
20
+ const bond = AccordionItemBond.get();
21
+
22
+ const headerProps = $derived({
23
+ ...bond?.header(),
24
+ ...restProps
25
+ });
26
+ </script>
27
+
28
+ <!-- svelte-ignore a11y_no_static_element_interactions -->
29
+ <HtmlAtom
30
+ {as}
31
+ {bond}
32
+ preset="accordion.item.header"
33
+ class={[
34
+ 'border-border relative box-border flex w-full cursor-pointer items-center',
35
+ '$preset',
36
+ klass
37
+ ]}
38
+ onmount={onmount?.bind(bond.state)}
39
+ ondestroy={ondestroy?.bind(bond.state)}
40
+ animate={animate?.bind(bond.state)}
41
+ enter={enter?.bind(bond.state)}
42
+ exit={exit?.bind(bond.state)}
43
+ initial={initial?.bind(bond.state)}
44
+ tabindex={as !== 'button' ? 0 : undefined}
45
+ {...headerProps}
46
+ >
47
+ {@render children?.({
48
+ accordionItem: bond
49
+ })}
50
+ </HtmlAtom>
@@ -1,24 +1,7 @@
1
- export type AccordionItemHeaderProps<E extends keyof HTMLElementTagNameMap = 'div', B extends Base = Base> = HtmlAtomProps<E, B> & {
2
- children?: Snippet<[{
3
- accordionItem: AccordionItemBond;
4
- }]>;
5
- };
6
- import type { Snippet } from 'svelte';
7
- import { AccordionItemBond } from './bond.svelte';
8
- import { type HtmlAtomProps, type Base } from '../../atom';
1
+ import { type Base } from '../../atom';
2
+ import type { AccordionItemHeaderProps } from './types';
9
3
  declare function $$render<E extends keyof HTMLElementTagNameMap = 'div', B extends Base = Base>(): {
10
- props: {
11
- class?: string;
12
- as?: string;
13
- children?: any;
14
- onpointerdown?: any;
15
- onmount?: any;
16
- ondestroy?: any;
17
- animate?: any;
18
- enter?: any;
19
- exit?: any;
20
- initial?: any;
21
- } & Record<string, any>;
4
+ props: AccordionItemHeaderProps;
22
5
  exports: {};
23
6
  bindings: "";
24
7
  slots: {};
@@ -1,59 +1,50 @@
1
- <script lang="ts" module>
2
- export type AccordionItemIndicatorProps<
3
- E extends keyof HTMLElementTagNameMap = 'div',
4
- B extends Base = Base
5
- > = HtmlAtomProps<E, B> & {
6
- children?: Snippet<[{ accordionItem: AccordionItemBond }]>;
7
- };
8
- </script>
9
-
10
- <script lang="ts" generics="E extends keyof HTMLElementTagNameMap = 'div', B extends Base = Base">
11
- import type { Snippet } from 'svelte';
12
- import { animate as motion } from 'motion';
13
- import { AccordionItemBond } from './bond.svelte';
14
- import { Icon } from '../../icon';
15
- import IconArrowDown from '../../../icons/icon-arrow-down.svelte';
16
- import { HtmlAtom, type HtmlAtomProps, type Base } from '../../atom';
17
-
18
- const bond = AccordionItemBond.get();
19
- const isOpen = $derived(bond?.state?.isOpen ?? false);
20
-
21
- let {
22
- class: klass = '',
23
- children = undefined,
24
- onmount = undefined,
25
- ondestroy = undefined,
26
- animate = _animate,
27
- enter = undefined,
28
- exit = undefined,
29
- initial = undefined,
30
- ...restProps
31
- }: AccordionItemIndicatorProps<E, B> = $props();
32
-
33
- const indicatorProps = $derived({
34
- ...bond?.indicator(),
35
- ...restProps
36
- });
37
-
38
- function _animate(node: HTMLElement) {
39
- return motion(node, { rotate: 180 * +isOpen }, { duration: 0.3, ease: 'anticipate' });
40
- }
41
- </script>
42
-
43
- <HtmlAtom
44
- preset="accordion.item.indicator"
45
- class={['pointer-events-none flex items-center justify-center', '$preset', klass]}
46
- onmount={onmount?.bind(bond.state)}
47
- ondestroy={ondestroy?.bind(bond.state)}
48
- animate={animate?.bind(bond.state)}
49
- enter={enter?.bind(bond.state)}
50
- exit={exit?.bind(bond.state)}
51
- initial={initial?.bind(bond.state)}
52
- {...indicatorProps}
53
- >
54
- {#if children}
55
- {@render children({ accordionItem: bond })}
56
- {:else}
57
- <Icon src={IconArrowDown} />
58
- {/if}
59
- </HtmlAtom>
1
+ <script lang="ts" generics="E extends keyof HTMLElementTagNameMap = 'div', B extends Base = Base">
2
+ import { animate as motion } from 'motion';
3
+ import { Icon } from '../../icon';
4
+ import IconArrowDown from '../../../icons/icon-arrow-down.svelte';
5
+ import { HtmlAtom, type Base } from '../../atom';
6
+ import { AccordionItemBond } from './bond.svelte';
7
+ import type { AccordionItemIndicatorProps } from './types';
8
+
9
+ const bond = AccordionItemBond.get();
10
+ const isOpen = $derived(bond?.state?.isOpen ?? false);
11
+
12
+ let {
13
+ class: klass = '',
14
+ children = undefined,
15
+ onmount = undefined,
16
+ ondestroy = undefined,
17
+ animate = _animate,
18
+ enter = undefined,
19
+ exit = undefined,
20
+ initial = undefined,
21
+ ...restProps
22
+ }: AccordionItemIndicatorProps<E, B> = $props();
23
+
24
+ const indicatorProps = $derived({
25
+ ...bond?.indicator(),
26
+ ...restProps
27
+ });
28
+
29
+ function _animate(node: HTMLElement) {
30
+ return motion(node, { rotate: 180 * +isOpen }, { duration: 0.3, ease: 'anticipate' });
31
+ }
32
+ </script>
33
+
34
+ <HtmlAtom
35
+ preset="accordion.item.indicator"
36
+ class={['border-border pointer-events-none flex items-center justify-center', '$preset', klass]}
37
+ onmount={onmount?.bind(bond.state)}
38
+ ondestroy={ondestroy?.bind(bond.state)}
39
+ animate={animate?.bind(bond.state)}
40
+ enter={enter?.bind(bond.state)}
41
+ exit={exit?.bind(bond.state)}
42
+ initial={initial?.bind(bond.state)}
43
+ {...indicatorProps}
44
+ >
45
+ {#if children}
46
+ {@render children({ accordionItem: bond })}
47
+ {:else}
48
+ <Icon src={IconArrowDown} />
49
+ {/if}
50
+ </HtmlAtom>
@@ -1,11 +1,5 @@
1
- export type AccordionItemIndicatorProps<E extends keyof HTMLElementTagNameMap = 'div', B extends Base = Base> = HtmlAtomProps<E, B> & {
2
- children?: Snippet<[{
3
- accordionItem: AccordionItemBond;
4
- }]>;
5
- };
6
- import type { Snippet } from 'svelte';
7
- import { AccordionItemBond } from './bond.svelte';
8
- import { type HtmlAtomProps, type Base } from '../../atom';
1
+ import { type Base } from '../../atom';
2
+ import type { AccordionItemIndicatorProps } from './types';
9
3
  declare function $$render<E extends keyof HTMLElementTagNameMap = 'div', B extends Base = Base>(): {
10
4
  props: AccordionItemIndicatorProps<E, B>;
11
5
  exports: {};