@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 comboboxContext = require('./combobox-context.cjs');
8
9
 
9
10
  const ComboboxContent = props => {
10
11
  const combobox = comboboxContext.useComboboxContext();
11
- return web.createComponent(factory.ark.ul, web.mergeProps(() => combobox().contentProps, props));
12
+ const contentProps = solid.mergeProps(() => combobox().contentProps, props);
13
+ return web.createComponent(factory.ark.ul, contentProps);
12
14
  };
13
15
 
14
16
  exports.ComboboxContent = ComboboxContent;
@@ -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 { useComboboxContext } from './combobox-context.mjs';
4
5
 
5
6
  const ComboboxContent = props => {
6
7
  const combobox = useComboboxContext();
7
- return createComponent(ark.ul, mergeProps(() => combobox().contentProps, props));
8
+ const contentProps = mergeProps(() => combobox().contentProps, props);
9
+ return createComponent(ark.ul, contentProps);
8
10
  };
9
11
 
10
12
  export { ComboboxContent };
@@ -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 comboboxContext = require('./combobox-context.cjs');
8
9
 
9
10
  const ComboboxControl = props => {
10
11
  const combobox = comboboxContext.useComboboxContext();
11
- return web.createComponent(factory.ark.div, web.mergeProps(() => combobox().controlProps, props));
12
+ const controlProps = solid.mergeProps(() => combobox().controlProps, props);
13
+ return web.createComponent(factory.ark.div, controlProps);
12
14
  };
13
15
 
14
16
  exports.ComboboxControl = ComboboxControl;
@@ -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 { useComboboxContext } from './combobox-context.mjs';
4
5
 
5
6
  const ComboboxControl = props => {
6
7
  const combobox = useComboboxContext();
7
- return createComponent(ark.div, mergeProps(() => combobox().controlProps, props));
8
+ const controlProps = mergeProps(() => combobox().controlProps, props);
9
+ return createComponent(ark.div, controlProps);
8
10
  };
9
11
 
10
12
  export { ComboboxControl };
@@ -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 comboboxContext = require('./combobox-context.cjs');
8
9
 
9
10
  const ComboboxInput = props => {
10
11
  const combobox = comboboxContext.useComboboxContext();
11
- return web.createComponent(factory.ark.input, web.mergeProps(() => combobox().inputProps, props));
12
+ const inputProps = solid.mergeProps(() => combobox().inputProps, props);
13
+ return web.createComponent(factory.ark.input, inputProps);
12
14
  };
13
15
 
14
16
  exports.ComboboxInput = ComboboxInput;
@@ -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 { useComboboxContext } from './combobox-context.mjs';
4
5
 
5
6
  const ComboboxInput = props => {
6
7
  const combobox = useComboboxContext();
7
- return createComponent(ark.input, mergeProps(() => combobox().inputProps, props));
8
+ const inputProps = mergeProps(() => combobox().inputProps, props);
9
+ return createComponent(ark.input, inputProps);
8
10
  };
9
11
 
10
12
  export { ComboboxInput };
@@ -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 comboboxContext = require('./combobox-context.cjs');
8
9
 
9
10
  const ComboboxLabel = props => {
10
11
  const combobox = comboboxContext.useComboboxContext();
11
- return web.createComponent(factory.ark.label, web.mergeProps(() => combobox().labelProps, props));
12
+ const labelProps = solid.mergeProps(() => combobox().labelProps, props);
13
+ return web.createComponent(factory.ark.label, labelProps);
12
14
  };
13
15
 
14
16
  exports.ComboboxLabel = ComboboxLabel;
@@ -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 { useComboboxContext } from './combobox-context.mjs';
4
5
 
5
6
  const ComboboxLabel = props => {
6
7
  const combobox = useComboboxContext();
7
- return createComponent(ark.label, mergeProps(() => combobox().labelProps, props));
8
+ const labelProps = mergeProps(() => combobox().labelProps, props);
9
+ return createComponent(ark.label, labelProps);
8
10
  };
9
11
 
10
12
  export { ComboboxLabel };
@@ -3,21 +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 solidJs = require('solid-js');
7
8
  const createSplitProps = require('../create-split-props.cjs');
8
9
  const factory = require('../factory.cjs');
9
10
  const comboboxContext = require('./combobox-context.cjs');
10
11
 
11
12
  const ComboboxOption = props => {
12
- const [optionProps, {
13
- children,
14
- ...liProps
15
- }] = createSplitProps.createSplitProps()(props, ['count', 'disabled', 'label', 'value', 'index']);
13
+ const [optionProps, localProps] = createSplitProps.createSplitProps()(props, ['count', 'disabled', 'label', 'value', 'index']);
14
+ const [childrenProps, restProps] = solidJs.splitProps(localProps, ['children']);
16
15
  const combobox = comboboxContext.useComboboxContext();
17
- const mergedProps = () => solidJs.mergeProps(combobox().getOptionProps(optionProps), liProps);
16
+ const mergedProps = solid.mergeProps(() => combobox().getOptionProps(optionProps), restProps);
18
17
  return web.createComponent(factory.ark.li, web.mergeProps(mergedProps, {
19
18
  get children() {
20
- return children ? children : optionProps.label;
19
+ return childrenProps.children || optionProps.label;
21
20
  }
22
21
  }));
23
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 { useComboboxContext } from './combobox-context';
5
5
  type OptionProps = Parameters<ReturnType<ReturnType<typeof useComboboxContext>>['getOptionProps']>[0];
6
6
  export type ComboboxOptionProps = Assign<HTMLArkProps<'li'>, OptionProps>;
@@ -1,19 +1,18 @@
1
- import { createComponent, mergeProps } from 'solid-js/web';
2
- import { mergeProps as mergeProps$1 } from 'solid-js';
1
+ import { createComponent, mergeProps as mergeProps$1 } from 'solid-js/web';
2
+ import { mergeProps } from '@zag-js/solid';
3
+ import { splitProps } from 'solid-js';
3
4
  import { createSplitProps } from '../create-split-props.mjs';
4
5
  import { ark } from '../factory.mjs';
5
6
  import { useComboboxContext } from './combobox-context.mjs';
6
7
 
7
8
  const ComboboxOption = props => {
8
- const [optionProps, {
9
- children,
10
- ...liProps
11
- }] = createSplitProps()(props, ['count', 'disabled', 'label', 'value', 'index']);
9
+ const [optionProps, localProps] = createSplitProps()(props, ['count', 'disabled', 'label', 'value', 'index']);
10
+ const [childrenProps, restProps] = splitProps(localProps, ['children']);
12
11
  const combobox = useComboboxContext();
13
- const mergedProps = () => mergeProps$1(combobox().getOptionProps(optionProps), liProps);
14
- return createComponent(ark.li, mergeProps(mergedProps, {
12
+ const mergedProps = mergeProps(() => combobox().getOptionProps(optionProps), restProps);
13
+ return createComponent(ark.li, mergeProps$1(mergedProps, {
15
14
  get children() {
16
- return children ? children : optionProps.label;
15
+ return childrenProps.children || optionProps.label;
17
16
  }
18
17
  }));
19
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 comboboxContext = require('./combobox-context.cjs');
8
9
 
9
10
  const ComboboxPositioner = props => {
10
11
  const combobox = comboboxContext.useComboboxContext();
11
- return web.createComponent(factory.ark.div, web.mergeProps(() => combobox().positionerProps, props));
12
+ const positionProps = solid.mergeProps(() => combobox().positionerProps, props);
13
+ return web.createComponent(factory.ark.div, positionProps);
12
14
  };
13
15
 
14
16
  exports.ComboboxPositioner = ComboboxPositioner;
@@ -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 { useComboboxContext } from './combobox-context.mjs';
4
5
 
5
6
  const ComboboxPositioner = props => {
6
7
  const combobox = useComboboxContext();
7
- return createComponent(ark.div, mergeProps(() => combobox().positionerProps, props));
8
+ const positionProps = mergeProps(() => combobox().positionerProps, props);
9
+ return createComponent(ark.div, positionProps);
8
10
  };
9
11
 
10
12
  export { ComboboxPositioner };
@@ -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 comboboxContext = require('./combobox-context.cjs');
9
9
 
10
10
  const ComboboxTrigger = props => {
11
11
  const combobox = comboboxContext.useComboboxContext();
12
- const triggerProps = combobox().triggerProps;
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(() => combobox().triggerProps, props);
13
+ return web.createComponent(factory.ark.button, triggerProps);
21
14
  };
22
15
 
23
16
  exports.ComboboxTrigger = ComboboxTrigger;
@@ -1,6 +1,4 @@
1
- import type { ResolvedChildren } from 'solid-js/types/reactive/signal';
2
- import { type JSX } from 'solid-js';
3
- export type ComboboxTriggerProps = {
4
- children: JSX.Element;
5
- };
6
- export declare const ComboboxTrigger: (props: ComboboxTriggerProps) => ResolvedChildren;
1
+ import type { JSX } from 'solid-js';
2
+ import { type HTMLArkProps } from '../factory';
3
+ export type ComboboxTriggerProps = HTMLArkProps<'button'>;
4
+ export declare const ComboboxTrigger: (props: ComboboxTriggerProps) => 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 { useComboboxContext } from './combobox-context.mjs';
5
5
 
6
6
  const ComboboxTrigger = props => {
7
7
  const combobox = useComboboxContext();
8
- const triggerProps = combobox().triggerProps;
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(() => combobox().triggerProps, props);
9
+ return createComponent(ark.button, triggerProps);
17
10
  };
18
11
 
19
12
  export { ComboboxTrigger };
@@ -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,23 +11,20 @@ const comboboxContext = require('./combobox-context.cjs');
11
11
  const useCombobox = require('./use-combobox.cjs');
12
12
 
13
13
  const Combobox = props => {
14
- const [useComboboxProps, divProps] = createSplitProps.createSplitProps()(props, ['allowCustomValue', 'ariaHidden', 'autoFocus', 'blurOnSelect', 'dir', 'disabled', 'focusOnClear', 'form', 'getRootNode', 'id', 'ids', 'inputBehavior', 'inputValue', 'invalid', 'isCustomValue', 'loop', 'name', 'onClose', 'onHighlight', 'onInputChange', 'onInputChange', 'onInteractOutside', 'onOpen', 'onSelect', 'openOnClick', 'placeholder', 'positioning', 'readOnly', 'selectInputOnFocus', 'selectOnTab', 'selectionBehavior', 'selectionData', 'translations']);
14
+ const [useComboboxProps, localProps] = createSplitProps.createSplitProps()(props, ['allowCustomValue', 'ariaHidden', 'autoFocus', 'blurOnSelect', 'dir', 'disabled', 'focusOnClear', 'form', 'getRootNode', 'id', 'ids', 'inputBehavior', 'inputValue', 'invalid', 'isCustomValue', 'loop', 'name', 'onClose', 'onHighlight', 'onInputChange', 'onInputChange', 'onInteractOutside', 'onOpen', 'onSelect', 'openOnClick', 'placeholder', 'positioning', 'readOnly', 'selectInputOnFocus', 'selectOnTab', 'selectionBehavior', 'selectionData', 'translations']);
15
15
  const combobox = useCombobox.useCombobox(useComboboxProps);
16
+ const rootProps = solid.mergeProps(() => combobox().rootProps, localProps);
17
+ const getChildren = () => runIfFn.runIfFn(localProps.children, combobox);
16
18
  return web.createComponent(comboboxContext.ComboboxProvider, {
17
19
  value: combobox,
18
20
  get children() {
19
- return web.createComponent(ComboboxContextWrapper, divProps);
21
+ return web.createComponent(factory.ark.div, web.mergeProps(rootProps, {
22
+ get children() {
23
+ return getChildren();
24
+ }
25
+ }));
20
26
  }
21
27
  });
22
28
  };
23
- const ComboboxContextWrapper = props => {
24
- const combobox = comboboxContext.useComboboxContext();
25
- const view = solidJs.children(() => runIfFn.runIfFn(props.children, combobox));
26
- return web.createComponent(factory.ark.div, web.mergeProps(() => combobox().rootProps, props, {
27
- get children() {
28
- return view();
29
- }
30
- }));
31
- };
32
29
 
33
30
  exports.Combobox = Combobox;
@@ -1,11 +1,9 @@
1
- import { type Assign } from '@polymorphic-factory/solid';
2
1
  import { type JSX } from 'solid-js';
3
2
  import { type HTMLArkProps } from '../factory';
3
+ import type { Assign } from '../types';
4
4
  import { type ComboboxContext } from './combobox-context';
5
5
  import { type UseComboboxProps } from './use-combobox';
6
- export type ComboboxProps = Assign<ComboboxContextWrapperProps, UseComboboxProps>;
7
- export declare const Combobox: (props: ComboboxProps) => JSX.Element;
8
- type ComboboxContextWrapperProps = Assign<HTMLArkProps<'div'>, {
6
+ export type ComboboxProps = Assign<HTMLArkProps<'div'>, UseComboboxProps & {
9
7
  children: JSX.Element | ((context: ComboboxContext) => JSX.Element);
10
8
  }>;
11
- export {};
9
+ export declare const Combobox: (props: ComboboxProps) => JSX.Element;
@@ -1,29 +1,26 @@
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';
6
- import { ComboboxProvider, useComboboxContext } from './combobox-context.mjs';
6
+ import { ComboboxProvider } from './combobox-context.mjs';
7
7
  import { useCombobox } from './use-combobox.mjs';
8
8
 
9
9
  const Combobox = props => {
10
- const [useComboboxProps, divProps] = createSplitProps()(props, ['allowCustomValue', 'ariaHidden', 'autoFocus', 'blurOnSelect', 'dir', 'disabled', 'focusOnClear', 'form', 'getRootNode', 'id', 'ids', 'inputBehavior', 'inputValue', 'invalid', 'isCustomValue', 'loop', 'name', 'onClose', 'onHighlight', 'onInputChange', 'onInputChange', 'onInteractOutside', 'onOpen', 'onSelect', 'openOnClick', 'placeholder', 'positioning', 'readOnly', 'selectInputOnFocus', 'selectOnTab', 'selectionBehavior', 'selectionData', 'translations']);
10
+ const [useComboboxProps, localProps] = createSplitProps()(props, ['allowCustomValue', 'ariaHidden', 'autoFocus', 'blurOnSelect', 'dir', 'disabled', 'focusOnClear', 'form', 'getRootNode', 'id', 'ids', 'inputBehavior', 'inputValue', 'invalid', 'isCustomValue', 'loop', 'name', 'onClose', 'onHighlight', 'onInputChange', 'onInputChange', 'onInteractOutside', 'onOpen', 'onSelect', 'openOnClick', 'placeholder', 'positioning', 'readOnly', 'selectInputOnFocus', 'selectOnTab', 'selectionBehavior', 'selectionData', 'translations']);
11
11
  const combobox = useCombobox(useComboboxProps);
12
+ const rootProps = mergeProps(() => combobox().rootProps, localProps);
13
+ const getChildren = () => runIfFn(localProps.children, combobox);
12
14
  return createComponent(ComboboxProvider, {
13
15
  value: combobox,
14
16
  get children() {
15
- return createComponent(ComboboxContextWrapper, divProps);
17
+ return createComponent(ark.div, mergeProps$1(rootProps, {
18
+ get children() {
19
+ return getChildren();
20
+ }
21
+ }));
16
22
  }
17
23
  });
18
24
  };
19
- const ComboboxContextWrapper = props => {
20
- const combobox = useComboboxContext();
21
- const view = children(() => runIfFn(props.children, combobox));
22
- return createComponent(ark.div, mergeProps(() => combobox().rootProps, props, {
23
- get children() {
24
- return view();
25
- }
26
- }));
27
- };
28
25
 
29
26
  export { Combobox };
@@ -28,7 +28,7 @@ const combobox__namespace = /*#__PURE__*/_interopNamespaceDefault(combobox);
28
28
 
29
29
  const useCombobox = (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(combobox__namespace.machine(context), { context });
33
33
  return solidJs.createMemo(() => combobox__namespace.connect(state, send, solid.normalizeProps));
34
34
  };
@@ -1,4 +1,4 @@
1
- import type { OptionData, OptionProps, OptionGroupProps } from '@zag-js/combobox/dist/combobox.types';
1
+ import type { OptionData } from '@zag-js/combobox/dist/combobox.types';
2
2
  import type { Accessor, JSX } from 'solid-js';
3
3
  import * as combobox from '@zag-js/combobox';
4
4
  import { type Optional } from '../types';
@@ -23,11 +23,11 @@ export declare const useCombobox: (props: UseComboboxProps) => Accessor<{
23
23
  triggerProps: JSX.ButtonHTMLAttributes<HTMLButtonElement>;
24
24
  contentProps: JSX.HTMLAttributes<any>;
25
25
  clearTriggerProps: JSX.ButtonHTMLAttributes<HTMLButtonElement>;
26
- getOptionState(props: OptionProps): {
26
+ getOptionState(props: combobox.OptionProps): {
27
27
  disabled: boolean | undefined;
28
28
  focused: boolean;
29
29
  checked: boolean;
30
30
  };
31
- getOptionProps(props: OptionProps): JSX.HTMLAttributes<any>;
32
- getOptionGroupProps(props: OptionGroupProps): JSX.HTMLAttributes<any>;
31
+ getOptionProps(props: combobox.OptionProps): JSX.HTMLAttributes<any>;
32
+ getOptionGroupProps(props: combobox.OptionGroupProps): JSX.HTMLAttributes<any>;
33
33
  }>;
@@ -1,6 +1,6 @@
1
1
  import * as combobox from '@zag-js/combobox';
2
- import { useMachine, normalizeProps } from '@zag-js/solid';
3
- import { mergeProps, createUniqueId, createMemo } from 'solid-js';
2
+ import { mergeProps, useMachine, normalizeProps } from '@zag-js/solid';
3
+ import { createUniqueId, createMemo } from 'solid-js';
4
4
  import { useEnvironmentContext } from '../environment/environment-context.mjs';
5
5
 
6
6
  const useCombobox = (props) => {
@@ -1 +1,3 @@
1
- export declare const createSplitProps: <Target extends Record<never, never>>() => <Keys extends (keyof Target)[], Props extends Target = Target>(props: Props, keys: Keys & ([keyof Target] extends [Keys[number]] ? unknown : never)) => [Pick<Props, Extract<Keys & ([keyof Target] extends [Keys[number]] ? unknown : never), readonly (keyof Props)[]>[number]>, Omit<Props, (Keys & ([keyof Target] extends [Keys[number]] ? unknown : never))[number]>];
1
+ type EnsureKeys<ExpectedKeys extends (keyof Target)[], Target> = ExpectedKeys extends (keyof Target)[] ? [keyof Target] extends [ExpectedKeys[number]] ? unknown : `Missing required keys: ${Exclude<keyof Target, ExpectedKeys[number]>}` : never;
2
+ export declare const createSplitProps: <Target extends Record<never, never>>() => <Keys extends (keyof Target)[], Props extends Target = Target>(props: Props, keys: Keys & EnsureKeys<Keys, Target>) => [Pick<Props, Extract<Keys & EnsureKeys<Keys, Target>, readonly (keyof Props)[]>[number]>, Omit<Props, (Keys & EnsureKeys<Keys, Target>)[number]>];
3
+ export {};
@@ -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 dialogContext = require('./dialog-context.cjs');
8
9
 
9
10
  const DialogBackdrop = props => {
10
11
  const dialog = dialogContext.useDialogContext();
11
- return web.createComponent(factory.ark.div, web.mergeProps(() => dialog().backdropProps, props));
12
+ const backdropProps = solid.mergeProps(() => dialog().backdropProps, props);
13
+ return web.createComponent(factory.ark.div, backdropProps);
12
14
  };
13
15
 
14
16
  exports.DialogBackdrop = DialogBackdrop;
@@ -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 { useDialogContext } from './dialog-context.mjs';
4
5
 
5
6
  const DialogBackdrop = props => {
6
7
  const dialog = useDialogContext();
7
- return createComponent(ark.div, mergeProps(() => dialog().backdropProps, props));
8
+ const backdropProps = mergeProps(() => dialog().backdropProps, props);
9
+ return createComponent(ark.div, backdropProps);
8
10
  };
9
11
 
10
12
  export { DialogBackdrop };
@@ -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 dialogContext = require('./dialog-context.cjs');
9
9
 
10
10
  const DialogCloseTrigger = props => {
11
11
  const dialog = dialogContext.useDialogContext();
12
- const triggerProps = dialog().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();
12
+ const triggerProps = solid.mergeProps(() => dialog().triggerProps, props);
13
+ return web.createComponent(factory.ark.button, triggerProps);
21
14
  };
22
15
 
23
16
  exports.DialogCloseTrigger = DialogCloseTrigger;
@@ -1,6 +1,4 @@
1
- import type { ResolvedChildren } from 'solid-js/types/reactive/signal';
2
- import { type JSX } from 'solid-js';
3
- export type DialogCloseTriggerProps = {
4
- children: JSX.Element;
5
- };
6
- export declare const DialogCloseTrigger: (props: DialogCloseTriggerProps) => ResolvedChildren;
1
+ import type { JSX } from 'solid-js';
2
+ import { type HTMLArkProps } from '../factory';
3
+ export type DialogCloseTriggerProps = HTMLArkProps<'button'>;
4
+ export declare const DialogCloseTrigger: (props: DialogCloseTriggerProps) => 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 { useDialogContext } from './dialog-context.mjs';
5
5
 
6
6
  const DialogCloseTrigger = props => {
7
7
  const dialog = useDialogContext();
8
- const triggerProps = dialog().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();
8
+ const triggerProps = mergeProps(() => dialog().triggerProps, props);
9
+ return createComponent(ark.button, triggerProps);
17
10
  };
18
11
 
19
12
  export { DialogCloseTrigger };
@@ -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 dialogContext = require('./dialog-context.cjs');
8
9
 
9
10
  const DialogContainer = props => {
10
11
  const dialog = dialogContext.useDialogContext();
11
- return web.createComponent(factory.ark.div, web.mergeProps(() => dialog().containerProps, props));
12
+ const containerProps = solid.mergeProps(() => dialog().containerProps, props);
13
+ return web.createComponent(factory.ark.div, containerProps);
12
14
  };
13
15
 
14
16
  exports.DialogContainer = DialogContainer;
@@ -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 { useDialogContext } from './dialog-context.mjs';
4
5
 
5
6
  const DialogContainer = props => {
6
7
  const dialog = useDialogContext();
7
- return createComponent(ark.div, mergeProps(() => dialog().containerProps, props));
8
+ const containerProps = mergeProps(() => dialog().containerProps, props);
9
+ return createComponent(ark.div, containerProps);
8
10
  };
9
11
 
10
12
  export { DialogContainer };
@@ -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 dialogContext = require('./dialog-context.cjs');
8
9
 
9
10
  const DialogContent = props => {
10
11
  const dialog = dialogContext.useDialogContext();
11
- return web.createComponent(factory.ark.div, web.mergeProps(() => dialog().contentProps, props));
12
+ const contentProps = solid.mergeProps(() => dialog().contentProps, props);
13
+ return web.createComponent(factory.ark.div, contentProps);
12
14
  };
13
15
 
14
16
  exports.DialogContent = DialogContent;
@@ -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 { useDialogContext } from './dialog-context.mjs';
4
5
 
5
6
  const DialogContent = props => {
6
7
  const dialog = useDialogContext();
7
- return createComponent(ark.div, mergeProps(() => dialog().contentProps, props));
8
+ const contentProps = mergeProps(() => dialog().contentProps, props);
9
+ return createComponent(ark.div, contentProps);
8
10
  };
9
11
 
10
12
  export { DialogContent };
@@ -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 dialogContext = require('./dialog-context.cjs');
8
9
 
9
10
  const DialogDescription = props => {
10
11
  const dialog = dialogContext.useDialogContext();
11
- return web.createComponent(factory.ark.p, web.mergeProps(() => dialog().descriptionProps, props));
12
+ const descriptionProps = solid.mergeProps(() => dialog().descriptionProps, props);
13
+ return web.createComponent(factory.ark.p, descriptionProps);
12
14
  };
13
15
 
14
16
  exports.DialogDescription = DialogDescription;