@react-spectrum/s2 1.3.1 → 1.4.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 (1026) hide show
  1. package/dist/exports/Accordion.cjs.map +1 -1
  2. package/dist/exports/Accordion.mjs.map +1 -1
  3. package/dist/exports/ActionMenu.cjs.map +1 -1
  4. package/dist/exports/ActionMenu.mjs.map +1 -1
  5. package/dist/exports/Card.cjs.map +1 -1
  6. package/dist/exports/Card.mjs.map +1 -1
  7. package/dist/exports/CardView.cjs.map +1 -1
  8. package/dist/exports/CardView.mjs.map +1 -1
  9. package/dist/exports/ColorArea.cjs.map +1 -1
  10. package/dist/exports/ColorArea.mjs.map +1 -1
  11. package/dist/exports/ColorField.cjs.map +1 -1
  12. package/dist/exports/ColorField.mjs.map +1 -1
  13. package/dist/exports/ColorSlider.cjs.map +1 -1
  14. package/dist/exports/ColorSlider.mjs.map +1 -1
  15. package/dist/exports/ColorSwatch.cjs.map +1 -1
  16. package/dist/exports/ColorSwatch.mjs.map +1 -1
  17. package/dist/exports/ColorSwatchPicker.cjs.map +1 -1
  18. package/dist/exports/ColorSwatchPicker.mjs.map +1 -1
  19. package/dist/exports/ColorWheel.cjs.map +1 -1
  20. package/dist/exports/ColorWheel.mjs.map +1 -1
  21. package/dist/exports/ContextualHelp.cjs.map +1 -1
  22. package/dist/exports/ContextualHelp.mjs.map +1 -1
  23. package/dist/exports/Disclosure.cjs.map +1 -1
  24. package/dist/exports/Disclosure.mjs.map +1 -1
  25. package/dist/exports/DragPreview.cjs +12 -0
  26. package/dist/exports/DragPreview.cjs.map +1 -0
  27. package/dist/exports/DragPreview.mjs +7 -0
  28. package/dist/exports/DragPreview.mjs.map +1 -0
  29. package/dist/exports/Icon.cjs.map +1 -1
  30. package/dist/exports/Icon.mjs.map +1 -1
  31. package/dist/exports/LabeledValue.cjs +13 -0
  32. package/dist/exports/LabeledValue.cjs.map +1 -0
  33. package/dist/exports/LabeledValue.mjs +7 -0
  34. package/dist/exports/LabeledValue.mjs.map +1 -0
  35. package/dist/exports/Menu.cjs.map +1 -1
  36. package/dist/exports/Menu.mjs.map +1 -1
  37. package/dist/exports/SegmentedControl.cjs.map +1 -1
  38. package/dist/exports/SegmentedControl.mjs.map +1 -1
  39. package/dist/exports/TableView.cjs +1 -0
  40. package/dist/exports/TableView.cjs.map +1 -1
  41. package/dist/exports/TableView.mjs +2 -2
  42. package/dist/exports/TableView.mjs.map +1 -1
  43. package/dist/exports/TreeView.cjs.map +1 -1
  44. package/dist/exports/TreeView.mjs.map +1 -1
  45. package/dist/exports/index.cjs +17 -0
  46. package/dist/exports/index.cjs.map +1 -1
  47. package/dist/exports/index.mjs +10 -2
  48. package/dist/exports/index.mjs.map +1 -1
  49. package/dist/exports/useAsyncList.cjs.map +1 -1
  50. package/dist/exports/useAsyncList.mjs.map +1 -1
  51. package/dist/exports/useDragAndDrop.cjs +21 -0
  52. package/dist/exports/useDragAndDrop.cjs.map +1 -0
  53. package/dist/exports/useDragAndDrop.mjs +11 -0
  54. package/dist/exports/useDragAndDrop.mjs.map +1 -0
  55. package/dist/private/Accordion.cjs +2 -2
  56. package/dist/private/Accordion.cjs.map +1 -1
  57. package/dist/private/Accordion.css +2 -2
  58. package/dist/private/Accordion.css.map +1 -1
  59. package/dist/private/Accordion.mjs +2 -2
  60. package/dist/private/Accordion.mjs.map +1 -1
  61. package/dist/private/ActionBar.cjs +61 -61
  62. package/dist/private/ActionBar.cjs.map +1 -1
  63. package/dist/private/ActionBar.css +58 -58
  64. package/dist/private/ActionBar.css.map +1 -1
  65. package/dist/private/ActionBar.mjs +61 -61
  66. package/dist/private/ActionBar.mjs.map +1 -1
  67. package/dist/private/ActionButton.cjs +350 -323
  68. package/dist/private/ActionButton.cjs.map +1 -1
  69. package/dist/private/ActionButton.css +203 -167
  70. package/dist/private/ActionButton.css.map +1 -1
  71. package/dist/private/ActionButton.mjs +351 -324
  72. package/dist/private/ActionButton.mjs.map +1 -1
  73. package/dist/private/ActionButtonGroup.cjs +15 -15
  74. package/dist/private/ActionButtonGroup.cjs.map +1 -1
  75. package/dist/private/ActionButtonGroup.css +9 -9
  76. package/dist/private/ActionButtonGroup.css.map +1 -1
  77. package/dist/private/ActionButtonGroup.mjs +15 -15
  78. package/dist/private/ActionButtonGroup.mjs.map +1 -1
  79. package/dist/private/ActionMenu.cjs.map +1 -1
  80. package/dist/private/ActionMenu.mjs.map +1 -1
  81. package/dist/private/Add.cjs +10 -10
  82. package/dist/private/Add.cjs.map +1 -1
  83. package/dist/private/Add.css +6 -6
  84. package/dist/private/Add.css.map +1 -1
  85. package/dist/private/Add.mjs +10 -10
  86. package/dist/private/Add.mjs.map +1 -1
  87. package/dist/private/AlertDialog.cjs +3 -3
  88. package/dist/private/AlertDialog.cjs.map +1 -1
  89. package/dist/private/AlertDialog.css +3 -3
  90. package/dist/private/AlertDialog.css.map +1 -1
  91. package/dist/private/AlertDialog.mjs +3 -3
  92. package/dist/private/AlertDialog.mjs.map +1 -1
  93. package/dist/private/Asterisk.cjs +6 -6
  94. package/dist/private/Asterisk.cjs.map +1 -1
  95. package/dist/private/Asterisk.css +4 -4
  96. package/dist/private/Asterisk.css.map +1 -1
  97. package/dist/private/Asterisk.mjs +6 -6
  98. package/dist/private/Asterisk.mjs.map +1 -1
  99. package/dist/private/Avatar.cjs +16 -16
  100. package/dist/private/Avatar.cjs.map +1 -1
  101. package/dist/private/Avatar.css +16 -16
  102. package/dist/private/Avatar.css.map +1 -1
  103. package/dist/private/Avatar.mjs +16 -16
  104. package/dist/private/Avatar.mjs.map +1 -1
  105. package/dist/private/AvatarGroup.cjs +120 -120
  106. package/dist/private/AvatarGroup.cjs.map +1 -1
  107. package/dist/private/AvatarGroup.css +31 -31
  108. package/dist/private/AvatarGroup.css.map +1 -1
  109. package/dist/private/AvatarGroup.mjs +120 -120
  110. package/dist/private/AvatarGroup.mjs.map +1 -1
  111. package/dist/private/Badge.cjs +197 -197
  112. package/dist/private/Badge.cjs.map +1 -1
  113. package/dist/private/Badge.css +125 -125
  114. package/dist/private/Badge.css.map +1 -1
  115. package/dist/private/Badge.mjs +197 -197
  116. package/dist/private/Badge.mjs.map +1 -1
  117. package/dist/private/Breadcrumbs.cjs +234 -234
  118. package/dist/private/Breadcrumbs.cjs.map +1 -1
  119. package/dist/private/Breadcrumbs.css +100 -100
  120. package/dist/private/Breadcrumbs.css.map +1 -1
  121. package/dist/private/Breadcrumbs.mjs +234 -234
  122. package/dist/private/Breadcrumbs.mjs.map +1 -1
  123. package/dist/private/Button.cjs +326 -335
  124. package/dist/private/Button.cjs.map +1 -1
  125. package/dist/private/Button.css +172 -180
  126. package/dist/private/Button.css.map +1 -1
  127. package/dist/private/Button.mjs +326 -335
  128. package/dist/private/Button.mjs.map +1 -1
  129. package/dist/private/ButtonGroup.cjs +20 -20
  130. package/dist/private/ButtonGroup.cjs.map +1 -1
  131. package/dist/private/ButtonGroup.css +15 -15
  132. package/dist/private/ButtonGroup.css.map +1 -1
  133. package/dist/private/ButtonGroup.mjs +20 -20
  134. package/dist/private/ButtonGroup.mjs.map +1 -1
  135. package/dist/private/Calendar.cjs +263 -312
  136. package/dist/private/Calendar.cjs.map +1 -1
  137. package/dist/private/Calendar.css +155 -167
  138. package/dist/private/Calendar.css.map +1 -1
  139. package/dist/private/Calendar.mjs +266 -315
  140. package/dist/private/Calendar.mjs.map +1 -1
  141. package/dist/private/Card.cjs +309 -309
  142. package/dist/private/Card.cjs.map +1 -1
  143. package/dist/private/Card.css +206 -206
  144. package/dist/private/Card.css.map +1 -1
  145. package/dist/private/Card.mjs +309 -309
  146. package/dist/private/Card.mjs.map +1 -1
  147. package/dist/private/CardView.cjs +17 -17
  148. package/dist/private/CardView.cjs.map +1 -1
  149. package/dist/private/CardView.css +17 -17
  150. package/dist/private/CardView.css.map +1 -1
  151. package/dist/private/CardView.mjs +17 -17
  152. package/dist/private/CardView.mjs.map +1 -1
  153. package/dist/private/CenterBaseline.cjs +5 -1
  154. package/dist/private/CenterBaseline.cjs.map +1 -1
  155. package/dist/private/CenterBaseline.css +2 -2
  156. package/dist/private/CenterBaseline.css.map +1 -1
  157. package/dist/private/CenterBaseline.mjs +5 -1
  158. package/dist/private/CenterBaseline.mjs.map +1 -1
  159. package/dist/private/Checkbox.cjs +268 -208
  160. package/dist/private/Checkbox.cjs.map +1 -1
  161. package/dist/private/Checkbox.css +170 -98
  162. package/dist/private/Checkbox.css.map +1 -1
  163. package/dist/private/Checkbox.mjs +269 -209
  164. package/dist/private/Checkbox.mjs.map +1 -1
  165. package/dist/private/CheckboxGroup.cjs +44 -43
  166. package/dist/private/CheckboxGroup.cjs.map +1 -1
  167. package/dist/private/CheckboxGroup.css +37 -37
  168. package/dist/private/CheckboxGroup.css.map +1 -1
  169. package/dist/private/CheckboxGroup.mjs +44 -43
  170. package/dist/private/CheckboxGroup.mjs.map +1 -1
  171. package/dist/private/Checkmark.cjs +12 -12
  172. package/dist/private/Checkmark.cjs.map +1 -1
  173. package/dist/private/Checkmark.css +8 -8
  174. package/dist/private/Checkmark.css.map +1 -1
  175. package/dist/private/Checkmark.mjs +12 -12
  176. package/dist/private/Checkmark.mjs.map +1 -1
  177. package/dist/private/Chevron.cjs +12 -12
  178. package/dist/private/Chevron.cjs.map +1 -1
  179. package/dist/private/Chevron.css +10 -10
  180. package/dist/private/Chevron.css.map +1 -1
  181. package/dist/private/Chevron.mjs +12 -12
  182. package/dist/private/Chevron.mjs.map +1 -1
  183. package/dist/private/ClearButton.cjs +30 -30
  184. package/dist/private/ClearButton.cjs.map +1 -1
  185. package/dist/private/ClearButton.css +30 -30
  186. package/dist/private/ClearButton.css.map +1 -1
  187. package/dist/private/ClearButton.mjs +30 -30
  188. package/dist/private/ClearButton.mjs.map +1 -1
  189. package/dist/private/CloseButton.cjs +52 -57
  190. package/dist/private/CloseButton.cjs.map +1 -1
  191. package/dist/private/CloseButton.css +47 -51
  192. package/dist/private/CloseButton.css.map +1 -1
  193. package/dist/private/CloseButton.mjs +52 -57
  194. package/dist/private/CloseButton.mjs.map +1 -1
  195. package/dist/private/ColorArea.cjs +16 -16
  196. package/dist/private/ColorArea.cjs.map +1 -1
  197. package/dist/private/ColorArea.css +16 -16
  198. package/dist/private/ColorArea.css.map +1 -1
  199. package/dist/private/ColorArea.mjs +16 -16
  200. package/dist/private/ColorArea.mjs.map +1 -1
  201. package/dist/private/ColorField.cjs +44 -33
  202. package/dist/private/ColorField.cjs.map +1 -1
  203. package/dist/private/ColorField.css +27 -27
  204. package/dist/private/ColorField.css.map +1 -1
  205. package/dist/private/ColorField.mjs +44 -33
  206. package/dist/private/ColorField.mjs.map +1 -1
  207. package/dist/private/ColorHandle.cjs +27 -27
  208. package/dist/private/ColorHandle.cjs.map +1 -1
  209. package/dist/private/ColorHandle.css +42 -42
  210. package/dist/private/ColorHandle.css.map +1 -1
  211. package/dist/private/ColorHandle.mjs +27 -27
  212. package/dist/private/ColorHandle.mjs.map +1 -1
  213. package/dist/private/ColorSlider.cjs +113 -109
  214. package/dist/private/ColorSlider.cjs.map +1 -1
  215. package/dist/private/ColorSlider.css +52 -52
  216. package/dist/private/ColorSlider.css.map +1 -1
  217. package/dist/private/ColorSlider.mjs +113 -109
  218. package/dist/private/ColorSlider.mjs.map +1 -1
  219. package/dist/private/ColorSwatch.cjs +29 -29
  220. package/dist/private/ColorSwatch.cjs.map +1 -1
  221. package/dist/private/ColorSwatch.css +29 -29
  222. package/dist/private/ColorSwatch.css.map +1 -1
  223. package/dist/private/ColorSwatch.mjs +29 -29
  224. package/dist/private/ColorSwatch.mjs.map +1 -1
  225. package/dist/private/ColorSwatchPicker.cjs +29 -29
  226. package/dist/private/ColorSwatchPicker.cjs.map +1 -1
  227. package/dist/private/ColorSwatchPicker.css +48 -48
  228. package/dist/private/ColorSwatchPicker.css.map +1 -1
  229. package/dist/private/ColorSwatchPicker.mjs +29 -29
  230. package/dist/private/ColorSwatchPicker.mjs.map +1 -1
  231. package/dist/private/ColorWheel.cjs +26 -26
  232. package/dist/private/ColorWheel.cjs.map +1 -1
  233. package/dist/private/ColorWheel.css +17 -17
  234. package/dist/private/ColorWheel.css.map +1 -1
  235. package/dist/private/ColorWheel.mjs +26 -26
  236. package/dist/private/ColorWheel.mjs.map +1 -1
  237. package/dist/private/ComboBox.cjs +384 -405
  238. package/dist/private/ComboBox.cjs.map +1 -1
  239. package/dist/private/ComboBox.css +192 -188
  240. package/dist/private/ComboBox.css.map +1 -1
  241. package/dist/private/ComboBox.mjs +385 -406
  242. package/dist/private/ComboBox.mjs.map +1 -1
  243. package/dist/private/Content.cjs +2 -1
  244. package/dist/private/Content.cjs.map +1 -1
  245. package/dist/private/Content.mjs +2 -1
  246. package/dist/private/Content.mjs.map +1 -1
  247. package/dist/private/ContextualHelp.cjs +5 -5
  248. package/dist/private/ContextualHelp.cjs.map +1 -1
  249. package/dist/private/ContextualHelp.css +50 -50
  250. package/dist/private/ContextualHelp.css.map +1 -1
  251. package/dist/private/ContextualHelp.mjs +5 -5
  252. package/dist/private/ContextualHelp.mjs.map +1 -1
  253. package/dist/private/CornerTriangle.cjs +76 -0
  254. package/dist/private/CornerTriangle.cjs.map +1 -0
  255. package/dist/private/CornerTriangle.css +26 -0
  256. package/dist/private/CornerTriangle.css.map +1 -0
  257. package/dist/private/CornerTriangle.mjs +71 -0
  258. package/dist/private/CornerTriangle.mjs.map +1 -0
  259. package/dist/private/Cross.cjs +14 -14
  260. package/dist/private/Cross.cjs.map +1 -1
  261. package/dist/private/Cross.css +10 -10
  262. package/dist/private/Cross.css.map +1 -1
  263. package/dist/private/Cross.mjs +14 -14
  264. package/dist/private/Cross.mjs.map +1 -1
  265. package/dist/private/CustomDialog.cjs +27 -26
  266. package/dist/private/CustomDialog.cjs.map +1 -1
  267. package/dist/private/CustomDialog.css +25 -25
  268. package/dist/private/CustomDialog.css.map +1 -1
  269. package/dist/private/CustomDialog.mjs +27 -26
  270. package/dist/private/CustomDialog.mjs.map +1 -1
  271. package/dist/private/Dash.cjs +10 -10
  272. package/dist/private/Dash.cjs.map +1 -1
  273. package/dist/private/Dash.css +6 -6
  274. package/dist/private/Dash.css.map +1 -1
  275. package/dist/private/Dash.mjs +10 -10
  276. package/dist/private/Dash.mjs.map +1 -1
  277. package/dist/private/DateField.cjs +73 -73
  278. package/dist/private/DateField.cjs.map +1 -1
  279. package/dist/private/DateField.css +77 -77
  280. package/dist/private/DateField.css.map +1 -1
  281. package/dist/private/DateField.mjs +73 -73
  282. package/dist/private/DateField.mjs.map +1 -1
  283. package/dist/private/DatePicker.cjs +172 -172
  284. package/dist/private/DatePicker.cjs.map +1 -1
  285. package/dist/private/DatePicker.css +128 -128
  286. package/dist/private/DatePicker.css.map +1 -1
  287. package/dist/private/DatePicker.mjs +172 -172
  288. package/dist/private/DatePicker.mjs.map +1 -1
  289. package/dist/private/DateRangePicker.cjs +55 -55
  290. package/dist/private/DateRangePicker.cjs.map +1 -1
  291. package/dist/private/DateRangePicker.css +59 -59
  292. package/dist/private/DateRangePicker.css.map +1 -1
  293. package/dist/private/DateRangePicker.mjs +55 -55
  294. package/dist/private/DateRangePicker.mjs.map +1 -1
  295. package/dist/private/Dialog.cjs +21 -18
  296. package/dist/private/Dialog.cjs.map +1 -1
  297. package/dist/private/Dialog.css +70 -70
  298. package/dist/private/Dialog.css.map +1 -1
  299. package/dist/private/Dialog.mjs +21 -18
  300. package/dist/private/Dialog.mjs.map +1 -1
  301. package/dist/private/DialogContainer.cjs.map +1 -1
  302. package/dist/private/DialogContainer.mjs.map +1 -1
  303. package/dist/private/DialogTrigger.cjs.map +1 -1
  304. package/dist/private/DialogTrigger.mjs.map +1 -1
  305. package/dist/private/Disclosure.cjs +119 -119
  306. package/dist/private/Disclosure.cjs.map +1 -1
  307. package/dist/private/Disclosure.css +112 -112
  308. package/dist/private/Disclosure.css.map +1 -1
  309. package/dist/private/Disclosure.mjs +119 -119
  310. package/dist/private/Disclosure.mjs.map +1 -1
  311. package/dist/private/Divider.cjs +25 -25
  312. package/dist/private/Divider.cjs.map +1 -1
  313. package/dist/private/Divider.css +25 -25
  314. package/dist/private/Divider.css.map +1 -1
  315. package/dist/private/Divider.mjs +25 -25
  316. package/dist/private/Divider.mjs.map +1 -1
  317. package/dist/private/DragHandle.cjs +76 -0
  318. package/dist/private/DragHandle.cjs.map +1 -0
  319. package/dist/private/DragHandle.css +26 -0
  320. package/dist/private/DragHandle.css.map +1 -0
  321. package/dist/private/DragHandle.mjs +71 -0
  322. package/dist/private/DragHandle.mjs.map +1 -0
  323. package/dist/private/DragPreview.cjs +297 -0
  324. package/dist/private/DragPreview.cjs.map +1 -0
  325. package/dist/private/DragPreview.css +459 -0
  326. package/dist/private/DragPreview.css.map +1 -0
  327. package/dist/private/DragPreview.mjs +288 -0
  328. package/dist/private/DragPreview.mjs.map +1 -0
  329. package/dist/private/DropZone.cjs +61 -61
  330. package/dist/private/DropZone.cjs.map +1 -1
  331. package/dist/private/DropZone.css +57 -57
  332. package/dist/private/DropZone.css.map +1 -1
  333. package/dist/private/DropZone.mjs +61 -61
  334. package/dist/private/DropZone.mjs.map +1 -1
  335. package/dist/private/Field.cjs +421 -372
  336. package/dist/private/Field.cjs.map +1 -1
  337. package/dist/private/Field.css +206 -154
  338. package/dist/private/Field.css.map +1 -1
  339. package/dist/private/Field.mjs +422 -373
  340. package/dist/private/Field.mjs.map +1 -1
  341. package/dist/private/Fonts.cjs.map +1 -1
  342. package/dist/private/Fonts.mjs.map +1 -1
  343. package/dist/private/Form.cjs +9 -9
  344. package/dist/private/Form.cjs.map +1 -1
  345. package/dist/private/Form.css +9 -9
  346. package/dist/private/Form.css.map +1 -1
  347. package/dist/private/Form.mjs +9 -9
  348. package/dist/private/Form.mjs.map +1 -1
  349. package/dist/private/FullscreenDialog.cjs +7 -6
  350. package/dist/private/FullscreenDialog.cjs.map +1 -1
  351. package/dist/private/FullscreenDialog.css +78 -78
  352. package/dist/private/FullscreenDialog.css.map +1 -1
  353. package/dist/private/FullscreenDialog.mjs +7 -6
  354. package/dist/private/FullscreenDialog.mjs.map +1 -1
  355. package/dist/private/IllustratedMessage.cjs +228 -228
  356. package/dist/private/IllustratedMessage.cjs.map +1 -1
  357. package/dist/private/IllustratedMessage.css +72 -72
  358. package/dist/private/IllustratedMessage.css.map +1 -1
  359. package/dist/private/IllustratedMessage.mjs +228 -228
  360. package/dist/private/IllustratedMessage.mjs.map +1 -1
  361. package/dist/private/Image.cjs +16 -16
  362. package/dist/private/Image.cjs.map +1 -1
  363. package/dist/private/Image.css +14 -14
  364. package/dist/private/Image.css.map +1 -1
  365. package/dist/private/Image.mjs +16 -16
  366. package/dist/private/Image.mjs.map +1 -1
  367. package/dist/private/ImageCoordinator.cjs.map +1 -1
  368. package/dist/private/ImageCoordinator.mjs.map +1 -1
  369. package/dist/private/InlineAlert.cjs +100 -100
  370. package/dist/private/InlineAlert.cjs.map +1 -1
  371. package/dist/private/InlineAlert.css +76 -76
  372. package/dist/private/InlineAlert.css.map +1 -1
  373. package/dist/private/InlineAlert.mjs +100 -100
  374. package/dist/private/InlineAlert.mjs.map +1 -1
  375. package/dist/private/LabeledValue.cjs +359 -0
  376. package/dist/private/LabeledValue.cjs.map +1 -0
  377. package/dist/private/LabeledValue.css +285 -0
  378. package/dist/private/LabeledValue.css.map +1 -0
  379. package/dist/private/LabeledValue.mjs +353 -0
  380. package/dist/private/LabeledValue.mjs.map +1 -0
  381. package/dist/private/Link.cjs +49 -49
  382. package/dist/private/Link.cjs.map +1 -1
  383. package/dist/private/Link.css +41 -41
  384. package/dist/private/Link.css.map +1 -1
  385. package/dist/private/Link.mjs +49 -49
  386. package/dist/private/Link.mjs.map +1 -1
  387. package/dist/private/LinkOut.cjs +8 -8
  388. package/dist/private/LinkOut.cjs.map +1 -1
  389. package/dist/private/LinkOut.css +8 -8
  390. package/dist/private/LinkOut.css.map +1 -1
  391. package/dist/private/LinkOut.mjs +8 -8
  392. package/dist/private/LinkOut.mjs.map +1 -1
  393. package/dist/private/ListView.cjs +422 -489
  394. package/dist/private/ListView.cjs.map +1 -1
  395. package/dist/private/ListView.css +276 -348
  396. package/dist/private/ListView.css.map +1 -1
  397. package/dist/private/ListView.mjs +422 -488
  398. package/dist/private/ListView.mjs.map +1 -1
  399. package/dist/private/Menu.cjs +489 -471
  400. package/dist/private/Menu.cjs.map +1 -1
  401. package/dist/private/Menu.css +205 -205
  402. package/dist/private/Menu.css.map +1 -1
  403. package/dist/private/Menu.mjs +489 -471
  404. package/dist/private/Menu.mjs.map +1 -1
  405. package/dist/private/Meter.cjs +153 -153
  406. package/dist/private/Meter.cjs.map +1 -1
  407. package/dist/private/Meter.css +91 -91
  408. package/dist/private/Meter.css.map +1 -1
  409. package/dist/private/Meter.mjs +153 -153
  410. package/dist/private/Meter.mjs.map +1 -1
  411. package/dist/private/Modal.cjs +74 -74
  412. package/dist/private/Modal.cjs.map +1 -1
  413. package/dist/private/Modal.css +59 -59
  414. package/dist/private/Modal.css.map +1 -1
  415. package/dist/private/Modal.mjs +74 -74
  416. package/dist/private/Modal.mjs.map +1 -1
  417. package/dist/private/NotificationBadge.cjs +56 -56
  418. package/dist/private/NotificationBadge.cjs.map +1 -1
  419. package/dist/private/NotificationBadge.css +49 -49
  420. package/dist/private/NotificationBadge.css.map +1 -1
  421. package/dist/private/NotificationBadge.mjs +56 -56
  422. package/dist/private/NotificationBadge.mjs.map +1 -1
  423. package/dist/private/NumberField.cjs +115 -114
  424. package/dist/private/NumberField.cjs.map +1 -1
  425. package/dist/private/NumberField.css +99 -99
  426. package/dist/private/NumberField.css.map +1 -1
  427. package/dist/private/NumberField.mjs +115 -114
  428. package/dist/private/NumberField.mjs.map +1 -1
  429. package/dist/private/Picker.cjs +277 -277
  430. package/dist/private/Picker.cjs.map +1 -1
  431. package/dist/private/Picker.css +173 -173
  432. package/dist/private/Picker.css.map +1 -1
  433. package/dist/private/Picker.mjs +277 -277
  434. package/dist/private/Picker.mjs.map +1 -1
  435. package/dist/private/Popover.cjs +95 -95
  436. package/dist/private/Popover.cjs.map +1 -1
  437. package/dist/private/Popover.css +75 -75
  438. package/dist/private/Popover.css.map +1 -1
  439. package/dist/private/Popover.mjs +95 -95
  440. package/dist/private/Popover.mjs.map +1 -1
  441. package/dist/private/ProgressBar.cjs +163 -163
  442. package/dist/private/ProgressBar.cjs.map +1 -1
  443. package/dist/private/ProgressBar.css +99 -99
  444. package/dist/private/ProgressBar.css.map +1 -1
  445. package/dist/private/ProgressBar.mjs +163 -163
  446. package/dist/private/ProgressBar.mjs.map +1 -1
  447. package/dist/private/ProgressCircle.cjs +31 -31
  448. package/dist/private/ProgressCircle.cjs.map +1 -1
  449. package/dist/private/ProgressCircle.css +24 -24
  450. package/dist/private/ProgressCircle.css.map +1 -1
  451. package/dist/private/ProgressCircle.mjs +31 -31
  452. package/dist/private/ProgressCircle.mjs.map +1 -1
  453. package/dist/private/Provider.cjs +19 -19
  454. package/dist/private/Provider.cjs.map +1 -1
  455. package/dist/private/Provider.css +15 -15
  456. package/dist/private/Provider.css.map +1 -1
  457. package/dist/private/Provider.mjs +19 -19
  458. package/dist/private/Provider.mjs.map +1 -1
  459. package/dist/private/RadioGroup.cjs +251 -203
  460. package/dist/private/RadioGroup.cjs.map +1 -1
  461. package/dist/private/RadioGroup.css +167 -135
  462. package/dist/private/RadioGroup.css.map +1 -1
  463. package/dist/private/RadioGroup.mjs +252 -204
  464. package/dist/private/RadioGroup.mjs.map +1 -1
  465. package/dist/private/RangeCalendar.cjs +19 -17
  466. package/dist/private/RangeCalendar.cjs.map +1 -1
  467. package/dist/private/RangeCalendar.css +17 -17
  468. package/dist/private/RangeCalendar.css.map +1 -1
  469. package/dist/private/RangeCalendar.mjs +19 -17
  470. package/dist/private/RangeCalendar.mjs.map +1 -1
  471. package/dist/private/RangeSlider.cjs +7 -15
  472. package/dist/private/RangeSlider.cjs.map +1 -1
  473. package/dist/private/RangeSlider.mjs +8 -16
  474. package/dist/private/RangeSlider.mjs.map +1 -1
  475. package/dist/private/S2_CornerTriangleSize100.cjs +26 -0
  476. package/dist/private/S2_CornerTriangleSize100.cjs.map +1 -0
  477. package/dist/private/S2_CornerTriangleSize100.mjs +21 -0
  478. package/dist/private/S2_CornerTriangleSize100.mjs.map +1 -0
  479. package/dist/private/S2_CornerTriangleSize200.cjs +26 -0
  480. package/dist/private/S2_CornerTriangleSize200.cjs.map +1 -0
  481. package/dist/private/S2_CornerTriangleSize200.mjs +21 -0
  482. package/dist/private/S2_CornerTriangleSize200.mjs.map +1 -0
  483. package/dist/private/S2_CornerTriangleSize300.cjs +26 -0
  484. package/dist/private/S2_CornerTriangleSize300.cjs.map +1 -0
  485. package/dist/private/S2_CornerTriangleSize300.mjs +21 -0
  486. package/dist/private/S2_CornerTriangleSize300.mjs.map +1 -0
  487. package/dist/private/S2_CornerTriangleSize75.cjs +26 -0
  488. package/dist/private/S2_CornerTriangleSize75.cjs.map +1 -0
  489. package/dist/private/S2_CornerTriangleSize75.mjs +21 -0
  490. package/dist/private/S2_CornerTriangleSize75.mjs.map +1 -0
  491. package/dist/private/S2_DragHandleSize100.cjs +60 -0
  492. package/dist/private/S2_DragHandleSize100.cjs.map +1 -0
  493. package/dist/private/S2_DragHandleSize100.mjs +55 -0
  494. package/dist/private/S2_DragHandleSize100.mjs.map +1 -0
  495. package/dist/private/S2_DragHandleSize200.cjs +60 -0
  496. package/dist/private/S2_DragHandleSize200.cjs.map +1 -0
  497. package/dist/private/S2_DragHandleSize200.mjs +55 -0
  498. package/dist/private/S2_DragHandleSize200.mjs.map +1 -0
  499. package/dist/private/S2_DragHandleSize300.cjs +60 -0
  500. package/dist/private/S2_DragHandleSize300.cjs.map +1 -0
  501. package/dist/private/S2_DragHandleSize300.mjs +55 -0
  502. package/dist/private/S2_DragHandleSize300.mjs.map +1 -0
  503. package/dist/private/S2_DragHandleSize75.cjs +60 -0
  504. package/dist/private/S2_DragHandleSize75.cjs.map +1 -0
  505. package/dist/private/S2_DragHandleSize75.mjs +55 -0
  506. package/dist/private/S2_DragHandleSize75.mjs.map +1 -0
  507. package/dist/private/SearchField.cjs +41 -41
  508. package/dist/private/SearchField.cjs.map +1 -1
  509. package/dist/private/SearchField.css +45 -45
  510. package/dist/private/SearchField.css.map +1 -1
  511. package/dist/private/SearchField.mjs +41 -41
  512. package/dist/private/SearchField.mjs.map +1 -1
  513. package/dist/private/SegmentedControl.cjs +178 -178
  514. package/dist/private/SegmentedControl.cjs.map +1 -1
  515. package/dist/private/SegmentedControl.css +123 -123
  516. package/dist/private/SegmentedControl.css.map +1 -1
  517. package/dist/private/SegmentedControl.mjs +178 -178
  518. package/dist/private/SegmentedControl.mjs.map +1 -1
  519. package/dist/private/SelectBoxGroup.cjs +142 -142
  520. package/dist/private/SelectBoxGroup.cjs.map +1 -1
  521. package/dist/private/SelectBoxGroup.css +120 -120
  522. package/dist/private/SelectBoxGroup.css.map +1 -1
  523. package/dist/private/SelectBoxGroup.mjs +142 -142
  524. package/dist/private/SelectBoxGroup.mjs.map +1 -1
  525. package/dist/private/SkeletonCollection.cjs.map +1 -1
  526. package/dist/private/SkeletonCollection.mjs.map +1 -1
  527. package/dist/private/Slider.cjs +318 -332
  528. package/dist/private/Slider.cjs.map +1 -1
  529. package/dist/private/Slider.css +177 -157
  530. package/dist/private/Slider.css.map +1 -1
  531. package/dist/private/Slider.mjs +319 -333
  532. package/dist/private/Slider.mjs.map +1 -1
  533. package/dist/private/StatusLight.cjs +115 -115
  534. package/dist/private/StatusLight.cjs.map +1 -1
  535. package/dist/private/StatusLight.css +59 -59
  536. package/dist/private/StatusLight.css.map +1 -1
  537. package/dist/private/StatusLight.mjs +115 -115
  538. package/dist/private/StatusLight.mjs.map +1 -1
  539. package/dist/private/Switch.cjs +219 -176
  540. package/dist/private/Switch.cjs.map +1 -1
  541. package/dist/private/Switch.css +128 -84
  542. package/dist/private/Switch.css.map +1 -1
  543. package/dist/private/Switch.mjs +219 -176
  544. package/dist/private/Switch.mjs.map +1 -1
  545. package/dist/private/TableView.cjs +735 -518
  546. package/dist/private/TableView.cjs.map +1 -1
  547. package/dist/private/TableView.css +528 -308
  548. package/dist/private/TableView.css.map +1 -1
  549. package/dist/private/TableView.mjs +737 -521
  550. package/dist/private/TableView.mjs.map +1 -1
  551. package/dist/private/Tabs.cjs +123 -123
  552. package/dist/private/Tabs.cjs.map +1 -1
  553. package/dist/private/Tabs.css +105 -105
  554. package/dist/private/Tabs.css.map +1 -1
  555. package/dist/private/Tabs.mjs +123 -123
  556. package/dist/private/Tabs.mjs.map +1 -1
  557. package/dist/private/TabsPicker.cjs +130 -129
  558. package/dist/private/TabsPicker.cjs.map +1 -1
  559. package/dist/private/TabsPicker.css +108 -108
  560. package/dist/private/TabsPicker.css.map +1 -1
  561. package/dist/private/TabsPicker.mjs +130 -129
  562. package/dist/private/TabsPicker.mjs.map +1 -1
  563. package/dist/private/TagGroup.cjs +203 -203
  564. package/dist/private/TagGroup.cjs.map +1 -1
  565. package/dist/private/TagGroup.css +146 -146
  566. package/dist/private/TagGroup.css.map +1 -1
  567. package/dist/private/TagGroup.mjs +203 -203
  568. package/dist/private/TagGroup.mjs.map +1 -1
  569. package/dist/private/TextField.cjs +84 -73
  570. package/dist/private/TextField.cjs.map +1 -1
  571. package/dist/private/TextField.css +54 -54
  572. package/dist/private/TextField.css.map +1 -1
  573. package/dist/private/TextField.mjs +85 -74
  574. package/dist/private/TextField.mjs.map +1 -1
  575. package/dist/private/TimeField.cjs +51 -51
  576. package/dist/private/TimeField.cjs.map +1 -1
  577. package/dist/private/TimeField.css +47 -47
  578. package/dist/private/TimeField.css.map +1 -1
  579. package/dist/private/TimeField.mjs +51 -51
  580. package/dist/private/TimeField.mjs.map +1 -1
  581. package/dist/private/Toast.cjs +122 -121
  582. package/dist/private/Toast.cjs.map +1 -1
  583. package/dist/private/Toast.css +110 -110
  584. package/dist/private/Toast.css.map +1 -1
  585. package/dist/private/Toast.mjs +122 -121
  586. package/dist/private/Toast.mjs.map +1 -1
  587. package/dist/private/Toast.module_css.cjs +21 -21
  588. package/dist/private/Toast.module_css.cjs.map +1 -1
  589. package/dist/private/Toast.module_css.mjs +21 -21
  590. package/dist/private/Toast.module_css.mjs.map +1 -1
  591. package/dist/private/Toast_module.css +44 -44
  592. package/dist/private/Toast_module.css.map +1 -1
  593. package/dist/private/ToggleButton.cjs +59 -26
  594. package/dist/private/ToggleButton.cjs.map +1 -1
  595. package/dist/private/ToggleButton.css +56 -12
  596. package/dist/private/ToggleButton.css.map +1 -1
  597. package/dist/private/ToggleButton.mjs +60 -27
  598. package/dist/private/ToggleButton.mjs.map +1 -1
  599. package/dist/private/ToggleButtonGroup.cjs.map +1 -1
  600. package/dist/private/ToggleButtonGroup.mjs.map +1 -1
  601. package/dist/private/Tooltip.cjs +86 -86
  602. package/dist/private/Tooltip.cjs.map +1 -1
  603. package/dist/private/Tooltip.css +70 -70
  604. package/dist/private/Tooltip.css.map +1 -1
  605. package/dist/private/Tooltip.mjs +86 -86
  606. package/dist/private/Tooltip.mjs.map +1 -1
  607. package/dist/private/TreeView.cjs +300 -233
  608. package/dist/private/TreeView.cjs.map +1 -1
  609. package/dist/private/TreeView.css +243 -181
  610. package/dist/private/TreeView.css.map +1 -1
  611. package/dist/private/TreeView.mjs +301 -234
  612. package/dist/private/TreeView.mjs.map +1 -1
  613. package/dist/private/dnd-utils.cjs +149 -0
  614. package/dist/private/dnd-utils.cjs.map +1 -0
  615. package/dist/private/dnd-utils.css +164 -0
  616. package/dist/private/dnd-utils.css.map +1 -0
  617. package/dist/private/dnd-utils.mjs +143 -0
  618. package/dist/private/dnd-utils.mjs.map +1 -0
  619. package/dist/private/font-faces.css.map +1 -1
  620. package/dist/private/intl/ar-AE.cjs +1 -0
  621. package/dist/private/intl/ar-AE.cjs.map +1 -1
  622. package/dist/private/intl/ar-AE.mjs +1 -0
  623. package/dist/private/intl/ar-AE.mjs.map +1 -1
  624. package/dist/private/intl/bg-BG.cjs +1 -0
  625. package/dist/private/intl/bg-BG.cjs.map +1 -1
  626. package/dist/private/intl/bg-BG.mjs +1 -0
  627. package/dist/private/intl/bg-BG.mjs.map +1 -1
  628. package/dist/private/intl/cs-CZ.cjs +1 -0
  629. package/dist/private/intl/cs-CZ.cjs.map +1 -1
  630. package/dist/private/intl/cs-CZ.mjs +1 -0
  631. package/dist/private/intl/cs-CZ.mjs.map +1 -1
  632. package/dist/private/intl/da-DK.cjs +1 -0
  633. package/dist/private/intl/da-DK.cjs.map +1 -1
  634. package/dist/private/intl/da-DK.mjs +1 -0
  635. package/dist/private/intl/da-DK.mjs.map +1 -1
  636. package/dist/private/intl/de-DE.cjs +1 -0
  637. package/dist/private/intl/de-DE.cjs.map +1 -1
  638. package/dist/private/intl/de-DE.mjs +1 -0
  639. package/dist/private/intl/de-DE.mjs.map +1 -1
  640. package/dist/private/intl/el-GR.cjs +1 -0
  641. package/dist/private/intl/el-GR.cjs.map +1 -1
  642. package/dist/private/intl/el-GR.mjs +1 -0
  643. package/dist/private/intl/el-GR.mjs.map +1 -1
  644. package/dist/private/intl/en-US.cjs +1 -0
  645. package/dist/private/intl/en-US.cjs.map +1 -1
  646. package/dist/private/intl/en-US.mjs +1 -0
  647. package/dist/private/intl/en-US.mjs.map +1 -1
  648. package/dist/private/intl/es-ES.cjs +1 -0
  649. package/dist/private/intl/es-ES.cjs.map +1 -1
  650. package/dist/private/intl/es-ES.mjs +1 -0
  651. package/dist/private/intl/es-ES.mjs.map +1 -1
  652. package/dist/private/intl/et-EE.cjs +1 -0
  653. package/dist/private/intl/et-EE.cjs.map +1 -1
  654. package/dist/private/intl/et-EE.mjs +1 -0
  655. package/dist/private/intl/et-EE.mjs.map +1 -1
  656. package/dist/private/intl/fi-FI.cjs +1 -0
  657. package/dist/private/intl/fi-FI.cjs.map +1 -1
  658. package/dist/private/intl/fi-FI.mjs +1 -0
  659. package/dist/private/intl/fi-FI.mjs.map +1 -1
  660. package/dist/private/intl/fr-FR.cjs +1 -0
  661. package/dist/private/intl/fr-FR.cjs.map +1 -1
  662. package/dist/private/intl/fr-FR.mjs +1 -0
  663. package/dist/private/intl/fr-FR.mjs.map +1 -1
  664. package/dist/private/intl/he-IL.cjs +1 -0
  665. package/dist/private/intl/he-IL.cjs.map +1 -1
  666. package/dist/private/intl/he-IL.mjs +1 -0
  667. package/dist/private/intl/he-IL.mjs.map +1 -1
  668. package/dist/private/intl/hr-HR.cjs +1 -0
  669. package/dist/private/intl/hr-HR.cjs.map +1 -1
  670. package/dist/private/intl/hr-HR.mjs +1 -0
  671. package/dist/private/intl/hr-HR.mjs.map +1 -1
  672. package/dist/private/intl/hu-HU.cjs +1 -0
  673. package/dist/private/intl/hu-HU.cjs.map +1 -1
  674. package/dist/private/intl/hu-HU.mjs +1 -0
  675. package/dist/private/intl/hu-HU.mjs.map +1 -1
  676. package/dist/private/intl/it-IT.cjs +1 -0
  677. package/dist/private/intl/it-IT.cjs.map +1 -1
  678. package/dist/private/intl/it-IT.mjs +1 -0
  679. package/dist/private/intl/it-IT.mjs.map +1 -1
  680. package/dist/private/intl/ja-JP.cjs +1 -0
  681. package/dist/private/intl/ja-JP.cjs.map +1 -1
  682. package/dist/private/intl/ja-JP.mjs +1 -0
  683. package/dist/private/intl/ja-JP.mjs.map +1 -1
  684. package/dist/private/intl/ko-KR.cjs +1 -0
  685. package/dist/private/intl/ko-KR.cjs.map +1 -1
  686. package/dist/private/intl/ko-KR.mjs +1 -0
  687. package/dist/private/intl/ko-KR.mjs.map +1 -1
  688. package/dist/private/intl/lt-LT.cjs +1 -0
  689. package/dist/private/intl/lt-LT.cjs.map +1 -1
  690. package/dist/private/intl/lt-LT.mjs +1 -0
  691. package/dist/private/intl/lt-LT.mjs.map +1 -1
  692. package/dist/private/intl/lv-LV.cjs +1 -0
  693. package/dist/private/intl/lv-LV.cjs.map +1 -1
  694. package/dist/private/intl/lv-LV.mjs +1 -0
  695. package/dist/private/intl/lv-LV.mjs.map +1 -1
  696. package/dist/private/intl/nb-NO.cjs +1 -0
  697. package/dist/private/intl/nb-NO.cjs.map +1 -1
  698. package/dist/private/intl/nb-NO.mjs +1 -0
  699. package/dist/private/intl/nb-NO.mjs.map +1 -1
  700. package/dist/private/intl/nl-NL.cjs +1 -0
  701. package/dist/private/intl/nl-NL.cjs.map +1 -1
  702. package/dist/private/intl/nl-NL.mjs +1 -0
  703. package/dist/private/intl/nl-NL.mjs.map +1 -1
  704. package/dist/private/intl/pl-PL.cjs +1 -0
  705. package/dist/private/intl/pl-PL.cjs.map +1 -1
  706. package/dist/private/intl/pl-PL.mjs +1 -0
  707. package/dist/private/intl/pl-PL.mjs.map +1 -1
  708. package/dist/private/intl/pt-BR.cjs +1 -0
  709. package/dist/private/intl/pt-BR.cjs.map +1 -1
  710. package/dist/private/intl/pt-BR.mjs +1 -0
  711. package/dist/private/intl/pt-BR.mjs.map +1 -1
  712. package/dist/private/intl/pt-PT.cjs +1 -0
  713. package/dist/private/intl/pt-PT.cjs.map +1 -1
  714. package/dist/private/intl/pt-PT.mjs +1 -0
  715. package/dist/private/intl/pt-PT.mjs.map +1 -1
  716. package/dist/private/intl/ro-RO.cjs +1 -0
  717. package/dist/private/intl/ro-RO.cjs.map +1 -1
  718. package/dist/private/intl/ro-RO.mjs +1 -0
  719. package/dist/private/intl/ro-RO.mjs.map +1 -1
  720. package/dist/private/intl/ru-RU.cjs +1 -0
  721. package/dist/private/intl/ru-RU.cjs.map +1 -1
  722. package/dist/private/intl/ru-RU.mjs +1 -0
  723. package/dist/private/intl/ru-RU.mjs.map +1 -1
  724. package/dist/private/intl/sk-SK.cjs +1 -0
  725. package/dist/private/intl/sk-SK.cjs.map +1 -1
  726. package/dist/private/intl/sk-SK.mjs +1 -0
  727. package/dist/private/intl/sk-SK.mjs.map +1 -1
  728. package/dist/private/intl/sl-SI.cjs +1 -0
  729. package/dist/private/intl/sl-SI.cjs.map +1 -1
  730. package/dist/private/intl/sl-SI.mjs +1 -0
  731. package/dist/private/intl/sl-SI.mjs.map +1 -1
  732. package/dist/private/intl/sr-SP.cjs +1 -0
  733. package/dist/private/intl/sr-SP.cjs.map +1 -1
  734. package/dist/private/intl/sr-SP.mjs +1 -0
  735. package/dist/private/intl/sr-SP.mjs.map +1 -1
  736. package/dist/private/intl/sv-SE.cjs +1 -0
  737. package/dist/private/intl/sv-SE.cjs.map +1 -1
  738. package/dist/private/intl/sv-SE.mjs +1 -0
  739. package/dist/private/intl/sv-SE.mjs.map +1 -1
  740. package/dist/private/intl/tr-TR.cjs +1 -0
  741. package/dist/private/intl/tr-TR.cjs.map +1 -1
  742. package/dist/private/intl/tr-TR.mjs +1 -0
  743. package/dist/private/intl/tr-TR.mjs.map +1 -1
  744. package/dist/private/intl/uk-UA.cjs +1 -0
  745. package/dist/private/intl/uk-UA.cjs.map +1 -1
  746. package/dist/private/intl/uk-UA.mjs +1 -0
  747. package/dist/private/intl/uk-UA.mjs.map +1 -1
  748. package/dist/private/intl/zh-CN.cjs +1 -0
  749. package/dist/private/intl/zh-CN.cjs.map +1 -1
  750. package/dist/private/intl/zh-CN.mjs +1 -0
  751. package/dist/private/intl/zh-CN.mjs.map +1 -1
  752. package/dist/private/intl/zh-TW.cjs +1 -0
  753. package/dist/private/intl/zh-TW.cjs.map +1 -1
  754. package/dist/private/intl/zh-TW.mjs +1 -0
  755. package/dist/private/intl/zh-TW.mjs.map +1 -1
  756. package/dist/private/pressScale.cjs.map +1 -1
  757. package/dist/private/pressScale.mjs.map +1 -1
  758. package/dist/private/useDOMRef.cjs +3 -2
  759. package/dist/private/useDOMRef.cjs.map +1 -1
  760. package/dist/private/useDOMRef.mjs +3 -2
  761. package/dist/private/useDOMRef.mjs.map +1 -1
  762. package/dist/private/useDragAndDrop.cjs +25 -0
  763. package/dist/private/useDragAndDrop.cjs.map +1 -0
  764. package/dist/private/useDragAndDrop.mjs +20 -0
  765. package/dist/private/useDragAndDrop.mjs.map +1 -0
  766. package/dist/types/exports/DragPreview.d.ts +2 -0
  767. package/dist/types/exports/LabeledValue.d.ts +2 -0
  768. package/dist/types/exports/TableView.d.ts +2 -2
  769. package/dist/types/exports/index.d.ts +11 -2
  770. package/dist/types/exports/useDragAndDrop.d.ts +8 -0
  771. package/dist/types/src/Accordion.d.ts +22 -6
  772. package/dist/types/src/ActionBar.d.ts +6 -2
  773. package/dist/types/src/ActionButton.d.ts +15 -5
  774. package/dist/types/src/ActionButtonGroup.d.ts +13 -4
  775. package/dist/types/src/ActionMenu.d.ts +1 -1
  776. package/dist/types/src/AlertDialog.d.ts +3 -1
  777. package/dist/types/src/Avatar.d.ts +1 -0
  778. package/dist/types/src/AvatarGroup.d.ts +1 -0
  779. package/dist/types/src/Badge.d.ts +6 -2
  780. package/dist/types/src/Breadcrumbs.d.ts +1 -1
  781. package/dist/types/src/Button.d.ts +2 -1
  782. package/dist/types/src/Calendar.d.ts +8 -5
  783. package/dist/types/src/Card.d.ts +4 -1
  784. package/dist/types/src/CardView.d.ts +6 -1
  785. package/dist/types/src/CenterBaseline.d.ts +2 -1
  786. package/dist/types/src/Checkbox.d.ts +5 -5
  787. package/dist/types/src/CoachMark.d.ts +3 -3
  788. package/dist/types/src/ColorArea.d.ts +2 -1
  789. package/dist/types/src/ColorField.d.ts +6 -0
  790. package/dist/types/src/ColorSwatch.d.ts +2 -0
  791. package/dist/types/src/ColorSwatchPicker.d.ts +3 -0
  792. package/dist/types/src/ComboBox.d.ts +18 -7
  793. package/dist/types/src/ContextualHelp.d.ts +5 -2
  794. package/dist/types/src/CustomDialog.d.ts +1 -0
  795. package/dist/types/src/DatePicker.d.ts +5 -2
  796. package/dist/types/src/DateRangePicker.d.ts +3 -1
  797. package/dist/types/src/Dialog.d.ts +3 -2
  798. package/dist/types/src/DialogTrigger.d.ts +3 -3
  799. package/dist/types/src/Disclosure.d.ts +10 -4
  800. package/dist/types/src/Divider.d.ts +2 -0
  801. package/dist/types/src/DragPreview.d.ts +42 -0
  802. package/dist/types/src/DropZone.d.ts +1 -0
  803. package/dist/types/src/Field.d.ts +5 -3
  804. package/dist/types/src/Form.d.ts +3 -1
  805. package/dist/types/src/FullscreenDialog.d.ts +4 -2
  806. package/dist/types/src/Image.d.ts +6 -5
  807. package/dist/types/src/ImageCoordinator.d.ts +3 -1
  808. package/dist/types/src/InlineAlert.d.ts +4 -2
  809. package/dist/types/src/LabeledValue.d.ts +61 -0
  810. package/dist/types/src/Link.d.ts +1 -0
  811. package/dist/types/src/ListBox.d.ts +1 -1
  812. package/dist/types/src/ListView.d.ts +12 -24
  813. package/dist/types/src/Menu.d.ts +8 -6
  814. package/dist/types/src/Meter.d.ts +4 -1
  815. package/dist/types/src/NumberField.d.ts +9 -1
  816. package/dist/types/src/Picker.d.ts +12 -7
  817. package/dist/types/src/Popover.d.ts +2 -1
  818. package/dist/types/src/ProgressBar.d.ts +3 -2
  819. package/dist/types/src/ProgressCircle.d.ts +2 -2
  820. package/dist/types/src/Provider.d.ts +6 -3
  821. package/dist/types/src/RadioGroup.d.ts +2 -2
  822. package/dist/types/src/RangeCalendar.d.ts +4 -2
  823. package/dist/types/src/RangeSlider.d.ts +6 -3
  824. package/dist/types/src/SelectBoxGroup.d.ts +3 -1
  825. package/dist/types/src/SkeletonCollection.d.ts +2 -1
  826. package/dist/types/src/Slider.d.ts +2 -1
  827. package/dist/types/src/Switch.d.ts +5 -5
  828. package/dist/types/src/TableView.d.ts +29 -9
  829. package/dist/types/src/Tabs.d.ts +5 -2
  830. package/dist/types/src/TabsPicker.d.ts +9 -4
  831. package/dist/types/src/TagGroup.d.ts +10 -4
  832. package/dist/types/src/TextField.d.ts +5 -0
  833. package/dist/types/src/Toast.d.ts +2 -1
  834. package/dist/types/src/ToggleButton.d.ts +9 -2
  835. package/dist/types/src/ToggleButtonGroup.d.ts +4 -1
  836. package/dist/types/src/TreeView.d.ts +6 -3
  837. package/dist/types/src/dnd-utils.d.ts +8 -0
  838. package/dist/types/src/pressScale.d.ts +20 -0
  839. package/dist/types/src/style-utils.d.ts +30 -26
  840. package/dist/types/src/useDOMRef.d.ts +3 -3
  841. package/dist/types/src/useDragAndDrop.d.ts +9 -0
  842. package/dist/types/style/index.d.ts +27 -33
  843. package/dist/types/style/runtime.d.ts +6 -8
  844. package/dist/types/style/spectrum-theme.d.ts +42 -50
  845. package/dist/types/style/style-macro.d.ts +7 -9
  846. package/dist/types/style/tokens.d.ts +2 -2
  847. package/dist/types/ui-icons/CornerTriangle.d.ts +4 -0
  848. package/dist/types/ui-icons/DragHandle.d.ts +4 -0
  849. package/exports/Accordion.ts +17 -2
  850. package/exports/ActionMenu.ts +14 -2
  851. package/exports/Card.ts +16 -2
  852. package/exports/CardView.ts +16 -2
  853. package/exports/ColorArea.ts +8 -1
  854. package/exports/ColorField.ts +8 -1
  855. package/exports/ColorSlider.ts +8 -1
  856. package/exports/ColorSwatch.ts +8 -1
  857. package/exports/ColorSwatchPicker.ts +8 -1
  858. package/exports/ColorWheel.ts +8 -1
  859. package/exports/ContextualHelp.ts +5 -1
  860. package/exports/Disclosure.ts +7 -1
  861. package/exports/DragPreview.ts +2 -0
  862. package/exports/Icon.ts +6 -1
  863. package/exports/LabeledValue.ts +2 -0
  864. package/exports/Menu.ts +17 -2
  865. package/exports/SegmentedControl.ts +5 -1
  866. package/exports/TableView.ts +27 -3
  867. package/exports/TreeView.ts +6 -1
  868. package/exports/index.ts +174 -17
  869. package/exports/useAsyncList.ts +7 -1
  870. package/exports/useDragAndDrop.ts +36 -0
  871. package/icons/Icon.cjs +10 -10
  872. package/icons/Icon.cjs.map +1 -1
  873. package/icons/Icon.css +9 -9
  874. package/icons/Icon.css.map +1 -1
  875. package/icons/Icon.mjs +10 -10
  876. package/icons/Icon.mjs.map +1 -1
  877. package/icons/Skeleton.cjs +2 -2
  878. package/icons/Skeleton.cjs.map +1 -1
  879. package/icons/Skeleton.css +6 -6
  880. package/icons/Skeleton.css.map +1 -1
  881. package/icons/Skeleton.mjs +2 -2
  882. package/icons/Skeleton.mjs.map +1 -1
  883. package/icons/runtime.cjs.map +1 -1
  884. package/icons/runtime.mjs.map +1 -1
  885. package/icons/useMediaQuery.cjs.map +1 -1
  886. package/icons/useMediaQuery.mjs.map +1 -1
  887. package/icons/useSpectrumContextProps.cjs.map +1 -1
  888. package/icons/useSpectrumContextProps.mjs.map +1 -1
  889. package/illustrations/gradient/generic1/Conversationbubbles.cjs.map +1 -1
  890. package/illustrations/gradient/generic1/Conversationbubbles.mjs.map +1 -1
  891. package/illustrations/gradient/generic2/Conversationbubbles.cjs.map +1 -1
  892. package/illustrations/gradient/generic2/Conversationbubbles.mjs.map +1 -1
  893. package/illustrations/linear/BrowserNotCompatible.cjs.map +1 -1
  894. package/illustrations/linear/BrowserNotCompatible.mjs.map +1 -1
  895. package/illustrations/linear/CloudStateDisconnected.cjs.map +1 -1
  896. package/illustrations/linear/CloudStateDisconnected.mjs.map +1 -1
  897. package/illustrations/linear/ConfettiCelebration.cjs.map +1 -1
  898. package/illustrations/linear/ConfettiCelebration.mjs.map +1 -1
  899. package/illustrations/linear/Conversationbubbles.cjs.map +1 -1
  900. package/illustrations/linear/Conversationbubbles.mjs.map +1 -1
  901. package/illustrations/linear/MegaphonePromoteExpressive.cjs.map +1 -1
  902. package/illustrations/linear/MegaphonePromoteExpressive.mjs.map +1 -1
  903. package/illustrations/linear/NoInternetConnection.cjs.map +1 -1
  904. package/illustrations/linear/NoInternetConnection.mjs.map +1 -1
  905. package/package.json +30 -30
  906. package/src/Accordion.tsx +97 -59
  907. package/src/ActionBar.tsx +102 -44
  908. package/src/ActionButton.tsx +359 -252
  909. package/src/ActionButtonGroup.tsx +59 -38
  910. package/src/ActionMenu.tsx +21 -9
  911. package/src/AlertDialog.tsx +28 -25
  912. package/src/Avatar.tsx +41 -28
  913. package/src/AvatarGroup.tsx +34 -16
  914. package/src/Badge.tsx +167 -129
  915. package/src/Breadcrumbs.tsx +173 -96
  916. package/src/Button.tsx +390 -288
  917. package/src/ButtonGroup.tsx +70 -52
  918. package/src/Calendar.tsx +230 -173
  919. package/src/Card.tsx +395 -303
  920. package/src/CardView.tsx +126 -61
  921. package/src/CenterBaseline.tsx +15 -7
  922. package/src/Checkbox.tsx +152 -57
  923. package/src/CheckboxGroup.tsx +96 -63
  924. package/src/ClearButton.tsx +6 -3
  925. package/src/CloseButton.tsx +71 -44
  926. package/src/CoachMark.tsx +204 -192
  927. package/src/ColorArea.tsx +49 -28
  928. package/src/ColorField.tsx +83 -36
  929. package/src/ColorHandle.tsx +36 -25
  930. package/src/ColorSlider.tsx +123 -90
  931. package/src/ColorSwatch.tsx +71 -43
  932. package/src/ColorSwatchPicker.tsx +71 -52
  933. package/src/ColorWheel.tsx +75 -54
  934. package/src/ComboBox.tsx +311 -187
  935. package/src/Content.tsx +59 -38
  936. package/src/ContextualHelp.tsx +82 -49
  937. package/src/CustomDialog.tsx +41 -33
  938. package/src/DateField.tsx +57 -27
  939. package/src/DatePicker.tsx +117 -65
  940. package/src/DateRangePicker.tsx +209 -157
  941. package/src/Dialog.tsx +24 -16
  942. package/src/DialogContainer.tsx +4 -7
  943. package/src/DialogTrigger.tsx +4 -6
  944. package/src/Disclosure.tsx +102 -80
  945. package/src/Divider.tsx +71 -49
  946. package/src/DragPreview.tsx +193 -0
  947. package/src/DropZone.tsx +71 -40
  948. package/src/Field.tsx +239 -107
  949. package/src/Fonts.tsx +18 -11
  950. package/src/Form.tsx +42 -27
  951. package/src/FullscreenDialog.tsx +24 -39
  952. package/src/Icon.tsx +70 -33
  953. package/src/IllustratedMessage.tsx +98 -69
  954. package/src/Image.tsx +105 -49
  955. package/src/ImageCoordinator.tsx +39 -24
  956. package/src/InlineAlert.tsx +90 -80
  957. package/src/LabeledValue.tsx +344 -0
  958. package/src/Link.tsx +99 -45
  959. package/src/ListBox.tsx +2 -9
  960. package/src/ListView.tsx +486 -280
  961. package/src/Menu.tsx +313 -180
  962. package/src/Meter.tsx +51 -21
  963. package/src/Modal.tsx +90 -81
  964. package/src/NotificationBadge.tsx +98 -73
  965. package/src/NumberField.tsx +160 -90
  966. package/src/Picker.tsx +311 -171
  967. package/src/Popover.tsx +195 -149
  968. package/src/ProgressBar.tsx +81 -56
  969. package/src/ProgressCircle.tsx +70 -48
  970. package/src/Provider.tsx +16 -16
  971. package/src/RadioGroup.tsx +164 -55
  972. package/src/RangeCalendar.tsx +63 -41
  973. package/src/RangeSlider.tsx +48 -35
  974. package/src/SearchField.tsx +110 -75
  975. package/src/SegmentedControl.tsx +101 -76
  976. package/src/SelectBoxGroup.tsx +231 -191
  977. package/src/Skeleton.tsx +75 -49
  978. package/src/SkeletonCollection.tsx +16 -16
  979. package/src/Slider.tsx +135 -83
  980. package/src/StatusLight.tsx +61 -22
  981. package/src/Switch.tsx +122 -38
  982. package/src/TableView.tsx +1002 -356
  983. package/src/Tabs.tsx +327 -183
  984. package/src/TabsPicker.tsx +152 -107
  985. package/src/TagGroup.tsx +175 -80
  986. package/src/TextField.tsx +120 -54
  987. package/src/TimeField.tsx +48 -23
  988. package/src/Toast.module.css +11 -5
  989. package/src/Toast.tsx +119 -84
  990. package/src/ToggleButton.tsx +99 -25
  991. package/src/ToggleButtonGroup.tsx +22 -6
  992. package/src/Toolbar.tsx +0 -1
  993. package/src/Tooltip.tsx +64 -26
  994. package/src/TreeView.tsx +346 -91
  995. package/src/bar-utils.ts +65 -68
  996. package/src/dnd-utils.tsx +127 -0
  997. package/src/font-faces.css +129 -33
  998. package/src/page.macro.ts +2 -2
  999. package/src/pressScale.ts +24 -1
  1000. package/src/progress-utils.tsx +1 -1
  1001. package/src/style-utils.ts +214 -212
  1002. package/src/useDOMRef.ts +26 -11
  1003. package/src/useDragAndDrop.ts +32 -0
  1004. package/src/useMediaQuery.ts +2 -4
  1005. package/src/useSpectrumContextProps.ts +5 -1
  1006. package/style/__tests__/mergeStyles.test.ts +15 -4
  1007. package/style/__tests__/style-macro.test.js +81 -71
  1008. package/style/dist/main.cjs.map +1 -1
  1009. package/style/dist/module.mjs.map +1 -1
  1010. package/style/dist/spectrum-theme.cjs +4 -5
  1011. package/style/dist/spectrum-theme.cjs.map +1 -1
  1012. package/style/dist/spectrum-theme.mjs +4 -5
  1013. package/style/dist/spectrum-theme.mjs.map +1 -1
  1014. package/style/dist/style-macro.cjs +2 -1
  1015. package/style/dist/style-macro.cjs.map +1 -1
  1016. package/style/dist/style-macro.mjs +2 -1
  1017. package/style/dist/style-macro.mjs.map +1 -1
  1018. package/style/dist/style-utils.cjs.map +1 -1
  1019. package/style/dist/style-utils.mjs.map +1 -1
  1020. package/style/index.ts +105 -74
  1021. package/style/package.json +2 -2
  1022. package/style/runtime.ts +6 -8
  1023. package/style/spectrum-theme.ts +482 -194
  1024. package/style/style-macro.ts +310 -121
  1025. package/style/tokens.ts +79 -41
  1026. package/style/types.ts +146 -70
@@ -1 +1 @@
1
- {"mappings":"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","sources":["packages/@react-spectrum/s2/src/ComboBox.tsx"],"sourcesContent":["/*\n * Copyright 2024 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport {\n ComboBox as AriaComboBox,\n ComboBoxProps as AriaComboBoxProps,\n ComboBoxStateContext\n} from 'react-aria-components/ComboBox';\nimport {\n ListBoxSection as AriaListBoxSection,\n ListBox,\n ListBoxItem,\n ListBoxItemProps,\n ListBoxLoadMoreItem,\n ListBoxProps,\n ListBoxSectionProps,\n ListStateContext\n} from 'react-aria-components/ListBox';\nimport {PopoverProps as AriaPopoverProps, Placement} from 'react-aria-components/Popover';\nimport {AsyncLoadable, GlobalDOMAttributes, HelpTextProps, LoadingState, SingleSelection, SpectrumLabelableProps} from '@react-types/shared';\nimport {AvatarContext} from './Avatar';\nimport {BaseCollection, CollectionNode} from 'react-aria/private/collections/BaseCollection';\nimport {baseColor, centerPadding, focusRing, space, style} from '../style' with {type: 'macro'};\nimport {Button, ButtonRenderProps} from 'react-aria-components/Button';\nimport {centerBaseline} from './CenterBaseline';\nimport {\n checkmark,\n description,\n icon,\n iconCenterWrapper,\n label,\n sectionHeading\n} from './Menu';\nimport CheckmarkIcon from '../ui-icons/Checkmark';\nimport ChevronIcon from '../ui-icons/Chevron';\nimport {Collection} from 'react-aria/Collection';\nimport {ContextValue, Provider} from 'react-aria-components/slots';\nimport {control, controlBorderRadius, controlFont, controlSize, field, fieldInput, getAllowedOverrides, StyleProps} from './style-utils' with {type: 'macro'};\nimport {createContext, CSSProperties, ForwardedRef, forwardRef, ReactNode, Ref, useCallback, useContext, useEffect, useImperativeHandle, useMemo, useRef, useState} from 'react';\nimport {createFocusableRef} from './useDOMRef';\nimport {createLeafComponent} from 'react-aria/CollectionBuilder';\nimport {edgeToText} from '../style/spectrum-theme' with {type: 'macro'};\nimport {FieldErrorIcon, FieldGroup, FieldLabel, HelpText, Input} from './Field';\nimport {FormContext, useFormProps} from './Form';\nimport {forwardRefType} from './types';\nimport {HeaderContext, HeadingContext, Text, TextContext} from './Content';\nimport {IconContext} from './Icon';\nimport {InputContext, InputProps} from 'react-aria-components/Input';\nimport intlMessages from '../intl/*.json';\nimport {ListLayout} from 'react-stately/useVirtualizerState';\nimport {mergeRefs} from 'react-aria/mergeRefs';\n// @ts-ignore\nimport {Node} from '@react-types/shared';\nimport {Popover} from './Popover';\nimport {pressScale} from './pressScale';\nimport {ProgressCircle} from './ProgressCircle';\nimport {TextFieldRef} from './TextField';\nimport {useLocalizedStringFormatter} from 'react-aria/useLocalizedStringFormatter';\nimport {useResizeObserver} from 'react-aria/private/utils/useResizeObserver';\nimport {useScale} from './utils';\nimport {useSlotId} from 'react-aria/private/utils/useId';\nimport {useSpectrumContextProps} from './useSpectrumContextProps';\nimport {Virtualizer} from 'react-aria-components/Virtualizer';\n\nexport interface ComboboxStyleProps {\n /**\n * The size of the Combobox.\n *\n * @default 'M'\n */\n size?: 'S' | 'M' | 'L' | 'XL'\n}\nexport interface ComboBoxProps<T extends object> extends\n Omit<AriaComboBoxProps<T>, 'children' | 'style' | 'className' | 'render' | 'defaultFilter' | 'allowsEmptyCollection' | 'selectionMode' | 'selectedKey' | 'defaultSelectedKey' | 'onSelectionChange' | 'value' | 'defaultValue' | 'onChange' | keyof GlobalDOMAttributes>,\n Omit<SingleSelection, 'disallowEmptySelection'>,\n ComboboxStyleProps,\n StyleProps,\n SpectrumLabelableProps,\n HelpTextProps,\n Pick<ListBoxProps<T>, 'items' | 'dependencies'>,\n Pick<AriaPopoverProps, 'shouldFlip'>,\n Pick<AsyncLoadable, 'onLoadMore'>,\n Pick<InputProps, 'placeholder'> {\n /** The contents of the collection. */\n children: ReactNode | ((item: T) => ReactNode),\n /**\n * Direction the menu will render relative to the ComboBox.\n *\n * @default 'bottom'\n */\n direction?: 'bottom' | 'top',\n /**\n * Alignment of the menu relative to the input target.\n *\n * @default 'start'\n */\n align?: 'start' | 'end',\n /** Width of the menu. By default, matches width of the trigger. Note that the minimum width of the dropdown is always equal to the trigger's width. */\n menuWidth?: number,\n /** The current loading state of the ComboBox. Determines whether or not the progress circle should be shown. */\n loadingState?: LoadingState\n}\n\nexport const ComboBoxContext = createContext<ContextValue<Partial<ComboBoxProps<any>>, TextFieldRef>>(null);\n\nconst inputButton = style<ButtonRenderProps & {isOpen: boolean, size: 'S' | 'M' | 'L' | 'XL'}>({\n ...controlBorderRadius('sm'),\n display: 'flex',\n outlineStyle: 'none',\n textAlign: 'center',\n borderStyle: 'none',\n alignItems: 'center',\n justifyContent: 'center',\n size: {\n size: {\n S: 16,\n M: 20,\n L: 24,\n XL: 32\n }\n },\n marginStart: 'text-to-control',\n aspectRatio: 'square',\n flexShrink: 0,\n transition: {\n default: 'default',\n forcedColors: 'none'\n },\n backgroundColor: {\n default: baseColor('gray-100'),\n isOpen: 'gray-200',\n isDisabled: 'disabled',\n forcedColors: {\n default: 'ButtonText',\n isHovered: 'Highlight',\n isOpen: 'Highlight',\n isDisabled: 'GrayText'\n }\n },\n color: {\n default: baseColor('neutral'),\n isDisabled: 'disabled',\n forcedColors: 'ButtonFace'\n }\n});\n\nconst iconStyles = style({\n flexShrink: 0,\n rotate: 90,\n '--iconPrimary': {\n type: 'fill',\n value: 'currentColor'\n }\n});\n\nconst loadingWrapperStyles = style({\n gridColumnStart: '1',\n gridColumnEnd: '-1',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n marginY: 8\n});\n\nconst progressCircleStyles = style({\n size: {\n size: {\n S: 16,\n M: 20,\n L: 22,\n XL: 26\n }\n },\n marginStart: {\n isInput: 'text-to-visual'\n }\n});\n\nconst emptyStateText = style({\n height: {\n size: {\n S: 24,\n M: 32,\n L: 40,\n XL: 48\n }\n },\n font: {\n size: {\n S: 'ui-sm',\n M: 'ui',\n L: 'ui-lg',\n XL: 'ui-xl'\n }\n },\n display: 'flex',\n alignItems: 'center',\n paddingStart: 'edge-to-text'\n});\n\nexport let listbox = style<{size: 'S' | 'M' | 'L' | 'XL'}>({\n width: 'full',\n boxSizing: 'border-box',\n maxHeight: '[inherit]',\n // TODO: Might help with horizontal scrolling happening on Windows, will need to check somehow. Otherwise, revert back to overflow: auto\n overflowY: 'auto',\n overflowX: 'hidden',\n fontFamily: 'sans',\n fontSize: controlFont(),\n outlineStyle: 'none'\n});\n\nexport let listboxItem = style({\n ...focusRing(),\n ...control({shape: 'default', wrap: true, icon: true}),\n columnGap: 0,\n paddingX: 0,\n paddingBottom: '--labelPadding',\n backgroundColor: {\n default: 'transparent',\n isFocused: baseColor('gray-100').isFocusVisible\n },\n color: {\n default: baseColor('neutral'),\n isDisabled: {\n default: 'disabled',\n forcedColors: 'GrayText'\n }\n },\n position: 'relative',\n gridColumnStart: 1,\n gridColumnEnd: -1,\n display: 'grid',\n gridTemplateAreas: [\n '. checkmark icon label .',\n '. . . description .'\n ],\n gridTemplateColumns: {\n size: {\n S: [edgeToText(24), 'auto', 'auto', 'minmax(0, 1fr)', edgeToText(24)],\n M: [edgeToText(32), 'auto', 'auto', 'minmax(0, 1fr)', edgeToText(32)],\n L: [edgeToText(40), 'auto', 'auto', 'minmax(0, 1fr)', edgeToText(40)],\n XL: [edgeToText(48), 'auto', 'auto', 'minmax(0, 1fr)', edgeToText(48)]\n }\n },\n gridTemplateRows: {\n // min-content prevents second row from 'auto'ing to a size larger then 0 when empty\n default: 'auto minmax(0, min-content)',\n ':has([slot=description])': 'auto auto'\n },\n rowGap: {\n ':has([slot=description])': space(1)\n },\n alignItems: 'baseline',\n minHeight: controlSize(),\n height: 'min',\n textDecoration: 'none',\n cursor: {\n default: 'default',\n isLink: 'pointer'\n },\n transition: 'default'\n}, getAllowedOverrides());\n\nexport let listboxHeader = style<{size?: 'S' | 'M' | 'L' | 'XL'}>({\n color: 'neutral',\n boxSizing: 'border-box',\n minHeight: controlSize(),\n paddingY: centerPadding(),\n marginX: {\n size: {\n S: `[${edgeToText(24)}]`,\n M: `[${edgeToText(32)}]`,\n L: `[${edgeToText(40)}]`,\n XL: `[${edgeToText(48)}]`\n }\n }\n});\n\nconst separatorWrapper = style({\n display: 'flex',\n marginX: {\n size: {\n S: `[${edgeToText(24)}]`,\n M: `[${edgeToText(32)}]`,\n L: `[${edgeToText(40)}]`,\n XL: `[${edgeToText(48)}]`\n }\n },\n height: 12,\n alignItems: 'center'\n});\n\nconst dividerStyle = style({\n backgroundColor: {\n default: 'gray-200',\n forcedColors: 'ButtonBorder'\n },\n borderRadius: 'full',\n height: '[2px]',\n width: 'full'\n});\n\nconst avatar = style({\n gridArea: 'icon',\n marginEnd: 'text-to-visual'\n});\n\n// Not from any design, just following the sizing of the existing rows\nexport const LOADER_ROW_HEIGHTS = {\n S: {\n medium: 24,\n large: 30\n },\n M: {\n medium: 32,\n large: 40\n },\n L: {\n medium: 40,\n large: 50\n },\n XL: {\n medium: 48,\n large: 60\n }\n};\n\nlet InternalComboboxContext = createContext<{size: 'S' | 'M' | 'L' | 'XL'}>({size: 'M'});\n\n/**\n * ComboBox allow users to choose a single option from a collapsible list of options when space is limited.\n */\nexport const ComboBox = /*#__PURE__*/ (forwardRef as forwardRefType)(function ComboBox<T extends object>(props: ComboBoxProps<T>, ref: Ref<TextFieldRef>) {\n [props, ref] = useSpectrumContextProps(props, ref, ComboBoxContext);\n\n let formContext = useContext(FormContext);\n props = useFormProps(props);\n let {\n size = 'M',\n labelPosition = 'top',\n UNSAFE_className = '',\n UNSAFE_style,\n ...comboBoxProps\n } = props;\n\n return (\n <AriaComboBox\n {...comboBoxProps}\n allowsEmptyCollection\n style={UNSAFE_style}\n className={UNSAFE_className + style(field(), getAllowedOverrides())({\n isInForm: !!formContext,\n labelPosition,\n size\n }, props.styles)}>\n {({isDisabled, isOpen, isRequired, isInvalid}) => (\n <ComboboxInner {...props} isDisabled={isDisabled} isOpen={isOpen} isRequired={isRequired} isInvalid={isInvalid} ref={ref} />\n )}\n </AriaComboBox>\n );\n});\n\nexport interface ComboBoxItemProps extends Omit<ListBoxItemProps, 'children' | 'style' | 'className' | 'render' | 'onClick' | 'onKeyDown' | 'onKeyUp' | keyof GlobalDOMAttributes>, StyleProps {\n children: ReactNode\n}\n\nconst avatarSize = {\n S: 16,\n M: 20,\n L: 22,\n XL: 26\n} as const;\n\nconst checkmarkIconSize = {\n S: 'XS',\n M: 'M',\n L: 'L',\n XL: 'XL'\n} as const;\n\nexport function ComboBoxItem(props: ComboBoxItemProps): ReactNode {\n let ref = useRef(null);\n let isLink = props.href != null;\n let {size} = useContext(InternalComboboxContext);\n return (\n <ListBoxItem\n {...props}\n ref={ref}\n textValue={props.textValue || (typeof props.children === 'string' ? props.children as string : undefined)}\n style={pressScale(ref, props.UNSAFE_style)}\n className={renderProps => (props.UNSAFE_className || '') + listboxItem({...renderProps, size, isLink}, props.styles)}>\n {(renderProps) => {\n let {children} = props;\n return (\n <>\n <Provider\n values={[\n [IconContext, {\n slots: {\n icon: {render: centerBaseline({slot: 'icon', styles: iconCenterWrapper}), styles: icon}\n }\n }],\n [AvatarContext, {\n slots: {\n avatar: {size: avatarSize[size], styles: avatar}\n }\n }],\n [TextContext, {\n slots: {\n label: {styles: label({size})},\n description: {styles: description({...renderProps, size})}\n }\n }]\n ]}>\n {!isLink && !props.onAction && <CheckmarkIcon size={checkmarkIconSize[size]} className={checkmark({...renderProps, size})} />}\n {typeof children === 'string' ? <Text slot=\"label\">{children}</Text> : children}\n </Provider>\n </>\n );\n }}\n </ListBoxItem>\n );\n}\n\nexport interface ComboBoxSectionProps<T extends object> extends Omit<ListBoxSectionProps<T>, 'style' | 'className' | 'render' | keyof GlobalDOMAttributes> {}\nexport function ComboBoxSection<T extends object>(props: ComboBoxSectionProps<T>): ReactNode {\n let {size} = useContext(InternalComboboxContext);\n return (\n <>\n <AriaListBoxSection\n {...props}>\n {props.children}\n </AriaListBoxSection>\n <Divider size={size} />\n </>\n );\n}\n\nconst ComboboxInner = forwardRef(function ComboboxInner(props: ComboBoxProps<any> & {isOpen: boolean}, ref: ForwardedRef<TextFieldRef | null>) {\n let {\n direction = 'bottom',\n align = 'start',\n shouldFlip = true,\n menuWidth,\n label,\n description: descriptionMessage,\n errorMessage,\n children,\n defaultItems,\n items,\n size = 'M',\n labelPosition = 'top',\n labelAlign = 'start',\n necessityIndicator,\n loadingState,\n isDisabled,\n isOpen,\n isRequired,\n isInvalid,\n menuTrigger,\n onLoadMore\n } = props;\n\n let stringFormatter = useLocalizedStringFormatter(intlMessages, '@react-spectrum/s2');\n let inputRef = useRef<HTMLInputElement>(null);\n let domRef = useRef<HTMLDivElement>(null);\n let buttonRef = useRef<HTMLButtonElement>(null);\n // Expose imperative interface for ref\n useImperativeHandle(ref, () => ({\n ...createFocusableRef(domRef, inputRef),\n select() {\n if (inputRef.current) {\n inputRef.current.select();\n }\n },\n getInputElement() {\n return inputRef.current;\n }\n }));\n\n // Better way to encode this into a style? need to account for flipping\n let menuOffset: number;\n if (size === 'S') {\n menuOffset = 6;\n } else if (size === 'M') {\n menuOffset = 6;\n } else if (size === 'L') {\n menuOffset = 7;\n } else {\n menuOffset = 8;\n }\n\n let triggerRef = useRef<HTMLDivElement>(null);\n // Make menu width match input + button\n let [triggerWidth, setTriggerWidth] = useState<string | null>(null);\n let onResize = useCallback(() => {\n if (triggerRef.current) {\n let inputRect = triggerRef.current.getBoundingClientRect();\n let minX = inputRect.left;\n let maxX = inputRect.right;\n setTriggerWidth((maxX - minX) + 'px');\n }\n }, [triggerRef, setTriggerWidth]);\n\n useResizeObserver({\n ref: triggerRef,\n onResize: onResize\n });\n\n let state = useContext(ComboBoxStateContext);\n let timeout = useRef<ReturnType<typeof setTimeout> | null>(null);\n let [showLoading, setShowLoading] = useState(false);\n let isLoadingOrFiltering = loadingState === 'loading' || loadingState === 'filtering';\n {/* Logic copied from S1 */}\n let showFieldSpinner = useMemo(() => showLoading && (isOpen || menuTrigger === 'manual' || loadingState === 'loading'), [showLoading, isOpen, menuTrigger, loadingState]);\n let spinnerId = useSlotId([showFieldSpinner]);\n\n let inputValue = state?.inputValue;\n let lastInputValue = useRef(inputValue);\n useEffect(() => {\n if (isLoadingOrFiltering && !showLoading) {\n if (timeout.current === null) {\n timeout.current = setTimeout(() => {\n setShowLoading(true);\n }, 500);\n }\n\n // If user is typing, clear the timer and restart since it is a new request\n if (inputValue !== lastInputValue.current) {\n clearTimeout(timeout.current);\n timeout.current = setTimeout(() => {\n setShowLoading(true);\n }, 500);\n }\n } else if (!isLoadingOrFiltering) {\n // If loading is no longer happening, clear any timers and hide the loading circle\n setShowLoading(false);\n if (timeout.current) {\n clearTimeout(timeout.current);\n }\n timeout.current = null;\n }\n\n lastInputValue.current = inputValue;\n }, [isLoadingOrFiltering, showLoading, inputValue]);\n\n useEffect(() => {\n return () => {\n if (timeout.current) {\n clearTimeout(timeout.current);\n }\n timeout.current = null;\n };\n }, []);\n\n let renderer;\n let listBoxLoadingCircle = (\n <ListBoxLoadMoreItem\n // Only show the spinner in the list when loading more\n isLoading={loadingState === 'loadingMore'}\n onLoadMore={onLoadMore}\n className={loadingWrapperStyles}>\n <ProgressCircle\n isIndeterminate\n size=\"S\"\n styles={progressCircleStyles({size})}\n // Same loading string as table\n aria-label={stringFormatter.format('table.loadingMore')} />\n </ListBoxLoadMoreItem>\n );\n\n if (typeof children === 'function') {\n renderer = (\n <>\n <Collection items={items ?? defaultItems} dependencies={props.dependencies}>\n {children}\n </Collection>\n {listBoxLoadingCircle}\n </>\n );\n } else {\n // TODO: is there a case where the user might provide items to the Combobox but doesn't provide a function renderer?\n // Same case for other components that have this logic (TableView/CardView/Picker)\n renderer = (\n <>\n {children}\n {listBoxLoadingCircle}\n </>\n );\n }\n let scale = useScale();\n\n return (\n <>\n <InternalComboboxContext.Provider value={{size}}>\n <FieldLabel\n isDisabled={isDisabled}\n isRequired={isRequired}\n size={size}\n labelPosition={labelPosition}\n labelAlign={labelAlign}\n necessityIndicator={necessityIndicator}\n contextualHelp={props.contextualHelp}>\n {label}\n </FieldLabel>\n <FieldGroup\n ref={triggerRef}\n role=\"presentation\"\n isDisabled={isDisabled}\n isInvalid={isInvalid}\n size={size}\n styles={style({\n ...fieldInput(),\n paddingStart: 'edge-to-text',\n // better way to do this one? it's not actually half, they are\n // [9, 4], [12, 6], [15, 8], [18, 8]\n paddingEnd: 'calc(self(height, self(minHeight)) * 3 / 16 - self(borderEndWidth, 2px))'\n })({size})}>\n <InputContext.Consumer>\n {ctx => (\n <InputContext.Provider value={{...ctx, ref: mergeRefs((ctx as any)?.ref, inputRef)}}>\n <Input aria-describedby={spinnerId} />\n </InputContext.Provider>\n )}\n </InputContext.Consumer>\n {isInvalid && <FieldErrorIcon isDisabled={isDisabled} />}\n {showFieldSpinner && (\n <ProgressCircle\n id={spinnerId}\n isIndeterminate\n size=\"S\"\n styles={progressCircleStyles({size, isInput: true})}\n aria-label={stringFormatter.format('table.loading')} />\n )}\n <Button\n ref={buttonRef}\n // Prevent press scale from sticking while ComboBox is open.\n // @ts-ignore\n isPressed={false}\n style={renderProps => pressScale(buttonRef)(renderProps)}\n className={renderProps => inputButton({\n ...renderProps,\n size,\n isOpen\n })}>\n <ChevronIcon\n size={size}\n className={iconStyles} />\n </Button>\n </FieldGroup>\n <HelpText\n size={size}\n isDisabled={isDisabled}\n isInvalid={isInvalid}\n description={descriptionMessage}>\n {errorMessage}\n </HelpText>\n <Popover\n hideArrow\n triggerRef={triggerRef}\n offset={menuOffset}\n placement={`${direction} ${align}` as Placement}\n shouldFlip={shouldFlip}\n UNSAFE_style={{\n '--trigger-width': (menuWidth ? menuWidth + 'px' : triggerWidth)\n } as CSSProperties}\n padding=\"none\"\n styles={style({\n minWidth: '--trigger-width',\n width: '--trigger-width'\n })}>\n <div\n className={style({\n display: 'flex',\n size: 'full'\n })}>\n <Provider\n values={[\n [HeaderContext, {styles: listboxHeader({size})}],\n [HeadingContext, {\n // @ts-ignore\n role: 'presentation',\n styles: sectionHeading\n }],\n [TextContext, {\n slots: {\n 'description': {styles: description({size, isFocused: false, isDisabled: false})}\n }\n }]\n ]}>\n <Virtualizer\n layout={ListLayout}\n layoutOptions={{\n estimatedRowHeight: 32,\n padding: 8,\n estimatedHeadingHeight: 50,\n loaderHeight: LOADER_ROW_HEIGHTS[size][scale]\n }}>\n <ListBox\n dependencies={props.dependencies}\n renderEmptyState={() => (\n <span className={emptyStateText({size})}>\n {loadingState === 'loading' ? stringFormatter.format('table.loading') : stringFormatter.format('combobox.noResults')}\n </span>\n )}\n items={items}\n className={listbox({size})}>\n {renderer}\n </ListBox>\n </Virtualizer>\n </Provider>\n </div>\n </Popover>\n </InternalComboboxContext.Provider>\n </>\n );\n});\n\nclass SeparatorNode extends CollectionNode<any> {\n static readonly type = 'separator';\n\n filter(collection: BaseCollection<any>, newCollection: BaseCollection<any>): CollectionNode<any> | null {\n let prevItem = newCollection.getItem(this.prevKey!);\n if (prevItem && prevItem.type !== 'separator') {\n let clone = this.clone();\n newCollection.addDescendants(clone, collection);\n return clone;\n }\n\n return null;\n }\n}\n\nexport const Divider = /*#__PURE__*/ createLeafComponent(SeparatorNode, function Divider({size}: {size?: 'S' | 'M' | 'L' | 'XL'}, ref: ForwardedRef<HTMLDivElement>, node: Node<unknown>) {\n let listState = useContext(ListStateContext)!;\n\n let nextNode = node.nextKey != null && listState.collection.getItem(node.nextKey);\n if (node.prevKey == null || !nextNode || nextNode.type === 'separator' || (nextNode.type === 'loader' && nextNode.nextKey == null)) {\n return null;\n }\n\n return (\n <div className={separatorWrapper({size})}>\n <div ref={ref} className={dividerStyle} />\n </div>\n );\n});\n"],"names":[],"version":3,"file":"ComboBox.mjs.map"}
1
+ {"mappings":"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","sources":["packages/@react-spectrum/s2/src/ComboBox.tsx"],"sourcesContent":["/*\n * Copyright 2024 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport {\n ComboBox as AriaComboBox,\n ComboBoxProps as AriaComboBoxProps,\n ComboBoxStateContext\n} from 'react-aria-components/ComboBox';\nimport {\n ListBoxSection as AriaListBoxSection,\n ListBox,\n ListBoxItem,\n ListBoxItemProps,\n ListBoxLoadMoreItem,\n ListBoxProps,\n ListBoxSectionProps,\n ListStateContext\n} from 'react-aria-components/ListBox';\nimport {PopoverProps as AriaPopoverProps, Placement} from 'react-aria-components/Popover';\nimport {\n AsyncLoadable,\n GlobalDOMAttributes,\n HelpTextProps,\n LoadingState,\n SingleSelection,\n SpectrumLabelableProps\n} from '@react-types/shared';\nimport {AvatarContext} from './Avatar';\nimport {BaseCollection, CollectionNode} from 'react-aria/private/collections/BaseCollection';\nimport {baseColor, centerPadding, focusRing, space, style} from '../style' with {type: 'macro'};\nimport {Button, ButtonRenderProps} from 'react-aria-components/Button';\nimport {centerBaseline} from './CenterBaseline';\nimport {checkmark, description, icon, iconCenterWrapper, label, sectionHeading} from './Menu';\nimport CheckmarkIcon from '../ui-icons/Checkmark';\nimport ChevronIcon from '../ui-icons/Chevron';\nimport {Collection} from 'react-aria/Collection';\nimport {ContextValue, Provider} from 'react-aria-components/slots';\nimport {\n control,\n controlBorderRadius,\n controlFont,\n controlSize,\n field,\n fieldInput,\n getAllowedOverrides,\n StyleProps\n} from './style-utils' with {type: 'macro'};\nimport {\n createContext,\n CSSProperties,\n ForwardedRef,\n forwardRef,\n ReactNode,\n Ref,\n useContext,\n useEffect,\n useImperativeHandle,\n useMemo,\n useRef,\n useState\n} from 'react';\nimport {createFocusableRef} from './useDOMRef';\nimport {createLeafComponent} from 'react-aria/CollectionBuilder';\nimport {edgeToText} from '../style/spectrum-theme' with {type: 'macro'};\nimport {FieldErrorIcon, FieldGroup, FieldLabel, HelpText, Input} from './Field';\nimport {FormContext, useFormProps} from './Form';\nimport {forwardRefType} from './types';\nimport {HeaderContext, HeadingContext, Text, TextContext} from './Content';\nimport {IconContext} from './Icon';\nimport {InputContext, InputProps} from 'react-aria-components/Input';\n// @ts-ignore\nimport intlMessages from '../intl/*.json';\nimport {ListLayout} from 'react-stately/useVirtualizerState';\nimport {mergeRefs} from 'react-aria/mergeRefs';\nimport {Node} from '@react-types/shared';\nimport {Popover} from './Popover';\nimport {pressScale} from './pressScale';\nimport {ProgressCircle} from './ProgressCircle';\nimport {TextFieldRef} from './TextField';\nimport {useLocalizedStringFormatter} from 'react-aria/useLocalizedStringFormatter';\nimport {useScale} from './utils';\nimport {useSlotId} from 'react-aria/private/utils/useId';\nimport {useSpectrumContextProps} from './useSpectrumContextProps';\nimport {Virtualizer} from 'react-aria-components/Virtualizer';\n\nexport interface ComboboxStyleProps {\n /**\n * The size of the Combobox.\n *\n * @default 'M'\n */\n size?: 'S' | 'M' | 'L' | 'XL';\n /**\n * The prefix to display in the ComboBox. A non-interactive element that appears before the input.\n */\n prefix?: ReactNode;\n}\nexport interface ComboBoxProps<T>\n extends\n Omit<\n AriaComboBoxProps<T>,\n | 'children'\n | 'style'\n | 'className'\n | 'render'\n | 'defaultFilter'\n | 'allowsEmptyCollection'\n | 'selectionMode'\n | 'selectedKey'\n | 'defaultSelectedKey'\n | 'onSelectionChange'\n | 'value'\n | 'defaultValue'\n | 'onChange'\n | keyof GlobalDOMAttributes\n >,\n Omit<SingleSelection, 'disallowEmptySelection'>,\n ComboboxStyleProps,\n StyleProps,\n SpectrumLabelableProps,\n HelpTextProps,\n Pick<ListBoxProps<T>, 'items' | 'dependencies'>,\n Pick<AriaPopoverProps, 'shouldFlip'>,\n Pick<AsyncLoadable, 'onLoadMore'>,\n Pick<InputProps, 'placeholder'> {\n /** The contents of the collection. */\n children: ReactNode | ((item: T) => ReactNode);\n /**\n * Direction the menu will render relative to the ComboBox.\n *\n * @default 'bottom'\n */\n direction?: 'bottom' | 'top';\n /**\n * Alignment of the menu relative to the input target.\n *\n * @default 'start'\n */\n align?: 'start' | 'end';\n /**\n * Width of the menu. By default, matches width of the trigger. Note that the minimum width of the\n * dropdown is always equal to the trigger's width.\n */\n menuWidth?: number;\n /**\n * The current loading state of the ComboBox. Determines whether or not the progress circle should\n * be shown.\n */\n loadingState?: LoadingState;\n}\n\nexport const ComboBoxContext =\n createContext<ContextValue<Partial<ComboBoxProps<any>>, TextFieldRef>>(null);\n\nconst inputButton = style<ButtonRenderProps & {isOpen: boolean; size: 'S' | 'M' | 'L' | 'XL'}>({\n ...controlBorderRadius('sm'),\n display: 'flex',\n outlineStyle: 'none',\n textAlign: 'center',\n borderStyle: 'none',\n alignItems: 'center',\n justifyContent: 'center',\n size: {\n size: {\n S: 16,\n M: 20,\n L: 24,\n XL: 32\n }\n },\n marginStart: 'text-to-control',\n aspectRatio: 'square',\n flexShrink: 0,\n transition: {\n default: 'default',\n forcedColors: 'none'\n },\n backgroundColor: {\n default: baseColor('gray-100'),\n isOpen: 'gray-200',\n isDisabled: 'disabled',\n forcedColors: {\n default: 'ButtonText',\n isHovered: 'Highlight',\n isOpen: 'Highlight',\n isDisabled: 'GrayText'\n }\n },\n color: {\n default: baseColor('neutral'),\n isDisabled: 'disabled',\n forcedColors: 'ButtonFace'\n }\n});\n\nconst iconStyles = style({\n flexShrink: 0,\n rotate: 90,\n '--iconPrimary': {\n type: 'fill',\n value: 'currentColor'\n }\n});\n\nconst loadingWrapperStyles = style({\n gridColumnStart: '1',\n gridColumnEnd: '-1',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n marginY: 8\n});\n\nconst progressCircleStyles = style({\n size: {\n size: {\n S: 16,\n M: 20,\n L: 22,\n XL: 26\n }\n },\n marginStart: {\n isInput: 'text-to-visual'\n }\n});\n\nconst emptyStateText = style({\n height: {\n size: {\n S: 24,\n M: 32,\n L: 40,\n XL: 48\n }\n },\n font: {\n size: {\n S: 'ui-sm',\n M: 'ui',\n L: 'ui-lg',\n XL: 'ui-xl'\n }\n },\n display: 'flex',\n alignItems: 'center',\n paddingStart: 'edge-to-text'\n});\n\nexport let listbox = style<{size: 'S' | 'M' | 'L' | 'XL'}>({\n width: 'full',\n boxSizing: 'border-box',\n maxHeight: '[inherit]',\n // TODO: Might help with horizontal scrolling happening on Windows, will need to check somehow. Otherwise, revert back to overflow: auto\n overflowY: 'auto',\n overflowX: 'hidden',\n fontFamily: 'sans',\n fontSize: controlFont(),\n outlineStyle: 'none'\n});\n\nexport let listboxItem = style(\n {\n ...focusRing(),\n ...control({shape: 'default', wrap: true, icon: true}),\n columnGap: 0,\n paddingX: 0,\n paddingBottom: '--labelPadding',\n backgroundColor: {\n default: 'transparent',\n isFocused: baseColor('gray-100').isFocusVisible\n },\n color: {\n default: baseColor('neutral'),\n isDisabled: {\n default: 'disabled',\n forcedColors: 'GrayText'\n }\n },\n position: 'relative',\n gridColumnStart: 1,\n gridColumnEnd: -1,\n display: 'grid',\n gridTemplateAreas: ['. checkmark icon label .', '. . . description .'],\n gridTemplateColumns: {\n size: {\n S: [edgeToText(24), 'auto', 'auto', 'minmax(0, 1fr)', edgeToText(24)],\n M: [edgeToText(32), 'auto', 'auto', 'minmax(0, 1fr)', edgeToText(32)],\n L: [edgeToText(40), 'auto', 'auto', 'minmax(0, 1fr)', edgeToText(40)],\n XL: [edgeToText(48), 'auto', 'auto', 'minmax(0, 1fr)', edgeToText(48)]\n }\n },\n gridTemplateRows: {\n // min-content prevents second row from 'auto'ing to a size larger then 0 when empty\n default: 'auto minmax(0, min-content)',\n ':has([slot=description])': 'auto auto'\n },\n rowGap: {\n ':has([slot=description])': space(1)\n },\n alignItems: 'baseline',\n minHeight: controlSize(),\n height: 'min',\n textDecoration: 'none',\n cursor: {\n default: 'default',\n isLink: 'pointer'\n },\n transition: 'transform'\n },\n getAllowedOverrides()\n);\n\nexport let listboxHeader = style<{size?: 'S' | 'M' | 'L' | 'XL'}>({\n color: 'neutral',\n boxSizing: 'border-box',\n minHeight: controlSize(),\n paddingY: centerPadding(),\n marginX: {\n size: {\n S: `[${edgeToText(24)}]`,\n M: `[${edgeToText(32)}]`,\n L: `[${edgeToText(40)}]`,\n XL: `[${edgeToText(48)}]`\n }\n }\n});\n\nconst separatorWrapper = style({\n display: 'flex',\n marginX: {\n size: {\n S: `[${edgeToText(24)}]`,\n M: `[${edgeToText(32)}]`,\n L: `[${edgeToText(40)}]`,\n XL: `[${edgeToText(48)}]`\n }\n },\n height: 12,\n alignItems: 'center'\n});\n\nconst dividerStyle = style({\n backgroundColor: {\n default: 'gray-200',\n forcedColors: 'ButtonBorder'\n },\n borderRadius: 'full',\n height: '[2px]',\n width: 'full'\n});\n\nconst avatar = style({\n gridArea: 'icon',\n marginEnd: 'text-to-visual'\n});\n\n// Not from any design, just following the sizing of the existing rows\nexport const LOADER_ROW_HEIGHTS = {\n S: {\n medium: 24,\n large: 30\n },\n M: {\n medium: 32,\n large: 40\n },\n L: {\n medium: 40,\n large: 50\n },\n XL: {\n medium: 48,\n large: 60\n }\n};\n\nlet InternalComboboxContext = createContext<{size: 'S' | 'M' | 'L' | 'XL'}>({size: 'M'});\n\n/**\n * ComboBox allow users to choose a single option from a collapsible list of options when space is\n * limited.\n */\nexport const ComboBox = /*#__PURE__*/ (forwardRef as forwardRefType)(function ComboBox<T>(\n props: ComboBoxProps<T>,\n ref: Ref<TextFieldRef>\n) {\n [props, ref] = useSpectrumContextProps(props, ref, ComboBoxContext);\n\n let formContext = useContext(FormContext);\n props = useFormProps(props);\n let {\n size = 'M',\n labelPosition = 'top',\n UNSAFE_className = '',\n UNSAFE_style,\n ...comboBoxProps\n } = props;\n\n return (\n <AriaComboBox\n {...comboBoxProps}\n allowsEmptyCollection\n style={UNSAFE_style}\n className={\n UNSAFE_className +\n style(field(), getAllowedOverrides())(\n {\n isInForm: !!formContext,\n labelPosition,\n size\n },\n props.styles\n )\n }>\n {({isDisabled, isOpen, isRequired, isInvalid}) => (\n <ComboboxInner\n {...props}\n isDisabled={isDisabled}\n isOpen={isOpen}\n isRequired={isRequired}\n isInvalid={isInvalid}\n ref={ref}\n />\n )}\n </AriaComboBox>\n );\n});\n\nexport interface ComboBoxItemProps\n extends\n Omit<\n ListBoxItemProps,\n | 'children'\n | 'style'\n | 'className'\n | 'render'\n | 'onClick'\n | 'onKeyDown'\n | 'onKeyUp'\n | keyof GlobalDOMAttributes\n >,\n StyleProps {\n children: ReactNode;\n}\n\nconst avatarSize = {\n S: 16,\n M: 20,\n L: 22,\n XL: 26\n} as const;\n\nconst checkmarkIconSize = {\n S: 'XS',\n M: 'M',\n L: 'L',\n XL: 'XL'\n} as const;\n\nexport function ComboBoxItem(props: ComboBoxItemProps): ReactNode {\n let ref = useRef(null);\n let isLink = props.href != null;\n let {size} = useContext(InternalComboboxContext);\n return (\n <ListBoxItem\n {...props}\n ref={ref}\n textValue={\n props.textValue ||\n (typeof props.children === 'string' ? (props.children as string) : undefined)\n }\n style={pressScale(ref, props.UNSAFE_style)}\n className={renderProps =>\n (props.UNSAFE_className || '') + listboxItem({...renderProps, size, isLink}, props.styles)\n }>\n {renderProps => {\n let {children} = props;\n return (\n <>\n <Provider\n values={[\n [\n IconContext,\n {\n slots: {\n icon: {\n render: centerBaseline({slot: 'icon', styles: iconCenterWrapper}),\n styles: icon\n }\n }\n }\n ],\n [\n AvatarContext,\n {\n slots: {\n avatar: {size: avatarSize[size], styles: avatar}\n }\n }\n ],\n [\n TextContext,\n {\n slots: {\n label: {styles: label({size})},\n description: {styles: description({...renderProps, size})}\n }\n }\n ]\n ]}>\n {!isLink && !props.onAction && (\n <CheckmarkIcon\n size={checkmarkIconSize[size]}\n className={checkmark({...renderProps, size})}\n />\n )}\n {typeof children === 'string' ? <Text slot=\"label\">{children}</Text> : children}\n </Provider>\n </>\n );\n }}\n </ListBoxItem>\n );\n}\n\nexport interface ComboBoxSectionProps<T> extends Omit<\n ListBoxSectionProps<T>,\n 'style' | 'className' | 'render' | keyof GlobalDOMAttributes\n> {}\nexport function ComboBoxSection<T>(props: ComboBoxSectionProps<T>): ReactNode {\n let {size} = useContext(InternalComboboxContext);\n return (\n <>\n <AriaListBoxSection {...props}>{props.children}</AriaListBoxSection>\n <Divider size={size} />\n </>\n );\n}\n\nconst ComboboxInner = forwardRef(function ComboboxInner(\n props: ComboBoxProps<any> & {isOpen: boolean},\n ref: ForwardedRef<TextFieldRef | null>\n) {\n let {\n direction = 'bottom',\n align = 'start',\n shouldFlip = true,\n menuWidth,\n label,\n description: descriptionMessage,\n errorMessage,\n children,\n defaultItems,\n items,\n size = 'M',\n labelPosition = 'top',\n labelAlign = 'start',\n necessityIndicator,\n loadingState,\n isDisabled,\n isOpen,\n isRequired,\n isInvalid,\n menuTrigger,\n onLoadMore\n } = props;\n\n let stringFormatter = useLocalizedStringFormatter(intlMessages, '@react-spectrum/s2');\n let inputRef = useRef<HTMLInputElement>(null);\n let domRef = useRef<HTMLDivElement>(null);\n let buttonRef = useRef<HTMLButtonElement>(null);\n // Expose imperative interface for ref\n useImperativeHandle(ref, () => ({\n ...createFocusableRef(domRef, inputRef),\n select() {\n if (inputRef.current) {\n inputRef.current.select();\n }\n },\n getInputElement() {\n return inputRef.current;\n }\n }));\n\n // Better way to encode this into a style? need to account for flipping\n let menuOffset: number;\n if (size === 'S') {\n menuOffset = 6;\n } else if (size === 'M') {\n menuOffset = 6;\n } else if (size === 'L') {\n menuOffset = 7;\n } else {\n menuOffset = 8;\n }\n\n let state = useContext(ComboBoxStateContext);\n let timeout = useRef<ReturnType<typeof setTimeout> | null>(null);\n let [showLoading, setShowLoading] = useState(false);\n let isLoadingOrFiltering = loadingState === 'loading' || loadingState === 'filtering';\n {\n /* Logic copied from S1 */\n }\n let showFieldSpinner = useMemo(\n () => showLoading && (isOpen || menuTrigger === 'manual' || loadingState === 'loading'),\n [showLoading, isOpen, menuTrigger, loadingState]\n );\n let spinnerId = useSlotId([showFieldSpinner]);\n\n let inputValue = state?.inputValue;\n let lastInputValue = useRef(inputValue);\n useEffect(() => {\n if (isLoadingOrFiltering && !showLoading) {\n if (timeout.current === null) {\n timeout.current = setTimeout(() => {\n setShowLoading(true);\n }, 500);\n }\n\n // If user is typing, clear the timer and restart since it is a new request\n if (inputValue !== lastInputValue.current) {\n clearTimeout(timeout.current);\n timeout.current = setTimeout(() => {\n setShowLoading(true);\n }, 500);\n }\n } else if (!isLoadingOrFiltering) {\n // If loading is no longer happening, clear any timers and hide the loading circle\n setShowLoading(false);\n if (timeout.current) {\n clearTimeout(timeout.current);\n }\n timeout.current = null;\n }\n\n lastInputValue.current = inputValue;\n }, [isLoadingOrFiltering, showLoading, inputValue]);\n\n useEffect(() => {\n return () => {\n if (timeout.current) {\n clearTimeout(timeout.current);\n }\n timeout.current = null;\n };\n }, []);\n\n let renderer;\n let listBoxLoadingCircle = (\n <ListBoxLoadMoreItem\n // Only show the spinner in the list when loading more\n isLoading={loadingState === 'loadingMore'}\n onLoadMore={onLoadMore}\n className={loadingWrapperStyles}>\n <ProgressCircle\n isIndeterminate\n size=\"S\"\n styles={progressCircleStyles({size})}\n // Same loading string as table\n aria-label={stringFormatter.format('table.loadingMore')}\n />\n </ListBoxLoadMoreItem>\n );\n\n if (typeof children === 'function') {\n renderer = (\n <>\n <Collection items={items ?? defaultItems} dependencies={props.dependencies}>\n {children}\n </Collection>\n {listBoxLoadingCircle}\n </>\n );\n } else {\n // TODO: is there a case where the user might provide items to the Combobox but doesn't provide a function renderer?\n // Same case for other components that have this logic (TableView/CardView/Picker)\n renderer = (\n <>\n {children}\n {listBoxLoadingCircle}\n </>\n );\n }\n let scale = useScale();\n\n return (\n <>\n <InternalComboboxContext.Provider value={{size}}>\n <FieldLabel\n isDisabled={isDisabled}\n isRequired={isRequired}\n size={size}\n labelPosition={labelPosition}\n labelAlign={labelAlign}\n necessityIndicator={necessityIndicator}\n contextualHelp={props.contextualHelp}>\n {label}\n </FieldLabel>\n <FieldGroup\n prefix={props.prefix}\n role=\"presentation\"\n isDisabled={isDisabled}\n isInvalid={isInvalid}\n size={size}\n styles={style({\n ...fieldInput(),\n paddingStart: 'edge-to-text',\n // better way to do this one? it's not actually half, they are\n // [9, 4], [12, 6], [15, 8], [18, 8]\n paddingEnd: 'calc(self(height, self(minHeight)) * 3 / 16 - self(borderEndWidth, 2px))'\n })({size})}>\n <InputContext.Consumer>\n {ctx => (\n <InputContext.Provider\n value={{\n ...ctx,\n ref: mergeRefs((ctx as any)?.ref, inputRef)\n }}>\n <Input aria-describedby={spinnerId} />\n </InputContext.Provider>\n )}\n </InputContext.Consumer>\n {isInvalid && <FieldErrorIcon isDisabled={isDisabled} />}\n {showFieldSpinner && (\n <ProgressCircle\n id={spinnerId}\n isIndeterminate\n size=\"S\"\n styles={progressCircleStyles({size, isInput: true})}\n aria-label={stringFormatter.format('table.loading')}\n />\n )}\n <Button\n ref={buttonRef}\n // Prevent press scale from sticking while ComboBox is open.\n // @ts-ignore\n isPressed={false}\n style={renderProps => pressScale(buttonRef)(renderProps)}\n className={renderProps =>\n inputButton({\n ...renderProps,\n size,\n isOpen\n })\n }>\n <ChevronIcon size={size} className={iconStyles} />\n </Button>\n </FieldGroup>\n <HelpText\n size={size}\n isDisabled={isDisabled}\n isInvalid={isInvalid}\n description={descriptionMessage}>\n {errorMessage}\n </HelpText>\n <Popover\n hideArrow\n offset={menuOffset}\n placement={`${direction} ${align}` as Placement}\n shouldFlip={shouldFlip}\n UNSAFE_style={\n {\n '--trigger-width': menuWidth ? menuWidth + 'px' : undefined\n } as CSSProperties\n }\n padding=\"none\"\n styles={style({\n minWidth: '--trigger-width',\n width: '--trigger-width'\n })}>\n <div\n className={style({\n display: 'flex',\n size: 'full'\n })}>\n <Provider\n values={[\n [HeaderContext, {styles: listboxHeader({size})}],\n [\n HeadingContext,\n {\n // @ts-ignore\n role: 'presentation',\n styles: sectionHeading\n }\n ],\n [\n TextContext,\n {\n slots: {\n description: {\n styles: description({size, isFocused: false, isDisabled: false})\n }\n }\n }\n ]\n ]}>\n <Virtualizer\n layout={ListLayout}\n layoutOptions={{\n estimatedRowHeight: 32,\n padding: 8,\n estimatedHeadingHeight: 50,\n loaderHeight: LOADER_ROW_HEIGHTS[size][scale]\n }}>\n <ListBox\n dependencies={props.dependencies}\n renderEmptyState={() => (\n <span className={emptyStateText({size})}>\n {loadingState === 'loading'\n ? stringFormatter.format('table.loading')\n : stringFormatter.format('combobox.noResults')}\n </span>\n )}\n items={items}\n className={listbox({size})}>\n {renderer}\n </ListBox>\n </Virtualizer>\n </Provider>\n </div>\n </Popover>\n </InternalComboboxContext.Provider>\n </>\n );\n});\n\nclass SeparatorNode extends CollectionNode<any> {\n static readonly type = 'separator';\n\n filter(\n collection: BaseCollection<any>,\n newCollection: BaseCollection<any>\n ): CollectionNode<any> | null {\n let prevItem = newCollection.getItem(this.prevKey!);\n if (prevItem && prevItem.type !== 'separator') {\n let clone = this.clone();\n newCollection.addDescendants(clone, collection);\n return clone;\n }\n\n return null;\n }\n}\n\nexport const Divider = /*#__PURE__*/ createLeafComponent(\n SeparatorNode,\n function Divider(\n {size}: {size?: 'S' | 'M' | 'L' | 'XL'},\n ref: ForwardedRef<HTMLDivElement>,\n node: Node<unknown>\n ) {\n let listState = useContext(ListStateContext)!;\n\n let nextNode = node.nextKey != null && listState.collection.getItem(node.nextKey);\n if (\n node.prevKey == null ||\n !nextNode ||\n nextNode.type === 'separator' ||\n (nextNode.type === 'loader' && nextNode.nextKey == null)\n ) {\n return null;\n }\n\n return (\n <div className={separatorWrapper({size})}>\n <div ref={ref} className={dividerStyle} />\n </div>\n );\n }\n);\n"],"names":[],"version":3,"file":"ComboBox.mjs.map"}
@@ -47,7 +47,8 @@ $parcel$export(module.exports, "Footer", () => $6367bc87eb7d24ad$export$a06f1c67
47
47
 
48
48
 
49
49
  const $6367bc87eb7d24ad$export$d688439359537581 = /*#__PURE__*/ (0, $bwC5I$react.createContext)(null);
50
- const $6367bc87eb7d24ad$export$a8a3e93435678ff9 = /*#__PURE__*/ (0, $bwC5I$react.forwardRef)(function Heading(props, ref) {
50
+ const $6367bc87eb7d24ad$export$a8a3e93435678ff9 = /*#__PURE__*/ (0, $bwC5I$react.forwardRef)(// Wrapper around RAC Heading to unmount when hidden.
51
+ function Heading(props, ref) {
51
52
  [props, ref] = (0, $ac757a4c2bd72aee$exports.useSpectrumContextProps)(props, ref, $6367bc87eb7d24ad$export$d688439359537581);
52
53
  let domRef = (0, $150382364eecc4bc$exports.useDOMRef)(ref);
53
54
  let { UNSAFE_className: UNSAFE_className = '', UNSAFE_style: UNSAFE_style, styles: styles = '', isHidden: isHidden, slot: slot, ...otherProps } = props;
@@ -1 +1 @@
1
- {"mappings":"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","sources":["packages/@react-spectrum/s2/src/Content.tsx"],"sourcesContent":["/*\n * Copyright 2024 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport {ContextValue, SlotProps} from 'react-aria-components/slots';\n\nimport {createContext, forwardRef, ReactNode, useContext} from 'react';\nimport {DOMRef, DOMRefValue} from '@react-types/shared';\nimport {inertValue} from 'react-aria/private/utils/inertValue';\nimport {Keyboard as KeyboardAria} from 'react-aria-components/Keyboard';\nimport {Header as RACHeader} from 'react-aria-components/Header';\nimport {Heading as RACHeading} from 'react-aria-components/Heading';\nimport {TextContext as RACTextContext, Text as TextAria} from 'react-aria-components/Text';\nimport {StyleString} from '../style/types';\nimport {UnsafeStyles} from './style-utils';\nimport {useDOMRef} from './useDOMRef';\nimport {useIsSkeleton, useSkeletonText} from './Skeleton';\nimport {useSpectrumContextProps} from './useSpectrumContextProps';\n\ninterface ContentProps extends UnsafeStyles, SlotProps {\n children: ReactNode,\n styles?: StyleString,\n isHidden?: boolean,\n id?: string,\n itemProp?: string,\n itemScope?: boolean,\n itemType?: string,\n itemID?: string,\n itemRef?: string\n}\n\ninterface HeadingProps extends Omit<ContentProps, 'children'> {\n children: ReactNode,\n level?: number\n}\n\nexport const HeadingContext = createContext<ContextValue<Partial<HeadingProps>, DOMRefValue<HTMLHeadingElement>>>(null);\n\nexport const Heading = forwardRef(// Wrapper around RAC Heading to unmount when hidden.\nfunction Heading(props: HeadingProps, ref: DOMRef<HTMLHeadingElement>) {\n [props, ref] = useSpectrumContextProps(props, ref, HeadingContext);\n let domRef = useDOMRef(ref);\n let {UNSAFE_className = '', UNSAFE_style, styles = '', isHidden, slot, ...otherProps} = props;\n if (isHidden) {\n return null;\n }\n\n return (\n <RACHeading\n {...otherProps}\n ref={domRef}\n className={UNSAFE_className + styles}\n style={UNSAFE_style}\n slot={slot || undefined} />\n );\n});\n\nexport const HeaderContext = createContext<ContextValue<Partial<ContentProps>, DOMRefValue<HTMLElement>>>(null);\n\nexport const Header = forwardRef(function Header(props: ContentProps, ref: DOMRef) {\n [props, ref] = useSpectrumContextProps(props, ref, HeaderContext);\n let domRef = useDOMRef(ref);\n let {UNSAFE_className = '', UNSAFE_style, styles = '', isHidden, slot, ...otherProps} = props;\n if (isHidden) {\n return null;\n }\n\n return (\n <RACHeader\n {...otherProps}\n ref={domRef}\n className={UNSAFE_className + styles}\n style={UNSAFE_style}\n slot={slot || undefined} />\n );\n});\n\nexport const ContentContext = createContext<ContextValue<Partial<ContentProps>, DOMRefValue<HTMLDivElement>>>(null);\n\nexport const Content = forwardRef(function Content(props: ContentProps, ref: DOMRef<HTMLDivElement>) {\n [props, ref] = useSpectrumContextProps(props, ref, ContentContext);\n let domRef = useDOMRef(ref);\n let {UNSAFE_className = '', UNSAFE_style, styles = '', isHidden, slot, ...otherProps} = props;\n if (isHidden) {\n return null;\n }\n return (\n <div\n {...otherProps}\n ref={domRef}\n className={UNSAFE_className + styles}\n style={UNSAFE_style}\n slot={slot || undefined} />\n );\n});\n\nexport const TextContext = createContext<ContextValue<Partial<ContentProps>, DOMRefValue>>(null);\n\nexport const Text = forwardRef(function Text(props: ContentProps, ref: DOMRef) {\n [props, ref] = useSpectrumContextProps(props, ref, TextContext);\n let domRef = useDOMRef(ref);\n let {UNSAFE_className = '', UNSAFE_style, styles = '', isHidden, slot, children, ...otherProps} = props;\n let racContext = useContext(RACTextContext);\n let isSkeleton = useIsSkeleton();\n [children, UNSAFE_style] = useSkeletonText(children, UNSAFE_style);\n if (isHidden) {\n return null;\n }\n\n let text = (\n <TextAria\n {...otherProps}\n ref={domRef}\n // @ts-ignore - compatibility with React < 19\n inert={inertValue(isSkeleton)}\n className={UNSAFE_className + styles}\n style={UNSAFE_style}\n slot={slot || undefined}\n data-rsp-slot=\"text\">\n {children}\n </TextAria>\n );\n\n if (slot && racContext && 'slots' in racContext && !racContext.slots?.[slot]) {\n return <RACTextContext.Provider value={null}>{text}</RACTextContext.Provider>;\n }\n\n return text;\n});\n\nexport const KeyboardContext = createContext<ContextValue<Partial<ContentProps>, DOMRefValue>>({});\n\nexport const Keyboard = forwardRef(function Keyboard(props: ContentProps, ref: DOMRef) {\n [props, ref] = useSpectrumContextProps(props, ref, KeyboardContext);\n let domRef = useDOMRef(ref);\n let {UNSAFE_className = '', UNSAFE_style, styles = '', isHidden, slot, ...otherProps} = props;\n if (isHidden) {\n return null;\n }\n return (\n <KeyboardAria\n {...otherProps}\n ref={domRef}\n className={UNSAFE_className + styles}\n style={UNSAFE_style}\n slot={slot || undefined} />\n );\n});\n\nexport const FooterContext = createContext<ContextValue<Partial<ContentProps>, DOMRefValue>>({});\n\nexport const Footer = forwardRef(function Footer(props: ContentProps, ref: DOMRef) {\n [props, ref] = useSpectrumContextProps(props, ref, FooterContext);\n let domRef = useDOMRef(ref);\n let {UNSAFE_className = '', UNSAFE_style, styles = '', isHidden, slot, ...otherProps} = props;\n if (isHidden) {\n return null;\n }\n return (\n <footer\n {...otherProps}\n ref={domRef}\n className={UNSAFE_className + styles}\n style={UNSAFE_style}\n slot={slot || undefined} />\n );\n});\n"],"names":[],"version":3,"file":"Content.cjs.map"}
1
+ {"mappings":"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","sources":["packages/@react-spectrum/s2/src/Content.tsx"],"sourcesContent":["/*\n * Copyright 2024 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport {ContextValue, SlotProps} from 'react-aria-components/slots';\n\nimport {createContext, forwardRef, ReactNode, useContext} from 'react';\nimport {DOMRef, DOMRefValue} from '@react-types/shared';\nimport {inertValue} from 'react-aria/private/utils/inertValue';\nimport {Keyboard as KeyboardAria} from 'react-aria-components/Keyboard';\nimport {Header as RACHeader} from 'react-aria-components/Header';\nimport {Heading as RACHeading} from 'react-aria-components/Heading';\nimport {TextContext as RACTextContext, Text as TextAria} from 'react-aria-components/Text';\nimport {StyleString} from '../style/types';\nimport {UnsafeStyles} from './style-utils';\nimport {useDOMRef} from './useDOMRef';\nimport {useIsSkeleton, useSkeletonText} from './Skeleton';\nimport {useSpectrumContextProps} from './useSpectrumContextProps';\n\ninterface ContentProps extends UnsafeStyles, SlotProps {\n children: ReactNode;\n styles?: StyleString;\n isHidden?: boolean;\n id?: string;\n itemProp?: string;\n itemScope?: boolean;\n itemType?: string;\n itemID?: string;\n itemRef?: string;\n}\n\ninterface HeadingProps extends Omit<ContentProps, 'children'> {\n children: ReactNode;\n level?: number;\n}\n\nexport const HeadingContext =\n createContext<ContextValue<Partial<HeadingProps>, DOMRefValue<HTMLHeadingElement>>>(null);\n\nexport const Heading = forwardRef(\n // Wrapper around RAC Heading to unmount when hidden.\n function Heading(props: HeadingProps, ref: DOMRef<HTMLHeadingElement>) {\n [props, ref] = useSpectrumContextProps(props, ref, HeadingContext);\n let domRef = useDOMRef(ref);\n let {UNSAFE_className = '', UNSAFE_style, styles = '', isHidden, slot, ...otherProps} = props;\n if (isHidden) {\n return null;\n }\n\n return (\n <RACHeading\n {...otherProps}\n ref={domRef}\n className={UNSAFE_className + styles}\n style={UNSAFE_style}\n slot={slot || undefined}\n />\n );\n }\n);\n\nexport const HeaderContext =\n createContext<ContextValue<Partial<ContentProps>, DOMRefValue<HTMLElement>>>(null);\n\nexport const Header = forwardRef(function Header(props: ContentProps, ref: DOMRef) {\n [props, ref] = useSpectrumContextProps(props, ref, HeaderContext);\n let domRef = useDOMRef(ref);\n let {UNSAFE_className = '', UNSAFE_style, styles = '', isHidden, slot, ...otherProps} = props;\n if (isHidden) {\n return null;\n }\n\n return (\n <RACHeader\n {...otherProps}\n ref={domRef}\n className={UNSAFE_className + styles}\n style={UNSAFE_style}\n slot={slot || undefined}\n />\n );\n});\n\nexport const ContentContext =\n createContext<ContextValue<Partial<ContentProps>, DOMRefValue<HTMLDivElement>>>(null);\n\nexport const Content = forwardRef(function Content(\n props: ContentProps,\n ref: DOMRef<HTMLDivElement>\n) {\n [props, ref] = useSpectrumContextProps(props, ref, ContentContext);\n let domRef = useDOMRef(ref);\n let {UNSAFE_className = '', UNSAFE_style, styles = '', isHidden, slot, ...otherProps} = props;\n if (isHidden) {\n return null;\n }\n return (\n <div\n {...otherProps}\n ref={domRef}\n className={UNSAFE_className + styles}\n style={UNSAFE_style}\n slot={slot || undefined}\n />\n );\n});\n\nexport const TextContext = createContext<ContextValue<Partial<ContentProps>, DOMRefValue>>(null);\n\nexport const Text = forwardRef(function Text(props: ContentProps, ref: DOMRef) {\n [props, ref] = useSpectrumContextProps(props, ref, TextContext);\n let domRef = useDOMRef(ref);\n let {\n UNSAFE_className = '',\n UNSAFE_style,\n styles = '',\n isHidden,\n slot,\n children,\n ...otherProps\n } = props;\n let racContext = useContext(RACTextContext);\n let isSkeleton = useIsSkeleton();\n [children, UNSAFE_style] = useSkeletonText(children, UNSAFE_style);\n if (isHidden) {\n return null;\n }\n\n let text = (\n <TextAria\n {...otherProps}\n ref={domRef}\n // @ts-ignore - compatibility with React < 19\n inert={inertValue(isSkeleton)}\n className={UNSAFE_className + styles}\n style={UNSAFE_style}\n slot={slot || undefined}\n data-rsp-slot=\"text\">\n {children}\n </TextAria>\n );\n\n if (slot && racContext && 'slots' in racContext && !racContext.slots?.[slot]) {\n return <RACTextContext.Provider value={null}>{text}</RACTextContext.Provider>;\n }\n\n return text;\n});\n\nexport const KeyboardContext = createContext<ContextValue<Partial<ContentProps>, DOMRefValue>>({});\n\nexport const Keyboard = forwardRef(function Keyboard(props: ContentProps, ref: DOMRef) {\n [props, ref] = useSpectrumContextProps(props, ref, KeyboardContext);\n let domRef = useDOMRef(ref);\n let {UNSAFE_className = '', UNSAFE_style, styles = '', isHidden, slot, ...otherProps} = props;\n if (isHidden) {\n return null;\n }\n return (\n <KeyboardAria\n {...otherProps}\n ref={domRef}\n className={UNSAFE_className + styles}\n style={UNSAFE_style}\n slot={slot || undefined}\n />\n );\n});\n\nexport const FooterContext = createContext<ContextValue<Partial<ContentProps>, DOMRefValue>>({});\n\nexport const Footer = forwardRef(function Footer(props: ContentProps, ref: DOMRef) {\n [props, ref] = useSpectrumContextProps(props, ref, FooterContext);\n let domRef = useDOMRef(ref);\n let {UNSAFE_className = '', UNSAFE_style, styles = '', isHidden, slot, ...otherProps} = props;\n if (isHidden) {\n return null;\n }\n return (\n <footer\n {...otherProps}\n ref={domRef}\n className={UNSAFE_className + styles}\n style={UNSAFE_style}\n slot={slot || undefined}\n />\n );\n});\n"],"names":[],"version":3,"file":"Content.cjs.map"}
@@ -30,7 +30,8 @@ import {TextContext as $7TVeb$TextContext, Text as $7TVeb$Text} from "react-aria
30
30
 
31
31
 
32
32
  const $8e847109a6ab556d$export$d688439359537581 = /*#__PURE__*/ (0, $7TVeb$createContext)(null);
33
- const $8e847109a6ab556d$export$a8a3e93435678ff9 = /*#__PURE__*/ (0, $7TVeb$forwardRef)(function Heading(props, ref) {
33
+ const $8e847109a6ab556d$export$a8a3e93435678ff9 = /*#__PURE__*/ (0, $7TVeb$forwardRef)(// Wrapper around RAC Heading to unmount when hidden.
34
+ function Heading(props, ref) {
34
35
  [props, ref] = (0, $5ce63c423902f47d$export$764f6146fadd77f7)(props, ref, $8e847109a6ab556d$export$d688439359537581);
35
36
  let domRef = (0, $80ecb974df713a30$export$c2c55ef9111cafd8)(ref);
36
37
  let { UNSAFE_className: UNSAFE_className = '', UNSAFE_style: UNSAFE_style, styles: styles = '', isHidden: isHidden, slot: slot, ...otherProps } = props;
@@ -1 +1 @@
1
- {"mappings":"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","sources":["packages/@react-spectrum/s2/src/Content.tsx"],"sourcesContent":["/*\n * Copyright 2024 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport {ContextValue, SlotProps} from 'react-aria-components/slots';\n\nimport {createContext, forwardRef, ReactNode, useContext} from 'react';\nimport {DOMRef, DOMRefValue} from '@react-types/shared';\nimport {inertValue} from 'react-aria/private/utils/inertValue';\nimport {Keyboard as KeyboardAria} from 'react-aria-components/Keyboard';\nimport {Header as RACHeader} from 'react-aria-components/Header';\nimport {Heading as RACHeading} from 'react-aria-components/Heading';\nimport {TextContext as RACTextContext, Text as TextAria} from 'react-aria-components/Text';\nimport {StyleString} from '../style/types';\nimport {UnsafeStyles} from './style-utils';\nimport {useDOMRef} from './useDOMRef';\nimport {useIsSkeleton, useSkeletonText} from './Skeleton';\nimport {useSpectrumContextProps} from './useSpectrumContextProps';\n\ninterface ContentProps extends UnsafeStyles, SlotProps {\n children: ReactNode,\n styles?: StyleString,\n isHidden?: boolean,\n id?: string,\n itemProp?: string,\n itemScope?: boolean,\n itemType?: string,\n itemID?: string,\n itemRef?: string\n}\n\ninterface HeadingProps extends Omit<ContentProps, 'children'> {\n children: ReactNode,\n level?: number\n}\n\nexport const HeadingContext = createContext<ContextValue<Partial<HeadingProps>, DOMRefValue<HTMLHeadingElement>>>(null);\n\nexport const Heading = forwardRef(// Wrapper around RAC Heading to unmount when hidden.\nfunction Heading(props: HeadingProps, ref: DOMRef<HTMLHeadingElement>) {\n [props, ref] = useSpectrumContextProps(props, ref, HeadingContext);\n let domRef = useDOMRef(ref);\n let {UNSAFE_className = '', UNSAFE_style, styles = '', isHidden, slot, ...otherProps} = props;\n if (isHidden) {\n return null;\n }\n\n return (\n <RACHeading\n {...otherProps}\n ref={domRef}\n className={UNSAFE_className + styles}\n style={UNSAFE_style}\n slot={slot || undefined} />\n );\n});\n\nexport const HeaderContext = createContext<ContextValue<Partial<ContentProps>, DOMRefValue<HTMLElement>>>(null);\n\nexport const Header = forwardRef(function Header(props: ContentProps, ref: DOMRef) {\n [props, ref] = useSpectrumContextProps(props, ref, HeaderContext);\n let domRef = useDOMRef(ref);\n let {UNSAFE_className = '', UNSAFE_style, styles = '', isHidden, slot, ...otherProps} = props;\n if (isHidden) {\n return null;\n }\n\n return (\n <RACHeader\n {...otherProps}\n ref={domRef}\n className={UNSAFE_className + styles}\n style={UNSAFE_style}\n slot={slot || undefined} />\n );\n});\n\nexport const ContentContext = createContext<ContextValue<Partial<ContentProps>, DOMRefValue<HTMLDivElement>>>(null);\n\nexport const Content = forwardRef(function Content(props: ContentProps, ref: DOMRef<HTMLDivElement>) {\n [props, ref] = useSpectrumContextProps(props, ref, ContentContext);\n let domRef = useDOMRef(ref);\n let {UNSAFE_className = '', UNSAFE_style, styles = '', isHidden, slot, ...otherProps} = props;\n if (isHidden) {\n return null;\n }\n return (\n <div\n {...otherProps}\n ref={domRef}\n className={UNSAFE_className + styles}\n style={UNSAFE_style}\n slot={slot || undefined} />\n );\n});\n\nexport const TextContext = createContext<ContextValue<Partial<ContentProps>, DOMRefValue>>(null);\n\nexport const Text = forwardRef(function Text(props: ContentProps, ref: DOMRef) {\n [props, ref] = useSpectrumContextProps(props, ref, TextContext);\n let domRef = useDOMRef(ref);\n let {UNSAFE_className = '', UNSAFE_style, styles = '', isHidden, slot, children, ...otherProps} = props;\n let racContext = useContext(RACTextContext);\n let isSkeleton = useIsSkeleton();\n [children, UNSAFE_style] = useSkeletonText(children, UNSAFE_style);\n if (isHidden) {\n return null;\n }\n\n let text = (\n <TextAria\n {...otherProps}\n ref={domRef}\n // @ts-ignore - compatibility with React < 19\n inert={inertValue(isSkeleton)}\n className={UNSAFE_className + styles}\n style={UNSAFE_style}\n slot={slot || undefined}\n data-rsp-slot=\"text\">\n {children}\n </TextAria>\n );\n\n if (slot && racContext && 'slots' in racContext && !racContext.slots?.[slot]) {\n return <RACTextContext.Provider value={null}>{text}</RACTextContext.Provider>;\n }\n\n return text;\n});\n\nexport const KeyboardContext = createContext<ContextValue<Partial<ContentProps>, DOMRefValue>>({});\n\nexport const Keyboard = forwardRef(function Keyboard(props: ContentProps, ref: DOMRef) {\n [props, ref] = useSpectrumContextProps(props, ref, KeyboardContext);\n let domRef = useDOMRef(ref);\n let {UNSAFE_className = '', UNSAFE_style, styles = '', isHidden, slot, ...otherProps} = props;\n if (isHidden) {\n return null;\n }\n return (\n <KeyboardAria\n {...otherProps}\n ref={domRef}\n className={UNSAFE_className + styles}\n style={UNSAFE_style}\n slot={slot || undefined} />\n );\n});\n\nexport const FooterContext = createContext<ContextValue<Partial<ContentProps>, DOMRefValue>>({});\n\nexport const Footer = forwardRef(function Footer(props: ContentProps, ref: DOMRef) {\n [props, ref] = useSpectrumContextProps(props, ref, FooterContext);\n let domRef = useDOMRef(ref);\n let {UNSAFE_className = '', UNSAFE_style, styles = '', isHidden, slot, ...otherProps} = props;\n if (isHidden) {\n return null;\n }\n return (\n <footer\n {...otherProps}\n ref={domRef}\n className={UNSAFE_className + styles}\n style={UNSAFE_style}\n slot={slot || undefined} />\n );\n});\n"],"names":[],"version":3,"file":"Content.mjs.map"}
1
+ {"mappings":"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","sources":["packages/@react-spectrum/s2/src/Content.tsx"],"sourcesContent":["/*\n * Copyright 2024 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport {ContextValue, SlotProps} from 'react-aria-components/slots';\n\nimport {createContext, forwardRef, ReactNode, useContext} from 'react';\nimport {DOMRef, DOMRefValue} from '@react-types/shared';\nimport {inertValue} from 'react-aria/private/utils/inertValue';\nimport {Keyboard as KeyboardAria} from 'react-aria-components/Keyboard';\nimport {Header as RACHeader} from 'react-aria-components/Header';\nimport {Heading as RACHeading} from 'react-aria-components/Heading';\nimport {TextContext as RACTextContext, Text as TextAria} from 'react-aria-components/Text';\nimport {StyleString} from '../style/types';\nimport {UnsafeStyles} from './style-utils';\nimport {useDOMRef} from './useDOMRef';\nimport {useIsSkeleton, useSkeletonText} from './Skeleton';\nimport {useSpectrumContextProps} from './useSpectrumContextProps';\n\ninterface ContentProps extends UnsafeStyles, SlotProps {\n children: ReactNode;\n styles?: StyleString;\n isHidden?: boolean;\n id?: string;\n itemProp?: string;\n itemScope?: boolean;\n itemType?: string;\n itemID?: string;\n itemRef?: string;\n}\n\ninterface HeadingProps extends Omit<ContentProps, 'children'> {\n children: ReactNode;\n level?: number;\n}\n\nexport const HeadingContext =\n createContext<ContextValue<Partial<HeadingProps>, DOMRefValue<HTMLHeadingElement>>>(null);\n\nexport const Heading = forwardRef(\n // Wrapper around RAC Heading to unmount when hidden.\n function Heading(props: HeadingProps, ref: DOMRef<HTMLHeadingElement>) {\n [props, ref] = useSpectrumContextProps(props, ref, HeadingContext);\n let domRef = useDOMRef(ref);\n let {UNSAFE_className = '', UNSAFE_style, styles = '', isHidden, slot, ...otherProps} = props;\n if (isHidden) {\n return null;\n }\n\n return (\n <RACHeading\n {...otherProps}\n ref={domRef}\n className={UNSAFE_className + styles}\n style={UNSAFE_style}\n slot={slot || undefined}\n />\n );\n }\n);\n\nexport const HeaderContext =\n createContext<ContextValue<Partial<ContentProps>, DOMRefValue<HTMLElement>>>(null);\n\nexport const Header = forwardRef(function Header(props: ContentProps, ref: DOMRef) {\n [props, ref] = useSpectrumContextProps(props, ref, HeaderContext);\n let domRef = useDOMRef(ref);\n let {UNSAFE_className = '', UNSAFE_style, styles = '', isHidden, slot, ...otherProps} = props;\n if (isHidden) {\n return null;\n }\n\n return (\n <RACHeader\n {...otherProps}\n ref={domRef}\n className={UNSAFE_className + styles}\n style={UNSAFE_style}\n slot={slot || undefined}\n />\n );\n});\n\nexport const ContentContext =\n createContext<ContextValue<Partial<ContentProps>, DOMRefValue<HTMLDivElement>>>(null);\n\nexport const Content = forwardRef(function Content(\n props: ContentProps,\n ref: DOMRef<HTMLDivElement>\n) {\n [props, ref] = useSpectrumContextProps(props, ref, ContentContext);\n let domRef = useDOMRef(ref);\n let {UNSAFE_className = '', UNSAFE_style, styles = '', isHidden, slot, ...otherProps} = props;\n if (isHidden) {\n return null;\n }\n return (\n <div\n {...otherProps}\n ref={domRef}\n className={UNSAFE_className + styles}\n style={UNSAFE_style}\n slot={slot || undefined}\n />\n );\n});\n\nexport const TextContext = createContext<ContextValue<Partial<ContentProps>, DOMRefValue>>(null);\n\nexport const Text = forwardRef(function Text(props: ContentProps, ref: DOMRef) {\n [props, ref] = useSpectrumContextProps(props, ref, TextContext);\n let domRef = useDOMRef(ref);\n let {\n UNSAFE_className = '',\n UNSAFE_style,\n styles = '',\n isHidden,\n slot,\n children,\n ...otherProps\n } = props;\n let racContext = useContext(RACTextContext);\n let isSkeleton = useIsSkeleton();\n [children, UNSAFE_style] = useSkeletonText(children, UNSAFE_style);\n if (isHidden) {\n return null;\n }\n\n let text = (\n <TextAria\n {...otherProps}\n ref={domRef}\n // @ts-ignore - compatibility with React < 19\n inert={inertValue(isSkeleton)}\n className={UNSAFE_className + styles}\n style={UNSAFE_style}\n slot={slot || undefined}\n data-rsp-slot=\"text\">\n {children}\n </TextAria>\n );\n\n if (slot && racContext && 'slots' in racContext && !racContext.slots?.[slot]) {\n return <RACTextContext.Provider value={null}>{text}</RACTextContext.Provider>;\n }\n\n return text;\n});\n\nexport const KeyboardContext = createContext<ContextValue<Partial<ContentProps>, DOMRefValue>>({});\n\nexport const Keyboard = forwardRef(function Keyboard(props: ContentProps, ref: DOMRef) {\n [props, ref] = useSpectrumContextProps(props, ref, KeyboardContext);\n let domRef = useDOMRef(ref);\n let {UNSAFE_className = '', UNSAFE_style, styles = '', isHidden, slot, ...otherProps} = props;\n if (isHidden) {\n return null;\n }\n return (\n <KeyboardAria\n {...otherProps}\n ref={domRef}\n className={UNSAFE_className + styles}\n style={UNSAFE_style}\n slot={slot || undefined}\n />\n );\n});\n\nexport const FooterContext = createContext<ContextValue<Partial<ContentProps>, DOMRefValue>>({});\n\nexport const Footer = forwardRef(function Footer(props: ContentProps, ref: DOMRef) {\n [props, ref] = useSpectrumContextProps(props, ref, FooterContext);\n let domRef = useDOMRef(ref);\n let {UNSAFE_className = '', UNSAFE_style, styles = '', isHidden, slot, ...otherProps} = props;\n if (isHidden) {\n return null;\n }\n return (\n <footer\n {...otherProps}\n ref={domRef}\n className={UNSAFE_className + styles}\n style={UNSAFE_style}\n slot={slot || undefined}\n />\n );\n});\n"],"names":[],"version":3,"file":"Content.mjs.map"}
@@ -50,8 +50,8 @@ $parcel$export(module.exports, "ContextualHelp", () => $bab829476f85a155$export$
50
50
 
51
51
 
52
52
 
53
- const $bab829476f85a155$var$wrappingDiv = " NOBje7c13 ZOBje7c13 Th13 Qh13 Sh13 Rh13 _oa13 Fb13";
54
- const $bab829476f85a155$var$headingStyles = " uk13 ucJ9TBTb13 ud3Euai13 uea13 ugb13 uhd13 uje13 u2NhKxcl13 uic13 -_6BNtrc-e13 vx13 xe13 _xa13 xX0cczbd13 _xX0cczba13 xfe13 _xfa13 xfX0cczbd13 _xfX0cczba13 _Fd13 _FnuYUweb13 po13 Jy13 Gv13 Iy13 Hy13";
53
+ const $bab829476f85a155$var$wrappingDiv = " NOBje7c131 ZOBje7c131 Th131 Qh131 Sh131 Rh131 _oa131 Fb131";
54
+ const $bab829476f85a155$var$headingStyles = " uk131 ucJ9TBTb131 ud3Euai131 uea131 ugb131 uhd131 uje131 u2NhKxcl131 uic131 -_6BNtrc-e131 vx131 xe131 _xa131 xX0cczbd131 _xX0cczba131 xfe131 _xfa131 xfX0cczbd131 _xfX0cczba131 _Fd131 _FnuYUweb131 po131 Jy131 Gv131 Iy131 Hy131";
55
55
  function $bab829476f85a155$export$218201d297fb4e0d(props) {
56
56
  let { children: children, ...popoverProps } = props;
57
57
  let titleId = (0, $44GE8$reactariauseId.useId)();
@@ -63,7 +63,7 @@ function $bab829476f85a155$export$218201d297fb4e0d(props) {
63
63
  children: /*#__PURE__*/ (0, $44GE8$reactjsxruntime.jsx)("div", {
64
64
  className: $bab829476f85a155$var$wrappingDiv,
65
65
  children: /*#__PURE__*/ (0, $44GE8$reactjsxruntime.jsx)("div", {
66
- className: (0, $308b180f49d82d28$exports.mergeStyles)((0, $0f4636c7093b9233$exports.dialogInner), " od13 nd13 kd13 jd13 Jnqb3Ob13 Gnqb3Ob13 Inqb3Ob13 Hnqb3Ob13 TjCFGYc13 Qh13 Sh13 Rh13 -T_-Th13"),
66
+ className: (0, $308b180f49d82d28$exports.mergeStyles)((0, $0f4636c7093b9233$exports.dialogInner), " od131 nd131 kd131 jd131 Jnqb3Ob131 Gnqb3Ob131 Inqb3Ob131 Hnqb3Ob131 TjCFGYc131 Qh131 Sh131 Rh131 -T_-Th131"),
67
67
  children: /*#__PURE__*/ (0, $44GE8$reactjsxruntime.jsx)((0, $44GE8$reactariacomponentsslots.Provider), {
68
68
  values: [
69
69
  [
@@ -101,13 +101,13 @@ function $bab829476f85a155$export$218201d297fb4e0d(props) {
101
101
  [
102
102
  (0, $6367bc87eb7d24ad$exports.ContentContext),
103
103
  {
104
- styles: " uk13 ucJ9TBTb13 ud3Euai13 uea13 ugb13 uhd13 uje13 u2NhKxcl13 uic13 -_6BNtrc-c13 vx13 xb13 _xa13 _Fb13 _FnuYUwec13 pt13"
104
+ styles: " uk131 ucJ9TBTb131 ud3Euai131 uea131 ugb131 uhd131 uje131 u2NhKxcl131 uic131 -_6BNtrc-c131 vx131 xb131 _xa131 _Fb131 _FnuYUwec131 pt131"
105
105
  }
106
106
  ],
107
107
  [
108
108
  (0, $6367bc87eb7d24ad$exports.FooterContext),
109
109
  {
110
- styles: " uk13 ucJ9TBTb13 ud3Euai13 uea13 ugb13 uhd13 uje13 u2NhKxcl13 uic13 -_6BNtrc-c13 vx13 xb13 _xa13 _Fb13 _FnuYUwec13 pt13 JC13"
110
+ styles: " uk131 ucJ9TBTb131 ud3Euai131 uea131 ugb131 uhd131 uje131 u2NhKxcl131 uic131 -_6BNtrc-c131 vx131 xb131 _xa131 _Fb131 _FnuYUwec131 pt131 JC131"
111
111
  }
112
112
  ]
113
113
  ],
@@ -1 +1 @@
1
- {"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8BA,MAAM;AAQN,MAAM;AAUC,SAAS,0CAAsB,KAAiC;IACrE,IAAI,YAAC,QAAQ,EAAE,GAAG,cAAa,GAAG;IAClC,IAAI,UAAU,CAAA,GAAA,2BAAI;IAElB,qBACE,gCAAC,CAAA,GAAA,iCAAM;QACL,SAAQ;QACR,SAAS;QACT,mBAAiB;QAChB,GAAG,YAAY;kBAChB,cAAA,gCAAC;YACC,WAAW;sBACX,cAAA,gCAAC;gBAEC,WAAW,CAAA,GAAA,qCAAU,EAAE,CAAA,GAAA,qCAAU;0BACjC,cAAA,gCAAC,CAAA,GAAA,wCAAO;oBACN,QAAQ;wBACN;4BAAC,CAAA,GAAA,0CAAU;4BAAG;gCACZ,OAAO;oCACL,CAAC,CAAA,GAAA,4CAAW,EAAE,EAAE,CAAC;gCACnB;4BACF;yBAAE;wBACF,6CAA6C;wBAC7C;4BAAC,CAAA,GAAA,qCAAkB;4BAAG;yBAAK;wBAC3B;4BAAC,CAAA,GAAA,wCAAa;4BAAG;gCACf,QAAQ;gCACR,OAAO;oCACL,oFAAoF;oCACpF,iEAAiE;oCACjE,mEAAmE;oCACnE,CAAC,CAAA,GAAA,4CAAW,EAAE,EAAE;wCAAC,QAAQ;oCAAa;oCACtC,OAAO;wCAAC,IAAI;wCAAS,QAAQ;wCAAe,OAAO;oCAAC;gCACtD;4BACF;yBAAE;wBACF;4BAAC,CAAA,GAAA,wCAAa;4BAAG;gCAAC,MAAM;4BAEtB;yBAAE;wBACJ;4BAAC,CAAA,GAAA,uCAAY;4BAAG;gCAAC,MAAM;4BAGrB;yBAAE;qBACL;8BACA;;;;;AAMb;AA6BO,MAAM,0DAAwB,CAAA,GAAA,0BAAY,EAAoF;AAK9H,MAAM,0DAAiB,CAAA,GAAA,uBAAS,EAAE,SAAS,eAAe,KAA0B,EAAE,GAAoC;IAC/H,IAAI,kBAAkB,CAAA,GAAA,uEAA0B,EAAE,CAAA,GAAA,mDAAW,GAAG;IAChE,CAAC,OAAO,IAAI,GAAG,CAAA,GAAA,iDAAsB,EAAE,OAAO,KAAK;IACnD,IAAI,YACF,QAAQ,eACR,WAAW,oBACX,mBAAmB,SACnB,OAAO,mBACP,WAAW,UACX,MAAM,gBACN,YAAY,aACZ,YAAY,4BACZ,UAAU,oBACV,gBAAgB,gBAChB,YAAY,UACZ,MAAM,WACN,UAAU,QACX,GAAG;IAEJ,4EAA4E;IAC5E,2EAA2E;IAC3E,8BAA8B;IAC9B,IAAI,aAAa,CAAA,GAAA,+CAAQ,EAAE;IAC3B,IAAI,QAAQ,gBAAgB,MAAM,CAAC,CAAC,eAAe,EAAE,SAAS;IAC9D,UAAU,CAAC,aAAa,GAAG,UAAU,CAAC,aAAa,GAAG,UAAU,CAAC,aAAa,GAAG,MAAM,QAAQ;IAE/F,IAAI,cAAc,CAAA,GAAA,6CAAa,EAAE,OAAO;QAAC,WAAW;IAAI;IAExD,qBACE,iCAAC,CAAA,GAAA,uCAAY;QACX,QAAQ;QACR,aAAa;QACb,cAAc;;0BACd,gCAAC,CAAA,GAAA,sCAAW;gBACV,MAAM;gBACN,KAAK;gBACL,MAAM;gBACL,GAAG,CAAA,GAAA,qCAAS,EAAE,aAAa,WAAW;gBACvC,cAAc;gBACd,kBAAkB;gBAClB,QAAQ;gBACR,OAAO;0BACN,YAAY,uBAAS,gCAAC,CAAA,GAAA,iCAAO,uBAAO,gCAAC,CAAA,GAAA,iCAAO;;0BAE/C,gCAAC;gBACC,WAAW;gBACX,YAAY;gBACZ,kBAAkB;gBAClB,QAAQ;gBACR,aAAa;0BACZ;;;;AAIT","sources":["packages/@react-spectrum/s2/src/ContextualHelp.tsx"],"sourcesContent":["import {ActionButton} from './ActionButton';\nimport {AriaLabelingProps, DOMProps, FocusableRef, FocusableRefValue} from '@react-types/shared';\nimport {ContentContext, FooterContext, HeadingContext, TextContext as SpectrumTextContext} from './Content';\nimport {ContextValue, DEFAULT_SLOT, Provider} from 'react-aria-components/slots';\nimport {createContext, forwardRef, ReactNode} from 'react';\nimport {dialogInner} from './Dialog';\nimport {DialogTrigger, DialogTriggerProps} from './DialogTrigger';\nimport {filterDOMProps} from 'react-aria/filterDOMProps';\nimport HelpIcon from '../s2wf-icons/S2_Icon_HelpCircle_20_N.svg';\nimport InfoIcon from '../s2wf-icons/S2_Icon_InfoCircle_20_N.svg';\nimport intlMessages from '../intl/*.json';\nimport {mergeProps} from 'react-aria/mergeProps';\nimport {mergeStyles} from '../style/runtime';\nimport {Placement} from 'react-aria-components/Popover';\n// @ts-ignore\nimport {Popover, PopoverDialogProps} from './Popover';\nimport {space, style} from '../style' with {type: 'macro'};\nimport {StyleProps} from './style-utils' with { type: 'macro' };\nimport {TextContext} from 'react-aria-components/Text';\nimport {useId} from 'react-aria/useId';\nimport {useLabels} from 'react-aria/private/utils/useLabels';\nimport {useLocalizedStringFormatter} from 'react-aria/useLocalizedStringFormatter';\nimport {useSpectrumContextProps} from './useSpectrumContextProps';\n\nexport interface ContextualHelpPopoverProps extends PopoverDialogProps {\n /**\n * The children of the contextual help popover. Supports Heading, Content, and Footer elements. */\n children: ReactNode\n}\n\nconst wrappingDiv = style({\n minWidth: 268,\n width: 268,\n padding: 24,\n boxSizing: 'border-box',\n height: 'full'\n});\n\nconst headingStyles = style({\n font: 'heading-xs',\n margin: 0,\n marginBottom: space(8) // This only makes it 10px on mobile and should be 12px\n});\n\n// TODO: docs to come after release, for now this is just mentioned in unavaiable menu docs\n/**\n * A popover with contextual help styling that supports Heading, Content, and Footer.\n */\nexport function ContextualHelpPopover(props: ContextualHelpPopoverProps) {\n let {children, ...popoverProps} = props;\n let titleId = useId();\n\n return (\n <Popover\n padding=\"none\"\n hideArrow\n aria-labelledby={titleId}\n {...popoverProps}>\n <div\n className={wrappingDiv}>\n <div\n\n className={mergeStyles(dialogInner, style({borderRadius: 'none', margin: 'calc(self(paddingTop) * -1)', padding: 24}))}>\n <Provider\n values={[\n [TextContext, {\n slots: {\n [DEFAULT_SLOT]: {}\n }\n }],\n // Make sure to clear context from above Menu\n [SpectrumTextContext, null],\n [HeadingContext, {\n styles: headingStyles,\n slots: {\n // needed so combobox/picker does not need to provide slot=\"title\" to their provided\n // ContextualHelp (they get the aria-labelled by from the button)\n // otherwise, use the heading if available aka unavaiable menu item\n [DEFAULT_SLOT]: {styles: headingStyles},\n title: {id: titleId, styles: headingStyles, level: 2}\n }\n }],\n [ContentContext, {styles: style({\n font: 'body-sm'\n })}],\n [FooterContext, {styles: style({\n font: 'body-sm',\n marginTop: 16\n })}]\n ]}>\n {children}\n </Provider>\n </div>\n </div>\n </Popover>\n );\n}\n\nexport interface ContextualHelpStyleProps {\n /**\n * Indicates whether contents are informative or provides helpful guidance.\n *\n * @default 'help'\n */\n variant?: 'info' | 'help'\n}\nexport interface ContextualHelpProps extends\n Pick<DialogTriggerProps, 'isOpen' | 'defaultOpen' | 'onOpenChange'>,\n Pick<PopoverDialogProps, 'shouldFlip' | 'offset' | 'crossOffset' | 'placement' | 'containerPadding'>,\n ContextualHelpStyleProps, StyleProps, DOMProps, AriaLabelingProps {\n /**\n * The placement of the popover with respect to the action button.\n * @default 'bottom start'\n */\n placement?: Placement,\n /** Contents of the Contextual Help popover. */\n children: ReactNode,\n /**\n * The size of the ActionButton.\n *\n * @default 'XS'\n */\n size?: 'XS' | 'S'\n}\n\nexport const ContextualHelpContext = createContext<ContextValue<Partial<ContextualHelpProps>, FocusableRefValue<HTMLButtonElement>>>(null);\n\n/**\n * Contextual help shows a user extra information about the state of an adjacent component, or a total view.\n */\nexport const ContextualHelp = forwardRef(function ContextualHelp(props: ContextualHelpProps, ref: FocusableRef<HTMLButtonElement>) {\n let stringFormatter = useLocalizedStringFormatter(intlMessages, '@react-spectrum/s2');\n [props, ref] = useSpectrumContextProps(props, ref, ContextualHelpContext);\n let {\n children,\n defaultOpen,\n containerPadding = 8,\n size = 'XS',\n crossOffset,\n isOpen,\n onOpenChange,\n placement = 'bottom start',\n shouldFlip,\n UNSAFE_className,\n UNSAFE_style,\n styles,\n variant = 'help'\n } = props;\n\n // In a FieldLabel we're getting the context's aria-labeledby, so we need to\n // manually set the aria-label after useLabels() to keep the order of label\n // then ContextualHelp variant\n let labelProps = useLabels(props);\n let label = stringFormatter.format(`contextualhelp.${variant}`);\n labelProps['aria-label'] = labelProps['aria-label'] ? labelProps['aria-label'] + ' ' + label : label;\n\n let buttonProps = filterDOMProps(props, {labelable: true});\n\n return (\n <DialogTrigger\n isOpen={isOpen}\n defaultOpen={defaultOpen}\n onOpenChange={onOpenChange}>\n <ActionButton\n slot={null}\n ref={ref}\n size={size}\n {...mergeProps(buttonProps, labelProps)}\n UNSAFE_style={UNSAFE_style}\n UNSAFE_className={UNSAFE_className}\n styles={styles}\n isQuiet>\n {variant === 'info' ? <InfoIcon /> : <HelpIcon />}\n </ActionButton>\n <ContextualHelpPopover\n placement={placement}\n shouldFlip={shouldFlip}\n containerPadding={containerPadding}\n offset={8}\n crossOffset={crossOffset}>\n {children}\n </ContextualHelpPopover>\n </DialogTrigger>\n );\n});\n"],"names":[],"version":3,"file":"ContextualHelp.cjs.map"}
1
+ {"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoCA,MAAM;AAQN,MAAM;AAUC,SAAS,0CAAsB,KAAiC;IACrE,IAAI,YAAC,QAAQ,EAAE,GAAG,cAAa,GAAG;IAClC,IAAI,UAAU,CAAA,GAAA,2BAAI;IAElB,qBACE,gCAAC,CAAA,GAAA,iCAAM;QAAE,SAAQ;QAAO,SAAS;QAAC,mBAAiB;QAAU,GAAG,YAAY;kBAC1E,cAAA,gCAAC;YAAI,WAAW;sBACd,cAAA,gCAAC;gBACC,WAAW,CAAA,GAAA,qCAAU,EACnB,CAAA,GAAA,qCAAU;0BAGZ,cAAA,gCAAC,CAAA,GAAA,wCAAO;oBACN,QAAQ;wBACN;4BACE,CAAA,GAAA,0CAAU;4BACV;gCACE,OAAO;oCACL,CAAC,CAAA,GAAA,4CAAW,EAAE,EAAE,CAAC;gCACnB;4BACF;yBACD;wBACD,6CAA6C;wBAC7C;4BAAC,CAAA,GAAA,qCAAkB;4BAAG;yBAAK;wBAC3B;4BACE,CAAA,GAAA,wCAAa;4BACb;gCACE,QAAQ;gCACR,OAAO;oCACL,oFAAoF;oCACpF,iEAAiE;oCACjE,mEAAmE;oCACnE,CAAC,CAAA,GAAA,4CAAW,EAAE,EAAE;wCAAC,QAAQ;oCAAa;oCACtC,OAAO;wCAAC,IAAI;wCAAS,QAAQ;wCAAe,OAAO;oCAAC;gCACtD;4BACF;yBACD;wBACD;4BACE,CAAA,GAAA,wCAAa;4BACb;gCACE,MAAM;4BAGR;yBACD;wBACD;4BACE,CAAA,GAAA,uCAAY;4BACZ;gCACE,MAAM;4BAIR;yBACD;qBACF;8BACA;;;;;AAMb;AAqCO,MAAM,0DACX,CAAA,GAAA,0BAAY,EACV;AAOG,MAAM,0DAAiB,CAAA,GAAA,uBAAS,EAAE,SAAS,eAChD,KAA0B,EAC1B,GAAoC;IAEpC,IAAI,kBAAkB,CAAA,GAAA,uEAA0B,EAAE,CAAA,GAAA,mDAAW,GAAG;IAChE,CAAC,OAAO,IAAI,GAAG,CAAA,GAAA,iDAAsB,EAAE,OAAO,KAAK;IACnD,IAAI,YACF,QAAQ,eACR,WAAW,oBACX,mBAAmB,SACnB,OAAO,mBACP,WAAW,UACX,MAAM,gBACN,YAAY,aACZ,YAAY,4BACZ,UAAU,oBACV,gBAAgB,gBAChB,YAAY,UACZ,MAAM,WACN,UAAU,QACX,GAAG;IAEJ,4EAA4E;IAC5E,2EAA2E;IAC3E,8BAA8B;IAC9B,IAAI,aAAa,CAAA,GAAA,+CAAQ,EAAE;IAC3B,IAAI,QAAQ,gBAAgB,MAAM,CAAC,CAAC,eAAe,EAAE,SAAS;IAC9D,UAAU,CAAC,aAAa,GAAG,UAAU,CAAC,aAAa,GAC/C,UAAU,CAAC,aAAa,GAAG,MAAM,QACjC;IAEJ,IAAI,cAAc,CAAA,GAAA,6CAAa,EAAE,OAAO;QAAC,WAAW;IAAI;IAExD,qBACE,iCAAC,CAAA,GAAA,uCAAY;QAAE,QAAQ;QAAQ,aAAa;QAAa,cAAc;;0BACrE,gCAAC,CAAA,GAAA,sCAAW;gBACV,MAAM;gBACN,KAAK;gBACL,MAAM;gBACL,GAAG,CAAA,GAAA,qCAAS,EAAE,aAAa,WAAW;gBACvC,cAAc;gBACd,kBAAkB;gBAClB,QAAQ;gBACR,OAAO;0BACN,YAAY,uBAAS,gCAAC,CAAA,GAAA,iCAAO,uBAAO,gCAAC,CAAA,GAAA,iCAAO;;0BAE/C,gCAAC;gBACC,WAAW;gBACX,YAAY;gBACZ,kBAAkB;gBAClB,QAAQ;gBACR,aAAa;0BACZ;;;;AAIT","sources":["packages/@react-spectrum/s2/src/ContextualHelp.tsx"],"sourcesContent":["import {ActionButton} from './ActionButton';\nimport {AriaLabelingProps, DOMProps, FocusableRef, FocusableRefValue} from '@react-types/shared';\nimport {\n ContentContext,\n FooterContext,\n HeadingContext,\n TextContext as SpectrumTextContext\n} from './Content';\nimport {ContextValue, DEFAULT_SLOT, Provider} from 'react-aria-components/slots';\nimport {createContext, forwardRef, ReactNode} from 'react';\nimport {dialogInner} from './Dialog';\nimport {DialogTrigger, DialogTriggerProps} from './DialogTrigger';\nimport {filterDOMProps} from 'react-aria/filterDOMProps';\nimport HelpIcon from '../s2wf-icons/S2_Icon_HelpCircle_20_N.svg';\nimport InfoIcon from '../s2wf-icons/S2_Icon_InfoCircle_20_N.svg';\nimport intlMessages from '../intl/*.json';\nimport {mergeProps} from 'react-aria/mergeProps';\nimport {mergeStyles} from '../style/runtime';\nimport {Placement} from 'react-aria-components/Popover';\n// @ts-ignore\nimport {Popover, PopoverDialogProps} from './Popover';\nimport {space, style} from '../style' with {type: 'macro'};\nimport {StyleProps} from './style-utils' with {type: 'macro'};\nimport {TextContext} from 'react-aria-components/Text';\nimport {useId} from 'react-aria/useId';\nimport {useLabels} from 'react-aria/private/utils/useLabels';\nimport {useLocalizedStringFormatter} from 'react-aria/useLocalizedStringFormatter';\nimport {useSpectrumContextProps} from './useSpectrumContextProps';\n\nexport interface ContextualHelpPopoverProps extends PopoverDialogProps {\n /**\n * The children of the contextual help popover. Supports Heading, Content, and Footer elements.\n */\n children: ReactNode;\n}\n\nconst wrappingDiv = style({\n minWidth: 268,\n width: 268,\n padding: 24,\n boxSizing: 'border-box',\n height: 'full'\n});\n\nconst headingStyles = style({\n font: 'heading-xs',\n margin: 0,\n marginBottom: space(8) // This only makes it 10px on mobile and should be 12px\n});\n\n// TODO: docs to come after release, for now this is just mentioned in unavaiable menu docs\n/**\n * A popover with contextual help styling that supports Heading, Content, and Footer.\n */\nexport function ContextualHelpPopover(props: ContextualHelpPopoverProps) {\n let {children, ...popoverProps} = props;\n let titleId = useId();\n\n return (\n <Popover padding=\"none\" hideArrow aria-labelledby={titleId} {...popoverProps}>\n <div className={wrappingDiv}>\n <div\n className={mergeStyles(\n dialogInner,\n style({borderRadius: 'none', margin: 'calc(self(paddingTop) * -1)', padding: 24})\n )}>\n <Provider\n values={[\n [\n TextContext,\n {\n slots: {\n [DEFAULT_SLOT]: {}\n }\n }\n ],\n // Make sure to clear context from above Menu\n [SpectrumTextContext, null],\n [\n HeadingContext,\n {\n styles: headingStyles,\n slots: {\n // needed so combobox/picker does not need to provide slot=\"title\" to their provided\n // ContextualHelp (they get the aria-labelled by from the button)\n // otherwise, use the heading if available aka unavaiable menu item\n [DEFAULT_SLOT]: {styles: headingStyles},\n title: {id: titleId, styles: headingStyles, level: 2}\n }\n }\n ],\n [\n ContentContext,\n {\n styles: style({\n font: 'body-sm'\n })\n }\n ],\n [\n FooterContext,\n {\n styles: style({\n font: 'body-sm',\n marginTop: 16\n })\n }\n ]\n ]}>\n {children}\n </Provider>\n </div>\n </div>\n </Popover>\n );\n}\n\nexport interface ContextualHelpStyleProps {\n /**\n * Indicates whether contents are informative or provides helpful guidance.\n *\n * @default 'help'\n */\n variant?: 'info' | 'help';\n}\nexport interface ContextualHelpProps\n extends\n Pick<DialogTriggerProps, 'isOpen' | 'defaultOpen' | 'onOpenChange'>,\n Pick<\n PopoverDialogProps,\n 'shouldFlip' | 'offset' | 'crossOffset' | 'placement' | 'containerPadding'\n >,\n ContextualHelpStyleProps,\n StyleProps,\n DOMProps,\n AriaLabelingProps {\n /**\n * The placement of the popover with respect to the action button.\n *\n * @default 'bottom start'\n */\n placement?: Placement;\n /** Contents of the Contextual Help popover. */\n children: ReactNode;\n /**\n * The size of the ActionButton.\n *\n * @default 'XS'\n */\n size?: 'XS' | 'S';\n}\n\nexport const ContextualHelpContext =\n createContext<ContextValue<Partial<ContextualHelpProps>, FocusableRefValue<HTMLButtonElement>>>(\n null\n );\n\n/**\n * Contextual help shows a user extra information about the state of an adjacent component, or a\n * total view.\n */\nexport const ContextualHelp = forwardRef(function ContextualHelp(\n props: ContextualHelpProps,\n ref: FocusableRef<HTMLButtonElement>\n) {\n let stringFormatter = useLocalizedStringFormatter(intlMessages, '@react-spectrum/s2');\n [props, ref] = useSpectrumContextProps(props, ref, ContextualHelpContext);\n let {\n children,\n defaultOpen,\n containerPadding = 8,\n size = 'XS',\n crossOffset,\n isOpen,\n onOpenChange,\n placement = 'bottom start',\n shouldFlip,\n UNSAFE_className,\n UNSAFE_style,\n styles,\n variant = 'help'\n } = props;\n\n // In a FieldLabel we're getting the context's aria-labeledby, so we need to\n // manually set the aria-label after useLabels() to keep the order of label\n // then ContextualHelp variant\n let labelProps = useLabels(props);\n let label = stringFormatter.format(`contextualhelp.${variant}`);\n labelProps['aria-label'] = labelProps['aria-label']\n ? labelProps['aria-label'] + ' ' + label\n : label;\n\n let buttonProps = filterDOMProps(props, {labelable: true});\n\n return (\n <DialogTrigger isOpen={isOpen} defaultOpen={defaultOpen} onOpenChange={onOpenChange}>\n <ActionButton\n slot={null}\n ref={ref}\n size={size}\n {...mergeProps(buttonProps, labelProps)}\n UNSAFE_style={UNSAFE_style}\n UNSAFE_className={UNSAFE_className}\n styles={styles}\n isQuiet>\n {variant === 'info' ? <InfoIcon /> : <HelpIcon />}\n </ActionButton>\n <ContextualHelpPopover\n placement={placement}\n shouldFlip={shouldFlip}\n containerPadding={containerPadding}\n offset={8}\n crossOffset={crossOffset}>\n {children}\n </ContextualHelpPopover>\n </DialogTrigger>\n );\n});\n"],"names":[],"version":3,"file":"ContextualHelp.cjs.map"}