@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/Popover.js CHANGED
@@ -1,8 +1,22 @@
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/Popover.tsx
1
13
  import { dataAttr, filterDOMProps, useIsHydrated, useRenderProps } from "./utils.js";
2
- import { o as usePopoverTrigger, r as PopoverTriggerContext, t as DialogTriggerContext } from "./contexts.js";
3
- import { Portal, addEventListener, className, createComponent, delegateEvents, effect, getNextElement, getNextMarker, insert, memo, mergeProps, runHydrationEvents, setAttribute, spread, style, template, use } from "solid-js/web";
4
- import { Show, createContext, createEffect, createMemo, createSignal, createUniqueId, onCleanup, splitProps, useContext } from "solid-js";
5
- import { FocusScope, createOverlayTrigger, createPopover, useLocale, useUNSAFE_PortalContext, visuallyHiddenStyles } from "@proyecto-viviana/solidaria";
14
+ import { n as OverlayTriggerStateContext, o as usePopoverTrigger, r as PopoverTriggerContext, t as DialogTriggerContext } from "./contexts.js";
15
+ import { SelectContext } from "./Select.js";
16
+ import { Portal, addEvent, className, createComponent, delegateEvents, effect, getNextElement, getNextMarker, insert, memo, readShallow, ref, runHydrationEvents, scope, setAttribute, spread, style, template } from "@solidjs/web";
17
+ import { Show, createContext, createEffect, createMemo, createSignal, createTrackedEffect, createUniqueId, useContext } from "solid-js";
18
+ import { FocusScope, FocusableContext, createEnterAnimation, createExitAnimation, createOverlayTrigger, createPopover, createStringFormatter, overlaysIntlStrings, useIsHidden, useLocale, useUNSAFE_PortalContext, visuallyHiddenStyles } from "@proyecto-viviana/solidaria";
19
+ import { splitProps } from "@proyecto-viviana/solidaria/utils";
6
20
  import { createOverlayTriggerState } from "@proyecto-viviana/solid-stately";
7
21
  //#region src/Popover.tsx
8
22
  /**
@@ -11,17 +25,39 @@ import { createOverlayTriggerState } from "@proyecto-viviana/solid-stately";
11
25
  * A headless popover component that positions relative to a trigger element.
12
26
  * Port of react-aria-components Popover.
13
27
  */
14
- var _tmpl$ = /*#__PURE__*/ template(`<button type=button aria-label=Dismiss tabindex=-1>`), _tmpl$2 = /*#__PURE__*/ template(`<div><!$><!/><!$><!/><!$><!/>`), _tmpl$3 = /*#__PURE__*/ template(`<div data-testid=underlay>`), _tmpl$4 = /*#__PURE__*/ template(`<div style=display:contents>`), _tmpl$5 = /*#__PURE__*/ template(`<div>`);
28
+ var _tmpl$ = /* @__PURE__ */ template(`<button type=button tabindex=-1>`);
29
+ var _tmpl$2 = /* @__PURE__ */ template(`<div><!$><!/><!$><!/><!$><!/>`);
30
+ var _tmpl$3 = /* @__PURE__ */ template(`<div>`);
31
+ var _tmpl$4 = /* @__PURE__ */ template(`<div style=display:contents>`);
15
32
  const PopoverContext = createContext(null);
16
33
  const PopoverGroupContext = createContext(null);
34
+ const OverlayContext = createContext(null);
35
+ function resolveTriggerElement(value) {
36
+ if (value == null) return null;
37
+ if (typeof value === "function") return resolveTriggerElement(value());
38
+ if (value instanceof Element) return value;
39
+ return null;
40
+ }
41
+ function preferredPlacementAxis(placement) {
42
+ const axis = (placement ?? "bottom").split(" ")[0];
43
+ if (axis === "top" || axis === "bottom" || axis === "left" || axis === "right") return axis;
44
+ return "bottom";
45
+ }
17
46
  function PopoverDismissButton(props) {
18
- return (() => {
19
- var _el$ = getNextElement(_tmpl$);
20
- addEventListener(_el$, "click", props.onDismiss, true);
21
- effect((_$p) => style(_el$, visuallyHiddenStyles, _$p));
22
- runHydrationEvents();
23
- return _el$;
24
- })();
47
+ const stringFormatter = createStringFormatter(overlaysIntlStrings, "@react-aria/overlays");
48
+ var _el$ = getNextElement(_tmpl$);
49
+ addEvent(_el$, "click", props.onDismiss, true);
50
+ effect(() => {
51
+ return {
52
+ e: stringFormatter().format("dismiss"),
53
+ t: readShallow(visuallyHiddenStyles)
54
+ };
55
+ }, ({ e, t }, _p$) => {
56
+ e !== _p$?.e && setAttribute(_el$, "aria-label", e);
57
+ style(_el$, t, _p$?.t);
58
+ });
59
+ runHydrationEvents();
60
+ return _el$;
25
61
  }
26
62
  /**
27
63
  * A PopoverTrigger opens a popover when a trigger element is pressed.
@@ -50,7 +86,10 @@ function PopoverTrigger(props) {
50
86
  isOpen: () => state.isOpen(),
51
87
  open: () => state.open(),
52
88
  close: () => state.close(),
53
- toggle: () => state.toggle()
89
+ toggle: () => state.toggle(),
90
+ setOpen: (next) => state.setOpen(next),
91
+ point: () => state.point(),
92
+ setPoint: (next) => state.setPoint(next)
54
93
  },
55
94
  triggerRef: () => triggerRef,
56
95
  setTriggerRef: (el) => {
@@ -62,7 +101,7 @@ function PopoverTrigger(props) {
62
101
  overlayProps: triggerAria.overlayProps,
63
102
  trigger: "PopoverTrigger"
64
103
  }));
65
- return createComponent(PopoverTriggerContext.Provider, {
104
+ return createComponent(PopoverTriggerContext, {
66
105
  get value() {
67
106
  return contextValue();
68
107
  },
@@ -98,15 +137,19 @@ function Popover(props) {
98
137
  "onOpenChange",
99
138
  "autoFocus",
100
139
  "isEntering",
101
- "isExiting"
140
+ "isExiting",
141
+ "shouldSkipAnimation"
102
142
  ]);
103
- const [popoverRef, setPopoverRef] = createSignal(null);
104
- const [groupRef, setGroupRef] = createSignal(null);
143
+ const [popoverRef, setPopoverRef] = createSignal(null, { ownedWrite: true });
144
+ const [groupRef, setGroupRef] = createSignal(null, { ownedWrite: true });
105
145
  const isHydrated = useIsHydrated();
106
146
  const locale = useLocale();
107
147
  const triggerContext = useContext(PopoverTriggerContext);
108
148
  const dialogTriggerContext = useContext(DialogTriggerContext);
149
+ const overlayTriggerState = useContext(OverlayTriggerStateContext);
109
150
  const popoverGroupContext = useContext(PopoverGroupContext);
151
+ const selectContext = useContext(SelectContext);
152
+ const overlayLabelledBy = () => props["aria-labelledby"] ?? (selectContext?.menuProps)?.["aria-labelledby"] ?? (triggerContext?.overlayProps)?.["aria-labelledby"];
110
153
  const resolvedTrigger = () => local.trigger ?? triggerContext?.trigger ?? (dialogTriggerContext ? "DialogTrigger" : void 0);
111
154
  const isSubPopover = () => resolvedTrigger() === "SubmenuTrigger" && popoverGroupContext != null;
112
155
  const [internalOpen, setInternalOpen] = createSignal(local.defaultOpen ?? false);
@@ -114,6 +157,7 @@ function Popover(props) {
114
157
  if (local.isOpen !== void 0) return local.isOpen;
115
158
  if (triggerContext) return triggerContext.state.isOpen();
116
159
  if (dialogTriggerContext) return dialogTriggerContext.state.isOpen();
160
+ if (overlayTriggerState) return overlayTriggerState.isOpen;
117
161
  return internalOpen();
118
162
  };
119
163
  const close = () => {
@@ -124,13 +168,16 @@ function Popover(props) {
124
168
  } else if (dialogTriggerContext) {
125
169
  dialogTriggerContext.state.close();
126
170
  local.onOpenChange?.(false);
171
+ } else if (overlayTriggerState) {
172
+ overlayTriggerState.close();
173
+ local.onOpenChange?.(false);
127
174
  } else {
128
175
  setInternalOpen(false);
129
176
  local.onOpenChange?.(false);
130
177
  }
131
178
  };
132
179
  const getTriggerRef = () => {
133
- if (local.triggerRef) return local.triggerRef();
180
+ if (local.triggerRef !== void 0) return resolveTriggerElement(local.triggerRef);
134
181
  if (triggerContext) return triggerContext.triggerRef();
135
182
  if (dialogTriggerContext) return dialogTriggerContext.triggerRef();
136
183
  return null;
@@ -170,7 +217,7 @@ function Popover(props) {
170
217
  return local.scrollRef;
171
218
  },
172
219
  get isNonModal() {
173
- return local.isNonModal;
220
+ return local.isNonModal ?? resolvedTrigger() === "PreviewTrigger";
174
221
  },
175
222
  get isKeyboardDismissDisabled() {
176
223
  return local.isKeyboardDismissDisabled;
@@ -191,6 +238,9 @@ function Popover(props) {
191
238
  } else if (dialogTriggerContext) {
192
239
  dialogTriggerContext.state.open();
193
240
  local.onOpenChange?.(true);
241
+ } else if (overlayTriggerState) {
242
+ overlayTriggerState.open();
243
+ local.onOpenChange?.(true);
194
244
  } else {
195
245
  setInternalOpen(true);
196
246
  local.onOpenChange?.(true);
@@ -202,43 +252,40 @@ function Popover(props) {
202
252
  else if (local.isOpen !== void 0) local.onOpenChange?.(true);
203
253
  else if (triggerContext) triggerContext.state.toggle();
204
254
  else if (dialogTriggerContext) dialogTriggerContext.state.toggle();
255
+ else if (overlayTriggerState) overlayTriggerState.toggle();
205
256
  else {
206
257
  setInternalOpen(true);
207
258
  local.onOpenChange?.(true);
208
259
  }
209
- }
210
- });
211
- const renderValues = createMemo(() => ({
212
- trigger: resolvedTrigger() ?? null,
213
- placement: popoverAria.placement(),
214
- isEntering: local.isEntering ?? false,
215
- isExiting: local.isExiting ?? false
216
- }));
217
- const renderProps = useRenderProps({
218
- get children() {
219
- return props.children;
220
260
  },
221
- class: local.class,
222
- style: local.style,
223
- defaultClassName: "solidaria-Popover"
224
- }, renderValues);
261
+ point: () => triggerContext?.state.point?.() ?? dialogTriggerContext?.state.point?.() ?? null
262
+ });
263
+ const skipAnimation = () => local.shouldSkipAnimation ?? triggerContext?.shouldSkipAnimation?.() ?? false;
264
+ const exitAnimation = createExitAnimation(() => popoverRef(), isOpen);
265
+ const isExiting = () => Boolean(local.isExiting) || !skipAnimation() && exitAnimation();
266
+ const isHidden = useIsHidden();
225
267
  const [triggerWidth, setTriggerWidth] = createSignal();
226
268
  const hasExplicitTriggerWidth = () => {
227
- return renderProps.style()?.["--trigger-width"] != null;
269
+ return (typeof local.style === "function" ? void 0 : local.style)?.["--trigger-width"] != null;
228
270
  };
229
271
  const updateTriggerWidth = () => {
230
272
  const trigger = getTriggerRef();
231
273
  if (!trigger || hasExplicitTriggerWidth()) return;
232
- setTriggerWidth(`${trigger.getBoundingClientRect().width}px`);
274
+ const width = trigger instanceof HTMLElement ? trigger.offsetWidth : trigger.getBoundingClientRect().width;
275
+ setTriggerWidth(`${width}px`);
233
276
  };
234
- createEffect(() => {
277
+ createTrackedEffect(() => {
278
+ const _s2Cleanups = [];
235
279
  if (!isOpen()) return;
236
280
  updateTriggerWidth();
237
281
  const trigger = getTriggerRef();
238
282
  if (!trigger || hasExplicitTriggerWidth() || typeof ResizeObserver === "undefined") return;
239
283
  const observer = new ResizeObserver(updateTriggerWidth);
240
284
  observer.observe(trigger);
241
- onCleanup(() => observer.disconnect());
285
+ _s2Cleanups.push(() => observer.disconnect());
286
+ return () => {
287
+ for (const c of _s2Cleanups) c();
288
+ };
242
289
  });
243
290
  const domProps = createMemo(() => filterDOMProps(rest, { global: true }));
244
291
  const overlayId = () => {
@@ -248,175 +295,315 @@ function Popover(props) {
248
295
  const { style: _style, ref: _ref, ...remaining } = popoverAria.popoverProps;
249
296
  return remaining;
250
297
  };
251
- const mergedStyle = () => {
252
- const ariaStyle = popoverAria.popoverProps.style;
253
- const renderStyle = renderProps.style() || {};
298
+ const shouldBeDialogBase = () => !local.isNonModal || resolvedTrigger() === "SubmenuTrigger" || resolvedTrigger() === "PreviewTrigger";
299
+ const [isDialog, setIsDialog] = createSignal(shouldBeDialogBase());
300
+ const [overlayContain, setOverlayContain] = createSignal(false);
301
+ createEffect(() => {
254
302
  return {
255
- ...ariaStyle,
256
- ...renderStyle,
257
- "--trigger-width": renderStyle["--trigger-width"] ?? triggerWidth()
303
+ node: popoverRef(),
304
+ dialogBase: shouldBeDialogBase()
258
305
  };
259
- };
260
- const shouldBeDialog = () => !local.isNonModal || resolvedTrigger() === "SubmenuTrigger";
306
+ }, ({ node, dialogBase }) => {
307
+ if (!node) return;
308
+ setIsDialog(dialogBase && node.querySelector("[role=dialog]") == null);
309
+ });
310
+ const shouldBeDialog = () => isDialog();
261
311
  const shouldContainFocus = () => {
262
312
  if (!shouldBeDialog()) return false;
263
- const trigger = resolvedTrigger();
264
- return trigger !== "MenuTrigger" && trigger !== "SubmenuTrigger";
313
+ return resolvedTrigger() !== "PreviewTrigger";
265
314
  };
266
315
  const portalContext = useUNSAFE_PortalContext();
267
316
  const portalContainer = () => {
268
317
  if (isSubPopover()) return popoverGroupContext?.() ?? portalContext.getContainer?.() ?? void 0;
269
318
  return portalContext.getContainer?.() ?? void 0;
270
319
  };
320
+ const callerDir = () => {
321
+ const value = rest.dir;
322
+ if (value === "ltr" || value === "rtl" || value === "auto") return value;
323
+ };
324
+ const callerLang = () => rest.lang;
325
+ const stampOverlayLocale = (el) => {
326
+ if (!el) return;
327
+ const loc = locale();
328
+ const dir = callerDir();
329
+ const lang = callerLang();
330
+ if (!dir) el.dir = loc.direction;
331
+ else el.dir = dir;
332
+ if (!lang) el.lang = loc.locale;
333
+ else el.lang = lang;
334
+ };
335
+ createEffect(() => {
336
+ const el = popoverRef();
337
+ domProps();
338
+ cleanPopoverProps();
339
+ triggerContext?.overlayProps;
340
+ locale();
341
+ return el;
342
+ }, (el) => {
343
+ if (!el) return;
344
+ stampOverlayLocale(el);
345
+ });
271
346
  createEffect(() => {
272
- if (!isOpen() || !shouldBeDialog()) return;
273
- if ((local.autoFocus ?? true) === false) return;
274
- if (!popoverRef()) return;
275
- if (resolvedTrigger() === "SubmenuTrigger") return;
347
+ return {
348
+ open: isOpen(),
349
+ dialog: shouldBeDialog(),
350
+ autoFocus: local.autoFocus ?? true,
351
+ node: popoverRef(),
352
+ trigger: resolvedTrigger()
353
+ };
354
+ }, ({ open, dialog, autoFocus, node, trigger }) => {
355
+ if (!open || !dialog) return;
356
+ if (autoFocus === false) return;
357
+ if (!node) return;
358
+ if (trigger === "SubmenuTrigger") return;
359
+ if (trigger === "PreviewTrigger") return;
276
360
  let timeout;
277
361
  let frame;
278
362
  const focusIfNeeded = () => {
279
363
  if (!isOpen() || !shouldBeDialog()) return;
280
- const node = popoverRef();
281
- if (!node || resolvedTrigger() === "SubmenuTrigger") return;
282
- if (document.activeElement === node || node.contains(document.activeElement)) return;
283
- node.focus();
364
+ const current = popoverRef();
365
+ if (!current || resolvedTrigger() === "SubmenuTrigger") return;
366
+ if (resolvedTrigger() === "PreviewTrigger") return;
367
+ if (current.querySelector("[role=dialog]")) return;
368
+ if (document.activeElement === current || current.contains(document.activeElement)) return;
369
+ current.focus();
284
370
  };
285
371
  const scheduleFocus = () => {
286
372
  timeout = window.setTimeout(focusIfNeeded, 0);
287
373
  };
288
374
  if (typeof window.requestAnimationFrame === "function") frame = window.requestAnimationFrame(scheduleFocus);
289
375
  else scheduleFocus();
290
- onCleanup(() => {
376
+ return () => {
291
377
  if (frame !== void 0) window.cancelAnimationFrame(frame);
292
378
  if (timeout !== void 0) window.clearTimeout(timeout);
293
- });
379
+ };
294
380
  });
295
- createEffect(() => {
296
- if (!isOpen()) return;
297
- if (local.isKeyboardDismissDisabled) return;
381
+ createEffect(() => ({
382
+ open: isOpen(),
383
+ keyboardDismissDisabled: !!local.isKeyboardDismissDisabled
384
+ }), ({ open, keyboardDismissDisabled }) => {
385
+ if (!open) return;
386
+ if (keyboardDismissDisabled) return;
298
387
  const onKeyDown = (event) => {
299
388
  if (event.key !== "Escape") return;
300
389
  if (event.defaultPrevented) return;
301
390
  close();
302
391
  };
303
392
  document.addEventListener("keydown", onKeyDown);
304
- onCleanup(() => document.removeEventListener("keydown", onKeyDown));
393
+ return () => document.removeEventListener("keydown", onKeyDown);
305
394
  });
306
- const overlay = () => createComponent(PopoverContext.Provider, {
307
- get value() {
395
+ const isNonModal = () => local.isNonModal ?? resolvedTrigger() === "PreviewTrigger";
396
+ function PopoverInner() {
397
+ const enterAnimation = createEnterAnimation(() => popoverRef(), () => popoverAria.placement() != null);
398
+ const isEntering = () => Boolean(local.isEntering) || !skipAnimation() && (enterAnimation() || isOpen() && popoverAria.placement() == null);
399
+ const renderValues = createMemo(() => {
400
+ const preferred = preferredPlacementAxis(local.placement);
401
+ const entering = isEntering();
308
402
  return {
309
- placement: popoverAria.placement,
310
- arrowProps: () => popoverAria.arrowProps
403
+ trigger: resolvedTrigger() ?? null,
404
+ placement: popoverAria.placement() ?? preferred,
405
+ isEntering: entering,
406
+ isExiting: isExiting()
311
407
  };
312
- },
313
- get children() {
314
- return createComponent(FocusScope, {
315
- get contain() {
316
- return shouldContainFocus();
317
- },
318
- restoreFocus: true,
319
- get children() {
320
- var _el$2 = getNextElement(_tmpl$2), _el$3 = _el$2.firstChild, [_el$4, _co$] = getNextMarker(_el$3.nextSibling), _el$5 = _el$4.nextSibling, [_el$6, _co$2] = getNextMarker(_el$5.nextSibling), _el$7 = _el$6.nextSibling, [_el$8, _co$3] = getNextMarker(_el$7.nextSibling);
321
- use(setPopoverRef, _el$2);
322
- spread(_el$2, mergeProps(domProps, cleanPopoverProps, {
323
- get id() {
324
- return overlayId();
325
- },
326
- get role() {
327
- return shouldBeDialog() ? "dialog" : void 0;
328
- },
329
- get tabIndex() {
330
- return shouldBeDialog() ? -1 : void 0;
331
- },
332
- get ["class"]() {
333
- return renderProps.class();
334
- },
335
- get style() {
336
- return mergedStyle();
337
- },
338
- get lang() {
339
- return locale().locale;
340
- },
341
- get dir() {
342
- return locale().direction;
343
- },
344
- get ["data-trigger"]() {
345
- return resolvedTrigger();
346
- },
347
- get ["data-placement"]() {
348
- return popoverAria.placement();
349
- },
350
- get ["data-entering"]() {
351
- return dataAttr(local.isEntering);
352
- },
353
- get ["data-exiting"]() {
354
- return dataAttr(local.isExiting);
355
- }
356
- }), false, true);
357
- insert(_el$2, createComponent(Show, {
358
- get when() {
359
- return !local.isNonModal;
360
- },
361
- get children() {
362
- return createComponent(PopoverDismissButton, { onDismiss: close });
363
- }
364
- }), _el$4, _co$);
365
- insert(_el$2, () => renderProps.renderChildren(), _el$6, _co$2);
366
- insert(_el$2, createComponent(PopoverDismissButton, { onDismiss: close }), _el$8, _co$3);
367
- runHydrationEvents();
368
- return _el$2;
369
- }
370
- });
371
- }
372
- });
408
+ });
409
+ const renderProps = useRenderProps({
410
+ get children() {
411
+ return props.children;
412
+ },
413
+ class: local.class,
414
+ style: local.style,
415
+ defaultClassName: "solidaria-Popover"
416
+ }, renderValues);
417
+ const mergedStyle = () => {
418
+ const ariaStyle = popoverAria.popoverProps.style;
419
+ const renderStyle = renderProps.style() || {};
420
+ return {
421
+ ...ariaStyle,
422
+ ...renderStyle,
423
+ "--trigger-width": renderStyle["--trigger-width"] ?? triggerWidth()
424
+ };
425
+ };
426
+ return createComponent(PopoverContext, {
427
+ get value() {
428
+ return {
429
+ placement: popoverAria.placement,
430
+ arrowProps: () => popoverAria.arrowProps
431
+ };
432
+ },
433
+ get children() {
434
+ return createComponent(OverlayContext, {
435
+ value: { setContain: setOverlayContain },
436
+ get children() {
437
+ var _el$2 = getNextElement(_tmpl$2);
438
+ var _el$3 = _el$2.firstChild;
439
+ var [_el$4, _el$5] = getNextMarker(_el$3.nextSibling);
440
+ var _el$6 = _el$4.nextSibling;
441
+ var [_el$7, _el$8] = getNextMarker(_el$6.nextSibling);
442
+ var _el$9 = _el$7.nextSibling;
443
+ var [_el$10, _el$11] = getNextMarker(_el$9.nextSibling);
444
+ ref(() => {
445
+ return (el) => {
446
+ setPopoverRef(el);
447
+ triggerContext?.setOverlayRef?.(el);
448
+ stampOverlayLocale(el);
449
+ };
450
+ }, _el$2);
451
+ spread(_el$2, [
452
+ domProps,
453
+ cleanPopoverProps,
454
+ () => {
455
+ return triggerContext?.overlayProps ?? {};
456
+ },
457
+ {
458
+ get id() {
459
+ return overlayId();
460
+ },
461
+ get role() {
462
+ return shouldBeDialog() ? "dialog" : void 0;
463
+ },
464
+ get tabindex() {
465
+ return shouldBeDialog() ? -1 : void 0;
466
+ },
467
+ get "aria-labelledby"() {
468
+ return overlayLabelledBy();
469
+ },
470
+ get "class"() {
471
+ return renderProps.class();
472
+ },
473
+ get style() {
474
+ return mergedStyle();
475
+ },
476
+ get lang() {
477
+ return callerLang() ?? locale().locale;
478
+ },
479
+ get dir() {
480
+ return callerDir() ?? locale().direction;
481
+ },
482
+ get "data-trigger"() {
483
+ return resolvedTrigger();
484
+ },
485
+ get "data-placement"() {
486
+ return renderValues().placement;
487
+ },
488
+ get "data-entering"() {
489
+ return dataAttr(isEntering());
490
+ },
491
+ get "data-exiting"() {
492
+ return dataAttr(isExiting());
493
+ }
494
+ }
495
+ ], true);
496
+ insert(_el$2, createComponent(Show, {
497
+ get when() {
498
+ return !isNonModal();
499
+ },
500
+ get children() {
501
+ return createComponent(PopoverDismissButton, { onDismiss: close });
502
+ }
503
+ }), _el$4, _el$5);
504
+ insert(_el$2, scope(() => {
505
+ return renderProps.renderChildrenStable();
506
+ }), _el$7, _el$8);
507
+ insert(_el$2, createComponent(PopoverDismissButton, { onDismiss: close }), _el$10, _el$11);
508
+ runHydrationEvents();
509
+ return _el$2;
510
+ }
511
+ });
512
+ }
513
+ });
514
+ }
373
515
  const underlay = () => (() => {
374
- var _el$9 = getNextElement(_tmpl$3);
375
- spread(_el$9, mergeProps(() => popoverAria.underlayProps, { "style": {
376
- position: "fixed",
377
- inset: 0
378
- } }), false, false);
516
+ var _el$12 = getNextElement(_tmpl$3);
517
+ spread(_el$12, [
518
+ { "data-testid": "underlay" },
519
+ () => {
520
+ return popoverAria.underlayProps;
521
+ },
522
+ { style: {
523
+ position: "fixed",
524
+ inset: 0
525
+ } }
526
+ ], false);
379
527
  runHydrationEvents();
380
- return _el$9;
528
+ return _el$12;
381
529
  })();
530
+ const hiddenChildren = () => {
531
+ const children = props.children;
532
+ if (typeof children === "function") return children({
533
+ trigger: resolvedTrigger() ?? null,
534
+ placement: "bottom",
535
+ isEntering: false,
536
+ isExiting: false
537
+ });
538
+ return children;
539
+ };
382
540
  return createComponent(Show, {
383
541
  get when() {
384
- return memo(() => !!isHydrated())() && (isOpen() || local.isExiting);
542
+ return !isHidden();
543
+ },
544
+ get fallback() {
545
+ return hiddenChildren();
385
546
  },
386
547
  get children() {
387
- return createComponent(Portal, {
388
- get mount() {
389
- return portalContainer();
548
+ return createComponent(Show, {
549
+ get when() {
550
+ return memo(() => {
551
+ return !!isHydrated();
552
+ })() ? isOpen() || isExiting() : isHydrated();
390
553
  },
391
554
  get children() {
392
- return [createComponent(Show, {
393
- get when() {
394
- return memo(() => !!(!local.isNonModal && !isSubPopover()))() && isOpen();
555
+ return createComponent(Portal, {
556
+ get mount() {
557
+ return portalContainer();
395
558
  },
396
559
  get children() {
397
- return underlay();
560
+ return createComponent(FocusableContext, {
561
+ value: null,
562
+ get children() {
563
+ return createComponent(FocusScope, {
564
+ get contain() {
565
+ return memo(() => {
566
+ return !!(shouldContainFocus() || overlayContain());
567
+ })() ? !isExiting() : shouldContainFocus() || overlayContain();
568
+ },
569
+ restoreFocus: true,
570
+ get children() {
571
+ return [createComponent(Show, {
572
+ get when() {
573
+ return memo(() => {
574
+ return !!(!isNonModal() && !isSubPopover());
575
+ })() ? isOpen() : !isNonModal() && !isSubPopover();
576
+ },
577
+ get children() {
578
+ return underlay();
579
+ }
580
+ }), createComponent(Show, {
581
+ get when() {
582
+ return isSubPopover();
583
+ },
584
+ get fallback() {
585
+ var _el$13 = getNextElement(_tmpl$4);
586
+ ref(() => {
587
+ return setGroupRef;
588
+ }, _el$13);
589
+ insert(_el$13, createComponent(PopoverGroupContext, {
590
+ value: () => groupRef(),
591
+ get children() {
592
+ return createComponent(PopoverInner, {});
593
+ }
594
+ }));
595
+ return _el$13;
596
+ },
597
+ get children() {
598
+ return createComponent(PopoverInner, {});
599
+ }
600
+ })];
601
+ }
602
+ });
603
+ }
604
+ });
398
605
  }
399
- }), createComponent(Show, {
400
- get when() {
401
- return isSubPopover();
402
- },
403
- get fallback() {
404
- return (() => {
405
- var _el$0 = getNextElement(_tmpl$4);
406
- use(setGroupRef, _el$0);
407
- insert(_el$0, createComponent(PopoverGroupContext.Provider, {
408
- value: () => groupRef(),
409
- get children() {
410
- return overlay();
411
- }
412
- }));
413
- return _el$0;
414
- })();
415
- },
416
- get children() {
417
- return overlay();
418
- }
419
- })];
606
+ });
420
607
  }
421
608
  });
422
609
  }
@@ -444,28 +631,30 @@ function OverlayArrow(props) {
444
631
  ...localStyle
445
632
  };
446
633
  };
447
- return (() => {
448
- var _el$1 = getNextElement(_tmpl$5);
449
- insert(_el$1, (() => {
450
- var _c$ = memo(() => !!props.render);
451
- return () => _c$() ? props.render() : props.children;
452
- })());
453
- effect((_p$) => {
454
- var _v$ = props.class, _v$2 = mergedStyle(), _v$3 = placement();
455
- _v$ !== _p$.e && className(_el$1, _p$.e = _v$);
456
- _p$.t = style(_el$1, _v$2, _p$.t);
457
- _v$3 !== _p$.a && setAttribute(_el$1, "data-placement", _p$.a = _v$3);
458
- return _p$;
459
- }, {
460
- e: void 0,
461
- t: void 0,
462
- a: void 0
634
+ var _el$14 = getNextElement(_tmpl$3);
635
+ insert(_el$14, scope((() => {
636
+ var _c$ = memo(() => {
637
+ return !!props.render;
463
638
  });
464
- return _el$1;
465
- })();
639
+ return () => {
640
+ return _c$() ? props.render() : props.children;
641
+ };
642
+ })()));
643
+ effect(() => {
644
+ return {
645
+ e: readShallow(props.class),
646
+ t: readShallow(mergedStyle()),
647
+ a: placement()
648
+ };
649
+ }, ({ e, t, a }, _p$) => {
650
+ className(_el$14, e, _p$?.e);
651
+ style(_el$14, t, _p$?.t);
652
+ a !== _p$?.a && setAttribute(_el$14, "data-placement", a);
653
+ });
654
+ return _el$14;
466
655
  }
467
656
  delegateEvents(["click"]);
468
657
  //#endregion
469
- export { OverlayArrow, Popover, Popover as default, PopoverContext, PopoverTrigger, PopoverTriggerContext, usePopoverTrigger };
658
+ export { OverlayArrow, OverlayContext, Popover, Popover as default, PopoverContext, PopoverTrigger, PopoverTriggerContext, usePopoverTrigger };
470
659
 
471
660
  //# sourceMappingURL=Popover.js.map