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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (414) hide show
  1. package/LICENSE-APACHE-2.0 +201 -0
  2. package/NOTICE +91 -0
  3. package/dist/autocomplete/createAutocompleteState.d.ts +2 -1
  4. package/dist/autocomplete/createAutocompleteState.d.ts.map +1 -0
  5. package/dist/autocomplete/index.d.ts +1 -0
  6. package/dist/autocomplete/index.d.ts.map +1 -0
  7. package/dist/calendar/IncompleteDate.d.ts +2 -1
  8. package/dist/calendar/IncompleteDate.d.ts.map +1 -0
  9. package/dist/calendar/createCalendarState.d.ts +7 -8
  10. package/dist/calendar/createCalendarState.d.ts.map +1 -0
  11. package/dist/calendar/createDateFieldState.d.ts +4 -20
  12. package/dist/calendar/createDateFieldState.d.ts.map +1 -0
  13. package/dist/calendar/createDatePickerState.d.ts +2 -7
  14. package/dist/calendar/createDatePickerState.d.ts.map +1 -0
  15. package/dist/calendar/createRangeCalendarState.d.ts +7 -7
  16. package/dist/calendar/createRangeCalendarState.d.ts.map +1 -0
  17. package/dist/calendar/createTimeFieldState.d.ts +4 -23
  18. package/dist/calendar/createTimeFieldState.d.ts.map +1 -0
  19. package/dist/calendar/index.d.ts +1 -0
  20. package/dist/calendar/index.d.ts.map +1 -0
  21. package/dist/calendar/intl/index.d.ts +1 -0
  22. package/dist/calendar/intl/index.d.ts.map +1 -0
  23. package/dist/checkbox/createCheckboxGroupState.d.ts +1 -0
  24. package/dist/checkbox/createCheckboxGroupState.d.ts.map +1 -0
  25. package/dist/checkbox/index.d.ts +1 -0
  26. package/dist/checkbox/index.d.ts.map +1 -0
  27. package/dist/collections/ListCollection.d.ts +5 -0
  28. package/dist/collections/ListCollection.d.ts.map +1 -0
  29. package/dist/collections/createListState.d.ts +2 -6
  30. package/dist/collections/createListState.d.ts.map +1 -0
  31. package/dist/collections/createMenuState.d.ts +30 -13
  32. package/dist/collections/createMenuState.d.ts.map +1 -0
  33. package/dist/collections/createSelectionState.d.ts +2 -5
  34. package/dist/collections/createSelectionState.d.ts.map +1 -0
  35. package/dist/collections/getChildNodes.d.ts +6 -3
  36. package/dist/collections/getChildNodes.d.ts.map +1 -0
  37. package/dist/collections/index.d.ts +2 -1
  38. package/dist/collections/index.d.ts.map +1 -0
  39. package/dist/collections/types.d.ts +36 -2
  40. package/dist/collections/types.d.ts.map +1 -0
  41. package/dist/color/Color.d.ts +7 -1
  42. package/dist/color/Color.d.ts.map +1 -0
  43. package/dist/color/createColorAreaState.d.ts +2 -5
  44. package/dist/color/createColorAreaState.d.ts.map +1 -0
  45. package/dist/color/createColorFieldState.d.ts +2 -5
  46. package/dist/color/createColorFieldState.d.ts.map +1 -0
  47. package/dist/color/createColorSliderState.d.ts +2 -5
  48. package/dist/color/createColorSliderState.d.ts.map +1 -0
  49. package/dist/color/createColorWheelState.d.ts +2 -5
  50. package/dist/color/createColorWheelState.d.ts.map +1 -0
  51. package/dist/color/getColorChannels.d.ts +3 -0
  52. package/dist/color/getColorChannels.d.ts.map +1 -0
  53. package/dist/color/index.d.ts +2 -1
  54. package/dist/color/index.d.ts.map +1 -0
  55. package/dist/color/intl/index.d.ts +1 -0
  56. package/dist/color/intl/index.d.ts.map +1 -0
  57. package/dist/color/types.d.ts +2 -1
  58. package/dist/color/types.d.ts.map +1 -0
  59. package/dist/combobox/createComboBoxState.d.ts +4 -8
  60. package/dist/combobox/createComboBoxState.d.ts.map +1 -0
  61. package/dist/combobox/index.d.ts +1 -0
  62. package/dist/combobox/index.d.ts.map +1 -0
  63. package/dist/data/createAsyncList.d.ts +1 -7
  64. package/dist/data/createAsyncList.d.ts.map +1 -0
  65. package/dist/data/createListData.d.ts +1 -6
  66. package/dist/data/createListData.d.ts.map +1 -0
  67. package/dist/data/createTreeData.d.ts +1 -6
  68. package/dist/data/createTreeData.d.ts.map +1 -0
  69. package/dist/data/index.d.ts +1 -0
  70. package/dist/data/index.d.ts.map +1 -0
  71. package/dist/datepicker/index.d.ts +1 -0
  72. package/dist/datepicker/index.d.ts.map +1 -0
  73. package/dist/disclosure/createDisclosureState.d.ts +2 -5
  74. package/dist/disclosure/createDisclosureState.d.ts.map +1 -0
  75. package/dist/disclosure/index.d.ts +1 -0
  76. package/dist/disclosure/index.d.ts.map +1 -0
  77. package/dist/dnd/createDragState.d.ts +2 -6
  78. package/dist/dnd/createDragState.d.ts.map +1 -0
  79. package/dist/dnd/createDraggableCollectionState.d.ts +39 -10
  80. package/dist/dnd/createDraggableCollectionState.d.ts.map +1 -0
  81. package/dist/dnd/createDropState.d.ts +2 -6
  82. package/dist/dnd/createDropState.d.ts.map +1 -0
  83. package/dist/dnd/createDroppableCollectionState.d.ts +28 -11
  84. package/dist/dnd/createDroppableCollectionState.d.ts.map +1 -0
  85. package/dist/dnd/index.d.ts +3 -2
  86. package/dist/dnd/index.d.ts.map +1 -0
  87. package/dist/dnd/types.d.ts +17 -0
  88. package/dist/dnd/types.d.ts.map +1 -0
  89. package/dist/flags/flags.d.ts +5 -0
  90. package/dist/flags/flags.d.ts.map +1 -0
  91. package/dist/form/createFormValidationState.d.ts +2 -9
  92. package/{src → dist}/form/createFormValidationState.d.ts.map +1 -1
  93. package/dist/form/index.d.ts +1 -0
  94. package/dist/form/index.d.ts.map +1 -0
  95. package/dist/grid/createGridState.d.ts +3 -2
  96. package/dist/grid/createGridState.d.ts.map +1 -0
  97. package/dist/grid/index.d.ts +1 -0
  98. package/dist/grid/index.d.ts.map +1 -0
  99. package/dist/grid/types.d.ts +23 -1
  100. package/dist/grid/types.d.ts.map +1 -0
  101. package/dist/index.d.ts +4 -2
  102. package/dist/index.d.ts.map +1 -0
  103. package/dist/index.js +2030 -593
  104. package/dist/index.js.map +1 -1
  105. package/dist/menu/index.d.ts +2 -1
  106. package/dist/menu/index.d.ts.map +1 -0
  107. package/dist/numberfield/createNumberFieldState.d.ts +31 -6
  108. package/dist/numberfield/createNumberFieldState.d.ts.map +1 -0
  109. package/dist/numberfield/index.d.ts +1 -0
  110. package/dist/numberfield/index.d.ts.map +1 -0
  111. package/dist/overlays/createOverlayTriggerState.d.ts +12 -1
  112. package/dist/overlays/createOverlayTriggerState.d.ts.map +1 -0
  113. package/dist/overlays/index.d.ts +1 -0
  114. package/dist/overlays/index.d.ts.map +1 -0
  115. package/dist/private/flags/flags.js +26 -0
  116. package/dist/private/flags/flags.js.map +1 -0
  117. package/dist/radio/createRadioGroupState.d.ts +1 -0
  118. package/dist/radio/createRadioGroupState.d.ts.map +1 -0
  119. package/dist/radio/index.d.ts +1 -0
  120. package/dist/radio/index.d.ts.map +1 -0
  121. package/dist/searchfield/createSearchFieldState.d.ts +2 -5
  122. package/dist/searchfield/createSearchFieldState.d.ts.map +1 -0
  123. package/dist/searchfield/index.d.ts +1 -0
  124. package/dist/searchfield/index.d.ts.map +1 -0
  125. package/dist/select/createSelectState.d.ts +17 -6
  126. package/dist/select/createSelectState.d.ts.map +1 -0
  127. package/dist/select/index.d.ts +1 -0
  128. package/dist/select/index.d.ts.map +1 -0
  129. package/dist/selection/Selection.d.ts +2 -1
  130. package/dist/selection/Selection.d.ts.map +1 -0
  131. package/dist/selection/SelectionManager.d.ts +1 -19
  132. package/dist/selection/SelectionManager.d.ts.map +1 -0
  133. package/dist/selection/createMultipleSelectionState.d.ts +2 -13
  134. package/dist/selection/createMultipleSelectionState.d.ts.map +1 -0
  135. package/dist/selection/index.d.ts +1 -0
  136. package/dist/selection/index.d.ts.map +1 -0
  137. package/dist/slider/createSliderState.d.ts +2 -5
  138. package/dist/slider/createSliderState.d.ts.map +1 -0
  139. package/dist/slider/index.d.ts +1 -0
  140. package/dist/slider/index.d.ts.map +1 -0
  141. package/dist/ssr/index.d.ts +2 -7
  142. package/dist/ssr/index.d.ts.map +1 -0
  143. package/dist/steplist/createStepListState.d.ts +2 -5
  144. package/dist/steplist/createStepListState.d.ts.map +1 -0
  145. package/dist/steplist/index.d.ts +1 -0
  146. package/dist/steplist/index.d.ts.map +1 -0
  147. package/dist/table/TableCollection.d.ts +1 -0
  148. package/dist/table/TableCollection.d.ts.map +1 -0
  149. package/dist/table/createTableColumnResizeState.d.ts +2 -9
  150. package/dist/table/createTableColumnResizeState.d.ts.map +1 -0
  151. package/dist/table/createTableState.d.ts +2 -5
  152. package/dist/table/createTableState.d.ts.map +1 -0
  153. package/dist/table/createTreeGridState.d.ts +2 -8
  154. package/dist/table/createTreeGridState.d.ts.map +1 -0
  155. package/dist/table/index.d.ts +1 -0
  156. package/dist/table/index.d.ts.map +1 -0
  157. package/dist/table/types.d.ts +35 -1
  158. package/dist/table/types.d.ts.map +1 -0
  159. package/dist/tabs/createTabListState.d.ts +2 -5
  160. package/dist/tabs/createTabListState.d.ts.map +1 -0
  161. package/dist/tabs/index.d.ts +1 -0
  162. package/dist/tabs/index.d.ts.map +1 -0
  163. package/dist/textfield/createTextFieldState.d.ts +1 -0
  164. package/dist/textfield/createTextFieldState.d.ts.map +1 -0
  165. package/dist/textfield/index.d.ts +1 -0
  166. package/dist/textfield/index.d.ts.map +1 -0
  167. package/dist/toast/createToastState.d.ts +2 -5
  168. package/dist/toast/createToastState.d.ts.map +1 -0
  169. package/dist/toast/index.d.ts +1 -0
  170. package/dist/toast/index.d.ts.map +1 -0
  171. package/dist/toggle/createToggleGroupState.d.ts +1 -0
  172. package/dist/toggle/createToggleGroupState.d.ts.map +1 -0
  173. package/dist/toggle/createToggleState.d.ts +1 -0
  174. package/dist/toggle/createToggleState.d.ts.map +1 -0
  175. package/dist/toggle/index.d.ts +1 -0
  176. package/dist/toggle/index.d.ts.map +1 -0
  177. package/dist/tokenfield/TokenFieldValue.d.ts +72 -0
  178. package/dist/tokenfield/TokenFieldValue.d.ts.map +1 -0
  179. package/dist/tokenfield/createTokenFieldState.d.ts +33 -0
  180. package/dist/tokenfield/createTokenFieldState.d.ts.map +1 -0
  181. package/dist/tokenfield/index.d.ts +3 -0
  182. package/dist/tokenfield/index.d.ts.map +1 -0
  183. package/dist/tooltip/createTooltipTriggerState.d.ts +9 -8
  184. package/dist/tooltip/createTooltipTriggerState.d.ts.map +1 -0
  185. package/dist/tooltip/index.d.ts +1 -0
  186. package/dist/tooltip/index.d.ts.map +1 -0
  187. package/dist/tree/TreeCollection.d.ts +1 -0
  188. package/dist/tree/TreeCollection.d.ts.map +1 -0
  189. package/dist/tree/createTreeState.d.ts +2 -7
  190. package/{src → dist}/tree/createTreeState.d.ts.map +1 -1
  191. package/dist/tree/index.d.ts +1 -0
  192. package/dist/tree/index.d.ts.map +1 -0
  193. package/dist/tree/types.d.ts +19 -1
  194. package/dist/tree/types.d.ts.map +1 -0
  195. package/dist/utils/index.d.ts +3 -1
  196. package/dist/utils/index.d.ts.map +1 -0
  197. package/dist/utils/owner.d.ts +9 -0
  198. package/dist/utils/owner.d.ts.map +1 -0
  199. package/dist/utils/reactivity.d.ts +19 -0
  200. package/dist/utils/reactivity.d.ts.map +1 -0
  201. package/package.json +21 -9
  202. package/src/autocomplete/createAutocompleteState.ts +18 -4
  203. package/src/calendar/IncompleteDate.ts +15 -1
  204. package/src/calendar/createCalendarState.ts +194 -79
  205. package/src/calendar/createDateFieldState.ts +45 -31
  206. package/src/calendar/createDatePickerState.ts +32 -14
  207. package/src/calendar/createRangeCalendarState.ts +134 -73
  208. package/src/calendar/createTimeFieldState.ts +25 -6
  209. package/src/calendar/intl/index.ts +37 -2
  210. package/src/checkbox/createCheckboxGroupState.ts +29 -13
  211. package/src/collections/ListCollection.ts +31 -0
  212. package/src/collections/createListState.ts +23 -6
  213. package/src/collections/createMenuState.ts +59 -14
  214. package/src/collections/createSelectionState.ts +32 -12
  215. package/src/collections/getChildNodes.ts +20 -3
  216. package/src/collections/index.ts +2 -0
  217. package/src/collections/types.ts +35 -2
  218. package/src/color/Color.ts +61 -22
  219. package/src/color/createColorAreaState.ts +29 -4
  220. package/src/color/createColorFieldState.ts +37 -11
  221. package/src/color/createColorSliderState.ts +36 -7
  222. package/src/color/createColorWheelState.ts +20 -4
  223. package/src/color/getColorChannels.ts +16 -0
  224. package/src/color/index.ts +1 -0
  225. package/src/color/intl/index.ts +38 -3
  226. package/src/color/types.ts +1 -1
  227. package/src/combobox/createComboBoxState.ts +178 -195
  228. package/src/data/createAsyncList.ts +22 -2
  229. package/src/data/createListData.ts +19 -2
  230. package/src/data/createTreeData.ts +19 -3
  231. package/src/disclosure/createDisclosureState.ts +40 -19
  232. package/src/dnd/createDragState.ts +22 -4
  233. package/src/dnd/createDraggableCollectionState.ts +137 -10
  234. package/src/dnd/createDropState.ts +21 -3
  235. package/src/dnd/createDroppableCollectionState.ts +117 -11
  236. package/src/dnd/index.ts +4 -0
  237. package/src/dnd/types.ts +16 -0
  238. package/src/flags/flags.ts +25 -0
  239. package/src/form/createFormValidationState.ts +54 -36
  240. package/src/grid/createGridState.ts +187 -109
  241. package/src/grid/types.ts +22 -1
  242. package/src/index.ts +15 -0
  243. package/src/menu/index.ts +2 -0
  244. package/src/numberfield/createNumberFieldState.ts +153 -66
  245. package/src/overlays/createOverlayTriggerState.ts +31 -4
  246. package/src/radio/createRadioGroupState.ts +19 -5
  247. package/src/searchfield/createSearchFieldState.ts +18 -3
  248. package/src/select/createSelectState.ts +73 -8
  249. package/src/selection/Selection.ts +15 -1
  250. package/src/selection/SelectionManager.ts +14 -0
  251. package/src/selection/createMultipleSelectionState.ts +44 -25
  252. package/src/slider/createSliderState.ts +20 -5
  253. package/src/ssr/index.ts +27 -4
  254. package/src/steplist/createStepListState.ts +38 -17
  255. package/src/table/TableCollection.ts +14 -0
  256. package/src/table/createTableColumnResizeState.ts +20 -3
  257. package/src/table/createTableState.ts +22 -1
  258. package/src/table/createTreeGridState.ts +21 -4
  259. package/src/table/types.ts +36 -3
  260. package/src/tabs/createTabListState.ts +77 -34
  261. package/src/textfield/createTextFieldState.ts +17 -3
  262. package/src/toast/createToastState.ts +28 -3
  263. package/src/toggle/createToggleGroupState.ts +20 -5
  264. package/src/toggle/createToggleState.ts +19 -4
  265. package/src/tokenfield/TokenFieldValue.ts +440 -0
  266. package/src/tokenfield/createTokenFieldState.ts +88 -0
  267. package/src/tokenfield/index.ts +14 -0
  268. package/src/tooltip/createTooltipTriggerState.ts +49 -13
  269. package/src/tree/TreeCollection.ts +14 -0
  270. package/src/tree/createTreeState.ts +62 -35
  271. package/src/tree/types.ts +18 -1
  272. package/src/utils/index.ts +9 -1
  273. package/src/utils/owner.ts +20 -0
  274. package/src/utils/reactivity.ts +45 -1
  275. package/src/autocomplete/createAutocompleteState.d.ts +0 -48
  276. package/src/autocomplete/createAutocompleteState.d.ts.map +0 -1
  277. package/src/autocomplete/index.d.ts +0 -6
  278. package/src/autocomplete/index.d.ts.map +0 -1
  279. package/src/calendar/createCalendarState.d.ts +0 -152
  280. package/src/calendar/createCalendarState.d.ts.map +0 -1
  281. package/src/calendar/createDateFieldState.d.ts +0 -145
  282. package/src/calendar/createDateFieldState.d.ts.map +0 -1
  283. package/src/calendar/createRangeCalendarState.d.ts +0 -171
  284. package/src/calendar/createRangeCalendarState.d.ts.map +0 -1
  285. package/src/calendar/createTimeFieldState.d.ts +0 -97
  286. package/src/calendar/createTimeFieldState.d.ts.map +0 -1
  287. package/src/calendar/index.d.ts +0 -80
  288. package/src/calendar/index.d.ts.map +0 -1
  289. package/src/checkbox/createCheckboxGroupState.d.ts +0 -73
  290. package/src/checkbox/createCheckboxGroupState.d.ts.map +0 -1
  291. package/src/checkbox/index.d.ts +0 -6
  292. package/src/checkbox/index.d.ts.map +0 -1
  293. package/src/collections/ListCollection.d.ts +0 -40
  294. package/src/collections/ListCollection.d.ts.map +0 -1
  295. package/src/collections/createListState.d.ts +0 -94
  296. package/src/collections/createListState.d.ts.map +0 -1
  297. package/src/collections/createMenuState.d.ts +0 -55
  298. package/src/collections/createMenuState.d.ts.map +0 -1
  299. package/src/collections/createSelectionState.d.ts +0 -89
  300. package/src/collections/createSelectionState.d.ts.map +0 -1
  301. package/src/collections/index.d.ts +0 -38
  302. package/src/collections/index.d.ts.map +0 -1
  303. package/src/collections/types.d.ts +0 -147
  304. package/src/collections/types.d.ts.map +0 -1
  305. package/src/color/Color.d.ts +0 -43
  306. package/src/color/Color.d.ts.map +0 -1
  307. package/src/color/createColorAreaState.d.ts +0 -78
  308. package/src/color/createColorAreaState.d.ts.map +0 -1
  309. package/src/color/createColorFieldState.d.ts +0 -57
  310. package/src/color/createColorFieldState.d.ts.map +0 -1
  311. package/src/color/createColorSliderState.d.ts +0 -69
  312. package/src/color/createColorSliderState.d.ts.map +0 -1
  313. package/src/color/createColorWheelState.d.ts +0 -53
  314. package/src/color/createColorWheelState.d.ts.map +0 -1
  315. package/src/color/index.d.ts +0 -39
  316. package/src/color/index.d.ts.map +0 -1
  317. package/src/color/types.d.ts +0 -111
  318. package/src/color/types.d.ts.map +0 -1
  319. package/src/combobox/createComboBoxState.d.ts +0 -127
  320. package/src/combobox/createComboBoxState.d.ts.map +0 -1
  321. package/src/combobox/index.d.ts +0 -13
  322. package/src/combobox/index.d.ts.map +0 -1
  323. package/src/disclosure/createDisclosureState.d.ts +0 -68
  324. package/src/disclosure/createDisclosureState.d.ts.map +0 -1
  325. package/src/disclosure/index.d.ts +0 -10
  326. package/src/disclosure/index.d.ts.map +0 -1
  327. package/src/dnd/createDragState.d.ts +0 -68
  328. package/src/dnd/createDragState.d.ts.map +0 -1
  329. package/src/dnd/createDraggableCollectionState.d.ts +0 -68
  330. package/src/dnd/createDraggableCollectionState.d.ts.map +0 -1
  331. package/src/dnd/createDropState.d.ts +0 -80
  332. package/src/dnd/createDropState.d.ts.map +0 -1
  333. package/src/dnd/createDroppableCollectionState.d.ts +0 -107
  334. package/src/dnd/createDroppableCollectionState.d.ts.map +0 -1
  335. package/src/dnd/index.d.ts +0 -60
  336. package/src/dnd/index.d.ts.map +0 -1
  337. package/src/dnd/types.d.ts +0 -277
  338. package/src/dnd/types.d.ts.map +0 -1
  339. package/src/form/createFormValidationState.d.ts +0 -102
  340. package/src/form/index.d.ts +0 -16
  341. package/src/form/index.d.ts.map +0 -1
  342. package/src/grid/createGridState.d.ts +0 -15
  343. package/src/grid/createGridState.d.ts.map +0 -1
  344. package/src/grid/index.d.ts +0 -7
  345. package/src/grid/index.d.ts.map +0 -1
  346. package/src/grid/types.d.ts +0 -163
  347. package/src/grid/types.d.ts.map +0 -1
  348. package/src/index.d.ts +0 -311
  349. package/src/index.d.ts.map +0 -1
  350. package/src/numberfield/createNumberFieldState.d.ts +0 -67
  351. package/src/numberfield/createNumberFieldState.d.ts.map +0 -1
  352. package/src/numberfield/index.d.ts +0 -6
  353. package/src/numberfield/index.d.ts.map +0 -1
  354. package/src/overlays/createOverlayTriggerState.d.ts +0 -34
  355. package/src/overlays/createOverlayTriggerState.d.ts.map +0 -1
  356. package/src/overlays/index.d.ts +0 -6
  357. package/src/overlays/index.d.ts.map +0 -1
  358. package/src/radio/createRadioGroupState.d.ts +0 -79
  359. package/src/radio/createRadioGroupState.d.ts.map +0 -1
  360. package/src/radio/index.d.ts +0 -7
  361. package/src/radio/index.d.ts.map +0 -1
  362. package/src/searchfield/createSearchFieldState.d.ts +0 -27
  363. package/src/searchfield/createSearchFieldState.d.ts.map +0 -1
  364. package/src/searchfield/index.d.ts +0 -3
  365. package/src/searchfield/index.d.ts.map +0 -1
  366. package/src/select/createSelectState.d.ts +0 -75
  367. package/src/select/createSelectState.d.ts.map +0 -1
  368. package/src/select/index.d.ts +0 -2
  369. package/src/select/index.d.ts.map +0 -1
  370. package/src/slider/createSliderState.d.ts +0 -72
  371. package/src/slider/createSliderState.d.ts.map +0 -1
  372. package/src/slider/index.d.ts +0 -3
  373. package/src/slider/index.d.ts.map +0 -1
  374. package/src/ssr/index.d.ts +0 -28
  375. package/src/ssr/index.d.ts.map +0 -1
  376. package/src/table/TableCollection.d.ts +0 -54
  377. package/src/table/TableCollection.d.ts.map +0 -1
  378. package/src/table/createTableState.d.ts +0 -15
  379. package/src/table/createTableState.d.ts.map +0 -1
  380. package/src/table/index.d.ts +0 -18
  381. package/src/table/index.d.ts.map +0 -1
  382. package/src/table/types.d.ts +0 -145
  383. package/src/table/types.d.ts.map +0 -1
  384. package/src/tabs/createTabListState.d.ts +0 -70
  385. package/src/tabs/createTabListState.d.ts.map +0 -1
  386. package/src/tabs/index.d.ts +0 -8
  387. package/src/tabs/index.d.ts.map +0 -1
  388. package/src/textfield/createTextFieldState.d.ts +0 -32
  389. package/src/textfield/createTextFieldState.d.ts.map +0 -1
  390. package/src/textfield/index.d.ts +0 -6
  391. package/src/textfield/index.d.ts.map +0 -1
  392. package/src/toast/createToastState.d.ts +0 -129
  393. package/src/toast/createToastState.d.ts.map +0 -1
  394. package/src/toast/index.d.ts +0 -12
  395. package/src/toast/index.d.ts.map +0 -1
  396. package/src/toggle/createToggleState.d.ts +0 -34
  397. package/src/toggle/createToggleState.d.ts.map +0 -1
  398. package/src/toggle/index.d.ts +0 -2
  399. package/src/toggle/index.d.ts.map +0 -1
  400. package/src/tooltip/createTooltipTriggerState.d.ts +0 -39
  401. package/src/tooltip/createTooltipTriggerState.d.ts.map +0 -1
  402. package/src/tooltip/index.d.ts +0 -7
  403. package/src/tooltip/index.d.ts.map +0 -1
  404. package/src/tree/TreeCollection.d.ts +0 -43
  405. package/src/tree/TreeCollection.d.ts.map +0 -1
  406. package/src/tree/createTreeState.d.ts +0 -17
  407. package/src/tree/index.d.ts +0 -13
  408. package/src/tree/index.d.ts.map +0 -1
  409. package/src/tree/types.d.ts +0 -162
  410. package/src/tree/types.d.ts.map +0 -1
  411. package/src/utils/index.d.ts +0 -2
  412. package/src/utils/index.d.ts.map +0 -1
  413. package/src/utils/reactivity.d.ts +0 -28
  414. package/src/utils/reactivity.d.ts.map +0 -1
package/src/index.ts CHANGED
@@ -15,6 +15,18 @@ 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 TokenFieldValueOptions,
28
+ } from "./tokenfield";
29
+
18
30
  export {
19
31
  createCheckboxGroupState,
20
32
  type CheckboxGroupProps,
@@ -67,6 +79,8 @@ export {
67
79
  createMenuTriggerState,
68
80
  type MenuStateProps,
69
81
  type MenuState,
82
+ type MenuTriggerType,
83
+ type MenuTriggerProps,
70
84
  type MenuTriggerStateProps,
71
85
  type MenuTriggerState,
72
86
  } from "./collections";
@@ -355,6 +369,7 @@ export {
355
369
  type DropStateOptions,
356
370
  type DropState,
357
371
  createDraggableCollectionState,
372
+ getKeysForDrag,
358
373
  type DraggableCollectionStateOptions,
359
374
  type DraggableCollectionState,
360
375
  createDroppableCollectionState,
package/src/menu/index.ts CHANGED
@@ -10,6 +10,8 @@ export {
10
10
  createMenuTriggerState,
11
11
  type MenuStateProps,
12
12
  type MenuState,
13
+ type MenuTriggerType,
14
+ type MenuTriggerProps,
13
15
  type MenuTriggerStateProps,
14
16
  type MenuTriggerState,
15
17
  } from "../collections/createMenuState";
@@ -1,10 +1,31 @@
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/numberfield/useNumberFieldState.ts
14
+
1
15
  /**
2
16
  * State management for NumberField.
3
17
  * Based on @react-stately/numberfield useNumberFieldState.
4
18
  */
5
19
 
6
- import { createSignal, createMemo, type Accessor } from "solid-js";
7
- import { access, type MaybeAccessor } from "../utils";
20
+ import { createMemo } from "solid-js";
21
+ import type { Accessor } from "solid-js";
22
+ import { NumberFormatter, NumberParser } from "@internationalized/number";
23
+ import { access, createInternalSignal, readNow, type MaybeAccessor } from "../utils";
24
+ import {
25
+ createFormValidationState,
26
+ type FormValidationState,
27
+ type ValidationFunction,
28
+ } from "../form";
8
29
 
9
30
  export interface NumberFieldStateProps {
10
31
  /** The current value (controlled). */
@@ -27,9 +48,30 @@ export interface NumberFieldStateProps {
27
48
  locale?: string;
28
49
  /** Number format options. */
29
50
  formatOptions?: Intl.NumberFormatOptions;
51
+ /** Whether the number field is invalid (controlled). */
52
+ isInvalid?: boolean;
53
+ /** @deprecated Use isInvalid instead. */
54
+ validationState?: "valid" | "invalid";
55
+ /** Custom validation function. */
56
+ validate?: ValidationFunction<number>;
57
+ /**
58
+ * Whether to use native HTML form validation or ARIA validation semantics.
59
+ * @default "native"
60
+ */
61
+ validationBehavior?: "aria" | "native";
62
+ /** Field name(s) for server error lookup. */
63
+ name?: string | string[];
64
+ /**
65
+ * Controls the behavior of the number field when the user blurs the field after
66
+ * editing. `'snap'` clamps to min/max and snaps to step. `'validate'` leaves the
67
+ * value and reports native range/step validity.
68
+ *
69
+ * @default "snap"
70
+ */
71
+ commitBehavior?: "snap" | "validate";
30
72
  }
31
73
 
32
- export interface NumberFieldState {
74
+ export interface NumberFieldState extends FormValidationState {
33
75
  /** The current input value as a string. */
34
76
  inputValue: Accessor<string>;
35
77
  /** The current numeric value. */
@@ -46,6 +88,12 @@ export interface NumberFieldState {
46
88
  minValue: Accessor<number | undefined>;
47
89
  /** The maximum value. */
48
90
  maxValue: Accessor<number | undefined>;
91
+ /** The configured step, or undefined when the field uses the default step. */
92
+ step: Accessor<number | undefined>;
93
+ /** The default numeric value, used on native form reset. */
94
+ defaultNumberValue: number;
95
+ /** Sets the number value and reformats the input. */
96
+ setNumberValue: (value: number) => void;
49
97
  /** Set the input value. */
50
98
  setInputValue: (value: string) => void;
51
99
  /** Validate a partial input value. */
@@ -115,64 +163,51 @@ export function createNumberFieldState(
115
163
  ): NumberFieldState {
116
164
  const getProps = () => access(props);
117
165
 
166
+ // Internal signals
167
+ const [inputValue, setInputValueInternal] = createInternalSignal<string>("");
168
+ const [numberValue, setNumberValue] = createInternalSignal<number>(NaN);
169
+
118
170
  // Get locale and formatter
119
171
  const locale = () => getProps().locale ?? "en-US";
120
172
  const formatOptions = () => getProps().formatOptions ?? {};
121
173
 
122
- // Create number formatter
123
- const formatter = createMemo(() => {
124
- return new Intl.NumberFormat(locale(), formatOptions());
174
+ const numberParser = createMemo(() => {
175
+ return new NumberParser(locale(), formatOptions());
125
176
  });
126
177
 
127
- // Create number parser (simplified - real implementation would be more robust)
128
- const parseNumber = (value: string): number => {
129
- if (!value || value === "" || value === "-") return NaN;
130
-
131
- // Handle locale-specific decimal separators
132
- const opts = formatOptions();
133
- const testNumber = formatter().format(1.1);
134
- const decimalSeparator = testNumber.charAt(1);
135
-
136
- // Normalize the input
137
- let normalized = value;
138
- if (decimalSeparator !== ".") {
139
- normalized = normalized.replace(decimalSeparator, ".");
140
- }
141
-
142
- // Remove grouping separators and currency symbols
143
- normalized = normalized.replace(/[^\d.-]/g, "");
144
-
145
- const parsed = parseFloat(normalized);
146
- if (isNaN(parsed)) return parsed;
178
+ const numberingSystem = createMemo(() => {
179
+ return numberParser().getNumberingSystem(inputValue());
180
+ });
147
181
 
148
- if (opts.style === "percent") {
149
- return parsed / 100;
150
- }
182
+ const formatter = createMemo(() => {
183
+ return new NumberFormatter(locale(), {
184
+ ...formatOptions(),
185
+ numberingSystem: numberingSystem(),
186
+ });
187
+ });
151
188
 
152
- return parsed;
189
+ const parseNumber = (value: string): number => {
190
+ return numberParser().parse(value);
153
191
  };
154
192
 
155
193
  // Format a number to string
156
194
  const formatNumber = (value: number): string => {
157
- if (isNaN(value)) return "";
195
+ if (isNaN(value) || value === null) return "";
158
196
  return formatter().format(value);
159
197
  };
160
198
 
161
199
  // Determine step value
162
200
  const hasCustomStep = createMemo(() => isValidStep(getProps().step));
201
+ const shouldSnap = () => (getProps().commitBehavior ?? "snap") === "snap";
163
202
 
164
203
  const step = createMemo(() => {
165
204
  const p = getProps();
166
205
  if (hasCustomStep()) return p.step as number;
167
- // Default step for percent is 0.01
168
- if (p.formatOptions?.style === "percent") return 0.01;
206
+ const resolved = formatter().resolvedOptions();
207
+ if (resolved.style === "percent") return 0.01;
169
208
  return 1;
170
209
  });
171
210
 
172
- // Internal signals
173
- const [inputValue, setInputValueInternal] = createSignal<string>("");
174
- const [numberValue, setNumberValue] = createSignal<number>(NaN);
175
-
176
211
  const applyConstraints = (value: number): number => {
177
212
  const p = getProps();
178
213
  if (isNaN(value)) return NaN;
@@ -184,15 +219,30 @@ export function createNumberFieldState(
184
219
  return clamp(value, p.minValue, p.maxValue);
185
220
  };
186
221
 
222
+ let initialNumberValue = NaN;
223
+ let capturedDefaultNumberValue = NaN;
224
+
225
+ const constrainForCommit = (value: number): number => {
226
+ if (!shouldSnap()) return value;
227
+ return applyConstraints(value);
228
+ };
229
+
187
230
  // Initialize from props
188
231
  const initValue = () => {
189
232
  const p = getProps();
190
233
  const initial = p.value ?? p.defaultValue;
191
- if (initial != null) {
192
- const constrained = applyConstraints(initial);
193
- setNumberValue(constrained);
194
- setInputValueInternal(formatNumber(constrained));
234
+ if (initial != null && !isNaN(initial)) {
235
+ const next = constrainForCommit(initial);
236
+ setNumberValue(next);
237
+ setInputValueInternal(formatNumber(next));
238
+ initialNumberValue = next;
239
+ } else {
240
+ initialNumberValue = NaN;
195
241
  }
242
+ const defaultValue = p.defaultValue ?? NaN;
243
+ capturedDefaultNumberValue = isNaN(defaultValue)
244
+ ? initialNumberValue
245
+ : constrainForCommit(defaultValue);
196
246
  };
197
247
 
198
248
  // Call init on first access
@@ -209,7 +259,7 @@ export function createNumberFieldState(
209
259
  ensureInitialized();
210
260
  const p = getProps();
211
261
  if (p.value !== undefined) {
212
- return applyConstraints(p.value);
262
+ return constrainForCommit(p.value);
213
263
  }
214
264
  return numberValue();
215
265
  });
@@ -222,34 +272,45 @@ export function createNumberFieldState(
222
272
  return;
223
273
  }
224
274
 
225
- const constrained = applyConstraints(p.value);
226
- if (lastControlledValue === undefined || !Object.is(lastControlledValue, constrained)) {
227
- lastControlledValue = constrained;
228
- setNumberValue(constrained);
229
- setInputValueInternal(formatNumber(constrained));
275
+ const next = constrainForCommit(p.value);
276
+ if (lastControlledValue === undefined || !Object.is(lastControlledValue, next)) {
277
+ lastControlledValue = next;
278
+ setNumberValue(next);
279
+ setInputValueInternal(formatNumber(next));
230
280
  }
231
281
  };
232
282
 
233
283
  const parsedInputValue = () => {
234
284
  ensureInitialized();
235
285
  syncControlledValue();
236
- return parseNumber(inputValue());
286
+ return parseNumber(readNow(inputValue));
237
287
  };
238
288
 
289
+ const validation = createFormValidationState({
290
+ get value() {
291
+ ensureInitialized();
292
+ return actualNumberValue();
293
+ },
294
+ get isInvalid() {
295
+ return getProps().isInvalid;
296
+ },
297
+ get validationState() {
298
+ return getProps().validationState;
299
+ },
300
+ get validate() {
301
+ return getProps().validate;
302
+ },
303
+ get name() {
304
+ return getProps().name;
305
+ },
306
+ get validationBehavior() {
307
+ return getProps().validationBehavior ?? "native";
308
+ },
309
+ });
310
+
239
311
  // Validate partial input
240
312
  const validate = (value: string): boolean => {
241
- if (value === "" || value === "-") return true;
242
-
243
- // Allow partial decimal input like "1."
244
- const opts = formatOptions();
245
- const testNumber = formatter().format(1.1);
246
- const decimalSeparator = testNumber.charAt(1);
247
-
248
- // Check if it's a valid partial number
249
- const pattern = new RegExp(
250
- `^-?\\d*${decimalSeparator === "." ? "\\." : decimalSeparator}?\\d*$`,
251
- );
252
- return pattern.test(value);
313
+ return numberParser().isValidPartialNumber(value, getProps().minValue, getProps().maxValue);
253
314
  };
254
315
 
255
316
  // Set input value with validation
@@ -263,13 +324,14 @@ export function createNumberFieldState(
263
324
  const commit = () => {
264
325
  ensureInitialized();
265
326
  const p = getProps();
266
- const input = inputValue();
327
+ const input = readNow(inputValue);
267
328
 
268
329
  if (input === "" || input === "-") {
269
330
  // Clear value
270
331
  setNumberValue(NaN);
271
- setInputValueInternal(p.value === undefined ? "" : formatNumber(actualNumberValue()));
332
+ setInputValueInternal(p.value === undefined ? "" : formatNumber(readNow(actualNumberValue)));
272
333
  p.onChange?.(NaN);
334
+ validation.commitValidation();
273
335
  return;
274
336
  }
275
337
 
@@ -277,18 +339,21 @@ export function createNumberFieldState(
277
339
 
278
340
  if (isNaN(parsed)) {
279
341
  // Invalid input - revert to current value
280
- setInputValueInternal(formatNumber(actualNumberValue()));
342
+ setInputValueInternal(formatNumber(readNow(actualNumberValue)));
281
343
  return;
282
344
  }
283
345
 
284
- // Clamp and optionally snap to custom step.
285
- parsed = applyConstraints(parsed);
346
+ const previous = readNow(actualNumberValue);
347
+ parsed = constrainForCommit(parsed);
348
+ parsed = numberParser().parse(formatNumber(parsed));
286
349
 
287
- // Update state
288
350
  setNumberValue(parsed);
289
351
  setInputValueInternal(formatNumber(parsed));
290
352
 
291
353
  p.onChange?.(parsed);
354
+ if (parsed !== previous) {
355
+ validation.commitValidation();
356
+ }
292
357
  };
293
358
 
294
359
  // Check if can increment
@@ -352,6 +417,7 @@ export function createNumberFieldState(
352
417
  setNumberValue(current);
353
418
  setInputValueInternal(formatNumber(current));
354
419
  p.onChange?.(current);
420
+ validation.commitValidation();
355
421
  };
356
422
 
357
423
  // Decrement by step
@@ -365,6 +431,7 @@ export function createNumberFieldState(
365
431
  setNumberValue(current);
366
432
  setInputValueInternal(formatNumber(current));
367
433
  p.onChange?.(current);
434
+ validation.commitValidation();
368
435
  };
369
436
 
370
437
  // Set to max
@@ -380,6 +447,7 @@ export function createNumberFieldState(
380
447
  setNumberValue(snapped);
381
448
  setInputValueInternal(formatNumber(snapped));
382
449
  p.onChange?.(snapped);
450
+ validation.commitValidation();
383
451
  };
384
452
 
385
453
  // Set to min
@@ -394,9 +462,22 @@ export function createNumberFieldState(
394
462
  setNumberValue(p.minValue);
395
463
  setInputValueInternal(formatNumber(p.minValue));
396
464
  p.onChange?.(p.minValue);
465
+ validation.commitValidation();
466
+ };
467
+
468
+ const setNumberValuePublic = (value: number) => {
469
+ ensureInitialized();
470
+ setNumberValue(value);
471
+ setInputValueInternal(formatNumber(value));
472
+ getProps().onChange?.(value);
397
473
  };
398
474
 
399
475
  return {
476
+ realtimeValidation: validation.realtimeValidation,
477
+ displayValidation: validation.displayValidation,
478
+ updateValidation: validation.updateValidation,
479
+ resetValidation: validation.resetValidation,
480
+ commitValidation: validation.commitValidation,
400
481
  get inputValue() {
401
482
  ensureInitialized();
402
483
  syncControlledValue();
@@ -411,6 +492,12 @@ export function createNumberFieldState(
411
492
  isReadOnly: () => getProps().isReadOnly ?? false,
412
493
  minValue: () => getProps().minValue,
413
494
  maxValue: () => getProps().maxValue,
495
+ step: () => getProps().step,
496
+ get defaultNumberValue() {
497
+ ensureInitialized();
498
+ return capturedDefaultNumberValue;
499
+ },
500
+ setNumberValue: setNumberValuePublic,
414
501
  setInputValue,
415
502
  validate,
416
503
  commit,
@@ -1,10 +1,24 @@
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/overlays/useOverlayTriggerState.ts
14
+
1
15
  /**
2
16
  * Manages state for an overlay trigger.
3
17
  * Based on @react-stately/overlays useOverlayTriggerState.
4
18
  */
5
19
 
6
- import { createSignal, type Accessor } from "solid-js";
7
- import { access, type MaybeAccessor } from "../utils";
20
+ import type { Accessor } from "solid-js";
21
+ import { access, createInternalSignal, readNow, type MaybeAccessor } from "../utils";
8
22
 
9
23
  export interface OverlayTriggerProps {
10
24
  /** Whether the overlay is open by default (uncontrolled). */
@@ -26,6 +40,10 @@ export interface OverlayTriggerState {
26
40
  close(): void;
27
41
  /** Toggles the overlay's visibility. */
28
42
  toggle(): void;
43
+ /** Cursor position relative to the window viewport. */
44
+ readonly point: Accessor<{ x: number; y: number } | null>;
45
+ /** Sets the cursor position relative to the window viewport. */
46
+ setPoint(point: { x: number; y: number }): void;
29
47
  }
30
48
 
31
49
  /**
@@ -37,7 +55,10 @@ export function createOverlayTriggerState(
37
55
  ): OverlayTriggerState {
38
56
  const propsAccessor = () => access(props);
39
57
 
40
- const [internalOpen, setInternalOpen] = createSignal(propsAccessor().defaultOpen ?? false);
58
+ const [internalOpen, setInternalOpen] = createInternalSignal(
59
+ propsAccessor().defaultOpen ?? false,
60
+ );
61
+ const [point, setPoint] = createInternalSignal<{ x: number; y: number } | null>(null);
41
62
 
42
63
  const isOpen: Accessor<boolean> = () => {
43
64
  const p = propsAccessor();
@@ -54,7 +75,11 @@ export function createOverlayTriggerState(
54
75
 
55
76
  const open = () => setOpen(true);
56
77
  const close = () => setOpen(false);
57
- const toggle = () => setOpen(!isOpen());
78
+ const toggle = () => {
79
+ const p = propsAccessor();
80
+ const open = p.isOpen !== undefined ? p.isOpen : readNow(internalOpen);
81
+ setOpen(!open);
82
+ };
58
83
 
59
84
  return {
60
85
  isOpen,
@@ -62,5 +87,7 @@ export function createOverlayTriggerState(
62
87
  open,
63
88
  close,
64
89
  toggle,
90
+ point,
91
+ setPoint,
65
92
  };
66
93
  }
@@ -1,3 +1,17 @@
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/radio/useRadioGroupState.ts
14
+
1
15
  /**
2
16
  * Radio group state for Solid Stately
3
17
  *
@@ -7,8 +21,8 @@
7
21
  * This is a 1:1 port of @react-stately/radio's useRadioGroupState.
8
22
  */
9
23
 
10
- import { createMemo, createSignal, Accessor, untrack } from "solid-js";
11
- import { type MaybeAccessor, access } from "../utils";
24
+ import { createMemo, Accessor, untrack } from "solid-js";
25
+ import { createInternalSignal, type MaybeAccessor, access } from "../utils";
12
26
  import { createId } from "../ssr";
13
27
  import {
14
28
  createFormValidationState,
@@ -123,15 +137,15 @@ export function createRadioGroupState(props: MaybeAccessor<RadioGroupProps> = {}
123
137
 
124
138
  // Create internal signal for uncontrolled mode
125
139
  // Initialize with defaultValue only (not value, which is for controlled mode)
126
- const [internalValue, setInternalValue] = createSignal<string | null>(
140
+ const [internalValue, setInternalValue] = createInternalSignal<string | null>(
127
141
  initialProps.defaultValue ?? null,
128
142
  );
129
- const [lastFocusedValue, setLastFocusedValueInternal] = createSignal<string | null>(null);
143
+ const [lastFocusedValue, setLastFocusedValueInternal] = createInternalSignal<string | null>(null);
130
144
 
131
145
  // SolidJS-specific: Version counter for triggering DOM sync across all radios
132
146
  // This handles the case where native radio behavior causes DOM state to desync
133
147
  // from our reactive state (e.g., clicking a radio unchecks siblings in the DOM)
134
- const [syncVersion, setSyncVersion] = createSignal(0);
148
+ const [syncVersion, setSyncVersion] = createInternalSignal(0);
135
149
 
136
150
  const controlledValue = createMemo<string | null | undefined>(() => {
137
151
  const value = getProps().value;
@@ -1,10 +1,25 @@
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/searchfield/useSearchFieldState.ts
14
+
1
15
  /**
2
16
  * Creates state for a search field component.
3
17
  * Based on @react-stately/searchfield useSearchFieldState.
4
18
  */
5
19
 
6
- import { type Accessor, createSignal, createMemo } from "solid-js";
7
- import { access, type MaybeAccessor } from "../utils";
20
+ import { createMemo } from "solid-js";
21
+ import type { Accessor } from "solid-js";
22
+ import { createInternalSignal, access, type MaybeAccessor } from "../utils";
8
23
 
9
24
  export interface SearchFieldStateProps {
10
25
  /** The current value (controlled). */
@@ -32,7 +47,7 @@ export function createSearchFieldState(
32
47
 
33
48
  const isControlled = () => getProps().value !== undefined;
34
49
 
35
- const [internalValue, setInternalValue] = createSignal(getProps().defaultValue ?? "");
50
+ const [internalValue, setInternalValue] = createInternalSignal(getProps().defaultValue ?? "");
36
51
 
37
52
  const value = createMemo(() => {
38
53
  const p = getProps();