@proyecto-viviana/solid-stately 0.5.1 → 0.6.0-rc.1

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 (418) hide show
  1. package/LICENSE-APACHE-2.0 +201 -0
  2. package/NOTICE +91 -0
  3. package/README.md +59 -29
  4. package/dist/autocomplete/createAutocompleteState.d.ts +2 -1
  5. package/dist/autocomplete/createAutocompleteState.d.ts.map +1 -0
  6. package/dist/autocomplete/index.d.ts +1 -0
  7. package/dist/autocomplete/index.d.ts.map +1 -0
  8. package/dist/calendar/IncompleteDate.d.ts +2 -1
  9. package/dist/calendar/IncompleteDate.d.ts.map +1 -0
  10. package/dist/calendar/createCalendarState.d.ts +10 -9
  11. package/dist/calendar/createCalendarState.d.ts.map +1 -0
  12. package/dist/calendar/createDateFieldState.d.ts +4 -20
  13. package/dist/calendar/createDateFieldState.d.ts.map +1 -0
  14. package/dist/calendar/createDatePickerState.d.ts +4 -7
  15. package/dist/calendar/createDatePickerState.d.ts.map +1 -0
  16. package/dist/calendar/createRangeCalendarState.d.ts +9 -7
  17. package/dist/calendar/createRangeCalendarState.d.ts.map +1 -0
  18. package/dist/calendar/createTimeFieldState.d.ts +5 -24
  19. package/dist/calendar/createTimeFieldState.d.ts.map +1 -0
  20. package/dist/calendar/index.d.ts +1 -0
  21. package/dist/calendar/index.d.ts.map +1 -0
  22. package/dist/calendar/intl/index.d.ts +1 -0
  23. package/dist/calendar/intl/index.d.ts.map +1 -0
  24. package/dist/checkbox/createCheckboxGroupState.d.ts +3 -0
  25. package/dist/checkbox/createCheckboxGroupState.d.ts.map +1 -0
  26. package/dist/checkbox/index.d.ts +1 -0
  27. package/dist/checkbox/index.d.ts.map +1 -0
  28. package/dist/collections/ListCollection.d.ts +5 -0
  29. package/dist/collections/ListCollection.d.ts.map +1 -0
  30. package/dist/collections/createListState.d.ts +2 -6
  31. package/dist/collections/createListState.d.ts.map +1 -0
  32. package/dist/collections/createMenuState.d.ts +74 -13
  33. package/dist/collections/createMenuState.d.ts.map +1 -0
  34. package/dist/collections/createSelectionState.d.ts +2 -5
  35. package/dist/collections/createSelectionState.d.ts.map +1 -0
  36. package/dist/collections/getChildNodes.d.ts +6 -3
  37. package/dist/collections/getChildNodes.d.ts.map +1 -0
  38. package/dist/collections/index.d.ts +2 -1
  39. package/dist/collections/index.d.ts.map +1 -0
  40. package/dist/collections/types.d.ts +36 -2
  41. package/dist/collections/types.d.ts.map +1 -0
  42. package/dist/color/Color.d.ts +7 -1
  43. package/dist/color/Color.d.ts.map +1 -0
  44. package/dist/color/createColorAreaState.d.ts +6 -5
  45. package/dist/color/createColorAreaState.d.ts.map +1 -0
  46. package/dist/color/createColorFieldState.d.ts +4 -5
  47. package/dist/color/createColorFieldState.d.ts.map +1 -0
  48. package/dist/color/createColorSliderState.d.ts +4 -5
  49. package/dist/color/createColorSliderState.d.ts.map +1 -0
  50. package/dist/color/createColorWheelState.d.ts +2 -5
  51. package/dist/color/createColorWheelState.d.ts.map +1 -0
  52. package/dist/color/getColorChannels.d.ts +3 -0
  53. package/dist/color/getColorChannels.d.ts.map +1 -0
  54. package/dist/color/index.d.ts +2 -1
  55. package/dist/color/index.d.ts.map +1 -0
  56. package/dist/color/intl/index.d.ts +1 -0
  57. package/dist/color/intl/index.d.ts.map +1 -0
  58. package/dist/color/types.d.ts +2 -1
  59. package/dist/color/types.d.ts.map +1 -0
  60. package/dist/combobox/createComboBoxState.d.ts +92 -29
  61. package/dist/combobox/createComboBoxState.d.ts.map +1 -0
  62. package/dist/combobox/index.d.ts +2 -1
  63. package/dist/combobox/index.d.ts.map +1 -0
  64. package/dist/data/createAsyncList.d.ts +1 -7
  65. package/dist/data/createAsyncList.d.ts.map +1 -0
  66. package/dist/data/createListData.d.ts +1 -6
  67. package/dist/data/createListData.d.ts.map +1 -0
  68. package/dist/data/createTreeData.d.ts +1 -6
  69. package/dist/data/createTreeData.d.ts.map +1 -0
  70. package/dist/data/index.d.ts +1 -0
  71. package/dist/data/index.d.ts.map +1 -0
  72. package/dist/datepicker/index.d.ts +1 -0
  73. package/dist/datepicker/index.d.ts.map +1 -0
  74. package/dist/disclosure/createDisclosureState.d.ts +2 -5
  75. package/dist/disclosure/createDisclosureState.d.ts.map +1 -0
  76. package/dist/disclosure/index.d.ts +1 -0
  77. package/dist/disclosure/index.d.ts.map +1 -0
  78. package/dist/dnd/createDragState.d.ts +2 -6
  79. package/dist/dnd/createDragState.d.ts.map +1 -0
  80. package/dist/dnd/createDraggableCollectionState.d.ts +44 -11
  81. package/dist/dnd/createDraggableCollectionState.d.ts.map +1 -0
  82. package/dist/dnd/createDropState.d.ts +2 -6
  83. package/dist/dnd/createDropState.d.ts.map +1 -0
  84. package/dist/dnd/createDroppableCollectionState.d.ts +34 -11
  85. package/dist/dnd/createDroppableCollectionState.d.ts.map +1 -0
  86. package/dist/dnd/index.d.ts +3 -2
  87. package/dist/dnd/index.d.ts.map +1 -0
  88. package/dist/dnd/types.d.ts +17 -0
  89. package/dist/dnd/types.d.ts.map +1 -0
  90. package/dist/form/createFormValidationState.d.ts +2 -9
  91. package/{src → dist}/form/createFormValidationState.d.ts.map +1 -1
  92. package/dist/form/index.d.ts +1 -0
  93. package/dist/form/index.d.ts.map +1 -0
  94. package/dist/grid/createGridState.d.ts +4 -3
  95. package/dist/grid/createGridState.d.ts.map +1 -0
  96. package/dist/grid/index.d.ts +1 -0
  97. package/dist/grid/index.d.ts.map +1 -0
  98. package/dist/grid/types.d.ts +23 -1
  99. package/dist/grid/types.d.ts.map +1 -0
  100. package/dist/index.d.ts +7 -5
  101. package/dist/index.d.ts.map +1 -0
  102. package/dist/index.js +2947 -969
  103. package/dist/index.js.map +1 -1
  104. package/dist/menu/index.d.ts +3 -1
  105. package/dist/menu/index.d.ts.map +1 -0
  106. package/dist/numberfield/createNumberFieldState.d.ts +37 -9
  107. package/dist/numberfield/createNumberFieldState.d.ts.map +1 -0
  108. package/dist/numberfield/index.d.ts +1 -0
  109. package/dist/numberfield/index.d.ts.map +1 -0
  110. package/dist/overlays/createOverlayTriggerState.d.ts +12 -1
  111. package/dist/overlays/createOverlayTriggerState.d.ts.map +1 -0
  112. package/dist/overlays/index.d.ts +1 -0
  113. package/dist/overlays/index.d.ts.map +1 -0
  114. package/dist/private/flags/flags.d.ts +5 -0
  115. package/dist/private/flags/flags.d.ts.map +1 -0
  116. package/dist/private/flags/flags.js +26 -0
  117. package/dist/private/flags/flags.js.map +1 -0
  118. package/dist/radio/createRadioGroupState.d.ts +1 -0
  119. package/dist/radio/createRadioGroupState.d.ts.map +1 -0
  120. package/dist/radio/index.d.ts +1 -0
  121. package/dist/radio/index.d.ts.map +1 -0
  122. package/dist/searchfield/createSearchFieldState.d.ts +2 -5
  123. package/dist/searchfield/createSearchFieldState.d.ts.map +1 -0
  124. package/dist/searchfield/index.d.ts +1 -0
  125. package/dist/searchfield/index.d.ts.map +1 -0
  126. package/dist/select/createSelectState.d.ts +100 -33
  127. package/dist/select/createSelectState.d.ts.map +1 -0
  128. package/dist/select/index.d.ts +2 -1
  129. package/dist/select/index.d.ts.map +1 -0
  130. package/dist/selection/Selection.d.ts +2 -1
  131. package/dist/selection/Selection.d.ts.map +1 -0
  132. package/dist/selection/SelectionManager.d.ts +1 -19
  133. package/dist/selection/SelectionManager.d.ts.map +1 -0
  134. package/dist/selection/createMultipleSelectionState.d.ts +2 -13
  135. package/dist/selection/createMultipleSelectionState.d.ts.map +1 -0
  136. package/dist/selection/index.d.ts +1 -0
  137. package/dist/selection/index.d.ts.map +1 -0
  138. package/dist/slider/createSliderState.d.ts +37 -14
  139. package/dist/slider/createSliderState.d.ts.map +1 -0
  140. package/dist/slider/index.d.ts +1 -0
  141. package/dist/slider/index.d.ts.map +1 -0
  142. package/dist/ssr/index.d.ts +2 -13
  143. package/dist/ssr/index.d.ts.map +1 -0
  144. package/dist/steplist/createStepListState.d.ts +10 -18
  145. package/dist/steplist/createStepListState.d.ts.map +1 -0
  146. package/dist/steplist/index.d.ts +1 -0
  147. package/dist/steplist/index.d.ts.map +1 -0
  148. package/dist/table/TableCollection.d.ts +1 -0
  149. package/dist/table/TableCollection.d.ts.map +1 -0
  150. package/dist/table/createTableColumnResizeState.d.ts +2 -9
  151. package/dist/table/createTableColumnResizeState.d.ts.map +1 -0
  152. package/dist/table/createTableState.d.ts +3 -6
  153. package/dist/table/createTableState.d.ts.map +1 -0
  154. package/dist/table/createTreeGridState.d.ts +3 -9
  155. package/dist/table/createTreeGridState.d.ts.map +1 -0
  156. package/dist/table/index.d.ts +1 -0
  157. package/dist/table/index.d.ts.map +1 -0
  158. package/dist/table/types.d.ts +37 -3
  159. package/dist/table/types.d.ts.map +1 -0
  160. package/dist/tabs/createTabListState.d.ts +2 -5
  161. package/dist/tabs/createTabListState.d.ts.map +1 -0
  162. package/dist/tabs/index.d.ts +1 -0
  163. package/dist/tabs/index.d.ts.map +1 -0
  164. package/dist/textfield/createTextFieldState.d.ts +1 -0
  165. package/dist/textfield/createTextFieldState.d.ts.map +1 -0
  166. package/dist/textfield/index.d.ts +1 -0
  167. package/dist/textfield/index.d.ts.map +1 -0
  168. package/dist/toast/createToastState.d.ts +2 -5
  169. package/dist/toast/createToastState.d.ts.map +1 -0
  170. package/dist/toast/index.d.ts +1 -0
  171. package/dist/toast/index.d.ts.map +1 -0
  172. package/dist/toggle/createToggleGroupState.d.ts +1 -0
  173. package/dist/toggle/createToggleGroupState.d.ts.map +1 -0
  174. package/dist/toggle/createToggleState.d.ts +1 -0
  175. package/dist/toggle/createToggleState.d.ts.map +1 -0
  176. package/dist/toggle/index.d.ts +1 -0
  177. package/dist/toggle/index.d.ts.map +1 -0
  178. package/dist/tokenfield/TokenFieldValue.d.ts +96 -0
  179. package/dist/tokenfield/TokenFieldValue.d.ts.map +1 -0
  180. package/dist/tokenfield/createTokenFieldState.d.ts +33 -0
  181. package/dist/tokenfield/createTokenFieldState.d.ts.map +1 -0
  182. package/dist/tokenfield/index.d.ts +3 -0
  183. package/dist/tokenfield/index.d.ts.map +1 -0
  184. package/dist/tooltip/createTooltipTriggerState.d.ts +9 -8
  185. package/dist/tooltip/createTooltipTriggerState.d.ts.map +1 -0
  186. package/dist/tooltip/index.d.ts +1 -0
  187. package/dist/tooltip/index.d.ts.map +1 -0
  188. package/dist/tree/TreeCollection.d.ts +1 -0
  189. package/dist/tree/TreeCollection.d.ts.map +1 -0
  190. package/dist/tree/createTreeState.d.ts +3 -8
  191. package/dist/tree/createTreeState.d.ts.map +1 -0
  192. package/dist/tree/index.d.ts +1 -0
  193. package/dist/tree/index.d.ts.map +1 -0
  194. package/dist/tree/types.d.ts +19 -1
  195. package/dist/tree/types.d.ts.map +1 -0
  196. package/dist/utils/index.d.ts +3 -1
  197. package/dist/utils/index.d.ts.map +1 -0
  198. package/dist/utils/owner.d.ts +9 -0
  199. package/dist/utils/owner.d.ts.map +1 -0
  200. package/dist/utils/reactivity.d.ts +24 -0
  201. package/dist/utils/reactivity.d.ts.map +1 -0
  202. package/package.json +21 -9
  203. package/src/autocomplete/createAutocompleteState.ts +18 -4
  204. package/src/calendar/IncompleteDate.ts +15 -1
  205. package/src/calendar/createCalendarState.ts +321 -125
  206. package/src/calendar/createDateFieldState.ts +45 -31
  207. package/src/calendar/createDatePickerState.ts +47 -26
  208. package/src/calendar/createRangeCalendarState.ts +173 -86
  209. package/src/calendar/createTimeFieldState.ts +26 -7
  210. package/src/calendar/intl/index.ts +37 -2
  211. package/src/checkbox/createCheckboxGroupState.ts +45 -13
  212. package/src/collections/ListCollection.ts +31 -0
  213. package/src/collections/createListState.ts +27 -10
  214. package/src/collections/createMenuState.ts +190 -15
  215. package/src/collections/createSelectionState.ts +33 -13
  216. package/src/collections/getChildNodes.ts +20 -3
  217. package/src/collections/index.ts +6 -0
  218. package/src/collections/types.ts +35 -2
  219. package/src/color/Color.ts +61 -22
  220. package/src/color/createColorAreaState.ts +48 -4
  221. package/src/color/createColorFieldState.ts +114 -38
  222. package/src/color/createColorSliderState.ts +61 -9
  223. package/src/color/createColorWheelState.ts +29 -9
  224. package/src/color/getColorChannels.ts +16 -0
  225. package/src/color/index.ts +1 -0
  226. package/src/color/intl/index.ts +38 -3
  227. package/src/color/types.ts +1 -1
  228. package/src/combobox/createComboBoxState.ts +530 -297
  229. package/src/combobox/index.ts +4 -0
  230. package/src/data/createAsyncList.ts +41 -6
  231. package/src/data/createListData.ts +27 -4
  232. package/src/data/createTreeData.ts +30 -6
  233. package/src/disclosure/createDisclosureState.ts +40 -19
  234. package/src/dnd/createDragState.ts +22 -4
  235. package/src/dnd/createDraggableCollectionState.ts +145 -11
  236. package/src/dnd/createDropState.ts +21 -3
  237. package/src/dnd/createDroppableCollectionState.ts +127 -11
  238. package/src/dnd/index.ts +4 -0
  239. package/src/dnd/types.ts +16 -0
  240. package/src/form/createFormValidationState.ts +69 -37
  241. package/src/grid/createGridState.ts +196 -111
  242. package/src/grid/types.ts +22 -1
  243. package/src/index.ts +33 -2
  244. package/src/menu/index.ts +7 -0
  245. package/src/numberfield/createNumberFieldState.ts +247 -98
  246. package/src/overlays/createOverlayTriggerState.ts +31 -4
  247. package/src/private/flags/flags.ts +25 -0
  248. package/src/radio/createRadioGroupState.ts +23 -6
  249. package/src/searchfield/createSearchFieldState.ts +18 -3
  250. package/src/select/createSelectState.ts +317 -130
  251. package/src/select/index.ts +8 -1
  252. package/src/selection/Selection.ts +15 -1
  253. package/src/selection/SelectionManager.ts +17 -1
  254. package/src/selection/createMultipleSelectionState.ts +45 -26
  255. package/src/slider/createSliderState.ts +243 -104
  256. package/src/ssr/index.ts +34 -4
  257. package/src/steplist/createStepListState.ts +184 -130
  258. package/src/table/TableCollection.ts +14 -0
  259. package/src/table/createTableColumnResizeState.ts +71 -14
  260. package/src/table/createTableState.ts +26 -4
  261. package/src/table/createTreeGridState.ts +22 -6
  262. package/src/table/types.ts +38 -5
  263. package/src/tabs/createTabListState.ts +63 -43
  264. package/src/textfield/createTextFieldState.ts +17 -3
  265. package/src/toast/createToastState.ts +28 -3
  266. package/src/toggle/createToggleGroupState.ts +20 -5
  267. package/src/toggle/createToggleState.ts +19 -4
  268. package/src/tokenfield/TokenFieldValue.ts +499 -0
  269. package/src/tokenfield/createTokenFieldState.ts +88 -0
  270. package/src/tokenfield/index.ts +15 -0
  271. package/src/tooltip/createTooltipTriggerState.ts +49 -13
  272. package/src/tree/TreeCollection.ts +14 -0
  273. package/src/tree/createTreeState.ts +70 -36
  274. package/src/tree/types.ts +18 -1
  275. package/src/utils/index.ts +10 -1
  276. package/src/utils/owner.ts +20 -0
  277. package/src/utils/reactivity.ts +53 -1
  278. package/src/autocomplete/createAutocompleteState.d.ts +0 -48
  279. package/src/autocomplete/createAutocompleteState.d.ts.map +0 -1
  280. package/src/autocomplete/index.d.ts +0 -6
  281. package/src/autocomplete/index.d.ts.map +0 -1
  282. package/src/calendar/createCalendarState.d.ts +0 -152
  283. package/src/calendar/createCalendarState.d.ts.map +0 -1
  284. package/src/calendar/createDateFieldState.d.ts +0 -145
  285. package/src/calendar/createDateFieldState.d.ts.map +0 -1
  286. package/src/calendar/createRangeCalendarState.d.ts +0 -171
  287. package/src/calendar/createRangeCalendarState.d.ts.map +0 -1
  288. package/src/calendar/createTimeFieldState.d.ts +0 -97
  289. package/src/calendar/createTimeFieldState.d.ts.map +0 -1
  290. package/src/calendar/index.d.ts +0 -80
  291. package/src/calendar/index.d.ts.map +0 -1
  292. package/src/checkbox/createCheckboxGroupState.d.ts +0 -73
  293. package/src/checkbox/createCheckboxGroupState.d.ts.map +0 -1
  294. package/src/checkbox/index.d.ts +0 -6
  295. package/src/checkbox/index.d.ts.map +0 -1
  296. package/src/collections/ListCollection.d.ts +0 -40
  297. package/src/collections/ListCollection.d.ts.map +0 -1
  298. package/src/collections/createListState.d.ts +0 -94
  299. package/src/collections/createListState.d.ts.map +0 -1
  300. package/src/collections/createMenuState.d.ts +0 -55
  301. package/src/collections/createMenuState.d.ts.map +0 -1
  302. package/src/collections/createSelectionState.d.ts +0 -89
  303. package/src/collections/createSelectionState.d.ts.map +0 -1
  304. package/src/collections/index.d.ts +0 -38
  305. package/src/collections/index.d.ts.map +0 -1
  306. package/src/collections/types.d.ts +0 -147
  307. package/src/collections/types.d.ts.map +0 -1
  308. package/src/color/Color.d.ts +0 -43
  309. package/src/color/Color.d.ts.map +0 -1
  310. package/src/color/createColorAreaState.d.ts +0 -78
  311. package/src/color/createColorAreaState.d.ts.map +0 -1
  312. package/src/color/createColorFieldState.d.ts +0 -57
  313. package/src/color/createColorFieldState.d.ts.map +0 -1
  314. package/src/color/createColorSliderState.d.ts +0 -69
  315. package/src/color/createColorSliderState.d.ts.map +0 -1
  316. package/src/color/createColorWheelState.d.ts +0 -53
  317. package/src/color/createColorWheelState.d.ts.map +0 -1
  318. package/src/color/index.d.ts +0 -39
  319. package/src/color/index.d.ts.map +0 -1
  320. package/src/color/types.d.ts +0 -111
  321. package/src/color/types.d.ts.map +0 -1
  322. package/src/combobox/createComboBoxState.d.ts +0 -127
  323. package/src/combobox/createComboBoxState.d.ts.map +0 -1
  324. package/src/combobox/index.d.ts +0 -13
  325. package/src/combobox/index.d.ts.map +0 -1
  326. package/src/disclosure/createDisclosureState.d.ts +0 -68
  327. package/src/disclosure/createDisclosureState.d.ts.map +0 -1
  328. package/src/disclosure/index.d.ts +0 -10
  329. package/src/disclosure/index.d.ts.map +0 -1
  330. package/src/dnd/createDragState.d.ts +0 -68
  331. package/src/dnd/createDragState.d.ts.map +0 -1
  332. package/src/dnd/createDraggableCollectionState.d.ts +0 -68
  333. package/src/dnd/createDraggableCollectionState.d.ts.map +0 -1
  334. package/src/dnd/createDropState.d.ts +0 -80
  335. package/src/dnd/createDropState.d.ts.map +0 -1
  336. package/src/dnd/createDroppableCollectionState.d.ts +0 -107
  337. package/src/dnd/createDroppableCollectionState.d.ts.map +0 -1
  338. package/src/dnd/index.d.ts +0 -60
  339. package/src/dnd/index.d.ts.map +0 -1
  340. package/src/dnd/types.d.ts +0 -277
  341. package/src/dnd/types.d.ts.map +0 -1
  342. package/src/form/createFormValidationState.d.ts +0 -102
  343. package/src/form/index.d.ts +0 -16
  344. package/src/form/index.d.ts.map +0 -1
  345. package/src/grid/createGridState.d.ts +0 -15
  346. package/src/grid/createGridState.d.ts.map +0 -1
  347. package/src/grid/index.d.ts +0 -7
  348. package/src/grid/index.d.ts.map +0 -1
  349. package/src/grid/types.d.ts +0 -163
  350. package/src/grid/types.d.ts.map +0 -1
  351. package/src/index.d.ts +0 -311
  352. package/src/index.d.ts.map +0 -1
  353. package/src/numberfield/createNumberFieldState.d.ts +0 -67
  354. package/src/numberfield/createNumberFieldState.d.ts.map +0 -1
  355. package/src/numberfield/index.d.ts +0 -6
  356. package/src/numberfield/index.d.ts.map +0 -1
  357. package/src/overlays/createOverlayTriggerState.d.ts +0 -34
  358. package/src/overlays/createOverlayTriggerState.d.ts.map +0 -1
  359. package/src/overlays/index.d.ts +0 -6
  360. package/src/overlays/index.d.ts.map +0 -1
  361. package/src/radio/createRadioGroupState.d.ts +0 -79
  362. package/src/radio/createRadioGroupState.d.ts.map +0 -1
  363. package/src/radio/index.d.ts +0 -7
  364. package/src/radio/index.d.ts.map +0 -1
  365. package/src/searchfield/createSearchFieldState.d.ts +0 -27
  366. package/src/searchfield/createSearchFieldState.d.ts.map +0 -1
  367. package/src/searchfield/index.d.ts +0 -3
  368. package/src/searchfield/index.d.ts.map +0 -1
  369. package/src/select/createSelectState.d.ts +0 -75
  370. package/src/select/createSelectState.d.ts.map +0 -1
  371. package/src/select/index.d.ts +0 -2
  372. package/src/select/index.d.ts.map +0 -1
  373. package/src/slider/createSliderState.d.ts +0 -72
  374. package/src/slider/createSliderState.d.ts.map +0 -1
  375. package/src/slider/index.d.ts +0 -3
  376. package/src/slider/index.d.ts.map +0 -1
  377. package/src/ssr/index.d.ts +0 -28
  378. package/src/ssr/index.d.ts.map +0 -1
  379. package/src/table/TableCollection.d.ts +0 -54
  380. package/src/table/TableCollection.d.ts.map +0 -1
  381. package/src/table/createTableState.d.ts +0 -15
  382. package/src/table/createTableState.d.ts.map +0 -1
  383. package/src/table/index.d.ts +0 -18
  384. package/src/table/index.d.ts.map +0 -1
  385. package/src/table/types.d.ts +0 -145
  386. package/src/table/types.d.ts.map +0 -1
  387. package/src/tabs/createTabListState.d.ts +0 -70
  388. package/src/tabs/createTabListState.d.ts.map +0 -1
  389. package/src/tabs/index.d.ts +0 -8
  390. package/src/tabs/index.d.ts.map +0 -1
  391. package/src/textfield/createTextFieldState.d.ts +0 -32
  392. package/src/textfield/createTextFieldState.d.ts.map +0 -1
  393. package/src/textfield/index.d.ts +0 -6
  394. package/src/textfield/index.d.ts.map +0 -1
  395. package/src/toast/createToastState.d.ts +0 -129
  396. package/src/toast/createToastState.d.ts.map +0 -1
  397. package/src/toast/index.d.ts +0 -12
  398. package/src/toast/index.d.ts.map +0 -1
  399. package/src/toggle/createToggleState.d.ts +0 -34
  400. package/src/toggle/createToggleState.d.ts.map +0 -1
  401. package/src/toggle/index.d.ts +0 -2
  402. package/src/toggle/index.d.ts.map +0 -1
  403. package/src/tooltip/createTooltipTriggerState.d.ts +0 -39
  404. package/src/tooltip/createTooltipTriggerState.d.ts.map +0 -1
  405. package/src/tooltip/index.d.ts +0 -7
  406. package/src/tooltip/index.d.ts.map +0 -1
  407. package/src/tree/TreeCollection.d.ts +0 -43
  408. package/src/tree/TreeCollection.d.ts.map +0 -1
  409. package/src/tree/createTreeState.d.ts +0 -17
  410. package/src/tree/createTreeState.d.ts.map +0 -1
  411. package/src/tree/index.d.ts +0 -13
  412. package/src/tree/index.d.ts.map +0 -1
  413. package/src/tree/types.d.ts +0 -162
  414. package/src/tree/types.d.ts.map +0 -1
  415. package/src/utils/index.d.ts +0 -2
  416. package/src/utils/index.d.ts.map +0 -1
  417. package/src/utils/reactivity.d.ts +0 -28
  418. package/src/utils/reactivity.d.ts.map +0 -1
@@ -1,72 +1,82 @@
1
1
  /**
2
2
  * Grid state management for Table and GridList components.
3
- * Based on @react-stately/grid/useGridState.
3
+ * Based on packages/react-stately/src/grid/useGridState.ts.
4
4
  */
5
5
 
6
- import { createSignal, createEffect, createMemo, on, type Accessor } from "solid-js";
6
+ import { createEffect, createMemo } from "solid-js";
7
7
  import type { GridState, GridStateOptions, GridCollection, GridNode } from "./types";
8
8
  import type { Key, FocusStrategy, SelectionBehavior, Selection } from "../collections/types";
9
+ import { createInternalSignal, propsAccessor, type MaybeAccessor } from "../utils";
9
10
 
10
11
  /**
11
12
  * Creates state management for a grid component.
12
13
  * Handles row selection, focus management, and keyboard navigation state.
13
14
  */
14
15
  export function createGridState<T extends object, C extends GridCollection<T> = GridCollection<T>>(
15
- options: Accessor<GridStateOptions<T, C>>,
16
+ options: MaybeAccessor<GridStateOptions<T, C>>,
16
17
  ): GridState<T, C> {
17
- const getOptions = () => options();
18
+ const getOptions = propsAccessor(options);
18
19
 
19
20
  const disabledKeys = createMemo(() => {
20
21
  const keys = getOptions().disabledKeys;
21
22
  return keys ? new Set(keys) : new Set<Key>();
22
23
  });
23
24
 
24
- const [isFocused, setIsFocused] = createSignal(false);
25
- const [focusedKey, setFocusedKeyInternal] = createSignal<Key | null>(null);
26
- const [childFocusStrategy, setChildFocusStrategy] = createSignal<FocusStrategy | null>(null);
27
- const [isKeyboardNavigationDisabled, setKeyboardNavigationDisabled] = createSignal(false);
25
+ const [isFocused, setIsFocused] = createInternalSignal(false);
26
+ const [focusedKey, setFocusedKeyInternal] = createInternalSignal<Key | null>(null);
27
+ const [childFocusStrategy, setChildFocusStrategy] = createInternalSignal<FocusStrategy | null>(
28
+ null,
29
+ );
30
+ const [isKeyboardNavigationDisabled, setKeyboardNavigationDisabled] = createInternalSignal(false);
28
31
 
29
- const [internalSelectedKeys, setInternalSelectedKeys] = createSignal<"all" | Set<Key>>(
32
+ const [internalSelectedKeys, setInternalSelectedKeys] = createInternalSignal<"all" | Set<Key>>(
30
33
  getInitialSelection(getOptions().defaultSelectedKeys),
31
34
  );
32
- const [anchorKey, setAnchorKey] = createSignal<Key | null>(null);
35
+ const [anchorKey, setAnchorKey] = createInternalSignal<Key | null>(null);
33
36
 
34
- const selectedKeys = createMemo(() => {
37
+ const selectedKeys = (): "all" | Set<Key> => {
35
38
  const opts = getOptions();
36
39
  if (opts.selectedKeys !== undefined) {
37
40
  return normalizeSelection(opts.selectedKeys);
38
41
  }
39
42
  return internalSelectedKeys();
40
- });
43
+ };
41
44
 
42
45
  const selectionMode = createMemo(() => getOptions().selectionMode ?? "none");
43
46
  const selectionBehaviorProp = (): SelectionBehavior => getOptions().selectionBehavior ?? "toggle";
44
47
  const [selectionBehaviorState, setSelectionBehaviorState] =
45
- createSignal<SelectionBehavior>(selectionBehaviorProp());
48
+ createInternalSignal<SelectionBehavior>(selectionBehaviorProp());
46
49
  const selectionBehavior = createMemo(() => selectionBehaviorState());
47
50
  const disallowEmptySelection = createMemo(() => getOptions().disallowEmptySelection ?? false);
48
51
  const disabledBehavior = createMemo(() => getOptions().disabledBehavior ?? "all");
49
52
 
50
53
  const focusMode = createMemo(() => getOptions().focusMode ?? "row");
51
54
 
52
- createEffect(
53
- on(selectionBehaviorProp, (behavior) => {
55
+ let lastSelectionBehavior = selectionBehaviorProp();
56
+ createEffect(selectionBehaviorProp, (behavior) => {
57
+ if (behavior !== lastSelectionBehavior) {
54
58
  setSelectionBehaviorState(behavior);
55
- }),
56
- );
57
-
58
- createEffect(() => {
59
- const keys = selectedKeys();
60
- if (
61
- selectionBehaviorProp() === "replace" &&
62
- selectionBehaviorState() === "toggle" &&
63
- keys !== "all" &&
64
- keys.size === 0
65
- ) {
66
- setSelectionBehaviorState("replace");
59
+ lastSelectionBehavior = behavior;
67
60
  }
68
61
  });
69
62
 
63
+ createEffect(
64
+ () => ({
65
+ prop: selectionBehaviorProp(),
66
+ keys: selectedKeys(),
67
+ }),
68
+ ({ prop, keys }) => {
69
+ if (
70
+ prop === "replace" &&
71
+ selectionBehaviorState() === "toggle" &&
72
+ keys !== "all" &&
73
+ keys.size === 0
74
+ ) {
75
+ setSelectionBehaviorState("replace");
76
+ }
77
+ },
78
+ );
79
+
70
80
  const setFocusedKey = (key: Key | null, strategy: FocusStrategy = "first") => {
71
81
  const opts = getOptions();
72
82
  const collection = opts.collection;
@@ -88,84 +98,138 @@ export function createGridState<T extends object, C extends GridCollection<T> =
88
98
  setChildFocusStrategy(strategy);
89
99
  };
90
100
 
91
- // Reset focused key if the item is deleted from the collection
92
- let cachedCollection: C | null = null;
101
+ // Reset focused key if the item is deleted from the collection.
102
+ // Seed the cache at factory time so the first effect run (Solid 2 flushes
103
+ // effects, they do not run synchronously) can still see a deletion.
104
+ let cachedCollection: C | null = getOptions().collection;
93
105
 
94
106
  createEffect(
95
- on(
96
- () => getOptions().collection,
97
- (collection) => {
98
- const currentFocusedKey = focusedKey();
99
-
100
- if (
101
- currentFocusedKey != null &&
102
- cachedCollection &&
103
- !collection.getItem(currentFocusedKey)
104
- ) {
105
- // The focused item was deleted, find a new one to focus
106
- const node = cachedCollection.getItem(currentFocusedKey);
107
- const parentNode =
108
- node?.parentKey != null &&
109
- (node.type === "cell" || node.type === "rowheader" || node.type === "column")
110
- ? cachedCollection.getItem(node.parentKey)
111
- : node;
112
-
113
- if (!parentNode) {
114
- setFocusedKeyInternal(null);
115
- cachedCollection = collection;
116
- return;
117
- }
118
-
119
- const cachedRows = cachedCollection.rows;
120
- const rows = collection.rows;
121
- const diff = cachedRows.length - rows.length;
107
+ () => ({
108
+ collection: getOptions().collection,
109
+ currentFocusedKey: focusedKey(),
110
+ disabled: disabledKeys(),
111
+ }),
112
+ ({ collection, currentFocusedKey, disabled }) => {
113
+ if (currentFocusedKey != null && cachedCollection && !collection.getItem(currentFocusedKey)) {
114
+ // The focused item was deleted, find a new one to focus
115
+ const node = cachedCollection.getItem(currentFocusedKey);
116
+ const parentNode =
117
+ node?.parentKey != null &&
118
+ (node.type === "cell" || node.type === "rowheader" || node.type === "column")
119
+ ? cachedCollection.getItem(node.parentKey)
120
+ : node;
121
+
122
+ if (!parentNode) {
123
+ setFocusedKeyInternal(null);
124
+ cachedCollection = collection;
125
+ return;
126
+ }
122
127
 
123
- let index = Math.min(
124
- diff > 1 ? Math.max(parentNode.index - diff + 1, 0) : parentNode.index,
125
- rows.length - 1,
126
- );
128
+ const cachedRows = cachedCollection.rows;
129
+ const rows = collection.rows;
130
+ const diff = cachedRows.length - rows.length;
131
+
132
+ let index = Math.min(
133
+ diff > 1 ? Math.max(parentNode.index - diff + 1, 0) : parentNode.index,
134
+ rows.length - 1,
135
+ );
136
+
137
+ let newRow: GridNode<T> | null = null;
138
+
139
+ // Search forward once from the deleted position, then backward once.
140
+ // The previous direction-switching loop could bounce forever between
141
+ // two disabled rows when the focused row was deleted.
142
+ for (let i = Math.max(0, index); i < rows.length; i++) {
143
+ const row = rows[i];
144
+ if (!disabled.has(row.key) && row.type !== "headerrow") {
145
+ newRow = row;
146
+ break;
147
+ }
148
+ }
127
149
 
128
- let newRow: GridNode<T> | null = null;
129
- while (index >= 0) {
130
- const row = rows[index];
131
- if (!disabledKeys().has(row.key) && row.type !== "headerrow") {
150
+ if (newRow === null) {
151
+ for (let i = index - 1; i >= 0; i--) {
152
+ const row = rows[i];
153
+ if (!disabled.has(row.key) && row.type !== "headerrow") {
132
154
  newRow = row;
133
155
  break;
134
156
  }
135
- // Find next, not disabled row
136
- if (index < rows.length - 1) {
137
- index++;
138
- } else {
139
- // Otherwise, find previous, not disabled row
140
- if (index > parentNode.index) {
141
- index = parentNode.index;
142
- }
143
- index--;
144
- }
145
157
  }
158
+ }
146
159
 
147
- if (newRow) {
148
- const childNodes = newRow.hasChildNodes ? [...collection.getChildren(newRow.key)] : [];
149
- const keyToFocus =
150
- newRow.hasChildNodes && parentNode !== node && node && node.index < childNodes.length
151
- ? childNodes[node.index].key
152
- : newRow.key;
153
- setFocusedKeyInternal(keyToFocus);
154
- } else {
155
- setFocusedKeyInternal(null);
156
- }
160
+ if (newRow) {
161
+ const childNodes = newRow.hasChildNodes ? [...collection.getChildren(newRow.key)] : [];
162
+ const keyToFocus =
163
+ newRow.hasChildNodes && parentNode !== node && node && node.index < childNodes.length
164
+ ? childNodes[node.index].key
165
+ : newRow.key;
166
+ setFocusedKeyInternal(keyToFocus);
167
+ } else {
168
+ setFocusedKeyInternal(null);
157
169
  }
170
+ }
158
171
 
159
- cachedCollection = collection;
160
- },
161
- ),
172
+ cachedCollection = collection;
173
+ },
162
174
  );
163
175
 
164
176
  // Selection methods
177
+ const getSelectionKey = (key: Key): Key | null => {
178
+ const collection = getOptions().collection;
179
+ let item = collection.getItem(key);
180
+
181
+ if (!item) {
182
+ return key;
183
+ }
184
+
185
+ // Cells and other child nodes select their parent row.
186
+ while (item && item.type !== "item" && item.parentKey != null) {
187
+ item = collection.getItem(item.parentKey);
188
+ }
189
+
190
+ return item?.type === "item" ? item.key : null;
191
+ };
192
+
193
+ const canSelectItem = (key: Key): boolean => {
194
+ if (selectionMode() === "none" || disabledKeys().has(key)) {
195
+ return false;
196
+ }
197
+
198
+ const item = getOptions().collection.getItem(key);
199
+ return !!item && item.type === "item" && !item.isDisabled && !item.props?.isDisabled;
200
+ };
201
+
202
+ const getSelectAllKeys = (): Key[] => {
203
+ return getOptions()
204
+ .collection.rows.filter((row) => row.type === "item" && canSelectItem(row.key))
205
+ .map((row) => row.key);
206
+ };
207
+
208
+ const isEmpty = createMemo(() => {
209
+ const keys = selectedKeys();
210
+ return keys !== "all" && keys.size === 0;
211
+ });
212
+
213
+ const isSelectAll = createMemo(() => {
214
+ const keys = selectedKeys();
215
+ if (isEmpty()) return false;
216
+
217
+ if (keys === "all") {
218
+ return true;
219
+ }
220
+
221
+ return getSelectAllKeys().every((key) => keys.has(key));
222
+ });
223
+
165
224
  const isSelected = (key: Key): boolean => {
225
+ if (selectionMode() === "none") return false;
226
+
227
+ const selectionKey = getSelectionKey(key);
228
+ if (selectionKey == null) return false;
229
+
166
230
  const keys = selectedKeys();
167
- if (keys === "all") return true;
168
- return keys.has(key);
231
+ if (keys === "all") return canSelectItem(selectionKey);
232
+ return keys.has(selectionKey);
169
233
  };
170
234
 
171
235
  const isDisabled = (key: Key): boolean => {
@@ -196,49 +260,62 @@ export function createGridState<T extends object, C extends GridCollection<T> =
196
260
  };
197
261
 
198
262
  const toggleSelection = (key: Key) => {
199
- if (isDisabled(key)) return;
200
263
  if (selectionMode() === "none") return;
201
264
 
265
+ const selectionKey = getSelectionKey(key);
266
+ if (selectionKey == null) return;
267
+
202
268
  const current = selectedKeys();
203
269
 
204
270
  if (selectionMode() === "single") {
205
- if (isSelected(key) && !disallowEmptySelection()) {
271
+ if (isSelected(selectionKey) && !disallowEmptySelection()) {
206
272
  updateSelection(new Set());
207
- } else {
208
- updateSelection(new Set([key]));
273
+ } else if (canSelectItem(selectionKey)) {
274
+ updateSelection(new Set([selectionKey]));
209
275
  }
210
276
  return;
211
277
  }
212
278
 
213
279
  // Multiple selection
214
- if (current === "all") {
215
- // Can't toggle when all selected without knowing all keys
216
- return;
217
- }
218
-
219
- const newSelection = new Set(current);
220
- if (newSelection.has(key)) {
280
+ const newSelection = new Set(current === "all" ? getSelectAllKeys() : current);
281
+ if (newSelection.has(selectionKey)) {
221
282
  if (newSelection.size > 1 || !disallowEmptySelection()) {
222
- newSelection.delete(key);
283
+ newSelection.delete(selectionKey);
223
284
  }
224
- } else {
225
- newSelection.add(key);
285
+ } else if (canSelectItem(selectionKey)) {
286
+ newSelection.add(selectionKey);
226
287
  }
227
288
 
228
289
  updateSelection(newSelection);
229
- setAnchorKey(key);
290
+ setAnchorKey(selectionKey);
230
291
  };
231
292
 
232
293
  const replaceSelection = (key: Key) => {
233
- if (isDisabled(key)) return;
234
294
  if (selectionMode() === "none") return;
235
295
 
236
- updateSelection(new Set([key]));
237
- setAnchorKey(key);
296
+ const selectionKey = getSelectionKey(key);
297
+ if (selectionKey == null) return;
298
+
299
+ updateSelection(canSelectItem(selectionKey) ? new Set([selectionKey]) : new Set());
300
+ setAnchorKey(selectionKey);
238
301
  };
239
302
 
240
303
  const setSelectedKeys = (keys: Selection | Iterable<Key>) => {
241
- updateSelection(normalizeSelection(keys));
304
+ if (selectionMode() === "none") return;
305
+ if (keys === "all") {
306
+ updateSelection("all");
307
+ return;
308
+ }
309
+
310
+ const selection = new Set<Key>();
311
+ for (const key of keys) {
312
+ const selectionKey = getSelectionKey(key);
313
+ if (selectionKey != null) {
314
+ selection.add(selectionKey);
315
+ if (selectionMode() === "single") break;
316
+ }
317
+ }
318
+ updateSelection(selection);
242
319
  };
243
320
 
244
321
  const extendSelection = (toKey: Key) => {
@@ -248,7 +325,7 @@ export function createGridState<T extends object, C extends GridCollection<T> =
248
325
  return;
249
326
  }
250
327
 
251
- const anchor = anchorKey();
328
+ const anchor = anchorKey() ?? focusedKey();
252
329
  if (!anchor) {
253
330
  replaceSelection(toKey);
254
331
  return;
@@ -274,7 +351,9 @@ export function createGridState<T extends object, C extends GridCollection<T> =
274
351
 
275
352
  const selectAll = () => {
276
353
  if (selectionMode() !== "multiple") return;
277
- updateSelection("all");
354
+ if (!isSelectAll()) {
355
+ updateSelection("all");
356
+ }
278
357
  };
279
358
 
280
359
  const clearSelection = () => {
@@ -285,7 +364,7 @@ export function createGridState<T extends object, C extends GridCollection<T> =
285
364
  const toggleSelectAll = () => {
286
365
  if (selectionMode() !== "multiple") return;
287
366
 
288
- if (selectedKeys() === "all") {
367
+ if (isSelectAll()) {
289
368
  clearSelection();
290
369
  } else {
291
370
  selectAll();
@@ -326,6 +405,12 @@ export function createGridState<T extends object, C extends GridCollection<T> =
326
405
  get selectedKeys() {
327
406
  return selectedKeys();
328
407
  },
408
+ get isEmpty() {
409
+ return isEmpty();
410
+ },
411
+ get isSelectAll() {
412
+ return isSelectAll();
413
+ },
329
414
  isSelected,
330
415
  isDisabled,
331
416
  setFocusedKey,
package/src/grid/types.ts CHANGED
@@ -1,6 +1,23 @@
1
+ /*
2
+ * Copyright 2020 Adobe. All rights reserved.
3
+ * This file is licensed to you under the Apache License, Version 2.0 (the "License");
4
+ * you may not use this file except in compliance with the License. You may obtain a copy
5
+ * of the License at http://www.apache.org/licenses/LICENSE-2.0
6
+ *
7
+ * Unless required by applicable law or agreed to in writing, software distributed under
8
+ * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
9
+ * OF ANY KIND, either express or implied. See the License for the specific language
10
+ * governing permissions and limitations under the License.
11
+ */
12
+
13
+ // Ported to SolidJS for Proyecto Viviana; based on packages/react-stately/src/grid/GridCollection.ts
14
+ // Ported to SolidJS for Proyecto Viviana; based on packages/react-stately/src/grid/useGridState.ts
15
+
1
16
  /**
2
17
  * Grid collection types for Table and GridList components.
3
- * Based on @react-types/grid.
18
+ * Ported from:
19
+ * - packages/react-stately/src/grid/GridCollection.ts
20
+ * - packages/react-stately/src/grid/useGridState.ts
4
21
  */
5
22
 
6
23
  import type { Key, FocusStrategy, Selection, SelectionBehavior } from "../collections/types";
@@ -145,6 +162,10 @@ export interface GridState<T, C extends GridCollection<T> = GridCollection<T>> {
145
162
  readonly disallowEmptySelection: boolean;
146
163
  /** The currently selected keys. */
147
164
  readonly selectedKeys: "all" | Set<Key>;
165
+ /** Whether no rows are selected. */
166
+ readonly isEmpty: boolean;
167
+ /** Whether every selectable row is selected. */
168
+ readonly isSelectAll: boolean;
148
169
  /** Check if a key is selected. */
149
170
  isSelected(key: Key): boolean;
150
171
  /** Check if a key is disabled. */
package/src/index.ts CHANGED
@@ -15,6 +15,19 @@ export {
15
15
 
16
16
  export { createTextFieldState, type TextFieldStateOptions, type TextFieldState } from "./textfield";
17
17
 
18
+ export {
19
+ createTokenFieldState,
20
+ TokenFieldValue,
21
+ type TokenFieldStateOptions,
22
+ type TokenFieldState,
23
+ type TokenFieldSegment,
24
+ type TextSegment,
25
+ type TokenSegment,
26
+ type Position,
27
+ type SelectedRange,
28
+ type TokenFieldValueOptions,
29
+ } from "./tokenfield";
30
+
18
31
  export {
19
32
  createCheckboxGroupState,
20
33
  type CheckboxGroupProps,
@@ -65,10 +78,16 @@ export {
65
78
  type SingleSelectListState,
66
79
  createMenuState,
67
80
  createMenuTriggerState,
81
+ createSubmenuTriggerState,
68
82
  type MenuStateProps,
69
83
  type MenuState,
84
+ type MenuTriggerType,
85
+ type MenuTriggerProps,
70
86
  type MenuTriggerStateProps,
71
87
  type MenuTriggerState,
88
+ type RootMenuTriggerState,
89
+ type SubmenuTriggerProps,
90
+ type SubmenuTriggerState,
72
91
  } from "./collections";
73
92
 
74
93
  // Selection (module-compat aliases)
@@ -82,7 +101,7 @@ export {
82
101
  } from "./selection";
83
102
 
84
103
  // Menu (module-compat aliases)
85
- export { useMenuTriggerState } from "./menu";
104
+ export { useMenuTriggerState, useSubmenuTriggerState } from "./menu";
86
105
 
87
106
  // Datepicker (module-compat aliases)
88
107
  export {
@@ -97,13 +116,24 @@ export {
97
116
  type SegmentType,
98
117
  } from "./datepicker";
99
118
 
100
- export { createSelectState, type SelectStateProps, type SelectState } from "./select";
119
+ export {
120
+ createSelectState,
121
+ type SelectStateProps,
122
+ type SelectState,
123
+ type SelectSelectionMode,
124
+ type SelectValueType,
125
+ type SelectChangeValueType,
126
+ } from "./select";
101
127
 
102
128
  export {
103
129
  createComboBoxState,
104
130
  defaultContainsFilter,
105
131
  type ComboBoxState,
106
132
  type ComboBoxStateProps,
133
+ type ComboBoxValidationValue,
134
+ type ComboBoxSelectionMode,
135
+ type ComboBoxValueType,
136
+ type ComboBoxChangeValueType,
107
137
  type FilterFn,
108
138
  type MenuTriggerAction,
109
139
  } from "./combobox";
@@ -355,6 +385,7 @@ export {
355
385
  type DropStateOptions,
356
386
  type DropState,
357
387
  createDraggableCollectionState,
388
+ getKeysForDrag,
358
389
  type DraggableCollectionStateOptions,
359
390
  type DraggableCollectionState,
360
391
  createDroppableCollectionState,
package/src/menu/index.ts CHANGED
@@ -8,10 +8,17 @@
8
8
  export {
9
9
  createMenuState,
10
10
  createMenuTriggerState,
11
+ createSubmenuTriggerState,
11
12
  type MenuStateProps,
12
13
  type MenuState,
14
+ type MenuTriggerType,
15
+ type MenuTriggerProps,
13
16
  type MenuTriggerStateProps,
14
17
  type MenuTriggerState,
18
+ type RootMenuTriggerState,
19
+ type SubmenuTriggerProps,
20
+ type SubmenuTriggerState,
15
21
  } from "../collections/createMenuState";
16
22
 
17
23
  export { createMenuTriggerState as useMenuTriggerState } from "../collections/createMenuState";
24
+ export { createSubmenuTriggerState as useSubmenuTriggerState } from "../collections/createMenuState";