@react-spectrum/s2 0.11.2 → 0.12.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 (573) hide show
  1. package/dist/Accordion.cjs +3 -3
  2. package/dist/Accordion.css +2 -2
  3. package/dist/Accordion.mjs +3 -3
  4. package/dist/ActionBar.cjs +61 -62
  5. package/dist/ActionBar.cjs.map +1 -1
  6. package/dist/ActionBar.css +62 -66
  7. package/dist/ActionBar.css.map +1 -1
  8. package/dist/ActionBar.mjs +61 -62
  9. package/dist/ActionBar.mjs.map +1 -1
  10. package/dist/ActionButton.cjs +356 -250
  11. package/dist/ActionButton.cjs.map +1 -1
  12. package/dist/ActionButton.css +208 -144
  13. package/dist/ActionButton.css.map +1 -1
  14. package/dist/ActionButton.mjs +357 -251
  15. package/dist/ActionButton.mjs.map +1 -1
  16. package/dist/ActionButtonGroup.cjs +16 -16
  17. package/dist/ActionButtonGroup.css +9 -9
  18. package/dist/ActionButtonGroup.mjs +16 -16
  19. package/dist/Add.cjs +10 -10
  20. package/dist/Add.css +6 -6
  21. package/dist/Add.mjs +10 -10
  22. package/dist/AlertDialog.cjs +3 -3
  23. package/dist/AlertDialog.css +3 -3
  24. package/dist/AlertDialog.mjs +3 -3
  25. package/dist/Asterisk.cjs +6 -6
  26. package/dist/Asterisk.css +4 -4
  27. package/dist/Asterisk.mjs +6 -6
  28. package/dist/Avatar.cjs +20 -16
  29. package/dist/Avatar.cjs.map +1 -1
  30. package/dist/Avatar.css +22 -14
  31. package/dist/Avatar.css.map +1 -1
  32. package/dist/Avatar.mjs +20 -16
  33. package/dist/Avatar.mjs.map +1 -1
  34. package/dist/AvatarGroup.cjs +135 -135
  35. package/dist/AvatarGroup.css +33 -33
  36. package/dist/AvatarGroup.mjs +135 -135
  37. package/dist/Badge.cjs +207 -207
  38. package/dist/Badge.css +127 -127
  39. package/dist/Badge.mjs +207 -207
  40. package/dist/Breadcrumbs.cjs +255 -255
  41. package/dist/Breadcrumbs.css +109 -109
  42. package/dist/Breadcrumbs.mjs +255 -255
  43. package/dist/Button.cjs +356 -354
  44. package/dist/Button.cjs.map +1 -1
  45. package/dist/Button.css +179 -179
  46. package/dist/Button.css.map +1 -1
  47. package/dist/Button.mjs +357 -356
  48. package/dist/Button.mjs.map +1 -1
  49. package/dist/ButtonGroup.cjs +21 -21
  50. package/dist/ButtonGroup.css +15 -15
  51. package/dist/ButtonGroup.mjs +21 -21
  52. package/dist/Calendar.cjs +127 -127
  53. package/dist/Calendar.cjs.map +1 -1
  54. package/dist/Calendar.css +134 -134
  55. package/dist/Calendar.css.map +1 -1
  56. package/dist/Calendar.mjs +127 -127
  57. package/dist/Calendar.mjs.map +1 -1
  58. package/dist/Card.cjs +335 -311
  59. package/dist/Card.cjs.map +1 -1
  60. package/dist/Card.css +213 -213
  61. package/dist/Card.css.map +1 -1
  62. package/dist/Card.mjs +335 -311
  63. package/dist/Card.mjs.map +1 -1
  64. package/dist/CardView.cjs +25 -19
  65. package/dist/CardView.cjs.map +1 -1
  66. package/dist/CardView.css +16 -16
  67. package/dist/CardView.css.map +1 -1
  68. package/dist/CardView.mjs +26 -20
  69. package/dist/CardView.mjs.map +1 -1
  70. package/dist/CenterBaseline.cjs +1 -1
  71. package/dist/CenterBaseline.css +2 -2
  72. package/dist/CenterBaseline.mjs +1 -1
  73. package/dist/Checkbox.cjs +171 -171
  74. package/dist/Checkbox.css +92 -92
  75. package/dist/Checkbox.mjs +171 -171
  76. package/dist/CheckboxGroup.cjs +46 -46
  77. package/dist/CheckboxGroup.css +38 -38
  78. package/dist/CheckboxGroup.mjs +46 -46
  79. package/dist/Checkmark.cjs +12 -12
  80. package/dist/Checkmark.css +8 -8
  81. package/dist/Checkmark.mjs +12 -12
  82. package/dist/Chevron.cjs +12 -12
  83. package/dist/Chevron.css +10 -10
  84. package/dist/Chevron.mjs +12 -12
  85. package/dist/ClearButton.cjs +29 -29
  86. package/dist/ClearButton.css +29 -29
  87. package/dist/ClearButton.mjs +29 -29
  88. package/dist/CloseButton.cjs +55 -55
  89. package/dist/CloseButton.css +46 -46
  90. package/dist/CloseButton.mjs +55 -55
  91. package/dist/ColorArea.cjs +25 -18
  92. package/dist/ColorArea.cjs.map +1 -1
  93. package/dist/ColorArea.css +16 -16
  94. package/dist/ColorArea.css.map +1 -1
  95. package/dist/ColorArea.mjs +26 -19
  96. package/dist/ColorArea.mjs.map +1 -1
  97. package/dist/ColorField.cjs +33 -33
  98. package/dist/ColorField.cjs.map +1 -1
  99. package/dist/ColorField.css +28 -28
  100. package/dist/ColorField.css.map +1 -1
  101. package/dist/ColorField.mjs +33 -33
  102. package/dist/ColorField.mjs.map +1 -1
  103. package/dist/ColorHandle.cjs +27 -27
  104. package/dist/ColorHandle.css +43 -43
  105. package/dist/ColorHandle.mjs +27 -27
  106. package/dist/ColorSlider.cjs +122 -121
  107. package/dist/ColorSlider.cjs.map +1 -1
  108. package/dist/ColorSlider.css +54 -54
  109. package/dist/ColorSlider.css.map +1 -1
  110. package/dist/ColorSlider.mjs +122 -121
  111. package/dist/ColorSlider.mjs.map +1 -1
  112. package/dist/ColorSwatch.cjs +30 -30
  113. package/dist/ColorSwatch.css +29 -29
  114. package/dist/ColorSwatch.mjs +30 -30
  115. package/dist/ColorSwatchPicker.cjs +28 -28
  116. package/dist/ColorSwatchPicker.css +46 -46
  117. package/dist/ColorSwatchPicker.mjs +28 -28
  118. package/dist/ColorWheel.cjs +26 -26
  119. package/dist/ColorWheel.css +17 -17
  120. package/dist/ColorWheel.mjs +26 -26
  121. package/dist/ComboBox.cjs +474 -452
  122. package/dist/ComboBox.cjs.map +1 -1
  123. package/dist/ComboBox.css +213 -185
  124. package/dist/ComboBox.css.map +1 -1
  125. package/dist/ComboBox.mjs +475 -453
  126. package/dist/ComboBox.mjs.map +1 -1
  127. package/dist/ContextualHelp.cjs +36 -33
  128. package/dist/ContextualHelp.cjs.map +1 -1
  129. package/dist/ContextualHelp.css +68 -60
  130. package/dist/ContextualHelp.css.map +1 -1
  131. package/dist/ContextualHelp.mjs +37 -34
  132. package/dist/ContextualHelp.mjs.map +1 -1
  133. package/dist/Cross.cjs +14 -14
  134. package/dist/Cross.css +10 -10
  135. package/dist/Cross.mjs +14 -14
  136. package/dist/CustomDialog.cjs +26 -26
  137. package/dist/CustomDialog.cjs.map +1 -1
  138. package/dist/CustomDialog.css +25 -25
  139. package/dist/CustomDialog.css.map +1 -1
  140. package/dist/CustomDialog.mjs +26 -26
  141. package/dist/CustomDialog.mjs.map +1 -1
  142. package/dist/Dash.cjs +10 -10
  143. package/dist/Dash.css +6 -6
  144. package/dist/Dash.mjs +10 -10
  145. package/dist/DateField.cjs +74 -74
  146. package/dist/DateField.cjs.map +1 -1
  147. package/dist/DateField.css +77 -77
  148. package/dist/DateField.css.map +1 -1
  149. package/dist/DateField.mjs +74 -74
  150. package/dist/DateField.mjs.map +1 -1
  151. package/dist/DatePicker.cjs +194 -191
  152. package/dist/DatePicker.cjs.map +1 -1
  153. package/dist/DatePicker.css +138 -126
  154. package/dist/DatePicker.css.map +1 -1
  155. package/dist/DatePicker.mjs +195 -192
  156. package/dist/DatePicker.mjs.map +1 -1
  157. package/dist/DateRangePicker.cjs +57 -57
  158. package/dist/DateRangePicker.cjs.map +1 -1
  159. package/dist/DateRangePicker.css +60 -60
  160. package/dist/DateRangePicker.css.map +1 -1
  161. package/dist/DateRangePicker.mjs +57 -57
  162. package/dist/DateRangePicker.mjs.map +1 -1
  163. package/dist/Dialog.cjs +17 -17
  164. package/dist/Dialog.cjs.map +1 -1
  165. package/dist/Dialog.css +88 -84
  166. package/dist/Dialog.css.map +1 -1
  167. package/dist/Dialog.mjs +17 -17
  168. package/dist/Dialog.mjs.map +1 -1
  169. package/dist/Disclosure.cjs +128 -147
  170. package/dist/Disclosure.cjs.map +1 -1
  171. package/dist/Disclosure.css +144 -112
  172. package/dist/Disclosure.css.map +1 -1
  173. package/dist/Disclosure.mjs +128 -147
  174. package/dist/Disclosure.mjs.map +1 -1
  175. package/dist/Divider.cjs +26 -26
  176. package/dist/Divider.css +25 -25
  177. package/dist/Divider.mjs +26 -26
  178. package/dist/DropZone.cjs +63 -63
  179. package/dist/DropZone.cjs.map +1 -1
  180. package/dist/DropZone.css +58 -58
  181. package/dist/DropZone.css.map +1 -1
  182. package/dist/DropZone.mjs +63 -63
  183. package/dist/DropZone.mjs.map +1 -1
  184. package/dist/Field.cjs +370 -370
  185. package/dist/Field.cjs.map +1 -1
  186. package/dist/Field.css +146 -142
  187. package/dist/Field.css.map +1 -1
  188. package/dist/Field.mjs +370 -370
  189. package/dist/Field.mjs.map +1 -1
  190. package/dist/Form.cjs +10 -10
  191. package/dist/Form.css +9 -9
  192. package/dist/Form.mjs +10 -10
  193. package/dist/FullscreenDialog.cjs +5 -5
  194. package/dist/FullscreenDialog.cjs.map +1 -1
  195. package/dist/FullscreenDialog.css +93 -93
  196. package/dist/FullscreenDialog.css.map +1 -1
  197. package/dist/FullscreenDialog.mjs +5 -5
  198. package/dist/FullscreenDialog.mjs.map +1 -1
  199. package/dist/IllustratedMessage.cjs +257 -257
  200. package/dist/IllustratedMessage.css +78 -78
  201. package/dist/IllustratedMessage.mjs +257 -257
  202. package/dist/Image.cjs +25 -17
  203. package/dist/Image.cjs.map +1 -1
  204. package/dist/Image.css +14 -14
  205. package/dist/Image.css.map +1 -1
  206. package/dist/Image.mjs +25 -17
  207. package/dist/Image.mjs.map +1 -1
  208. package/dist/InlineAlert.cjs +138 -153
  209. package/dist/InlineAlert.cjs.map +1 -1
  210. package/dist/InlineAlert.css +82 -151
  211. package/dist/InlineAlert.css.map +1 -1
  212. package/dist/InlineAlert.mjs +138 -153
  213. package/dist/InlineAlert.mjs.map +1 -1
  214. package/dist/Link.cjs +55 -55
  215. package/dist/Link.css +46 -46
  216. package/dist/Link.mjs +55 -55
  217. package/dist/LinkOut.cjs +8 -8
  218. package/dist/LinkOut.css +8 -8
  219. package/dist/LinkOut.mjs +8 -8
  220. package/dist/Menu.cjs +529 -501
  221. package/dist/Menu.cjs.map +1 -1
  222. package/dist/Menu.css +195 -191
  223. package/dist/Menu.css.map +1 -1
  224. package/dist/Menu.mjs +529 -502
  225. package/dist/Menu.mjs.map +1 -1
  226. package/dist/Meter.cjs +164 -164
  227. package/dist/Meter.css +93 -93
  228. package/dist/Meter.mjs +164 -164
  229. package/dist/Modal.cjs +90 -70
  230. package/dist/Modal.cjs.map +1 -1
  231. package/dist/Modal.css +76 -60
  232. package/dist/Modal.css.map +1 -1
  233. package/dist/Modal.mjs +90 -70
  234. package/dist/Modal.mjs.map +1 -1
  235. package/dist/NotificationBadge.cjs +59 -59
  236. package/dist/NotificationBadge.css +51 -51
  237. package/dist/NotificationBadge.mjs +59 -59
  238. package/dist/NumberField.cjs +116 -116
  239. package/dist/NumberField.cjs.map +1 -1
  240. package/dist/NumberField.css +100 -100
  241. package/dist/NumberField.css.map +1 -1
  242. package/dist/NumberField.mjs +116 -116
  243. package/dist/NumberField.mjs.map +1 -1
  244. package/dist/Picker.cjs +424 -349
  245. package/dist/Picker.cjs.map +1 -1
  246. package/dist/Picker.css +200 -180
  247. package/dist/Picker.css.map +1 -1
  248. package/dist/Picker.mjs +428 -353
  249. package/dist/Picker.mjs.map +1 -1
  250. package/dist/Popover.cjs +120 -116
  251. package/dist/Popover.cjs.map +1 -1
  252. package/dist/Popover.css +86 -82
  253. package/dist/Popover.css.map +1 -1
  254. package/dist/Popover.mjs +121 -118
  255. package/dist/Popover.mjs.map +1 -1
  256. package/dist/ProgressBar.cjs +174 -174
  257. package/dist/ProgressBar.css +101 -101
  258. package/dist/ProgressBar.mjs +174 -174
  259. package/dist/ProgressCircle.cjs +32 -32
  260. package/dist/ProgressCircle.css +24 -24
  261. package/dist/ProgressCircle.mjs +32 -32
  262. package/dist/Provider.cjs +11 -11
  263. package/dist/Provider.cjs.map +1 -1
  264. package/dist/Provider.css +13 -13
  265. package/dist/Provider.css.map +1 -1
  266. package/dist/Provider.mjs +11 -11
  267. package/dist/Provider.mjs.map +1 -1
  268. package/dist/Radio.cjs +155 -155
  269. package/dist/Radio.css +79 -79
  270. package/dist/Radio.mjs +155 -155
  271. package/dist/RadioGroup.cjs +43 -43
  272. package/dist/RadioGroup.css +38 -38
  273. package/dist/RadioGroup.mjs +43 -43
  274. package/dist/RangeCalendar.cjs +8 -8
  275. package/dist/RangeCalendar.cjs.map +1 -1
  276. package/dist/RangeCalendar.css +10 -10
  277. package/dist/RangeCalendar.css.map +1 -1
  278. package/dist/RangeCalendar.mjs +8 -8
  279. package/dist/RangeCalendar.mjs.map +1 -1
  280. package/dist/RangeSlider.cjs.map +1 -1
  281. package/dist/RangeSlider.mjs.map +1 -1
  282. package/dist/SearchField.cjs +43 -43
  283. package/dist/SearchField.cjs.map +1 -1
  284. package/dist/SearchField.css +46 -46
  285. package/dist/SearchField.css.map +1 -1
  286. package/dist/SearchField.mjs +43 -43
  287. package/dist/SearchField.mjs.map +1 -1
  288. package/dist/SegmentedControl.cjs +193 -224
  289. package/dist/SegmentedControl.cjs.map +1 -1
  290. package/dist/SegmentedControl.css +146 -118
  291. package/dist/SegmentedControl.css.map +1 -1
  292. package/dist/SegmentedControl.mjs +196 -227
  293. package/dist/SegmentedControl.mjs.map +1 -1
  294. package/dist/SelectBoxGroup.cjs +161 -159
  295. package/dist/SelectBoxGroup.cjs.map +1 -1
  296. package/dist/SelectBoxGroup.css +123 -123
  297. package/dist/SelectBoxGroup.css.map +1 -1
  298. package/dist/SelectBoxGroup.mjs +161 -159
  299. package/dist/SelectBoxGroup.mjs.map +1 -1
  300. package/dist/Slider.cjs +300 -300
  301. package/dist/Slider.css +151 -151
  302. package/dist/Slider.mjs +300 -300
  303. package/dist/StatusLight.cjs +126 -126
  304. package/dist/StatusLight.css +61 -61
  305. package/dist/StatusLight.mjs +126 -126
  306. package/dist/Switch.cjs +163 -163
  307. package/dist/Switch.css +74 -74
  308. package/dist/Switch.mjs +163 -163
  309. package/dist/TableView.cjs +340 -328
  310. package/dist/TableView.cjs.map +1 -1
  311. package/dist/TableView.css +176 -172
  312. package/dist/TableView.css.map +1 -1
  313. package/dist/TableView.mjs +340 -328
  314. package/dist/TableView.mjs.map +1 -1
  315. package/dist/Tabs.cjs +150 -190
  316. package/dist/Tabs.cjs.map +1 -1
  317. package/dist/Tabs.css +128 -100
  318. package/dist/Tabs.css.map +1 -1
  319. package/dist/Tabs.mjs +153 -193
  320. package/dist/Tabs.mjs.map +1 -1
  321. package/dist/TabsPicker.cjs +169 -161
  322. package/dist/TabsPicker.cjs.map +1 -1
  323. package/dist/TabsPicker.css +116 -124
  324. package/dist/TabsPicker.css.map +1 -1
  325. package/dist/TabsPicker.mjs +170 -162
  326. package/dist/TabsPicker.mjs.map +1 -1
  327. package/dist/TagGroup.cjs +226 -218
  328. package/dist/TagGroup.cjs.map +1 -1
  329. package/dist/TagGroup.css +147 -147
  330. package/dist/TagGroup.css.map +1 -1
  331. package/dist/TagGroup.mjs +226 -218
  332. package/dist/TagGroup.mjs.map +1 -1
  333. package/dist/TextField.cjs +65 -63
  334. package/dist/TextField.cjs.map +1 -1
  335. package/dist/TextField.css +58 -54
  336. package/dist/TextField.css.map +1 -1
  337. package/dist/TextField.mjs +65 -63
  338. package/dist/TextField.mjs.map +1 -1
  339. package/dist/TimeField.cjs +53 -53
  340. package/dist/TimeField.cjs.map +1 -1
  341. package/dist/TimeField.css +48 -48
  342. package/dist/TimeField.css.map +1 -1
  343. package/dist/TimeField.mjs +53 -53
  344. package/dist/TimeField.mjs.map +1 -1
  345. package/dist/Toast.cjs +120 -120
  346. package/dist/Toast.css +108 -108
  347. package/dist/Toast.mjs +120 -120
  348. package/dist/ToggleButton.cjs +3 -3
  349. package/dist/ToggleButton.css +12 -12
  350. package/dist/ToggleButton.mjs +3 -3
  351. package/dist/Tooltip.cjs +84 -83
  352. package/dist/Tooltip.cjs.map +1 -1
  353. package/dist/Tooltip.css +74 -70
  354. package/dist/Tooltip.css.map +1 -1
  355. package/dist/Tooltip.mjs +84 -83
  356. package/dist/Tooltip.mjs.map +1 -1
  357. package/dist/TreeView.cjs +150 -148
  358. package/dist/TreeView.cjs.map +1 -1
  359. package/dist/TreeView.css +147 -147
  360. package/dist/TreeView.css.map +1 -1
  361. package/dist/TreeView.mjs +151 -149
  362. package/dist/TreeView.mjs.map +1 -1
  363. package/dist/ar-AE.cjs +5 -0
  364. package/dist/ar-AE.cjs.map +1 -1
  365. package/dist/ar-AE.mjs +5 -0
  366. package/dist/ar-AE.mjs.map +1 -1
  367. package/dist/bg-BG.cjs +5 -0
  368. package/dist/bg-BG.cjs.map +1 -1
  369. package/dist/bg-BG.mjs +5 -0
  370. package/dist/bg-BG.mjs.map +1 -1
  371. package/dist/cs-CZ.cjs +5 -0
  372. package/dist/cs-CZ.cjs.map +1 -1
  373. package/dist/cs-CZ.mjs +5 -0
  374. package/dist/cs-CZ.mjs.map +1 -1
  375. package/dist/da-DK.cjs +5 -0
  376. package/dist/da-DK.cjs.map +1 -1
  377. package/dist/da-DK.mjs +5 -0
  378. package/dist/da-DK.mjs.map +1 -1
  379. package/dist/de-DE.cjs +5 -0
  380. package/dist/de-DE.cjs.map +1 -1
  381. package/dist/de-DE.mjs +5 -0
  382. package/dist/de-DE.mjs.map +1 -1
  383. package/dist/el-GR.cjs +5 -0
  384. package/dist/el-GR.cjs.map +1 -1
  385. package/dist/el-GR.mjs +5 -0
  386. package/dist/el-GR.mjs.map +1 -1
  387. package/dist/en-US.cjs +21 -16
  388. package/dist/en-US.cjs.map +1 -1
  389. package/dist/en-US.mjs +21 -16
  390. package/dist/en-US.mjs.map +1 -1
  391. package/dist/es-ES.cjs +5 -0
  392. package/dist/es-ES.cjs.map +1 -1
  393. package/dist/es-ES.mjs +5 -0
  394. package/dist/es-ES.mjs.map +1 -1
  395. package/dist/et-EE.cjs +5 -0
  396. package/dist/et-EE.cjs.map +1 -1
  397. package/dist/et-EE.mjs +5 -0
  398. package/dist/et-EE.mjs.map +1 -1
  399. package/dist/fi-FI.cjs +5 -0
  400. package/dist/fi-FI.cjs.map +1 -1
  401. package/dist/fi-FI.mjs +5 -0
  402. package/dist/fi-FI.mjs.map +1 -1
  403. package/dist/fr-FR.cjs +5 -0
  404. package/dist/fr-FR.cjs.map +1 -1
  405. package/dist/fr-FR.mjs +5 -0
  406. package/dist/fr-FR.mjs.map +1 -1
  407. package/dist/he-IL.cjs +5 -0
  408. package/dist/he-IL.cjs.map +1 -1
  409. package/dist/he-IL.mjs +5 -0
  410. package/dist/he-IL.mjs.map +1 -1
  411. package/dist/hr-HR.cjs +5 -0
  412. package/dist/hr-HR.cjs.map +1 -1
  413. package/dist/hr-HR.mjs +5 -0
  414. package/dist/hr-HR.mjs.map +1 -1
  415. package/dist/hu-HU.cjs +5 -0
  416. package/dist/hu-HU.cjs.map +1 -1
  417. package/dist/hu-HU.mjs +5 -0
  418. package/dist/hu-HU.mjs.map +1 -1
  419. package/dist/it-IT.cjs +5 -0
  420. package/dist/it-IT.cjs.map +1 -1
  421. package/dist/it-IT.mjs +5 -0
  422. package/dist/it-IT.mjs.map +1 -1
  423. package/dist/ja-JP.cjs +5 -0
  424. package/dist/ja-JP.cjs.map +1 -1
  425. package/dist/ja-JP.mjs +5 -0
  426. package/dist/ja-JP.mjs.map +1 -1
  427. package/dist/ko-KR.cjs +5 -0
  428. package/dist/ko-KR.cjs.map +1 -1
  429. package/dist/ko-KR.mjs +5 -0
  430. package/dist/ko-KR.mjs.map +1 -1
  431. package/dist/lt-LT.cjs +5 -0
  432. package/dist/lt-LT.cjs.map +1 -1
  433. package/dist/lt-LT.mjs +5 -0
  434. package/dist/lt-LT.mjs.map +1 -1
  435. package/dist/lv-LV.cjs +5 -0
  436. package/dist/lv-LV.cjs.map +1 -1
  437. package/dist/lv-LV.mjs +5 -0
  438. package/dist/lv-LV.mjs.map +1 -1
  439. package/dist/main.cjs +2 -0
  440. package/dist/main.cjs.map +1 -1
  441. package/dist/module.mjs +3 -3
  442. package/dist/module.mjs.map +1 -1
  443. package/dist/nb-NO.cjs +5 -0
  444. package/dist/nb-NO.cjs.map +1 -1
  445. package/dist/nb-NO.mjs +5 -0
  446. package/dist/nb-NO.mjs.map +1 -1
  447. package/dist/nl-NL.cjs +5 -0
  448. package/dist/nl-NL.cjs.map +1 -1
  449. package/dist/nl-NL.mjs +5 -0
  450. package/dist/nl-NL.mjs.map +1 -1
  451. package/dist/pl-PL.cjs +5 -0
  452. package/dist/pl-PL.cjs.map +1 -1
  453. package/dist/pl-PL.mjs +5 -0
  454. package/dist/pl-PL.mjs.map +1 -1
  455. package/dist/pt-BR.cjs +5 -0
  456. package/dist/pt-BR.cjs.map +1 -1
  457. package/dist/pt-BR.mjs +5 -0
  458. package/dist/pt-BR.mjs.map +1 -1
  459. package/dist/pt-PT.cjs +5 -0
  460. package/dist/pt-PT.cjs.map +1 -1
  461. package/dist/pt-PT.mjs +5 -0
  462. package/dist/pt-PT.mjs.map +1 -1
  463. package/dist/ro-RO.cjs +5 -0
  464. package/dist/ro-RO.cjs.map +1 -1
  465. package/dist/ro-RO.mjs +5 -0
  466. package/dist/ro-RO.mjs.map +1 -1
  467. package/dist/ru-RU.cjs +5 -0
  468. package/dist/ru-RU.cjs.map +1 -1
  469. package/dist/ru-RU.mjs +5 -0
  470. package/dist/ru-RU.mjs.map +1 -1
  471. package/dist/sk-SK.cjs +5 -0
  472. package/dist/sk-SK.cjs.map +1 -1
  473. package/dist/sk-SK.mjs +5 -0
  474. package/dist/sk-SK.mjs.map +1 -1
  475. package/dist/sl-SI.cjs +5 -0
  476. package/dist/sl-SI.cjs.map +1 -1
  477. package/dist/sl-SI.mjs +5 -0
  478. package/dist/sl-SI.mjs.map +1 -1
  479. package/dist/sr-SP.cjs +5 -0
  480. package/dist/sr-SP.cjs.map +1 -1
  481. package/dist/sr-SP.mjs +5 -0
  482. package/dist/sr-SP.mjs.map +1 -1
  483. package/dist/sv-SE.cjs +5 -0
  484. package/dist/sv-SE.cjs.map +1 -1
  485. package/dist/sv-SE.mjs +5 -0
  486. package/dist/sv-SE.mjs.map +1 -1
  487. package/dist/tr-TR.cjs +5 -0
  488. package/dist/tr-TR.cjs.map +1 -1
  489. package/dist/tr-TR.mjs +5 -0
  490. package/dist/tr-TR.mjs.map +1 -1
  491. package/dist/types.d.ts +147 -87
  492. package/dist/types.d.ts.map +1 -1
  493. package/dist/uk-UA.cjs +5 -0
  494. package/dist/uk-UA.cjs.map +1 -1
  495. package/dist/uk-UA.mjs +5 -0
  496. package/dist/uk-UA.mjs.map +1 -1
  497. package/dist/zh-CN.cjs +5 -0
  498. package/dist/zh-CN.cjs.map +1 -1
  499. package/dist/zh-CN.mjs +5 -0
  500. package/dist/zh-CN.mjs.map +1 -1
  501. package/dist/zh-TW.cjs +5 -0
  502. package/dist/zh-TW.cjs.map +1 -1
  503. package/dist/zh-TW.mjs +5 -0
  504. package/dist/zh-TW.mjs.map +1 -1
  505. package/icons/Icon.cjs +10 -10
  506. package/icons/Icon.css +9 -9
  507. package/icons/Icon.mjs +10 -10
  508. package/icons/Skeleton.cjs +2 -2
  509. package/icons/Skeleton.cjs.map +1 -1
  510. package/icons/Skeleton.css +6 -6
  511. package/icons/Skeleton.mjs +2 -2
  512. package/icons/Skeleton.mjs.map +1 -1
  513. package/package.json +20 -20
  514. package/page.css +7 -7
  515. package/src/ActionBar.tsx +5 -3
  516. package/src/ActionButton.tsx +112 -32
  517. package/src/Avatar.tsx +4 -1
  518. package/src/Button.tsx +27 -28
  519. package/src/Calendar.tsx +3 -0
  520. package/src/Card.tsx +22 -7
  521. package/src/CardView.tsx +9 -1
  522. package/src/ColorArea.tsx +10 -2
  523. package/src/ColorField.tsx +3 -2
  524. package/src/ColorSlider.tsx +3 -2
  525. package/src/ComboBox.tsx +69 -44
  526. package/src/ContextualHelp.tsx +36 -32
  527. package/src/CustomDialog.tsx +1 -1
  528. package/src/DateField.tsx +4 -0
  529. package/src/DatePicker.tsx +28 -20
  530. package/src/DateRangePicker.tsx +5 -1
  531. package/src/Dialog.tsx +6 -3
  532. package/src/Disclosure.tsx +20 -16
  533. package/src/DropZone.tsx +5 -2
  534. package/src/Field.tsx +4 -1
  535. package/src/FullscreenDialog.tsx +1 -1
  536. package/src/Image.tsx +30 -8
  537. package/src/InlineAlert.tsx +10 -27
  538. package/src/Menu.tsx +57 -45
  539. package/src/Modal.tsx +99 -74
  540. package/src/NumberField.tsx +3 -2
  541. package/src/Picker.tsx +114 -51
  542. package/src/Popover.tsx +57 -35
  543. package/src/Provider.tsx +1 -1
  544. package/src/RangeCalendar.tsx +3 -0
  545. package/src/RangeSlider.tsx +3 -0
  546. package/src/SearchField.tsx +2 -1
  547. package/src/SegmentedControl.tsx +16 -44
  548. package/src/SelectBoxGroup.tsx +21 -23
  549. package/src/TableView.tsx +7 -6
  550. package/src/Tabs.tsx +34 -70
  551. package/src/TabsPicker.tsx +35 -26
  552. package/src/TagGroup.tsx +44 -36
  553. package/src/TextField.tsx +11 -6
  554. package/src/TimeField.tsx +4 -0
  555. package/src/Tooltip.tsx +3 -0
  556. package/src/TreeView.tsx +2 -2
  557. package/src/index.ts +3 -2
  558. package/src/page.macro.ts +2 -2
  559. package/src/style-utils.ts +4 -3
  560. package/style/__tests__/style-macro.test.js +56 -56
  561. package/style/dist/main.cjs +24 -24
  562. package/style/dist/module.mjs +13 -13
  563. package/style/dist/properties.mjs +3 -3
  564. package/style/dist/spectrum-theme.cjs +255 -225
  565. package/style/dist/spectrum-theme.cjs.map +1 -1
  566. package/style/dist/spectrum-theme.mjs +246 -216
  567. package/style/dist/spectrum-theme.mjs.map +1 -1
  568. package/style/dist/style-macro.cjs +80 -80
  569. package/style/dist/style-macro.mjs +75 -75
  570. package/style/dist/types.d.ts +1 -0
  571. package/style/dist/types.d.ts.map +1 -1
  572. package/style/spectrum-theme.ts +10 -8
  573. package/style/tokens.ts +10 -0
package/src/Button.tsx CHANGED
@@ -292,6 +292,24 @@ const gradient = style({
292
292
  }
293
293
  });
294
294
 
295
+ export function usePendingState(isPending: boolean) {
296
+ let [isProgressVisible, setIsProgressVisible] = useState(false);
297
+ useEffect(() => {
298
+ let timeout: ReturnType<typeof setTimeout>;
299
+ if (isPending) {
300
+ timeout = setTimeout(() => {
301
+ setIsProgressVisible(true);
302
+ }, 1000);
303
+ } else {
304
+ setIsProgressVisible(false);
305
+ }
306
+ return () => {
307
+ clearTimeout(timeout);
308
+ };
309
+ }, [isPending]);
310
+ return {isProgressVisible};
311
+ }
312
+
295
313
  /**
296
314
  * Buttons allow users to perform an action.
297
315
  * They have multiple styles for various needs, and are ideal for calling attention to
@@ -302,7 +320,7 @@ export const Button = forwardRef(function Button(props: ButtonProps, ref: Focusa
302
320
  props = useFormProps(props);
303
321
  let stringFormatter = useLocalizedStringFormatter(intlMessages, '@react-spectrum/s2');
304
322
  let {
305
- isPending,
323
+ isPending = false,
306
324
  variant = 'primary',
307
325
  fillStyle = 'fill',
308
326
  size = 'M',
@@ -311,24 +329,7 @@ export const Button = forwardRef(function Button(props: ButtonProps, ref: Focusa
311
329
  let domRef = useFocusableRef(ref);
312
330
  let overlayTriggerState = useContext(OverlayTriggerStateContext);
313
331
 
314
- let [isProgressVisible, setIsProgressVisible] = useState(false);
315
- useEffect(() => {
316
- let timeout: ReturnType<typeof setTimeout>;
317
-
318
- if (isPending) {
319
- // Start timer when isPending is set to true.
320
- timeout = setTimeout(() => {
321
- setIsProgressVisible(true);
322
- }, 1000);
323
- } else {
324
- // Exit loading state when isPending is set to false. */
325
- setIsProgressVisible(false);
326
- }
327
- return () => {
328
- // Clean up on unmount or when user removes isPending prop before entering loading state.
329
- clearTimeout(timeout);
330
- };
331
- }, [isPending]);
332
+ let {isProgressVisible} = usePendingState(isPending);
332
333
 
333
334
  return (
334
335
  <RACButton
@@ -366,9 +367,8 @@ export const Button = forwardRef(function Button(props: ButtonProps, ref: Focusa
366
367
  styles: style({
367
368
  paddingY: '--labelPadding',
368
369
  order: 1,
369
- opacity: {
370
- default: 1,
371
- isProgressVisible: 0
370
+ visibility: {
371
+ isProgressVisible: 'hidden'
372
372
  }
373
373
  })({isProgressVisible}),
374
374
  // @ts-ignore data-attributes allowed on all JSX elements, but adding to DOMProps has been problematic in the past
@@ -380,9 +380,8 @@ export const Button = forwardRef(function Button(props: ButtonProps, ref: Focusa
380
380
  size: fontRelative(20),
381
381
  marginStart: '--iconMargin',
382
382
  flexShrink: 0,
383
- opacity: {
384
- default: 1,
385
- isProgressVisible: 0
383
+ visibility: {
384
+ isProgressVisible: 'hidden'
386
385
  }
387
386
  })({isProgressVisible})
388
387
  }]
@@ -395,9 +394,9 @@ export const Button = forwardRef(function Button(props: ButtonProps, ref: Focusa
395
394
  top: '50%',
396
395
  left: '50%',
397
396
  transform: 'translate(-50%, -50%)',
398
- opacity: {
399
- default: 0,
400
- isProgressVisible: 1
397
+ visibility: {
398
+ default: 'hidden',
399
+ isProgressVisible: 'visible'
401
400
  }
402
401
  })({isProgressVisible, isPending})}>
403
402
  <ProgressCircle
package/src/Calendar.tsx CHANGED
@@ -284,6 +284,9 @@ const selectionSpanStyles = style({
284
284
  forcedColorAdjust: 'none'
285
285
  });
286
286
 
287
+ /**
288
+ * Calendars display a grid of days in one or more months and allow users to select a single date.
289
+ */
287
290
  export const Calendar = /*#__PURE__*/ (forwardRef as forwardRefType)(function Calendar<T extends DateValue>(props: CalendarProps<T>, ref: ForwardedRef<HTMLDivElement>) {
288
291
  [props, ref] = useSpectrumContextProps(props, ref, CalendarContext);
289
292
  let {
package/src/Card.tsx CHANGED
@@ -253,7 +253,11 @@ let preview = style({
253
253
 
254
254
  const image = style({
255
255
  width: 'full',
256
- aspectRatio: '3/2',
256
+ aspectRatio: {
257
+ layout: {
258
+ grid: '3/2'
259
+ }
260
+ },
257
261
  objectFit: 'cover',
258
262
  userSelect: 'none',
259
263
  pointerEvents: 'none'
@@ -346,7 +350,10 @@ let footer = style({
346
350
  paddingTop: 'calc(var(--card-spacing) * 1.5 / 2)'
347
351
  });
348
352
 
349
- export const InternalCardViewContext = createContext<'div' | typeof GridListItem>('div');
353
+ export const InternalCardViewContext = createContext({
354
+ ElementType: 'div' as 'div' | typeof GridListItem,
355
+ layout: 'grid' as 'grid' | 'waterfall'
356
+ });
350
357
  export const CardContext = createContext<ContextValue<Partial<CardProps>, DOMRefValue<HTMLDivElement>>>(null);
351
358
 
352
359
  interface InternalCardContextValue {
@@ -377,8 +384,12 @@ const actionButtonSize = {
377
384
  XL: 'L'
378
385
  } as const;
379
386
 
387
+ /**
388
+ * A Card summarizes an object that a user can select or navigate to.
389
+ */
380
390
  export const Card = forwardRef(function Card(props: CardProps, ref: DOMRef<HTMLDivElement>) {
381
391
  [props] = useSpectrumContextProps(props, ref, CardContext);
392
+ let {ElementType, layout} = useContext(InternalCardViewContext);
382
393
  let domRef = useDOMRef(ref);
383
394
  let {density = 'regular', size = 'M', variant = 'primary', UNSAFE_className = '', UNSAFE_style, styles, id, ...otherProps} = props;
384
395
  let isQuiet = variant === 'quiet';
@@ -386,7 +397,7 @@ export const Card = forwardRef(function Card(props: CardProps, ref: DOMRef<HTMLD
386
397
  let children = (
387
398
  <Provider
388
399
  values={[
389
- [ImageContext, {alt: '', styles: image}],
400
+ [ImageContext, {alt: '', styles: image({layout})}],
390
401
  [TextContext, {
391
402
  slots: {
392
403
  [DEFAULT_SLOT]: {},
@@ -413,7 +424,6 @@ export const Card = forwardRef(function Card(props: CardProps, ref: DOMRef<HTMLD
413
424
  </Provider>
414
425
  );
415
426
 
416
- let ElementType = useContext(InternalCardViewContext);
417
427
  if (ElementType === 'div' || isSkeleton) {
418
428
  return (
419
429
  <div
@@ -560,6 +570,7 @@ export const CollectionCardPreview = forwardRef(function CollectionCardPreview(p
560
570
  export interface AssetCardProps extends Omit<CardProps, 'density'> {}
561
571
 
562
572
  export const AssetCard = forwardRef(function AssetCard(props: AssetCardProps, ref: DOMRef<HTMLDivElement>) {
573
+ let {layout} = useContext(InternalCardViewContext);
563
574
  return (
564
575
  <Card {...props} ref={ref} density="regular">
565
576
  {composeRenderProps(props.children, children => (
@@ -569,11 +580,15 @@ export const AssetCard = forwardRef(function AssetCard(props: AssetCardProps, re
569
580
  alt: '',
570
581
  styles: style({
571
582
  width: 'full',
572
- aspectRatio: 'square',
583
+ aspectRatio: {
584
+ layout: {
585
+ grid: 'square'
586
+ }
587
+ },
573
588
  objectFit: 'contain',
574
589
  pointerEvents: 'none',
575
590
  userSelect: 'none'
576
- })
591
+ })({layout})
577
592
  }],
578
593
  [IllustrationContext, {
579
594
  render(icon) {
@@ -620,7 +635,7 @@ export interface UserCardProps extends Omit<CardProps, 'density' | 'variant'> {
620
635
  variant?: 'primary' | 'secondary' | 'tertiary'
621
636
  }
622
637
 
623
- export const UserCard = forwardRef(function UserCard(props: CardProps, ref: DOMRef<HTMLDivElement>) {
638
+ export const UserCard = forwardRef(function UserCard(props: UserCardProps, ref: DOMRef<HTMLDivElement>) {
624
639
  let {size = 'M'} = props;
625
640
  return (
626
641
  <Card {...props} ref={ref} density="spacious">
package/src/CardView.tsx CHANGED
@@ -192,6 +192,9 @@ const wrapperStyles = style({
192
192
 
193
193
  export const CardViewContext = createContext<ContextValue<Partial<CardViewProps<any>>, DOMRefValue<HTMLDivElement>>>(null);
194
194
 
195
+ /**
196
+ * A CardView displays a group of related objects, with support for selection and bulk actions.
197
+ */
195
198
  export const CardView = /*#__PURE__*/ (forwardRef as forwardRefType)(function CardView<T extends object>(props: CardViewProps<T>, ref: DOMRef<HTMLDivElement>) {
196
199
  [props, ref] = useSpectrumContextProps(props, ref, CardViewContext);
197
200
  let {
@@ -282,9 +285,14 @@ export const CardView = /*#__PURE__*/ (forwardRef as forwardRefType)(function Ca
282
285
  }
283
286
  } : undefined;
284
287
 
288
+ let cardViewCtx = useMemo(() => ({
289
+ layout: layoutName,
290
+ ElementType: GridListItem
291
+ }), [layoutName]);
292
+
285
293
  let cardView = (
286
294
  <Virtualizer layout={layout} layoutOptions={options}>
287
- <InternalCardViewContext.Provider value={GridListItem}>
295
+ <InternalCardViewContext.Provider value={cardViewCtx}>
288
296
  <CardContext.Provider value={ctx}>
289
297
  <ImageCoordinator>
290
298
  <AriaGridList
package/src/ColorArea.tsx CHANGED
@@ -13,7 +13,8 @@
13
13
  import {
14
14
  ColorArea as AriaColorArea,
15
15
  ColorAreaProps as AriaColorAreaProps,
16
- ContextValue
16
+ ContextValue,
17
+ useLocale
17
18
  } from 'react-aria-components';
18
19
  import {ColorHandle} from './ColorHandle';
19
20
  import {createContext, forwardRef} from 'react';
@@ -34,6 +35,7 @@ export const ColorArea = forwardRef(function ColorArea(props: ColorAreaProps, re
34
35
  [props, ref] = useSpectrumContextProps(props, ref, ColorAreaContext);
35
36
  let {UNSAFE_className = '', UNSAFE_style, styles} = props;
36
37
  let containerRef = useDOMRef(ref);
38
+ let {direction} = useLocale();
37
39
  return (
38
40
  <AriaColorArea
39
41
  {...props}
@@ -67,7 +69,13 @@ export const ColorArea = forwardRef(function ColorArea(props: ColorAreaProps, re
67
69
  {({state}) =>
68
70
  (<ColorHandle
69
71
  containerRef={containerRef}
70
- getPosition={() => state.getThumbPosition()} />)
72
+ getPosition={() => {
73
+ let {x, y} = state.getThumbPosition();
74
+ return {
75
+ x: direction === 'ltr' ? x : 1 - x,
76
+ y
77
+ };
78
+ }} />)
71
79
  }
72
80
  </AriaColorArea>
73
81
  );
@@ -13,7 +13,8 @@
13
13
  import {
14
14
  ColorField as AriaColorField,
15
15
  ColorFieldProps as AriaColorFieldProps,
16
- ContextValue
16
+ ContextValue,
17
+ InputProps
17
18
  } from 'react-aria-components';
18
19
  import {createContext, forwardRef, Ref, useContext, useImperativeHandle, useRef} from 'react';
19
20
  import {createFocusableRef} from '@react-spectrum/utils';
@@ -25,7 +26,7 @@ import {style} from '../style' with {type: 'macro'};
25
26
  import {TextFieldRef} from '@react-types/textfield';
26
27
  import {useSpectrumContextProps} from './useSpectrumContextProps';
27
28
 
28
- export interface ColorFieldProps extends Omit<AriaColorFieldProps, 'children' | 'className' | 'style' | keyof GlobalDOMAttributes>, StyleProps, SpectrumLabelableProps, HelpTextProps {
29
+ export interface ColorFieldProps extends Omit<AriaColorFieldProps, 'children' | 'className' | 'style' | keyof GlobalDOMAttributes>, StyleProps, SpectrumLabelableProps, HelpTextProps, Pick<InputProps, 'placeholder'> {
29
30
  /**
30
31
  * The size of the color field.
31
32
  *
@@ -41,7 +41,7 @@ export const ColorSlider = forwardRef(function ColorSlider(props: ColorSliderPro
41
41
  let {UNSAFE_className = '', UNSAFE_style, styles} = props;
42
42
  let containerRef = useDOMRef(ref);
43
43
  let trackRef = useRef(null);
44
- let {locale} = useLocale();
44
+ let {direction, locale} = useLocale();
45
45
 
46
46
  return (
47
47
  <AriaColorSlider
@@ -133,7 +133,8 @@ export const ColorSlider = forwardRef(function ColorSlider(props: ColorSliderPro
133
133
  <ColorHandle
134
134
  containerRef={trackRef}
135
135
  getPosition={() => {
136
- let x = state.orientation === 'horizontal' ? state.getThumbPercent(0) : 0.5;
136
+ let thumbLeft = direction === 'ltr' ? state.getThumbPercent(0) : 1 - state.getThumbPercent(0);
137
+ let x = state.orientation === 'horizontal' ? thumbLeft : 0.5;
137
138
  let y = state.orientation === 'horizontal' ? 0.5 : 1 - state.getThumbPercent(0);
138
139
  return {x, y};
139
140
  }} />
package/src/ComboBox.tsx CHANGED
@@ -21,6 +21,7 @@ import {
21
21
  ComboBoxStateContext,
22
22
  ContextValue,
23
23
  InputContext,
24
+ InputProps,
24
25
  ListBox,
25
26
  ListBoxItem,
26
27
  ListBoxItemProps,
@@ -33,6 +34,7 @@ import {
33
34
  Virtualizer
34
35
  } from 'react-aria-components';
35
36
  import {AsyncLoadable, GlobalDOMAttributes, HelpTextProps, LoadingState, SpectrumLabelableProps} from '@react-types/shared';
37
+ import {AvatarContext} from './Avatar';
36
38
  import {BaseCollection, CollectionNode, createLeafComponent} from '@react-aria/collections';
37
39
  import {baseColor, edgeToText, focusRing, space, style} from '../style' with {type: 'macro'};
38
40
  import {centerBaseline} from './CenterBaseline';
@@ -59,7 +61,7 @@ import intlMessages from '../intl/*.json';
59
61
  import {mergeRefs, useResizeObserver, useSlotId} from '@react-aria/utils';
60
62
  import {Node} from 'react-stately';
61
63
  import {Placement} from 'react-aria';
62
- import {PopoverBase} from './Popover';
64
+ import {Popover} from './Popover';
63
65
  import {pressScale} from './pressScale';
64
66
  import {ProgressCircle} from './ProgressCircle';
65
67
  import {TextFieldRef} from '@react-types/textfield';
@@ -83,7 +85,8 @@ export interface ComboBoxProps<T extends object> extends
83
85
  HelpTextProps,
84
86
  Pick<ListBoxProps<T>, 'items' | 'dependencies'>,
85
87
  Pick<AriaPopoverProps, 'shouldFlip'>,
86
- Pick<AsyncLoadable, 'onLoadMore'> {
88
+ Pick<AsyncLoadable, 'onLoadMore'>,
89
+ Pick<InputProps, 'placeholder'> {
87
90
  /** The contents of the collection. */
88
91
  children: ReactNode | ((item: T) => ReactNode),
89
92
  /**
@@ -304,6 +307,11 @@ const dividerStyle = style({
304
307
  width: 'full'
305
308
  });
306
309
 
310
+ const avatar = style({
311
+ gridArea: 'icon',
312
+ marginEnd: 'text-to-visual'
313
+ });
314
+
307
315
  // Not from any design, just following the sizing of the existing rows
308
316
  export const LOADER_ROW_HEIGHTS = {
309
317
  S: {
@@ -363,6 +371,13 @@ export interface ComboBoxItemProps extends Omit<ListBoxItemProps, 'children' | '
363
371
  children: ReactNode
364
372
  }
365
373
 
374
+ const avatarSize = {
375
+ S: 16,
376
+ M: 20,
377
+ L: 22,
378
+ XL: 26
379
+ } as const;
380
+
366
381
  const checkmarkIconSize = {
367
382
  S: 'XS',
368
383
  M: 'M',
@@ -392,6 +407,11 @@ export function ComboBoxItem(props: ComboBoxItemProps): ReactNode {
392
407
  icon: {render: centerBaseline({slot: 'icon', styles: iconCenterWrapper}), styles: icon}
393
408
  }
394
409
  }],
410
+ [AvatarContext, {
411
+ slots: {
412
+ avatar: {size: avatarSize[size], styles: avatar}
413
+ }
414
+ }],
395
415
  [TextContext, {
396
416
  slots: {
397
417
  label: {styles: label({size})},
@@ -399,7 +419,7 @@ export function ComboBoxItem(props: ComboBoxItemProps): ReactNode {
399
419
  }
400
420
  }]
401
421
  ]}>
402
- {!isLink && <CheckmarkIcon size={checkmarkIconSize[size]} className={checkmark({...renderProps, size})} />}
422
+ {!isLink && !props.onAction && <CheckmarkIcon size={checkmarkIconSize[size]} className={checkmark({...renderProps, size})} />}
403
423
  {typeof children === 'string' ? <Text slot="label">{children}</Text> : children}
404
424
  </Provider>
405
425
  </>
@@ -478,7 +498,7 @@ const ComboboxInner = forwardRef(function ComboboxInner(props: ComboBoxProps<any
478
498
  }
479
499
 
480
500
  let triggerRef = useRef<HTMLDivElement>(null);
481
- // Make menu width match input + button
501
+ // Make menu width match input + button
482
502
  let [triggerWidth, setTriggerWidth] = useState<string | null>(null);
483
503
  let onResize = useCallback(() => {
484
504
  if (triggerRef.current) {
@@ -643,57 +663,62 @@ const ComboboxInner = forwardRef(function ComboboxInner(props: ComboBoxProps<any
643
663
  description={descriptionMessage}>
644
664
  {errorMessage}
645
665
  </HelpText>
646
- <PopoverBase
666
+ <Popover
647
667
  hideArrow
648
668
  triggerRef={triggerRef}
649
669
  offset={menuOffset}
650
670
  placement={`${direction} ${align}` as Placement}
651
671
  shouldFlip={shouldFlip}
652
672
  UNSAFE_style={{
653
- width: menuWidth ? `${menuWidth}px` : undefined,
654
- // manually subtract border as we can't set Popover to border-box, it causes the contents to spill out
655
- '--trigger-width': `calc(${triggerWidth} - 2px)`
673
+ '--trigger-width': (menuWidth ? menuWidth + 'px' : triggerWidth)
656
674
  } as CSSProperties}
675
+ padding="none"
657
676
  styles={style({
658
677
  minWidth: '--trigger-width',
659
678
  width: '--trigger-width'
660
679
  })}>
661
- <Provider
662
- values={[
663
- [HeaderContext, {styles: listboxHeader({size})}],
664
- [HeadingContext, {
665
- // @ts-ignore
666
- role: 'presentation',
667
- styles: sectionHeading
668
- }],
669
- [TextContext, {
670
- slots: {
671
- 'description': {styles: description({size})}
672
- }
673
- }]
674
- ]}>
675
- <Virtualizer
676
- layout={ListLayout}
677
- layoutOptions={{
678
- estimatedRowHeight: 32,
679
- padding: 8,
680
- estimatedHeadingHeight: 50,
681
- loaderHeight: LOADER_ROW_HEIGHTS[size][scale]
682
- }}>
683
- <ListBox
684
- dependencies={props.dependencies}
685
- renderEmptyState={() => (
686
- <span className={emptyStateText({size})}>
687
- {loadingState === 'loading' ? stringFormatter.format('table.loading') : stringFormatter.format('combobox.noResults')}
688
- </span>
689
- )}
690
- items={items}
691
- className={listbox({size})}>
692
- {renderer}
693
- </ListBox>
694
- </Virtualizer>
695
- </Provider>
696
- </PopoverBase>
680
+ <div
681
+ className={style({
682
+ display: 'flex',
683
+ size: 'full'
684
+ })}>
685
+ <Provider
686
+ values={[
687
+ [HeaderContext, {styles: listboxHeader({size})}],
688
+ [HeadingContext, {
689
+ // @ts-ignore
690
+ role: 'presentation',
691
+ styles: sectionHeading
692
+ }],
693
+ [TextContext, {
694
+ slots: {
695
+ 'description': {styles: description({size})}
696
+ }
697
+ }]
698
+ ]}>
699
+ <Virtualizer
700
+ layout={ListLayout}
701
+ layoutOptions={{
702
+ estimatedRowHeight: 32,
703
+ padding: 8,
704
+ estimatedHeadingHeight: 50,
705
+ loaderHeight: LOADER_ROW_HEIGHTS[size][scale]
706
+ }}>
707
+ <ListBox
708
+ dependencies={props.dependencies}
709
+ renderEmptyState={() => (
710
+ <span className={emptyStateText({size})}>
711
+ {loadingState === 'loading' ? stringFormatter.format('table.loading') : stringFormatter.format('combobox.noResults')}
712
+ </span>
713
+ )}
714
+ items={items}
715
+ className={listbox({size})}>
716
+ {renderer}
717
+ </ListBox>
718
+ </Virtualizer>
719
+ </Provider>
720
+ </div>
721
+ </Popover>
697
722
  </InternalComboboxContext.Provider>
698
723
  </>
699
724
  );
@@ -11,7 +11,7 @@ import InfoIcon from '../s2wf-icons/S2_Icon_InfoCircle_20_N.svg';
11
11
  // @ts-ignore
12
12
  import intlMessages from '../intl/*.json';
13
13
  import {mergeStyles} from '../style/runtime';
14
- import {PopoverBase, PopoverDialogProps} from './Popover';
14
+ import {Popover, PopoverDialogProps} from './Popover';
15
15
  import {space, style} from '../style' with {type: 'macro'};
16
16
  import {StyleProps} from './style-utils' with { type: 'macro' };
17
17
  import {useLocalizedStringFormatter} from '@react-aria/i18n';
@@ -39,11 +39,12 @@ export interface ContextualHelpProps extends
39
39
  size?: 'XS' | 'S'
40
40
  }
41
41
 
42
- const popover = style({
43
- fontFamily: 'sans',
42
+ const wrappingDiv = style({
44
43
  minWidth: 268,
45
44
  width: 268,
46
- padding: 24
45
+ padding: 24,
46
+ boxSizing: 'border-box',
47
+ height: 'full'
47
48
  });
48
49
 
49
50
  export const ContextualHelpContext = createContext<ContextValue<Partial<ContextualHelpProps>, FocusableRefValue<HTMLButtonElement>>>(null);
@@ -96,39 +97,42 @@ export const ContextualHelp = forwardRef(function ContextualHelp(props: Contextu
96
97
  isQuiet>
97
98
  {variant === 'info' ? <InfoIcon /> : <HelpIcon />}
98
99
  </ActionButton>
99
- <PopoverBase
100
+ <Popover
101
+ padding="none"
100
102
  placement={placement}
101
103
  shouldFlip={shouldFlip}
102
104
  // not working => containerPadding={containerPadding}
103
105
  offset={offset}
104
106
  crossOffset={crossOffset}
105
- hideArrow
106
- styles={popover}>
107
- <RACDialog className={mergeStyles(dialogInner, style({borderRadius: 'none', margin: 'calc(self(paddingTop) * -1)', padding: 24}))}>
108
- <Provider
109
- values={[
110
- [TextContext, {
111
- slots: {
112
- [DEFAULT_SLOT]: {}
113
- }
114
- }],
115
- [HeadingContext, {styles: style({
116
- font: 'heading-xs',
117
- margin: 0,
118
- marginBottom: space(8) // This only makes it 10px on mobile and should be 12px
119
- })}],
120
- [ContentContext, {styles: style({
121
- font: 'body-sm'
122
- })}],
123
- [FooterContext, {styles: style({
124
- font: 'body-sm',
125
- marginTop: 16
126
- })}]
127
- ]}>
128
- {children}
129
- </Provider>
130
- </RACDialog>
131
- </PopoverBase>
107
+ hideArrow>
108
+ <div
109
+ className={wrappingDiv}>
110
+ <RACDialog className={mergeStyles(dialogInner, style({borderRadius: 'none', margin: 'calc(self(paddingTop) * -1)', padding: 24}))}>
111
+ <Provider
112
+ values={[
113
+ [TextContext, {
114
+ slots: {
115
+ [DEFAULT_SLOT]: {}
116
+ }
117
+ }],
118
+ [HeadingContext, {styles: style({
119
+ font: 'heading-xs',
120
+ margin: 0,
121
+ marginBottom: space(8) // This only makes it 10px on mobile and should be 12px
122
+ })}],
123
+ [ContentContext, {styles: style({
124
+ font: 'body-sm'
125
+ })}],
126
+ [FooterContext, {styles: style({
127
+ font: 'body-sm',
128
+ marginTop: 16
129
+ })}]
130
+ ]}>
131
+ {children}
132
+ </Provider>
133
+ </RACDialog>
134
+ </div>
135
+ </Popover>
132
136
  </DialogTrigger>
133
137
  );
134
138
  });
@@ -53,7 +53,7 @@ const dialogStyle = style({
53
53
  position: 'relative',
54
54
  size: 'full',
55
55
  maxSize: 'inherit'
56
- }, getAllowedOverrides({height: true}));
56
+ }, getAllowedOverrides({height: true, width: true}));
57
57
 
58
58
  /**
59
59
  * A CustomDialog is a floating window with a custom layout.
package/src/DateField.tsx CHANGED
@@ -87,6 +87,10 @@ const iconStyles = style({
87
87
  justifyContent: 'end'
88
88
  });
89
89
 
90
+ /**
91
+ * DateFields allow users to enter and edit date and time values using a keyboard.
92
+ * Each part of a date value is displayed in an individually editable segment.
93
+ */
90
94
  export const DateField = /*#__PURE__*/ (forwardRef as forwardRefType)(function DateField<T extends DateValue>(
91
95
  props: DateFieldProps<T>, ref: Ref<HTMLDivElement>
92
96
  ): ReactElement {