@ark-ui/solid 0.2.0 → 0.3.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 (419) hide show
  1. package/README.md +100 -0
  2. package/dist/accordion/accordion-content.cjs +5 -5
  3. package/dist/accordion/accordion-content.mjs +6 -6
  4. package/dist/accordion/accordion-context.cjs +2 -2
  5. package/dist/accordion/accordion-context.mjs +2 -2
  6. package/dist/accordion/accordion-item.cjs +10 -6
  7. package/dist/accordion/accordion-item.d.ts +1 -1
  8. package/dist/accordion/accordion-item.mjs +12 -8
  9. package/dist/accordion/accordion-trigger.cjs +7 -14
  10. package/dist/accordion/accordion-trigger.d.ts +4 -6
  11. package/dist/accordion/accordion-trigger.mjs +7 -14
  12. package/dist/accordion/accordion.cjs +6 -4
  13. package/dist/accordion/accordion.d.ts +1 -1
  14. package/dist/accordion/accordion.mjs +7 -5
  15. package/dist/carousel/carousel-context.cjs +13 -0
  16. package/dist/carousel/carousel-context.d.ts +62 -0
  17. package/dist/carousel/carousel-context.mjs +8 -0
  18. package/dist/carousel/carousel-control.cjs +10 -0
  19. package/dist/carousel/carousel-control.d.ts +4 -0
  20. package/dist/carousel/carousel-control.mjs +6 -0
  21. package/dist/carousel/carousel-next-slide-trigger.cjs +16 -0
  22. package/dist/carousel/carousel-next-slide-trigger.d.ts +4 -0
  23. package/dist/carousel/carousel-next-slide-trigger.mjs +12 -0
  24. package/dist/carousel/carousel-prev-slide-trigger.cjs +16 -0
  25. package/dist/carousel/carousel-prev-slide-trigger.d.ts +4 -0
  26. package/dist/carousel/carousel-prev-slide-trigger.mjs +12 -0
  27. package/dist/carousel/carousel-slide-group.cjs +16 -0
  28. package/dist/carousel/carousel-slide-group.d.ts +4 -0
  29. package/dist/carousel/carousel-slide-group.mjs +12 -0
  30. package/dist/carousel/carousel-slide.cjs +18 -0
  31. package/dist/carousel/carousel-slide.d.ts +6 -0
  32. package/dist/carousel/carousel-slide.mjs +14 -0
  33. package/dist/carousel/carousel-viewport.cjs +16 -0
  34. package/dist/carousel/carousel-viewport.d.ts +4 -0
  35. package/dist/carousel/carousel-viewport.mjs +12 -0
  36. package/dist/carousel/carousel.anatomy.cjs +10 -0
  37. package/dist/carousel/carousel.anatomy.d.ts +3 -0
  38. package/dist/carousel/carousel.anatomy.mjs +6 -0
  39. package/dist/carousel/carousel.cjs +24 -0
  40. package/dist/carousel/carousel.d.ts +6 -0
  41. package/dist/carousel/carousel.mjs +20 -0
  42. package/dist/carousel/index.d.ts +8 -0
  43. package/dist/carousel/use-carousel.cjs +36 -0
  44. package/dist/carousel/use-carousel.d.ts +35 -0
  45. package/dist/carousel/use-carousel.mjs +13 -0
  46. package/dist/checkbox/checkbox-context.cjs +2 -2
  47. package/dist/checkbox/checkbox-context.mjs +2 -2
  48. package/dist/checkbox/checkbox-control.cjs +3 -1
  49. package/dist/checkbox/checkbox-control.mjs +4 -2
  50. package/dist/checkbox/checkbox-input.cjs +3 -1
  51. package/dist/checkbox/checkbox-input.mjs +4 -2
  52. package/dist/checkbox/checkbox-label.cjs +3 -1
  53. package/dist/checkbox/checkbox-label.mjs +4 -2
  54. package/dist/checkbox/checkbox.cjs +10 -13
  55. package/dist/checkbox/checkbox.d.ts +3 -5
  56. package/dist/checkbox/checkbox.mjs +12 -15
  57. package/dist/combobox/combobox-content.cjs +3 -1
  58. package/dist/combobox/combobox-content.mjs +4 -2
  59. package/dist/combobox/combobox-control.cjs +3 -1
  60. package/dist/combobox/combobox-control.mjs +4 -2
  61. package/dist/combobox/combobox-input.cjs +3 -1
  62. package/dist/combobox/combobox-input.mjs +4 -2
  63. package/dist/combobox/combobox-label.cjs +3 -1
  64. package/dist/combobox/combobox-label.mjs +4 -2
  65. package/dist/combobox/combobox-option.cjs +5 -6
  66. package/dist/combobox/combobox-option.d.ts +1 -1
  67. package/dist/combobox/combobox-option.mjs +8 -9
  68. package/dist/combobox/combobox-positioner.cjs +3 -1
  69. package/dist/combobox/combobox-positioner.mjs +4 -2
  70. package/dist/combobox/combobox-trigger.cjs +4 -11
  71. package/dist/combobox/combobox-trigger.d.ts +4 -6
  72. package/dist/combobox/combobox-trigger.mjs +5 -12
  73. package/dist/combobox/combobox.cjs +9 -12
  74. package/dist/combobox/combobox.d.ts +3 -5
  75. package/dist/combobox/combobox.mjs +11 -14
  76. package/dist/create-split-props.d.ts +3 -1
  77. package/dist/dialog/dialog-backdrop.cjs +3 -1
  78. package/dist/dialog/dialog-backdrop.mjs +4 -2
  79. package/dist/dialog/dialog-close-trigger.cjs +4 -11
  80. package/dist/dialog/dialog-close-trigger.d.ts +4 -6
  81. package/dist/dialog/dialog-close-trigger.mjs +5 -12
  82. package/dist/dialog/dialog-container.cjs +3 -1
  83. package/dist/dialog/dialog-container.mjs +4 -2
  84. package/dist/dialog/dialog-content.cjs +3 -1
  85. package/dist/dialog/dialog-content.mjs +4 -2
  86. package/dist/dialog/dialog-description.cjs +3 -1
  87. package/dist/dialog/dialog-description.mjs +4 -2
  88. package/dist/dialog/dialog-title.cjs +3 -1
  89. package/dist/dialog/dialog-title.mjs +4 -2
  90. package/dist/dialog/dialog-trigger.cjs +4 -11
  91. package/dist/dialog/dialog-trigger.d.ts +4 -6
  92. package/dist/dialog/dialog-trigger.mjs +5 -12
  93. package/dist/dialog/dialog.cjs +5 -6
  94. package/dist/dialog/dialog.d.ts +1 -1
  95. package/dist/dialog/dialog.mjs +5 -6
  96. package/dist/editable/editable-area.cjs +3 -1
  97. package/dist/editable/editable-area.mjs +4 -2
  98. package/dist/editable/editable-cancel-trigger.cjs +5 -12
  99. package/dist/editable/editable-cancel-trigger.d.ts +4 -6
  100. package/dist/editable/editable-cancel-trigger.mjs +6 -13
  101. package/dist/editable/editable-control.cjs +3 -1
  102. package/dist/editable/editable-control.mjs +4 -2
  103. package/dist/editable/editable-edit-trigger.cjs +5 -12
  104. package/dist/editable/editable-edit-trigger.d.ts +4 -6
  105. package/dist/editable/editable-edit-trigger.mjs +6 -13
  106. package/dist/editable/editable-input.cjs +3 -1
  107. package/dist/editable/editable-input.mjs +4 -2
  108. package/dist/editable/editable-label.cjs +3 -1
  109. package/dist/editable/editable-label.mjs +4 -2
  110. package/dist/editable/editable-preview.cjs +3 -1
  111. package/dist/editable/editable-preview.mjs +4 -2
  112. package/dist/editable/editable-submit-trigger.cjs +4 -11
  113. package/dist/editable/editable-submit-trigger.d.ts +4 -6
  114. package/dist/editable/editable-submit-trigger.mjs +5 -12
  115. package/dist/editable/editable.cjs +10 -11
  116. package/dist/editable/editable.d.ts +4 -6
  117. package/dist/editable/editable.mjs +13 -14
  118. package/dist/factory.cjs +43 -9
  119. package/dist/factory.d.ts +14 -12
  120. package/dist/factory.mjs +43 -10
  121. package/dist/filter-props.cjs +28 -0
  122. package/dist/filter-props.d.ts +2 -0
  123. package/dist/filter-props.mjs +23 -0
  124. package/dist/hover-card/hover-card-arrow-tip.cjs +3 -1
  125. package/dist/hover-card/hover-card-arrow-tip.mjs +4 -2
  126. package/dist/hover-card/hover-card-arrow.cjs +3 -1
  127. package/dist/hover-card/hover-card-arrow.mjs +4 -2
  128. package/dist/hover-card/hover-card-content.cjs +3 -1
  129. package/dist/hover-card/hover-card-content.mjs +4 -2
  130. package/dist/hover-card/hover-card-positioner.cjs +3 -1
  131. package/dist/hover-card/hover-card-positioner.mjs +4 -2
  132. package/dist/hover-card/hover-card-trigger.cjs +4 -11
  133. package/dist/hover-card/hover-card-trigger.d.ts +4 -6
  134. package/dist/hover-card/hover-card-trigger.mjs +5 -12
  135. package/dist/index.cjs +18 -0
  136. package/dist/index.d.ts +1 -0
  137. package/dist/index.mjs +9 -0
  138. package/dist/menu/menu-arrow-tip.cjs +3 -1
  139. package/dist/menu/menu-arrow-tip.mjs +4 -2
  140. package/dist/menu/menu-arrow.cjs +3 -1
  141. package/dist/menu/menu-arrow.mjs +4 -2
  142. package/dist/menu/menu-content.cjs +3 -1
  143. package/dist/menu/menu-content.mjs +4 -2
  144. package/dist/menu/menu-context-trigger.cjs +4 -9
  145. package/dist/menu/menu-context-trigger.d.ts +4 -6
  146. package/dist/menu/menu-context-trigger.mjs +5 -10
  147. package/dist/menu/menu-item-group-label.cjs +4 -2
  148. package/dist/menu/menu-item-group-label.d.ts +1 -1
  149. package/dist/menu/menu-item-group-label.mjs +5 -3
  150. package/dist/menu/menu-item-group.cjs +4 -2
  151. package/dist/menu/menu-item-group.d.ts +1 -1
  152. package/dist/menu/menu-item-group.mjs +5 -3
  153. package/dist/menu/menu-item.cjs +4 -2
  154. package/dist/menu/menu-item.d.ts +1 -1
  155. package/dist/menu/menu-item.mjs +5 -3
  156. package/dist/menu/menu-option-item.cjs +9 -4
  157. package/dist/menu/menu-option-item.d.ts +3 -3
  158. package/dist/menu/menu-option-item.mjs +11 -6
  159. package/dist/menu/menu-positioner.cjs +3 -1
  160. package/dist/menu/menu-positioner.mjs +4 -2
  161. package/dist/menu/menu-separator.cjs +3 -1
  162. package/dist/menu/menu-separator.mjs +4 -2
  163. package/dist/menu/menu-trigger-item.cjs +3 -1
  164. package/dist/menu/menu-trigger-item.mjs +4 -2
  165. package/dist/menu/menu-trigger.cjs +4 -10
  166. package/dist/menu/menu-trigger.d.ts +4 -6
  167. package/dist/menu/menu-trigger.mjs +5 -11
  168. package/dist/menu/menu.cjs +13 -21
  169. package/dist/menu/menu.d.ts +1 -1
  170. package/dist/menu/menu.mjs +15 -23
  171. package/dist/number-input/number-input-control.cjs +4 -2
  172. package/dist/number-input/number-input-control.mjs +5 -3
  173. package/dist/number-input/number-input-decrement-trigger.cjs +5 -12
  174. package/dist/number-input/number-input-decrement-trigger.d.ts +4 -6
  175. package/dist/number-input/number-input-decrement-trigger.mjs +6 -13
  176. package/dist/number-input/number-input-field.cjs +4 -2
  177. package/dist/number-input/number-input-field.mjs +5 -3
  178. package/dist/number-input/number-input-increment-trigger.cjs +5 -12
  179. package/dist/number-input/number-input-increment-trigger.d.ts +4 -6
  180. package/dist/number-input/number-input-increment-trigger.mjs +6 -13
  181. package/dist/number-input/number-input-label.cjs +4 -2
  182. package/dist/number-input/number-input-label.mjs +5 -3
  183. package/dist/number-input/number-input-scrubber.cjs +4 -2
  184. package/dist/number-input/number-input-scrubber.mjs +5 -3
  185. package/dist/number-input/number-input.cjs +6 -4
  186. package/dist/number-input/number-input.d.ts +1 -1
  187. package/dist/number-input/number-input.mjs +7 -5
  188. package/dist/pagination/index.d.ts +1 -0
  189. package/dist/pagination/pagination-context.d.ts +5 -15
  190. package/dist/pagination/pagination-ellipsis.cjs +5 -3
  191. package/dist/pagination/pagination-ellipsis.d.ts +3 -6
  192. package/dist/pagination/pagination-ellipsis.mjs +6 -4
  193. package/dist/pagination/pagination-list-item.cjs +11 -0
  194. package/dist/pagination/pagination-list-item.d.ts +4 -0
  195. package/dist/pagination/pagination-list-item.mjs +7 -0
  196. package/dist/pagination/pagination-list.cjs +2 -1
  197. package/dist/pagination/pagination-list.mjs +3 -2
  198. package/dist/pagination/pagination-page-trigger.d.ts +1 -1
  199. package/dist/pagination/pagination-prev-page-trigger.cjs +2 -2
  200. package/dist/pagination/pagination-prev-page-trigger.mjs +2 -2
  201. package/dist/pagination/pagination.anatomy.cjs +3 -1
  202. package/dist/pagination/pagination.anatomy.d.ts +3 -2
  203. package/dist/pagination/pagination.anatomy.mjs +3 -2
  204. package/dist/pagination/pagination.cjs +9 -7
  205. package/dist/pagination/pagination.d.ts +3 -3
  206. package/dist/pagination/pagination.mjs +11 -9
  207. package/dist/pagination/use-pagination.d.ts +3 -8
  208. package/dist/pin-input/pin-input-control.cjs +8 -4
  209. package/dist/pin-input/pin-input-control.mjs +9 -5
  210. package/dist/pin-input/pin-input-field.cjs +6 -8
  211. package/dist/pin-input/pin-input-field.d.ts +1 -1
  212. package/dist/pin-input/pin-input-field.mjs +7 -9
  213. package/dist/pin-input/pin-input-label.cjs +4 -2
  214. package/dist/pin-input/pin-input-label.mjs +5 -3
  215. package/dist/pin-input/pin-input.cjs +5 -3
  216. package/dist/pin-input/pin-input.d.ts +1 -1
  217. package/dist/pin-input/pin-input.mjs +6 -4
  218. package/dist/popover/popover-anchor.cjs +6 -13
  219. package/dist/popover/popover-anchor.d.ts +4 -6
  220. package/dist/popover/popover-anchor.mjs +6 -13
  221. package/dist/popover/popover-arrow-tip.cjs +3 -1
  222. package/dist/popover/popover-arrow-tip.mjs +4 -2
  223. package/dist/popover/popover-arrow.cjs +3 -1
  224. package/dist/popover/popover-arrow.mjs +4 -2
  225. package/dist/popover/popover-close-trigger.cjs +5 -12
  226. package/dist/popover/popover-close-trigger.d.ts +4 -6
  227. package/dist/popover/popover-close-trigger.mjs +6 -13
  228. package/dist/popover/popover-content.cjs +4 -2
  229. package/dist/popover/popover-content.mjs +5 -3
  230. package/dist/popover/popover-description.cjs +4 -2
  231. package/dist/popover/popover-description.mjs +5 -3
  232. package/dist/popover/popover-positioner.cjs +4 -2
  233. package/dist/popover/popover-positioner.mjs +5 -3
  234. package/dist/popover/popover-title.cjs +4 -2
  235. package/dist/popover/popover-title.mjs +5 -3
  236. package/dist/popover/popover-trigger.cjs +6 -13
  237. package/dist/popover/popover-trigger.d.ts +4 -6
  238. package/dist/popover/popover-trigger.mjs +6 -13
  239. package/dist/popover/popover.cjs +2 -2
  240. package/dist/popover/popover.mjs +2 -2
  241. package/dist/pressable/pressable.cjs +5 -5
  242. package/dist/pressable/pressable.d.ts +1 -1
  243. package/dist/pressable/pressable.mjs +6 -6
  244. package/dist/pressable/use-pressable.cjs +1 -1
  245. package/dist/pressable/use-pressable.d.ts +3 -3
  246. package/dist/pressable/use-pressable.mjs +2 -2
  247. package/dist/prop-trap.cjs +37 -0
  248. package/dist/prop-trap.d.ts +5 -0
  249. package/dist/prop-trap.mjs +33 -0
  250. package/dist/radio-group/radio-control.cjs +5 -3
  251. package/dist/radio-group/radio-control.mjs +6 -4
  252. package/dist/radio-group/radio-group-label.cjs +4 -2
  253. package/dist/radio-group/radio-group-label.mjs +5 -3
  254. package/dist/radio-group/radio-group.cjs +6 -4
  255. package/dist/radio-group/radio-group.d.ts +1 -1
  256. package/dist/radio-group/radio-group.mjs +7 -5
  257. package/dist/radio-group/radio-input.cjs +5 -3
  258. package/dist/radio-group/radio-input.mjs +6 -4
  259. package/dist/radio-group/radio-label.cjs +5 -3
  260. package/dist/radio-group/radio-label.mjs +6 -4
  261. package/dist/radio-group/radio.cjs +5 -6
  262. package/dist/radio-group/radio.d.ts +1 -1
  263. package/dist/radio-group/radio.mjs +6 -7
  264. package/dist/range-slider/range-slider-control.cjs +3 -1
  265. package/dist/range-slider/range-slider-control.mjs +4 -2
  266. package/dist/range-slider/range-slider-label.cjs +3 -1
  267. package/dist/range-slider/range-slider-label.mjs +4 -2
  268. package/dist/range-slider/range-slider-marker-group.cjs +3 -1
  269. package/dist/range-slider/range-slider-marker-group.mjs +4 -2
  270. package/dist/range-slider/range-slider-marker.cjs +5 -3
  271. package/dist/range-slider/range-slider-marker.d.ts +1 -1
  272. package/dist/range-slider/range-slider-marker.mjs +6 -4
  273. package/dist/range-slider/range-slider-output.cjs +6 -5
  274. package/dist/range-slider/range-slider-output.d.ts +2 -2
  275. package/dist/range-slider/range-slider-output.mjs +7 -6
  276. package/dist/range-slider/range-slider-range.cjs +3 -1
  277. package/dist/range-slider/range-slider-range.mjs +4 -2
  278. package/dist/range-slider/range-slider-thumb.cjs +5 -3
  279. package/dist/range-slider/range-slider-thumb.d.ts +1 -1
  280. package/dist/range-slider/range-slider-thumb.mjs +6 -4
  281. package/dist/range-slider/range-slider-track.cjs +3 -1
  282. package/dist/range-slider/range-slider-track.mjs +4 -2
  283. package/dist/range-slider/range-slider.cjs +7 -6
  284. package/dist/range-slider/range-slider.d.ts +2 -2
  285. package/dist/range-slider/range-slider.mjs +7 -6
  286. package/dist/rating-group/rating-context.d.ts +4 -3
  287. package/dist/rating-group/rating-group-control.cjs +6 -5
  288. package/dist/rating-group/rating-group-control.d.ts +3 -2
  289. package/dist/rating-group/rating-group-control.mjs +7 -6
  290. package/dist/rating-group/rating-group-label.cjs +3 -1
  291. package/dist/rating-group/rating-group-label.mjs +4 -2
  292. package/dist/rating-group/rating-group.cjs +7 -5
  293. package/dist/rating-group/rating-group.d.ts +2 -2
  294. package/dist/rating-group/rating-group.mjs +8 -6
  295. package/dist/rating-group/rating.cjs +9 -8
  296. package/dist/rating-group/rating.d.ts +5 -3
  297. package/dist/rating-group/rating.mjs +10 -9
  298. package/dist/select/select-content.cjs +4 -2
  299. package/dist/select/select-content.mjs +5 -3
  300. package/dist/select/select-label.cjs +4 -2
  301. package/dist/select/select-label.mjs +5 -3
  302. package/dist/select/select-option-group-label.cjs +5 -3
  303. package/dist/select/select-option-group-label.d.ts +3 -3
  304. package/dist/select/select-option-group-label.mjs +6 -4
  305. package/dist/select/select-option-group.cjs +5 -3
  306. package/dist/select/select-option-group.d.ts +3 -3
  307. package/dist/select/select-option-group.mjs +6 -4
  308. package/dist/select/select-option.cjs +6 -4
  309. package/dist/select/select-option.d.ts +3 -3
  310. package/dist/select/select-option.mjs +7 -5
  311. package/dist/select/select-positioner.cjs +4 -2
  312. package/dist/select/select-positioner.mjs +5 -3
  313. package/dist/select/select-trigger.cjs +5 -12
  314. package/dist/select/select-trigger.d.ts +4 -6
  315. package/dist/select/select-trigger.mjs +6 -13
  316. package/dist/select/select.cjs +5 -12
  317. package/dist/select/select.d.ts +1 -1
  318. package/dist/select/select.mjs +7 -14
  319. package/dist/slider/slider-control.cjs +4 -2
  320. package/dist/slider/slider-control.mjs +5 -3
  321. package/dist/slider/slider-label.cjs +4 -2
  322. package/dist/slider/slider-label.mjs +5 -3
  323. package/dist/slider/slider-marker-group.cjs +4 -2
  324. package/dist/slider/slider-marker-group.mjs +5 -3
  325. package/dist/slider/slider-marker.cjs +5 -3
  326. package/dist/slider/slider-marker.d.ts +3 -3
  327. package/dist/slider/slider-marker.mjs +6 -4
  328. package/dist/slider/slider-output.cjs +7 -4
  329. package/dist/slider/slider-output.d.ts +2 -2
  330. package/dist/slider/slider-output.mjs +8 -5
  331. package/dist/slider/slider-range.cjs +3 -1
  332. package/dist/slider/slider-range.mjs +4 -2
  333. package/dist/slider/slider-thumb.cjs +5 -3
  334. package/dist/slider/slider-thumb.mjs +6 -4
  335. package/dist/slider/slider-track.cjs +3 -1
  336. package/dist/slider/slider-track.mjs +4 -2
  337. package/dist/slider/slider.cjs +10 -7
  338. package/dist/slider/slider.d.ts +2 -2
  339. package/dist/slider/slider.mjs +11 -8
  340. package/dist/splitter/splitter-panel.cjs +5 -3
  341. package/dist/splitter/splitter-panel.d.ts +3 -3
  342. package/dist/splitter/splitter-panel.mjs +6 -4
  343. package/dist/splitter/splitter-resize-trigger.cjs +7 -12
  344. package/dist/splitter/splitter-resize-trigger.d.ts +7 -9
  345. package/dist/splitter/splitter-resize-trigger.mjs +8 -13
  346. package/dist/splitter/splitter.cjs +6 -4
  347. package/dist/splitter/splitter.d.ts +1 -1
  348. package/dist/splitter/splitter.mjs +7 -5
  349. package/dist/spread.cjs +26 -13
  350. package/dist/spread.mjs +26 -13
  351. package/dist/tabs/tab-content.cjs +5 -3
  352. package/dist/tabs/tab-content.d.ts +3 -3
  353. package/dist/tabs/tab-content.mjs +6 -4
  354. package/dist/tabs/tab-indicator.cjs +4 -2
  355. package/dist/tabs/tab-indicator.mjs +5 -3
  356. package/dist/tabs/tab-list.cjs +4 -2
  357. package/dist/tabs/tab-list.mjs +5 -3
  358. package/dist/tabs/tab-trigger.cjs +6 -13
  359. package/dist/tabs/tab-trigger.d.ts +6 -8
  360. package/dist/tabs/tab-trigger.mjs +7 -14
  361. package/dist/tabs/tabs.cjs +6 -4
  362. package/dist/tabs/tabs.d.ts +1 -1
  363. package/dist/tabs/tabs.mjs +7 -5
  364. package/dist/tags-input/tag-delete-trigger.cjs +6 -13
  365. package/dist/tags-input/tag-delete-trigger.d.ts +5 -7
  366. package/dist/tags-input/tag-delete-trigger.mjs +7 -14
  367. package/dist/tags-input/tag-input.cjs +5 -3
  368. package/dist/tags-input/tag-input.d.ts +1 -1
  369. package/dist/tags-input/tag-input.mjs +6 -4
  370. package/dist/tags-input/tag.cjs +5 -3
  371. package/dist/tags-input/tag.d.ts +1 -1
  372. package/dist/tags-input/tag.mjs +6 -4
  373. package/dist/tags-input/tags-input-clear-trigger.cjs +4 -11
  374. package/dist/tags-input/tags-input-clear-trigger.d.ts +4 -6
  375. package/dist/tags-input/tags-input-clear-trigger.mjs +5 -12
  376. package/dist/tags-input/tags-input-control.cjs +4 -2
  377. package/dist/tags-input/tags-input-control.mjs +5 -3
  378. package/dist/tags-input/tags-input-field.cjs +4 -2
  379. package/dist/tags-input/tags-input-field.mjs +5 -3
  380. package/dist/tags-input/tags-input-label.cjs +4 -2
  381. package/dist/tags-input/tags-input-label.mjs +5 -3
  382. package/dist/tags-input/tags-input.cjs +10 -7
  383. package/dist/tags-input/tags-input.d.ts +3 -3
  384. package/dist/tags-input/tags-input.mjs +11 -8
  385. package/dist/toast/toast-close-trigger.cjs +5 -12
  386. package/dist/toast/toast-close-trigger.d.ts +4 -6
  387. package/dist/toast/toast-close-trigger.mjs +6 -13
  388. package/dist/toast/toast-description.cjs +5 -3
  389. package/dist/toast/toast-description.mjs +6 -4
  390. package/dist/toast/toast-group.cjs +8 -6
  391. package/dist/toast/toast-group.d.ts +6 -4
  392. package/dist/toast/toast-group.mjs +10 -8
  393. package/dist/toast/toast-placements.cjs +4 -2
  394. package/dist/toast/toast-placements.d.ts +2 -2
  395. package/dist/toast/toast-placements.mjs +5 -3
  396. package/dist/toast/toast-provider.cjs +2 -2
  397. package/dist/toast/toast-provider.mjs +2 -2
  398. package/dist/toast/toast-title.cjs +3 -1
  399. package/dist/toast/toast-title.mjs +4 -2
  400. package/dist/toast/toast.cjs +6 -4
  401. package/dist/toast/toast.d.ts +1 -1
  402. package/dist/toast/toast.mjs +7 -5
  403. package/dist/tooltip/tooltip-arrow-tip.cjs +4 -2
  404. package/dist/tooltip/tooltip-arrow-tip.mjs +5 -3
  405. package/dist/tooltip/tooltip-arrow.cjs +3 -1
  406. package/dist/tooltip/tooltip-arrow.mjs +4 -2
  407. package/dist/tooltip/tooltip-content.cjs +4 -2
  408. package/dist/tooltip/tooltip-content.mjs +5 -3
  409. package/dist/tooltip/tooltip-context.cjs +2 -2
  410. package/dist/tooltip/tooltip-context.mjs +2 -2
  411. package/dist/tooltip/tooltip-positioner.cjs +5 -3
  412. package/dist/tooltip/tooltip-positioner.mjs +6 -4
  413. package/dist/tooltip/tooltip-trigger.cjs +5 -12
  414. package/dist/tooltip/tooltip-trigger.d.ts +4 -6
  415. package/dist/tooltip/tooltip-trigger.mjs +6 -13
  416. package/dist/tooltip/tooltip.cjs +4 -4
  417. package/dist/tooltip/tooltip.mjs +4 -4
  418. package/dist/types.d.ts +7 -4
  419. package/package.json +70 -40
@@ -1,6 +1,6 @@
1
1
  import type { JSX } from 'solid-js';
2
- import { type Assign } from '@polymorphic-factory/solid';
3
2
  import { type HTMLArkProps } from '../factory';
3
+ import type { Assign } from '../types';
4
4
  export type TagProps = {
5
5
  index: string | number;
6
6
  value: string;
@@ -1,12 +1,14 @@
1
- import { createComponent, mergeProps } from 'solid-js/web';
1
+ import { createComponent } from 'solid-js/web';
2
+ import { mergeProps } from '@zag-js/solid';
2
3
  import { createSplitProps } from '../create-split-props.mjs';
3
4
  import { ark } from '../factory.mjs';
4
5
  import { useTagsInputContext } from './tags-input-context.mjs';
5
6
 
6
7
  const Tag = props => {
7
- const [tagProps, divProps] = createSplitProps()(props, ['index', 'disabled', 'value']);
8
- const tagsInput = useTagsInputContext();
9
- return createComponent(ark.div, mergeProps(() => tagsInput().getTagProps(tagProps), divProps));
8
+ const [tagParams, restProps] = createSplitProps()(props, ['index', 'disabled', 'value']);
9
+ const api = useTagsInputContext();
10
+ const tagProps = mergeProps(() => api().getTagProps(tagParams), restProps);
11
+ return createComponent(ark.div, tagProps);
10
12
  };
11
13
 
12
14
  export { Tag };
@@ -2,22 +2,15 @@
2
2
 
3
3
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
4
 
5
- const solidJs = require('solid-js');
6
5
  const web = require('solid-js/web');
7
- const ssrSpread = require('../ssr-spread.cjs');
6
+ const solid = require('@zag-js/solid');
7
+ const factory = require('../factory.cjs');
8
8
  const tagsInputContext = require('./tags-input-context.cjs');
9
9
 
10
10
  const TagsInputClearTrigger = props => {
11
11
  const tagsInput = tagsInputContext.useTagsInputContext();
12
- const triggerProps = tagsInput().clearTriggerProps;
13
- const getChildren = solidJs.children(() => ssrSpread.ssrSpread(props.children, triggerProps));
14
- solidJs.createEffect(() => {
15
- const children = getChildren();
16
- if (children instanceof HTMLElement) {
17
- web.spread(children, triggerProps);
18
- }
19
- });
20
- return getChildren();
12
+ const triggerProps = solid.mergeProps(() => tagsInput().clearTriggerProps, props);
13
+ return web.createComponent(factory.ark.button, triggerProps);
21
14
  };
22
15
 
23
16
  exports.TagsInputClearTrigger = TagsInputClearTrigger;
@@ -1,6 +1,4 @@
1
- import type { ResolvedChildren } from 'solid-js/types/reactive/signal';
2
- import { type JSX } from 'solid-js';
3
- export type TagsInputClearTriggerProps = {
4
- children: JSX.Element;
5
- };
6
- export declare const TagsInputClearTrigger: (props: TagsInputClearTriggerProps) => ResolvedChildren;
1
+ import type { JSX } from 'solid-js';
2
+ import { type HTMLArkProps } from '../factory';
3
+ export type TagsInputClearTriggerProps = HTMLArkProps<'button'>;
4
+ export declare const TagsInputClearTrigger: (props: TagsInputClearTriggerProps) => JSX.Element;
@@ -1,19 +1,12 @@
1
- import { children, createEffect } from 'solid-js';
2
- import { spread } from 'solid-js/web';
3
- import { ssrSpread } from '../ssr-spread.mjs';
1
+ import { createComponent } from 'solid-js/web';
2
+ import { mergeProps } from '@zag-js/solid';
3
+ import { ark } from '../factory.mjs';
4
4
  import { useTagsInputContext } from './tags-input-context.mjs';
5
5
 
6
6
  const TagsInputClearTrigger = props => {
7
7
  const tagsInput = useTagsInputContext();
8
- const triggerProps = tagsInput().clearTriggerProps;
9
- const getChildren = children(() => ssrSpread(props.children, triggerProps));
10
- createEffect(() => {
11
- const children = getChildren();
12
- if (children instanceof HTMLElement) {
13
- spread(children, triggerProps);
14
- }
15
- });
16
- return getChildren();
8
+ const triggerProps = mergeProps(() => tagsInput().clearTriggerProps, props);
9
+ return createComponent(ark.button, triggerProps);
17
10
  };
18
11
 
19
12
  export { TagsInputClearTrigger };
@@ -3,12 +3,14 @@
3
3
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
4
 
5
5
  const web = require('solid-js/web');
6
+ const solid = require('@zag-js/solid');
6
7
  const factory = require('../factory.cjs');
7
8
  const tagsInputContext = require('./tags-input-context.cjs');
8
9
 
9
10
  const TagsInputControl = props => {
10
- const tagsInput = tagsInputContext.useTagsInputContext();
11
- return web.createComponent(factory.ark.div, web.mergeProps(() => tagsInput().controlProps, props));
11
+ const api = tagsInputContext.useTagsInputContext();
12
+ const controlProps = solid.mergeProps(() => api().controlProps, props);
13
+ return web.createComponent(factory.ark.div, controlProps);
12
14
  };
13
15
 
14
16
  exports.TagsInputControl = TagsInputControl;
@@ -1,10 +1,12 @@
1
- import { createComponent, mergeProps } from 'solid-js/web';
1
+ import { createComponent } from 'solid-js/web';
2
+ import { mergeProps } from '@zag-js/solid';
2
3
  import { ark } from '../factory.mjs';
3
4
  import { useTagsInputContext } from './tags-input-context.mjs';
4
5
 
5
6
  const TagsInputControl = props => {
6
- const tagsInput = useTagsInputContext();
7
- return createComponent(ark.div, mergeProps(() => tagsInput().controlProps, props));
7
+ const api = useTagsInputContext();
8
+ const controlProps = mergeProps(() => api().controlProps, props);
9
+ return createComponent(ark.div, controlProps);
8
10
  };
9
11
 
10
12
  export { TagsInputControl };
@@ -3,12 +3,14 @@
3
3
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
4
 
5
5
  const web = require('solid-js/web');
6
+ const solid = require('@zag-js/solid');
6
7
  const factory = require('../factory.cjs');
7
8
  const tagsInputContext = require('./tags-input-context.cjs');
8
9
 
9
10
  const TagsInputField = props => {
10
- const tagsInput = tagsInputContext.useTagsInputContext();
11
- return web.createComponent(factory.ark.input, web.mergeProps(() => tagsInput().inputProps, props));
11
+ const api = tagsInputContext.useTagsInputContext();
12
+ const inputProps = solid.mergeProps(() => api().inputProps, props);
13
+ return web.createComponent(factory.ark.input, inputProps);
12
14
  };
13
15
 
14
16
  exports.TagsInputField = TagsInputField;
@@ -1,10 +1,12 @@
1
- import { createComponent, mergeProps } from 'solid-js/web';
1
+ import { createComponent } from 'solid-js/web';
2
+ import { mergeProps } from '@zag-js/solid';
2
3
  import { ark } from '../factory.mjs';
3
4
  import { useTagsInputContext } from './tags-input-context.mjs';
4
5
 
5
6
  const TagsInputField = props => {
6
- const tagsInput = useTagsInputContext();
7
- return createComponent(ark.input, mergeProps(() => tagsInput().inputProps, props));
7
+ const api = useTagsInputContext();
8
+ const inputProps = mergeProps(() => api().inputProps, props);
9
+ return createComponent(ark.input, inputProps);
8
10
  };
9
11
 
10
12
  export { TagsInputField };
@@ -3,12 +3,14 @@
3
3
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
4
 
5
5
  const web = require('solid-js/web');
6
+ const solid = require('@zag-js/solid');
6
7
  const factory = require('../factory.cjs');
7
8
  const tagsInputContext = require('./tags-input-context.cjs');
8
9
 
9
10
  const TagsInputLabel = props => {
10
- const tagsInput = tagsInputContext.useTagsInputContext();
11
- return web.createComponent(factory.ark.label, web.mergeProps(() => tagsInput().labelProps, props));
11
+ const api = tagsInputContext.useTagsInputContext();
12
+ const labelProps = solid.mergeProps(() => api().labelProps, props);
13
+ return web.createComponent(factory.ark.label, labelProps);
12
14
  };
13
15
 
14
16
  exports.TagsInputLabel = TagsInputLabel;
@@ -1,10 +1,12 @@
1
- import { createComponent, mergeProps } from 'solid-js/web';
1
+ import { createComponent } from 'solid-js/web';
2
+ import { mergeProps } from '@zag-js/solid';
2
3
  import { ark } from '../factory.mjs';
3
4
  import { useTagsInputContext } from './tags-input-context.mjs';
4
5
 
5
6
  const TagsInputLabel = props => {
6
- const tagsInput = useTagsInputContext();
7
- return createComponent(ark.label, mergeProps(() => tagsInput().labelProps, props));
7
+ const api = useTagsInputContext();
8
+ const labelProps = mergeProps(() => api().labelProps, props);
9
+ return createComponent(ark.label, labelProps);
8
10
  };
9
11
 
10
12
  export { TagsInputLabel };
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
4
 
5
5
  const web = require('solid-js/web');
6
- const solidJs = require('solid-js');
6
+ const solid = require('@zag-js/solid');
7
7
  const createSplitProps = require('../create-split-props.cjs');
8
8
  const factory = require('../factory.cjs');
9
9
  const runIfFn = require('../run-if-fn.cjs');
@@ -11,14 +11,17 @@ const tagsInputContext = require('./tags-input-context.cjs');
11
11
  const useTagsInput = require('./use-tags-input.cjs');
12
12
 
13
13
  const TagsInput = props => {
14
- const [useTagsInputProps, divProps] = createSplitProps.createSplitProps()(props, ['addOnPaste', 'allowEditTag', 'allowOverflow', 'autoFocus', 'blurBehavior', 'delimiter', 'dir', 'disabled', 'form', 'getRootNode', 'id', 'ids', 'inputValue', 'invalid', 'max', 'maxLength', 'name', 'onChange', 'onHighlight', 'onInteractOutside', 'onInvalid', 'onTagUpdate', 'readOnly', 'translations', 'validate', 'value']);
15
- const tagsInput = useTagsInput.useTagsInput(useTagsInputProps);
16
- const view = () => solidJs.children(() => runIfFn.runIfFn(divProps.children, tagsInput()));
14
+ const [tagsInputParams, restProps] = createSplitProps.createSplitProps()(props, ['addOnPaste', 'allowEditTag', 'allowOverflow', 'autoFocus', 'blurBehavior', 'delimiter', 'dir', 'disabled', 'form', 'getRootNode', 'id', 'ids', 'inputValue', 'invalid', 'max', 'maxLength', 'name', 'onChange', 'onHighlight', 'onInteractOutside', 'onInvalid', 'onTagUpdate', 'readOnly', 'translations', 'validate', 'value']);
15
+ const api = useTagsInput.useTagsInput(tagsInputParams);
16
+ const rootProps = solid.mergeProps(() => api().rootProps, restProps);
17
+ const getChildren = () => runIfFn.runIfFn(restProps.children, api);
17
18
  return web.createComponent(tagsInputContext.TagsInputProvider, {
18
- value: tagsInput,
19
+ value: api,
19
20
  get children() {
20
- return web.createComponent(factory.ark.div, web.mergeProps(() => tagsInput().rootProps, divProps, {
21
- children: view
21
+ return web.createComponent(factory.ark.div, web.mergeProps(rootProps, {
22
+ get children() {
23
+ return getChildren();
24
+ }
22
25
  }));
23
26
  }
24
27
  });
@@ -1,9 +1,9 @@
1
- import { type Assign } from '@polymorphic-factory/solid';
2
1
  import { type JSX } from 'solid-js/jsx-runtime';
3
2
  import { type HTMLArkProps } from '../factory';
3
+ import type { Assign } from '../types';
4
4
  import { type UseTagsInputProps, type UseTagsInputReturn } from './use-tags-input';
5
5
  export type TagsInputChildren = {
6
- children: (pages: ReturnType<UseTagsInputReturn>) => JSX.Element | JSX.Element;
6
+ children: (pages: UseTagsInputReturn) => JSX.Element | JSX.Element;
7
7
  };
8
- export type TagsInputProps = Assign<Assign<HTMLArkProps<'div'>, UseTagsInputProps>, TagsInputChildren>;
8
+ export type TagsInputProps = Assign<HTMLArkProps<'div'>, UseTagsInputProps & TagsInputChildren>;
9
9
  export declare const TagsInput: (props: TagsInputProps) => JSX.Element;
@@ -1,5 +1,5 @@
1
- import { createComponent, mergeProps } from 'solid-js/web';
2
- import { children } from 'solid-js';
1
+ import { createComponent, mergeProps as mergeProps$1 } from 'solid-js/web';
2
+ import { mergeProps } from '@zag-js/solid';
3
3
  import { createSplitProps } from '../create-split-props.mjs';
4
4
  import { ark } from '../factory.mjs';
5
5
  import { runIfFn } from '../run-if-fn.mjs';
@@ -7,14 +7,17 @@ import { TagsInputProvider } from './tags-input-context.mjs';
7
7
  import { useTagsInput } from './use-tags-input.mjs';
8
8
 
9
9
  const TagsInput = props => {
10
- const [useTagsInputProps, divProps] = createSplitProps()(props, ['addOnPaste', 'allowEditTag', 'allowOverflow', 'autoFocus', 'blurBehavior', 'delimiter', 'dir', 'disabled', 'form', 'getRootNode', 'id', 'ids', 'inputValue', 'invalid', 'max', 'maxLength', 'name', 'onChange', 'onHighlight', 'onInteractOutside', 'onInvalid', 'onTagUpdate', 'readOnly', 'translations', 'validate', 'value']);
11
- const tagsInput = useTagsInput(useTagsInputProps);
12
- const view = () => children(() => runIfFn(divProps.children, tagsInput()));
10
+ const [tagsInputParams, restProps] = createSplitProps()(props, ['addOnPaste', 'allowEditTag', 'allowOverflow', 'autoFocus', 'blurBehavior', 'delimiter', 'dir', 'disabled', 'form', 'getRootNode', 'id', 'ids', 'inputValue', 'invalid', 'max', 'maxLength', 'name', 'onChange', 'onHighlight', 'onInteractOutside', 'onInvalid', 'onTagUpdate', 'readOnly', 'translations', 'validate', 'value']);
11
+ const api = useTagsInput(tagsInputParams);
12
+ const rootProps = mergeProps(() => api().rootProps, restProps);
13
+ const getChildren = () => runIfFn(restProps.children, api);
13
14
  return createComponent(TagsInputProvider, {
14
- value: tagsInput,
15
+ value: api,
15
16
  get children() {
16
- return createComponent(ark.div, mergeProps(() => tagsInput().rootProps, divProps, {
17
- children: view
17
+ return createComponent(ark.div, mergeProps$1(rootProps, {
18
+ get children() {
19
+ return getChildren();
20
+ }
18
21
  }));
19
22
  }
20
23
  });
@@ -2,22 +2,15 @@
2
2
 
3
3
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
4
 
5
- const solidJs = require('solid-js');
6
5
  const web = require('solid-js/web');
7
- const ssrSpread = require('../ssr-spread.cjs');
6
+ const solid = require('@zag-js/solid');
7
+ const factory = require('../factory.cjs');
8
8
  const toastItemContext = require('./toast-item-context.cjs');
9
9
 
10
10
  const ToastCloseTrigger = props => {
11
- const toast = toastItemContext.useToastItemContext();
12
- const triggerProps = toast().closeTriggerProps;
13
- const getChildren = solidJs.children(() => ssrSpread.ssrSpread(props.children, triggerProps));
14
- solidJs.createEffect(() => {
15
- const children = getChildren();
16
- if (children instanceof HTMLElement) {
17
- web.spread(children, triggerProps);
18
- }
19
- });
20
- return getChildren();
11
+ const api = toastItemContext.useToastItemContext();
12
+ const triggerProps = solid.mergeProps(() => api().closeTriggerProps, props);
13
+ return web.createComponent(factory.ark.button, triggerProps);
21
14
  };
22
15
 
23
16
  exports.ToastCloseTrigger = ToastCloseTrigger;
@@ -1,6 +1,4 @@
1
- import type { ResolvedChildren } from 'solid-js/types/reactive/signal';
2
- import { type JSX } from 'solid-js';
3
- export type ToastCloseTriggerProps = {
4
- children: JSX.Element;
5
- };
6
- export declare const ToastCloseTrigger: (props: ToastCloseTriggerProps) => ResolvedChildren;
1
+ import type { JSX } from 'solid-js';
2
+ import { type HTMLArkProps } from '../factory';
3
+ export type ToastCloseTriggerProps = HTMLArkProps<'button'>;
4
+ export declare const ToastCloseTrigger: (props: ToastCloseTriggerProps) => JSX.Element;
@@ -1,19 +1,12 @@
1
- import { children, createEffect } from 'solid-js';
2
- import { spread } from 'solid-js/web';
3
- import { ssrSpread } from '../ssr-spread.mjs';
1
+ import { createComponent } from 'solid-js/web';
2
+ import { mergeProps } from '@zag-js/solid';
3
+ import { ark } from '../factory.mjs';
4
4
  import { useToastItemContext } from './toast-item-context.mjs';
5
5
 
6
6
  const ToastCloseTrigger = props => {
7
- const toast = useToastItemContext();
8
- const triggerProps = toast().closeTriggerProps;
9
- const getChildren = children(() => ssrSpread(props.children, triggerProps));
10
- createEffect(() => {
11
- const children = getChildren();
12
- if (children instanceof HTMLElement) {
13
- spread(children, triggerProps);
14
- }
15
- });
16
- return getChildren();
7
+ const api = useToastItemContext();
8
+ const triggerProps = mergeProps(() => api().closeTriggerProps, props);
9
+ return createComponent(ark.button, triggerProps);
17
10
  };
18
11
 
19
12
  export { ToastCloseTrigger };
@@ -3,14 +3,16 @@
3
3
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
4
 
5
5
  const web = require('solid-js/web');
6
+ const solid = require('@zag-js/solid');
6
7
  const factory = require('../factory.cjs');
7
8
  const toastItemContext = require('./toast-item-context.cjs');
8
9
 
9
10
  const ToastDescription = props => {
10
- const toast = toastItemContext.useToastItemContext();
11
- return web.createComponent(factory.ark.p, web.mergeProps(() => toast().descriptionProps, props, {
11
+ const api = toastItemContext.useToastItemContext();
12
+ const descriptionProps = solid.mergeProps(() => api().descriptionProps, props);
13
+ return web.createComponent(factory.ark.p, web.mergeProps(descriptionProps, {
12
14
  get children() {
13
- return toast().description;
15
+ return api().description;
14
16
  }
15
17
  }));
16
18
  };
@@ -1,12 +1,14 @@
1
- import { createComponent, mergeProps } from 'solid-js/web';
1
+ import { createComponent, mergeProps as mergeProps$1 } from 'solid-js/web';
2
+ import { mergeProps } from '@zag-js/solid';
2
3
  import { ark } from '../factory.mjs';
3
4
  import { useToastItemContext } from './toast-item-context.mjs';
4
5
 
5
6
  const ToastDescription = props => {
6
- const toast = useToastItemContext();
7
- return createComponent(ark.p, mergeProps(() => toast().descriptionProps, props, {
7
+ const api = useToastItemContext();
8
+ const descriptionProps = mergeProps(() => api().descriptionProps, props);
9
+ return createComponent(ark.p, mergeProps$1(descriptionProps, {
8
10
  get children() {
9
- return toast().description;
11
+ return api().description;
10
12
  }
11
13
  }));
12
14
  };
@@ -3,6 +3,7 @@
3
3
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
4
 
5
5
  const web = require('solid-js/web');
6
+ const solid = require('@zag-js/solid');
6
7
  const solidJs = require('solid-js');
7
8
  const createSplitProps = require('../create-split-props.cjs');
8
9
  const factory = require('../factory.cjs');
@@ -10,14 +11,15 @@ const runIfFn = require('../run-if-fn.cjs');
10
11
  const toastProvider = require('./toast-provider.cjs');
11
12
 
12
13
  const ToastGroup = props => {
13
- const [toastGroupParams, divProps] = createSplitProps.createSplitProps()(props, ['placement', 'children']);
14
+ const [childrenProps, localProps] = solidJs.splitProps(props, ['children']);
15
+ const [groupParams, restProps] = createSplitProps.createSplitProps()(localProps, ['placement', 'label']);
14
16
  const toast = toastProvider.useToast();
15
- const view = () => solidJs.children(() => runIfFn.runIfFn(toastGroupParams.children, toast().toastsByPlacement[toastGroupParams.placement] ?? []));
16
- return web.createComponent(factory.ark.div, web.mergeProps(() => toast().getGroupProps({
17
- placement: toastGroupParams.placement
18
- }), divProps, {
17
+ const toastsByPlacement = solidJs.createMemo(() => toast().toastsByPlacement[groupParams.placement] ?? []);
18
+ const groupProps = solid.mergeProps(() => toast().getGroupProps(groupParams), restProps);
19
+ const getChildren = () => runIfFn.runIfFn(childrenProps.children, toastsByPlacement);
20
+ return web.createComponent(factory.ark.div, web.mergeProps(groupProps, {
19
21
  get children() {
20
- return view;
22
+ return getChildren();
21
23
  }
22
24
  }));
23
25
  };
@@ -1,11 +1,13 @@
1
- import { type Assign } from '@polymorphic-factory/solid';
2
1
  import { type Placement, type Service } from '@zag-js/toast';
3
- import { type JSX } from 'solid-js';
2
+ import { type Accessor, type JSX } from 'solid-js';
4
3
  import { type HTMLArkProps } from '../factory';
4
+ import type { Assign } from '../types';
5
5
  type ToastGroupParams = {
6
6
  placement: Placement;
7
- children: JSX.Element | ((toasts: Service[]) => JSX.Element);
7
+ label?: string;
8
8
  };
9
- export type ToastGroupProps = Assign<HTMLArkProps<'div'>, ToastGroupParams>;
9
+ export type ToastGroupProps = Assign<HTMLArkProps<'div'>, ToastGroupParams & {
10
+ children: JSX.Element | ((toasts: Accessor<Service[]>) => JSX.Element);
11
+ }>;
10
12
  export declare const ToastGroup: (props: ToastGroupProps) => JSX.Element;
11
13
  export {};
@@ -1,19 +1,21 @@
1
- import { createComponent, mergeProps } from 'solid-js/web';
2
- import { children } from 'solid-js';
1
+ import { createComponent, mergeProps as mergeProps$1 } from 'solid-js/web';
2
+ import { mergeProps } from '@zag-js/solid';
3
+ import { splitProps, createMemo } from 'solid-js';
3
4
  import { createSplitProps } from '../create-split-props.mjs';
4
5
  import { ark } from '../factory.mjs';
5
6
  import { runIfFn } from '../run-if-fn.mjs';
6
7
  import { useToast } from './toast-provider.mjs';
7
8
 
8
9
  const ToastGroup = props => {
9
- const [toastGroupParams, divProps] = createSplitProps()(props, ['placement', 'children']);
10
+ const [childrenProps, localProps] = splitProps(props, ['children']);
11
+ const [groupParams, restProps] = createSplitProps()(localProps, ['placement', 'label']);
10
12
  const toast = useToast();
11
- const view = () => children(() => runIfFn(toastGroupParams.children, toast().toastsByPlacement[toastGroupParams.placement] ?? []));
12
- return createComponent(ark.div, mergeProps(() => toast().getGroupProps({
13
- placement: toastGroupParams.placement
14
- }), divProps, {
13
+ const toastsByPlacement = createMemo(() => toast().toastsByPlacement[groupParams.placement] ?? []);
14
+ const groupProps = mergeProps(() => toast().getGroupProps(groupParams), restProps);
15
+ const getChildren = () => runIfFn(childrenProps.children, toastsByPlacement);
16
+ return createComponent(ark.div, mergeProps$1(groupProps, {
15
17
  get children() {
16
- return view;
18
+ return getChildren();
17
19
  }
18
20
  }));
19
21
  };
@@ -2,14 +2,16 @@
2
2
 
3
3
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
4
 
5
+ const web = require('solid-js/web');
5
6
  const solidJs = require('solid-js');
6
7
  const runIfFn = require('../run-if-fn.cjs');
7
8
  const toastProvider = require('./toast-provider.cjs');
8
9
 
9
10
  const ToastPlacements = props => {
10
11
  const toast = toastProvider.useToast();
11
- const view = () => solidJs.children(() => runIfFn.runIfFn(props.children, Object.keys(toast().toastsByPlacement)));
12
- return view;
12
+ const placements = solidJs.createMemo(() => Object.keys(toast().toastsByPlacement));
13
+ const getChildren = () => runIfFn.runIfFn(props.children, placements);
14
+ return web.memo(getChildren);
13
15
  };
14
16
 
15
17
  exports.ToastPlacements = ToastPlacements;
@@ -1,6 +1,6 @@
1
1
  import { type Placement } from '@zag-js/toast';
2
- import { type JSX } from 'solid-js';
2
+ import { type Accessor, type JSX } from 'solid-js';
3
3
  export type ToastPlacementsProps = {
4
- children: (placements: Placement[]) => JSX.Element;
4
+ children: (placements: Accessor<Placement[]>) => JSX.Element;
5
5
  };
6
6
  export declare const ToastPlacements: (props: ToastPlacementsProps) => JSX.Element;
@@ -1,11 +1,13 @@
1
- import { children } from 'solid-js';
1
+ import { memo } from 'solid-js/web';
2
+ import { createMemo } from 'solid-js';
2
3
  import { runIfFn } from '../run-if-fn.mjs';
3
4
  import { useToast } from './toast-provider.mjs';
4
5
 
5
6
  const ToastPlacements = props => {
6
7
  const toast = useToast();
7
- const view = () => children(() => runIfFn(props.children, Object.keys(toast().toastsByPlacement)));
8
- return view;
8
+ const placements = createMemo(() => Object.keys(toast().toastsByPlacement));
9
+ const getChildren = () => runIfFn(props.children, placements);
10
+ return memo(getChildren);
9
11
  };
10
12
 
11
13
  export { ToastPlacements };
@@ -31,7 +31,7 @@ const toast__namespace = /*#__PURE__*/_interopNamespaceDefault(toast);
31
31
 
32
32
  const [ToastContextProvider, useToast] = createContext.createContext();
33
33
  const ToastProvider = props => {
34
- const [toastProviderParams, machineProps] = createSplitProps.createSplitProps()(props, ['children']);
34
+ const [childrenProps, machineProps] = createSplitProps.createSplitProps()(props, ['children']);
35
35
  const getRootNode = environmentContext.useEnvironmentContext();
36
36
  const context = solidJs.mergeProps({
37
37
  id: solidJs.createUniqueId(),
@@ -42,7 +42,7 @@ const ToastProvider = props => {
42
42
  return web.createComponent(ToastContextProvider, {
43
43
  value: api,
44
44
  get children() {
45
- return toastProviderParams.children;
45
+ return childrenProps.children;
46
46
  }
47
47
  });
48
48
  };
@@ -8,7 +8,7 @@ import { useEnvironmentContext } from '../environment/environment-context.mjs';
8
8
 
9
9
  const [ToastContextProvider, useToast] = createContext();
10
10
  const ToastProvider = props => {
11
- const [toastProviderParams, machineProps] = createSplitProps()(props, ['children']);
11
+ const [childrenProps, machineProps] = createSplitProps()(props, ['children']);
12
12
  const getRootNode = useEnvironmentContext();
13
13
  const context = mergeProps({
14
14
  id: createUniqueId(),
@@ -19,7 +19,7 @@ const ToastProvider = props => {
19
19
  return createComponent(ToastContextProvider, {
20
20
  value: api,
21
21
  get children() {
22
- return toastProviderParams.children;
22
+ return childrenProps.children;
23
23
  }
24
24
  });
25
25
  };
@@ -3,12 +3,14 @@
3
3
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
4
 
5
5
  const web = require('solid-js/web');
6
+ const solid = require('@zag-js/solid');
6
7
  const factory = require('../factory.cjs');
7
8
  const toastItemContext = require('./toast-item-context.cjs');
8
9
 
9
10
  const ToastTitle = props => {
10
11
  const toast = toastItemContext.useToastItemContext();
11
- return web.createComponent(factory.ark.h3, web.mergeProps(() => toast().titleProps, props, {
12
+ const titleProps = solid.mergeProps(() => toast().titleProps, props);
13
+ return web.createComponent(factory.ark.h3, web.mergeProps(titleProps, {
12
14
  get children() {
13
15
  return toast().title;
14
16
  }
@@ -1,10 +1,12 @@
1
- import { createComponent, mergeProps } from 'solid-js/web';
1
+ import { createComponent, mergeProps as mergeProps$1 } from 'solid-js/web';
2
+ import { mergeProps } from '@zag-js/solid';
2
3
  import { ark } from '../factory.mjs';
3
4
  import { useToastItemContext } from './toast-item-context.mjs';
4
5
 
5
6
  const ToastTitle = props => {
6
7
  const toast = useToastItemContext();
7
- return createComponent(ark.h3, mergeProps(() => toast().titleProps, props, {
8
+ const titleProps = mergeProps(() => toast().titleProps, props);
9
+ return createComponent(ark.h3, mergeProps$1(titleProps, {
8
10
  get children() {
9
11
  return toast().title;
10
12
  }
@@ -3,18 +3,20 @@
3
3
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
4
 
5
5
  const web = require('solid-js/web');
6
+ const solid = require('@zag-js/solid');
6
7
  const createSplitProps = require('../create-split-props.cjs');
7
8
  const factory = require('../factory.cjs');
8
9
  const toastItemContext = require('./toast-item-context.cjs');
9
10
  const useToastItem = require('./use-toast-item.cjs');
10
11
 
11
12
  const Toast = props => {
12
- const [useToastItemProps, divProps] = createSplitProps.createSplitProps()(props, ['toast']);
13
- const toast = useToastItem.useToastItem(useToastItemProps);
13
+ const [toastParams, localProps] = createSplitProps.createSplitProps()(props, ['toast']);
14
+ const api = useToastItem.useToastItem(toastParams);
15
+ const rootProps = solid.mergeProps(() => api().rootProps, localProps);
14
16
  return web.createComponent(toastItemContext.ToastItemProvider, {
15
- value: toast,
17
+ value: api,
16
18
  get children() {
17
- return web.createComponent(factory.ark.div, web.mergeProps(() => toast().rootProps, divProps));
19
+ return web.createComponent(factory.ark.div, rootProps);
18
20
  }
19
21
  });
20
22
  };
@@ -1,6 +1,6 @@
1
1
  import type { JSX } from 'solid-js';
2
- import { type Assign } from '@polymorphic-factory/solid';
3
2
  import { type HTMLArkProps } from '../factory';
3
+ import type { Assign } from '../types';
4
4
  import { type UseToastItemProps } from './use-toast-item';
5
5
  export type ToastProps = Assign<HTMLArkProps<'div'>, UseToastItemProps>;
6
6
  export declare const Toast: (props: ToastProps) => JSX.Element;