@proyecto-viviana/solidaria-components 0.5.0 → 0.7.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 (561) hide show
  1. package/LICENSE-APACHE-2.0 +201 -0
  2. package/NOTICE +91 -0
  3. package/README.md +4 -7
  4. package/dist/ActionBar.d.ts +2 -10
  5. package/dist/ActionBar.d.ts.map +1 -1
  6. package/dist/ActionBar.js +95 -59
  7. package/dist/ActionBar.js.map +1 -1
  8. package/dist/ActionBar.jsx +42 -15
  9. package/dist/ActionBar.jsx.map +1 -1
  10. package/dist/ActionGroup.d.ts +1 -12
  11. package/dist/ActionGroup.d.ts.map +1 -1
  12. package/dist/ActionGroup.js +66 -44
  13. package/dist/ActionGroup.js.map +1 -1
  14. package/dist/ActionGroup.jsx +25 -10
  15. package/dist/ActionGroup.jsx.map +1 -1
  16. package/dist/Alert.d.ts +4 -1
  17. package/dist/Alert.d.ts.map +1 -1
  18. package/dist/Alert.js +25 -17
  19. package/dist/Alert.js.map +1 -1
  20. package/dist/Alert.jsx +9 -5
  21. package/dist/Alert.jsx.map +1 -1
  22. package/dist/Autocomplete.d.ts +2 -9
  23. package/dist/Autocomplete.d.ts.map +1 -1
  24. package/dist/Autocomplete.js +18 -5
  25. package/dist/Autocomplete.js.map +1 -1
  26. package/dist/Autocomplete.jsx +20 -7
  27. package/dist/Autocomplete.jsx.map +1 -1
  28. package/dist/Breadcrumbs.d.ts +2 -7
  29. package/dist/Breadcrumbs.d.ts.map +1 -1
  30. package/dist/Breadcrumbs.js +71 -51
  31. package/dist/Breadcrumbs.js.map +1 -1
  32. package/dist/Breadcrumbs.jsx +25 -12
  33. package/dist/Breadcrumbs.jsx.map +1 -1
  34. package/dist/Button.d.ts +1 -7
  35. package/dist/Button.d.ts.map +1 -1
  36. package/dist/Button.js +125 -72
  37. package/dist/Button.js.map +1 -1
  38. package/dist/Button.jsx +105 -43
  39. package/dist/Button.jsx.map +1 -1
  40. package/dist/Calendar.d.ts +1 -7
  41. package/dist/Calendar.d.ts.map +1 -1
  42. package/dist/Calendar.js +297 -221
  43. package/dist/Calendar.js.map +1 -1
  44. package/dist/Calendar.jsx +52 -32
  45. package/dist/Calendar.jsx.map +1 -1
  46. package/dist/CalendarPicker.d.ts +1 -10
  47. package/dist/CalendarPicker.d.ts.map +1 -1
  48. package/dist/CalendarPicker.js +12 -0
  49. package/dist/CalendarPicker.js.map +1 -1
  50. package/dist/CalendarPicker.jsx +12 -0
  51. package/dist/CalendarPicker.jsx.map +1 -1
  52. package/dist/Checkbox.d.ts +2 -7
  53. package/dist/Checkbox.d.ts.map +1 -1
  54. package/dist/Checkbox.js +332 -270
  55. package/dist/Checkbox.js.map +1 -1
  56. package/dist/Checkbox.jsx +70 -77
  57. package/dist/Checkbox.jsx.map +1 -1
  58. package/dist/Collection.d.ts +33 -7
  59. package/dist/Collection.d.ts.map +1 -1
  60. package/dist/Collection.js +128 -74
  61. package/dist/Collection.js.map +1 -1
  62. package/dist/Collection.jsx +46 -7
  63. package/dist/Collection.jsx.map +1 -1
  64. package/dist/Color.d.ts +15 -20
  65. package/dist/Color.d.ts.map +1 -1
  66. package/dist/Color.js +572 -334
  67. package/dist/Color.js.map +1 -1
  68. package/dist/Color.jsx +205 -85
  69. package/dist/Color.jsx.map +1 -1
  70. package/dist/ColorEditor.d.ts +3 -1
  71. package/dist/ColorEditor.d.ts.map +1 -1
  72. package/dist/ColorEditor.js +147 -124
  73. package/dist/ColorEditor.js.map +1 -1
  74. package/dist/ColorEditor.jsx +4 -1
  75. package/dist/ColorEditor.jsx.map +1 -1
  76. package/dist/ComboBox.d.ts +31 -10
  77. package/dist/ComboBox.d.ts.map +1 -1
  78. package/dist/ComboBox.js +539 -274
  79. package/dist/ComboBox.js.map +1 -1
  80. package/dist/ComboBox.jsx +213 -70
  81. package/dist/ComboBox.jsx.map +1 -1
  82. package/dist/ContextualHelpTrigger.d.ts +1 -7
  83. package/dist/ContextualHelpTrigger.d.ts.map +1 -1
  84. package/dist/ContextualHelpTrigger.js +102 -72
  85. package/dist/ContextualHelpTrigger.js.map +1 -1
  86. package/dist/ContextualHelpTrigger.jsx +36 -16
  87. package/dist/ContextualHelpTrigger.jsx.map +1 -1
  88. package/dist/DateField.d.ts +2 -7
  89. package/dist/DateField.d.ts.map +1 -1
  90. package/dist/DateField.js +0 -2
  91. package/dist/DateField.jsx +0 -2
  92. package/dist/DateField2.js +194 -179
  93. package/dist/DateField2.js.map +1 -1
  94. package/dist/DateField2.jsx +58 -55
  95. package/dist/DateField2.jsx.map +1 -1
  96. package/dist/DatePicker.d.ts +7 -7
  97. package/dist/DatePicker.d.ts.map +1 -1
  98. package/dist/DatePicker.js +2 -2
  99. package/dist/DatePicker.jsx +2 -2
  100. package/dist/DatePicker2.js +357 -435
  101. package/dist/DatePicker2.js.map +1 -1
  102. package/dist/DatePicker2.jsx +109 -178
  103. package/dist/DatePicker2.jsx.map +1 -1
  104. package/dist/DateRangePickerContext.d.ts +7 -0
  105. package/dist/DateRangePickerContext.d.ts.map +1 -1
  106. package/dist/Dialog.d.ts +4 -9
  107. package/dist/Dialog.d.ts.map +1 -1
  108. package/dist/Dialog.js +168 -101
  109. package/dist/Dialog.js.map +1 -1
  110. package/dist/Dialog.jsx +75 -27
  111. package/dist/Dialog.jsx.map +1 -1
  112. package/dist/Disclosure.d.ts +1 -9
  113. package/dist/Disclosure.d.ts.map +1 -1
  114. package/dist/Disclosure.js +121 -79
  115. package/dist/Disclosure.js.map +1 -1
  116. package/dist/Disclosure.jsx +32 -19
  117. package/dist/Disclosure.jsx.map +1 -1
  118. package/dist/DragAndDrop.d.ts +9 -6
  119. package/dist/DragAndDrop.d.ts.map +1 -1
  120. package/dist/DragAndDrop.js +37 -22
  121. package/dist/DragAndDrop.js.map +1 -1
  122. package/dist/DragAndDrop.jsx +20 -4
  123. package/dist/DragAndDrop.jsx.map +1 -1
  124. package/dist/DragPreview.d.ts +1 -1
  125. package/dist/DragPreview.d.ts.map +1 -1
  126. package/dist/DropZone.d.ts +1 -7
  127. package/dist/DropZone.d.ts.map +1 -1
  128. package/dist/DropZone.js +74 -40
  129. package/dist/DropZone.js.map +1 -1
  130. package/dist/DropZone.jsx +24 -8
  131. package/dist/DropZone.jsx.map +1 -1
  132. package/dist/ElementTag.d.ts +9 -20
  133. package/dist/ElementTag.d.ts.map +1 -1
  134. package/dist/ElementTag.js +8 -210
  135. package/dist/ElementTag.js.map +1 -1
  136. package/dist/ElementTag.jsx +8 -57
  137. package/dist/ElementTag.jsx.map +1 -1
  138. package/dist/FieldError.d.ts +8 -7
  139. package/dist/FieldError.d.ts.map +1 -1
  140. package/dist/FieldError.js +33 -13
  141. package/dist/FieldError.js.map +1 -1
  142. package/dist/FieldError.jsx +20 -5
  143. package/dist/FieldError.jsx.map +1 -1
  144. package/dist/FileTrigger.d.ts +1 -7
  145. package/dist/FileTrigger.d.ts.map +1 -1
  146. package/dist/FileTrigger.js +30 -12
  147. package/dist/FileTrigger.js.map +1 -1
  148. package/dist/FileTrigger.jsx +15 -2
  149. package/dist/FileTrigger.jsx.map +1 -1
  150. package/dist/Focusable.d.ts +2 -8
  151. package/dist/Focusable.d.ts.map +1 -1
  152. package/dist/Focusable.js +23 -6
  153. package/dist/Focusable.js.map +1 -1
  154. package/dist/Focusable.jsx +22 -5
  155. package/dist/Focusable.jsx.map +1 -1
  156. package/dist/Form.d.ts +9 -8
  157. package/dist/Form.d.ts.map +1 -1
  158. package/dist/Form.js +66 -43
  159. package/dist/Form.js.map +1 -1
  160. package/dist/Form.jsx +36 -16
  161. package/dist/Form.jsx.map +1 -1
  162. package/dist/GridList.d.ts +5 -10
  163. package/dist/GridList.d.ts.map +1 -1
  164. package/dist/GridList.js +372 -243
  165. package/dist/GridList.js.map +1 -1
  166. package/dist/GridList.jsx +177 -99
  167. package/dist/GridList.jsx.map +1 -1
  168. package/dist/HiddenDateInput.d.ts +1 -7
  169. package/dist/HiddenDateInput.d.ts.map +1 -1
  170. package/dist/Icon.d.ts +4 -1
  171. package/dist/Icon.d.ts.map +1 -1
  172. package/dist/Icon.js +41 -37
  173. package/dist/Icon.js.map +1 -1
  174. package/dist/Icon.jsx +7 -3
  175. package/dist/Icon.jsx.map +1 -1
  176. package/dist/Keyboard.d.ts +1 -7
  177. package/dist/Keyboard.d.ts.map +1 -1
  178. package/dist/Keyboard.js +24 -11
  179. package/dist/Keyboard.js.map +1 -1
  180. package/dist/Keyboard.jsx +15 -2
  181. package/dist/Keyboard.jsx.map +1 -1
  182. package/dist/Label.d.ts +20 -0
  183. package/dist/Label.d.ts.map +1 -0
  184. package/dist/Label.js +60 -0
  185. package/dist/Label.js.map +1 -0
  186. package/dist/Label.jsx +47 -0
  187. package/dist/Label.jsx.map +1 -0
  188. package/dist/Landmark.d.ts +4 -1
  189. package/dist/Landmark.d.ts.map +1 -1
  190. package/dist/Landmark.js +10 -4
  191. package/dist/Landmark.js.map +1 -1
  192. package/dist/Landmark.jsx +5 -1
  193. package/dist/Landmark.jsx.map +1 -1
  194. package/dist/Link.d.ts +2 -7
  195. package/dist/Link.d.ts.map +1 -1
  196. package/dist/Link.js +56 -36
  197. package/dist/Link.js.map +1 -1
  198. package/dist/Link.jsx +52 -10
  199. package/dist/Link.jsx.map +1 -1
  200. package/dist/ListBox.d.ts +17 -13
  201. package/dist/ListBox.d.ts.map +1 -1
  202. package/dist/ListBox.js +647 -348
  203. package/dist/ListBox.js.map +1 -1
  204. package/dist/ListBox.jsx +339 -236
  205. package/dist/ListBox.jsx.map +1 -1
  206. package/dist/ListDropTargetDelegate.d.ts +3 -0
  207. package/dist/ListDropTargetDelegate.d.ts.map +1 -1
  208. package/dist/Menu.d.ts +39 -30
  209. package/dist/Menu.d.ts.map +1 -1
  210. package/dist/Menu.js +547 -368
  211. package/dist/Menu.js.map +1 -1
  212. package/dist/Menu.jsx +328 -230
  213. package/dist/Menu.jsx.map +1 -1
  214. package/dist/Meter.d.ts +6 -13
  215. package/dist/Meter.d.ts.map +1 -1
  216. package/dist/Meter.js +55 -18
  217. package/dist/Meter.js.map +1 -1
  218. package/dist/Meter.jsx +33 -8
  219. package/dist/Meter.jsx.map +1 -1
  220. package/dist/Modal.d.ts +1 -7
  221. package/dist/Modal.d.ts.map +1 -1
  222. package/dist/Modal.js +104 -56
  223. package/dist/Modal.js.map +1 -1
  224. package/dist/Modal.jsx +68 -38
  225. package/dist/Modal.jsx.map +1 -1
  226. package/dist/NumberField.d.ts +4 -7
  227. package/dist/NumberField.d.ts.map +1 -1
  228. package/dist/NumberField.js +243 -124
  229. package/dist/NumberField.js.map +1 -1
  230. package/dist/NumberField.jsx +115 -26
  231. package/dist/NumberField.jsx.map +1 -1
  232. package/dist/Popover.d.ts +15 -7
  233. package/dist/Popover.d.ts.map +1 -1
  234. package/dist/Popover.js +370 -181
  235. package/dist/Popover.js.map +1 -1
  236. package/dist/Popover.jsx +215 -82
  237. package/dist/Popover.jsx.map +1 -1
  238. package/dist/Pressable.d.ts +2 -8
  239. package/dist/Pressable.d.ts.map +1 -1
  240. package/dist/Pressable.js +23 -6
  241. package/dist/Pressable.js.map +1 -1
  242. package/dist/Pressable.jsx +22 -5
  243. package/dist/Pressable.jsx.map +1 -1
  244. package/dist/PreviewTrigger.d.ts +24 -0
  245. package/dist/PreviewTrigger.d.ts.map +1 -0
  246. package/dist/PreviewTrigger.js +128 -0
  247. package/dist/PreviewTrigger.js.map +1 -0
  248. package/dist/PreviewTrigger.jsx +117 -0
  249. package/dist/PreviewTrigger.jsx.map +1 -0
  250. package/dist/ProgressBar.d.ts +1 -7
  251. package/dist/ProgressBar.d.ts.map +1 -1
  252. package/dist/ProgressBar.js +34 -14
  253. package/dist/ProgressBar.js.map +1 -1
  254. package/dist/ProgressBar.jsx +17 -3
  255. package/dist/ProgressBar.jsx.map +1 -1
  256. package/dist/RadioGroup.d.ts +2 -7
  257. package/dist/RadioGroup.d.ts.map +1 -1
  258. package/dist/RadioGroup.js +388 -269
  259. package/dist/RadioGroup.js.map +1 -1
  260. package/dist/RadioGroup.jsx +110 -99
  261. package/dist/RadioGroup.jsx.map +1 -1
  262. package/dist/RangeCalendar.d.ts +3 -7
  263. package/dist/RangeCalendar.d.ts.map +1 -1
  264. package/dist/RangeCalendar.js +271 -202
  265. package/dist/RangeCalendar.js.map +1 -1
  266. package/dist/RangeCalendar.jsx +56 -37
  267. package/dist/RangeCalendar.jsx.map +1 -1
  268. package/dist/RouterProvider.d.ts +3 -9
  269. package/dist/RouterProvider.d.ts.map +1 -1
  270. package/dist/RouterProvider.js +15 -14
  271. package/dist/RouterProvider.js.map +1 -1
  272. package/dist/RouterProvider.jsx +14 -13
  273. package/dist/RouterProvider.jsx.map +1 -1
  274. package/dist/SearchField.d.ts +4 -7
  275. package/dist/SearchField.d.ts.map +1 -1
  276. package/dist/SearchField.js +191 -164
  277. package/dist/SearchField.js.map +1 -1
  278. package/dist/SearchField.jsx +69 -62
  279. package/dist/SearchField.jsx.map +1 -1
  280. package/dist/Select.d.ts +5 -10
  281. package/dist/Select.d.ts.map +1 -1
  282. package/dist/Select.js +565 -359
  283. package/dist/Select.js.map +1 -1
  284. package/dist/Select.jsx +281 -161
  285. package/dist/Select.jsx.map +1 -1
  286. package/dist/SelectionIndicator.d.ts +1 -4
  287. package/dist/SelectionIndicator.d.ts.map +1 -1
  288. package/dist/SelectionIndicator.js +29 -13
  289. package/dist/SelectionIndicator.js.map +1 -1
  290. package/dist/SelectionIndicator.jsx +18 -4
  291. package/dist/SelectionIndicator.jsx.map +1 -1
  292. package/dist/Separator.d.ts +1 -7
  293. package/dist/Separator.d.ts.map +1 -1
  294. package/dist/Separator.js +22 -6
  295. package/dist/Separator.js.map +1 -1
  296. package/dist/Separator.jsx +16 -3
  297. package/dist/Separator.jsx.map +1 -1
  298. package/dist/SharedElementTransition.d.ts +1 -10
  299. package/dist/SharedElementTransition.d.ts.map +1 -1
  300. package/dist/SharedElementTransition.js +68 -40
  301. package/dist/SharedElementTransition.js.map +1 -1
  302. package/dist/SharedElementTransition.jsx +49 -25
  303. package/dist/SharedElementTransition.jsx.map +1 -1
  304. package/dist/Slider.d.ts +2 -8
  305. package/dist/Slider.d.ts.map +1 -1
  306. package/dist/Slider.js +155 -97
  307. package/dist/Slider.js.map +1 -1
  308. package/dist/Slider.jsx +25 -12
  309. package/dist/Slider.jsx.map +1 -1
  310. package/dist/StepList.d.ts +1 -7
  311. package/dist/StepList.d.ts.map +1 -1
  312. package/dist/StepList.js +112 -68
  313. package/dist/StepList.js.map +1 -1
  314. package/dist/StepList.jsx +58 -20
  315. package/dist/StepList.jsx.map +1 -1
  316. package/dist/Switch.d.ts +2 -9
  317. package/dist/Switch.d.ts.map +1 -1
  318. package/dist/Switch.js +164 -114
  319. package/dist/Switch.js.map +1 -1
  320. package/dist/Switch.jsx +26 -13
  321. package/dist/Switch.jsx.map +1 -1
  322. package/dist/Table.d.ts +2 -1
  323. package/dist/Table.d.ts.map +1 -1
  324. package/dist/Table.js +689 -592
  325. package/dist/Table.js.map +1 -1
  326. package/dist/Table.jsx +317 -237
  327. package/dist/Table.jsx.map +1 -1
  328. package/dist/Tabs.d.ts +2 -7
  329. package/dist/Tabs.d.ts.map +1 -1
  330. package/dist/Tabs.js +278 -293
  331. package/dist/Tabs.js.map +1 -1
  332. package/dist/Tabs.jsx +68 -66
  333. package/dist/Tabs.jsx.map +1 -1
  334. package/dist/TagGroup.d.ts +4 -11
  335. package/dist/TagGroup.d.ts.map +1 -1
  336. package/dist/TagGroup.js +153 -115
  337. package/dist/TagGroup.js.map +1 -1
  338. package/dist/TagGroup.jsx +37 -24
  339. package/dist/TagGroup.jsx.map +1 -1
  340. package/dist/Text.d.ts +3 -3
  341. package/dist/Text.d.ts.map +1 -1
  342. package/dist/Text.js +24 -7
  343. package/dist/Text.js.map +1 -1
  344. package/dist/Text.jsx +17 -5
  345. package/dist/Text.jsx.map +1 -1
  346. package/dist/TextField.d.ts +3 -16
  347. package/dist/TextField.d.ts.map +1 -1
  348. package/dist/TextField.js +104 -129
  349. package/dist/TextField.js.map +1 -1
  350. package/dist/TextField.jsx +76 -102
  351. package/dist/TextField.jsx.map +1 -1
  352. package/dist/TimeField.d.ts +2 -15
  353. package/dist/TimeField.d.ts.map +1 -1
  354. package/dist/TimeField.js +86 -102
  355. package/dist/TimeField.js.map +1 -1
  356. package/dist/TimeField.jsx +32 -49
  357. package/dist/TimeField.jsx.map +1 -1
  358. package/dist/Toast.d.ts +10 -13
  359. package/dist/Toast.d.ts.map +1 -1
  360. package/dist/Toast.js +209 -108
  361. package/dist/Toast.js.map +1 -1
  362. package/dist/Toast.jsx +127 -22
  363. package/dist/Toast.jsx.map +1 -1
  364. package/dist/ToggleButton.d.ts +1 -7
  365. package/dist/ToggleButton.d.ts.map +1 -1
  366. package/dist/ToggleButton.js +57 -35
  367. package/dist/ToggleButton.js.map +1 -1
  368. package/dist/ToggleButton.jsx +26 -12
  369. package/dist/ToggleButton.jsx.map +1 -1
  370. package/dist/ToggleButtonGroup.d.ts +1 -7
  371. package/dist/ToggleButtonGroup.d.ts.map +1 -1
  372. package/dist/ToggleButtonGroup.js +59 -44
  373. package/dist/ToggleButtonGroup.js.map +1 -1
  374. package/dist/ToggleButtonGroup.jsx +25 -12
  375. package/dist/ToggleButtonGroup.jsx.map +1 -1
  376. package/dist/TokenField.d.ts +52 -0
  377. package/dist/TokenField.d.ts.map +1 -0
  378. package/dist/TokenField.js +301 -0
  379. package/dist/TokenField.js.map +1 -0
  380. package/dist/TokenField.jsx +197 -0
  381. package/dist/TokenField.jsx.map +1 -0
  382. package/dist/Toolbar.d.ts +2 -7
  383. package/dist/Toolbar.d.ts.map +1 -1
  384. package/dist/Toolbar.js +35 -16
  385. package/dist/Toolbar.js.map +1 -1
  386. package/dist/Toolbar.jsx +15 -2
  387. package/dist/Toolbar.jsx.map +1 -1
  388. package/dist/Tooltip.d.ts +2 -7
  389. package/dist/Tooltip.d.ts.map +1 -1
  390. package/dist/Tooltip.js +105 -68
  391. package/dist/Tooltip.js.map +1 -1
  392. package/dist/Tooltip.jsx +60 -36
  393. package/dist/Tooltip.jsx.map +1 -1
  394. package/dist/Tree.d.ts +8 -11
  395. package/dist/Tree.d.ts.map +1 -1
  396. package/dist/Tree.js +486 -339
  397. package/dist/Tree.js.map +1 -1
  398. package/dist/Tree.jsx +155 -107
  399. package/dist/Tree.jsx.map +1 -1
  400. package/dist/Virtualizer.d.ts +39 -9
  401. package/dist/Virtualizer.d.ts.map +1 -1
  402. package/dist/Virtualizer.js +2 -2
  403. package/dist/Virtualizer.jsx +2 -2
  404. package/dist/Virtualizer2.js +491 -136
  405. package/dist/Virtualizer2.js.map +1 -1
  406. package/dist/Virtualizer2.jsx +455 -122
  407. package/dist/Virtualizer2.jsx.map +1 -1
  408. package/dist/VirtualizerLayouts.d.ts +55 -2
  409. package/dist/VirtualizerLayouts.d.ts.map +1 -1
  410. package/dist/VisuallyHidden.d.ts +4 -3
  411. package/dist/VisuallyHidden.d.ts.map +1 -1
  412. package/dist/VisuallyHidden.js +18 -11
  413. package/dist/VisuallyHidden.js.map +1 -1
  414. package/dist/VisuallyHidden.jsx +15 -9
  415. package/dist/VisuallyHidden.jsx.map +1 -1
  416. package/dist/contexts.d.ts +25 -0
  417. package/dist/contexts.d.ts.map +1 -1
  418. package/dist/contexts.js +3 -0
  419. package/dist/contexts.js.map +1 -1
  420. package/dist/contexts.jsx +3 -0
  421. package/dist/contexts.jsx.map +1 -1
  422. package/dist/index.d.ts +11 -9
  423. package/dist/index.d.ts.map +1 -1
  424. package/dist/index.js +14 -11
  425. package/dist/index.jsx +14 -11
  426. package/dist/intl/index.d.ts +16 -0
  427. package/dist/intl/index.d.ts.map +1 -0
  428. package/dist/intl.js +212 -0
  429. package/dist/intl.js.map +1 -0
  430. package/dist/intl.jsx +212 -0
  431. package/dist/intl.jsx.map +1 -0
  432. package/dist/useDragAndDrop.d.ts +4 -2
  433. package/dist/useDragAndDrop.d.ts.map +1 -1
  434. package/dist/useDragAndDrop2.js +39 -21
  435. package/dist/useDragAndDrop2.js.map +1 -1
  436. package/dist/useDragAndDrop2.jsx +39 -21
  437. package/dist/useDragAndDrop2.jsx.map +1 -1
  438. package/dist/utils.d.ts +28 -9
  439. package/dist/utils.d.ts.map +1 -1
  440. package/dist/utils.js +96 -24
  441. package/dist/utils.js.map +1 -1
  442. package/dist/utils.jsx +81 -24
  443. package/dist/utils.jsx.map +1 -1
  444. package/dist/virtualizer/Layout.d.ts +9 -0
  445. package/dist/virtualizer/Layout.d.ts.map +1 -1
  446. package/dist/virtualizer/Layout.js +23 -2
  447. package/dist/virtualizer/Layout.js.map +1 -1
  448. package/dist/virtualizer/Layout.jsx +23 -2
  449. package/dist/virtualizer/Layout.jsx.map +1 -1
  450. package/package.json +29 -10
  451. package/src/ActionBar.tsx +50 -24
  452. package/src/ActionGroup.tsx +31 -19
  453. package/src/Alert.tsx +10 -4
  454. package/src/Autocomplete.tsx +24 -15
  455. package/src/Breadcrumbs.tsx +32 -16
  456. package/src/Button.tsx +182 -67
  457. package/src/Calendar.tsx +65 -47
  458. package/src/CalendarPicker.tsx +16 -1
  459. package/src/Checkbox.tsx +84 -116
  460. package/src/Collection.tsx +84 -3
  461. package/src/Color.tsx +282 -104
  462. package/src/ColorEditor.tsx +5 -1
  463. package/src/ComboBox.tsx +384 -109
  464. package/src/ContextualHelpTrigger.tsx +47 -41
  465. package/src/DateField.tsx +74 -106
  466. package/src/DatePicker.tsx +156 -352
  467. package/src/DateRangePickerContext.tsx +8 -0
  468. package/src/Dialog.tsx +105 -38
  469. package/src/Disclosure.tsx +29 -19
  470. package/src/DragAndDrop.tsx +43 -8
  471. package/src/DragPreview.tsx +20 -1
  472. package/src/DropZone.tsx +32 -18
  473. package/src/ElementTag.tsx +14 -104
  474. package/src/FieldError.tsx +39 -7
  475. package/src/FileTrigger.tsx +18 -3
  476. package/src/Focusable.tsx +27 -6
  477. package/src/Form.tsx +57 -11
  478. package/src/GridList.tsx +233 -141
  479. package/src/HiddenDateInput.tsx +19 -3
  480. package/src/Icon.tsx +8 -2
  481. package/src/Keyboard.tsx +18 -2
  482. package/src/Label.tsx +77 -0
  483. package/src/Landmark.tsx +6 -1
  484. package/src/Link.tsx +65 -19
  485. package/src/ListBox.tsx +645 -468
  486. package/src/ListDropTargetDelegate.ts +4 -0
  487. package/src/Menu.tsx +512 -349
  488. package/src/Meter.tsx +42 -8
  489. package/src/Modal.tsx +85 -42
  490. package/src/NumberField.tsx +161 -48
  491. package/src/Popover.tsx +424 -148
  492. package/src/Pressable.tsx +27 -6
  493. package/src/PreviewTrigger.tsx +171 -0
  494. package/src/ProgressBar.tsx +25 -3
  495. package/src/RadioGroup.tsx +230 -161
  496. package/src/RangeCalendar.tsx +75 -63
  497. package/src/RouterProvider.tsx +24 -14
  498. package/src/SearchField.tsx +118 -121
  499. package/src/Select.tsx +454 -274
  500. package/src/SelectionIndicator.tsx +21 -3
  501. package/src/Separator.tsx +17 -1
  502. package/src/SharedElementTransition.tsx +115 -97
  503. package/src/Slider.tsx +35 -17
  504. package/src/StepList.tsx +71 -32
  505. package/src/Switch.tsx +45 -29
  506. package/src/Table.tsx +446 -380
  507. package/src/Tabs.tsx +132 -155
  508. package/src/TagGroup.tsx +53 -40
  509. package/src/Text.tsx +23 -6
  510. package/src/TextField.tsx +118 -159
  511. package/src/TimeField.tsx +34 -95
  512. package/src/Toast.tsx +141 -67
  513. package/src/ToggleButton.tsx +33 -15
  514. package/src/ToggleButtonGroup.tsx +27 -9
  515. package/src/TokenField.tsx +379 -0
  516. package/src/Toolbar.tsx +19 -9
  517. package/src/Tooltip.tsx +126 -84
  518. package/src/Tree.tsx +233 -173
  519. package/src/Virtualizer.tsx +400 -138
  520. package/src/VirtualizerLayouts.ts +211 -26
  521. package/src/VisuallyHidden.tsx +22 -8
  522. package/src/contexts.ts +13 -0
  523. package/src/index.ts +32 -11
  524. package/src/intl/ar-AE.json +6 -0
  525. package/src/intl/bg-BG.json +6 -0
  526. package/src/intl/cs-CZ.json +6 -0
  527. package/src/intl/da-DK.json +6 -0
  528. package/src/intl/de-DE.json +6 -0
  529. package/src/intl/el-GR.json +6 -0
  530. package/src/intl/en-US.json +6 -0
  531. package/src/intl/es-ES.json +6 -0
  532. package/src/intl/et-EE.json +6 -0
  533. package/src/intl/fi-FI.json +6 -0
  534. package/src/intl/fr-FR.json +6 -0
  535. package/src/intl/he-IL.json +6 -0
  536. package/src/intl/hr-HR.json +6 -0
  537. package/src/intl/hu-HU.json +6 -0
  538. package/src/intl/index.ts +125 -0
  539. package/src/intl/it-IT.json +6 -0
  540. package/src/intl/ja-JP.json +6 -0
  541. package/src/intl/ko-KR.json +6 -0
  542. package/src/intl/lt-LT.json +6 -0
  543. package/src/intl/lv-LV.json +6 -0
  544. package/src/intl/nb-NO.json +6 -0
  545. package/src/intl/nl-NL.json +6 -0
  546. package/src/intl/pl-PL.json +6 -0
  547. package/src/intl/pt-BR.json +6 -0
  548. package/src/intl/pt-PT.json +6 -0
  549. package/src/intl/ro-RO.json +6 -0
  550. package/src/intl/ru-RU.json +6 -0
  551. package/src/intl/sk-SK.json +6 -0
  552. package/src/intl/sl-SI.json +6 -0
  553. package/src/intl/sr-SP.json +6 -0
  554. package/src/intl/sv-SE.json +6 -0
  555. package/src/intl/tr-TR.json +6 -0
  556. package/src/intl/uk-UA.json +6 -0
  557. package/src/intl/zh-CN.json +6 -0
  558. package/src/intl/zh-TW.json +6 -0
  559. package/src/useDragAndDrop.ts +30 -32
  560. package/src/utils.tsx +124 -68
  561. package/src/virtualizer/Layout.ts +29 -0
package/dist/Tabs.js CHANGED
@@ -1,9 +1,22 @@
1
- import { filterDOMProps, useRenderProps } from "./utils.js";
1
+ /*
2
+ * Copyright 2022 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
+ // Ported to SolidJS for Proyecto Viviana; based on packages/react-aria-components/src/Tabs.tsx
13
+ import { ariaTrueFalse, attrTrue, dataAttr, filterDOMProps, useRenderProps } from "./utils.js";
2
14
  import { SharedElementTransition } from "./SharedElementTransition.js";
3
15
  import { SelectionIndicator, SelectionIndicatorContext } from "./SelectionIndicator.js";
4
- import { addEventListener, className, createComponent, delegateEvents, effect, getNextElement, insert, memo, mergeProps, runHydrationEvents, setAttribute, setProperty, spread, style, template, use } from "solid-js/web";
5
- import { For, Show, createContext, createEffect, createMemo, createSignal, onCleanup, splitProps, useContext } from "solid-js";
16
+ import { addEvent, className, createComponent, delegateEvents, effect, getNextElement, insert, readShallow, ref, runHydrationEvents, scope, setAttribute, spread, style, template } from "@solidjs/web";
17
+ import { For, Show, createContext, createEffect, createMemo, createSignal, createTrackedEffect, onCleanup, useContext } from "solid-js";
6
18
  import { createFocusRing, createHover, createTab, createTabList, createTabPanel } from "@proyecto-viviana/solidaria";
19
+ import { splitProps } from "@proyecto-viviana/solidaria/utils";
7
20
  import { createTabListState } from "@proyecto-viviana/solid-stately";
8
21
  //#region src/Tabs.tsx
9
22
  /**
@@ -12,8 +25,10 @@ import { createTabListState } from "@proyecto-viviana/solid-stately";
12
25
  * A pre-wired headless tabs component that combines state + aria hooks.
13
26
  * Port of react-aria-components/src/Tabs.tsx
14
27
  */
15
- var _tmpl$ = /*#__PURE__*/ template(`<div>`), _tmpl$2 = /*#__PURE__*/ template(`<div class=solidaria-TabList role=tablist>`), _tmpl$3 = /*#__PURE__*/ template(`<div class=solidaria-Tab role=tab>`);
16
- function assignRef(ref, element) {
28
+ var _tmpl$ = /* @__PURE__ */ template(`<div>`);
29
+ var _tmpl$2 = /* @__PURE__ */ template(`<div class=solidaria-TabList role=tablist>`);
30
+ var _tmpl$3 = /* @__PURE__ */ template(`<div class=solidaria-Tab role=tab>`);
31
+ function assignRef$1(ref, element) {
17
32
  if (!ref) return;
18
33
  if (typeof ref === "function") ref(element);
19
34
  else if (typeof ref === "object" && "current" in ref) ref.current = element;
@@ -51,8 +66,8 @@ function Tabs(props) {
51
66
  "keyboardActivation",
52
67
  "orientation"
53
68
  ]);
54
- const [tabListItems, setTabListItems] = createSignal(void 0);
55
- const [registeredTabs, setRegisteredTabs] = createSignal([]);
69
+ const [tabListItems, setTabListItems] = createSignal(void 0, { ownedWrite: true });
70
+ const [registeredTabs, setRegisteredTabs] = createSignal([], { ownedWrite: true });
56
71
  const effectiveItems = createMemo(() => {
57
72
  if (stateProps.items) return stateProps.items;
58
73
  if (tabListItems()) return tabListItems() ?? [];
@@ -111,46 +126,49 @@ function Tabs(props) {
111
126
  defaultClassName: "solidaria-Tabs"
112
127
  }, renderValues);
113
128
  const domProps = createMemo(() => filterDOMProps(rest, { global: true }));
114
- const contextValue = {
115
- state,
116
- items: effectiveItems,
117
- setTabListItems(items) {
118
- setTabListItems(() => items);
119
- },
120
- registerTab(tab) {
121
- setRegisteredTabs((current) => {
122
- const next = current.filter((item) => item.id !== tab.id);
123
- next.push(tab);
124
- return next;
125
- });
129
+ return createComponent(TabsContext, {
130
+ value: {
131
+ state,
132
+ items: effectiveItems,
133
+ setTabListItems(items) {
134
+ setTabListItems(() => items);
135
+ },
136
+ registerTab(tab) {
137
+ setRegisteredTabs((current) => {
138
+ const next = current.filter((item) => item.id !== tab.id);
139
+ next.push(tab);
140
+ return next;
141
+ });
142
+ },
143
+ unregisterTab(id) {
144
+ setRegisteredTabs((current) => current.filter((item) => item.id !== id));
145
+ }
126
146
  },
127
- unregisterTab(id) {
128
- setRegisteredTabs((current) => current.filter((item) => item.id !== id));
129
- }
130
- };
131
- return createComponent(TabsContext.Provider, {
132
- value: contextValue,
133
147
  get children() {
134
- return createComponent(TabsStateContext.Provider, {
148
+ return createComponent(TabsStateContext, {
135
149
  value: state,
136
150
  get children() {
137
151
  var _el$ = getNextElement(_tmpl$);
138
- use((element) => assignRef(local.ref, element), _el$);
139
- spread(_el$, mergeProps(domProps, {
140
- get ["class"]() {
152
+ ref(() => {
153
+ return (element) => assignRef$1(local.ref, element);
154
+ }, _el$);
155
+ spread(_el$, [domProps, {
156
+ get "class"() {
141
157
  return renderProps.class();
142
158
  },
143
159
  get style() {
144
160
  return renderProps.style();
145
161
  },
146
- get ["data-orientation"]() {
162
+ get "data-orientation"() {
147
163
  return state.orientation();
148
164
  },
149
- get ["data-disabled"]() {
150
- return state.isDisabled() || void 0;
165
+ get "data-disabled"() {
166
+ return dataAttr(state.isDisabled());
151
167
  }
152
- }), false, true);
153
- insert(_el$, () => props.children);
168
+ }], true);
169
+ insert(_el$, scope(() => {
170
+ return props.children;
171
+ }));
154
172
  runHydrationEvents();
155
173
  return _el$;
156
174
  }
@@ -167,53 +185,24 @@ function TabList(props) {
167
185
  "style",
168
186
  "slot"
169
187
  ], ["items"]);
170
- return createComponent(Show, {
171
- when: useContext(TabsContext),
172
- get fallback() {
173
- return getNextElement(_tmpl$2);
174
- },
175
- children: (ctx) => createComponent(TabListInner, {
176
- get context() {
177
- return ctx();
178
- },
179
- local,
180
- get items() {
181
- return collectionProps.items;
182
- },
183
- ariaProps,
184
- get children() {
185
- return props.children;
186
- }
187
- })
188
- });
189
- }
190
- /** Inner TabList component that has access to context */
191
- function TabListInner(props) {
192
- const state = props.context.state;
193
- const items = props.context.items;
194
- const renderItem = createMemo(() => {
195
- if (typeof props.children !== "function") return;
196
- if (props.children.length === 0 && props.items === void 0) return;
197
- return props.children;
198
- });
199
- const renderedChildren = createMemo(() => {
200
- if (renderItem() || typeof props.children !== "function") return props.children;
201
- return props.children();
202
- });
203
- createEffect(() => {
204
- props.context.setTabListItems(props.items);
188
+ const context = useContext(TabsContext);
189
+ if (!context) return getNextElement(_tmpl$2);
190
+ const state = context.state;
191
+ const items = context.items;
192
+ createEffect(() => collectionProps.items, (items) => {
193
+ context.setTabListItems(items);
205
194
  });
206
195
  onCleanup(() => {
207
- props.context.setTabListItems(void 0);
196
+ context.setTabListItems(void 0);
208
197
  });
209
- const { tabListProps } = createTabList(props.ariaProps, state);
198
+ const { tabListProps } = createTabList(ariaProps, state);
210
199
  const renderValues = createMemo(() => ({
211
200
  orientation: state.orientation(),
212
201
  isDisabled: state.isDisabled()
213
202
  }));
214
203
  const renderProps = useRenderProps({
215
- class: props.local.class,
216
- style: props.local.style,
204
+ class: local.class,
205
+ style: local.style,
217
206
  defaultClassName: "solidaria-TabList"
218
207
  }, renderValues);
219
208
  const handleKeyDown = (e) => {
@@ -225,48 +214,50 @@ function TabListInner(props) {
225
214
  const handleBlur = (e) => {
226
215
  tabListProps.onFocusOut(e);
227
216
  };
228
- return (() => {
229
- var _el$3 = getNextElement(_tmpl$);
230
- _el$3.$$focusout = handleBlur;
231
- _el$3.$$focusin = handleFocus;
232
- _el$3.$$keydown = handleKeyDown;
233
- insert(_el$3, (() => {
234
- var _c$ = memo(() => !!renderItem());
235
- return () => _c$() ? createComponent(SharedElementTransition, { get children() {
236
- return createComponent(For, {
237
- get each() {
238
- return props.items ?? items();
239
- },
240
- children: (item) => renderItem()?.(item)
241
- });
242
- } }) : renderedChildren();
243
- })());
244
- effect((_p$) => {
245
- var _v$ = tabListProps.role, _v$2 = tabListProps["aria-orientation"], _v$3 = tabListProps["aria-label"], _v$4 = tabListProps["aria-labelledby"], _v$5 = tabListProps["aria-describedby"], _v$6 = renderProps.class(), _v$7 = renderProps.style(), _v$8 = state.orientation(), _v$9 = state.isDisabled() || void 0;
246
- _v$ !== _p$.e && setAttribute(_el$3, "role", _p$.e = _v$);
247
- _v$2 !== _p$.t && setAttribute(_el$3, "aria-orientation", _p$.t = _v$2);
248
- _v$3 !== _p$.a && setAttribute(_el$3, "aria-label", _p$.a = _v$3);
249
- _v$4 !== _p$.o && setAttribute(_el$3, "aria-labelledby", _p$.o = _v$4);
250
- _v$5 !== _p$.i && setAttribute(_el$3, "aria-describedby", _p$.i = _v$5);
251
- _v$6 !== _p$.n && className(_el$3, _p$.n = _v$6);
252
- _p$.s = style(_el$3, _v$7, _p$.s);
253
- _v$8 !== _p$.h && setAttribute(_el$3, "data-orientation", _p$.h = _v$8);
254
- _v$9 !== _p$.r && setAttribute(_el$3, "data-disabled", _p$.r = _v$9);
255
- return _p$;
256
- }, {
257
- e: void 0,
258
- t: void 0,
259
- a: void 0,
260
- o: void 0,
261
- i: void 0,
262
- n: void 0,
263
- s: void 0,
264
- h: void 0,
265
- r: void 0
266
- });
267
- runHydrationEvents();
268
- return _el$3;
269
- })();
217
+ const renderChildren = () => {
218
+ const children = props.children;
219
+ if (typeof children === "function" && children.length > 0) return createComponent(SharedElementTransition, { get children() {
220
+ return createComponent(For, {
221
+ get each() {
222
+ return collectionProps.items ?? items();
223
+ },
224
+ children: (item) => children(item)
225
+ });
226
+ } });
227
+ return children;
228
+ };
229
+ var _el$3 = getNextElement(_tmpl$);
230
+ _el$3._$$focusout = handleBlur;
231
+ _el$3._$$focusin = handleFocus;
232
+ _el$3._$$keydown = handleKeyDown;
233
+ insert(_el$3, scope(() => {
234
+ return renderChildren();
235
+ }));
236
+ effect(() => {
237
+ return {
238
+ e: tabListProps.role,
239
+ t: tabListProps["aria-orientation"],
240
+ a: tabListProps["aria-label"],
241
+ o: tabListProps["aria-labelledby"],
242
+ i: tabListProps["aria-describedby"],
243
+ n: readShallow(renderProps.class()),
244
+ s: readShallow(renderProps.style()),
245
+ h: state.orientation(),
246
+ r: dataAttr(state.isDisabled())
247
+ };
248
+ }, ({ e, t, a, o, i, n, s, h, r }, _p$) => {
249
+ e !== _p$?.e && setAttribute(_el$3, "role", e);
250
+ t !== _p$?.t && setAttribute(_el$3, "aria-orientation", t);
251
+ a !== _p$?.a && setAttribute(_el$3, "aria-label", a);
252
+ o !== _p$?.o && setAttribute(_el$3, "aria-labelledby", o);
253
+ i !== _p$?.i && setAttribute(_el$3, "aria-describedby", i);
254
+ className(_el$3, n, _p$?.n);
255
+ style(_el$3, s, _p$?.s);
256
+ h !== _p$?.h && setAttribute(_el$3, "data-orientation", h);
257
+ r !== _p$?.r && setAttribute(_el$3, "data-disabled", r);
258
+ });
259
+ runHydrationEvents();
260
+ return _el$3;
270
261
  }
271
262
  /**
272
263
  * A Tab represents an individual tab in a TabList.
@@ -280,53 +271,34 @@ function Tab(props) {
280
271
  ]);
281
272
  const context = useContext(TabsStateContext);
282
273
  const tabsContext = useContext(TabsContext);
283
- return createComponent(Show, {
284
- when: context,
285
- get fallback() {
286
- return getNextElement(_tmpl$3);
287
- },
288
- children: (state) => createComponent(TabInner, {
289
- get state() {
290
- return state();
291
- },
292
- tabsContext,
293
- local,
294
- ariaProps,
295
- get children() {
296
- return props.children;
297
- }
298
- })
299
- });
300
- }
301
- /** Inner Tab component that has access to context */
302
- function TabInner(props) {
303
- let tabRef;
274
+ if (!context) return getNextElement(_tmpl$3);
275
+ const [tabRef, setTabRef] = createSignal(null);
304
276
  const textValue = () => {
305
- if (props.ariaProps["aria-label"]) return props.ariaProps["aria-label"];
277
+ if (ariaProps["aria-label"]) return ariaProps["aria-label"];
306
278
  return typeof props.children === "string" ? props.children : void 0;
307
279
  };
308
- createEffect(() => {
309
- props.tabsContext?.registerTab({
310
- id: props.local.id,
311
- textValue: textValue(),
312
- isDisabled: props.ariaProps.isDisabled
313
- });
280
+ createEffect(() => ({
281
+ id: local.id,
282
+ textValue: textValue(),
283
+ isDisabled: ariaProps.isDisabled
284
+ }), (tab) => {
285
+ tabsContext?.registerTab(tab);
314
286
  });
315
287
  onCleanup(() => {
316
- props.tabsContext?.unregisterTab(props.local.id);
288
+ tabsContext?.unregisterTab(local.id);
317
289
  });
318
290
  const tabAria = createTab({
319
- key: props.local.id,
291
+ key: local.id,
320
292
  get isDisabled() {
321
- return props.ariaProps.isDisabled;
293
+ return ariaProps.isDisabled;
322
294
  },
323
295
  get "aria-label"() {
324
- return props.ariaProps["aria-label"];
296
+ return ariaProps["aria-label"];
325
297
  },
326
298
  get "aria-labelledby"() {
327
- return props.ariaProps["aria-labelledby"];
299
+ return ariaProps["aria-labelledby"];
328
300
  }
329
- }, props.state, () => tabRef ?? null);
301
+ }, context, tabRef);
330
302
  const { isHovered, hoverProps } = createHover({ get isDisabled() {
331
303
  return tabAria.isDisabled();
332
304
  } });
@@ -342,96 +314,101 @@ function TabInner(props) {
342
314
  get children() {
343
315
  return props.children;
344
316
  },
345
- class: props.local.class,
346
- style: props.local.style,
317
+ class: local.class,
318
+ style: local.style,
347
319
  defaultClassName: "solidaria-Tab"
348
320
  }, renderValues);
349
321
  const selectionIndicatorContext = createMemo(() => ({ isSelected: tabAria.isSelected }));
350
- return createComponent(SelectionIndicatorContext.Provider, {
322
+ var _el$5 = getNextElement(_tmpl$);
323
+ ref(() => {
324
+ return setTabRef;
325
+ }, _el$5);
326
+ spread(_el$5, [
327
+ {
328
+ get id() {
329
+ return tabAria.tabProps.id;
330
+ },
331
+ get role() {
332
+ return tabAria.tabProps.role;
333
+ },
334
+ get "aria-selected"() {
335
+ return ariaTrueFalse(tabAria.isSelected());
336
+ },
337
+ get "aria-disabled"() {
338
+ return attrTrue(tabAria.isDisabled());
339
+ },
340
+ get "aria-controls"() {
341
+ return tabAria.isSelected() ? tabAria.tabProps["aria-controls"] : void 0;
342
+ },
343
+ get "aria-label"() {
344
+ return tabAria.tabProps["aria-label"];
345
+ },
346
+ get "aria-labelledby"() {
347
+ return tabAria.tabProps["aria-labelledby"];
348
+ },
349
+ get tabindex() {
350
+ return tabAria.tabProps.tabIndex;
351
+ },
352
+ get "class"() {
353
+ return renderProps.class();
354
+ },
355
+ get style() {
356
+ return renderProps.style();
357
+ },
358
+ get onKeyDown() {
359
+ return tabAria.tabProps.onKeyDown;
360
+ },
361
+ get onMouseDown() {
362
+ return tabAria.tabProps.onMouseDown;
363
+ },
364
+ get onPointerDown() {
365
+ return tabAria.tabProps.onPointerDown;
366
+ },
367
+ get onClick() {
368
+ return tabAria.tabProps.onClick;
369
+ },
370
+ get onFocus() {
371
+ return tabAria.tabProps.onFocus;
372
+ },
373
+ get onFocusIn() {
374
+ return tabAria.tabProps.onFocusIn;
375
+ },
376
+ get onBlur() {
377
+ return tabAria.tabProps.onBlur;
378
+ }
379
+ },
380
+ hoverProps,
381
+ {
382
+ get "data-selected"() {
383
+ return dataAttr(tabAria.isSelected());
384
+ },
385
+ get "data-focused"() {
386
+ return dataAttr(tabAria.isFocused());
387
+ },
388
+ get "data-focus-visible"() {
389
+ return dataAttr(tabAria.isFocusVisible());
390
+ },
391
+ get "data-pressed"() {
392
+ return dataAttr(tabAria.isPressed());
393
+ },
394
+ get "data-hovered"() {
395
+ return dataAttr(isHovered());
396
+ },
397
+ get "data-disabled"() {
398
+ return dataAttr(tabAria.isDisabled());
399
+ }
400
+ }
401
+ ], true);
402
+ insert(_el$5, createComponent(SelectionIndicatorContext, {
351
403
  get value() {
352
404
  return selectionIndicatorContext();
353
405
  },
354
406
  get children() {
355
- var _el$5 = getNextElement(_tmpl$);
356
- var _ref$ = tabRef;
357
- typeof _ref$ === "function" ? use(_ref$, _el$5) : tabRef = _el$5;
358
- spread(_el$5, mergeProps({
359
- get id() {
360
- return tabAria.tabProps.id;
361
- },
362
- get role() {
363
- return tabAria.tabProps.role;
364
- },
365
- get ["aria-selected"]() {
366
- return tabAria.isSelected();
367
- },
368
- get ["aria-disabled"]() {
369
- return tabAria.isDisabled() || void 0;
370
- },
371
- get ["aria-controls"]() {
372
- return memo(() => !!tabAria.isSelected())() ? tabAria.tabProps["aria-controls"] : void 0;
373
- },
374
- get ["aria-label"]() {
375
- return tabAria.tabProps["aria-label"];
376
- },
377
- get ["aria-labelledby"]() {
378
- return tabAria.tabProps["aria-labelledby"];
379
- },
380
- get tabIndex() {
381
- return tabAria.tabProps.tabIndex;
382
- },
383
- get ["class"]() {
384
- return renderProps.class();
385
- },
386
- get style() {
387
- return renderProps.style();
388
- },
389
- get onKeyDown() {
390
- return tabAria.tabProps.onKeyDown;
391
- },
392
- get onMouseDown() {
393
- return tabAria.tabProps.onMouseDown;
394
- },
395
- get onPointerDown() {
396
- return tabAria.tabProps.onPointerDown;
397
- },
398
- get onClick() {
399
- return tabAria.tabProps.onClick;
400
- },
401
- get onFocus() {
402
- return tabAria.tabProps.onFocus;
403
- },
404
- get onFocusIn() {
405
- return tabAria.tabProps.onFocusIn;
406
- },
407
- get onBlur() {
408
- return tabAria.tabProps.onBlur;
409
- }
410
- }, hoverProps, {
411
- get ["data-selected"]() {
412
- return tabAria.isSelected() || void 0;
413
- },
414
- get ["data-focused"]() {
415
- return tabAria.isFocused() || void 0;
416
- },
417
- get ["data-focus-visible"]() {
418
- return tabAria.isFocusVisible() || void 0;
419
- },
420
- get ["data-pressed"]() {
421
- return tabAria.isPressed() || void 0;
422
- },
423
- get ["data-hovered"]() {
424
- return isHovered() || void 0;
425
- },
426
- get ["data-disabled"]() {
427
- return tabAria.isDisabled() || void 0;
428
- }
429
- }), false, true);
430
- insert(_el$5, () => renderProps.renderChildrenStable());
431
- runHydrationEvents();
432
- return _el$5;
407
+ return renderProps.renderChildrenStable();
433
408
  }
434
- });
409
+ }));
410
+ runHydrationEvents();
411
+ return _el$5;
435
412
  }
436
413
  /**
437
414
  * Groups multiple TabPanel elements.
@@ -445,12 +422,12 @@ function TabPanels(props) {
445
422
  ]);
446
423
  const domProps = createMemo(() => filterDOMProps(rest, { global: true }));
447
424
  const state = useContext(TabsStateContext);
448
- let ref;
425
+ let ref$1;
449
426
  let previousSelectedKey = void 0;
450
427
  const [panelSize, setPanelSize] = createSignal({});
451
- createEffect(() => {
428
+ createTrackedEffect(() => {
452
429
  const selectedKey = state?.selectedKey() ?? null;
453
- if (!ref) {
430
+ if (!ref$1) {
454
431
  previousSelectedKey = selectedKey;
455
432
  return;
456
433
  }
@@ -460,11 +437,11 @@ function TabPanels(props) {
460
437
  }
461
438
  if (previousSelectedKey === selectedKey) return;
462
439
  previousSelectedKey = selectedKey;
463
- const transition = window.getComputedStyle(ref).transition;
440
+ const transition = window.getComputedStyle(ref$1).transition;
464
441
  const shouldMeasureWidth = /width|inline-size|all/.test(transition);
465
442
  const shouldMeasureHeight = /height|block-size|all/.test(transition);
466
443
  if (!shouldMeasureWidth && !shouldMeasureHeight) return;
467
- const selectedPanel = ref.querySelector("[role=\"tabpanel\"]:not([hidden])");
444
+ const selectedPanel = ref$1.querySelector("[role=\"tabpanel\"]:not([hidden])");
468
445
  if (!selectedPanel) return;
469
446
  setPanelSize({
470
447
  width: shouldMeasureWidth ? `${selectedPanel.offsetWidth}px` : void 0,
@@ -476,23 +453,25 @@ function TabPanels(props) {
476
453
  ...panelSize().width ? { "--tab-panel-width": panelSize().width } : {},
477
454
  ...panelSize().height ? { "--tab-panel-height": panelSize().height } : {}
478
455
  });
479
- return (() => {
480
- var _el$6 = getNextElement(_tmpl$);
481
- use((el) => {
482
- ref = el;
483
- }, _el$6);
484
- spread(_el$6, mergeProps(domProps, {
485
- get ["class"]() {
486
- return local.class ?? "solidaria-TabPanels";
487
- },
488
- get style() {
489
- return mergedStyle();
490
- }
491
- }), false, true);
492
- insert(_el$6, () => local.children);
493
- runHydrationEvents();
494
- return _el$6;
495
- })();
456
+ var _el$6 = getNextElement(_tmpl$);
457
+ ref(() => {
458
+ return (el) => {
459
+ ref$1 = el;
460
+ };
461
+ }, _el$6);
462
+ spread(_el$6, [domProps, {
463
+ get "class"() {
464
+ return local.class ?? "solidaria-TabPanels";
465
+ },
466
+ get style() {
467
+ return mergedStyle();
468
+ }
469
+ }], true);
470
+ insert(_el$6, scope(() => {
471
+ return local.children;
472
+ }));
473
+ runHydrationEvents();
474
+ return _el$6;
496
475
  }
497
476
  /**
498
477
  * A TabPanel displays the content for a selected Tab.
@@ -504,8 +483,9 @@ function TabPanel(props) {
504
483
  "slot",
505
484
  "shouldForceMount"
506
485
  ]);
486
+ const [panelRef, setPanelRef] = createSignal();
507
487
  const state = useContext(TabsStateContext);
508
- const { tabPanelProps, isSelected } = createTabPanel(ariaProps, state);
488
+ const { tabPanelProps, isSelected } = createTabPanel(ariaProps, state, panelRef);
509
489
  const { isFocused, isFocusVisible, focusProps } = createFocusRing();
510
490
  const isInert = () => Boolean(local.shouldForceMount && ariaProps.id !== void 0 && !isSelected());
511
491
  const isEntering = () => false;
@@ -538,45 +518,50 @@ function TabPanel(props) {
538
518
  },
539
519
  get children() {
540
520
  var _el$7 = getNextElement(_tmpl$);
541
- addEventListener(_el$7, "blur", focusProps.onBlur);
542
- addEventListener(_el$7, "focus", focusProps.onFocus);
543
- insert(_el$7, () => renderProps.renderChildren());
544
- effect((_p$) => {
545
- var _v$0 = tabPanelProps.id, _v$1 = tabPanelProps.role, _v$10 = tabPanelProps["aria-labelledby"], _v$11 = tabPanelProps["aria-label"], _v$12 = tabPanelProps["aria-describedby"], _v$13 = tabPanelProps.tabIndex, _v$14 = renderProps.class(), _v$15 = renderProps.style(), _v$16 = isSelected() || void 0, _v$17 = isFocused() || void 0, _v$18 = isFocusVisible() || void 0, _v$19 = isInert() ? true : void 0, _v$20 = isInert() || void 0, _v$21 = isEntering() || void 0, _v$22 = isExiting() || void 0, _v$23 = ariaProps.id !== void 0 && !isSelected() && !local.shouldForceMount ? true : void 0;
546
- _v$0 !== _p$.e && setAttribute(_el$7, "id", _p$.e = _v$0);
547
- _v$1 !== _p$.t && setAttribute(_el$7, "role", _p$.t = _v$1);
548
- _v$10 !== _p$.a && setAttribute(_el$7, "aria-labelledby", _p$.a = _v$10);
549
- _v$11 !== _p$.o && setAttribute(_el$7, "aria-label", _p$.o = _v$11);
550
- _v$12 !== _p$.i && setAttribute(_el$7, "aria-describedby", _p$.i = _v$12);
551
- _v$13 !== _p$.n && setAttribute(_el$7, "tabindex", _p$.n = _v$13);
552
- _v$14 !== _p$.s && className(_el$7, _p$.s = _v$14);
553
- _p$.h = style(_el$7, _v$15, _p$.h);
554
- _v$16 !== _p$.r && setAttribute(_el$7, "data-selected", _p$.r = _v$16);
555
- _v$17 !== _p$.d && setAttribute(_el$7, "data-focused", _p$.d = _v$17);
556
- _v$18 !== _p$.l && setAttribute(_el$7, "data-focus-visible", _p$.l = _v$18);
557
- _v$19 !== _p$.u && setProperty(_el$7, "inert", _p$.u = _v$19);
558
- _v$20 !== _p$.c && setAttribute(_el$7, "data-inert", _p$.c = _v$20);
559
- _v$21 !== _p$.w && setAttribute(_el$7, "data-entering", _p$.w = _v$21);
560
- _v$22 !== _p$.m && setAttribute(_el$7, "data-exiting", _p$.m = _v$22);
561
- _v$23 !== _p$.f && setProperty(_el$7, "hidden", _p$.f = _v$23);
562
- return _p$;
563
- }, {
564
- e: void 0,
565
- t: void 0,
566
- a: void 0,
567
- o: void 0,
568
- i: void 0,
569
- n: void 0,
570
- s: void 0,
571
- h: void 0,
572
- r: void 0,
573
- d: void 0,
574
- l: void 0,
575
- u: void 0,
576
- c: void 0,
577
- w: void 0,
578
- m: void 0,
579
- f: void 0
521
+ addEvent(_el$7, "blur", focusProps.onBlur);
522
+ addEvent(_el$7, "focus", focusProps.onFocus);
523
+ ref(() => {
524
+ return setPanelRef;
525
+ }, _el$7);
526
+ insert(_el$7, scope(() => {
527
+ return renderProps.renderChildren();
528
+ }));
529
+ effect(() => {
530
+ return {
531
+ e: tabPanelProps.id,
532
+ t: tabPanelProps.role,
533
+ a: tabPanelProps["aria-labelledby"],
534
+ o: tabPanelProps["aria-label"],
535
+ i: tabPanelProps["aria-describedby"],
536
+ n: tabPanelProps.tabIndex,
537
+ s: readShallow(renderProps.class()),
538
+ h: readShallow(renderProps.style()),
539
+ r: dataAttr(isSelected()),
540
+ d: dataAttr(isFocused()),
541
+ l: dataAttr(isFocusVisible()),
542
+ u: isInert() ? true : void 0,
543
+ c: dataAttr(isInert()),
544
+ w: dataAttr(isEntering()),
545
+ m: dataAttr(isExiting()),
546
+ f: ariaProps.id !== void 0 && !isSelected() && !local.shouldForceMount ? true : void 0
547
+ };
548
+ }, ({ e, t, a, o, i, n, s, h, r, d, l, u, c, w, m, f }, _p$) => {
549
+ e !== _p$?.e && setAttribute(_el$7, "id", e);
550
+ t !== _p$?.t && setAttribute(_el$7, "role", t);
551
+ a !== _p$?.a && setAttribute(_el$7, "aria-labelledby", a);
552
+ o !== _p$?.o && setAttribute(_el$7, "aria-label", o);
553
+ i !== _p$?.i && setAttribute(_el$7, "aria-describedby", i);
554
+ n !== _p$?.n && setAttribute(_el$7, "tabindex", n);
555
+ className(_el$7, s, _p$?.s);
556
+ style(_el$7, h, _p$?.h);
557
+ r !== _p$?.r && setAttribute(_el$7, "data-selected", r);
558
+ d !== _p$?.d && setAttribute(_el$7, "data-focused", d);
559
+ l !== _p$?.l && setAttribute(_el$7, "data-focus-visible", l);
560
+ u !== _p$?.u && setAttribute(_el$7, "inert", u);
561
+ c !== _p$?.c && setAttribute(_el$7, "data-inert", c);
562
+ w !== _p$?.w && setAttribute(_el$7, "data-entering", w);
563
+ m !== _p$?.m && setAttribute(_el$7, "data-exiting", m);
564
+ f !== _p$?.f && setAttribute(_el$7, "hidden", f);
580
565
  });
581
566
  return _el$7;
582
567
  }