@react-spectrum/s2 0.5.0 → 0.7.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 (1009) hide show
  1. package/dist/Accordion.cjs +5 -8
  2. package/dist/Accordion.cjs.map +1 -1
  3. package/dist/Accordion.css +3 -7
  4. package/dist/Accordion.css.map +1 -1
  5. package/dist/Accordion.mjs +5 -8
  6. package/dist/Accordion.mjs.map +1 -1
  7. package/dist/ActionBar.cjs +264 -0
  8. package/dist/ActionBar.cjs.map +1 -0
  9. package/dist/ActionBar.css +261 -0
  10. package/dist/ActionBar.css.map +1 -0
  11. package/dist/ActionBar.mjs +257 -0
  12. package/dist/ActionBar.mjs.map +1 -0
  13. package/dist/ActionButton.cjs +121 -147
  14. package/dist/ActionButton.cjs.map +1 -1
  15. package/dist/ActionButton.css +133 -159
  16. package/dist/ActionButton.css.map +1 -1
  17. package/dist/ActionButton.mjs +122 -148
  18. package/dist/ActionButton.mjs.map +1 -1
  19. package/dist/ActionButtonGroup.cjs +6 -9
  20. package/dist/ActionButtonGroup.cjs.map +1 -1
  21. package/dist/ActionButtonGroup.css +4 -8
  22. package/dist/ActionButtonGroup.css.map +1 -1
  23. package/dist/ActionButtonGroup.mjs +6 -9
  24. package/dist/ActionButtonGroup.mjs.map +1 -1
  25. package/dist/ActionMenu.cjs +2 -5
  26. package/dist/ActionMenu.cjs.map +1 -1
  27. package/dist/ActionMenu.mjs +2 -5
  28. package/dist/ActionMenu.mjs.map +1 -1
  29. package/dist/AlertDialog.cjs +2 -5
  30. package/dist/AlertDialog.cjs.map +1 -1
  31. package/dist/AlertDialog.css +1 -5
  32. package/dist/AlertDialog.css.map +1 -1
  33. package/dist/AlertDialog.mjs +2 -5
  34. package/dist/AlertDialog.mjs.map +1 -1
  35. package/dist/Avatar.cjs +12 -15
  36. package/dist/Avatar.cjs.map +1 -1
  37. package/dist/Avatar.css +12 -16
  38. package/dist/Avatar.css.map +1 -1
  39. package/dist/Avatar.mjs +12 -15
  40. package/dist/Avatar.mjs.map +1 -1
  41. package/dist/AvatarGroup.cjs +100 -103
  42. package/dist/AvatarGroup.cjs.map +1 -1
  43. package/dist/AvatarGroup.css +31 -37
  44. package/dist/AvatarGroup.css.map +1 -1
  45. package/dist/AvatarGroup.mjs +100 -103
  46. package/dist/AvatarGroup.mjs.map +1 -1
  47. package/dist/Badge.cjs +123 -108
  48. package/dist/Badge.cjs.map +1 -1
  49. package/dist/Badge.css +101 -83
  50. package/dist/Badge.css.map +1 -1
  51. package/dist/Badge.mjs +124 -109
  52. package/dist/Badge.mjs.map +1 -1
  53. package/dist/Breadcrumbs.cjs +98 -99
  54. package/dist/Breadcrumbs.cjs.map +1 -1
  55. package/dist/Breadcrumbs.css +70 -70
  56. package/dist/Breadcrumbs.css.map +1 -1
  57. package/dist/Breadcrumbs.mjs +100 -101
  58. package/dist/Breadcrumbs.mjs.map +1 -1
  59. package/dist/Button.cjs +305 -278
  60. package/dist/Button.cjs.map +1 -1
  61. package/dist/Button.css +253 -186
  62. package/dist/Button.css.map +1 -1
  63. package/dist/Button.mjs +307 -280
  64. package/dist/Button.mjs.map +1 -1
  65. package/dist/ButtonGroup.cjs +17 -20
  66. package/dist/ButtonGroup.cjs.map +1 -1
  67. package/dist/ButtonGroup.css +12 -16
  68. package/dist/ButtonGroup.css.map +1 -1
  69. package/dist/ButtonGroup.mjs +18 -21
  70. package/dist/ButtonGroup.mjs.map +1 -1
  71. package/dist/Card.cjs +169 -169
  72. package/dist/Card.cjs.map +1 -1
  73. package/dist/Card.css +121 -127
  74. package/dist/Card.css.map +1 -1
  75. package/dist/Card.mjs +170 -170
  76. package/dist/Card.mjs.map +1 -1
  77. package/dist/CardView.cjs +115 -327
  78. package/dist/CardView.cjs.map +1 -1
  79. package/dist/CardView.css +36 -16
  80. package/dist/CardView.css.map +1 -1
  81. package/dist/CardView.mjs +73 -285
  82. package/dist/CardView.mjs.map +1 -1
  83. package/dist/CenterBaseline.cjs +1 -1
  84. package/dist/CenterBaseline.css +3 -7
  85. package/dist/CenterBaseline.css.map +1 -1
  86. package/dist/CenterBaseline.mjs +1 -1
  87. package/dist/Checkbox.cjs +58 -62
  88. package/dist/Checkbox.cjs.map +1 -1
  89. package/dist/Checkbox.css +54 -60
  90. package/dist/Checkbox.css.map +1 -1
  91. package/dist/Checkbox.mjs +59 -63
  92. package/dist/Checkbox.mjs.map +1 -1
  93. package/dist/CheckboxGroup.cjs +43 -45
  94. package/dist/CheckboxGroup.cjs.map +1 -1
  95. package/dist/CheckboxGroup.css +32 -38
  96. package/dist/CheckboxGroup.css.map +1 -1
  97. package/dist/CheckboxGroup.mjs +44 -46
  98. package/dist/CheckboxGroup.mjs.map +1 -1
  99. package/dist/ClearButton.cjs +7 -8
  100. package/dist/ClearButton.cjs.map +1 -1
  101. package/dist/ClearButton.css +6 -10
  102. package/dist/ClearButton.css.map +1 -1
  103. package/dist/ClearButton.mjs +7 -8
  104. package/dist/ClearButton.mjs.map +1 -1
  105. package/dist/CloseButton.cjs +40 -53
  106. package/dist/CloseButton.cjs.map +1 -1
  107. package/dist/CloseButton.css +46 -54
  108. package/dist/CloseButton.css.map +1 -1
  109. package/dist/CloseButton.mjs +40 -53
  110. package/dist/CloseButton.mjs.map +1 -1
  111. package/dist/ColorArea.cjs +12 -15
  112. package/dist/ColorArea.cjs.map +1 -1
  113. package/dist/ColorArea.css +11 -15
  114. package/dist/ColorArea.css.map +1 -1
  115. package/dist/ColorArea.mjs +12 -15
  116. package/dist/ColorArea.mjs.map +1 -1
  117. package/dist/ColorField.cjs +31 -34
  118. package/dist/ColorField.cjs.map +1 -1
  119. package/dist/ColorField.css +24 -30
  120. package/dist/ColorField.css.map +1 -1
  121. package/dist/ColorField.mjs +32 -35
  122. package/dist/ColorField.mjs.map +1 -1
  123. package/dist/ColorHandle.cjs +11 -11
  124. package/dist/ColorHandle.css +20 -24
  125. package/dist/ColorHandle.css.map +1 -1
  126. package/dist/ColorHandle.mjs +11 -11
  127. package/dist/ColorSlider.cjs +43 -46
  128. package/dist/ColorSlider.cjs.map +1 -1
  129. package/dist/ColorSlider.css +43 -49
  130. package/dist/ColorSlider.css.map +1 -1
  131. package/dist/ColorSlider.mjs +44 -47
  132. package/dist/ColorSlider.mjs.map +1 -1
  133. package/dist/ColorSwatch.cjs +8 -11
  134. package/dist/ColorSwatch.cjs.map +1 -1
  135. package/dist/ColorSwatch.css +15 -19
  136. package/dist/ColorSwatch.css.map +1 -1
  137. package/dist/ColorSwatch.mjs +9 -12
  138. package/dist/ColorSwatch.mjs.map +1 -1
  139. package/dist/ColorSwatchPicker.cjs +15 -18
  140. package/dist/ColorSwatchPicker.cjs.map +1 -1
  141. package/dist/ColorSwatchPicker.css +34 -38
  142. package/dist/ColorSwatchPicker.css.map +1 -1
  143. package/dist/ColorSwatchPicker.mjs +15 -18
  144. package/dist/ColorSwatchPicker.mjs.map +1 -1
  145. package/dist/ColorWheel.cjs +18 -21
  146. package/dist/ColorWheel.cjs.map +1 -1
  147. package/dist/ColorWheel.css +16 -20
  148. package/dist/ColorWheel.css.map +1 -1
  149. package/dist/ColorWheel.mjs +18 -21
  150. package/dist/ColorWheel.mjs.map +1 -1
  151. package/dist/ComboBox.cjs +62 -62
  152. package/dist/ComboBox.cjs.map +1 -1
  153. package/dist/ComboBox.css +52 -58
  154. package/dist/ComboBox.css.map +1 -1
  155. package/dist/ComboBox.mjs +63 -63
  156. package/dist/ComboBox.mjs.map +1 -1
  157. package/dist/Content.cjs +15 -20
  158. package/dist/Content.cjs.map +1 -1
  159. package/dist/Content.mjs +15 -20
  160. package/dist/Content.mjs.map +1 -1
  161. package/dist/ContextualHelp.cjs +7 -10
  162. package/dist/ContextualHelp.cjs.map +1 -1
  163. package/dist/ContextualHelp.css +23 -29
  164. package/dist/ContextualHelp.css.map +1 -1
  165. package/dist/ContextualHelp.mjs +7 -10
  166. package/dist/ContextualHelp.mjs.map +1 -1
  167. package/dist/CustomDialog.cjs +10 -13
  168. package/dist/CustomDialog.cjs.map +1 -1
  169. package/dist/CustomDialog.css +10 -14
  170. package/dist/CustomDialog.css.map +1 -1
  171. package/dist/CustomDialog.mjs +10 -13
  172. package/dist/CustomDialog.mjs.map +1 -1
  173. package/dist/Dialog.cjs +14 -18
  174. package/dist/Dialog.cjs.map +1 -1
  175. package/dist/Dialog.css +39 -45
  176. package/dist/Dialog.css.map +1 -1
  177. package/dist/Dialog.mjs +14 -18
  178. package/dist/Dialog.mjs.map +1 -1
  179. package/dist/Disclosure.cjs +60 -69
  180. package/dist/Disclosure.cjs.map +1 -1
  181. package/dist/Disclosure.css +49 -55
  182. package/dist/Disclosure.css.map +1 -1
  183. package/dist/Disclosure.mjs +61 -70
  184. package/dist/Disclosure.mjs.map +1 -1
  185. package/dist/Divider.cjs +15 -19
  186. package/dist/Divider.cjs.map +1 -1
  187. package/dist/Divider.css +19 -23
  188. package/dist/Divider.css.map +1 -1
  189. package/dist/Divider.mjs +15 -19
  190. package/dist/Divider.mjs.map +1 -1
  191. package/dist/DropZone.cjs +30 -33
  192. package/dist/DropZone.cjs.map +1 -1
  193. package/dist/DropZone.css +26 -32
  194. package/dist/DropZone.css.map +1 -1
  195. package/dist/DropZone.mjs +30 -33
  196. package/dist/DropZone.mjs.map +1 -1
  197. package/dist/Field.cjs +134 -132
  198. package/dist/Field.cjs.map +1 -1
  199. package/dist/Field.css +76 -90
  200. package/dist/Field.css.map +1 -1
  201. package/dist/Field.mjs +134 -132
  202. package/dist/Field.mjs.map +1 -1
  203. package/dist/Form.cjs +6 -9
  204. package/dist/Form.cjs.map +1 -1
  205. package/dist/Form.css +4 -8
  206. package/dist/Form.css.map +1 -1
  207. package/dist/Form.mjs +6 -9
  208. package/dist/Form.mjs.map +1 -1
  209. package/dist/FullscreenDialog.cjs +7 -10
  210. package/dist/FullscreenDialog.cjs.map +1 -1
  211. package/dist/FullscreenDialog.css +54 -60
  212. package/dist/FullscreenDialog.css.map +1 -1
  213. package/dist/FullscreenDialog.mjs +7 -10
  214. package/dist/FullscreenDialog.mjs.map +1 -1
  215. package/dist/IllustratedMessage.cjs +128 -132
  216. package/dist/IllustratedMessage.cjs.map +1 -1
  217. package/dist/IllustratedMessage.css +58 -64
  218. package/dist/IllustratedMessage.css.map +1 -1
  219. package/dist/IllustratedMessage.mjs +128 -132
  220. package/dist/IllustratedMessage.mjs.map +1 -1
  221. package/dist/Image.cjs +24 -13
  222. package/dist/Image.cjs.map +1 -1
  223. package/dist/Image.css +12 -16
  224. package/dist/Image.css.map +1 -1
  225. package/dist/Image.mjs +25 -14
  226. package/dist/Image.mjs.map +1 -1
  227. package/dist/InlineAlert.cjs +75 -84
  228. package/dist/InlineAlert.cjs.map +1 -1
  229. package/dist/InlineAlert.css +59 -69
  230. package/dist/InlineAlert.css.map +1 -1
  231. package/dist/InlineAlert.mjs +76 -85
  232. package/dist/InlineAlert.mjs.map +1 -1
  233. package/dist/Link.cjs +36 -39
  234. package/dist/Link.cjs.map +1 -1
  235. package/dist/Link.css +42 -48
  236. package/dist/Link.css.map +1 -1
  237. package/dist/Link.mjs +37 -40
  238. package/dist/Link.mjs.map +1 -1
  239. package/dist/Menu.cjs +335 -235
  240. package/dist/Menu.cjs.map +1 -1
  241. package/dist/Menu.css +130 -122
  242. package/dist/Menu.css.map +1 -1
  243. package/dist/Menu.mjs +337 -237
  244. package/dist/Menu.mjs.map +1 -1
  245. package/dist/Meter.cjs +66 -70
  246. package/dist/Meter.cjs.map +1 -1
  247. package/dist/Meter.css +69 -79
  248. package/dist/Meter.css.map +1 -1
  249. package/dist/Meter.mjs +66 -70
  250. package/dist/Meter.mjs.map +1 -1
  251. package/dist/Modal.cjs +36 -45
  252. package/dist/Modal.cjs.map +1 -1
  253. package/dist/Modal.css +49 -77
  254. package/dist/Modal.css.map +1 -1
  255. package/dist/Modal.mjs +37 -46
  256. package/dist/Modal.mjs.map +1 -1
  257. package/dist/NumberField.cjs +66 -69
  258. package/dist/NumberField.cjs.map +1 -1
  259. package/dist/NumberField.css +70 -76
  260. package/dist/NumberField.css.map +1 -1
  261. package/dist/NumberField.mjs +67 -70
  262. package/dist/NumberField.mjs.map +1 -1
  263. package/dist/Picker.cjs +214 -189
  264. package/dist/Picker.cjs.map +1 -1
  265. package/dist/Picker.css +92 -94
  266. package/dist/Picker.css.map +1 -1
  267. package/dist/Picker.mjs +215 -190
  268. package/dist/Picker.mjs.map +1 -1
  269. package/dist/Popover.cjs +48 -72
  270. package/dist/Popover.cjs.map +1 -1
  271. package/dist/Popover.css +59 -134
  272. package/dist/Popover.css.map +1 -1
  273. package/dist/Popover.mjs +49 -73
  274. package/dist/Popover.mjs.map +1 -1
  275. package/dist/ProgressBar.cjs +85 -87
  276. package/dist/ProgressBar.cjs.map +1 -1
  277. package/dist/ProgressBar.css +81 -91
  278. package/dist/ProgressBar.css.map +1 -1
  279. package/dist/ProgressBar.mjs +85 -87
  280. package/dist/ProgressBar.mjs.map +1 -1
  281. package/dist/ProgressCircle.cjs +16 -18
  282. package/dist/ProgressCircle.cjs.map +1 -1
  283. package/dist/ProgressCircle.css +17 -21
  284. package/dist/ProgressCircle.css.map +1 -1
  285. package/dist/ProgressCircle.mjs +16 -18
  286. package/dist/ProgressCircle.mjs.map +1 -1
  287. package/dist/Provider.cjs +5 -5
  288. package/dist/Provider.css +7 -11
  289. package/dist/Provider.css.map +1 -1
  290. package/dist/Provider.mjs +5 -5
  291. package/dist/Radio.cjs +54 -58
  292. package/dist/Radio.cjs.map +1 -1
  293. package/dist/Radio.css +50 -56
  294. package/dist/Radio.css.map +1 -1
  295. package/dist/Radio.mjs +55 -59
  296. package/dist/Radio.mjs.map +1 -1
  297. package/dist/RadioGroup.cjs +39 -43
  298. package/dist/RadioGroup.cjs.map +1 -1
  299. package/dist/RadioGroup.css +32 -38
  300. package/dist/RadioGroup.css.map +1 -1
  301. package/dist/RadioGroup.mjs +40 -44
  302. package/dist/RadioGroup.mjs.map +1 -1
  303. package/dist/RangeSlider.cjs +2 -3
  304. package/dist/RangeSlider.cjs.map +1 -1
  305. package/dist/RangeSlider.mjs +3 -4
  306. package/dist/RangeSlider.mjs.map +1 -1
  307. package/dist/SearchField.cjs +35 -38
  308. package/dist/SearchField.cjs.map +1 -1
  309. package/dist/SearchField.css +30 -36
  310. package/dist/SearchField.css.map +1 -1
  311. package/dist/SearchField.mjs +36 -39
  312. package/dist/SearchField.mjs.map +1 -1
  313. package/dist/SegmentedControl.cjs +71 -77
  314. package/dist/SegmentedControl.cjs.map +1 -1
  315. package/dist/SegmentedControl.css +63 -69
  316. package/dist/SegmentedControl.css.map +1 -1
  317. package/dist/SegmentedControl.mjs +73 -79
  318. package/dist/SegmentedControl.mjs.map +1 -1
  319. package/dist/Slider.cjs +111 -112
  320. package/dist/Slider.cjs.map +1 -1
  321. package/dist/Slider.css +87 -93
  322. package/dist/Slider.css.map +1 -1
  323. package/dist/Slider.mjs +112 -113
  324. package/dist/Slider.mjs.map +1 -1
  325. package/dist/StatusLight.cjs +28 -32
  326. package/dist/StatusLight.cjs.map +1 -1
  327. package/dist/StatusLight.css +26 -32
  328. package/dist/StatusLight.css.map +1 -1
  329. package/dist/StatusLight.mjs +28 -32
  330. package/dist/StatusLight.mjs.map +1 -1
  331. package/dist/Switch.cjs +56 -60
  332. package/dist/Switch.cjs.map +1 -1
  333. package/dist/Switch.css +48 -54
  334. package/dist/Switch.css.map +1 -1
  335. package/dist/Switch.mjs +57 -61
  336. package/dist/Switch.mjs.map +1 -1
  337. package/dist/TableView.cjs +271 -275
  338. package/dist/TableView.cjs.map +1 -1
  339. package/dist/TableView.css +104 -102
  340. package/dist/TableView.css.map +1 -1
  341. package/dist/TableView.mjs +273 -277
  342. package/dist/TableView.mjs.map +1 -1
  343. package/dist/Tabs.cjs +472 -191
  344. package/dist/Tabs.cjs.map +1 -1
  345. package/dist/Tabs.css +225 -139
  346. package/dist/Tabs.css.map +1 -1
  347. package/dist/Tabs.mjs +472 -191
  348. package/dist/Tabs.mjs.map +1 -1
  349. package/dist/TabsPicker.cjs +415 -0
  350. package/dist/TabsPicker.cjs.map +1 -0
  351. package/dist/TabsPicker.css +482 -0
  352. package/dist/TabsPicker.css.map +1 -0
  353. package/dist/TabsPicker.mjs +409 -0
  354. package/dist/TabsPicker.mjs.map +1 -0
  355. package/dist/TagGroup.cjs +126 -128
  356. package/dist/TagGroup.cjs.map +1 -1
  357. package/dist/TagGroup.css +93 -99
  358. package/dist/TagGroup.css.map +1 -1
  359. package/dist/TagGroup.mjs +126 -128
  360. package/dist/TagGroup.mjs.map +1 -1
  361. package/dist/TextField.cjs +44 -55
  362. package/dist/TextField.cjs.map +1 -1
  363. package/dist/TextField.css +33 -39
  364. package/dist/TextField.css.map +1 -1
  365. package/dist/TextField.mjs +45 -56
  366. package/dist/TextField.mjs.map +1 -1
  367. package/dist/ToggleButton.cjs +6 -9
  368. package/dist/ToggleButton.cjs.map +1 -1
  369. package/dist/ToggleButton.css +8 -12
  370. package/dist/ToggleButton.css.map +1 -1
  371. package/dist/ToggleButton.mjs +6 -9
  372. package/dist/ToggleButton.mjs.map +1 -1
  373. package/dist/ToggleButtonGroup.cjs +2 -5
  374. package/dist/ToggleButtonGroup.cjs.map +1 -1
  375. package/dist/ToggleButtonGroup.mjs +2 -5
  376. package/dist/ToggleButtonGroup.mjs.map +1 -1
  377. package/dist/Tooltip.cjs +49 -49
  378. package/dist/Tooltip.cjs.map +1 -1
  379. package/dist/Tooltip.css +55 -76
  380. package/dist/Tooltip.css.map +1 -1
  381. package/dist/Tooltip.mjs +50 -50
  382. package/dist/Tooltip.mjs.map +1 -1
  383. package/dist/TreeView.cjs +439 -0
  384. package/dist/TreeView.cjs.map +1 -0
  385. package/dist/TreeView.css +608 -0
  386. package/dist/TreeView.css.map +1 -0
  387. package/dist/TreeView.mjs +432 -0
  388. package/dist/TreeView.mjs.map +1 -0
  389. package/dist/ar-AE.cjs +10 -2
  390. package/dist/ar-AE.cjs.map +1 -1
  391. package/dist/ar-AE.mjs +10 -2
  392. package/dist/ar-AE.mjs.map +1 -1
  393. package/dist/bg-BG.cjs +11 -2
  394. package/dist/bg-BG.cjs.map +1 -1
  395. package/dist/bg-BG.mjs +11 -2
  396. package/dist/bg-BG.mjs.map +1 -1
  397. package/dist/cs-CZ.cjs +7 -2
  398. package/dist/cs-CZ.cjs.map +1 -1
  399. package/dist/cs-CZ.mjs +7 -2
  400. package/dist/cs-CZ.mjs.map +1 -1
  401. package/dist/da-DK.cjs +12 -4
  402. package/dist/da-DK.cjs.map +1 -1
  403. package/dist/da-DK.mjs +12 -4
  404. package/dist/da-DK.mjs.map +1 -1
  405. package/dist/de-DE.cjs +11 -2
  406. package/dist/de-DE.cjs.map +1 -1
  407. package/dist/de-DE.mjs +11 -2
  408. package/dist/de-DE.mjs.map +1 -1
  409. package/dist/el-GR.cjs +11 -2
  410. package/dist/el-GR.cjs.map +1 -1
  411. package/dist/el-GR.mjs +11 -2
  412. package/dist/el-GR.mjs.map +1 -1
  413. package/dist/en-US.cjs +8 -0
  414. package/dist/en-US.cjs.map +1 -1
  415. package/dist/en-US.mjs +8 -0
  416. package/dist/en-US.mjs.map +1 -1
  417. package/dist/es-ES.cjs +11 -2
  418. package/dist/es-ES.cjs.map +1 -1
  419. package/dist/es-ES.mjs +11 -2
  420. package/dist/es-ES.mjs.map +1 -1
  421. package/dist/et-EE.cjs +10 -2
  422. package/dist/et-EE.cjs.map +1 -1
  423. package/dist/et-EE.mjs +10 -2
  424. package/dist/et-EE.mjs.map +1 -1
  425. package/dist/fi-FI.cjs +10 -2
  426. package/dist/fi-FI.cjs.map +1 -1
  427. package/dist/fi-FI.mjs +10 -2
  428. package/dist/fi-FI.mjs.map +1 -1
  429. package/dist/fr-FR.cjs +11 -2
  430. package/dist/fr-FR.cjs.map +1 -1
  431. package/dist/fr-FR.mjs +11 -2
  432. package/dist/fr-FR.mjs.map +1 -1
  433. package/dist/he-IL.cjs +11 -2
  434. package/dist/he-IL.cjs.map +1 -1
  435. package/dist/he-IL.mjs +11 -2
  436. package/dist/he-IL.mjs.map +1 -1
  437. package/dist/hr-HR.cjs +7 -2
  438. package/dist/hr-HR.cjs.map +1 -1
  439. package/dist/hr-HR.mjs +7 -2
  440. package/dist/hr-HR.mjs.map +1 -1
  441. package/dist/hu-HU.cjs +10 -2
  442. package/dist/hu-HU.cjs.map +1 -1
  443. package/dist/hu-HU.mjs +10 -2
  444. package/dist/hu-HU.mjs.map +1 -1
  445. package/dist/it-IT.cjs +11 -2
  446. package/dist/it-IT.cjs.map +1 -1
  447. package/dist/it-IT.mjs +11 -2
  448. package/dist/it-IT.mjs.map +1 -1
  449. package/dist/ja-JP.cjs +10 -2
  450. package/dist/ja-JP.cjs.map +1 -1
  451. package/dist/ja-JP.mjs +10 -2
  452. package/dist/ja-JP.mjs.map +1 -1
  453. package/dist/ko-KR.cjs +12 -4
  454. package/dist/ko-KR.cjs.map +1 -1
  455. package/dist/ko-KR.mjs +12 -4
  456. package/dist/ko-KR.mjs.map +1 -1
  457. package/dist/lt-LT.cjs +9 -4
  458. package/dist/lt-LT.cjs.map +1 -1
  459. package/dist/lt-LT.mjs +9 -4
  460. package/dist/lt-LT.mjs.map +1 -1
  461. package/dist/lv-LV.cjs +11 -3
  462. package/dist/lv-LV.cjs.map +1 -1
  463. package/dist/lv-LV.mjs +11 -3
  464. package/dist/lv-LV.mjs.map +1 -1
  465. package/dist/main.cjs +9 -0
  466. package/dist/main.cjs.map +1 -1
  467. package/dist/module.mjs +5 -1
  468. package/dist/module.mjs.map +1 -1
  469. package/dist/nb-NO.cjs +9 -4
  470. package/dist/nb-NO.cjs.map +1 -1
  471. package/dist/nb-NO.mjs +9 -4
  472. package/dist/nb-NO.mjs.map +1 -1
  473. package/dist/nl-NL.cjs +10 -2
  474. package/dist/nl-NL.cjs.map +1 -1
  475. package/dist/nl-NL.mjs +10 -2
  476. package/dist/nl-NL.mjs.map +1 -1
  477. package/dist/pl-PL.cjs +8 -3
  478. package/dist/pl-PL.cjs.map +1 -1
  479. package/dist/pl-PL.mjs +8 -3
  480. package/dist/pl-PL.mjs.map +1 -1
  481. package/dist/pt-BR.cjs +11 -2
  482. package/dist/pt-BR.cjs.map +1 -1
  483. package/dist/pt-BR.mjs +11 -2
  484. package/dist/pt-BR.mjs.map +1 -1
  485. package/dist/pt-PT.cjs +11 -2
  486. package/dist/pt-PT.cjs.map +1 -1
  487. package/dist/pt-PT.mjs +11 -2
  488. package/dist/pt-PT.mjs.map +1 -1
  489. package/dist/ro-RO.cjs +12 -3
  490. package/dist/ro-RO.cjs.map +1 -1
  491. package/dist/ro-RO.mjs +12 -3
  492. package/dist/ro-RO.mjs.map +1 -1
  493. package/dist/ru-RU.cjs +7 -2
  494. package/dist/ru-RU.cjs.map +1 -1
  495. package/dist/ru-RU.mjs +7 -2
  496. package/dist/ru-RU.mjs.map +1 -1
  497. package/dist/sk-SK.cjs +7 -2
  498. package/dist/sk-SK.cjs.map +1 -1
  499. package/dist/sk-SK.mjs +7 -2
  500. package/dist/sk-SK.mjs.map +1 -1
  501. package/dist/sl-SI.cjs +7 -2
  502. package/dist/sl-SI.cjs.map +1 -1
  503. package/dist/sl-SI.mjs +7 -2
  504. package/dist/sl-SI.mjs.map +1 -1
  505. package/dist/sr-SP.cjs +7 -2
  506. package/dist/sr-SP.cjs.map +1 -1
  507. package/dist/sr-SP.mjs +7 -2
  508. package/dist/sr-SP.mjs.map +1 -1
  509. package/dist/sv-SE.cjs +11 -2
  510. package/dist/sv-SE.cjs.map +1 -1
  511. package/dist/sv-SE.mjs +11 -2
  512. package/dist/sv-SE.mjs.map +1 -1
  513. package/dist/tr-TR.cjs +10 -2
  514. package/dist/tr-TR.cjs.map +1 -1
  515. package/dist/tr-TR.mjs +10 -2
  516. package/dist/tr-TR.mjs.map +1 -1
  517. package/dist/types.d.ts +227 -168
  518. package/dist/types.d.ts.map +1 -1
  519. package/dist/uk-UA.cjs +7 -2
  520. package/dist/uk-UA.cjs.map +1 -1
  521. package/dist/uk-UA.mjs +7 -2
  522. package/dist/uk-UA.mjs.map +1 -1
  523. package/dist/zh-CN.cjs +10 -2
  524. package/dist/zh-CN.cjs.map +1 -1
  525. package/dist/zh-CN.mjs +10 -2
  526. package/dist/zh-CN.mjs.map +1 -1
  527. package/dist/zh-TW.cjs +10 -2
  528. package/dist/zh-TW.cjs.map +1 -1
  529. package/dist/zh-TW.mjs +10 -2
  530. package/dist/zh-TW.mjs.map +1 -1
  531. package/icons/3DMaterial.cjs.map +1 -1
  532. package/icons/3DMaterial.mjs.map +1 -1
  533. package/icons/ABC.cjs +36 -0
  534. package/icons/ABC.cjs.map +1 -0
  535. package/icons/ABC.mjs +25 -0
  536. package/icons/ABC.mjs.map +1 -0
  537. package/icons/AlertDiamond.cjs.map +1 -1
  538. package/icons/AlertDiamond.mjs.map +1 -1
  539. package/icons/Animation.cjs.map +1 -1
  540. package/icons/Animation.mjs.map +1 -1
  541. package/icons/AnimationNo.cjs.map +1 -1
  542. package/icons/AnimationNo.mjs.map +1 -1
  543. package/icons/App.cjs +42 -0
  544. package/icons/App.cjs.map +1 -0
  545. package/icons/App.mjs +31 -0
  546. package/icons/App.mjs.map +1 -0
  547. package/icons/AspectRatio.cjs.map +1 -1
  548. package/icons/AspectRatio.mjs.map +1 -1
  549. package/icons/Asset.cjs +1 -5
  550. package/icons/Asset.cjs.map +1 -1
  551. package/icons/Asset.mjs +1 -5
  552. package/icons/Asset.mjs.map +1 -1
  553. package/icons/AudioWave.cjs.map +1 -1
  554. package/icons/AudioWave.mjs.map +1 -1
  555. package/icons/BadgeVerified.cjs.map +1 -1
  556. package/icons/BadgeVerified.mjs.map +1 -1
  557. package/icons/Bell.cjs.map +1 -1
  558. package/icons/Bell.mjs.map +1 -1
  559. package/icons/Bookmark.cjs +36 -0
  560. package/icons/Bookmark.cjs.map +1 -0
  561. package/icons/Bookmark.mjs +25 -0
  562. package/icons/Bookmark.mjs.map +1 -0
  563. package/icons/Brand.cjs.map +1 -1
  564. package/icons/Brand.mjs.map +1 -1
  565. package/icons/Building.cjs +62 -0
  566. package/icons/Building.cjs.map +1 -0
  567. package/icons/Building.mjs +51 -0
  568. package/icons/Building.mjs.map +1 -0
  569. package/icons/CalendarEdit.cjs.map +1 -1
  570. package/icons/CalendarEdit.mjs.map +1 -1
  571. package/icons/CallCenter.cjs +36 -0
  572. package/icons/CallCenter.cjs.map +1 -0
  573. package/icons/CallCenter.mjs +25 -0
  574. package/icons/CallCenter.mjs.map +1 -0
  575. package/icons/CameraProperties.cjs.map +1 -1
  576. package/icons/CameraProperties.mjs.map +1 -1
  577. package/icons/Channel.cjs.map +1 -1
  578. package/icons/Channel.mjs.map +1 -1
  579. package/icons/ChartBarVert.cjs +36 -0
  580. package/icons/ChartBarVert.cjs.map +1 -0
  581. package/icons/ChartBarVert.mjs +25 -0
  582. package/icons/ChartBarVert.mjs.map +1 -0
  583. package/icons/ChartPie.cjs +36 -0
  584. package/icons/ChartPie.cjs.map +1 -0
  585. package/icons/ChartPie.mjs +25 -0
  586. package/icons/ChartPie.mjs.map +1 -0
  587. package/icons/ChartTrend.cjs +36 -0
  588. package/icons/ChartTrend.cjs.map +1 -0
  589. package/icons/ChartTrend.mjs +25 -0
  590. package/icons/ChartTrend.mjs.map +1 -0
  591. package/icons/Chat.cjs +36 -0
  592. package/icons/Chat.cjs.map +1 -0
  593. package/icons/Chat.mjs +25 -0
  594. package/icons/Chat.mjs.map +1 -0
  595. package/icons/CheckBox.cjs.map +1 -1
  596. package/icons/CheckBox.mjs.map +1 -1
  597. package/icons/Checkmark.cjs +8 -8
  598. package/icons/Checkmark.cjs.map +1 -1
  599. package/icons/Checkmark.mjs +8 -8
  600. package/icons/Checkmark.mjs.map +1 -1
  601. package/icons/ChevronDoubleLeft.cjs +42 -0
  602. package/icons/ChevronDoubleLeft.cjs.map +1 -0
  603. package/icons/ChevronDoubleLeft.d.ts +5 -0
  604. package/icons/ChevronDoubleLeft.mjs +31 -0
  605. package/icons/ChevronDoubleLeft.mjs.map +1 -0
  606. package/icons/ChevronDoubleRight.cjs +42 -0
  607. package/icons/ChevronDoubleRight.cjs.map +1 -0
  608. package/icons/ChevronDoubleRight.d.ts +5 -0
  609. package/icons/ChevronDoubleRight.mjs +31 -0
  610. package/icons/ChevronDoubleRight.mjs.map +1 -0
  611. package/icons/ChevronDown.cjs +8 -8
  612. package/icons/ChevronDown.cjs.map +1 -1
  613. package/icons/ChevronDown.mjs +8 -8
  614. package/icons/ChevronDown.mjs.map +1 -1
  615. package/icons/ChevronLeft.cjs.map +1 -1
  616. package/icons/ChevronLeft.mjs.map +1 -1
  617. package/icons/ChevronRight.cjs.map +1 -1
  618. package/icons/ChevronRight.mjs.map +1 -1
  619. package/icons/ChevronUp.cjs +36 -0
  620. package/icons/ChevronUp.cjs.map +1 -0
  621. package/icons/ChevronUp.d.ts +5 -0
  622. package/icons/ChevronUp.mjs +25 -0
  623. package/icons/ChevronUp.mjs.map +1 -0
  624. package/icons/Circle.cjs.map +1 -1
  625. package/icons/Circle.mjs.map +1 -1
  626. package/icons/Close.cjs.map +1 -1
  627. package/icons/Close.mjs.map +1 -1
  628. package/icons/CloseCaptions.cjs.map +1 -1
  629. package/icons/CloseCaptions.mjs.map +1 -1
  630. package/icons/Code.cjs +36 -0
  631. package/icons/Code.cjs.map +1 -0
  632. package/icons/Code.d.ts +5 -0
  633. package/icons/Code.mjs +25 -0
  634. package/icons/Code.mjs.map +1 -0
  635. package/icons/Collection.cjs.map +1 -1
  636. package/icons/Collection.mjs.map +1 -1
  637. package/icons/ColorHarmony.cjs.map +1 -1
  638. package/icons/ColorHarmony.mjs.map +1 -1
  639. package/icons/CommentCheckmark.cjs.map +1 -1
  640. package/icons/CommentCheckmark.mjs.map +1 -1
  641. package/icons/CommentHide.cjs.map +1 -1
  642. package/icons/CommentHide.mjs.map +1 -1
  643. package/icons/CommentRemove.cjs.map +1 -1
  644. package/icons/CommentRemove.mjs.map +1 -1
  645. package/icons/Compare.cjs +42 -0
  646. package/icons/Compare.cjs.map +1 -0
  647. package/icons/Compare.d.ts +5 -0
  648. package/icons/Compare.mjs +31 -0
  649. package/icons/Compare.mjs.map +1 -0
  650. package/icons/ContextualTaskBar.cjs.map +1 -1
  651. package/icons/ContextualTaskBar.mjs.map +1 -1
  652. package/icons/CornerRadiusBottomLeft.cjs.map +1 -1
  653. package/icons/CornerRadiusBottomLeft.mjs.map +1 -1
  654. package/icons/CornerRadiusBottomRight.cjs.map +1 -1
  655. package/icons/CornerRadiusBottomRight.mjs.map +1 -1
  656. package/icons/CornerRadiusTopLeft.cjs.map +1 -1
  657. package/icons/CornerRadiusTopLeft.mjs.map +1 -1
  658. package/icons/CornerRadiusTopRight.cjs.map +1 -1
  659. package/icons/CornerRadiusTopRight.mjs.map +1 -1
  660. package/icons/CursorClick.cjs.map +1 -1
  661. package/icons/CursorClick.mjs.map +1 -1
  662. package/icons/Data.cjs +1 -1
  663. package/icons/Data.cjs.map +1 -1
  664. package/icons/Data.mjs +1 -1
  665. package/icons/Data.mjs.map +1 -1
  666. package/icons/DataAdd.cjs.map +1 -1
  667. package/icons/DataAdd.mjs.map +1 -1
  668. package/icons/DataRefresh.cjs +42 -0
  669. package/icons/DataRefresh.cjs.map +1 -0
  670. package/icons/DataRefresh.d.ts +5 -0
  671. package/icons/DataRefresh.mjs +31 -0
  672. package/icons/DataRefresh.mjs.map +1 -0
  673. package/icons/DataSettings.cjs +2 -2
  674. package/icons/DataSettings.cjs.map +1 -1
  675. package/icons/DataSettings.mjs +2 -2
  676. package/icons/DataSettings.mjs.map +1 -1
  677. package/icons/DataUpload.cjs +2 -2
  678. package/icons/DataUpload.cjs.map +1 -1
  679. package/icons/DataUpload.mjs +2 -2
  680. package/icons/DataUpload.mjs.map +1 -1
  681. package/icons/DeviceTablet.cjs.map +1 -1
  682. package/icons/DeviceTablet.mjs.map +1 -1
  683. package/icons/Draw.cjs.map +1 -1
  684. package/icons/Draw.mjs.map +1 -1
  685. package/icons/Edit.cjs.map +1 -1
  686. package/icons/Edit.mjs.map +1 -1
  687. package/icons/EditNo.cjs.map +1 -1
  688. package/icons/EditNo.mjs.map +1 -1
  689. package/icons/Email.cjs.map +1 -1
  690. package/icons/Email.mjs.map +1 -1
  691. package/icons/Enterprise.cjs +46 -0
  692. package/icons/Enterprise.cjs.map +1 -0
  693. package/icons/Enterprise.d.ts +5 -0
  694. package/icons/Enterprise.mjs +35 -0
  695. package/icons/Enterprise.mjs.map +1 -0
  696. package/icons/Export.cjs +42 -0
  697. package/icons/Export.cjs.map +1 -0
  698. package/icons/Export.d.ts +5 -0
  699. package/icons/Export.mjs +31 -0
  700. package/icons/Export.mjs.map +1 -0
  701. package/icons/Filter.cjs.map +1 -1
  702. package/icons/Filter.mjs.map +1 -1
  703. package/icons/FlipHorizontal.cjs +1 -21
  704. package/icons/FlipHorizontal.cjs.map +1 -1
  705. package/icons/FlipHorizontal.mjs +1 -21
  706. package/icons/FlipHorizontal.mjs.map +1 -1
  707. package/icons/FlipVertical.cjs +1 -21
  708. package/icons/FlipVertical.cjs.map +1 -1
  709. package/icons/FlipVertical.mjs +1 -21
  710. package/icons/FlipVertical.mjs.map +1 -1
  711. package/icons/FolderMoveTo.cjs.map +1 -1
  712. package/icons/FolderMoveTo.mjs.map +1 -1
  713. package/icons/FolderSearch.cjs +42 -0
  714. package/icons/FolderSearch.cjs.map +1 -0
  715. package/icons/FolderSearch.d.ts +5 -0
  716. package/icons/FolderSearch.mjs +31 -0
  717. package/icons/FolderSearch.mjs.map +1 -0
  718. package/icons/FontPicker.cjs.map +1 -1
  719. package/icons/FontPicker.mjs.map +1 -1
  720. package/icons/GlobeGrid.cjs.map +1 -1
  721. package/icons/GlobeGrid.mjs.map +1 -1
  722. package/icons/GradientHorizontal.cjs.map +1 -1
  723. package/icons/GradientHorizontal.mjs.map +1 -1
  724. package/icons/GridsAndRulers.cjs.map +1 -1
  725. package/icons/GridsAndRulers.mjs.map +1 -1
  726. package/icons/Icon.cjs.map +1 -1
  727. package/icons/Icon.mjs.map +1 -1
  728. package/icons/Image.cjs.map +1 -1
  729. package/icons/Image.mjs.map +1 -1
  730. package/icons/ImageAdd.cjs +1 -5
  731. package/icons/ImageAdd.cjs.map +1 -1
  732. package/icons/ImageAdd.mjs +1 -5
  733. package/icons/ImageAdd.mjs.map +1 -1
  734. package/icons/ImageBackgroundRemove.cjs.map +1 -1
  735. package/icons/ImageBackgroundRemove.mjs.map +1 -1
  736. package/icons/Images.cjs.map +1 -1
  737. package/icons/Images.mjs.map +1 -1
  738. package/icons/Import.cjs +42 -0
  739. package/icons/Import.cjs.map +1 -0
  740. package/icons/Import.d.ts +5 -0
  741. package/icons/Import.mjs +31 -0
  742. package/icons/Import.mjs.map +1 -0
  743. package/icons/Key.cjs +36 -0
  744. package/icons/Key.cjs.map +1 -0
  745. package/icons/Key.d.ts +5 -0
  746. package/icons/Key.mjs +25 -0
  747. package/icons/Key.mjs.map +1 -0
  748. package/icons/ListMultiSelect.cjs.map +1 -1
  749. package/icons/ListMultiSelect.mjs.map +1 -1
  750. package/icons/ListNumbered.cjs.map +1 -1
  751. package/icons/ListNumbered.mjs.map +1 -1
  752. package/icons/Logo.cjs.map +1 -1
  753. package/icons/Logo.mjs.map +1 -1
  754. package/icons/Market.cjs.map +1 -1
  755. package/icons/Market.mjs.map +1 -1
  756. package/icons/Microphone.cjs.map +1 -1
  757. package/icons/Microphone.mjs.map +1 -1
  758. package/icons/MicrophoneOff.cjs.map +1 -1
  759. package/icons/MicrophoneOff.mjs.map +1 -1
  760. package/icons/MusicNote.cjs.map +1 -1
  761. package/icons/MusicNote.mjs.map +1 -1
  762. package/icons/OrientationPortrait.cjs.map +1 -1
  763. package/icons/OrientationPortrait.mjs.map +1 -1
  764. package/icons/Pause.cjs.map +1 -1
  765. package/icons/Pause.mjs.map +1 -1
  766. package/icons/PauseCircle.cjs.map +1 -1
  767. package/icons/PauseCircle.mjs.map +1 -1
  768. package/icons/PeopleGroup.cjs +36 -0
  769. package/icons/PeopleGroup.cjs.map +1 -0
  770. package/icons/PeopleGroup.d.ts +5 -0
  771. package/icons/PeopleGroup.mjs +25 -0
  772. package/icons/PeopleGroup.mjs.map +1 -0
  773. package/icons/Percentage.cjs.map +1 -1
  774. package/icons/Percentage.mjs.map +1 -1
  775. package/icons/PinOff.cjs.map +1 -1
  776. package/icons/PinOff.mjs.map +1 -1
  777. package/icons/PinOn.cjs.map +1 -1
  778. package/icons/PinOn.mjs.map +1 -1
  779. package/icons/Play.cjs.map +1 -1
  780. package/icons/Play.mjs.map +1 -1
  781. package/icons/PluginGear.cjs.map +1 -1
  782. package/icons/PluginGear.mjs.map +1 -1
  783. package/icons/Polygon6.cjs.map +1 -1
  784. package/icons/Polygon6.mjs.map +1 -1
  785. package/icons/Publish.cjs.map +1 -1
  786. package/icons/Publish.mjs.map +1 -1
  787. package/icons/PublishNo.cjs.map +1 -1
  788. package/icons/PublishNo.mjs.map +1 -1
  789. package/icons/RadioButton.cjs.map +1 -1
  790. package/icons/RadioButton.mjs.map +1 -1
  791. package/icons/RectangleHoriz.cjs.map +1 -1
  792. package/icons/RectangleHoriz.mjs.map +1 -1
  793. package/icons/RocketQuickActions.cjs.map +1 -1
  794. package/icons/RocketQuickActions.mjs.map +1 -1
  795. package/icons/RotateCW.cjs.map +1 -1
  796. package/icons/RotateCW.mjs.map +1 -1
  797. package/icons/Ruler.cjs.map +1 -1
  798. package/icons/Ruler.mjs.map +1 -1
  799. package/icons/SaveFloppy.cjs +36 -0
  800. package/icons/SaveFloppy.cjs.map +1 -0
  801. package/icons/SaveFloppy.d.ts +5 -0
  802. package/icons/SaveFloppy.mjs +25 -0
  803. package/icons/SaveFloppy.mjs.map +1 -0
  804. package/icons/Select.cjs.map +1 -1
  805. package/icons/Select.mjs.map +1 -1
  806. package/icons/Send.cjs.map +1 -1
  807. package/icons/Send.mjs.map +1 -1
  808. package/icons/Shuffle.cjs.map +1 -1
  809. package/icons/Shuffle.mjs.map +1 -1
  810. package/icons/Skeleton.cjs +8 -6
  811. package/icons/Skeleton.cjs.map +1 -1
  812. package/icons/Skeleton.css +8 -10
  813. package/icons/Skeleton.css.map +1 -1
  814. package/icons/Skeleton.mjs +9 -7
  815. package/icons/Skeleton.mjs.map +1 -1
  816. package/icons/SlowConnectionCircle.cjs.map +1 -1
  817. package/icons/SlowConnectionCircle.mjs.map +1 -1
  818. package/icons/SpeedFast.cjs +36 -0
  819. package/icons/SpeedFast.cjs.map +1 -0
  820. package/icons/SpeedFast.d.ts +5 -0
  821. package/icons/SpeedFast.mjs +25 -0
  822. package/icons/SpeedFast.mjs.map +1 -0
  823. package/icons/StepBackward.cjs.map +1 -1
  824. package/icons/StepBackward.mjs.map +1 -1
  825. package/icons/StepForward.cjs.map +1 -1
  826. package/icons/StepForward.mjs.map +1 -1
  827. package/icons/Table.cjs.map +1 -1
  828. package/icons/Table.mjs.map +1 -1
  829. package/icons/Tag.cjs.map +1 -1
  830. package/icons/Tag.mjs.map +1 -1
  831. package/icons/Target.cjs.map +1 -1
  832. package/icons/Target.mjs.map +1 -1
  833. package/icons/TextBold.cjs.map +1 -1
  834. package/icons/TextBold.mjs.map +1 -1
  835. package/icons/TextHighlight.cjs.map +1 -1
  836. package/icons/TextHighlight.mjs.map +1 -1
  837. package/icons/TextIncrease.cjs.map +1 -1
  838. package/icons/TextIncrease.mjs.map +1 -1
  839. package/icons/TextNumbers.cjs.map +1 -1
  840. package/icons/TextNumbers.mjs.map +1 -1
  841. package/icons/TextParagraph.cjs.map +1 -1
  842. package/icons/TextParagraph.mjs.map +1 -1
  843. package/icons/TextReplaceComment.cjs.map +1 -1
  844. package/icons/TextReplaceComment.mjs.map +1 -1
  845. package/icons/Tools.cjs.map +1 -1
  846. package/icons/Tools.mjs.map +1 -1
  847. package/icons/TouchOneFingerSwipeLeftRight.cjs.map +1 -1
  848. package/icons/TouchOneFingerSwipeLeftRight.mjs.map +1 -1
  849. package/icons/Transcript.cjs.map +1 -1
  850. package/icons/Transcript.mjs.map +1 -1
  851. package/icons/Translate.cjs.map +1 -1
  852. package/icons/Translate.mjs.map +1 -1
  853. package/icons/UserAvatarCursor.cjs.map +1 -1
  854. package/icons/UserAvatarCursor.mjs.map +1 -1
  855. package/icons/UserEdit.cjs.map +1 -1
  856. package/icons/UserEdit.mjs.map +1 -1
  857. package/icons/UserGroup.cjs.map +1 -1
  858. package/icons/UserGroup.mjs.map +1 -1
  859. package/icons/UserSettings.cjs +44 -0
  860. package/icons/UserSettings.cjs.map +1 -0
  861. package/icons/UserSettings.d.ts +5 -0
  862. package/icons/UserSettings.mjs +33 -0
  863. package/icons/UserSettings.mjs.map +1 -0
  864. package/icons/VectorDraw.cjs.map +1 -1
  865. package/icons/VectorDraw.mjs.map +1 -1
  866. package/icons/ViewGridFluid.cjs +36 -0
  867. package/icons/ViewGridFluid.cjs.map +1 -0
  868. package/icons/ViewGridFluid.d.ts +5 -0
  869. package/icons/ViewGridFluid.mjs +25 -0
  870. package/icons/ViewGridFluid.mjs.map +1 -0
  871. package/icons/ZoomIn.cjs.map +1 -1
  872. package/icons/ZoomIn.mjs.map +1 -1
  873. package/icons/ZoomOut.cjs.map +1 -1
  874. package/icons/ZoomOut.mjs.map +1 -1
  875. package/package.json +19 -21
  876. package/src/Accordion.tsx +6 -9
  877. package/src/ActionBar.tsx +229 -0
  878. package/src/ActionButton.tsx +27 -54
  879. package/src/ActionButtonGroup.tsx +9 -11
  880. package/src/ActionMenu.tsx +6 -9
  881. package/src/AlertDialog.tsx +5 -8
  882. package/src/Avatar.tsx +6 -9
  883. package/src/AvatarGroup.tsx +6 -9
  884. package/src/Badge.tsx +32 -16
  885. package/src/Breadcrumbs.tsx +19 -25
  886. package/src/Button.tsx +201 -158
  887. package/src/ButtonGroup.tsx +6 -9
  888. package/src/Card.tsx +2 -2
  889. package/src/CardView.tsx +54 -377
  890. package/src/Checkbox.tsx +7 -10
  891. package/src/CheckboxGroup.tsx +8 -11
  892. package/src/ClearButton.tsx +2 -5
  893. package/src/CloseButton.tsx +22 -32
  894. package/src/ColorArea.tsx +6 -9
  895. package/src/ColorField.tsx +6 -9
  896. package/src/ColorSlider.tsx +6 -9
  897. package/src/ColorSwatch.tsx +7 -10
  898. package/src/ColorSwatchPicker.tsx +6 -10
  899. package/src/ColorWheel.tsx +6 -9
  900. package/src/ComboBox.tsx +7 -9
  901. package/src/Content.tsx +23 -39
  902. package/src/ContextualHelp.tsx +7 -10
  903. package/src/CustomDialog.tsx +5 -8
  904. package/src/Dialog.tsx +6 -9
  905. package/src/Disclosure.tsx +16 -25
  906. package/src/Divider.tsx +17 -26
  907. package/src/DropZone.tsx +7 -10
  908. package/src/Field.tsx +26 -33
  909. package/src/Form.tsx +7 -10
  910. package/src/FullscreenDialog.tsx +5 -8
  911. package/src/Icon.tsx +2 -2
  912. package/src/IllustratedMessage.tsx +7 -10
  913. package/src/Image.tsx +21 -10
  914. package/src/InlineAlert.tsx +6 -10
  915. package/src/Link.tsx +15 -23
  916. package/src/Menu.tsx +77 -36
  917. package/src/Meter.tsx +14 -24
  918. package/src/Modal.tsx +22 -52
  919. package/src/NumberField.tsx +6 -9
  920. package/src/Picker.tsx +88 -69
  921. package/src/Popover.tsx +32 -105
  922. package/src/ProgressBar.tsx +15 -25
  923. package/src/ProgressCircle.tsx +19 -25
  924. package/src/Radio.tsx +6 -9
  925. package/src/RadioGroup.tsx +8 -11
  926. package/src/RangeSlider.tsx +3 -6
  927. package/src/SearchField.tsx +6 -9
  928. package/src/SegmentedControl.tsx +16 -25
  929. package/src/Skeleton.tsx +6 -8
  930. package/src/Slider.tsx +3 -6
  931. package/src/StatusLight.tsx +7 -10
  932. package/src/Switch.tsx +7 -10
  933. package/src/TableView.tsx +120 -121
  934. package/src/Tabs.tsx +450 -147
  935. package/src/TabsPicker.tsx +350 -0
  936. package/src/TagGroup.tsx +11 -18
  937. package/src/TextField.tsx +22 -30
  938. package/src/ToggleButton.tsx +9 -11
  939. package/src/ToggleButtonGroup.tsx +6 -9
  940. package/src/Tooltip.tsx +34 -55
  941. package/src/TreeView.tsx +450 -0
  942. package/src/bar-utils.ts +3 -10
  943. package/src/index.ts +4 -0
  944. package/src/style-utils.ts +15 -9
  945. package/style/__tests__/style-macro.test.js +3 -7
  946. package/style/dist/main.cjs +1 -0
  947. package/style/dist/main.cjs.map +1 -1
  948. package/style/dist/module.mjs +2 -2
  949. package/style/dist/module.mjs.map +1 -1
  950. package/style/dist/spectrum-theme.cjs +72 -5
  951. package/style/dist/spectrum-theme.cjs.map +1 -1
  952. package/style/dist/spectrum-theme.mjs +72 -6
  953. package/style/dist/spectrum-theme.mjs.map +1 -1
  954. package/style/dist/style-macro.cjs +18 -4
  955. package/style/dist/style-macro.cjs.map +1 -1
  956. package/style/dist/style-macro.mjs +18 -4
  957. package/style/dist/style-macro.mjs.map +1 -1
  958. package/style/dist/types.d.ts +50 -29
  959. package/style/dist/types.d.ts.map +1 -1
  960. package/style/index.ts +1 -1
  961. package/style/spectrum-theme.ts +72 -8
  962. package/style/style-macro.ts +29 -7
  963. package/style/tokens.ts +30 -0
  964. package/style/types.ts +1 -1
  965. package/icons/CloudStateDefault.cjs +0 -36
  966. package/icons/CloudStateDefault.cjs.map +0 -1
  967. package/icons/CloudStateDefault.mjs +0 -25
  968. package/icons/CloudStateDefault.mjs.map +0 -1
  969. package/icons/CloudStateDisconnected.cjs +0 -36
  970. package/icons/CloudStateDisconnected.cjs.map +0 -1
  971. package/icons/CloudStateDisconnected.mjs +0 -25
  972. package/icons/CloudStateDisconnected.mjs.map +0 -1
  973. package/icons/CloudStateError.cjs +0 -36
  974. package/icons/CloudStateError.cjs.map +0 -1
  975. package/icons/CloudStateError.mjs +0 -25
  976. package/icons/CloudStateError.mjs.map +0 -1
  977. package/icons/CloudStateErrorRed.cjs +0 -46
  978. package/icons/CloudStateErrorRed.cjs.map +0 -1
  979. package/icons/CloudStateErrorRed.mjs +0 -35
  980. package/icons/CloudStateErrorRed.mjs.map +0 -1
  981. package/icons/CloudStateInProgress.cjs +0 -36
  982. package/icons/CloudStateInProgress.cjs.map +0 -1
  983. package/icons/CloudStateInProgress.mjs +0 -25
  984. package/icons/CloudStateInProgress.mjs.map +0 -1
  985. package/icons/CloudStateOnline.cjs +0 -50
  986. package/icons/CloudStateOnline.cjs.map +0 -1
  987. package/icons/CloudStateOnline.mjs +0 -39
  988. package/icons/CloudStateOnline.mjs.map +0 -1
  989. package/icons/CloudStatePaused.cjs +0 -36
  990. package/icons/CloudStatePaused.cjs.map +0 -1
  991. package/icons/CloudStatePaused.mjs +0 -25
  992. package/icons/CloudStatePaused.mjs.map +0 -1
  993. package/icons/CloudStatePending.cjs +0 -42
  994. package/icons/CloudStatePending.cjs.map +0 -1
  995. package/icons/CloudStatePending.mjs +0 -31
  996. package/icons/CloudStatePending.mjs.map +0 -1
  997. package/icons/CloudStateSlowConnection.cjs +0 -36
  998. package/icons/CloudStateSlowConnection.cjs.map +0 -1
  999. package/icons/CloudStateSlowConnection.mjs +0 -25
  1000. package/icons/CloudStateSlowConnection.mjs.map +0 -1
  1001. /package/icons/{CloudStateDefault.d.ts → ABC.d.ts} +0 -0
  1002. /package/icons/{CloudStateDisconnected.d.ts → App.d.ts} +0 -0
  1003. /package/icons/{CloudStateError.d.ts → Bookmark.d.ts} +0 -0
  1004. /package/icons/{CloudStateErrorRed.d.ts → Building.d.ts} +0 -0
  1005. /package/icons/{CloudStateInProgress.d.ts → CallCenter.d.ts} +0 -0
  1006. /package/icons/{CloudStateOnline.d.ts → ChartBarVert.d.ts} +0 -0
  1007. /package/icons/{CloudStatePaused.d.ts → ChartPie.d.ts} +0 -0
  1008. /package/icons/{CloudStatePending.d.ts → ChartTrend.d.ts} +0 -0
  1009. /package/icons/{CloudStateSlowConnection.d.ts → Chat.d.ts} +0 -0
@@ -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 ListBoxSection as AriaListBoxSection,\n PopoverProps as AriaPopoverProps,\n Button,\n ContextValue,\n InputContext,\n ListBox,\n ListBoxItem,\n ListBoxItemProps,\n ListBoxProps,\n Provider,\n SectionProps\n} from 'react-aria-components';\nimport {baseColor, style} from '../style' with {type: 'macro'};\nimport {centerBaseline} from './CenterBaseline';\nimport {\n checkmark,\n description,\n Divider,\n icon,\n iconCenterWrapper,\n label,\n menuitem,\n section,\n sectionHeader,\n sectionHeading\n} from './Menu';\nimport CheckmarkIcon from '../ui-icons/Checkmark';\nimport ChevronIcon from '../ui-icons/Chevron';\nimport {createContext, CSSProperties, forwardRef, ReactNode, Ref, useCallback, useContext, useImperativeHandle, useRef, useState} from 'react';\nimport {createFocusableRef} from '@react-spectrum/utils';\nimport {field, fieldInput, getAllowedOverrides, StyleProps} from './style-utils' 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 {HelpTextProps, SpectrumLabelableProps} from '@react-types/shared';\nimport {IconContext} from './Icon';\nimport {menu} from './Picker';\nimport {mergeRefs, useResizeObserver} from '@react-aria/utils';\nimport {Placement} from 'react-aria';\nimport {PopoverBase} from './Popover';\nimport {pressScale} from './pressScale';\nimport {TextFieldRef} from '@react-types/textfield';\nimport {useSpectrumContextProps} from './useSpectrumContextProps';\n\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' | 'defaultFilter' | 'allowsEmptyCollection'>,\n ComboboxStyleProps,\n StyleProps,\n SpectrumLabelableProps,\n HelpTextProps,\n Pick<ListBoxProps<T>, 'items'>,\n Pick<AriaPopoverProps, 'shouldFlip'> {\n /** The contents of the collection. */\n children: ReactNode | ((item: T) => ReactNode),\n /**\n * Direction the menu will render relative to the Picker.\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}\n\nexport const ComboBoxContext = createContext<ContextValue<Partial<ComboBoxProps<any>>, TextFieldRef>>(null);\n\nconst inputButton = style({\n display: 'flex',\n outlineStyle: 'none',\n textAlign: 'center',\n borderStyle: 'none',\n borderRadius: 'control-sm',\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: 'neutral',\n isDisabled: 'disabled',\n forcedColors: {\n default: 'ButtonFace'\n }\n }\n});\n\nconst iconStyles = style({\n flexShrink: 0,\n rotate: 90,\n '--iconPrimary': {\n type: 'fill',\n value: 'currentColor'\n }\n});\n\nlet InternalComboboxContext = createContext<{size: 'S' | 'M' | 'L' | 'XL'}>({size: 'M'});\n\nfunction ComboBox<T extends object>(props: ComboBoxProps<T>, ref: Ref<TextFieldRef>) {\n [props, ref] = useSpectrumContextProps(props, ref, ComboBoxContext);\n let inputRef = useRef<HTMLInputElement>(null);\n let domRef = useRef<HTMLDivElement>(null);\n let buttonRef = useRef<HTMLButtonElement>(null);\n let formContext = useContext(FormContext);\n props = useFormProps(props);\n let {\n direction = 'bottom',\n align = 'start',\n shouldFlip = true,\n menuWidth,\n label,\n description: descriptionMessage,\n errorMessage,\n children,\n items,\n size = 'M',\n labelPosition = 'top',\n labelAlign = 'start',\n necessityIndicator,\n UNSAFE_className = '',\n UNSAFE_style,\n ...pickerProps\n } = props;\n\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 return (\n <AriaComboBox\n {...pickerProps}\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 <>\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 // also noticed that our measurement is including the border, making the padding too much\n paddingEnd: '[calc(self(height, self(minHeight)) * 3 / 16)]'\n })({size})}>\n <InputContext.Consumer>\n {ctx => (\n <InputContext.Provider value={{...ctx, ref: mergeRefs((ctx as any)?.ref, inputRef)}}>\n <Input />\n </InputContext.Provider>\n )}\n </InputContext.Consumer>\n {isInvalid && <FieldErrorIcon isDisabled={isDisabled} />}\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 <PopoverBase\n hideArrow\n triggerRef={triggerRef}\n offset={menuOffset}\n placement={`${direction} ${align}` as Placement}\n shouldFlip={shouldFlip}\n UNSAFE_style={{\n width: menuWidth ? `${menuWidth}px` : undefined,\n // manually subtract border as we can't set Popover to border-box, it causes the contents to spill out\n '--trigger-width': `calc(${triggerWidth} - 2px)`\n } as CSSProperties}\n styles={style({\n minWidth: '[var(--trigger-width)]',\n width: '[var(--trigger-width)]'\n })}>\n <Provider\n values={[\n [HeaderContext, {styles: sectionHeader({size})}],\n [HeadingContext, {styles: sectionHeading}],\n [TextContext, {\n slots: {\n 'description': {styles: description({size})}\n }\n }]\n ]}>\n <ListBox\n items={items}\n className={menu({size})}>\n {children}\n </ListBox>\n </Provider>\n </PopoverBase>\n </InternalComboboxContext.Provider>\n </>\n )}\n </AriaComboBox>\n );\n}\n\n/**\n * ComboBox allow users to choose a single option from a collapsible list of options when space is limited.\n */\nlet _ComboBox = /*#__PURE__*/ (forwardRef as forwardRefType)(ComboBox);\nexport {_ComboBox as ComboBox};\n\n\nexport interface ComboBoxItemProps extends Omit<ListBoxItemProps, 'children' | 'style' | 'className'>, StyleProps {\n children: ReactNode\n}\n\nconst checkmarkIconSize = {\n S: 'XS',\n M: 'M',\n L: 'L',\n XL: 'XL'\n} as const;\n\nexport function ComboBoxItem(props: ComboBoxItemProps) {\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 || '') + menuitem({...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 [TextContext, {\n slots: {\n label: {styles: label({size})},\n description: {styles: description({...renderProps, size})}\n }\n }]\n ]}>\n {!isLink && <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 SectionProps<T> {}\nexport function ComboBoxSection<T extends object>(props: ComboBoxSectionProps<T>) {\n return (\n <>\n <AriaListBoxSection\n {...props}\n className={section}>\n {props.children}\n </AriaListBoxSection>\n <Divider />\n </>\n );\n}\n"],"names":[],"version":3,"file":"ComboBox.cjs.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 ListBoxSection as AriaListBoxSection,\n PopoverProps as AriaPopoverProps,\n Button,\n ContextValue,\n InputContext,\n ListBox,\n ListBoxItem,\n ListBoxItemProps,\n ListBoxProps,\n Provider,\n SectionProps\n} from 'react-aria-components';\nimport {baseColor, style} from '../style' with {type: 'macro'};\nimport {centerBaseline} from './CenterBaseline';\nimport {\n checkmark,\n description,\n Divider,\n icon,\n iconCenterWrapper,\n label,\n menuitem,\n section,\n sectionHeader,\n sectionHeading\n} from './Menu';\nimport CheckmarkIcon from '../ui-icons/Checkmark';\nimport ChevronIcon from '../ui-icons/Chevron';\nimport {createContext, CSSProperties, forwardRef, ReactNode, Ref, useCallback, useContext, useImperativeHandle, useRef, useState} from 'react';\nimport {createFocusableRef} from '@react-spectrum/utils';\nimport {field, fieldInput, getAllowedOverrides, StyleProps} from './style-utils' 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 {HelpTextProps, SpectrumLabelableProps} from '@react-types/shared';\nimport {IconContext} from './Icon';\nimport {menu} from './Picker';\nimport {mergeRefs, useResizeObserver} from '@react-aria/utils';\nimport {Placement} from 'react-aria';\nimport {PopoverBase} from './Popover';\nimport {pressScale} from './pressScale';\nimport {TextFieldRef} from '@react-types/textfield';\nimport {useSpectrumContextProps} from './useSpectrumContextProps';\n\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' | 'defaultFilter' | 'allowsEmptyCollection'>,\n ComboboxStyleProps,\n StyleProps,\n SpectrumLabelableProps,\n HelpTextProps,\n Pick<ListBoxProps<T>, 'items'>,\n Pick<AriaPopoverProps, 'shouldFlip'> {\n /** The contents of the collection. */\n children: ReactNode | ((item: T) => ReactNode),\n /**\n * Direction the menu will render relative to the Picker.\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}\n\nexport const ComboBoxContext = createContext<ContextValue<Partial<ComboBoxProps<any>>, TextFieldRef>>(null);\n\nconst inputButton = style({\n display: 'flex',\n outlineStyle: 'none',\n textAlign: 'center',\n borderStyle: 'none',\n borderRadius: 'control-sm',\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: 'neutral',\n isDisabled: 'disabled',\n forcedColors: {\n default: 'ButtonFace'\n }\n }\n});\n\nconst iconStyles = style({\n flexShrink: 0,\n rotate: 90,\n '--iconPrimary': {\n type: 'fill',\n value: 'currentColor'\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 let inputRef = useRef<HTMLInputElement>(null);\n let domRef = useRef<HTMLDivElement>(null);\n let buttonRef = useRef<HTMLButtonElement>(null);\n let formContext = useContext(FormContext);\n props = useFormProps(props);\n let {\n direction = 'bottom',\n align = 'start',\n shouldFlip = true,\n menuWidth,\n label,\n description: descriptionMessage,\n errorMessage,\n children,\n items,\n size = 'M',\n labelPosition = 'top',\n labelAlign = 'start',\n necessityIndicator,\n UNSAFE_className = '',\n UNSAFE_style,\n ...pickerProps\n } = props;\n\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 return (\n <AriaComboBox\n {...pickerProps}\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 <>\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 // also noticed that our measurement is including the border, making the padding too much\n paddingEnd: '[calc(self(height, self(minHeight)) * 3 / 16)]'\n })({size})}>\n <InputContext.Consumer>\n {ctx => (\n <InputContext.Provider value={{...ctx, ref: mergeRefs((ctx as any)?.ref, inputRef)}}>\n <Input />\n </InputContext.Provider>\n )}\n </InputContext.Consumer>\n {isInvalid && <FieldErrorIcon isDisabled={isDisabled} />}\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 <PopoverBase\n hideArrow\n triggerRef={triggerRef}\n offset={menuOffset}\n placement={`${direction} ${align}` as Placement}\n shouldFlip={shouldFlip}\n UNSAFE_style={{\n width: menuWidth ? `${menuWidth}px` : undefined,\n // manually subtract border as we can't set Popover to border-box, it causes the contents to spill out\n '--trigger-width': `calc(${triggerWidth} - 2px)`\n } as CSSProperties}\n styles={style({\n minWidth: '[var(--trigger-width)]',\n width: '[var(--trigger-width)]'\n })}>\n <Provider\n values={[\n [HeaderContext, {styles: sectionHeader({size})}],\n [HeadingContext, {styles: sectionHeading}],\n [TextContext, {\n slots: {\n 'description': {styles: description({size})}\n }\n }]\n ]}>\n <ListBox\n items={items}\n className={menu({size})}>\n {children}\n </ListBox>\n </Provider>\n </PopoverBase>\n </InternalComboboxContext.Provider>\n </>\n )}\n </AriaComboBox>\n );\n});\n\n\nexport interface ComboBoxItemProps extends Omit<ListBoxItemProps, 'children' | 'style' | 'className'>, StyleProps {\n children: ReactNode\n}\n\nconst checkmarkIconSize = {\n S: 'XS',\n M: 'M',\n L: 'L',\n XL: 'XL'\n} as const;\n\nexport function ComboBoxItem(props: ComboBoxItemProps) {\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 || '') + menuitem({...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 [TextContext, {\n slots: {\n label: {styles: label({size})},\n description: {styles: description({...renderProps, size})}\n }\n }]\n ]}>\n {!isLink && <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 SectionProps<T> {}\nexport function ComboBoxSection<T extends object>(props: ComboBoxSectionProps<T>) {\n let {size} = useContext(InternalComboboxContext);\n return (\n <>\n <AriaListBoxSection\n {...props}\n className={section({size})}>\n {props.children}\n </AriaListBoxSection>\n <Divider />\n </>\n );\n}\n"],"names":[],"version":3,"file":"ComboBox.cjs.map"}
package/dist/ComboBox.css CHANGED
@@ -1,13 +1,13 @@
1
1
  @layer _.a {
2
- ._Zd {
2
+ ._0d {
3
3
  display: flex;
4
4
  }
5
5
 
6
- ._La {
6
+ ._Ma {
7
7
  outline-style: none;
8
8
  }
9
9
 
10
- ._jb {
10
+ ._kb {
11
11
  text-align: center;
12
12
  }
13
13
 
@@ -15,27 +15,27 @@
15
15
  border-style: none;
16
16
  }
17
17
 
18
- ._vi {
18
+ ._wi {
19
19
  border-start-start-radius: .285714em;
20
20
  }
21
21
 
22
- ._wi {
22
+ ._xi {
23
23
  border-start-end-radius: .285714em;
24
24
  }
25
25
 
26
- ._xi {
26
+ ._yi {
27
27
  border-end-start-radius: .285714em;
28
28
  }
29
29
 
30
- ._yi {
30
+ ._zi {
31
31
  border-end-end-radius: .285714em;
32
32
  }
33
33
 
34
- ._1c {
34
+ ._2c {
35
35
  align-items: center;
36
36
  }
37
37
 
38
- ._2d {
38
+ ._3d {
39
39
  justify-content: center;
40
40
  }
41
41
 
@@ -75,19 +75,19 @@
75
75
  margin-inline-start: .714286em;
76
76
  }
77
77
 
78
- ._bb {
78
+ ._cb {
79
79
  aspect-ratio: 1;
80
80
  }
81
81
 
82
- ._Oa {
83
- transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter;
82
+ ._Pa {
83
+ transition-property: color, background-color, var(--gp), border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, translate, scale, rotate, filter, backdrop-filter;
84
84
  }
85
85
 
86
- ._Q-375x7f {
86
+ ._R-375x7f {
87
87
  transition-duration: .15s;
88
88
  }
89
89
 
90
- ._Ra {
90
+ ._Sa {
91
91
  transition-timing-function: cubic-bezier(.45, 0, .4, 1);
92
92
  }
93
93
 
@@ -111,7 +111,7 @@
111
111
  color: var(--lightningcss-light, #c6c6c6) var(--lightningcss-dark, #444);
112
112
  }
113
113
 
114
- ._8-3t1x {
114
+ ._9-3t1x {
115
115
  flex-shrink: 0;
116
116
  }
117
117
 
@@ -123,74 +123,74 @@
123
123
  --iconPrimary: currentColor;
124
124
  }
125
125
 
126
- ._Zf {
126
+ ._0f {
127
127
  display: grid;
128
128
  }
129
129
 
130
- .__a-3t1y {
130
+ .__b-3t1y {
131
131
  grid-column-start: 1;
132
132
  }
133
133
 
134
- .__b-7u9dhl {
134
+ .__c-yqnebx {
135
135
  grid-column-end: span 2;
136
136
  }
137
137
 
138
- .__h-375yi6 {
138
+ .__i-2wzs0i {
139
139
  grid-template-columns: 1fr;
140
140
  }
141
141
 
142
- .__h-jyg4vb {
142
+ .__i-ar5vcf {
143
143
  grid-template-columns: auto 1fr;
144
144
  }
145
145
 
146
- .__h-1cwd7ud {
146
+ .__i-1a97rzt {
147
147
  grid-template-columns: subgrid;
148
148
  }
149
149
 
150
- .__i-fdenls {
150
+ .__j-1a6w430 {
151
151
  grid-template-rows: auto 1fr auto;
152
152
  }
153
153
 
154
- .__i-jyg4vb {
154
+ .__j-ar5vcf {
155
155
  grid-template-rows: auto 1fr;
156
156
  }
157
157
 
158
- .__j-xlaqir {
158
+ .__k-1srn173 {
159
159
  grid-template-areas: "label"
160
160
  "input"
161
161
  "helptext";
162
162
  }
163
163
 
164
- .__j-5eez8j {
164
+ .__k-18h2yqz {
165
165
  grid-template-areas: "label input"
166
166
  "label helptext";
167
167
  }
168
168
 
169
- ._de {
169
+ ._ee {
170
170
  font-size: .875rem;
171
171
  }
172
172
 
173
- ._da {
173
+ ._ea {
174
174
  font-size: .6875rem;
175
175
  }
176
176
 
177
- ._dc {
177
+ ._ec {
178
178
  font-size: .75rem;
179
179
  }
180
180
 
181
- ._dg {
181
+ ._eg {
182
182
  font-size: 1rem;
183
183
  }
184
184
 
185
- ._di {
185
+ ._ei {
186
186
  font-size: 1.125rem;
187
187
  }
188
188
 
189
- ._1d {
189
+ ._2d {
190
190
  align-items: baseline;
191
191
  }
192
192
 
193
- ._fa {
193
+ ._ga {
194
194
  line-height: 1.3;
195
195
  }
196
196
 
@@ -222,23 +222,23 @@
222
222
  column-gap: .75rem;
223
223
  }
224
224
 
225
- .__R-yksgrp {
225
+ .__S-yksgrp {
226
226
  -webkit-tap-highlight-color: #0000;
227
227
  }
228
228
 
229
- .__a-4cfph1 {
229
+ .__b-g2ozi1 {
230
230
  grid-column-start: input;
231
231
  }
232
232
 
233
- .__b-4cfph1 {
233
+ .__c-g2ozi1 {
234
234
  grid-column-end: input;
235
235
  }
236
236
 
237
- .__c-4cfph1 {
237
+ .__d-g2ozi1 {
238
238
  grid-row-start: input;
239
239
  }
240
240
 
241
- .__d-4cfph1 {
241
+ .__e-g2ozi1 {
242
242
  grid-row-end: input;
243
243
  }
244
244
 
@@ -262,7 +262,7 @@
262
262
  min-width: calc(3rem * var(--s2-scale));
263
263
  }
264
264
 
265
- .__ma {
265
+ .__na {
266
266
  contain: none;
267
267
  }
268
268
 
@@ -312,40 +312,38 @@
312
312
  }
313
313
 
314
314
  @layer _.b {
315
- ._f-1x99dlob:is(:lang(ja), :lang(ko), :lang(zh), :lang(zh-Hant), :lang(zh-Hans)) {
315
+ ._g-1x99dlob:is(:lang(ja), :lang(ko), :lang(zh), :lang(zh-Hant), :lang(zh-Hans)) {
316
316
  line-height: 1.5;
317
317
  }
318
318
  }
319
319
 
320
- @layer UNSAFE_overrides;
321
-
322
320
  @layer _.b.a {
323
321
  @media (forced-colors: active) {
324
- ._Oag {
322
+ ._Pag {
325
323
  transition-property: none;
326
324
  }
327
325
 
328
- ._Qa-375x7f {
326
+ ._Ra-375x7f {
329
327
  transition-duration: .15s;
330
328
  }
331
329
 
332
- ._Raa {
330
+ ._Saa {
333
331
  transition-timing-function: cubic-bezier(.45, 0, .4, 1);
334
332
  }
335
333
 
336
- .ba_____x {
334
+ .ba_____K {
337
335
  background-color: buttontext;
338
336
  }
339
337
 
340
- .ba_____z {
338
+ .ba_____M {
341
339
  background-color: highlight;
342
340
  }
343
341
 
344
- .ba_____B {
342
+ .ba_____O {
345
343
  background-color: graytext;
346
344
  }
347
345
 
348
- .aa_____w {
346
+ .aa_____J {
349
347
  color: buttonface;
350
348
  }
351
349
  }
@@ -353,23 +351,23 @@
353
351
 
354
352
  @layer _.b.b {
355
353
  @media not ((hover: hover) and (pointer: fine)) {
356
- ._dbf {
354
+ ._ebf {
357
355
  font-size: 1.0625rem;
358
356
  }
359
357
 
360
- ._dbb {
358
+ ._ebb {
361
359
  font-size: .8125rem;
362
360
  }
363
361
 
364
- ._dbd {
362
+ ._ebd {
365
363
  font-size: .9375rem;
366
364
  }
367
365
 
368
- ._dbh {
366
+ ._ebh {
369
367
  font-size: 1.1875rem;
370
368
  }
371
369
 
372
- ._dbj {
370
+ ._ebj {
373
371
  font-size: 1.375rem;
374
372
  }
375
373
  }
@@ -377,13 +375,9 @@
377
375
 
378
376
  @layer _.b.-_1s8glxu {
379
377
  @supports (contain-intrinsic-width: 1px) {
380
- .__m-1s8glxue {
378
+ .__n-1s8glxue {
381
379
  contain: inline-size;
382
380
  }
383
381
  }
384
382
  }
385
-
386
- .\.:not(#a#b) {
387
- all: revert-layer;
388
- }
389
383
  /*# sourceMappingURL=ComboBox.css.map */
@@ -1 +1 @@
1
- {"mappings":"ACiGoB;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EA2CD;;;;EAAA;;;;EAAA;;;;EAmFiB;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;;;EAAA;;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAwBd;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAkDA;;;;EAAA;;;;;AAxMF;EA8HgB;;;;;AA9HhB;;AAAA;EAAA;IAAA;;;;IAAA;;;;IAAA;;;;IAAA;;;;IAAA;;;;IAAA;;;;IAAA;;;;;;AA8HgB;EAAA;IAAA;;;;IAAA;;;;IAAA;;;;IAAA;;;;IAAA;;;;;;AAwBd;EAAA;IAAA;;;;;;AAkDA","sources":["13beeca66baffd35","packages/@react-spectrum/s2/src/ComboBox.tsx"],"sourcesContent":["@import \"434b6dc809c84a70\";\n@import \"9807be49da09aafb\";\n@import \"affe2b90434aec6a\";\n@import \"96ebc07fe89537d3\";\n@import \"85ea669da1afabc2\";\n","/*\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 ListBoxSection as AriaListBoxSection,\n PopoverProps as AriaPopoverProps,\n Button,\n ContextValue,\n InputContext,\n ListBox,\n ListBoxItem,\n ListBoxItemProps,\n ListBoxProps,\n Provider,\n SectionProps\n} from 'react-aria-components';\nimport {baseColor, style} from '../style' with {type: 'macro'};\nimport {centerBaseline} from './CenterBaseline';\nimport {\n checkmark,\n description,\n Divider,\n icon,\n iconCenterWrapper,\n label,\n menuitem,\n section,\n sectionHeader,\n sectionHeading\n} from './Menu';\nimport CheckmarkIcon from '../ui-icons/Checkmark';\nimport ChevronIcon from '../ui-icons/Chevron';\nimport {createContext, CSSProperties, forwardRef, ReactNode, Ref, useCallback, useContext, useImperativeHandle, useRef, useState} from 'react';\nimport {createFocusableRef} from '@react-spectrum/utils';\nimport {field, fieldInput, getAllowedOverrides, StyleProps} from './style-utils' 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 {HelpTextProps, SpectrumLabelableProps} from '@react-types/shared';\nimport {IconContext} from './Icon';\nimport {menu} from './Picker';\nimport {mergeRefs, useResizeObserver} from '@react-aria/utils';\nimport {Placement} from 'react-aria';\nimport {PopoverBase} from './Popover';\nimport {pressScale} from './pressScale';\nimport {TextFieldRef} from '@react-types/textfield';\nimport {useSpectrumContextProps} from './useSpectrumContextProps';\n\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' | 'defaultFilter' | 'allowsEmptyCollection'>,\n ComboboxStyleProps,\n StyleProps,\n SpectrumLabelableProps,\n HelpTextProps,\n Pick<ListBoxProps<T>, 'items'>,\n Pick<AriaPopoverProps, 'shouldFlip'> {\n /** The contents of the collection. */\n children: ReactNode | ((item: T) => ReactNode),\n /**\n * Direction the menu will render relative to the Picker.\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}\n\nexport const ComboBoxContext = createContext<ContextValue<Partial<ComboBoxProps<any>>, TextFieldRef>>(null);\n\nconst inputButton = style({\n display: 'flex',\n outlineStyle: 'none',\n textAlign: 'center',\n borderStyle: 'none',\n borderRadius: 'control-sm',\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: 'neutral',\n isDisabled: 'disabled',\n forcedColors: {\n default: 'ButtonFace'\n }\n }\n});\n\nconst iconStyles = style({\n flexShrink: 0,\n rotate: 90,\n '--iconPrimary': {\n type: 'fill',\n value: 'currentColor'\n }\n});\n\nlet InternalComboboxContext = createContext<{size: 'S' | 'M' | 'L' | 'XL'}>({size: 'M'});\n\nfunction ComboBox<T extends object>(props: ComboBoxProps<T>, ref: Ref<TextFieldRef>) {\n [props, ref] = useSpectrumContextProps(props, ref, ComboBoxContext);\n let inputRef = useRef<HTMLInputElement>(null);\n let domRef = useRef<HTMLDivElement>(null);\n let buttonRef = useRef<HTMLButtonElement>(null);\n let formContext = useContext(FormContext);\n props = useFormProps(props);\n let {\n direction = 'bottom',\n align = 'start',\n shouldFlip = true,\n menuWidth,\n label,\n description: descriptionMessage,\n errorMessage,\n children,\n items,\n size = 'M',\n labelPosition = 'top',\n labelAlign = 'start',\n necessityIndicator,\n UNSAFE_className = '',\n UNSAFE_style,\n ...pickerProps\n } = props;\n\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 return (\n <AriaComboBox\n {...pickerProps}\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 <>\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 // also noticed that our measurement is including the border, making the padding too much\n paddingEnd: '[calc(self(height, self(minHeight)) * 3 / 16)]'\n })({size})}>\n <InputContext.Consumer>\n {ctx => (\n <InputContext.Provider value={{...ctx, ref: mergeRefs((ctx as any)?.ref, inputRef)}}>\n <Input />\n </InputContext.Provider>\n )}\n </InputContext.Consumer>\n {isInvalid && <FieldErrorIcon isDisabled={isDisabled} />}\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 <PopoverBase\n hideArrow\n triggerRef={triggerRef}\n offset={menuOffset}\n placement={`${direction} ${align}` as Placement}\n shouldFlip={shouldFlip}\n UNSAFE_style={{\n width: menuWidth ? `${menuWidth}px` : undefined,\n // manually subtract border as we can't set Popover to border-box, it causes the contents to spill out\n '--trigger-width': `calc(${triggerWidth} - 2px)`\n } as CSSProperties}\n styles={style({\n minWidth: '[var(--trigger-width)]',\n width: '[var(--trigger-width)]'\n })}>\n <Provider\n values={[\n [HeaderContext, {styles: sectionHeader({size})}],\n [HeadingContext, {styles: sectionHeading}],\n [TextContext, {\n slots: {\n 'description': {styles: description({size})}\n }\n }]\n ]}>\n <ListBox\n items={items}\n className={menu({size})}>\n {children}\n </ListBox>\n </Provider>\n </PopoverBase>\n </InternalComboboxContext.Provider>\n </>\n )}\n </AriaComboBox>\n );\n}\n\n/**\n * ComboBox allow users to choose a single option from a collapsible list of options when space is limited.\n */\nlet _ComboBox = /*#__PURE__*/ (forwardRef as forwardRefType)(ComboBox);\nexport {_ComboBox as ComboBox};\n\n\nexport interface ComboBoxItemProps extends Omit<ListBoxItemProps, 'children' | 'style' | 'className'>, StyleProps {\n children: ReactNode\n}\n\nconst checkmarkIconSize = {\n S: 'XS',\n M: 'M',\n L: 'L',\n XL: 'XL'\n} as const;\n\nexport function ComboBoxItem(props: ComboBoxItemProps) {\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 || '') + menuitem({...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 [TextContext, {\n slots: {\n label: {styles: label({size})},\n description: {styles: description({...renderProps, size})}\n }\n }]\n ]}>\n {!isLink && <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 SectionProps<T> {}\nexport function ComboBoxSection<T extends object>(props: ComboBoxSectionProps<T>) {\n return (\n <>\n <AriaListBoxSection\n {...props}\n className={section}>\n {props.children}\n </AriaListBoxSection>\n <Divider />\n </>\n );\n}\n"],"names":[],"version":3,"file":"ComboBox.css.map"}
1
+ {"mappings":"ACiGoB;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EA2CD;;;;EAAA;;;;EAAA;;;;EAsFiB;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;;;EAAA;;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAwBd;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAkDA;;;;EAAA;;;;;AA3MF;EAiIgB;;;;;AAjIhB;EAAA;IAAA;;;;IAAA;;;;IAAA;;;;IAAA;;;;IAAA;;;;IAAA;;;;IAAA;;;;;;AAiIgB;EAAA;IAAA;;;;IAAA;;;;IAAA;;;;IAAA;;;;IAAA;;;;;;AAwBd;EAAA;IAAA","sources":["13beeca66baffd35","packages/@react-spectrum/s2/src/ComboBox.tsx"],"sourcesContent":["@import \"434b6dc809c84a70\";\n@import \"9807be49da09aafb\";\n@import \"affe2b90434aec6a\";\n@import \"96ebc07fe89537d3\";\n@import \"85ea669da1afabc2\";\n","/*\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 ListBoxSection as AriaListBoxSection,\n PopoverProps as AriaPopoverProps,\n Button,\n ContextValue,\n InputContext,\n ListBox,\n ListBoxItem,\n ListBoxItemProps,\n ListBoxProps,\n Provider,\n SectionProps\n} from 'react-aria-components';\nimport {baseColor, style} from '../style' with {type: 'macro'};\nimport {centerBaseline} from './CenterBaseline';\nimport {\n checkmark,\n description,\n Divider,\n icon,\n iconCenterWrapper,\n label,\n menuitem,\n section,\n sectionHeader,\n sectionHeading\n} from './Menu';\nimport CheckmarkIcon from '../ui-icons/Checkmark';\nimport ChevronIcon from '../ui-icons/Chevron';\nimport {createContext, CSSProperties, forwardRef, ReactNode, Ref, useCallback, useContext, useImperativeHandle, useRef, useState} from 'react';\nimport {createFocusableRef} from '@react-spectrum/utils';\nimport {field, fieldInput, getAllowedOverrides, StyleProps} from './style-utils' 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 {HelpTextProps, SpectrumLabelableProps} from '@react-types/shared';\nimport {IconContext} from './Icon';\nimport {menu} from './Picker';\nimport {mergeRefs, useResizeObserver} from '@react-aria/utils';\nimport {Placement} from 'react-aria';\nimport {PopoverBase} from './Popover';\nimport {pressScale} from './pressScale';\nimport {TextFieldRef} from '@react-types/textfield';\nimport {useSpectrumContextProps} from './useSpectrumContextProps';\n\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' | 'defaultFilter' | 'allowsEmptyCollection'>,\n ComboboxStyleProps,\n StyleProps,\n SpectrumLabelableProps,\n HelpTextProps,\n Pick<ListBoxProps<T>, 'items'>,\n Pick<AriaPopoverProps, 'shouldFlip'> {\n /** The contents of the collection. */\n children: ReactNode | ((item: T) => ReactNode),\n /**\n * Direction the menu will render relative to the Picker.\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}\n\nexport const ComboBoxContext = createContext<ContextValue<Partial<ComboBoxProps<any>>, TextFieldRef>>(null);\n\nconst inputButton = style({\n display: 'flex',\n outlineStyle: 'none',\n textAlign: 'center',\n borderStyle: 'none',\n borderRadius: 'control-sm',\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: 'neutral',\n isDisabled: 'disabled',\n forcedColors: {\n default: 'ButtonFace'\n }\n }\n});\n\nconst iconStyles = style({\n flexShrink: 0,\n rotate: 90,\n '--iconPrimary': {\n type: 'fill',\n value: 'currentColor'\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 let inputRef = useRef<HTMLInputElement>(null);\n let domRef = useRef<HTMLDivElement>(null);\n let buttonRef = useRef<HTMLButtonElement>(null);\n let formContext = useContext(FormContext);\n props = useFormProps(props);\n let {\n direction = 'bottom',\n align = 'start',\n shouldFlip = true,\n menuWidth,\n label,\n description: descriptionMessage,\n errorMessage,\n children,\n items,\n size = 'M',\n labelPosition = 'top',\n labelAlign = 'start',\n necessityIndicator,\n UNSAFE_className = '',\n UNSAFE_style,\n ...pickerProps\n } = props;\n\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 return (\n <AriaComboBox\n {...pickerProps}\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 <>\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 // also noticed that our measurement is including the border, making the padding too much\n paddingEnd: '[calc(self(height, self(minHeight)) * 3 / 16)]'\n })({size})}>\n <InputContext.Consumer>\n {ctx => (\n <InputContext.Provider value={{...ctx, ref: mergeRefs((ctx as any)?.ref, inputRef)}}>\n <Input />\n </InputContext.Provider>\n )}\n </InputContext.Consumer>\n {isInvalid && <FieldErrorIcon isDisabled={isDisabled} />}\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 <PopoverBase\n hideArrow\n triggerRef={triggerRef}\n offset={menuOffset}\n placement={`${direction} ${align}` as Placement}\n shouldFlip={shouldFlip}\n UNSAFE_style={{\n width: menuWidth ? `${menuWidth}px` : undefined,\n // manually subtract border as we can't set Popover to border-box, it causes the contents to spill out\n '--trigger-width': `calc(${triggerWidth} - 2px)`\n } as CSSProperties}\n styles={style({\n minWidth: '[var(--trigger-width)]',\n width: '[var(--trigger-width)]'\n })}>\n <Provider\n values={[\n [HeaderContext, {styles: sectionHeader({size})}],\n [HeadingContext, {styles: sectionHeading}],\n [TextContext, {\n slots: {\n 'description': {styles: description({size})}\n }\n }]\n ]}>\n <ListBox\n items={items}\n className={menu({size})}>\n {children}\n </ListBox>\n </Provider>\n </PopoverBase>\n </InternalComboboxContext.Provider>\n </>\n )}\n </AriaComboBox>\n );\n});\n\n\nexport interface ComboBoxItemProps extends Omit<ListBoxItemProps, 'children' | 'style' | 'className'>, StyleProps {\n children: ReactNode\n}\n\nconst checkmarkIconSize = {\n S: 'XS',\n M: 'M',\n L: 'L',\n XL: 'XL'\n} as const;\n\nexport function ComboBoxItem(props: ComboBoxItemProps) {\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 || '') + menuitem({...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 [TextContext, {\n slots: {\n label: {styles: label({size})},\n description: {styles: description({...renderProps, size})}\n }\n }]\n ]}>\n {!isLink && <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 SectionProps<T> {}\nexport function ComboBoxSection<T extends object>(props: ComboBoxSectionProps<T>) {\n let {size} = useContext(InternalComboboxContext);\n return (\n <>\n <AriaListBoxSection\n {...props}\n className={section({size})}>\n {props.children}\n </AriaListBoxSection>\n <Divider />\n </>\n );\n}\n"],"names":[],"version":3,"file":"ComboBox.css.map"}