@ark-ui/solid 1.3.0 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (416) hide show
  1. package/CHANGELOG.md +58 -0
  2. package/README.md +1 -0
  3. package/cjs/index.js +1129 -1298
  4. package/cjs/index.js.map +1 -1
  5. package/esm/index.js +1349 -1563
  6. package/esm/index.js.map +1 -1
  7. package/package.json +52 -51
  8. package/source/accordion/accordion-item-trigger.jsx +0 -1
  9. package/source/accordion/{accordion.jsx → accordion-root.jsx} +1 -1
  10. package/source/accordion/index.js +4 -4
  11. package/source/avatar/{avatar.jsx → avatar-root.jsx} +1 -1
  12. package/source/avatar/index.js +4 -4
  13. package/source/carousel/{carousel.jsx → carousel-root.jsx} +1 -1
  14. package/source/carousel/index.js +6 -6
  15. package/source/checkbox/{checkbox.jsx → checkbox-root.jsx} +1 -1
  16. package/source/checkbox/index.js +4 -4
  17. package/source/color-picker/{color-picker.jsx → color-picker-root.jsx} +1 -1
  18. package/source/color-picker/index.js +4 -4
  19. package/source/combobox/{combobox.jsx → combobox-root.jsx} +1 -1
  20. package/source/combobox/index.js +4 -4
  21. package/source/date-picker/{date-picker.jsx → date-picker-root.jsx} +1 -1
  22. package/source/date-picker/index.js +4 -4
  23. package/source/dialog/{dialog.jsx → dialog-root.jsx} +1 -1
  24. package/source/dialog/dialog-trigger.jsx +0 -1
  25. package/source/dialog/index.js +5 -5
  26. package/source/editable/{editable.jsx → editable-root.jsx} +1 -1
  27. package/source/editable/index.js +4 -4
  28. package/source/environment/index.js +1 -4
  29. package/source/factory.jsx +10 -23
  30. package/source/file-upload/{file-upload.jsx → file-upload-root.jsx} +1 -1
  31. package/source/file-upload/index.js +4 -4
  32. package/source/hover-card/{hover-card.jsx → hover-card-root.jsx} +1 -1
  33. package/source/hover-card/index.js +4 -4
  34. package/source/index.jsx +1 -0
  35. package/source/menu/index.js +4 -4
  36. package/source/menu/{menu.jsx → menu-root.jsx} +1 -1
  37. package/source/menu/menu-trigger.jsx +0 -1
  38. package/source/number-input/index.js +4 -4
  39. package/source/number-input/{number-input.jsx → number-input-root.jsx} +1 -1
  40. package/source/pagination/index.js +4 -4
  41. package/source/pagination/{pagination.jsx → pagination-root.jsx} +1 -1
  42. package/source/pin-input/index.js +4 -4
  43. package/source/pin-input/{pin-input.jsx → pin-input-root.jsx} +1 -1
  44. package/source/popover/index.js +4 -4
  45. package/source/popover/{popover.jsx → popover-root.jsx} +1 -1
  46. package/source/popover/popover-trigger.jsx +0 -1
  47. package/source/presence/index.js +1 -4
  48. package/source/progress/index.js +6 -6
  49. package/source/progress/{progress.jsx → progress-root.jsx} +1 -1
  50. package/source/progress/{progress-indicator.jsx → progress-view.jsx} +2 -2
  51. package/source/radio-group/index.js +4 -4
  52. package/source/radio-group/{radio-group.jsx → radio-group-root.jsx} +1 -1
  53. package/source/rating-group/index.js +4 -4
  54. package/source/rating-group/{rating-group.jsx → rating-group-root.jsx} +1 -1
  55. package/source/segment-group/index.js +4 -4
  56. package/source/segment-group/{segment-group.jsx → segment-group-root.jsx} +1 -1
  57. package/source/select/index.js +4 -4
  58. package/source/select/{select.jsx → select-root.jsx} +1 -1
  59. package/source/slider/index.js +4 -4
  60. package/source/slider/{slider.jsx → slider-root.jsx} +1 -1
  61. package/source/splitter/index.js +4 -4
  62. package/source/splitter/{splitter.jsx → splitter-root.jsx} +1 -1
  63. package/source/switch/index.js +4 -4
  64. package/source/switch/{switch.jsx → switch-root.jsx} +1 -1
  65. package/source/tabs/index.js +4 -4
  66. package/source/tabs/{tabs.jsx → tabs-root.jsx} +1 -1
  67. package/source/tags-input/index.js +6 -4
  68. package/source/tags-input/tags-input-item-preview.jsx +10 -0
  69. package/source/tags-input/{tags-input.jsx → tags-input-root.jsx} +1 -1
  70. package/source/toast/index.js +4 -4
  71. package/source/toast/{toast.jsx → toast-root.jsx} +1 -1
  72. package/source/toggle-group/index.js +4 -4
  73. package/source/toggle-group/{toggle-group.jsx → toggle-group-root.jsx} +1 -1
  74. package/source/tooltip/index.js +4 -4
  75. package/source/tooltip/{tooltip.jsx → tooltip-root.jsx} +1 -1
  76. package/source/tree-view/index.js +26 -0
  77. package/source/tree-view/tree-view-branch-content.jsx +15 -0
  78. package/source/tree-view/tree-view-branch-control.jsx +15 -0
  79. package/source/tree-view/tree-view-branch-indicator.jsx +16 -0
  80. package/source/tree-view/tree-view-branch-text.jsx +15 -0
  81. package/source/tree-view/tree-view-branch-trigger.jsx +15 -0
  82. package/source/tree-view/tree-view-branch.jsx +17 -0
  83. package/source/tree-view/tree-view-context.js +5 -0
  84. package/source/tree-view/tree-view-item-text.jsx +12 -0
  85. package/source/tree-view/tree-view-item.jsx +13 -0
  86. package/source/tree-view/tree-view-label.jsx +8 -0
  87. package/source/tree-view/tree-view-root.jsx +27 -0
  88. package/source/tree-view/tree-view-tree.jsx +8 -0
  89. package/source/tree-view/use-tree-view.js +10 -0
  90. package/types/accordion/accordion-item-content.d.ts +2 -2
  91. package/types/accordion/accordion-item-indicator.d.ts +2 -2
  92. package/types/accordion/accordion-item-trigger.d.ts +2 -2
  93. package/types/accordion/accordion-item.d.ts +7 -5
  94. package/types/accordion/accordion-root.d.ts +10 -0
  95. package/types/avatar/avatar-fallback.d.ts +2 -2
  96. package/types/avatar/avatar-image.d.ts +2 -2
  97. package/types/avatar/avatar-root.d.ts +6 -0
  98. package/types/avatar/index.d.ts +7 -7
  99. package/types/carousel/carousel-control.d.ts +2 -2
  100. package/types/carousel/carousel-indicator-group.d.ts +2 -2
  101. package/types/carousel/carousel-indicator.d.ts +2 -2
  102. package/types/carousel/carousel-item-group.d.ts +4 -0
  103. package/types/carousel/{carousel-slide.d.ts → carousel-item.d.ts} +2 -2
  104. package/types/carousel/carousel-next-trigger.d.ts +2 -2
  105. package/types/carousel/carousel-prev-trigger.d.ts +2 -2
  106. package/types/carousel/carousel-root.d.ts +11 -0
  107. package/types/carousel/carousel-viewport.d.ts +2 -2
  108. package/types/checkbox/checkbox-control.d.ts +2 -2
  109. package/types/checkbox/checkbox-indicator.d.ts +2 -2
  110. package/types/checkbox/checkbox-label.d.ts +2 -2
  111. package/types/checkbox/checkbox-root.d.ts +11 -0
  112. package/types/color-picker/color-picker-area-background.d.ts +2 -2
  113. package/types/color-picker/color-picker-area-thumb.d.ts +2 -2
  114. package/types/color-picker/color-picker-area.d.ts +2 -2
  115. package/types/color-picker/color-picker-channel-input.d.ts +3 -3
  116. package/types/color-picker/color-picker-channel-slider-thumb.d.ts +2 -2
  117. package/types/color-picker/color-picker-channel-slider-track.d.ts +2 -2
  118. package/types/color-picker/color-picker-channel-slider.d.ts +2 -2
  119. package/types/color-picker/color-picker-content.d.ts +2 -2
  120. package/types/color-picker/color-picker-control.d.ts +2 -2
  121. package/types/color-picker/color-picker-eye-dropper-trigger.d.ts +2 -2
  122. package/types/color-picker/color-picker-format-select.d.ts +2 -2
  123. package/types/color-picker/color-picker-format-trigger.d.ts +2 -2
  124. package/types/color-picker/color-picker-label.d.ts +2 -2
  125. package/types/color-picker/color-picker-positioner.d.ts +2 -2
  126. package/types/color-picker/color-picker-root.d.ts +12 -0
  127. package/types/color-picker/color-picker-swatch-group.d.ts +2 -2
  128. package/types/color-picker/color-picker-swatch-indicator.d.ts +2 -2
  129. package/types/color-picker/color-picker-swatch-trigger.d.ts +2 -2
  130. package/types/color-picker/color-picker-swatch.d.ts +2 -2
  131. package/types/color-picker/color-picker-transparency-grid.d.ts +2 -2
  132. package/types/color-picker/color-picker-trigger.d.ts +2 -2
  133. package/types/color-picker/color-picker-value-text.d.ts +6 -3
  134. package/types/combobox/combobox-clear-trigger.d.ts +2 -2
  135. package/types/combobox/combobox-content.d.ts +2 -2
  136. package/types/combobox/combobox-control.d.ts +2 -2
  137. package/types/combobox/combobox-input.d.ts +2 -2
  138. package/types/combobox/combobox-item-group-label.d.ts +2 -2
  139. package/types/combobox/combobox-item-group.d.ts +2 -2
  140. package/types/combobox/combobox-item-indicator.d.ts +2 -2
  141. package/types/combobox/combobox-item-text.d.ts +2 -2
  142. package/types/combobox/combobox-item.d.ts +6 -4
  143. package/types/combobox/combobox-label.d.ts +2 -2
  144. package/types/combobox/combobox-positioner.d.ts +2 -2
  145. package/types/combobox/{combobox.d.ts → combobox-root.d.ts} +2 -2
  146. package/types/combobox/combobox-trigger.d.ts +2 -2
  147. package/types/date-picker/date-picker-clear-trigger.d.ts +2 -2
  148. package/types/date-picker/date-picker-content.d.ts +2 -2
  149. package/types/date-picker/date-picker-control.d.ts +2 -2
  150. package/types/date-picker/date-picker-input.d.ts +2 -2
  151. package/types/date-picker/date-picker-label.d.ts +2 -2
  152. package/types/date-picker/date-picker-month-select.d.ts +2 -2
  153. package/types/date-picker/date-picker-next-trigger.d.ts +2 -2
  154. package/types/date-picker/date-picker-positioner.d.ts +2 -2
  155. package/types/date-picker/date-picker-prev-trigger.d.ts +2 -2
  156. package/types/date-picker/date-picker-range-text.d.ts +2 -2
  157. package/types/date-picker/date-picker-root.d.ts +12 -0
  158. package/types/date-picker/date-picker-table-body.d.ts +2 -2
  159. package/types/date-picker/date-picker-table-cell-trigger.d.ts +2 -2
  160. package/types/date-picker/date-picker-table-cell.d.ts +2 -2
  161. package/types/date-picker/date-picker-table-head.d.ts +2 -2
  162. package/types/date-picker/date-picker-table-header.d.ts +2 -2
  163. package/types/date-picker/date-picker-table-row.d.ts +2 -2
  164. package/types/date-picker/date-picker-table.d.ts +2 -2
  165. package/types/date-picker/date-picker-trigger.d.ts +2 -2
  166. package/types/date-picker/date-picker-view-control.d.ts +2 -2
  167. package/types/date-picker/date-picker-view-trigger.d.ts +2 -2
  168. package/types/date-picker/date-picker-view.d.ts +6 -4
  169. package/types/date-picker/date-picker-year-select.d.ts +2 -2
  170. package/types/dialog/dialog-backdrop.d.ts +2 -2
  171. package/types/dialog/dialog-close-trigger.d.ts +2 -2
  172. package/types/dialog/dialog-content.d.ts +2 -2
  173. package/types/dialog/dialog-description.d.ts +2 -2
  174. package/types/dialog/dialog-positioner.d.ts +2 -2
  175. package/types/dialog/{dialog.d.ts → dialog-root.d.ts} +2 -2
  176. package/types/dialog/dialog-title.d.ts +2 -2
  177. package/types/dialog/dialog-trigger.d.ts +2 -2
  178. package/types/dialog/index.d.ts +12 -12
  179. package/types/editable/editable-area.d.ts +2 -2
  180. package/types/editable/editable-cancel-trigger.d.ts +2 -2
  181. package/types/editable/editable-control.d.ts +2 -2
  182. package/types/editable/editable-edit-trigger.d.ts +2 -2
  183. package/types/editable/editable-input.d.ts +2 -2
  184. package/types/editable/editable-label.d.ts +2 -2
  185. package/types/editable/editable-preview.d.ts +2 -2
  186. package/types/editable/editable-root.d.ts +11 -0
  187. package/types/editable/editable-submit-trigger.d.ts +2 -2
  188. package/types/editable/index.d.ts +13 -13
  189. package/types/environment/index.d.ts +1 -4
  190. package/types/factory.d.ts +12 -8
  191. package/types/file-upload/file-upload-dropzone.d.ts +2 -2
  192. package/types/file-upload/file-upload-item-delete-trigger.d.ts +2 -2
  193. package/types/file-upload/file-upload-item-group.d.ts +6 -4
  194. package/types/file-upload/file-upload-item-name.d.ts +2 -2
  195. package/types/file-upload/file-upload-item-preview-image.d.ts +2 -2
  196. package/types/file-upload/file-upload-item-preview.d.ts +6 -3
  197. package/types/file-upload/file-upload-item-size-text.d.ts +2 -2
  198. package/types/file-upload/file-upload-item.d.ts +2 -2
  199. package/types/file-upload/file-upload-label.d.ts +2 -2
  200. package/types/file-upload/file-upload-root.d.ts +11 -0
  201. package/types/file-upload/file-upload-trigger.d.ts +2 -2
  202. package/types/hover-card/hover-card-arrow-tip.d.ts +2 -2
  203. package/types/hover-card/hover-card-arrow.d.ts +2 -2
  204. package/types/hover-card/hover-card-content.d.ts +2 -2
  205. package/types/hover-card/hover-card-positioner.d.ts +2 -2
  206. package/types/hover-card/{hover-card.d.ts → hover-card-root.d.ts} +2 -2
  207. package/types/hover-card/hover-card-trigger.d.ts +2 -2
  208. package/types/hover-card/index.d.ts +11 -11
  209. package/types/index.d.ts +1 -0
  210. package/types/menu/menu-arrow-tip.d.ts +2 -2
  211. package/types/menu/menu-arrow.d.ts +2 -2
  212. package/types/menu/menu-content.d.ts +2 -2
  213. package/types/menu/menu-context-trigger.d.ts +2 -2
  214. package/types/menu/menu-item-group-label.d.ts +2 -2
  215. package/types/menu/menu-item-group.d.ts +2 -2
  216. package/types/menu/menu-item.d.ts +2 -2
  217. package/types/menu/menu-option-item.d.ts +6 -4
  218. package/types/menu/menu-positioner.d.ts +2 -2
  219. package/types/menu/{menu.d.ts → menu-root.d.ts} +2 -2
  220. package/types/menu/menu-separator.d.ts +2 -2
  221. package/types/menu/menu-trigger-item.d.ts +2 -2
  222. package/types/menu/menu-trigger.d.ts +2 -2
  223. package/types/number-input/number-input-control.d.ts +2 -2
  224. package/types/number-input/number-input-decrement-trigger.d.ts +2 -2
  225. package/types/number-input/number-input-increment-trigger.d.ts +2 -2
  226. package/types/number-input/number-input-input.d.ts +2 -2
  227. package/types/number-input/number-input-label.d.ts +2 -2
  228. package/types/number-input/number-input-root.d.ts +11 -0
  229. package/types/number-input/number-input-scrubber.d.ts +2 -2
  230. package/types/pagination/index.d.ts +9 -9
  231. package/types/pagination/pagination-ellipsis.d.ts +2 -2
  232. package/types/pagination/pagination-item.d.ts +2 -2
  233. package/types/pagination/pagination-next-trigger.d.ts +2 -2
  234. package/types/pagination/pagination-prev-trigger.d.ts +2 -2
  235. package/types/pagination/pagination-root.d.ts +11 -0
  236. package/types/pin-input/index.d.ts +10 -8
  237. package/types/pin-input/pin-input-control.d.ts +2 -2
  238. package/types/pin-input/pin-input-input.d.ts +4 -2
  239. package/types/pin-input/pin-input-label.d.ts +2 -2
  240. package/types/pin-input/pin-input-root.d.ts +6 -0
  241. package/types/popover/index.d.ts +15 -15
  242. package/types/popover/popover-anchor.d.ts +2 -2
  243. package/types/popover/popover-arrow-tip.d.ts +2 -2
  244. package/types/popover/popover-arrow.d.ts +2 -2
  245. package/types/popover/popover-close-trigger.d.ts +2 -2
  246. package/types/popover/popover-content.d.ts +2 -2
  247. package/types/popover/popover-description.d.ts +2 -2
  248. package/types/popover/popover-indicator.d.ts +2 -2
  249. package/types/popover/popover-positioner.d.ts +2 -2
  250. package/types/popover/{popover.d.ts → popover-root.d.ts} +2 -2
  251. package/types/popover/popover-title.d.ts +2 -2
  252. package/types/popover/popover-trigger.d.ts +2 -2
  253. package/types/presence/index.d.ts +1 -4
  254. package/types/presence/presence.d.ts +2 -2
  255. package/types/progress/index.d.ts +14 -14
  256. package/types/progress/progress-circle-range.d.ts +2 -2
  257. package/types/progress/progress-circle-track.d.ts +2 -2
  258. package/types/progress/progress-circle.d.ts +2 -2
  259. package/types/progress/progress-label.d.ts +2 -2
  260. package/types/progress/progress-range.d.ts +2 -2
  261. package/types/progress/progress-root.d.ts +11 -0
  262. package/types/progress/progress-track.d.ts +2 -2
  263. package/types/progress/progress-value-text.d.ts +2 -2
  264. package/types/progress/progress-view.d.ts +6 -0
  265. package/types/radio-group/index.d.ts +10 -10
  266. package/types/radio-group/radio-group-indicator.d.ts +2 -2
  267. package/types/radio-group/radio-group-item-control.d.ts +2 -2
  268. package/types/radio-group/radio-group-item-text.d.ts +2 -2
  269. package/types/radio-group/radio-group-item.d.ts +6 -4
  270. package/types/radio-group/radio-group-label.d.ts +2 -2
  271. package/types/radio-group/radio-group-root.d.ts +6 -0
  272. package/types/rating-group/rating-group-control.d.ts +6 -4
  273. package/types/rating-group/rating-group-item.d.ts +6 -4
  274. package/types/rating-group/rating-group-label.d.ts +2 -2
  275. package/types/rating-group/rating-group-root.d.ts +6 -0
  276. package/types/segment-group/segment-group-indicator.d.ts +2 -2
  277. package/types/segment-group/segment-group-item-control.d.ts +2 -2
  278. package/types/segment-group/segment-group-item-text.d.ts +2 -2
  279. package/types/segment-group/segment-group-item.d.ts +7 -5
  280. package/types/segment-group/segment-group-label.d.ts +2 -2
  281. package/types/segment-group/segment-group-root.d.ts +6 -0
  282. package/types/select/select-clear-trigger.d.ts +2 -2
  283. package/types/select/select-content.d.ts +2 -2
  284. package/types/select/select-control.d.ts +2 -2
  285. package/types/select/select-indicator.d.ts +2 -2
  286. package/types/select/select-item-group-label.d.ts +2 -2
  287. package/types/select/select-item-group.d.ts +2 -2
  288. package/types/select/select-item-indicator.d.ts +2 -2
  289. package/types/select/select-item-text.d.ts +2 -2
  290. package/types/select/select-item.d.ts +6 -4
  291. package/types/select/select-label.d.ts +2 -2
  292. package/types/select/select-positioner.d.ts +2 -2
  293. package/types/select/{select.d.ts → select-root.d.ts} +2 -2
  294. package/types/select/select-trigger.d.ts +2 -2
  295. package/types/select/select-value-text.d.ts +6 -3
  296. package/types/slider/index.d.ts +13 -13
  297. package/types/slider/slider-control.d.ts +2 -2
  298. package/types/slider/slider-label.d.ts +2 -2
  299. package/types/slider/slider-marker-group.d.ts +2 -2
  300. package/types/slider/slider-marker.d.ts +2 -2
  301. package/types/slider/slider-range.d.ts +2 -2
  302. package/types/slider/slider-root.d.ts +11 -0
  303. package/types/slider/slider-thumb.d.ts +2 -2
  304. package/types/slider/slider-track.d.ts +2 -2
  305. package/types/slider/slider-value-text.d.ts +2 -2
  306. package/types/splitter/index.d.ts +7 -7
  307. package/types/splitter/splitter-panel.d.ts +2 -2
  308. package/types/splitter/splitter-resize-trigger.d.ts +2 -2
  309. package/types/splitter/splitter-root.d.ts +11 -0
  310. package/types/switch/index.d.ts +8 -8
  311. package/types/switch/switch-control.d.ts +2 -2
  312. package/types/switch/switch-label.d.ts +2 -2
  313. package/types/switch/switch-root.d.ts +11 -0
  314. package/types/switch/switch-thumb.d.ts +2 -2
  315. package/types/tabs/index.d.ts +9 -9
  316. package/types/tabs/tab-content.d.ts +2 -2
  317. package/types/tabs/tab-indicator.d.ts +2 -2
  318. package/types/tabs/tab-list.d.ts +2 -2
  319. package/types/tabs/tab-trigger.d.ts +2 -2
  320. package/types/tabs/tabs-root.d.ts +10 -0
  321. package/types/tags-input/tags-input-clear-trigger.d.ts +2 -2
  322. package/types/tags-input/tags-input-control.d.ts +2 -2
  323. package/types/tags-input/tags-input-input.d.ts +2 -2
  324. package/types/tags-input/tags-input-item-delete-trigger.d.ts +2 -2
  325. package/types/tags-input/tags-input-item-input.d.ts +2 -2
  326. package/types/tags-input/tags-input-item-preview.d.ts +4 -0
  327. package/types/tags-input/tags-input-item-text.d.ts +2 -2
  328. package/types/tags-input/tags-input-item.d.ts +6 -4
  329. package/types/tags-input/tags-input-label.d.ts +2 -2
  330. package/types/tags-input/tags-input-root.d.ts +11 -0
  331. package/types/toast/index.d.ts +9 -9
  332. package/types/toast/toast-close-trigger.d.ts +2 -2
  333. package/types/toast/toast-description.d.ts +2 -2
  334. package/types/toast/toast-group.d.ts +2 -2
  335. package/types/toast/toast-root.d.ts +4 -0
  336. package/types/toast/toast-title.d.ts +2 -2
  337. package/types/toggle-group/index.d.ts +6 -6
  338. package/types/toggle-group/toggle-group-item.d.ts +2 -2
  339. package/types/toggle-group/toggle-group-root.d.ts +6 -0
  340. package/types/tooltip/index.d.ts +10 -10
  341. package/types/tooltip/tooltip-arrow-tip.d.ts +2 -2
  342. package/types/tooltip/tooltip-arrow.d.ts +2 -2
  343. package/types/tooltip/tooltip-content.d.ts +2 -2
  344. package/types/tooltip/tooltip-positioner.d.ts +2 -2
  345. package/types/tooltip/{tooltip.d.ts → tooltip-root.d.ts} +2 -2
  346. package/types/tooltip/tooltip-trigger.d.ts +2 -2
  347. package/types/tree-view/tree-view-branch-content.d.ts +6 -0
  348. package/types/tree-view/tree-view-branch-control.d.ts +6 -0
  349. package/types/tree-view/tree-view-branch-indicator.d.ts +6 -0
  350. package/types/tree-view/tree-view-branch-text.d.ts +6 -0
  351. package/types/tree-view/tree-view-branch-trigger.d.ts +6 -0
  352. package/types/tree-view/tree-view-branch.d.ts +11 -0
  353. package/types/tree-view/tree-view-context.d.ts +20 -0
  354. package/types/tree-view/tree-view-item-text.d.ts +6 -0
  355. package/types/tree-view/tree-view-item.d.ts +11 -0
  356. package/types/tree-view/tree-view-label.d.ts +4 -0
  357. package/types/tree-view/tree-view-root.d.ts +11 -0
  358. package/types/tree-view/tree-view-tree.d.ts +4 -0
  359. package/types/tree-view/use-tree-view.d.ts +9 -0
  360. package/source/constants.js +0 -27
  361. package/source/filter-object.js +0 -7
  362. package/source/is-empty.js +0 -4
  363. package/source/is-function.js +0 -1
  364. package/source/merge-style.js +0 -30
  365. package/source/parse-template.js +0 -248
  366. package/source/pipe.js +0 -1
  367. package/source/spread.js +0 -40
  368. package/source/ssr-spread.js +0 -19
  369. package/types/accordion/accordion.d.ts +0 -7
  370. package/types/accordion/index.d.ts +0 -17
  371. package/types/avatar/avatar.d.ts +0 -6
  372. package/types/carousel/carousel-slide-group.d.ts +0 -4
  373. package/types/carousel/carousel.d.ts +0 -9
  374. package/types/carousel/index.d.ts +0 -24
  375. package/types/checkbox/checkbox.d.ts +0 -9
  376. package/types/checkbox/index.d.ts +0 -14
  377. package/types/color-picker/color-picker.d.ts +0 -10
  378. package/types/color-picker/index.d.ts +0 -54
  379. package/types/combobox/index.d.ts +0 -33
  380. package/types/constants.d.ts +0 -1
  381. package/types/date-picker/date-picker.d.ts +0 -10
  382. package/types/date-picker/index.d.ts +0 -55
  383. package/types/editable/editable.d.ts +0 -9
  384. package/types/file-upload/file-upload.d.ts +0 -9
  385. package/types/file-upload/index.d.ts +0 -28
  386. package/types/filter-object.d.ts +0 -8
  387. package/types/is-empty.d.ts +0 -1
  388. package/types/is-function.d.ts +0 -1
  389. package/types/menu/index.d.ts +0 -32
  390. package/types/merge-style.d.ts +0 -6
  391. package/types/number-input/index.d.ts +0 -20
  392. package/types/number-input/number-input.d.ts +0 -9
  393. package/types/pagination/pagination.d.ts +0 -9
  394. package/types/parse-template.d.ts +0 -45
  395. package/types/pin-input/pin-input.d.ts +0 -6
  396. package/types/pipe.d.ts +0 -10
  397. package/types/progress/progress-indicator.d.ts +0 -6
  398. package/types/progress/progress.d.ts +0 -9
  399. package/types/radio-group/radio-group.d.ts +0 -6
  400. package/types/rating-group/index.d.ts +0 -15
  401. package/types/rating-group/rating-group.d.ts +0 -6
  402. package/types/segment-group/index.d.ts +0 -19
  403. package/types/segment-group/segment-group.d.ts +0 -6
  404. package/types/select/index.d.ts +0 -36
  405. package/types/slider/slider.d.ts +0 -9
  406. package/types/splitter/splitter.d.ts +0 -9
  407. package/types/spread.d.ts +0 -1
  408. package/types/ssr-spread.d.ts +0 -10
  409. package/types/switch/switch.d.ts +0 -9
  410. package/types/tabs/tabs.d.ts +0 -7
  411. package/types/tags-input/index.d.ts +0 -25
  412. package/types/tags-input/tags-input.d.ts +0 -9
  413. package/types/toast/toast.d.ts +0 -4
  414. package/types/toggle-group/toggle-group.d.ts +0 -6
  415. /package/source/carousel/{carousel-slide-group.jsx → carousel-item-group.jsx} +0 -0
  416. /package/source/carousel/{carousel-slide.jsx → carousel-item.jsx} +0 -0
@@ -1,18 +1,18 @@
1
1
  import type { OpenChangeDetails as TooltipOpenChangeDetails } from '@zag-js/tooltip';
2
- import { type TooltipProps } from './tooltip';
3
2
  import { TooltipArrow, type TooltipArrowProps } from './tooltip-arrow';
4
3
  import { TooltipArrowTip, type TooltipArrowTipProps } from './tooltip-arrow-tip';
5
4
  import { TooltipContent, type TooltipContentProps } from './tooltip-content';
6
5
  import { useTooltipContext, type TooltipContext } from './tooltip-context';
7
6
  import { TooltipPositioner, type TooltipPositionerProps } from './tooltip-positioner';
7
+ import { TooltipRoot, type TooltipRootProps } from './tooltip-root';
8
8
  import { TooltipTrigger, type TooltipTriggerProps } from './tooltip-trigger';
9
- declare const Tooltip: ((props: TooltipProps) => import("solid-js").JSX.Element) & {
10
- Root: (props: TooltipProps) => import("solid-js").JSX.Element;
11
- Arrow: (props: TooltipArrowProps) => import("solid-js").JSX.Element;
12
- ArrowTip: (props: TooltipArrowTipProps) => import("solid-js").JSX.Element;
13
- Content: (props: TooltipContentProps) => import("solid-js").JSX.Element;
14
- Positioner: (props: TooltipPositionerProps) => import("solid-js").JSX.Element;
15
- Trigger: (props: TooltipTriggerProps) => import("solid-js").JSX.Element;
9
+ export declare const Tooltip: {
10
+ Root: (props: TooltipRootProps) => import("solid-js").JSX.Element;
11
+ Arrow: import("..").ArkComponent<"div", object>;
12
+ ArrowTip: import("..").ArkComponent<"div", object>;
13
+ Content: import("..").ArkComponent<"div", object>;
14
+ Positioner: import("..").ArkComponent<"div", object>;
15
+ Trigger: import("..").ArkComponent<"button", object>;
16
16
  };
17
- export { Tooltip, TooltipArrow, TooltipArrowTip, TooltipContent, TooltipPositioner, TooltipTrigger, useTooltipContext, };
18
- export type { TooltipArrowProps, TooltipArrowTipProps, TooltipContentProps, TooltipContext, TooltipOpenChangeDetails, TooltipPositionerProps, TooltipProps, TooltipTriggerProps, };
17
+ export { TooltipArrow, TooltipArrowTip, TooltipContent, TooltipPositioner, TooltipRoot, TooltipTrigger, useTooltipContext, };
18
+ export type { TooltipArrowProps, TooltipArrowTipProps, TooltipContentProps, TooltipContext, TooltipOpenChangeDetails, TooltipPositionerProps, TooltipRootProps, TooltipTriggerProps, };
@@ -1,4 +1,4 @@
1
- import { type HTMLArkProps } from '../factory';
1
+ import { type ArkComponent, type HTMLArkProps } from '../factory';
2
2
  export interface TooltipArrowTipProps extends HTMLArkProps<'div'> {
3
3
  }
4
- export declare const TooltipArrowTip: (props: TooltipArrowTipProps) => import("solid-js").JSX.Element;
4
+ export declare const TooltipArrowTip: ArkComponent<'div'>;
@@ -1,4 +1,4 @@
1
- import { type HTMLArkProps } from '../factory';
1
+ import { type ArkComponent, type HTMLArkProps } from '../factory';
2
2
  export interface TooltipArrowProps extends HTMLArkProps<'div'> {
3
3
  }
4
- export declare const TooltipArrow: (props: TooltipArrowProps) => import("solid-js").JSX.Element;
4
+ export declare const TooltipArrow: ArkComponent<'div'>;
@@ -1,4 +1,4 @@
1
- import { type HTMLArkProps } from '../factory';
1
+ import { type ArkComponent, type HTMLArkProps } from '../factory';
2
2
  export interface TooltipContentProps extends HTMLArkProps<'div'> {
3
3
  }
4
- export declare const TooltipContent: (props: TooltipContentProps) => import("solid-js").JSX.Element;
4
+ export declare const TooltipContent: ArkComponent<'div'>;
@@ -1,4 +1,4 @@
1
- import { type HTMLArkProps } from '../factory';
1
+ import { type ArkComponent, type HTMLArkProps } from '../factory';
2
2
  export interface TooltipPositionerProps extends HTMLArkProps<'div'> {
3
3
  }
4
- export declare const TooltipPositioner: (props: TooltipPositionerProps) => import("solid-js").JSX.Element;
4
+ export declare const TooltipPositioner: ArkComponent<'div'>;
@@ -1,7 +1,7 @@
1
1
  import { type JSX } from 'solid-js';
2
2
  import { type UsePresenceProps } from '../presence';
3
3
  import { type UseTooltipProps, type UseTooltipReturn } from './use-tooltip';
4
- export interface TooltipProps extends UseTooltipProps, UsePresenceProps {
4
+ export interface TooltipRootProps extends UseTooltipProps, UsePresenceProps {
5
5
  children?: JSX.Element | ((api: UseTooltipReturn) => JSX.Element);
6
6
  }
7
- export declare const Tooltip: (props: TooltipProps) => JSX.Element;
7
+ export declare const TooltipRoot: (props: TooltipRootProps) => JSX.Element;
@@ -1,4 +1,4 @@
1
- import { type HTMLArkProps } from '../factory';
1
+ import { type ArkComponent, type HTMLArkProps } from '../factory';
2
2
  export interface TooltipTriggerProps extends HTMLArkProps<'button'> {
3
3
  }
4
- export declare const TooltipTrigger: (props: TooltipTriggerProps) => import("solid-js").JSX.Element;
4
+ export declare const TooltipTrigger: ArkComponent<'button'>;
@@ -0,0 +1,6 @@
1
+ import { type ArkComponent, type HTMLArkProps } from '../factory';
2
+ import type { Assign } from '../types';
3
+ import { type BranchProps } from './tree-view-context';
4
+ export interface TreeViewBranchContentProps extends Assign<HTMLArkProps<'ul'>, BranchProps> {
5
+ }
6
+ export declare const TreeViewBranchContent: ArkComponent<'ul', BranchProps>;
@@ -0,0 +1,6 @@
1
+ import { type ArkComponent, type HTMLArkProps } from '../factory';
2
+ import type { Assign } from '../types';
3
+ import { type BranchProps } from './tree-view-context';
4
+ export interface TreeViewBranchControlProps extends Assign<HTMLArkProps<'div'>, BranchProps> {
5
+ }
6
+ export declare const TreeViewBranchControl: ArkComponent<'div', BranchProps>;
@@ -0,0 +1,6 @@
1
+ import { type ArkComponent, type HTMLArkProps } from '../factory';
2
+ import type { Assign } from '../types';
3
+ import { type BranchProps } from './tree-view-context';
4
+ export interface TreeViewBranchIndicatorProps extends Assign<HTMLArkProps<'div'>, BranchProps> {
5
+ }
6
+ export declare const TreeViewBranchIndicator: ArkComponent<'div', BranchProps>;
@@ -0,0 +1,6 @@
1
+ import { type ArkComponent, type HTMLArkProps } from '../factory';
2
+ import type { Assign } from '../types';
3
+ import { type BranchProps } from './tree-view-context';
4
+ export interface TreeViewBranchTextProps extends Assign<HTMLArkProps<'span'>, BranchProps> {
5
+ }
6
+ export declare const TreeViewBranchText: ArkComponent<'span', BranchProps>;
@@ -0,0 +1,6 @@
1
+ import { type ArkComponent, type HTMLArkProps } from '../factory';
2
+ import type { Assign } from '../types';
3
+ import { type BranchProps } from './tree-view-context';
4
+ export interface TreeViewBranchTriggerProps extends Assign<HTMLArkProps<'button'>, BranchProps> {
5
+ }
6
+ export declare const TreeViewBranchTrigger: ArkComponent<'button', BranchProps>;
@@ -0,0 +1,11 @@
1
+ import { type Accessor, type JSX } from 'solid-js';
2
+ import { type ArkComponent, type HTMLArkProps } from '../factory';
3
+ import type { Assign } from '../types';
4
+ import { type BranchProps, type BranchState } from './tree-view-context';
5
+ interface ElementProps extends BranchProps {
6
+ children?: JSX.Element | ((state: Accessor<BranchState>) => JSX.Element);
7
+ }
8
+ export interface TreeViewBranchProps extends Assign<HTMLArkProps<'li'>, ElementProps> {
9
+ }
10
+ export declare const TreeViewBranch: ArkComponent<'li', ElementProps>;
11
+ export {};
@@ -0,0 +1,20 @@
1
+ import { type UseTreeViewReturn } from './use-tree-view';
2
+ export interface ItemProps {
3
+ depth: number;
4
+ id: string;
5
+ disabled?: boolean;
6
+ }
7
+ export interface BranchProps extends ItemProps {
8
+ }
9
+ export interface ItemState {
10
+ id: string;
11
+ isDisabled: boolean;
12
+ isSelected: boolean;
13
+ isFocused: boolean;
14
+ }
15
+ export interface BranchState extends ItemState {
16
+ isExpanded: boolean;
17
+ }
18
+ export interface TreeViewContext extends UseTreeViewReturn {
19
+ }
20
+ export declare const TreeViewProvider: import("solid-js").ContextProviderComponent<TreeViewContext>, useTreeViewContext: () => TreeViewContext;
@@ -0,0 +1,6 @@
1
+ import { type ArkComponent, type HTMLArkProps } from '../factory';
2
+ import type { Assign } from '../types';
3
+ import { type ItemProps } from './tree-view-context';
4
+ export interface TreeViewItemTextProps extends Assign<HTMLArkProps<'span'>, ItemProps> {
5
+ }
6
+ export declare const TreeViewItemText: ArkComponent<'span', ItemProps>;
@@ -0,0 +1,11 @@
1
+ import { type Accessor, type JSX } from 'solid-js';
2
+ import { type ArkComponent, type HTMLArkProps } from '../factory';
3
+ import type { Assign } from '../types';
4
+ import { type ItemProps, type ItemState } from './tree-view-context';
5
+ interface ElementProps extends ItemProps {
6
+ children?: JSX.Element | ((state: Accessor<ItemState>) => JSX.Element);
7
+ }
8
+ export interface TreeViewItemProps extends Assign<HTMLArkProps<'li'>, ElementProps> {
9
+ }
10
+ export declare const TreeViewItem: ArkComponent<'li', ElementProps>;
11
+ export {};
@@ -0,0 +1,4 @@
1
+ import { type ArkComponent, type HTMLArkProps } from '../factory';
2
+ export interface TreeViewLabelProps extends HTMLArkProps<'label'> {
3
+ }
4
+ export declare const TreeViewLabel: ArkComponent<'label'>;
@@ -0,0 +1,11 @@
1
+ import { type JSX } from 'solid-js';
2
+ import { type ArkComponent, type HTMLArkProps } from '../factory';
3
+ import type { Assign } from '../types';
4
+ import { type UseTreeViewProps, type UseTreeViewReturn } from './use-tree-view';
5
+ interface ElementProps extends UseTreeViewProps {
6
+ children?: JSX.Element | ((api: UseTreeViewReturn) => JSX.Element);
7
+ }
8
+ export interface TreeViewRootProps extends Assign<HTMLArkProps<'div'>, ElementProps> {
9
+ }
10
+ export declare const TreeViewRoot: ArkComponent<'div', ElementProps>;
11
+ export {};
@@ -0,0 +1,4 @@
1
+ import { type ArkComponent, type HTMLArkProps } from '../factory';
2
+ export interface TreeViewTreeProps extends HTMLArkProps<'ul'> {
3
+ }
4
+ export declare const TreeViewTree: ArkComponent<'ul'>;
@@ -0,0 +1,9 @@
1
+ import { type PropTypes } from '@zag-js/solid';
2
+ import * as treeView from '@zag-js/tree-view';
3
+ import { type Accessor } from 'solid-js';
4
+ import { type Optional } from '../types';
5
+ export interface UseTreeViewProps extends Optional<treeView.Context, 'id'> {
6
+ }
7
+ export interface UseTreeViewReturn extends Accessor<treeView.Api<PropTypes>> {
8
+ }
9
+ export declare const useTreeView: (props: UseTreeViewProps) => UseTreeViewReturn;
@@ -1,27 +0,0 @@
1
- const booleans = [
2
- 'allowfullscreen',
3
- 'async',
4
- 'autofocus',
5
- 'autoplay',
6
- 'checked',
7
- 'controls',
8
- 'default',
9
- 'disabled',
10
- 'formnovalidate',
11
- 'hidden',
12
- 'indeterminate',
13
- 'ismap',
14
- 'loop',
15
- 'multiple',
16
- 'muted',
17
- 'nomodule',
18
- 'novalidate',
19
- 'open',
20
- 'playsinline',
21
- 'readonly',
22
- 'required',
23
- 'reversed',
24
- 'seamless',
25
- 'selected',
26
- ];
27
- export const BooleanAttributes = new Set(booleans);
@@ -1,7 +0,0 @@
1
- import { BooleanAttributes } from './constants';
2
- import { isEmpty } from './is-empty';
3
- import { isFunction } from './is-function';
4
- export const filterObject = (obj, fn) => Object.fromEntries(Object.entries(obj).filter(fn));
5
- export const filterEmptyValues = (obj) => filterObject(obj, ([, v]) => !isEmpty(v));
6
- export const filterFunctionValues = (obj) => filterObject(obj, ([, v]) => !isFunction(v));
7
- export const filterBooleanAttributeValues = (obj) => filterObject(obj, ([k, v]) => !(BooleanAttributes.has(k) && !v));
@@ -1,4 +0,0 @@
1
- export const isEmpty = (value) => value == null ||
2
- value == undefined ||
3
- (typeof value === 'object' && Object.keys(value).length === 0) ||
4
- (typeof value === 'string' && value.trim().length === 0);
@@ -1 +0,0 @@
1
- export const isFunction = (value) => typeof value === 'function';
@@ -1,30 +0,0 @@
1
- export const mergeStyle = (a, b) => styleObjectToString({ ...getStyleObject(a), ...getStyleObject(b) });
2
- const getStyleObject = (style) => typeof style === 'object' ? style : stringStyleToObject(style);
3
- const stringStyleToObject = (style) => {
4
- const object = {};
5
- if (!style)
6
- return object;
7
- const extractCSSregex = /([^:; ]*):\s*([^;]*)/g;
8
- let match;
9
- while ((match = extractCSSregex.exec(style))) {
10
- object[match[1]] = match[2];
11
- }
12
- return object;
13
- };
14
- const styleObjectToString = (value) => {
15
- if (!value)
16
- return '';
17
- let result = '';
18
- const k = Object.keys(value);
19
- for (let i = 0; i < k.length; i++) {
20
- const s = k[i];
21
- // @ts-expect-error - we know this is a string
22
- const v = value[s];
23
- if (v != undefined) {
24
- if (i)
25
- result += ';';
26
- result += `${s}:${v}`;
27
- }
28
- }
29
- return result;
30
- };
@@ -1,248 +0,0 @@
1
- /* eslint-disable @typescript-eslint/no-explicit-any */
2
- // Forked from https://github.com/natemoo-re/ultrahtml.git under MIT license
3
- const DOCUMENT_NODE = 0;
4
- const ELEMENT_NODE = 1;
5
- const TEXT_NODE = 2;
6
- const COMMENT_NODE = 3;
7
- const DOCTYPE_NODE = 4;
8
- const Fragment = Symbol('Fragment');
9
- const VOID_TAGS = new Set([
10
- 'area',
11
- 'base',
12
- 'br',
13
- 'col',
14
- 'embed',
15
- 'hr',
16
- 'img',
17
- 'input',
18
- 'keygen',
19
- 'link',
20
- 'meta',
21
- 'param',
22
- 'source',
23
- 'track',
24
- 'wbr',
25
- ]);
26
- const RAW_TAGS = new Set(['script', 'style']);
27
- const SPLIT_ATTRS_RE = /([@.a-z0-9_:-]*)\s*?=?\s*?(['"]?)([\s\S]*?)\2\s+/gim;
28
- const DOM_PARSER_RE = /(?:<(\/?)([a-zA-Z][a-zA-Z0-9:-]*)(?:\s([^>]*?))?((?:\s*\/)?)>|(<!--)([\s\S]*?)(-->)|(<!)([\s\S]*?)(>))/gm;
29
- function splitAttrs(str) {
30
- const obj = {};
31
- let token;
32
- if (str) {
33
- SPLIT_ATTRS_RE.lastIndex = 0;
34
- str = ' ' + (str || '') + ' ';
35
- while ((token = SPLIT_ATTRS_RE.exec(str))) {
36
- if (token[0] === ' ')
37
- continue;
38
- obj[token[1]] = token[3];
39
- }
40
- }
41
- return obj;
42
- }
43
- export function parse(str) {
44
- let doc, parent, token, text, i, bStart, bText, bEnd, tag;
45
- const tags = [];
46
- DOM_PARSER_RE.lastIndex = 0;
47
- parent = doc = {
48
- type: DOCUMENT_NODE,
49
- children: [],
50
- };
51
- let lastIndex = 0;
52
- function commitTextNode() {
53
- text = str.substring(lastIndex, DOM_PARSER_RE.lastIndex - token[0].length);
54
- if (text) {
55
- // eslint-disable-next-line
56
- ;
57
- parent.children.push({
58
- type: TEXT_NODE,
59
- value: text,
60
- parent,
61
- });
62
- }
63
- }
64
- while ((token = DOM_PARSER_RE.exec(str))) {
65
- bStart = token[5] || token[8];
66
- bText = token[6] || token[9];
67
- bEnd = token[7] || token[10];
68
- if (RAW_TAGS.has(parent.name) && token[2] !== parent.name) {
69
- i = DOM_PARSER_RE.lastIndex - token[0].length;
70
- if (parent.children.length > 0) {
71
- parent.children[0].value += token[0];
72
- }
73
- continue;
74
- }
75
- else if (bStart === '<!--') {
76
- i = DOM_PARSER_RE.lastIndex - token[0].length;
77
- if (RAW_TAGS.has(parent.name)) {
78
- continue;
79
- }
80
- tag = {
81
- type: COMMENT_NODE,
82
- value: bText,
83
- parent: parent,
84
- loc: [
85
- {
86
- start: i,
87
- end: i + bStart.length,
88
- },
89
- {
90
- start: DOM_PARSER_RE.lastIndex - bEnd.length,
91
- end: DOM_PARSER_RE.lastIndex,
92
- },
93
- ],
94
- };
95
- tags.push(tag);
96
- tag.parent.children.push(tag);
97
- }
98
- else if (bStart === '<!') {
99
- i = DOM_PARSER_RE.lastIndex - token[0].length;
100
- tag = {
101
- type: DOCTYPE_NODE,
102
- value: bText,
103
- parent: parent,
104
- loc: [
105
- {
106
- start: i,
107
- end: i + bStart.length,
108
- },
109
- {
110
- start: DOM_PARSER_RE.lastIndex - bEnd.length,
111
- end: DOM_PARSER_RE.lastIndex,
112
- },
113
- ],
114
- };
115
- // commitTextNode();
116
- tags.push(tag);
117
- tag.parent.children.push(tag);
118
- }
119
- else if (token[1] !== '/') {
120
- commitTextNode();
121
- if (RAW_TAGS.has(parent.name)) {
122
- lastIndex = DOM_PARSER_RE.lastIndex;
123
- commitTextNode();
124
- continue;
125
- }
126
- else {
127
- tag = {
128
- type: ELEMENT_NODE,
129
- name: token[2] + '',
130
- attributes: splitAttrs(token[3]),
131
- parent,
132
- children: [],
133
- loc: [
134
- {
135
- start: DOM_PARSER_RE.lastIndex - token[0].length,
136
- end: DOM_PARSER_RE.lastIndex,
137
- },
138
- ],
139
- };
140
- tags.push(tag);
141
- tag.parent.children.push(tag);
142
- if ((token[4] && token[4].indexOf('/') > -1) || VOID_TAGS.has(tag.name)) {
143
- tag.loc[1] = tag.loc[0];
144
- tag.isSelfClosingTag = true;
145
- }
146
- else {
147
- parent = tag;
148
- }
149
- }
150
- }
151
- else {
152
- commitTextNode();
153
- // Close parent node if end-tag matches
154
- if (token[2] + '' === parent.name) {
155
- tag = parent;
156
- parent = tag.parent;
157
- tag.loc.push({
158
- start: DOM_PARSER_RE.lastIndex - token[0].length,
159
- end: DOM_PARSER_RE.lastIndex,
160
- });
161
- text = str.substring(tag.loc[0].end, tag.loc[1].start);
162
- if (tag.children.length === 0) {
163
- tag.children.push({
164
- type: TEXT_NODE,
165
- value: text,
166
- parent,
167
- });
168
- }
169
- }
170
- // account for abuse of self-closing tags when an end-tag is also provided:
171
- else if (token[2] + '' === tags[tags.length - 1].name &&
172
- tags[tags.length - 1].isSelfClosingTag === true) {
173
- tag = tags[tags.length - 1];
174
- tag.loc.push({
175
- start: DOM_PARSER_RE.lastIndex - token[0].length,
176
- end: DOM_PARSER_RE.lastIndex,
177
- });
178
- }
179
- }
180
- lastIndex = DOM_PARSER_RE.lastIndex;
181
- }
182
- text = str.slice(lastIndex);
183
- parent.children.push({
184
- type: TEXT_NODE,
185
- value: text,
186
- parent,
187
- });
188
- return doc;
189
- }
190
- const HTMLString = Symbol('HTMLString');
191
- const AttrString = Symbol('AttrString');
192
- const RenderFn = Symbol('RenderFn');
193
- function mark(str, tags = [HTMLString]) {
194
- const v = { value: str };
195
- for (const tag of tags) {
196
- Object.defineProperty(v, tag, {
197
- value: true,
198
- enumerable: false,
199
- writable: false,
200
- });
201
- }
202
- return v;
203
- }
204
- const ESCAPE_CHARS = {
205
- '&': '&amp;',
206
- '<': '&lt;',
207
- '>': '&gt;',
208
- };
209
- function escapeHTML(str) {
210
- return str.replace(/[&<>]/g, (c) => ESCAPE_CHARS[c] || c);
211
- }
212
- function attrs(attributes) {
213
- let attrStr = '';
214
- for (const [key, value] of Object.entries(attributes)) {
215
- attrStr += ` ${key}="${value}"`;
216
- }
217
- return mark(attrStr, [HTMLString, AttrString]);
218
- }
219
- function renderElement(node) {
220
- const { name, attributes = {} } = node;
221
- const children = node.children.map((child) => render(child)).join('');
222
- if (RenderFn in node) {
223
- const value = node[RenderFn](attributes, mark(children));
224
- if (value && value[HTMLString])
225
- return value.value;
226
- return escapeHTML(String(value));
227
- }
228
- if (name === Fragment)
229
- return children;
230
- if (VOID_TAGS.has(name)) {
231
- return `<${node.name}${attrs(attributes).value}>`;
232
- }
233
- return `<${node.name}${attrs(attributes).value}>${children}</${node.name}>`;
234
- }
235
- export function render(node) {
236
- switch (node.type) {
237
- case DOCUMENT_NODE:
238
- return node.children.map((child) => render(child)).join('');
239
- case ELEMENT_NODE:
240
- return renderElement(node);
241
- case TEXT_NODE:
242
- return `${node.value}`;
243
- case COMMENT_NODE:
244
- return `<!--${node.value}-->`;
245
- case DOCTYPE_NODE:
246
- return `<!${node.value}>`;
247
- }
248
- }
package/source/pipe.js DELETED
@@ -1 +0,0 @@
1
- export const pipe = (arg, firstFn, ...fns) => fns.reduce((acc, fn) => fn(acc), firstFn(arg));
package/source/spread.js DELETED
@@ -1,40 +0,0 @@
1
- /* eslint-disable @typescript-eslint/no-explicit-any */
2
- import { createMemo, mergeProps } from 'solid-js';
3
- import { spread as solidSpread } from 'solid-js/web';
4
- import { mergeStyle } from './merge-style';
5
- const getEventKey = (key) => `$$${key.toLowerCase().slice(2)}`;
6
- const hasOwn = (obj, key) => Object.prototype.hasOwnProperty.call(obj, key);
7
- function mapProps(props, mapper) {
8
- return Object.fromEntries(Object.entries(props).map(([key, value]) => [key, mapper(key, value)]));
9
- }
10
- export const spread = (node, props) => {
11
- const nodeEvents = Object.fromEntries(Object.keys(node)
12
- .filter((prop) => prop.startsWith('$$'))
13
- // @ts-expect-error - fix later
14
- .map((prop) => [prop, node[prop]]));
15
- const isSVG = node instanceof SVGElement;
16
- const childProps = createMemo(() => mapProps(props, (key, value) => {
17
- const eventKey = getEventKey(key);
18
- // event composition
19
- if (hasOwn(nodeEvents, eventKey)) {
20
- return function next(...args) {
21
- if (typeof value === 'function')
22
- value(...args);
23
- nodeEvents[eventKey](...args);
24
- };
25
- }
26
- // style composition
27
- if (key === 'style') {
28
- return mergeStyle(node.style.cssText, value);
29
- }
30
- // class composition
31
- if (key === 'class') {
32
- return [node.classList.toString(), value].filter(Boolean).join(' ');
33
- }
34
- // don't override existing child attributes
35
- if (node.hasAttribute(key))
36
- return;
37
- return value;
38
- }));
39
- solidSpread(node, mergeProps(childProps), isSVG);
40
- };
@@ -1,19 +0,0 @@
1
- import { filterBooleanAttributeValues, filterEmptyValues, filterFunctionValues, } from './filter-object';
2
- import { mergeStyle } from './merge-style';
3
- import { parse, render } from './parse-template';
4
- import { pipe } from './pipe';
5
- export const ssrSpread = (children, attributes) => {
6
- if (isJSXElement(children))
7
- return children;
8
- const { t } = children;
9
- const ast = parse(t);
10
- const [node] = ast.children;
11
- const mergedAttributes = Object.assign({}, attributes, {
12
- class: [attributes?.class, node.attributes.class].filter(Boolean).join(' '),
13
- style: mergeStyle(attributes.style, node.attributes.style),
14
- });
15
- const ssrAttributes = pipe(mergedAttributes, filterEmptyValues, filterFunctionValues, filterBooleanAttributeValues);
16
- Object.assign(node.attributes, ssrAttributes);
17
- return { t: render(ast) };
18
- };
19
- const isJSXElement = (children) => !Object.hasOwnProperty.call(children, 't');
@@ -1,7 +0,0 @@
1
- import { type HTMLArkProps } from '../factory';
2
- import { type UsePresenceProps } from '../presence';
3
- import type { Assign } from '../types';
4
- import { type UseAccordionProps } from './use-accordion';
5
- export interface AccordionProps extends Assign<HTMLArkProps<'div'>, UseAccordionProps>, UsePresenceProps {
6
- }
7
- export declare const Accordion: (props: AccordionProps) => import("solid-js").JSX.Element;
@@ -1,17 +0,0 @@
1
- import type { FocusChangeDetails as AccordionFocusChangeDetails, ValueChangeDetails as AccordionValueChangeDetails } from '@zag-js/accordion';
2
- import { type AccordionProps } from './accordion';
3
- import { useAccordionContext, type AccordionContext } from './accordion-context';
4
- import { AccordionItem, type AccordionItemProps } from './accordion-item';
5
- import { AccordionItemContent, type AccordionItemContentProps } from './accordion-item-content';
6
- import { useAccordionItemContext, type AccordionItemContext } from './accordion-item-context';
7
- import { AccordionItemIndicator, type AccordionItemIndicatorProps } from './accordion-item-indicator';
8
- import { AccordionItemTrigger, type AccordionItemTriggerProps } from './accordion-item-trigger';
9
- declare const Accordion: ((props: AccordionProps) => import("solid-js").JSX.Element) & {
10
- Root: (props: AccordionProps) => import("solid-js").JSX.Element;
11
- Item: (props: AccordionItemProps) => import("solid-js").JSX.Element;
12
- ItemContent: (props: AccordionItemContentProps) => import("solid-js").JSX.Element;
13
- ItemIndicator: (props: AccordionItemIndicatorProps) => import("solid-js").JSX.Element;
14
- ItemTrigger: (props: AccordionItemTriggerProps) => import("solid-js").JSX.Element;
15
- };
16
- export { Accordion, AccordionItem, AccordionItemContent, AccordionItemIndicator, AccordionItemTrigger, useAccordionContext, useAccordionItemContext, };
17
- export type { AccordionContext, AccordionFocusChangeDetails, AccordionItemContentProps, AccordionItemContext, AccordionItemIndicatorProps, AccordionItemProps, AccordionItemTriggerProps, AccordionProps, AccordionValueChangeDetails, };
@@ -1,6 +0,0 @@
1
- import { type HTMLArkProps } from '../factory';
2
- import type { Assign } from '../types';
3
- import { type UseAvatarProps } from './use-avatar';
4
- export interface AvatarProps extends Assign<HTMLArkProps<'div'>, UseAvatarProps> {
5
- }
6
- export declare const Avatar: (props: AvatarProps) => import("solid-js").JSX.Element;
@@ -1,4 +0,0 @@
1
- import { type HTMLArkProps } from '../factory';
2
- export interface CarouselItemGroupProps extends HTMLArkProps<'div'> {
3
- }
4
- export declare const CarouselItemGroup: (props: CarouselItemGroupProps) => import("solid-js").JSX.Element;