@ark-ui/solid 0.2.0 → 0.4.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 (497) hide show
  1. package/README.md +101 -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.d.ts +3 -11
  6. package/dist/accordion/accordion-context.mjs +2 -2
  7. package/dist/accordion/accordion-item.cjs +10 -6
  8. package/dist/accordion/accordion-item.d.ts +1 -1
  9. package/dist/accordion/accordion-item.mjs +12 -8
  10. package/dist/accordion/accordion-trigger.cjs +7 -14
  11. package/dist/accordion/accordion-trigger.d.ts +4 -6
  12. package/dist/accordion/accordion-trigger.mjs +7 -14
  13. package/dist/accordion/accordion.cjs +6 -4
  14. package/dist/accordion/accordion.d.ts +1 -1
  15. package/dist/accordion/accordion.mjs +7 -5
  16. package/dist/accordion/use-accordion.cjs +1 -1
  17. package/dist/accordion/use-accordion.d.ts +4 -9
  18. package/dist/accordion/use-accordion.mjs +2 -2
  19. package/dist/carousel/carousel-context.cjs +13 -0
  20. package/dist/carousel/carousel-context.d.ts +62 -0
  21. package/dist/carousel/carousel-context.mjs +8 -0
  22. package/dist/carousel/carousel-control.cjs +10 -0
  23. package/dist/carousel/carousel-control.d.ts +4 -0
  24. package/dist/carousel/carousel-control.mjs +6 -0
  25. package/dist/carousel/carousel-next-slide-trigger.cjs +16 -0
  26. package/dist/carousel/carousel-next-slide-trigger.d.ts +4 -0
  27. package/dist/carousel/carousel-next-slide-trigger.mjs +12 -0
  28. package/dist/carousel/carousel-prev-slide-trigger.cjs +16 -0
  29. package/dist/carousel/carousel-prev-slide-trigger.d.ts +4 -0
  30. package/dist/carousel/carousel-prev-slide-trigger.mjs +12 -0
  31. package/dist/carousel/carousel-slide-group.cjs +16 -0
  32. package/dist/carousel/carousel-slide-group.d.ts +4 -0
  33. package/dist/carousel/carousel-slide-group.mjs +12 -0
  34. package/dist/carousel/carousel-slide.cjs +18 -0
  35. package/dist/carousel/carousel-slide.d.ts +6 -0
  36. package/dist/carousel/carousel-slide.mjs +14 -0
  37. package/dist/carousel/carousel-viewport.cjs +16 -0
  38. package/dist/carousel/carousel-viewport.d.ts +4 -0
  39. package/dist/carousel/carousel-viewport.mjs +12 -0
  40. package/dist/carousel/carousel.anatomy.cjs +10 -0
  41. package/dist/carousel/carousel.anatomy.d.ts +3 -0
  42. package/dist/carousel/carousel.anatomy.mjs +6 -0
  43. package/dist/carousel/carousel.cjs +24 -0
  44. package/dist/carousel/carousel.d.ts +6 -0
  45. package/dist/carousel/carousel.mjs +20 -0
  46. package/dist/carousel/index.d.ts +8 -0
  47. package/dist/carousel/use-carousel.cjs +36 -0
  48. package/dist/carousel/use-carousel.d.ts +35 -0
  49. package/dist/carousel/use-carousel.mjs +13 -0
  50. package/dist/checkbox/checkbox-context.cjs +2 -2
  51. package/dist/checkbox/checkbox-context.d.ts +11 -12
  52. package/dist/checkbox/checkbox-context.mjs +2 -2
  53. package/dist/checkbox/checkbox-control.cjs +3 -1
  54. package/dist/checkbox/checkbox-control.mjs +4 -2
  55. package/dist/checkbox/checkbox-input.cjs +3 -1
  56. package/dist/checkbox/checkbox-input.mjs +4 -2
  57. package/dist/checkbox/checkbox-label.cjs +3 -1
  58. package/dist/checkbox/checkbox-label.mjs +4 -2
  59. package/dist/checkbox/checkbox.cjs +11 -14
  60. package/dist/checkbox/checkbox.d.ts +3 -5
  61. package/dist/checkbox/checkbox.mjs +13 -16
  62. package/dist/checkbox/index.d.ts +1 -0
  63. package/dist/checkbox/use-checkbox.cjs +1 -1
  64. package/dist/checkbox/use-checkbox.d.ts +6 -6
  65. package/dist/checkbox/use-checkbox.mjs +2 -2
  66. package/dist/combobox/combobox-content.cjs +3 -1
  67. package/dist/combobox/combobox-content.mjs +4 -2
  68. package/dist/combobox/combobox-control.cjs +3 -1
  69. package/dist/combobox/combobox-control.mjs +4 -2
  70. package/dist/combobox/combobox-input.cjs +3 -1
  71. package/dist/combobox/combobox-input.mjs +4 -2
  72. package/dist/combobox/combobox-label.cjs +3 -1
  73. package/dist/combobox/combobox-label.mjs +4 -2
  74. package/dist/combobox/combobox-option.cjs +5 -6
  75. package/dist/combobox/combobox-option.d.ts +1 -1
  76. package/dist/combobox/combobox-option.mjs +8 -9
  77. package/dist/combobox/combobox-positioner.cjs +3 -1
  78. package/dist/combobox/combobox-positioner.mjs +4 -2
  79. package/dist/combobox/combobox-trigger.cjs +4 -11
  80. package/dist/combobox/combobox-trigger.d.ts +4 -6
  81. package/dist/combobox/combobox-trigger.mjs +5 -12
  82. package/dist/combobox/combobox.cjs +9 -12
  83. package/dist/combobox/combobox.d.ts +3 -5
  84. package/dist/combobox/combobox.mjs +11 -14
  85. package/dist/combobox/use-combobox.cjs +1 -1
  86. package/dist/combobox/use-combobox.d.ts +4 -4
  87. package/dist/combobox/use-combobox.mjs +2 -2
  88. package/dist/create-split-props.d.ts +3 -1
  89. package/dist/dialog/dialog-backdrop.cjs +3 -1
  90. package/dist/dialog/dialog-backdrop.mjs +4 -2
  91. package/dist/dialog/dialog-close-trigger.cjs +4 -11
  92. package/dist/dialog/dialog-close-trigger.d.ts +4 -6
  93. package/dist/dialog/dialog-close-trigger.mjs +5 -12
  94. package/dist/dialog/dialog-container.cjs +3 -1
  95. package/dist/dialog/dialog-container.mjs +4 -2
  96. package/dist/dialog/dialog-content.cjs +3 -1
  97. package/dist/dialog/dialog-content.mjs +4 -2
  98. package/dist/dialog/dialog-description.cjs +3 -1
  99. package/dist/dialog/dialog-description.mjs +4 -2
  100. package/dist/dialog/dialog-title.cjs +3 -1
  101. package/dist/dialog/dialog-title.mjs +4 -2
  102. package/dist/dialog/dialog-trigger.cjs +4 -11
  103. package/dist/dialog/dialog-trigger.d.ts +4 -6
  104. package/dist/dialog/dialog-trigger.mjs +5 -12
  105. package/dist/dialog/dialog.cjs +5 -6
  106. package/dist/dialog/dialog.d.ts +1 -1
  107. package/dist/dialog/dialog.mjs +5 -6
  108. package/dist/dialog/use-dialog.cjs +1 -1
  109. package/dist/dialog/use-dialog.mjs +2 -2
  110. package/dist/editable/editable-area.cjs +3 -1
  111. package/dist/editable/editable-area.mjs +4 -2
  112. package/dist/editable/editable-cancel-trigger.cjs +5 -12
  113. package/dist/editable/editable-cancel-trigger.d.ts +4 -6
  114. package/dist/editable/editable-cancel-trigger.mjs +6 -13
  115. package/dist/editable/editable-control.cjs +3 -1
  116. package/dist/editable/editable-control.mjs +4 -2
  117. package/dist/editable/editable-edit-trigger.cjs +5 -12
  118. package/dist/editable/editable-edit-trigger.d.ts +4 -6
  119. package/dist/editable/editable-edit-trigger.mjs +6 -13
  120. package/dist/editable/editable-input.cjs +3 -1
  121. package/dist/editable/editable-input.mjs +4 -2
  122. package/dist/editable/editable-label.cjs +3 -1
  123. package/dist/editable/editable-label.mjs +4 -2
  124. package/dist/editable/editable-preview.cjs +3 -1
  125. package/dist/editable/editable-preview.mjs +4 -2
  126. package/dist/editable/editable-submit-trigger.cjs +4 -11
  127. package/dist/editable/editable-submit-trigger.d.ts +4 -6
  128. package/dist/editable/editable-submit-trigger.mjs +5 -12
  129. package/dist/editable/editable.cjs +10 -11
  130. package/dist/editable/editable.d.ts +4 -6
  131. package/dist/editable/editable.mjs +13 -14
  132. package/dist/editable/use-editable.cjs +1 -1
  133. package/dist/editable/use-editable.mjs +2 -2
  134. package/dist/factory.cjs +43 -9
  135. package/dist/factory.d.ts +14 -12
  136. package/dist/factory.mjs +43 -10
  137. package/dist/filter-props.cjs +28 -0
  138. package/dist/filter-props.d.ts +2 -0
  139. package/dist/filter-props.mjs +23 -0
  140. package/dist/hover-card/hover-card-arrow-tip.cjs +3 -1
  141. package/dist/hover-card/hover-card-arrow-tip.mjs +4 -2
  142. package/dist/hover-card/hover-card-arrow.cjs +3 -1
  143. package/dist/hover-card/hover-card-arrow.mjs +4 -2
  144. package/dist/hover-card/hover-card-content.cjs +3 -1
  145. package/dist/hover-card/hover-card-content.mjs +4 -2
  146. package/dist/hover-card/hover-card-positioner.cjs +3 -1
  147. package/dist/hover-card/hover-card-positioner.mjs +4 -2
  148. package/dist/hover-card/hover-card-trigger.cjs +4 -11
  149. package/dist/hover-card/hover-card-trigger.d.ts +4 -6
  150. package/dist/hover-card/hover-card-trigger.mjs +5 -12
  151. package/dist/hover-card/hover-card.cjs +6 -4
  152. package/dist/hover-card/hover-card.d.ts +2 -2
  153. package/dist/hover-card/hover-card.mjs +6 -4
  154. package/dist/hover-card/use-hover-card.cjs +1 -1
  155. package/dist/hover-card/use-hover-card.mjs +2 -2
  156. package/dist/index.cjs +33 -0
  157. package/dist/index.d.ts +2 -0
  158. package/dist/index.mjs +15 -0
  159. package/dist/menu/menu-arrow-tip.cjs +3 -1
  160. package/dist/menu/menu-arrow-tip.mjs +4 -2
  161. package/dist/menu/menu-arrow.cjs +3 -1
  162. package/dist/menu/menu-arrow.mjs +4 -2
  163. package/dist/menu/menu-content.cjs +3 -1
  164. package/dist/menu/menu-content.mjs +4 -2
  165. package/dist/menu/menu-context-trigger.cjs +4 -9
  166. package/dist/menu/menu-context-trigger.d.ts +4 -6
  167. package/dist/menu/menu-context-trigger.mjs +5 -10
  168. package/dist/menu/menu-item-group-label.cjs +4 -2
  169. package/dist/menu/menu-item-group-label.d.ts +1 -1
  170. package/dist/menu/menu-item-group-label.mjs +5 -3
  171. package/dist/menu/menu-item-group.cjs +4 -2
  172. package/dist/menu/menu-item-group.d.ts +1 -1
  173. package/dist/menu/menu-item-group.mjs +5 -3
  174. package/dist/menu/menu-item.cjs +4 -2
  175. package/dist/menu/menu-item.d.ts +1 -1
  176. package/dist/menu/menu-item.mjs +5 -3
  177. package/dist/menu/menu-option-item.cjs +9 -4
  178. package/dist/menu/menu-option-item.d.ts +3 -3
  179. package/dist/menu/menu-option-item.mjs +11 -6
  180. package/dist/menu/menu-positioner.cjs +3 -1
  181. package/dist/menu/menu-positioner.mjs +4 -2
  182. package/dist/menu/menu-separator.cjs +3 -1
  183. package/dist/menu/menu-separator.mjs +4 -2
  184. package/dist/menu/menu-trigger-item.cjs +3 -1
  185. package/dist/menu/menu-trigger-item.mjs +4 -2
  186. package/dist/menu/menu-trigger.cjs +4 -10
  187. package/dist/menu/menu-trigger.d.ts +4 -6
  188. package/dist/menu/menu-trigger.mjs +5 -11
  189. package/dist/menu/menu.cjs +13 -21
  190. package/dist/menu/menu.d.ts +1 -1
  191. package/dist/menu/menu.mjs +15 -23
  192. package/dist/menu/use-menu.cjs +1 -1
  193. package/dist/menu/use-menu.mjs +2 -2
  194. package/dist/number-input/number-input-control.cjs +4 -2
  195. package/dist/number-input/number-input-control.mjs +5 -3
  196. package/dist/number-input/number-input-decrement-trigger.cjs +5 -12
  197. package/dist/number-input/number-input-decrement-trigger.d.ts +4 -6
  198. package/dist/number-input/number-input-decrement-trigger.mjs +6 -13
  199. package/dist/number-input/number-input-field.cjs +4 -2
  200. package/dist/number-input/number-input-field.mjs +5 -3
  201. package/dist/number-input/number-input-increment-trigger.cjs +5 -12
  202. package/dist/number-input/number-input-increment-trigger.d.ts +4 -6
  203. package/dist/number-input/number-input-increment-trigger.mjs +6 -13
  204. package/dist/number-input/number-input-label.cjs +4 -2
  205. package/dist/number-input/number-input-label.mjs +5 -3
  206. package/dist/number-input/number-input-scrubber.cjs +4 -2
  207. package/dist/number-input/number-input-scrubber.mjs +5 -3
  208. package/dist/number-input/number-input.cjs +6 -4
  209. package/dist/number-input/number-input.d.ts +1 -1
  210. package/dist/number-input/number-input.mjs +7 -5
  211. package/dist/number-input/use-number-input.cjs +1 -1
  212. package/dist/number-input/use-number-input.mjs +2 -2
  213. package/dist/pagination/index.d.ts +1 -0
  214. package/dist/pagination/pagination-context.d.ts +5 -15
  215. package/dist/pagination/pagination-ellipsis.cjs +5 -3
  216. package/dist/pagination/pagination-ellipsis.d.ts +3 -6
  217. package/dist/pagination/pagination-ellipsis.mjs +6 -4
  218. package/dist/pagination/pagination-list-item.cjs +11 -0
  219. package/dist/pagination/pagination-list-item.d.ts +4 -0
  220. package/dist/pagination/pagination-list-item.mjs +7 -0
  221. package/dist/pagination/pagination-list.cjs +2 -1
  222. package/dist/pagination/pagination-list.mjs +3 -2
  223. package/dist/pagination/pagination-page-trigger.d.ts +1 -1
  224. package/dist/pagination/pagination-prev-page-trigger.cjs +2 -2
  225. package/dist/pagination/pagination-prev-page-trigger.mjs +2 -2
  226. package/dist/pagination/pagination.anatomy.cjs +3 -1
  227. package/dist/pagination/pagination.anatomy.d.ts +3 -2
  228. package/dist/pagination/pagination.anatomy.mjs +3 -2
  229. package/dist/pagination/pagination.cjs +9 -7
  230. package/dist/pagination/pagination.d.ts +3 -3
  231. package/dist/pagination/pagination.mjs +11 -9
  232. package/dist/pagination/use-pagination.cjs +1 -1
  233. package/dist/pagination/use-pagination.d.ts +3 -8
  234. package/dist/pagination/use-pagination.mjs +2 -2
  235. package/dist/pin-input/pin-input-control.cjs +8 -4
  236. package/dist/pin-input/pin-input-control.mjs +9 -5
  237. package/dist/pin-input/pin-input-field.cjs +6 -8
  238. package/dist/pin-input/pin-input-field.d.ts +1 -1
  239. package/dist/pin-input/pin-input-field.mjs +7 -9
  240. package/dist/pin-input/pin-input-label.cjs +4 -2
  241. package/dist/pin-input/pin-input-label.mjs +5 -3
  242. package/dist/pin-input/pin-input.cjs +5 -3
  243. package/dist/pin-input/pin-input.d.ts +1 -1
  244. package/dist/pin-input/pin-input.mjs +6 -4
  245. package/dist/pin-input/use-pin-input.cjs +1 -1
  246. package/dist/pin-input/use-pin-input.mjs +2 -2
  247. package/dist/popover/popover-anchor.cjs +6 -13
  248. package/dist/popover/popover-anchor.d.ts +4 -6
  249. package/dist/popover/popover-anchor.mjs +6 -13
  250. package/dist/popover/popover-arrow-tip.cjs +3 -1
  251. package/dist/popover/popover-arrow-tip.mjs +4 -2
  252. package/dist/popover/popover-arrow.cjs +3 -1
  253. package/dist/popover/popover-arrow.mjs +4 -2
  254. package/dist/popover/popover-close-trigger.cjs +5 -12
  255. package/dist/popover/popover-close-trigger.d.ts +4 -6
  256. package/dist/popover/popover-close-trigger.mjs +6 -13
  257. package/dist/popover/popover-content.cjs +4 -2
  258. package/dist/popover/popover-content.mjs +5 -3
  259. package/dist/popover/popover-description.cjs +4 -2
  260. package/dist/popover/popover-description.mjs +5 -3
  261. package/dist/popover/popover-positioner.cjs +4 -2
  262. package/dist/popover/popover-positioner.mjs +5 -3
  263. package/dist/popover/popover-title.cjs +4 -2
  264. package/dist/popover/popover-title.mjs +5 -3
  265. package/dist/popover/popover-trigger.cjs +6 -13
  266. package/dist/popover/popover-trigger.d.ts +4 -6
  267. package/dist/popover/popover-trigger.mjs +6 -13
  268. package/dist/popover/popover.cjs +2 -2
  269. package/dist/popover/popover.mjs +2 -2
  270. package/dist/popover/use-popover.cjs +1 -1
  271. package/dist/popover/use-popover.mjs +2 -2
  272. package/dist/pressable/pressable.cjs +5 -5
  273. package/dist/pressable/pressable.d.ts +1 -1
  274. package/dist/pressable/pressable.mjs +6 -6
  275. package/dist/pressable/use-pressable.cjs +2 -2
  276. package/dist/pressable/use-pressable.d.ts +3 -3
  277. package/dist/pressable/use-pressable.mjs +3 -3
  278. package/dist/prop-trap.cjs +37 -0
  279. package/dist/prop-trap.d.ts +5 -0
  280. package/dist/prop-trap.mjs +33 -0
  281. package/dist/radio-group/radio-control.cjs +5 -3
  282. package/dist/radio-group/radio-control.mjs +6 -4
  283. package/dist/radio-group/radio-group-context.d.ts +2 -0
  284. package/dist/radio-group/radio-group-label.cjs +4 -2
  285. package/dist/radio-group/radio-group-label.mjs +5 -3
  286. package/dist/radio-group/radio-group.cjs +6 -4
  287. package/dist/radio-group/radio-group.d.ts +1 -1
  288. package/dist/radio-group/radio-group.mjs +7 -5
  289. package/dist/radio-group/radio-input.cjs +5 -3
  290. package/dist/radio-group/radio-input.mjs +6 -4
  291. package/dist/radio-group/radio-label.cjs +5 -3
  292. package/dist/radio-group/radio-label.mjs +6 -4
  293. package/dist/radio-group/radio.cjs +5 -6
  294. package/dist/radio-group/radio.d.ts +1 -1
  295. package/dist/radio-group/radio.mjs +6 -7
  296. package/dist/radio-group/use-radio-group.cjs +1 -1
  297. package/dist/radio-group/use-radio-group.d.ts +1 -0
  298. package/dist/radio-group/use-radio-group.mjs +2 -2
  299. package/dist/range-slider/range-slider-control.cjs +3 -1
  300. package/dist/range-slider/range-slider-control.mjs +4 -2
  301. package/dist/range-slider/range-slider-label.cjs +3 -1
  302. package/dist/range-slider/range-slider-label.mjs +4 -2
  303. package/dist/range-slider/range-slider-marker-group.cjs +3 -1
  304. package/dist/range-slider/range-slider-marker-group.mjs +4 -2
  305. package/dist/range-slider/range-slider-marker.cjs +5 -3
  306. package/dist/range-slider/range-slider-marker.d.ts +1 -1
  307. package/dist/range-slider/range-slider-marker.mjs +6 -4
  308. package/dist/range-slider/range-slider-output.cjs +6 -5
  309. package/dist/range-slider/range-slider-output.d.ts +2 -2
  310. package/dist/range-slider/range-slider-output.mjs +7 -6
  311. package/dist/range-slider/range-slider-range.cjs +3 -1
  312. package/dist/range-slider/range-slider-range.mjs +4 -2
  313. package/dist/range-slider/range-slider-thumb.cjs +5 -3
  314. package/dist/range-slider/range-slider-thumb.d.ts +1 -1
  315. package/dist/range-slider/range-slider-thumb.mjs +6 -4
  316. package/dist/range-slider/range-slider-track.cjs +3 -1
  317. package/dist/range-slider/range-slider-track.mjs +4 -2
  318. package/dist/range-slider/range-slider.cjs +7 -6
  319. package/dist/range-slider/range-slider.d.ts +2 -2
  320. package/dist/range-slider/range-slider.mjs +7 -6
  321. package/dist/range-slider/use-range-slider.cjs +1 -1
  322. package/dist/range-slider/use-range-slider.mjs +2 -2
  323. package/dist/rating-group/rating-context.d.ts +3 -13
  324. package/dist/rating-group/rating-group-context.d.ts +5 -20
  325. package/dist/rating-group/rating-group-control.cjs +6 -5
  326. package/dist/rating-group/rating-group-control.d.ts +3 -2
  327. package/dist/rating-group/rating-group-control.mjs +7 -6
  328. package/dist/rating-group/rating-group-label.cjs +3 -1
  329. package/dist/rating-group/rating-group-label.mjs +4 -2
  330. package/dist/rating-group/rating-group.cjs +7 -5
  331. package/dist/rating-group/rating-group.d.ts +2 -2
  332. package/dist/rating-group/rating-group.mjs +8 -6
  333. package/dist/rating-group/rating.cjs +9 -8
  334. package/dist/rating-group/rating.d.ts +6 -4
  335. package/dist/rating-group/rating.mjs +10 -9
  336. package/dist/rating-group/use-rating-group.cjs +1 -1
  337. package/dist/rating-group/use-rating-group.d.ts +2 -10
  338. package/dist/rating-group/use-rating-group.mjs +2 -2
  339. package/dist/select/select-content.cjs +4 -2
  340. package/dist/select/select-content.mjs +5 -3
  341. package/dist/select/select-label.cjs +4 -2
  342. package/dist/select/select-label.mjs +5 -3
  343. package/dist/select/select-option-group-label.cjs +5 -3
  344. package/dist/select/select-option-group-label.d.ts +3 -3
  345. package/dist/select/select-option-group-label.mjs +6 -4
  346. package/dist/select/select-option-group.cjs +5 -3
  347. package/dist/select/select-option-group.d.ts +3 -3
  348. package/dist/select/select-option-group.mjs +6 -4
  349. package/dist/select/select-option.cjs +6 -4
  350. package/dist/select/select-option.d.ts +3 -3
  351. package/dist/select/select-option.mjs +7 -5
  352. package/dist/select/select-positioner.cjs +4 -2
  353. package/dist/select/select-positioner.mjs +5 -3
  354. package/dist/select/select-trigger.cjs +5 -12
  355. package/dist/select/select-trigger.d.ts +4 -6
  356. package/dist/select/select-trigger.mjs +6 -13
  357. package/dist/select/select.cjs +5 -12
  358. package/dist/select/select.d.ts +1 -1
  359. package/dist/select/select.mjs +7 -14
  360. package/dist/select/use-select.cjs +1 -1
  361. package/dist/select/use-select.mjs +2 -2
  362. package/dist/slider/slider-control.cjs +4 -2
  363. package/dist/slider/slider-control.mjs +5 -3
  364. package/dist/slider/slider-label.cjs +4 -2
  365. package/dist/slider/slider-label.mjs +5 -3
  366. package/dist/slider/slider-marker-group.cjs +4 -2
  367. package/dist/slider/slider-marker-group.mjs +5 -3
  368. package/dist/slider/slider-marker.cjs +5 -3
  369. package/dist/slider/slider-marker.d.ts +3 -3
  370. package/dist/slider/slider-marker.mjs +6 -4
  371. package/dist/slider/slider-output.cjs +7 -4
  372. package/dist/slider/slider-output.d.ts +2 -2
  373. package/dist/slider/slider-output.mjs +8 -5
  374. package/dist/slider/slider-range.cjs +3 -1
  375. package/dist/slider/slider-range.mjs +4 -2
  376. package/dist/slider/slider-thumb.cjs +5 -3
  377. package/dist/slider/slider-thumb.mjs +6 -4
  378. package/dist/slider/slider-track.cjs +3 -1
  379. package/dist/slider/slider-track.mjs +4 -2
  380. package/dist/slider/slider.cjs +10 -7
  381. package/dist/slider/slider.d.ts +2 -2
  382. package/dist/slider/slider.mjs +11 -8
  383. package/dist/slider/use-slider.cjs +1 -1
  384. package/dist/slider/use-slider.mjs +2 -2
  385. package/dist/splitter/splitter-panel.cjs +5 -3
  386. package/dist/splitter/splitter-panel.d.ts +3 -3
  387. package/dist/splitter/splitter-panel.mjs +6 -4
  388. package/dist/splitter/splitter-resize-trigger.cjs +7 -12
  389. package/dist/splitter/splitter-resize-trigger.d.ts +7 -9
  390. package/dist/splitter/splitter-resize-trigger.mjs +8 -13
  391. package/dist/splitter/splitter.cjs +6 -4
  392. package/dist/splitter/splitter.d.ts +1 -1
  393. package/dist/splitter/splitter.mjs +7 -5
  394. package/dist/splitter/use-splitter.cjs +1 -1
  395. package/dist/splitter/use-splitter.mjs +2 -2
  396. package/dist/spread.cjs +26 -13
  397. package/dist/spread.mjs +26 -13
  398. package/dist/switch/index.d.ts +6 -0
  399. package/dist/switch/switch-context.cjs +13 -0
  400. package/dist/switch/switch-context.d.ts +27 -0
  401. package/dist/switch/switch-context.mjs +8 -0
  402. package/dist/switch/switch-control.cjs +16 -0
  403. package/dist/switch/switch-control.d.ts +4 -0
  404. package/dist/switch/switch-control.mjs +12 -0
  405. package/dist/switch/switch-input.cjs +16 -0
  406. package/dist/switch/switch-input.d.ts +4 -0
  407. package/dist/switch/switch-input.mjs +12 -0
  408. package/dist/switch/switch-label.cjs +16 -0
  409. package/dist/switch/switch-label.d.ts +4 -0
  410. package/dist/switch/switch-label.mjs +12 -0
  411. package/dist/switch/switch-thumb.cjs +16 -0
  412. package/dist/switch/switch-thumb.d.ts +4 -0
  413. package/dist/switch/switch-thumb.mjs +12 -0
  414. package/dist/switch/switch.anatomy.d.ts +1 -0
  415. package/dist/switch/switch.cjs +30 -0
  416. package/dist/switch/switch.d.ts +9 -0
  417. package/dist/switch/switch.mjs +26 -0
  418. package/dist/switch/use-switch.cjs +36 -0
  419. package/dist/switch/use-switch.d.ts +17 -0
  420. package/dist/switch/use-switch.mjs +13 -0
  421. package/dist/tabs/tab-content.cjs +5 -3
  422. package/dist/tabs/tab-content.d.ts +3 -3
  423. package/dist/tabs/tab-content.mjs +6 -4
  424. package/dist/tabs/tab-indicator.cjs +4 -2
  425. package/dist/tabs/tab-indicator.mjs +5 -3
  426. package/dist/tabs/tab-list.cjs +4 -2
  427. package/dist/tabs/tab-list.mjs +5 -3
  428. package/dist/tabs/tab-trigger.cjs +6 -13
  429. package/dist/tabs/tab-trigger.d.ts +6 -10
  430. package/dist/tabs/tab-trigger.mjs +7 -14
  431. package/dist/tabs/tabs-context.d.ts +7 -9
  432. package/dist/tabs/tabs.cjs +6 -4
  433. package/dist/tabs/tabs.d.ts +1 -1
  434. package/dist/tabs/tabs.mjs +7 -5
  435. package/dist/tabs/use-tabs.cjs +1 -1
  436. package/dist/tabs/use-tabs.d.ts +3 -5
  437. package/dist/tabs/use-tabs.mjs +2 -2
  438. package/dist/tags-input/tag-delete-trigger.cjs +6 -13
  439. package/dist/tags-input/tag-delete-trigger.d.ts +5 -7
  440. package/dist/tags-input/tag-delete-trigger.mjs +7 -14
  441. package/dist/tags-input/tag-input.cjs +5 -3
  442. package/dist/tags-input/tag-input.d.ts +1 -1
  443. package/dist/tags-input/tag-input.mjs +6 -4
  444. package/dist/tags-input/tag.cjs +5 -3
  445. package/dist/tags-input/tag.d.ts +1 -1
  446. package/dist/tags-input/tag.mjs +6 -4
  447. package/dist/tags-input/tags-input-clear-trigger.cjs +4 -11
  448. package/dist/tags-input/tags-input-clear-trigger.d.ts +4 -6
  449. package/dist/tags-input/tags-input-clear-trigger.mjs +5 -12
  450. package/dist/tags-input/tags-input-control.cjs +4 -2
  451. package/dist/tags-input/tags-input-control.mjs +5 -3
  452. package/dist/tags-input/tags-input-field.cjs +4 -2
  453. package/dist/tags-input/tags-input-field.mjs +5 -3
  454. package/dist/tags-input/tags-input-label.cjs +4 -2
  455. package/dist/tags-input/tags-input-label.mjs +5 -3
  456. package/dist/tags-input/tags-input.cjs +10 -7
  457. package/dist/tags-input/tags-input.d.ts +3 -3
  458. package/dist/tags-input/tags-input.mjs +11 -8
  459. package/dist/tags-input/use-tags-input.cjs +1 -1
  460. package/dist/tags-input/use-tags-input.mjs +2 -2
  461. package/dist/toast/toast-close-trigger.cjs +5 -12
  462. package/dist/toast/toast-close-trigger.d.ts +4 -6
  463. package/dist/toast/toast-close-trigger.mjs +6 -13
  464. package/dist/toast/toast-description.cjs +5 -3
  465. package/dist/toast/toast-description.mjs +6 -4
  466. package/dist/toast/toast-group.cjs +8 -6
  467. package/dist/toast/toast-group.d.ts +6 -4
  468. package/dist/toast/toast-group.mjs +10 -8
  469. package/dist/toast/toast-placements.cjs +4 -2
  470. package/dist/toast/toast-placements.d.ts +2 -2
  471. package/dist/toast/toast-placements.mjs +5 -3
  472. package/dist/toast/toast-provider.cjs +2 -2
  473. package/dist/toast/toast-provider.mjs +2 -2
  474. package/dist/toast/toast-title.cjs +3 -1
  475. package/dist/toast/toast-title.mjs +4 -2
  476. package/dist/toast/toast.cjs +6 -4
  477. package/dist/toast/toast.d.ts +1 -1
  478. package/dist/toast/toast.mjs +7 -5
  479. package/dist/tooltip/tooltip-arrow-tip.cjs +4 -2
  480. package/dist/tooltip/tooltip-arrow-tip.mjs +5 -3
  481. package/dist/tooltip/tooltip-arrow.cjs +3 -1
  482. package/dist/tooltip/tooltip-arrow.mjs +4 -2
  483. package/dist/tooltip/tooltip-content.cjs +4 -2
  484. package/dist/tooltip/tooltip-content.mjs +5 -3
  485. package/dist/tooltip/tooltip-context.cjs +2 -2
  486. package/dist/tooltip/tooltip-context.mjs +2 -2
  487. package/dist/tooltip/tooltip-positioner.cjs +5 -3
  488. package/dist/tooltip/tooltip-positioner.mjs +6 -4
  489. package/dist/tooltip/tooltip-trigger.cjs +5 -12
  490. package/dist/tooltip/tooltip-trigger.d.ts +4 -6
  491. package/dist/tooltip/tooltip-trigger.mjs +6 -13
  492. package/dist/tooltip/tooltip.cjs +4 -4
  493. package/dist/tooltip/tooltip.mjs +4 -4
  494. package/dist/tooltip/use-tooltip.cjs +1 -1
  495. package/dist/tooltip/use-tooltip.mjs +2 -2
  496. package/dist/types.d.ts +7 -4
  497. package/package.json +76 -44
@@ -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
  });
@@ -28,7 +28,7 @@ const tagsInput__namespace = /*#__PURE__*/_interopNamespaceDefault(tagsInput);
28
28
 
29
29
  const useTagsInput = (props) => {
30
30
  const getRootNode = environmentContext.useEnvironmentContext();
31
- const context = solidJs.mergeProps({ id: solidJs.createUniqueId(), getRootNode }, props);
31
+ const context = solid.mergeProps({ id: solidJs.createUniqueId(), getRootNode }, props);
32
32
  const [state, send] = solid.useMachine(tagsInput__namespace.machine(context), { context });
33
33
  return solidJs.createMemo(() => tagsInput__namespace.connect(state, send, solid.normalizeProps));
34
34
  };
@@ -1,6 +1,6 @@
1
- import { useMachine, normalizeProps } from '@zag-js/solid';
1
+ import { mergeProps, useMachine, normalizeProps } from '@zag-js/solid';
2
2
  import * as tagsInput from '@zag-js/tags-input';
3
- import { mergeProps, createUniqueId, createMemo } from 'solid-js';
3
+ import { createUniqueId, createMemo } from 'solid-js';
4
4
  import { useEnvironmentContext } from '../environment/environment-context.mjs';
5
5
 
6
6
  const useTagsInput = (props) => {
@@ -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;
@@ -1,16 +1,18 @@
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 { ToastItemProvider } from './toast-item-context.mjs';
5
6
  import { useToastItem } from './use-toast-item.mjs';
6
7
 
7
8
  const Toast = props => {
8
- const [useToastItemProps, divProps] = createSplitProps()(props, ['toast']);
9
- const toast = useToastItem(useToastItemProps);
9
+ const [toastParams, localProps] = createSplitProps()(props, ['toast']);
10
+ const api = useToastItem(toastParams);
11
+ const rootProps = mergeProps(() => api().rootProps, localProps);
10
12
  return createComponent(ToastItemProvider, {
11
- value: toast,
13
+ value: api,
12
14
  get children() {
13
- return createComponent(ark.div, mergeProps(() => toast().rootProps, divProps));
15
+ return createComponent(ark.div, rootProps);
14
16
  }
15
17
  });
16
18
  };
@@ -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 tooltipContext = require('./tooltip-context.cjs');
8
9
 
9
10
  const TooltipArrowTip = props => {
10
- const tooltip = tooltipContext.useTooltipContext();
11
- return web.createComponent(factory.ark.div, web.mergeProps(() => tooltip().arrowTipProps, props));
11
+ const api = tooltipContext.useTooltipContext();
12
+ const arrowTipProps = solid.mergeProps(() => api().arrowTipProps, props);
13
+ return web.createComponent(factory.ark.div, arrowTipProps);
12
14
  };
13
15
 
14
16
  exports.TooltipArrowTip = TooltipArrowTip;
@@ -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 { useTooltipContext } from './tooltip-context.mjs';
4
5
 
5
6
  const TooltipArrowTip = props => {
6
- const tooltip = useTooltipContext();
7
- return createComponent(ark.div, mergeProps(() => tooltip().arrowTipProps, props));
7
+ const api = useTooltipContext();
8
+ const arrowTipProps = mergeProps(() => api().arrowTipProps, props);
9
+ return createComponent(ark.div, arrowTipProps);
8
10
  };
9
11
 
10
12
  export { TooltipArrowTip };
@@ -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 tooltipContext = require('./tooltip-context.cjs');
8
9
 
9
10
  const TooltipArrow = props => {
10
11
  const tooltip = tooltipContext.useTooltipContext();
11
- return web.createComponent(factory.ark.div, web.mergeProps(() => tooltip().arrowProps, props));
12
+ const arrowProps = solid.mergeProps(() => tooltip().arrowProps, props);
13
+ return web.createComponent(factory.ark.div, arrowProps);
12
14
  };
13
15
 
14
16
  exports.TooltipArrow = TooltipArrow;