@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
@@ -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 popoverContext = require('./popover-context.cjs');
9
9
 
10
10
  const PopoverCloseTrigger = props => {
11
- const popover = popoverContext.usePopoverContext();
12
- const triggerProps = popover().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 = popoverContext.usePopoverContext();
12
+ const triggerProps = solid.mergeProps(() => api().closeTriggerProps, props);
13
+ return web.createComponent(factory.ark.button, triggerProps);
21
14
  };
22
15
 
23
16
  exports.PopoverCloseTrigger = PopoverCloseTrigger;
@@ -1,6 +1,4 @@
1
- import type { ResolvedChildren } from 'solid-js/types/reactive/signal';
2
- import { type JSX } from 'solid-js';
3
- export type PopoverCloseTriggerProps = {
4
- children: JSX.Element;
5
- };
6
- export declare const PopoverCloseTrigger: (props: PopoverCloseTriggerProps) => ResolvedChildren;
1
+ import type { JSX } from 'solid-js';
2
+ import { type HTMLArkProps } from '../factory';
3
+ export type PopoverCloseTriggerProps = HTMLArkProps<'button'>;
4
+ export declare const PopoverCloseTrigger: (props: PopoverCloseTriggerProps) => 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 { usePopoverContext } from './popover-context.mjs';
5
5
 
6
6
  const PopoverCloseTrigger = props => {
7
- const popover = usePopoverContext();
8
- const triggerProps = popover().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 = usePopoverContext();
8
+ const triggerProps = mergeProps(() => api().closeTriggerProps, props);
9
+ return createComponent(ark.button, triggerProps);
17
10
  };
18
11
 
19
12
  export { PopoverCloseTrigger };
@@ -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 popoverContext = require('./popover-context.cjs');
8
9
 
9
10
  const PopoverContent = props => {
10
- const popover = popoverContext.usePopoverContext();
11
- return web.createComponent(factory.ark.div, web.mergeProps(() => popover().contentProps, props));
11
+ const api = popoverContext.usePopoverContext();
12
+ const contentProps = solid.mergeProps(() => api().contentProps, props);
13
+ return web.createComponent(factory.ark.div, contentProps);
12
14
  };
13
15
 
14
16
  exports.PopoverContent = PopoverContent;
@@ -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 { usePopoverContext } from './popover-context.mjs';
4
5
 
5
6
  const PopoverContent = props => {
6
- const popover = usePopoverContext();
7
- return createComponent(ark.div, mergeProps(() => popover().contentProps, props));
7
+ const api = usePopoverContext();
8
+ const contentProps = mergeProps(() => api().contentProps, props);
9
+ return createComponent(ark.div, contentProps);
8
10
  };
9
11
 
10
12
  export { PopoverContent };
@@ -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 popoverContext = require('./popover-context.cjs');
8
9
 
9
10
  const PopoverDescription = props => {
10
- const popover = popoverContext.usePopoverContext();
11
- return web.createComponent(factory.ark.div, web.mergeProps(() => popover().descriptionProps, props));
11
+ const api = popoverContext.usePopoverContext();
12
+ const descriptionProps = solid.mergeProps(() => api().descriptionProps, props);
13
+ return web.createComponent(factory.ark.div, descriptionProps);
12
14
  };
13
15
 
14
16
  exports.PopoverDescription = PopoverDescription;
@@ -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 { usePopoverContext } from './popover-context.mjs';
4
5
 
5
6
  const PopoverDescription = props => {
6
- const popover = usePopoverContext();
7
- return createComponent(ark.div, mergeProps(() => popover().descriptionProps, props));
7
+ const api = usePopoverContext();
8
+ const descriptionProps = mergeProps(() => api().descriptionProps, props);
9
+ return createComponent(ark.div, descriptionProps);
8
10
  };
9
11
 
10
12
  export { PopoverDescription };
@@ -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 popoverContext = require('./popover-context.cjs');
8
9
 
9
10
  const PopoverPositioner = props => {
10
- const popover = popoverContext.usePopoverContext();
11
- return web.createComponent(factory.ark.div, web.mergeProps(() => popover().positionerProps, props));
11
+ const api = popoverContext.usePopoverContext();
12
+ const positionerProps = solid.mergeProps(() => api().positionerProps, props);
13
+ return web.createComponent(factory.ark.div, positionerProps);
12
14
  };
13
15
 
14
16
  exports.PopoverPositioner = PopoverPositioner;
@@ -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 { usePopoverContext } from './popover-context.mjs';
4
5
 
5
6
  const PopoverPositioner = props => {
6
- const popover = usePopoverContext();
7
- return createComponent(ark.div, mergeProps(() => popover().positionerProps, props));
7
+ const api = usePopoverContext();
8
+ const positionerProps = mergeProps(() => api().positionerProps, props);
9
+ return createComponent(ark.div, positionerProps);
8
10
  };
9
11
 
10
12
  export { PopoverPositioner };
@@ -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 popoverContext = require('./popover-context.cjs');
8
9
 
9
10
  const PopoverTitle = props => {
10
- const popover = popoverContext.usePopoverContext();
11
- return web.createComponent(factory.ark.div, web.mergeProps(() => popover().titleProps, props));
11
+ const api = popoverContext.usePopoverContext();
12
+ const titleProps = solid.mergeProps(() => api().titleProps, props);
13
+ return web.createComponent(factory.ark.div, titleProps);
12
14
  };
13
15
 
14
16
  exports.PopoverTitle = PopoverTitle;
@@ -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 { usePopoverContext } from './popover-context.mjs';
4
5
 
5
6
  const PopoverTitle = props => {
6
- const popover = usePopoverContext();
7
- return createComponent(ark.div, mergeProps(() => popover().titleProps, props));
7
+ const api = usePopoverContext();
8
+ const titleProps = mergeProps(() => api().titleProps, props);
9
+ return createComponent(ark.div, titleProps);
8
10
  };
9
11
 
10
12
  export { PopoverTitle };
@@ -2,22 +2,15 @@
2
2
 
3
3
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
4
 
5
- const solidJs = require('solid-js');
6
- const spread = require('../spread.cjs');
7
- const ssrSpread = require('../ssr-spread.cjs');
5
+ const web = require('solid-js/web');
6
+ const solid = require('@zag-js/solid');
7
+ const factory = require('../factory.cjs');
8
8
  const popoverContext = require('./popover-context.cjs');
9
9
 
10
10
  const PopoverTrigger = props => {
11
- const popover = popoverContext.usePopoverContext();
12
- const triggerProps = popover().triggerProps;
13
- const getChildren = solidJs.children(() => ssrSpread.ssrSpread(props.children, triggerProps));
14
- solidJs.createEffect(() => {
15
- const children = getChildren();
16
- if (children instanceof HTMLElement) {
17
- spread.spread(children, triggerProps);
18
- }
19
- });
20
- return getChildren();
11
+ const api = popoverContext.usePopoverContext();
12
+ const triggerProps = solid.mergeProps(() => api().triggerProps, props);
13
+ return web.createComponent(factory.ark.button, triggerProps);
21
14
  };
22
15
 
23
16
  exports.PopoverTrigger = PopoverTrigger;
@@ -1,6 +1,4 @@
1
- import type { ResolvedChildren } from 'solid-js/types/reactive/signal';
2
- import { type JSX } from 'solid-js';
3
- export type PopoverTriggerProps = {
4
- children: JSX.Element;
5
- };
6
- export declare const PopoverTrigger: (props: PopoverTriggerProps) => ResolvedChildren;
1
+ import type { JSX } from 'solid-js';
2
+ import { type HTMLArkProps } from '../factory';
3
+ export type PopoverTriggerProps = HTMLArkProps<'button'>;
4
+ export declare const PopoverTrigger: (props: PopoverTriggerProps) => JSX.Element;
@@ -1,19 +1,12 @@
1
- import { children, createEffect } from 'solid-js';
2
- import { spread } from '../spread.mjs';
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 { usePopoverContext } from './popover-context.mjs';
5
5
 
6
6
  const PopoverTrigger = props => {
7
- const popover = usePopoverContext();
8
- const triggerProps = popover().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();
7
+ const api = usePopoverContext();
8
+ const triggerProps = mergeProps(() => api().triggerProps, props);
9
+ return createComponent(ark.button, triggerProps);
17
10
  };
18
11
 
19
12
  export { PopoverTrigger };
@@ -9,9 +9,9 @@ const usePopover = require('./use-popover.cjs');
9
9
 
10
10
  const Popover = props => {
11
11
  const [usePopoverProps, restProps] = createSplitProps.createSplitProps()(props, ['autoFocus', 'closeOnEsc', 'closeOnInteractOutside', 'getRootNode', 'id', 'ids', 'initialFocusEl', 'modal', 'onClose', 'onEscapeKeyDown', 'onFocusOutside', 'onInteractOutside', 'onOpen', 'onPointerDownOutside', 'open', 'portalled', 'positioning']);
12
- const popover = usePopover.usePopover(usePopoverProps);
12
+ const api = usePopover.usePopover(usePopoverProps);
13
13
  return web.createComponent(popoverContext.PopoverProvider, {
14
- value: popover,
14
+ value: api,
15
15
  get children() {
16
16
  return restProps.children;
17
17
  }
@@ -5,9 +5,9 @@ import { usePopover } from './use-popover.mjs';
5
5
 
6
6
  const Popover = props => {
7
7
  const [usePopoverProps, restProps] = createSplitProps()(props, ['autoFocus', 'closeOnEsc', 'closeOnInteractOutside', 'getRootNode', 'id', 'ids', 'initialFocusEl', 'modal', 'onClose', 'onEscapeKeyDown', 'onFocusOutside', 'onInteractOutside', 'onOpen', 'onPointerDownOutside', 'open', 'portalled', 'positioning']);
8
- const popover = usePopover(usePopoverProps);
8
+ const api = usePopover(usePopoverProps);
9
9
  return createComponent(PopoverProvider, {
10
- value: popover,
10
+ value: api,
11
11
  get children() {
12
12
  return restProps.children;
13
13
  }
@@ -28,7 +28,7 @@ const popover__namespace = /*#__PURE__*/_interopNamespaceDefault(popover);
28
28
 
29
29
  const usePopover = (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(popover__namespace.machine(context), { context });
33
33
  return solidJs.createMemo(() => popover__namespace.connect(state, send, solid.normalizeProps));
34
34
  };
@@ -1,6 +1,6 @@
1
1
  import * as popover from '@zag-js/popover';
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 usePopover = (props) => {
@@ -3,16 +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 createSplitProps = require('../create-split-props.cjs');
7
8
  const factory = require('../factory.cjs');
8
9
  const usePressable = require('./use-pressable.cjs');
9
10
 
10
11
  const Pressable = props => {
11
- const [usePressableProps, buttonProps] = createSplitProps.createSplitProps()(props, ['allowTextSelectionOnPress', 'cancelOnPointerExit', 'dir', 'disabled', 'getRootNode', 'id', 'onLongPress', 'onPress', 'onPressEnd', 'onPressStart', 'onPressUp', 'preventFocusOnPress']);
12
- const {
13
- pressableProps
14
- } = usePressable.usePressable(usePressableProps);
15
- return web.createComponent(factory.ark.button, web.mergeProps(pressableProps, buttonProps));
12
+ const [pressableParams, restProps] = createSplitProps.createSplitProps()(props, ['allowTextSelectionOnPress', 'cancelOnPointerExit', 'dir', 'disabled', 'getRootNode', 'id', 'onLongPress', 'onPress', 'onPressEnd', 'onPressStart', 'onPressUp', 'preventFocusOnPress']);
13
+ const api = usePressable.usePressable(pressableParams);
14
+ const buttonProps = solid.mergeProps(() => api().pressableProps, restProps);
15
+ return web.createComponent(factory.ark.button, buttonProps);
16
16
  };
17
17
 
18
18
  exports.Pressable = Pressable;
@@ -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 UsePressableProps } from './use-pressable';
5
5
  export type PressableProps = Assign<HTMLArkProps<'button'>, UsePressableProps>;
6
6
  export declare const Pressable: (props: PressableProps) => JSX.Element;
@@ -1,14 +1,14 @@
1
- import { createComponent, mergeProps } from 'solid-js/web';
1
+ import { createComponent } from 'solid-js/web';
2
+ import { mergeProps } from '@zag-js/solid';
2
3
  import { createSplitProps } from '../create-split-props.mjs';
3
4
  import { ark } from '../factory.mjs';
4
5
  import { usePressable } from './use-pressable.mjs';
5
6
 
6
7
  const Pressable = props => {
7
- const [usePressableProps, buttonProps] = createSplitProps()(props, ['allowTextSelectionOnPress', 'cancelOnPointerExit', 'dir', 'disabled', 'getRootNode', 'id', 'onLongPress', 'onPress', 'onPressEnd', 'onPressStart', 'onPressUp', 'preventFocusOnPress']);
8
- const {
9
- pressableProps
10
- } = usePressable(usePressableProps);
11
- return createComponent(ark.button, mergeProps(pressableProps, buttonProps));
8
+ const [pressableParams, restProps] = createSplitProps()(props, ['allowTextSelectionOnPress', 'cancelOnPointerExit', 'dir', 'disabled', 'getRootNode', 'id', 'onLongPress', 'onPress', 'onPressEnd', 'onPressStart', 'onPressUp', 'preventFocusOnPress']);
9
+ const api = usePressable(pressableParams);
10
+ const buttonProps = mergeProps(() => api().pressableProps, restProps);
11
+ return createComponent(ark.button, buttonProps);
12
12
  };
13
13
 
14
14
  export { Pressable };
@@ -28,14 +28,14 @@ const pressable__namespace = /*#__PURE__*/_interopNamespaceDefault(pressable);
28
28
 
29
29
  const usePressable = props => {
30
30
  const getRootNode = environmentContext.useEnvironmentContext();
31
- const context = solidJs.mergeProps({
31
+ const context = solid.mergeProps({
32
32
  id: solidJs.createUniqueId(),
33
33
  getRootNode
34
34
  }, props);
35
35
  const [state, send] = solid.useMachine(pressable__namespace.machine(context), {
36
36
  context
37
37
  });
38
- return pressable__namespace.connect(state, send, solid.normalizeProps);
38
+ return solidJs.createMemo(() => pressable__namespace.connect(state, send, solid.normalizeProps));
39
39
  };
40
40
 
41
41
  exports.usePressable = usePressable;
@@ -1,9 +1,9 @@
1
- import type { JSX } from 'solid-js';
1
+ import type { Accessor, JSX } from 'solid-js';
2
2
  import * as pressable from '@zag-js/pressable';
3
3
  import { type Optional } from '../types';
4
4
  export type UsePressableProps = Optional<pressable.Context, 'id'>;
5
5
  export type UsePressableReturn = ReturnType<typeof usePressable>;
6
- export declare const usePressable: (props?: UsePressableProps) => {
6
+ export declare const usePressable: (props: UsePressableProps) => Accessor<{
7
7
  isPressed: boolean;
8
8
  pressableProps: JSX.HTMLAttributes<any>;
9
- };
9
+ }>;
@@ -1,6 +1,6 @@
1
1
  import * as pressable from '@zag-js/pressable';
2
- import { useMachine, normalizeProps } from '@zag-js/solid';
3
- import { mergeProps, createUniqueId } 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 usePressable = props => {
@@ -12,7 +12,7 @@ const usePressable = props => {
12
12
  const [state, send] = useMachine(pressable.machine(context), {
13
13
  context
14
14
  });
15
- return pressable.connect(state, send, normalizeProps);
15
+ return createMemo(() => pressable.connect(state, send, normalizeProps));
16
16
  };
17
17
 
18
18
  export { usePressable };
@@ -0,0 +1,37 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
+
5
+ const solidJs = require('solid-js');
6
+
7
+ function trueFn() {
8
+ return true;
9
+ }
10
+ const propTraps = {
11
+ get(_, property, receiver) {
12
+ if (property === solidJs.$PROXY)
13
+ return receiver;
14
+ return _.get(property);
15
+ },
16
+ has(_, property) {
17
+ return _.has(property);
18
+ },
19
+ set: trueFn,
20
+ deleteProperty: trueFn,
21
+ getOwnPropertyDescriptor(_, property) {
22
+ return {
23
+ configurable: true,
24
+ enumerable: true,
25
+ get() {
26
+ return _.get(property);
27
+ },
28
+ set: trueFn,
29
+ deleteProperty: trueFn
30
+ };
31
+ },
32
+ ownKeys(_) {
33
+ return _.keys();
34
+ }
35
+ };
36
+
37
+ exports.propTraps = propTraps;
@@ -0,0 +1,5 @@
1
+ export declare const propTraps: ProxyHandler<{
2
+ get: (k: string | number | symbol) => any;
3
+ has: (k: string | number | symbol) => boolean;
4
+ keys: () => string[];
5
+ }>;
@@ -0,0 +1,33 @@
1
+ import { $PROXY } from 'solid-js';
2
+
3
+ function trueFn() {
4
+ return true;
5
+ }
6
+ const propTraps = {
7
+ get(_, property, receiver) {
8
+ if (property === $PROXY)
9
+ return receiver;
10
+ return _.get(property);
11
+ },
12
+ has(_, property) {
13
+ return _.has(property);
14
+ },
15
+ set: trueFn,
16
+ deleteProperty: trueFn,
17
+ getOwnPropertyDescriptor(_, property) {
18
+ return {
19
+ configurable: true,
20
+ enumerable: true,
21
+ get() {
22
+ return _.get(property);
23
+ },
24
+ set: trueFn,
25
+ deleteProperty: trueFn
26
+ };
27
+ },
28
+ ownKeys(_) {
29
+ return _.keys();
30
+ }
31
+ };
32
+
33
+ export { propTraps };
@@ -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 radioContext = require('./radio-context.cjs');
8
9
  const radioGroupContext = require('./radio-group-context.cjs');
9
10
 
10
11
  const RadioControl = props => {
11
- const radioGroup = radioGroupContext.useRadioGroupContext();
12
- const context = radioContext.useRadioContext();
13
- return web.createComponent(factory.ark.div, web.mergeProps(() => radioGroup().getRadioControlProps(context), props));
12
+ const api = radioGroupContext.useRadioGroupContext();
13
+ const radioParams = radioContext.useRadioContext();
14
+ const controlProps = solid.mergeProps(() => api().getRadioControlProps(radioParams), props);
15
+ return web.createComponent(factory.ark.div, controlProps);
14
16
  };
15
17
 
16
18
  exports.RadioControl = RadioControl;
@@ -1,12 +1,14 @@
1
- import { createComponent, mergeProps } from 'solid-js/web';
1
+ import { createComponent } from 'solid-js/web';
2
+ import { mergeProps } from '@zag-js/solid';
2
3
  import { ark } from '../factory.mjs';
3
4
  import { useRadioContext } from './radio-context.mjs';
4
5
  import { useRadioGroupContext } from './radio-group-context.mjs';
5
6
 
6
7
  const RadioControl = props => {
7
- const radioGroup = useRadioGroupContext();
8
- const context = useRadioContext();
9
- return createComponent(ark.div, mergeProps(() => radioGroup().getRadioControlProps(context), props));
8
+ const api = useRadioGroupContext();
9
+ const radioParams = useRadioContext();
10
+ const controlProps = mergeProps(() => api().getRadioControlProps(radioParams), props);
11
+ return createComponent(ark.div, controlProps);
10
12
  };
11
13
 
12
14
  export { RadioControl };
@@ -25,6 +25,7 @@ export declare const RadioGroupProvider: ContextProviderComponent<Accessor<{
25
25
  getRadioLabelProps(props: RadioProps): JSX.HTMLAttributes<any>;
26
26
  getRadioControlProps(props: RadioProps): JSX.HTMLAttributes<any>;
27
27
  getRadioInputProps(props: InputProps): JSX.InputHTMLAttributes<HTMLInputElement>;
28
+ indicatorProps: JSX.HTMLAttributes<any>;
28
29
  }>>, useRadioGroupContext: () => Accessor<{
29
30
  value: string | null;
30
31
  setValue(value: string): void;
@@ -47,4 +48,5 @@ export declare const RadioGroupProvider: ContextProviderComponent<Accessor<{
47
48
  getRadioLabelProps(props: RadioProps): JSX.HTMLAttributes<any>;
48
49
  getRadioControlProps(props: RadioProps): JSX.HTMLAttributes<any>;
49
50
  getRadioInputProps(props: InputProps): JSX.InputHTMLAttributes<HTMLInputElement>;
51
+ indicatorProps: JSX.HTMLAttributes<any>;
50
52
  }>;
@@ -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 radioGroupContext = require('./radio-group-context.cjs');
8
9
 
9
10
  const RadioGroupLabel = props => {
10
- const radioGroup = radioGroupContext.useRadioGroupContext();
11
- return web.createComponent(factory.ark.label, web.mergeProps(() => radioGroup().labelProps, props));
11
+ const api = radioGroupContext.useRadioGroupContext();
12
+ const labelProps = solid.mergeProps(() => api().labelProps, props);
13
+ return web.createComponent(factory.ark.label, labelProps);
12
14
  };
13
15
 
14
16
  exports.RadioGroupLabel = RadioGroupLabel;
@@ -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 { useRadioGroupContext } from './radio-group-context.mjs';
4
5
 
5
6
  const RadioGroupLabel = props => {
6
- const radioGroup = useRadioGroupContext();
7
- return createComponent(ark.label, mergeProps(() => radioGroup().labelProps, props));
7
+ const api = useRadioGroupContext();
8
+ const labelProps = mergeProps(() => api().labelProps, props);
9
+ return createComponent(ark.label, labelProps);
8
10
  };
9
11
 
10
12
  export { RadioGroupLabel };
@@ -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 radioGroupContext = require('./radio-group-context.cjs');
9
10
  const useRadioGroup = require('./use-radio-group.cjs');
10
11
 
11
12
  const RadioGroup = props => {
12
- const [useRadioGroupProps, divProps] = createSplitProps.createSplitProps()(props, ['dir', 'disabled', 'form', 'getRootNode', 'id', 'ids', 'name', 'onChange', 'orientation', 'readOnly', 'value']);
13
- const radioGroup = useRadioGroup.useRadioGroup(useRadioGroupProps);
13
+ const [groupParams, restProps] = createSplitProps.createSplitProps()(props, ['dir', 'disabled', 'form', 'getRootNode', 'id', 'ids', 'name', 'onChange', 'orientation', 'readOnly', 'value']);
14
+ const api = useRadioGroup.useRadioGroup(groupParams);
15
+ const rootProps = solid.mergeProps(() => api().rootProps, restProps);
14
16
  return web.createComponent(radioGroupContext.RadioGroupProvider, {
15
- value: radioGroup,
17
+ value: api,
16
18
  get children() {
17
- return web.createComponent(factory.ark.div, web.mergeProps(() => radioGroup().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 UseRadioGroupProps } from './use-radio-group';
5
5
  export type RadioGroupProps = Assign<HTMLArkProps<'div'>, UseRadioGroupProps>;
6
6
  export declare const RadioGroup: (props: RadioGroupProps) => JSX.Element;