solid-baseui 0.1.0-alpha.0 → 0.1.0-alpha.2

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 (342) hide show
  1. package/CHANGELOG.md +72 -0
  2. package/README.md +133 -15
  3. package/dist/lib/client/DialogHandle-DluOK_7u.js +521 -0
  4. package/dist/lib/client/DialogPopup-CfEb3F54.js +138 -0
  5. package/dist/lib/client/FieldControl-eDe-Jnp9.js +142 -0
  6. package/dist/lib/client/{FieldRootContext-izCEh80D.js → FieldRootContext-D3fuVjs3.js} +1 -1
  7. package/dist/lib/client/{FocusManager-grSdNHqW.js → FocusManager-q7z7PMV1.js} +94 -91
  8. package/dist/lib/client/{FormContext-BB05lWOI.js → FormContext-CwLBtm_d.js} +1 -0
  9. package/dist/lib/client/{InternalBackdrop-cSK13gaM.js → InternalBackdrop-B8_lfUvf.js} +1 -1
  10. package/dist/lib/client/{LabelableContext-DKsB0fIx.js → LabelableContext-CmQF-TX2.js} +3 -6
  11. package/dist/lib/client/MenuSubmenuTrigger-DMb5CwTF.js +1584 -0
  12. package/dist/lib/client/{PopupHandle-CcJG4NMy.js → PopupHandle-DyX5gY1e.js} +17 -11
  13. package/dist/lib/client/{PopupStore-DjB-wO88.js → PopupStore-BjRwcvbG.js} +138 -115
  14. package/dist/lib/client/PopupViewport-BanYHrD-.js +154 -0
  15. package/dist/lib/client/Separator-D5oJzlA3.js +27 -0
  16. package/dist/lib/client/TriggerFocusGuards-Fzspp3Y1.js +51 -0
  17. package/dist/lib/client/accordion/index.js +1 -1
  18. package/dist/lib/client/accordion-CA2DfX67.js +381 -0
  19. package/dist/lib/client/alert-dialog/index.js +1 -1
  20. package/dist/lib/client/{alert-dialog-BH_3ndio.js → alert-dialog-Bup88Dpx.js} +2 -2
  21. package/dist/lib/client/autocomplete/index.js +1 -1
  22. package/dist/lib/client/{autocomplete-Cob_FZEP.js → autocomplete-oyy_uRpU.js} +30 -25
  23. package/dist/lib/client/avatar/index.js +1 -1
  24. package/dist/lib/client/avatar-DNZ4fnBd.js +191 -0
  25. package/dist/lib/client/button/index.js +1 -1
  26. package/dist/lib/client/button-BJZYmCVv.js +88 -0
  27. package/dist/lib/client/checkbox/index.js +1 -1
  28. package/dist/lib/client/checkbox-group/index.js +1 -1
  29. package/dist/lib/client/checkbox-group-DGyrciZJ.js +135 -0
  30. package/dist/lib/client/checkbox-sQHYTbpB.js +425 -0
  31. package/dist/lib/client/collapsible/index.js +1 -1
  32. package/dist/lib/client/collapsible-BENbFFCc.js +230 -0
  33. package/dist/lib/client/combobox/index.js +2 -2
  34. package/dist/lib/client/combobox-BGH8QLXH.js +401 -0
  35. package/dist/lib/client/compositeNavigation-DCt1sQon.js +82 -0
  36. package/dist/lib/client/{constants-BYjBUIIi.js → constants-ByOMFJAe.js} +105 -101
  37. package/dist/lib/client/context-menu/index.js +1 -1
  38. package/dist/lib/client/context-menu-xQ1sBCET.js +220 -0
  39. package/dist/lib/client/{createAnchorPositioning-DcxDXUgB.js → createAnchorPositioning-DCXIApS1.js} +149 -146
  40. package/dist/lib/client/{createAnchoredPopupScrollLock-Cx0cbh1_.js → createAnchoredPopupScrollLock-BxKpJbCE.js} +2 -2
  41. package/dist/lib/client/{createClickInteraction-CTaIFBiV.js → createClickInteraction-BeBsTqtY.js} +1 -1
  42. package/dist/lib/client/{createCollapsiblePanel-DeDu0O2t.js → createCollapsiblePanel-BQ8r4RTi.js} +1 -1
  43. package/dist/lib/client/createFocusInteraction-DQPWkZe2.js +60 -0
  44. package/dist/lib/client/createLabelableId-DxJRwMUJ.js +14 -0
  45. package/dist/lib/client/{createPopupAutoResize-CGNiLhGq.js → createPopupAutoResize-CSNpMz5v.js} +4 -4
  46. package/dist/lib/client/{createTransitionStatus-B1L-whed.js → createTransitionStatus-BL_cPSEA.js} +12 -12
  47. package/dist/lib/client/dialog/index.js +1 -1
  48. package/dist/lib/client/{dialog-DkaQwIgP.js → dialog-C0EF0a5u.js} +2 -2
  49. package/dist/lib/client/{dom-BEAeQ9Eb.js → dom-lDdayFF_.js} +25 -15
  50. package/dist/lib/client/drawer/index.js +1 -1
  51. package/dist/lib/client/drawer-uKoNBwDU.js +1540 -0
  52. package/dist/lib/client/field/index.js +1 -1
  53. package/dist/lib/client/field-DIMrgpBW.js +483 -0
  54. package/dist/lib/client/fieldset/index.js +1 -1
  55. package/dist/lib/client/fieldset-Byqk3noT.js +70 -0
  56. package/dist/lib/client/form/index.js +1 -1
  57. package/dist/lib/client/form-Bqq8wSLY.js +109 -0
  58. package/dist/lib/client/index.js +44 -42
  59. package/dist/lib/client/input/index.js +1 -1
  60. package/dist/lib/client/{input-gb0ejxkm.js → input-YthuKwIE.js} +1 -1
  61. package/dist/lib/client/internals/composeEventHandlers.js +14 -8
  62. package/dist/lib/client/internals/field-root-context/index.js +2 -2
  63. package/dist/lib/client/internals/form-context/index.js +1 -1
  64. package/dist/lib/client/internals/labelable-provider/index.js +1 -1
  65. package/dist/lib/client/{mergeStyleValue-C4ITiiIV.js → isSolidAccessor-BH_FevwH.js} +8 -15
  66. package/dist/lib/client/menu/index.js +1 -1
  67. package/dist/lib/client/menu-4rNLN6aX.js +334 -0
  68. package/dist/lib/client/menubar/index.js +1 -1
  69. package/dist/lib/client/menubar-nFQGtNmY.js +163 -0
  70. package/dist/lib/client/mergeStyleValue-Dcd36yxZ.js +12 -0
  71. package/dist/lib/client/meter/index.js +1 -1
  72. package/dist/lib/client/meter-BvWdppcx.js +178 -0
  73. package/dist/lib/client/navigation-menu/index.js +1 -1
  74. package/dist/lib/client/navigation-menu-BbRyun3a.js +1070 -0
  75. package/dist/lib/client/number-field/index.js +1 -1
  76. package/dist/lib/client/number-field-hT_H0hVu.js +1043 -0
  77. package/dist/lib/client/otp-field/index.js +1 -1
  78. package/dist/lib/client/otp-field-lsy2iGID.js +584 -0
  79. package/dist/lib/client/popover/index.js +1 -1
  80. package/dist/lib/client/popover-Cmvmuf1L.js +940 -0
  81. package/dist/lib/client/popupStateMapping-nhukB8NK.js +371 -0
  82. package/dist/lib/client/preview-card/index.js +1 -1
  83. package/dist/lib/client/preview-card-Dtu8AnBN.js +632 -0
  84. package/dist/lib/client/progress/index.js +1 -1
  85. package/dist/lib/client/progress-AVKxvgpc.js +195 -0
  86. package/dist/lib/client/radio/index.js +1 -1
  87. package/dist/lib/client/radio-CeCU-Qqi.js +284 -0
  88. package/dist/lib/client/radio-group/index.js +1 -1
  89. package/dist/lib/client/radio-group-NbuJvjQe.js +195 -0
  90. package/dist/lib/client/runOnceAnimationsFinish-CFADb4CN.js +49 -0
  91. package/dist/lib/client/{safePolygon--bbKn0c8.js → safePolygon-DVAR5dQD.js} +74 -70
  92. package/dist/lib/client/scroll-area/index.js +1 -1
  93. package/dist/lib/client/scroll-area-DqbvoAd7.js +717 -0
  94. package/dist/lib/client/{scrollable-SRNYlhF7.js → scrollable-BVaDUXng.js} +12 -12
  95. package/dist/lib/client/select/index.js +1 -1
  96. package/dist/lib/client/select-Dad51Xbn.js +1934 -0
  97. package/dist/lib/client/separator/index.js +1 -1
  98. package/dist/lib/client/slider/index.js +1 -1
  99. package/dist/lib/client/slider-CLSKFq_M.js +927 -0
  100. package/dist/lib/client/switch/index.js +1 -1
  101. package/dist/lib/client/switch-Bzuu5EIg.js +306 -0
  102. package/dist/lib/client/tabs/index.js +1 -1
  103. package/dist/lib/client/tabs-DWiBDv8D.js +695 -0
  104. package/dist/lib/client/toast/index.js +1 -1
  105. package/dist/lib/client/toast-DmtPJW2k.js +1118 -0
  106. package/dist/lib/client/toggle/index.js +1 -1
  107. package/dist/lib/client/toggle-CAe-Z8Xn.js +142 -0
  108. package/dist/lib/client/toggle-group/index.js +1 -1
  109. package/dist/lib/client/toggle-group-BbQg5s-m.js +134 -0
  110. package/dist/lib/client/toolbar/index.js +1 -1
  111. package/dist/lib/client/toolbar-BXT_g-oX.js +504 -0
  112. package/dist/lib/client/tooltip/index.js +1 -1
  113. package/dist/lib/client/tooltip-h2r2_Xuo.js +850 -0
  114. package/dist/lib/client/use-render/index.js +2 -0
  115. package/dist/lib/client/useFilteredItems-BX0BEuSI.js +2301 -0
  116. package/dist/lib/client/useRender-CxZ8PI-g.js +12 -0
  117. package/dist/lib/server/{DialogHandle-ATZlm9RC.js → DialogHandle-BGIISmG7.js} +37 -46
  118. package/dist/lib/server/{DialogPopup-BebI-w5P.js → DialogPopup-C2ZDGf42.js} +12 -15
  119. package/dist/lib/server/{FieldControl-Y_kI7ARp.js → FieldControl-CDMMyvuj.js} +62 -26
  120. package/dist/lib/server/{FieldRootContext-IC-LWzVp.js → FieldRootContext-Bfpna6gA.js} +3 -3
  121. package/dist/lib/server/{FocusManager-BrbZVWME.js → FocusManager-D-xgblGs.js} +9 -5
  122. package/dist/lib/server/{FormContext-pvESt85v.js → FormContext-CYwo_ZnB.js} +1 -0
  123. package/dist/lib/server/{InternalBackdrop-C_iDPVR-.js → InternalBackdrop-D_2zAWnl.js} +1 -1
  124. package/dist/lib/server/{LabelableContext-DZP3rgAY.js → LabelableContext-BTeF0IWb.js} +4 -6
  125. package/dist/lib/server/{MenuSubmenuTrigger-DA4gsv6z.js → MenuSubmenuTrigger-BMQKlOvU.js} +177 -210
  126. package/dist/lib/server/{PopupHandle-DthPgNjy.js → PopupHandle-QNj4mED2.js} +14 -5
  127. package/dist/lib/server/{PopupStore-DEs3FAEe.js → PopupStore-evylvVnN.js} +42 -15
  128. package/dist/lib/server/{PopupViewport-3r_KTFwX.js → PopupViewport-BDttjORN.js} +38 -28
  129. package/dist/lib/server/{Separator-vhhYxWGr.js → Separator-DTvtnxzP.js} +4 -6
  130. package/dist/lib/server/TriggerFocusGuards-B9GNbLrL.js +61 -0
  131. package/dist/lib/server/accordion/index.js +39 -77
  132. package/dist/lib/server/alert-dialog/index.js +2 -2
  133. package/dist/lib/server/autocomplete/index.js +14 -5
  134. package/dist/lib/server/avatar/index.js +90 -51
  135. package/dist/lib/server/button/index.js +14 -15
  136. package/dist/lib/server/checkbox/index.js +37 -64
  137. package/dist/lib/server/checkbox-group/index.js +21 -11
  138. package/dist/lib/server/collapsible/index.js +42 -49
  139. package/dist/lib/server/combobox/index.js +79 -50
  140. package/dist/lib/server/{compositeNavigation-BRVT1C38.js → compositeNavigation-D5jKM4yk.js} +32 -1
  141. package/dist/lib/server/{constants-9H__9xbS.js → constants-ByqXubhO.js} +10 -5
  142. package/dist/lib/server/context-menu/index.js +14 -16
  143. package/dist/lib/server/{createAnchorPositioning-C-cVOPwz.js → createAnchorPositioning-DrQYe7RS.js} +12 -7
  144. package/dist/lib/server/{createAnchoredPopupScrollLock-DFuUrykR.js → createAnchoredPopupScrollLock-q6gnOSmv.js} +2 -2
  145. package/dist/lib/server/{createClickInteraction-BYsMgvup.js → createClickInteraction-D7oc1Vco.js} +1 -1
  146. package/dist/lib/server/{createCollapsiblePanel-DTyVJz0G.js → createCollapsiblePanel-B45kTe6v.js} +1 -1
  147. package/dist/lib/server/{createFocusInteraction-EIS0QOel.js → createFocusInteraction-DFKr4G7a.js} +22 -2
  148. package/dist/lib/server/createLabelableId-WMUKtY6s.js +18 -0
  149. package/dist/lib/server/{createPopupAutoResize-DO50jjNX.js → createPopupAutoResize-Cg0-lLf4.js} +2 -2
  150. package/dist/lib/server/{createTransitionStatus-BTlrerSS.js → createTransitionStatus-184v7j3-.js} +2 -2
  151. package/dist/lib/server/dialog/index.js +2 -2
  152. package/dist/lib/server/{dom-Crg_2R-j.js → dom-D8_aB1yy.js} +14 -1
  153. package/dist/lib/server/drawer/index.js +96 -100
  154. package/dist/lib/server/field/index.js +110 -98
  155. package/dist/lib/server/fieldset/index.js +13 -16
  156. package/dist/lib/server/form/index.js +18 -14
  157. package/dist/lib/server/index.js +5 -3
  158. package/dist/lib/server/input/index.js +1 -1
  159. package/dist/lib/server/internals/composeEventHandlers.js +15 -9
  160. package/dist/lib/server/internals/field-root-context/index.js +1 -1
  161. package/dist/lib/server/internals/form-context/index.js +1 -1
  162. package/dist/lib/server/internals/labelable-provider/index.js +1 -1
  163. package/dist/lib/server/{mergeStyleValue-Db8bRCM4.js → isSolidAccessor-CZpzAH5l.js} +7 -21
  164. package/dist/lib/server/menu/index.js +30 -29
  165. package/dist/lib/server/menubar/index.js +10 -35
  166. package/dist/lib/server/mergeStyleValue-DecVaoac.js +20 -0
  167. package/dist/lib/server/meter/index.js +20 -32
  168. package/dist/lib/server/navigation-menu/index.js +67 -138
  169. package/dist/lib/server/number-field/index.js +64 -62
  170. package/dist/lib/server/otp-field/index.js +19 -22
  171. package/dist/lib/server/popover/index.js +61 -77
  172. package/dist/lib/server/{popupStateMapping-nKoUwoke.js → popupStateMapping-VHqr6M4H.js} +19 -17
  173. package/dist/lib/server/preview-card/index.js +39 -50
  174. package/dist/lib/server/progress/index.js +21 -33
  175. package/dist/lib/server/radio/index.js +24 -45
  176. package/dist/lib/server/radio-group/index.js +12 -13
  177. package/dist/lib/server/{runOnceAnimationsFinish-DCHzXWZU.js → runOnceAnimationsFinish-CYq38H8J.js} +2 -1
  178. package/dist/lib/server/{safePolygon-CAm5RJGv.js → safePolygon-B8QtiIZ3.js} +6 -1
  179. package/dist/lib/server/scroll-area/index.js +40 -49
  180. package/dist/lib/server/{scrollable-CjsSxbGr.js → scrollable-C9Pgq8T5.js} +1 -1
  181. package/dist/lib/server/select/index.js +128 -213
  182. package/dist/lib/server/separator/index.js +1 -1
  183. package/dist/lib/server/slider/index.js +39 -52
  184. package/dist/lib/server/switch/index.js +22 -32
  185. package/dist/lib/server/tabs/index.js +197 -137
  186. package/dist/lib/server/toast/index.js +78 -95
  187. package/dist/lib/server/toggle/index.js +11 -13
  188. package/dist/lib/server/toggle-group/index.js +11 -9
  189. package/dist/lib/server/toolbar/index.js +76 -93
  190. package/dist/lib/server/tooltip/index.js +53 -57
  191. package/dist/lib/server/use-render/index.js +2 -0
  192. package/dist/lib/server/{useFilteredItems-DvuctLt3.js → useFilteredItems-BmhL0nf1.js} +335 -316
  193. package/dist/lib/server/useRender-CryVdCjs.js +16 -0
  194. package/dist/lib/types/accordion/header/AccordionHeader.d.ts +1 -1
  195. package/dist/lib/types/accordion/item/AccordionItem.d.ts +1 -1
  196. package/dist/lib/types/accordion/panel/AccordionPanel.d.ts +1 -1
  197. package/dist/lib/types/accordion/root/AccordionRoot.d.ts +2 -7
  198. package/dist/lib/types/accordion/trigger/AccordionTrigger.d.ts +7 -7
  199. package/dist/lib/types/alert-dialog/trigger/AlertDialogTrigger.d.ts +1 -2
  200. package/dist/lib/types/autocomplete/trigger/AutocompleteTrigger.d.ts +1 -0
  201. package/dist/lib/types/avatar/fallback/AvatarFallback.d.ts +2 -2
  202. package/dist/lib/types/avatar/image/AvatarImage.d.ts +9 -3
  203. package/dist/lib/types/avatar/image/createImageLoadingStatus.d.ts +3 -2
  204. package/dist/lib/types/avatar/root/AvatarRoot.d.ts +1 -1
  205. package/dist/lib/types/button/Button.d.ts +1 -1
  206. package/dist/lib/types/checkbox-group/CheckboxGroupContext.d.ts +4 -1
  207. package/dist/lib/types/collapsible/panel/CollapsiblePanel.d.ts +1 -1
  208. package/dist/lib/types/collapsible/root/CollapsibleRoot.d.ts +1 -1
  209. package/dist/lib/types/collapsible/trigger/CollapsibleTrigger.d.ts +1 -1
  210. package/dist/lib/types/combobox/chip/ComboboxChip.d.ts +2 -0
  211. package/dist/lib/types/combobox/index.d.ts +2 -0
  212. package/dist/lib/types/combobox/index.parts.d.ts +1 -0
  213. package/dist/lib/types/combobox/items/createItems.d.ts +42 -0
  214. package/dist/lib/types/combobox/root/AriaCombobox.d.ts +4 -0
  215. package/dist/lib/types/combobox/root/ComboboxRoot.d.ts +17 -8
  216. package/dist/lib/types/combobox/root/ComboboxRootContext.d.ts +2 -0
  217. package/dist/lib/types/combobox/store/ComboboxStore.d.ts +1 -0
  218. package/dist/lib/types/combobox/trigger/ComboboxTrigger.d.ts +1 -0
  219. package/dist/lib/types/combobox/utils/handleInputPress.d.ts +1 -1
  220. package/dist/lib/types/dialog/backdrop/DialogBackdrop.d.ts +1 -1
  221. package/dist/lib/types/dialog/description/DialogDescription.d.ts +1 -1
  222. package/dist/lib/types/dialog/title/DialogTitle.d.ts +1 -1
  223. package/dist/lib/types/dialog/viewport/DialogViewport.d.ts +1 -1
  224. package/dist/lib/types/drawer/backdrop/DrawerBackdrop.d.ts +1 -1
  225. package/dist/lib/types/drawer/content/DrawerContent.d.ts +1 -1
  226. package/dist/lib/types/drawer/indent/DrawerIndent.d.ts +1 -1
  227. package/dist/lib/types/drawer/indent-background/DrawerIndentBackground.d.ts +1 -1
  228. package/dist/lib/types/field/control/FieldControl.d.ts +5 -5
  229. package/dist/lib/types/field/root/FieldRoot.d.ts +1 -1
  230. package/dist/lib/types/field/root/createFieldValidation.d.ts +3 -2
  231. package/dist/lib/types/fieldset/legend/FieldsetLegend.d.ts +1 -1
  232. package/dist/lib/types/fieldset/root/FieldsetRoot.d.ts +1 -1
  233. package/dist/lib/types/index.d.ts +1 -0
  234. package/dist/lib/types/internals/composeEventHandlers.d.ts +9 -2
  235. package/dist/lib/types/internals/createTransitionStatus.d.ts +1 -1
  236. package/dist/lib/types/internals/field-root-context/FieldRootContext.d.ts +1 -0
  237. package/dist/lib/types/internals/form-context/FormContext.d.ts +1 -0
  238. package/dist/lib/types/internals/labelable-provider/LabelableContext.d.ts +1 -0
  239. package/dist/lib/types/internals/labelable-provider/createLabelableId.d.ts +3 -0
  240. package/dist/lib/types/internals/overlay/PopupPortal.d.ts +4 -2
  241. package/dist/lib/types/internals/overlay/createPopupPresence.d.ts +1 -0
  242. package/dist/lib/types/internals/overlay/dom.d.ts +2 -0
  243. package/dist/lib/types/menu/root/MenuRootContext.d.ts +1 -0
  244. package/dist/lib/types/meter/indicator/MeterIndicator.d.ts +1 -1
  245. package/dist/lib/types/meter/label/MeterLabel.d.ts +1 -1
  246. package/dist/lib/types/meter/root/MeterRoot.d.ts +1 -1
  247. package/dist/lib/types/meter/track/MeterTrack.d.ts +1 -1
  248. package/dist/lib/types/meter/value/MeterValue.d.ts +1 -1
  249. package/dist/lib/types/navigation-menu/trigger/NavigationMenuTrigger.d.ts +1 -0
  250. package/dist/lib/types/number-field/input/NumberFieldInput.d.ts +5 -5
  251. package/dist/lib/types/number-field/root/NumberFieldRootContext.d.ts +1 -0
  252. package/dist/lib/types/popover/arrow/PopoverArrow.d.ts +1 -1
  253. package/dist/lib/types/popover/backdrop/PopoverBackdrop.d.ts +1 -1
  254. package/dist/lib/types/popover/description/PopoverDescription.d.ts +1 -1
  255. package/dist/lib/types/popover/positioner/PopoverPositioner.d.ts +1 -1
  256. package/dist/lib/types/popover/title/PopoverTitle.d.ts +1 -1
  257. package/dist/lib/types/preview-card/arrow/PreviewCardArrow.d.ts +1 -1
  258. package/dist/lib/types/preview-card/backdrop/PreviewCardBackdrop.d.ts +1 -1
  259. package/dist/lib/types/preview-card/positioner/PreviewCardPositioner.d.ts +1 -1
  260. package/dist/lib/types/progress/indicator/ProgressIndicator.d.ts +1 -1
  261. package/dist/lib/types/progress/label/ProgressLabel.d.ts +1 -1
  262. package/dist/lib/types/progress/root/ProgressRoot.d.ts +1 -1
  263. package/dist/lib/types/progress/track/ProgressTrack.d.ts +1 -1
  264. package/dist/lib/types/progress/value/ProgressValue.d.ts +1 -1
  265. package/dist/lib/types/radio/indicator/RadioIndicator.d.ts +2 -2
  266. package/dist/lib/types/scroll-area/content/ScrollAreaContent.d.ts +1 -1
  267. package/dist/lib/types/scroll-area/corner/ScrollAreaCorner.d.ts +1 -1
  268. package/dist/lib/types/scroll-area/root/ScrollAreaRoot.d.ts +1 -1
  269. package/dist/lib/types/scroll-area/scrollbar/ScrollAreaScrollbar.d.ts +2 -1
  270. package/dist/lib/types/scroll-area/thumb/ScrollAreaThumb.d.ts +1 -1
  271. package/dist/lib/types/scroll-area/viewport/ScrollAreaViewport.d.ts +1 -1
  272. package/dist/lib/types/separator/Separator.d.ts +1 -1
  273. package/dist/lib/types/slider/track/SliderTrack.d.ts +2 -2
  274. package/dist/lib/types/tabs/indicator/prehydrationScript.d.ts +1 -1
  275. package/dist/lib/types/tabs/list/TabsList.d.ts +1 -1
  276. package/dist/lib/types/tabs/panel/TabsPanel.d.ts +1 -1
  277. package/dist/lib/types/tabs/root/TabsRoot.d.ts +1 -1
  278. package/dist/lib/types/tabs/tab/TabsTab.d.ts +1 -1
  279. package/dist/lib/types/toast/createToastManager.d.ts +2 -2
  280. package/dist/lib/types/toast/store/ToastStore.d.ts +1 -1
  281. package/dist/lib/types/toast/useToastManager.d.ts +1 -1
  282. package/dist/lib/types/toggle/Toggle.d.ts +1 -1
  283. package/dist/lib/types/toggle-group/ToggleGroup.d.ts +1 -1
  284. package/dist/lib/types/toolbar/group/ToolbarGroup.d.ts +1 -1
  285. package/dist/lib/types/toolbar/link/ToolbarLink.d.ts +10 -3
  286. package/dist/lib/types/toolbar/root/ToolbarRoot.d.ts +10 -4
  287. package/dist/lib/types/toolbar/separator/ToolbarSeparator.d.ts +1 -1
  288. package/dist/lib/types/tooltip/arrow/TooltipArrow.d.ts +1 -1
  289. package/dist/lib/types/tooltip/positioner/TooltipPositioner.d.ts +1 -1
  290. package/dist/lib/types/types/index.d.ts +7 -3
  291. package/dist/lib/types/use-render/index.d.ts +2 -0
  292. package/dist/lib/types/use-render/useRender.d.ts +10 -0
  293. package/package.json +24 -11
  294. package/dist/lib/client/DialogHandle-DrN2YWCv.js +0 -518
  295. package/dist/lib/client/DialogPopup-ZlqmGfdk.js +0 -136
  296. package/dist/lib/client/FieldControl-Bc-z2og6.js +0 -116
  297. package/dist/lib/client/MenuSubmenuTrigger-QZkQ0F2v.js +0 -1570
  298. package/dist/lib/client/PopupViewport-DgrIqQea.js +0 -152
  299. package/dist/lib/client/Separator-9DboD_Si.js +0 -25
  300. package/dist/lib/client/TriggerFocusGuards-CQ-JuASy.js +0 -56
  301. package/dist/lib/client/accordion-sOXt9AlG.js +0 -399
  302. package/dist/lib/client/avatar-AF9vyD4q.js +0 -146
  303. package/dist/lib/client/button-DpUi-2g8.js +0 -82
  304. package/dist/lib/client/checkbox-BbAwOptH.js +0 -441
  305. package/dist/lib/client/checkbox-group-CSSp_805.js +0 -128
  306. package/dist/lib/client/collapsible-BIbje_ub.js +0 -232
  307. package/dist/lib/client/combobox-8O-vgTLL.js +0 -352
  308. package/dist/lib/client/compositeNavigation-sxniYTc7.js +0 -58
  309. package/dist/lib/client/context-menu-BTMkXtrs.js +0 -217
  310. package/dist/lib/client/createFocusInteraction-D4w1-235.js +0 -50
  311. package/dist/lib/client/drawer-Ce2cChLt.js +0 -1550
  312. package/dist/lib/client/field-C-o7jzKW.js +0 -469
  313. package/dist/lib/client/fieldset-BQTAWv2L.js +0 -65
  314. package/dist/lib/client/form-BINBiW5L.js +0 -106
  315. package/dist/lib/client/menu-DeMT08oD.js +0 -326
  316. package/dist/lib/client/menubar-C4aomSYv.js +0 -185
  317. package/dist/lib/client/meter-xSU37Q0m.js +0 -171
  318. package/dist/lib/client/navigation-menu-ZILQmdn6.js +0 -1083
  319. package/dist/lib/client/number-field-B8CsTb_8.js +0 -1035
  320. package/dist/lib/client/otp-field-DBkMcnog.js +0 -582
  321. package/dist/lib/client/popover-CQwyp-fs.js +0 -929
  322. package/dist/lib/client/popupStateMapping-C9eZl19i.js +0 -367
  323. package/dist/lib/client/preview-card-D_2Q8lpC.js +0 -625
  324. package/dist/lib/client/progress-D7r0xAC9.js +0 -188
  325. package/dist/lib/client/radio-CzGQ81z1.js +0 -299
  326. package/dist/lib/client/radio-group-DpHlBKA6.js +0 -193
  327. package/dist/lib/client/runOnceAnimationsFinish-15EM-Z4l.js +0 -48
  328. package/dist/lib/client/scroll-area-CffM4U0R.js +0 -701
  329. package/dist/lib/client/select-IFhiEg73.js +0 -1940
  330. package/dist/lib/client/slider-BCagYmGp.js +0 -921
  331. package/dist/lib/client/switch-RIJeDnvS.js +0 -308
  332. package/dist/lib/client/tabs-fOAKs7r3.js +0 -696
  333. package/dist/lib/client/toast-D2P8UqUs.js +0 -1108
  334. package/dist/lib/client/toggle-group-0Aue0owJ.js +0 -129
  335. package/dist/lib/client/toggle-momVEIBL.js +0 -138
  336. package/dist/lib/client/toolbar-Du22aKCv.js +0 -492
  337. package/dist/lib/client/tooltip-CyK61fl1.js +0 -844
  338. package/dist/lib/client/useFilteredItems-DTekHz39.js +0 -2223
  339. package/dist/lib/client/withoutComponentBinding-CcCW7fSc.js +0 -13
  340. package/dist/lib/server/TriggerFocusGuards-sbGwf45f.js +0 -63
  341. package/dist/lib/server/withoutComponentBinding-BHaWr5kU.js +0 -20
  342. package/dist/lib/types/internals/withoutComponentBinding.d.ts +0 -7
@@ -1,14 +1,14 @@
1
1
  import { t as __exportAll } from "../rolldown-runtime-D7D4PA-g.js";
2
+ import { t as useRender } from "../useRender-CryVdCjs.js";
2
3
  import { getStateAttributesProps } from "../internals/getStateAttributesProps.js";
3
4
  import { n as resolveClass, t as resolveStyle } from "../resolveStyle-XCSFDHAL.js";
4
- import { composeEventHandlers } from "../internals/composeEventHandlers.js";
5
+ import { composeEventHandlers, liveEventHandler } from "../internals/composeEventHandlers.js";
5
6
  import { t as setRef } from "../setRef-Bt70sW7c.js";
6
7
  import { n as useDirection } from "../DirectionContext-YORWLF08.js";
7
8
  import { n as useToolbarRootContext, t as ToolbarRootContext } from "../ToolbarRootContext-DD-qe7s8.js";
8
- import { t as withoutComponentBinding } from "../withoutComponentBinding-BHaWr5kU.js";
9
9
  import { n as useToolbarGroupContext, t as ToolbarGroupContext } from "../ToolbarGroupContext-CzdHxijX.js";
10
10
  import { t as ToolbarItemOwnerContext } from "../ToolbarItemOwnerContext-L5dsZ_vS.js";
11
- import { Dynamic, delegateEvents, dynamic, memo, mergeProps } from "@solidjs/web";
11
+ import { delegateEvents, mergeProps, ssrElement } from "@solidjs/web";
12
12
  import { createEffect, createMemo, createSignal, omit, onCleanup, onSettled, untrack } from "solid-js";
13
13
  //#region src/toolbar/root/ToolbarRoot.tsx
14
14
  /** A container for grouping a set of controls into one keyboard navigation scope. */
@@ -22,7 +22,7 @@ function ToolbarRoot(props) {
22
22
  const items = /* @__PURE__ */ new Map();
23
23
  let nextOrder = 0;
24
24
  let itemChangeQueued = false;
25
- const others = omit(allProps, "as", "class", "disabled", "loopFocus", "onFocus", "onFocusIn", "onKeyDown", "orientation", "ref", "style");
25
+ const others = omit(allProps, "render", "class", "disabled", "loopFocus", "onFocus", "onFocusIn", "onKeyDown", "orientation", "ref", "style");
26
26
  const disabled = createMemo(() => internalProps.disabled ?? false);
27
27
  const orientation = createMemo(() => internalProps.orientation ?? "horizontal");
28
28
  const state = createMemo(() => ({
@@ -118,8 +118,8 @@ function ToolbarRoot(props) {
118
118
  scrollItemIntoView(rootElement(), nextItem.element(), direction(), orientation());
119
119
  queueMicrotask(() => nextItem.element()?.focus());
120
120
  }
121
- const onFocusIn = composeEventHandlers(() => internalProps.onFocusIn, () => handleFocus);
122
- const onKeyDown = composeEventHandlers(() => internalProps.onKeyDown, () => handleKeyDown);
121
+ const onFocusIn = composeEventHandlers(liveEventHandler(() => internalProps.onFocusIn), handleFocus);
122
+ const onKeyDown = composeEventHandlers(liveEventHandler(() => internalProps.onKeyDown), handleKeyDown);
123
123
  function onRootKeyDown(event) {
124
124
  Reflect.deleteProperty(event, "baseUIHandlerPrevented");
125
125
  Reflect.apply(onKeyDown, event.currentTarget, [event]);
@@ -149,13 +149,11 @@ function ToolbarRoot(props) {
149
149
  });
150
150
  return () => observer.disconnect();
151
151
  });
152
+ const Render = useRender(props, () => state(), (props) => ssrElement("div", props, void 0, true));
152
153
  return ToolbarRootContext({
153
154
  value: context,
154
155
  get children() {
155
- return Dynamic(mergeProps({
156
- get component() {
157
- return withoutComponentBinding(props.as ?? "div");
158
- },
156
+ return Render(mergeProps({
159
157
  ref: [((element) => setRootElement(element)), internalProps.ref],
160
158
  get ["class"]() {
161
159
  return classValue();
@@ -256,7 +254,7 @@ function getScrollStyles(element) {
256
254
  function ToolbarGroup(props) {
257
255
  const root = useToolbarRootContext();
258
256
  const internalProps = props;
259
- const others = omit(props, "as", "class", "disabled", "ref", "style");
257
+ const others = omit(props, "render", "class", "disabled", "ref", "style");
260
258
  const disabled = createMemo(() => root.disabled() || (internalProps.disabled ?? false));
261
259
  const state = createMemo(() => ({
262
260
  disabled: disabled(),
@@ -265,13 +263,12 @@ function ToolbarGroup(props) {
265
263
  const classValue = createMemo(() => resolveClass(props.class, state()));
266
264
  const styleValue = createMemo(() => resolveStyle(props.style, state()));
267
265
  const stateAttributes = createMemo(() => getStateAttributesProps(state()));
266
+ const context = { disabled };
267
+ const Render = useRender(props, () => state(), (props) => ssrElement("div", props, void 0, true));
268
268
  return ToolbarGroupContext({
269
- value: { disabled },
269
+ value: context,
270
270
  get children() {
271
- return Dynamic(mergeProps({
272
- get component() {
273
- return withoutComponentBinding(props.as ?? "div");
274
- },
271
+ return Render(mergeProps({
275
272
  ref: [internalProps.ref],
276
273
  get ["class"]() {
277
274
  return classValue();
@@ -291,7 +288,6 @@ function installOwnedEventHandlers(element, handlers) {
291
288
  const blockedEvents = /* @__PURE__ */ new WeakSet();
292
289
  const nativeHandlers = [];
293
290
  const restoreDelegatedHandlers = [];
294
- let active = true;
295
291
  for (const [name, handler] of handlers) {
296
292
  const nativeHandler = (event) => {
297
293
  handledEvents.add(event);
@@ -301,51 +297,47 @@ function installOwnedEventHandlers(element, handlers) {
301
297
  element.addEventListener(name, nativeHandler);
302
298
  nativeHandlers.push([name, nativeHandler]);
303
299
  }
304
- queueMicrotask(() => {
305
- if (!active) return;
306
- for (const [name, handler] of handlers) {
307
- const handlerKey = `$$${name}`;
308
- const dataKey = `${handlerKey}Data`;
309
- const delegatedElement = element;
310
- let childHandler = delegatedElement[handlerKey];
311
- let childData = delegatedElement[dataKey];
312
- const bridgedHandler = (event) => {
313
- if (!handledEvents.has(event)) {
314
- handledEvents.add(event);
315
- Reflect.apply(handler, element, [event]);
316
- if (event.baseUIHandlerPrevented) blockedEvents.add(event);
317
- }
318
- if (blockedEvents.has(event) || typeof childHandler !== "function") return;
319
- if (childData === void 0) Reflect.apply(childHandler, element, [event]);
320
- else Reflect.apply(childHandler, element, [childData, event]);
321
- };
322
- Object.defineProperty(delegatedElement, handlerKey, {
323
- configurable: true,
324
- enumerable: true,
325
- get: () => bridgedHandler,
326
- set: (value) => {
327
- childHandler = value;
328
- }
329
- });
330
- Object.defineProperty(delegatedElement, dataKey, {
331
- configurable: true,
332
- enumerable: true,
333
- get: () => void 0,
334
- set: (value) => {
335
- childData = value;
336
- }
337
- });
338
- restoreDelegatedHandlers.push(() => {
339
- Reflect.deleteProperty(delegatedElement, handlerKey);
340
- Reflect.deleteProperty(delegatedElement, dataKey);
341
- delegatedElement[handlerKey] = childHandler;
342
- delegatedElement[dataKey] = childData;
343
- });
344
- }
345
- delegateEvents(handlers.map(([name]) => name));
346
- });
300
+ for (const [name, handler] of handlers) {
301
+ const handlerKey = `$$${name}`;
302
+ const dataKey = `${handlerKey}Data`;
303
+ const delegatedElement = element;
304
+ let childHandler = delegatedElement[handlerKey];
305
+ let childData = delegatedElement[dataKey];
306
+ const bridgedHandler = (event) => {
307
+ if (!handledEvents.has(event)) {
308
+ handledEvents.add(event);
309
+ Reflect.apply(handler, element, [event]);
310
+ if (event.baseUIHandlerPrevented) blockedEvents.add(event);
311
+ }
312
+ if (blockedEvents.has(event) || typeof childHandler !== "function") return;
313
+ if (childData === void 0) Reflect.apply(childHandler, element, [event]);
314
+ else Reflect.apply(childHandler, element, [childData, event]);
315
+ };
316
+ Object.defineProperty(delegatedElement, handlerKey, {
317
+ configurable: true,
318
+ enumerable: true,
319
+ get: () => bridgedHandler,
320
+ set: (value) => {
321
+ childHandler = value;
322
+ }
323
+ });
324
+ Object.defineProperty(delegatedElement, dataKey, {
325
+ configurable: true,
326
+ enumerable: true,
327
+ get: () => void 0,
328
+ set: (value) => {
329
+ childData = value;
330
+ }
331
+ });
332
+ restoreDelegatedHandlers.push(() => {
333
+ Reflect.deleteProperty(delegatedElement, handlerKey);
334
+ Reflect.deleteProperty(delegatedElement, dataKey);
335
+ delegatedElement[handlerKey] = childHandler;
336
+ delegatedElement[dataKey] = childData;
337
+ });
338
+ }
339
+ delegateEvents(handlers.map(([name]) => name));
347
340
  return () => {
348
- active = false;
349
341
  for (const [name, handler] of nativeHandlers) element.removeEventListener(name, handler);
350
342
  for (const restore of restoreDelegatedHandlers) restore();
351
343
  };
@@ -383,7 +375,6 @@ function createToolbarItem(metadata) {
383
375
  function ToolbarButton(props) {
384
376
  const root = useToolbarRootContext();
385
377
  const group = useToolbarGroupContext();
386
- const Component = dynamic(() => withoutComponentBinding(props.as ?? "button"));
387
378
  const internalProps = props;
388
379
  const allProps = props;
389
380
  const [childDisabled, setChildDisabled] = createSignal(false);
@@ -395,7 +386,7 @@ function ToolbarButton(props) {
395
386
  disabled,
396
387
  focusableWhenDisabled
397
388
  });
398
- const others = omit(allProps, "as", "class", "disabled", "focusableWhenDisabled", "nativeButton", "onClick", "onFocus", "onKeyDown", "onKeyUp", "onMouseDown", "onPointerDown", "ref", "style");
389
+ const others = omit(allProps, "render", "class", "disabled", "focusableWhenDisabled", "nativeButton", "onClick", "onFocus", "onKeyDown", "onKeyUp", "onMouseDown", "onPointerDown", "ref", "style");
399
390
  const state = createMemo(() => ({
400
391
  disabled: disabled(),
401
392
  focusable: focusableWhenDisabled(),
@@ -424,7 +415,7 @@ function ToolbarButton(props) {
424
415
  if (isSpace) {
425
416
  if (event.defaultPrevented && textNavigationRole) return;
426
417
  event.preventDefault();
427
- if (!nativeButton() || isButton || typeof props.as === "function") {
418
+ if (!nativeButton() || isButton) {
428
419
  event.preventBaseUIHandler();
429
420
  dispatchClickWithModifiers(event.currentTarget, event);
430
421
  }
@@ -437,17 +428,17 @@ function ToolbarButton(props) {
437
428
  }
438
429
  }
439
430
  function handleKeyUp(event) {
440
- if (event.target === event.currentTarget && event.key === " " && (!nativeButton() || event.currentTarget.tagName === "BUTTON" || typeof props.as === "function")) {
431
+ if (event.target === event.currentTarget && event.key === " " && (!nativeButton() || event.currentTarget.tagName === "BUTTON")) {
441
432
  event.preventDefault();
442
433
  event.preventBaseUIHandler();
443
434
  }
444
435
  }
445
- const onClick = composeEventHandlers(() => untrack(() => disabled() ? preventInteraction : void 0), () => internalProps.onClick);
446
- const onFocus = composeEventHandlers(() => internalProps.onFocus, () => handleFocus);
447
- const onKeyDown = composeEventHandlers(() => untrack(() => disabled() ? preventDisabledKeyDefault : void 0), () => untrack(() => disabled() ? void 0 : internalProps.onKeyDown), () => untrack(() => disabled() ? void 0 : handleKeyDown));
448
- const onKeyUp = composeEventHandlers(() => untrack(() => disabled() ? stopInteraction : void 0), () => untrack(() => disabled() ? void 0 : internalProps.onKeyUp), () => untrack(() => disabled() ? void 0 : handleKeyUp));
449
- const onMouseDown = composeEventHandlers(() => untrack(() => disabled() ? stopInteraction : void 0), () => untrack(() => disabled() ? void 0 : internalProps.onMouseDown));
450
- const onPointerDown = composeEventHandlers(() => untrack(() => disabled() ? preventInteraction : void 0), () => internalProps.onPointerDown);
436
+ const onClick = composeEventHandlers(liveEventHandler(() => untrack(() => disabled() ? preventInteraction : void 0)), liveEventHandler(() => internalProps.onClick));
437
+ const onFocus = composeEventHandlers(liveEventHandler(() => internalProps.onFocus), handleFocus);
438
+ const onKeyDown = composeEventHandlers(liveEventHandler(() => untrack(() => disabled() ? preventDisabledKeyDefault : void 0)), liveEventHandler(() => untrack(() => disabled() ? void 0 : internalProps.onKeyDown)), liveEventHandler(() => untrack(() => disabled() ? void 0 : handleKeyDown)));
439
+ const onKeyUp = composeEventHandlers(liveEventHandler(() => untrack(() => disabled() ? stopInteraction : void 0)), liveEventHandler(() => untrack(() => disabled() ? void 0 : internalProps.onKeyUp)), liveEventHandler(() => untrack(() => disabled() ? void 0 : handleKeyUp)));
440
+ const onMouseDown = composeEventHandlers(liveEventHandler(() => untrack(() => disabled() ? stopInteraction : void 0)), liveEventHandler(() => untrack(() => disabled() ? void 0 : internalProps.onMouseDown)));
441
+ const onPointerDown = composeEventHandlers(liveEventHandler(() => untrack(() => disabled() ? preventInteraction : void 0)), liveEventHandler(() => internalProps.onPointerDown));
451
442
  onSettled(() => {
452
443
  item.element();
453
444
  });
@@ -472,6 +463,7 @@ function ToolbarButton(props) {
472
463
  if (current.disabled && current.focusableWhenDisabled && current.element) current.element.removeAttribute("disabled");
473
464
  });
474
465
  onCleanup(() => removeOwnedListeners?.());
466
+ const Render = useRender(props, () => state(), (props) => ssrElement("button", props, void 0, true));
475
467
  return ToolbarItemOwnerContext({
476
468
  value: {
477
469
  disabled,
@@ -479,7 +471,7 @@ function ToolbarButton(props) {
479
471
  setChildDisabled
480
472
  },
481
473
  get children() {
482
- return Component(mergeProps({
474
+ return Render(mergeProps({
483
475
  ref: (element) => {
484
476
  setElement(element);
485
477
  },
@@ -499,9 +491,7 @@ function ToolbarButton(props) {
499
491
  return item.tabIndex();
500
492
  },
501
493
  get disabled() {
502
- return memo(() => {
503
- return typeof props.as === "function";
504
- })() ? disabled() : disabledAttribute();
494
+ return disabledAttribute();
505
495
  },
506
496
  get ["aria-disabled"]() {
507
497
  return ariaDisabled();
@@ -550,16 +540,13 @@ function ToolbarLink(props) {
550
540
  disabled: FALSE,
551
541
  focusableWhenDisabled: TRUE
552
542
  });
553
- const others = omit(allProps, "as", "class", "onFocus", "ref", "style");
543
+ const others = omit(allProps, "render", "class", "onFocus", "ref", "style");
554
544
  const state = createMemo(() => ({ orientation: root.orientation() }));
555
545
  const classValue = createMemo(() => resolveClass(props.class, state()));
556
546
  const styleValue = createMemo(() => resolveStyle(props.style, state()));
557
547
  const stateAttributes = createMemo(() => getStateAttributesProps(state()));
558
- const onFocus = composeEventHandlers(() => internalProps.onFocus, () => () => item.root.setActiveItem(item.registration));
559
- return Dynamic(mergeProps({
560
- get component() {
561
- return withoutComponentBinding(props.as ?? "a");
562
- },
548
+ const onFocus = composeEventHandlers(liveEventHandler(() => internalProps.onFocus), () => item.root.setActiveItem(item.registration));
549
+ return useRender(props, () => state(), (props) => ssrElement("a", props, void 0, true))(mergeProps({
563
550
  ref: (element) => {
564
551
  item.setElement(element);
565
552
  setRef(internalProps.ref, element);
@@ -582,7 +569,6 @@ function ToolbarLink(props) {
582
569
  function ToolbarInput(props) {
583
570
  const root = useToolbarRootContext();
584
571
  const group = useToolbarGroupContext();
585
- const Component = dynamic(() => withoutComponentBinding(props.as ?? "input"));
586
572
  const internalProps = props;
587
573
  const allProps = props;
588
574
  const disabled = createMemo(() => root.disabled() || (group?.disabled() ?? false) || (internalProps.disabled ?? false));
@@ -591,7 +577,7 @@ function ToolbarInput(props) {
591
577
  disabled,
592
578
  focusableWhenDisabled
593
579
  });
594
- const others = omit(allProps, "as", "class", "disabled", "focusableWhenDisabled", "onClick", "onFocus", "onKeyDown", "onPointerDown", "ref", "style");
580
+ const others = omit(allProps, "render", "class", "disabled", "focusableWhenDisabled", "onClick", "onFocus", "onKeyDown", "onPointerDown", "ref", "style");
595
581
  const state = createMemo(() => ({
596
582
  disabled: disabled(),
597
583
  focusable: focusableWhenDisabled(),
@@ -604,10 +590,10 @@ function ToolbarInput(props) {
604
590
  function handleFocus() {
605
591
  item.root.setActiveItem(item.registration);
606
592
  }
607
- const onClick = composeEventHandlers(() => internalProps.onClick, () => untrack(() => disabled() ? preventDefault : void 0));
608
- const onFocus = composeEventHandlers(() => internalProps.onFocus, () => handleFocus);
609
- const onKeyDown = composeEventHandlers(() => untrack(() => disabled() ? preventNonTabDefault : void 0), () => internalProps.onKeyDown);
610
- const onPointerDown = composeEventHandlers(() => internalProps.onPointerDown, () => untrack(() => disabled() ? preventDefault : void 0));
593
+ const onClick = composeEventHandlers(liveEventHandler(() => internalProps.onClick), liveEventHandler(() => untrack(() => disabled() ? preventDefault : void 0)));
594
+ const onFocus = composeEventHandlers(liveEventHandler(() => internalProps.onFocus), handleFocus);
595
+ const onKeyDown = composeEventHandlers(liveEventHandler(() => untrack(() => disabled() ? preventNonTabDefault : void 0)), liveEventHandler(() => internalProps.onKeyDown));
596
+ const onPointerDown = composeEventHandlers(liveEventHandler(() => internalProps.onPointerDown), liveEventHandler(() => untrack(() => disabled() ? preventDefault : void 0)));
611
597
  function setElement(element) {
612
598
  removeOwnedListeners?.();
613
599
  item.setElement(element);
@@ -620,7 +606,7 @@ function ToolbarInput(props) {
620
606
  setRef(internalProps.ref, element);
621
607
  }
622
608
  onCleanup(() => removeOwnedListeners?.());
623
- return Component(mergeProps({
609
+ return useRender(props, () => state(), (props) => ssrElement("input", props, void 0, true))(mergeProps({
624
610
  ref: (element) => {
625
611
  setElement(element);
626
612
  },
@@ -649,16 +635,13 @@ function preventNonTabDefault(event) {
649
635
  /** A separator that defaults to the opposite orientation of its toolbar. */
650
636
  function ToolbarSeparator(props) {
651
637
  const root = useToolbarRootContext();
652
- const others = omit(props, "as", "class", "orientation", "style");
638
+ const others = omit(props, "render", "class", "orientation", "style");
653
639
  const orientation = createMemo(() => props.orientation ?? (root.orientation() === "vertical" ? "horizontal" : "vertical"));
654
640
  const state = createMemo(() => ({ orientation: orientation() }));
655
641
  const classValue = createMemo(() => resolveClass(props.class, state()));
656
642
  const styleValue = createMemo(() => resolveStyle(props.style, state()));
657
643
  const stateAttributes = createMemo(() => getStateAttributesProps(state()));
658
- return Dynamic(mergeProps({
659
- get component() {
660
- return withoutComponentBinding(props.as ?? "div");
661
- },
644
+ return useRender(props, () => state(), (props) => ssrElement("div", props, void 0, true))(mergeProps({
662
645
  get ["class"]() {
663
646
  return classValue();
664
647
  },
@@ -1,22 +1,23 @@
1
1
  import { t as __exportAll } from "../rolldown-runtime-D7D4PA-g.js";
2
+ import { t as useRender } from "../useRender-CryVdCjs.js";
2
3
  import { getStateAttributesProps } from "../internals/getStateAttributesProps.js";
3
4
  import { M as triggerHover, N as triggerPress, d as imperativeAction, s as disabled, w as none } from "../internals/reasons.js";
4
5
  import { n as resolveClass, t as resolveStyle } from "../resolveStyle-XCSFDHAL.js";
5
6
  import { createChangeEventDetails } from "../internals/createBaseUIEventDetails.js";
6
7
  import { transitionStatusMapping } from "../internals/stateAttributesMapping.js";
7
- import { composeEventHandlers } from "../internals/composeEventHandlers.js";
8
- import { a as isElement, m as ownerWindow, n as contains, r as getEventTarget } from "../dom-Crg_2R-j.js";
9
- import { t as PopupViewport } from "../PopupViewport-3r_KTFwX.js";
10
- import { t as createAnchorPositioning } from "../createAnchorPositioning-C-cVOPwz.js";
8
+ import { composeEventHandlers, liveEventHandler } from "../internals/composeEventHandlers.js";
9
+ import { h as ownerWindow, i as getEventTarget, n as contains, o as isElement } from "../dom-D8_aB1yy.js";
10
+ import { t as PopupViewport } from "../PopupViewport-BDttjORN.js";
11
+ import { t as createAnchorPositioning } from "../createAnchorPositioning-DrQYe7RS.js";
11
12
  import { c as useFloatingTree, i as createFloatingNode, n as FloatingTreeContext, r as FloatingTreeStore, s as useFloatingParentNodeId, t as FloatingParentNodeContext } from "../FloatingTree-z1JPD1dR.js";
12
- import { a as createPopupPresence, n as createTriggerRegistration, o as createDismiss, t as PopupStore } from "../PopupStore-DEs3FAEe.js";
13
- import { t as createFocusInteraction } from "../createFocusInteraction-EIS0QOel.js";
14
- import { n as createInitialPositioning, r as createHoverInteraction, t as safePolygon } from "../safePolygon-CAm5RJGv.js";
15
- import { a as triggerOpenStateMapping, o as PopupPortal } from "../popupStateMapping-nKoUwoke.js";
16
- import { i as createPopupHandleStore, n as DetachedPopupStore, r as attachPopupHandle, t as BasePopupHandle } from "../PopupHandle-DthPgNjy.js";
13
+ import { a as createPopupPresence, n as createTriggerRegistration, o as createDismiss, t as PopupStore } from "../PopupStore-evylvVnN.js";
14
+ import { t as createFocusInteraction } from "../createFocusInteraction-DFKr4G7a.js";
15
+ import { n as createInitialPositioning, r as createHoverInteraction, t as safePolygon } from "../safePolygon-B8QtiIZ3.js";
16
+ import { a as triggerOpenStateMapping, o as PopupPortal } from "../popupStateMapping-VHqr6M4H.js";
17
+ import { i as createPopupHandleStore, n as DetachedPopupStore, r as attachPopupHandle, t as BasePopupHandle } from "../PopupHandle-QNj4mED2.js";
17
18
  import { t as setRef } from "../setRef-Bt70sW7c.js";
18
19
  import { n as useDirection } from "../DirectionContext-YORWLF08.js";
19
- import { Dynamic, escape, memo, mergeProps } from "@solidjs/web";
20
+ import { escape, memo, mergeProps, ssrElement } from "@solidjs/web";
20
21
  import { $REFRESH, Show, createContext, createEffect, createMemo, createRoot, createSignal, createUniqueId, omit, onCleanup, untrack, useContext } from "solid-js";
21
22
  //#region src/internals/overlay/createClientPoint.ts
22
23
  function createClientPoint(options) {
@@ -50,7 +51,7 @@ function createClientPoint(options) {
50
51
  else if (suspended) return;
51
52
  x = event.clientX;
52
53
  y = event.clientY;
53
- const reference = options.context.state.domReferenceElement;
54
+ const reference = directReferenceEvent && isElement(event.currentTarget) ? event.currentTarget : options.context.state.domReferenceElement;
54
55
  if (!reference) return;
55
56
  const virtual = {
56
57
  contextElement: reference,
@@ -85,11 +86,11 @@ function createClientPoint(options) {
85
86
  }), (state) => {
86
87
  removeWindowListener?.();
87
88
  removeWindowListener = void 0;
88
- if (!state.enabled || state.axis === "none" || !state.reference) {
89
+ if (!state.enabled || state.axis === "none") {
89
90
  resetReference();
90
91
  return;
91
92
  }
92
- if (!state.open) return;
93
+ if (!state.open || !state.reference) return;
93
94
  if (!state.openEvent || ![
94
95
  "mouseenter",
95
96
  "mousemove",
@@ -436,9 +437,12 @@ function TooltipRoot(props) {
436
437
  if (provider) {
437
438
  let groupActive = true;
438
439
  const closeForDelayGroup = () => {
439
- if (!store.open()) return;
440
+ if (!store.open() && !presence.mounted()) return;
440
441
  queueMicrotask(() => {
441
- if (groupActive && provider.group.currentId() !== delayGroupId && store.open()) store.setOpen(false, createChangeEventDetails(none));
442
+ if (groupActive && provider.group.currentId() !== delayGroupId) {
443
+ if (store.open()) store.setOpen(false, createChangeEventDetails(none));
444
+ else if (presence.mounted() && !store.state.preventUnmountingOnClose) presence.forceUnmount();
445
+ }
442
446
  });
443
447
  };
444
448
  const unsubscribe = provider.group.subscribe(delayGroupId, closeForDelayGroup, (instant) => store.setInstantPhase(instant));
@@ -529,10 +533,11 @@ function TooltipTrigger(props) {
529
533
  const interactionDisabled = createMemo(() => store().disabled() || (internalProps.disabled ?? false));
530
534
  const open = createMemo(() => store().open() && store().activeTriggerId() === id());
531
535
  const state = createMemo(() => ({ open: open() }));
536
+ const Render = useRender(props, () => state(), (props) => ssrElement("button", props, void 0, true));
532
537
  const classValue = createMemo(() => resolveClass(props.class, state()));
533
538
  const styleValue = createMemo(() => resolveStyle(props.style, state()));
534
539
  const stateAttributes = createMemo(() => getStateAttributesProps(state(), triggerOpenStateMapping));
535
- const others = omit(allProps, "as", "class", "closeDelay", "closeOnClick", "delay", "disabled", "handle", "id", "onBlur", "onClick", "onFocus", "onKeyDown", "onMouseLeave", "onMouseMove", "onMouseOver", "onPointerDown", "onPointerEnter", "payload", "ref", "style");
540
+ const others = omit(allProps, "render", "class", "closeDelay", "closeOnClick", "delay", "disabled", "handle", "id", "onBlur", "onClick", "onFocus", "onKeyDown", "onMouseLeave", "onMouseMove", "onMouseOver", "onPointerDown", "onPointerEnter", "payload", "ref", "style");
536
541
  let focusHandlers;
537
542
  let hoverControls;
538
543
  let nestedTriggerHovered = false;
@@ -560,7 +565,7 @@ function TooltipTrigger(props) {
560
565
  });
561
566
  function getOpenDelay() {
562
567
  if (!provider) return internalProps.delay ?? OPEN_DELAY;
563
- if (provider.group.delay().open === 0) return 0;
568
+ if (provider.group.currentId() !== null) return 0;
564
569
  return internalProps.delay ?? provider.delay() ?? OPEN_DELAY;
565
570
  }
566
571
  function getCloseDelay() {
@@ -612,7 +617,8 @@ function TooltipTrigger(props) {
612
617
  }
613
618
  function handleNestedTriggerHover(event) {
614
619
  const wasNested = nestedTriggerHovered;
615
- const target = getEventTarget(event);
620
+ const eventTarget = getEventTarget(event);
621
+ const target = isElement(eventTarget) ? eventTarget : event.target;
616
622
  nestedTriggerHovered = isElement(target) && isEnabledNestedTriggerTarget(target);
617
623
  if (nestedTriggerHovered) {
618
624
  hoverControls?.cancelPendingOpen();
@@ -641,6 +647,7 @@ function TooltipTrigger(props) {
641
647
  function handleTriggerPress(event) {
642
648
  const current = store();
643
649
  if (!(internalProps.closeOnClick ?? true)) return;
650
+ clearTimeout(nestedOpenTimer);
644
651
  if (current.open()) current.setOpen(false, createChangeEventDetails(triggerPress, event, element() ?? void 0));
645
652
  else {
646
653
  current.cancelPendingOpen(event);
@@ -666,25 +673,22 @@ function TooltipTrigger(props) {
666
673
  function getRootMouseMoveHandler() {
667
674
  return getRootHandler("onMouseMove");
668
675
  }
669
- const onBlur = composeEventHandlers(() => internalProps.onBlur, () => (event) => focusHandlers?.onBlur(event));
670
- const onClick = composeEventHandlers(() => internalProps.onClick, () => handleTriggerPress);
671
- const onFocus = composeEventHandlers(() => internalProps.onFocus, () => handleFocus);
672
- const onKeyDown = composeEventHandlers(() => internalProps.onKeyDown, getRootKeyDownHandler);
673
- const onMouseLeave = composeEventHandlers(() => internalProps.onMouseLeave, () => () => {
676
+ const onBlur = composeEventHandlers(liveEventHandler(() => internalProps.onBlur), (event) => focusHandlers?.onBlur(event));
677
+ const onClick = composeEventHandlers(liveEventHandler(() => internalProps.onClick), handleTriggerPress);
678
+ const onFocus = composeEventHandlers(liveEventHandler(() => internalProps.onFocus), handleFocus);
679
+ const onKeyDown = composeEventHandlers(liveEventHandler(() => internalProps.onKeyDown), liveEventHandler(getRootKeyDownHandler));
680
+ const onMouseLeave = composeEventHandlers(liveEventHandler(() => internalProps.onMouseLeave), () => {
674
681
  nestedTriggerHovered = false;
675
682
  pointerType = "";
676
683
  clearTimeout(nestedOpenTimer);
677
684
  focusHandlers?.onPointerLeave();
678
685
  });
679
- const onMouseMove = composeEventHandlers(() => internalProps.onMouseMove, getRootMouseMoveHandler);
680
- const onMouseOver = composeEventHandlers(() => internalProps.onMouseOver, () => handleNestedTriggerHover);
681
- const onPointerDown = composeEventHandlers(() => internalProps.onPointerDown, () => handlePointerDown);
682
- const onPointerEnter = composeEventHandlers(() => internalProps.onPointerEnter, () => handlePointerEnter);
686
+ const onMouseMove = composeEventHandlers(liveEventHandler(() => internalProps.onMouseMove), liveEventHandler(getRootMouseMoveHandler));
687
+ const onMouseOver = composeEventHandlers(liveEventHandler(() => internalProps.onMouseOver), handleNestedTriggerHover);
688
+ const onPointerDown = composeEventHandlers(liveEventHandler(() => internalProps.onPointerDown), handlePointerDown);
689
+ const onPointerEnter = composeEventHandlers(liveEventHandler(() => internalProps.onPointerEnter), handlePointerEnter);
683
690
  onCleanup(() => clearTimeout(nestedOpenTimer));
684
- return Dynamic(mergeProps({
685
- get component() {
686
- return props.as ?? "button";
687
- },
691
+ return Render(mergeProps({
688
692
  ref: [((value) => setElement(value)), internalProps.ref],
689
693
  get id() {
690
694
  return id();
@@ -747,7 +751,7 @@ function TooltipPortal(props) {
747
751
  const state = {};
748
752
  const classValue = createMemo(() => resolveClass(props.class, state));
749
753
  const styleValue = createMemo(() => resolveStyle(props.style, state));
750
- const others = omit(allProps, "as", "class", "container", "keepMounted", "ref", "style");
754
+ const others = omit(allProps, "render", "class", "container", "keepMounted", "ref", "style");
751
755
  const portalContext = { keepMounted };
752
756
  return Show({
753
757
  get when() {
@@ -758,8 +762,8 @@ function TooltipPortal(props) {
758
762
  value: portalContext,
759
763
  get children() {
760
764
  return PopupPortal(mergeProps({
761
- get as() {
762
- return props.as;
765
+ get render() {
766
+ return props.render;
763
767
  },
764
768
  lite: true,
765
769
  get container() {
@@ -840,8 +844,8 @@ function useTooltipPositionerContext() {
840
844
  //#region src/tooltip/positioner/TooltipPositioner.tsx
841
845
  /** Positions the tooltip against its active trigger. */
842
846
  function TooltipPositioner(props) {
843
- useTooltipPortalContext();
844
847
  const context = useTooltipRootContext();
848
+ useTooltipPortalContext();
845
849
  const direction = useDirection();
846
850
  const internalProps = props;
847
851
  const allProps = props;
@@ -872,13 +876,14 @@ function TooltipPositioner(props) {
872
876
  anchorHidden: positioning.anchorHidden(),
873
877
  instant: context.store.trackCursorAxis() !== "none" ? "tracking-cursor" : context.store.track().instantType ?? (initialPositioning() ? "initial" : void 0)
874
878
  }));
879
+ const Render = useRender(props, () => state(), (props) => ssrElement("div", props, void 0, true));
875
880
  const classValue = createMemo(() => resolveClass(props.class, state()));
876
881
  const styleValue = createMemo(() => mergeTooltipStyles({
877
882
  ...positioning.styles(),
878
883
  "pointer-events": !context.store.open() || context.store.trackCursorAxis() === "both" || context.store.disableHoverablePopup() ? "none" : void 0
879
884
  }, resolveStyle(props.style, state())));
880
885
  const stateAttributes = createMemo(() => getStateAttributesProps(state(), tooltipPositionerStateMapping));
881
- const others = omit(allProps, "align", "alignOffset", "anchor", "arrowPadding", "as", "class", "collisionAvoidance", "collisionBoundary", "collisionPadding", "disableAnchorTracking", "positionMethod", "ref", "side", "sideOffset", "sticky", "style");
886
+ const others = omit(allProps, "align", "alignOffset", "anchor", "arrowPadding", "render", "class", "collisionAvoidance", "collisionBoundary", "collisionPadding", "disableAnchorTracking", "positionMethod", "ref", "side", "sideOffset", "sticky", "style");
882
887
  const positionerContext = {
883
888
  side: positioning.renderedSide,
884
889
  align: positioning.renderedAlign,
@@ -896,10 +901,7 @@ function TooltipPositioner(props) {
896
901
  return TooltipPositionerContext({
897
902
  value: positionerContext,
898
903
  get children() {
899
- return Dynamic(mergeProps({
900
- get component() {
901
- return props.as ?? "div";
902
- },
904
+ return Render(mergeProps({
903
905
  ref: [((value) => {
904
906
  setElement(value);
905
907
  context.store.setPositionerElement(value);
@@ -938,22 +940,20 @@ function TooltipPopup(props) {
938
940
  instant: context.store.track().instantType,
939
941
  transitionStatus: context.store.track().transitionStatus
940
942
  }));
943
+ const Render = useRender(props, () => state(), (props) => ssrElement("div", props, void 0, true));
941
944
  const classValue = createMemo(() => resolveClass(props.class, state()));
942
945
  const styleValue = createMemo(() => resolveStyle(props.style, state()));
943
946
  const stateAttributes = createMemo(() => getStateAttributesProps(state(), tooltipPopupStateMapping));
944
- const others = omit(allProps, "as", "class", "onKeyDown", "ref", "style");
945
- const onKeyDown = composeEventHandlers(() => internalProps.onKeyDown, () => {
947
+ const others = omit(allProps, "render", "class", "onKeyDown", "ref", "style");
948
+ const onKeyDown = composeEventHandlers(liveEventHandler(() => internalProps.onKeyDown), liveEventHandler(() => {
946
949
  const handler = context.store.state.popupProps.onKeyDown;
947
950
  return typeof handler === "function" ? handler : void 0;
948
- });
951
+ }));
949
952
  let popupElement = null;
950
953
  onCleanup(() => {
951
954
  if (context.store.state.popupElement === popupElement) context.store.setPopupElement(null);
952
955
  });
953
- return Dynamic(mergeProps({
954
- get component() {
955
- return props.as ?? "div";
956
- },
956
+ return Render(mergeProps({
957
957
  ref: [((element) => {
958
958
  popupElement = element;
959
959
  context.store.setPopupElement(element);
@@ -987,14 +987,12 @@ function TooltipViewport(props) {
987
987
  transitioning: transitioning(),
988
988
  instant: context.store.track().instantType
989
989
  }));
990
+ const Render = useRender(props, () => state(), (props) => ssrElement("div", props, void 0, true));
990
991
  const classValue = createMemo(() => resolveClass(props.class, state()));
991
992
  const styleValue = createMemo(() => resolveStyle(props.style, state()));
992
993
  const stateAttributes = createMemo(() => getStateAttributesProps(state(), tooltipViewportStateMapping));
993
- const others = omit(allProps, "as", "children", "class", "ref", "style");
994
- return Dynamic(mergeProps({
995
- get component() {
996
- return props.as ?? "div";
997
- },
994
+ const others = omit(allProps, "render", "children", "class", "ref", "style");
995
+ return Render(mergeProps({
998
996
  ref: [internalProps.ref],
999
997
  get ["class"]() {
1000
998
  return classValue();
@@ -1035,15 +1033,13 @@ function TooltipArrow(props) {
1035
1033
  uncentered: positioner.arrowUncentered(),
1036
1034
  instant: context.store.track().instantType
1037
1035
  }));
1036
+ const Render = useRender(props, () => state(), (props) => ssrElement("div", props, void 0, true));
1038
1037
  const classValue = createMemo(() => resolveClass(props.class, state()));
1039
1038
  const styleValue = createMemo(() => mergeTooltipStyles(positioner.arrowStyles(), resolveStyle(props.style, state())));
1040
1039
  const stateAttributes = createMemo(() => getStateAttributesProps(state(), tooltipArrowStateMapping));
1041
- const others = omit(allProps, "as", "class", "ref", "style");
1040
+ const others = omit(allProps, "render", "class", "ref", "style");
1042
1041
  onCleanup(() => positioner.setArrowElement(null));
1043
- return Dynamic(mergeProps({
1044
- get component() {
1045
- return props.as ?? "div";
1046
- },
1042
+ return Render(mergeProps({
1047
1043
  ref: [((element) => positioner.setArrowElement(element)), internalProps.ref],
1048
1044
  "aria-hidden": "true",
1049
1045
  get ["class"]() {
@@ -0,0 +1,2 @@
1
+ import { t as useRender } from "../useRender-CryVdCjs.js";
2
+ export { useRender };