@react-spectrum/s2 3.0.0-nightly-4b8b33a02-250211 → 3.0.0-nightly-260eb700f-250213

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 (422) hide show
  1. package/dist/Accordion.cjs +3 -3
  2. package/dist/Accordion.cjs.map +1 -1
  3. package/dist/Accordion.css +2 -2
  4. package/dist/Accordion.css.map +1 -1
  5. package/dist/Accordion.mjs +3 -3
  6. package/dist/Accordion.mjs.map +1 -1
  7. package/dist/ActionBar.cjs +47 -47
  8. package/dist/ActionBar.css +51 -51
  9. package/dist/ActionBar.mjs +47 -47
  10. package/dist/ActionButton.cjs +97 -97
  11. package/dist/ActionButton.cjs.map +1 -1
  12. package/dist/ActionButton.css +96 -96
  13. package/dist/ActionButton.css.map +1 -1
  14. package/dist/ActionButton.mjs +97 -97
  15. package/dist/ActionButton.mjs.map +1 -1
  16. package/dist/ActionButtonGroup.cjs +11 -11
  17. package/dist/ActionButtonGroup.css +9 -9
  18. package/dist/ActionButtonGroup.mjs +11 -11
  19. package/dist/ActionMenu.cjs.map +1 -1
  20. package/dist/ActionMenu.mjs.map +1 -1
  21. package/dist/AlertDialog.cjs +3 -3
  22. package/dist/AlertDialog.css +3 -3
  23. package/dist/AlertDialog.mjs +3 -3
  24. package/dist/Avatar.cjs +17 -17
  25. package/dist/Avatar.cjs.map +1 -1
  26. package/dist/Avatar.css +14 -14
  27. package/dist/Avatar.css.map +1 -1
  28. package/dist/Avatar.mjs +17 -17
  29. package/dist/Avatar.mjs.map +1 -1
  30. package/dist/AvatarGroup.cjs +100 -100
  31. package/dist/AvatarGroup.cjs.map +1 -1
  32. package/dist/AvatarGroup.css +34 -34
  33. package/dist/AvatarGroup.css.map +1 -1
  34. package/dist/AvatarGroup.mjs +100 -100
  35. package/dist/AvatarGroup.mjs.map +1 -1
  36. package/dist/Badge.cjs +68 -92
  37. package/dist/Badge.cjs.map +1 -1
  38. package/dist/Badge.css +92 -164
  39. package/dist/Badge.css.map +1 -1
  40. package/dist/Badge.mjs +68 -92
  41. package/dist/Badge.mjs.map +1 -1
  42. package/dist/Breadcrumbs.cjs +115 -115
  43. package/dist/Breadcrumbs.cjs.map +1 -1
  44. package/dist/Breadcrumbs.css +89 -89
  45. package/dist/Breadcrumbs.css.map +1 -1
  46. package/dist/Breadcrumbs.mjs +115 -115
  47. package/dist/Breadcrumbs.mjs.map +1 -1
  48. package/dist/Button.cjs +152 -236
  49. package/dist/Button.cjs.map +1 -1
  50. package/dist/Button.css +165 -309
  51. package/dist/Button.css.map +1 -1
  52. package/dist/Button.mjs +152 -236
  53. package/dist/Button.mjs.map +1 -1
  54. package/dist/ButtonGroup.cjs +19 -19
  55. package/dist/ButtonGroup.cjs.map +1 -1
  56. package/dist/ButtonGroup.css +15 -15
  57. package/dist/ButtonGroup.css.map +1 -1
  58. package/dist/ButtonGroup.mjs +19 -19
  59. package/dist/ButtonGroup.mjs.map +1 -1
  60. package/dist/Card.cjs +261 -264
  61. package/dist/Card.cjs.map +1 -1
  62. package/dist/Card.css +198 -210
  63. package/dist/Card.css.map +1 -1
  64. package/dist/Card.mjs +261 -264
  65. package/dist/Card.mjs.map +1 -1
  66. package/dist/CardView.cjs +15 -15
  67. package/dist/CardView.cjs.map +1 -1
  68. package/dist/CardView.css +18 -18
  69. package/dist/CardView.css.map +1 -1
  70. package/dist/CardView.mjs +15 -15
  71. package/dist/CardView.mjs.map +1 -1
  72. package/dist/CenterBaseline.cjs +1 -1
  73. package/dist/CenterBaseline.css +2 -2
  74. package/dist/CenterBaseline.mjs +1 -1
  75. package/dist/Checkbox.cjs +73 -124
  76. package/dist/Checkbox.cjs.map +1 -1
  77. package/dist/Checkbox.css +81 -201
  78. package/dist/Checkbox.css.map +1 -1
  79. package/dist/Checkbox.mjs +73 -124
  80. package/dist/Checkbox.mjs.map +1 -1
  81. package/dist/CheckboxGroup.cjs +49 -49
  82. package/dist/CheckboxGroup.cjs.map +1 -1
  83. package/dist/CheckboxGroup.css +41 -41
  84. package/dist/CheckboxGroup.css.map +1 -1
  85. package/dist/CheckboxGroup.mjs +49 -49
  86. package/dist/CheckboxGroup.mjs.map +1 -1
  87. package/dist/ClearButton.cjs +15 -15
  88. package/dist/ClearButton.css +17 -17
  89. package/dist/ClearButton.mjs +15 -15
  90. package/dist/CloseButton.cjs +35 -35
  91. package/dist/CloseButton.cjs.map +1 -1
  92. package/dist/CloseButton.css +33 -33
  93. package/dist/CloseButton.css.map +1 -1
  94. package/dist/CloseButton.mjs +35 -35
  95. package/dist/CloseButton.mjs.map +1 -1
  96. package/dist/ColorArea.cjs +22 -22
  97. package/dist/ColorArea.cjs.map +1 -1
  98. package/dist/ColorArea.css +15 -15
  99. package/dist/ColorArea.css.map +1 -1
  100. package/dist/ColorArea.mjs +22 -22
  101. package/dist/ColorArea.mjs.map +1 -1
  102. package/dist/ColorField.cjs +38 -38
  103. package/dist/ColorField.cjs.map +1 -1
  104. package/dist/ColorField.css +32 -32
  105. package/dist/ColorField.css.map +1 -1
  106. package/dist/ColorField.mjs +38 -38
  107. package/dist/ColorField.mjs.map +1 -1
  108. package/dist/ColorHandle.cjs +21 -27
  109. package/dist/ColorHandle.cjs.map +1 -1
  110. package/dist/ColorHandle.css +45 -93
  111. package/dist/ColorHandle.css.map +1 -1
  112. package/dist/ColorHandle.mjs +21 -27
  113. package/dist/ColorHandle.mjs.map +1 -1
  114. package/dist/ColorSlider.cjs +52 -52
  115. package/dist/ColorSlider.cjs.map +1 -1
  116. package/dist/ColorSlider.css +51 -51
  117. package/dist/ColorSlider.css.map +1 -1
  118. package/dist/ColorSlider.mjs +52 -52
  119. package/dist/ColorSlider.mjs.map +1 -1
  120. package/dist/ColorSwatch.cjs +24 -27
  121. package/dist/ColorSwatch.cjs.map +1 -1
  122. package/dist/ColorSwatch.css +29 -41
  123. package/dist/ColorSwatch.css.map +1 -1
  124. package/dist/ColorSwatch.mjs +24 -27
  125. package/dist/ColorSwatch.mjs.map +1 -1
  126. package/dist/ColorSwatchPicker.cjs +23 -23
  127. package/dist/ColorSwatchPicker.css +48 -60
  128. package/dist/ColorSwatchPicker.css.map +1 -1
  129. package/dist/ColorSwatchPicker.mjs +23 -23
  130. package/dist/ColorWheel.cjs +22 -22
  131. package/dist/ColorWheel.cjs.map +1 -1
  132. package/dist/ColorWheel.css +16 -16
  133. package/dist/ColorWheel.css.map +1 -1
  134. package/dist/ColorWheel.mjs +22 -22
  135. package/dist/ColorWheel.mjs.map +1 -1
  136. package/dist/ComboBox.cjs +80 -80
  137. package/dist/ComboBox.css +88 -88
  138. package/dist/ComboBox.mjs +80 -80
  139. package/dist/Content.cjs.map +1 -1
  140. package/dist/Content.mjs.map +1 -1
  141. package/dist/ContextualHelp.cjs +5 -5
  142. package/dist/ContextualHelp.cjs.map +1 -1
  143. package/dist/ContextualHelp.css +38 -38
  144. package/dist/ContextualHelp.css.map +1 -1
  145. package/dist/ContextualHelp.mjs +5 -5
  146. package/dist/ContextualHelp.mjs.map +1 -1
  147. package/dist/CustomDialog.cjs +31 -31
  148. package/dist/CustomDialog.css +25 -25
  149. package/dist/CustomDialog.mjs +31 -31
  150. package/dist/Dialog.cjs +17 -17
  151. package/dist/Dialog.css +64 -64
  152. package/dist/Dialog.mjs +17 -17
  153. package/dist/Disclosure.cjs +108 -111
  154. package/dist/Disclosure.cjs.map +1 -1
  155. package/dist/Disclosure.css +112 -124
  156. package/dist/Disclosure.css.map +1 -1
  157. package/dist/Disclosure.mjs +108 -111
  158. package/dist/Disclosure.mjs.map +1 -1
  159. package/dist/Divider.cjs +26 -26
  160. package/dist/Divider.cjs.map +1 -1
  161. package/dist/Divider.css +16 -16
  162. package/dist/Divider.css.map +1 -1
  163. package/dist/Divider.mjs +26 -26
  164. package/dist/Divider.mjs.map +1 -1
  165. package/dist/DropZone.cjs +47 -56
  166. package/dist/DropZone.cjs.map +1 -1
  167. package/dist/DropZone.css +56 -80
  168. package/dist/DropZone.css.map +1 -1
  169. package/dist/DropZone.mjs +47 -56
  170. package/dist/DropZone.mjs.map +1 -1
  171. package/dist/Field.cjs +150 -204
  172. package/dist/Field.cjs.map +1 -1
  173. package/dist/Field.css +150 -246
  174. package/dist/Field.css.map +1 -1
  175. package/dist/Field.mjs +150 -204
  176. package/dist/Field.mjs.map +1 -1
  177. package/dist/Form.cjs +10 -10
  178. package/dist/Form.cjs.map +1 -1
  179. package/dist/Form.css +9 -9
  180. package/dist/Form.css.map +1 -1
  181. package/dist/Form.mjs +10 -10
  182. package/dist/Form.mjs.map +1 -1
  183. package/dist/FullscreenDialog.cjs +5 -5
  184. package/dist/FullscreenDialog.css +72 -72
  185. package/dist/FullscreenDialog.mjs +5 -5
  186. package/dist/IllustratedMessage.cjs +134 -134
  187. package/dist/IllustratedMessage.cjs.map +1 -1
  188. package/dist/IllustratedMessage.css +69 -69
  189. package/dist/IllustratedMessage.css.map +1 -1
  190. package/dist/IllustratedMessage.mjs +134 -134
  191. package/dist/IllustratedMessage.mjs.map +1 -1
  192. package/dist/Image.cjs +12 -12
  193. package/dist/Image.cjs.map +1 -1
  194. package/dist/Image.css +13 -13
  195. package/dist/Image.css.map +1 -1
  196. package/dist/Image.mjs +12 -12
  197. package/dist/Image.mjs.map +1 -1
  198. package/dist/InlineAlert.cjs +77 -104
  199. package/dist/InlineAlert.cjs.map +1 -1
  200. package/dist/InlineAlert.css +77 -149
  201. package/dist/InlineAlert.css.map +1 -1
  202. package/dist/InlineAlert.mjs +77 -104
  203. package/dist/InlineAlert.mjs.map +1 -1
  204. package/dist/Link.cjs +31 -31
  205. package/dist/Link.cjs.map +1 -1
  206. package/dist/Link.css +30 -30
  207. package/dist/Link.css.map +1 -1
  208. package/dist/Link.mjs +31 -31
  209. package/dist/Link.mjs.map +1 -1
  210. package/dist/Menu.cjs +269 -268
  211. package/dist/Menu.cjs.map +1 -1
  212. package/dist/Menu.css +158 -154
  213. package/dist/Menu.css.map +1 -1
  214. package/dist/Menu.mjs +269 -268
  215. package/dist/Menu.mjs.map +1 -1
  216. package/dist/Meter.cjs +85 -85
  217. package/dist/Meter.cjs.map +1 -1
  218. package/dist/Meter.css +81 -81
  219. package/dist/Meter.css.map +1 -1
  220. package/dist/Meter.mjs +85 -85
  221. package/dist/Meter.mjs.map +1 -1
  222. package/dist/Modal.cjs +48 -48
  223. package/dist/Modal.css +46 -46
  224. package/dist/Modal.mjs +48 -48
  225. package/dist/NumberField.cjs +115 -115
  226. package/dist/NumberField.cjs.map +1 -1
  227. package/dist/NumberField.css +114 -114
  228. package/dist/NumberField.css.map +1 -1
  229. package/dist/NumberField.mjs +115 -115
  230. package/dist/NumberField.mjs.map +1 -1
  231. package/dist/Picker.cjs +177 -194
  232. package/dist/Picker.cjs.map +1 -1
  233. package/dist/Picker.css +167 -223
  234. package/dist/Picker.css.map +1 -1
  235. package/dist/Picker.mjs +177 -194
  236. package/dist/Picker.mjs.map +1 -1
  237. package/dist/Popover.cjs +79 -85
  238. package/dist/Popover.cjs.map +1 -1
  239. package/dist/Popover.css +65 -89
  240. package/dist/Popover.css.map +1 -1
  241. package/dist/Popover.mjs +79 -85
  242. package/dist/Popover.mjs.map +1 -1
  243. package/dist/ProgressBar.cjs +98 -98
  244. package/dist/ProgressBar.cjs.map +1 -1
  245. package/dist/ProgressBar.css +92 -92
  246. package/dist/ProgressBar.css.map +1 -1
  247. package/dist/ProgressBar.mjs +98 -98
  248. package/dist/ProgressBar.mjs.map +1 -1
  249. package/dist/ProgressCircle.cjs +17 -17
  250. package/dist/ProgressCircle.cjs.map +1 -1
  251. package/dist/ProgressCircle.css +15 -15
  252. package/dist/ProgressCircle.css.map +1 -1
  253. package/dist/ProgressCircle.mjs +17 -17
  254. package/dist/ProgressCircle.mjs.map +1 -1
  255. package/dist/Provider.cjs +4 -4
  256. package/dist/Provider.css +5 -5
  257. package/dist/Provider.mjs +4 -4
  258. package/dist/Radio.cjs +80 -152
  259. package/dist/Radio.cjs.map +1 -1
  260. package/dist/Radio.css +96 -240
  261. package/dist/Radio.css.map +1 -1
  262. package/dist/Radio.mjs +80 -152
  263. package/dist/Radio.mjs.map +1 -1
  264. package/dist/RadioGroup.cjs +47 -47
  265. package/dist/RadioGroup.cjs.map +1 -1
  266. package/dist/RadioGroup.css +41 -41
  267. package/dist/RadioGroup.css.map +1 -1
  268. package/dist/RadioGroup.mjs +47 -47
  269. package/dist/RadioGroup.mjs.map +1 -1
  270. package/dist/RangeSlider.cjs.map +1 -1
  271. package/dist/RangeSlider.mjs.map +1 -1
  272. package/dist/SearchField.cjs +42 -42
  273. package/dist/SearchField.cjs.map +1 -1
  274. package/dist/SearchField.css +47 -47
  275. package/dist/SearchField.css.map +1 -1
  276. package/dist/SearchField.mjs +42 -42
  277. package/dist/SearchField.mjs.map +1 -1
  278. package/dist/SegmentedControl.cjs +89 -101
  279. package/dist/SegmentedControl.cjs.map +1 -1
  280. package/dist/SegmentedControl.css +92 -140
  281. package/dist/SegmentedControl.css.map +1 -1
  282. package/dist/SegmentedControl.mjs +89 -101
  283. package/dist/SegmentedControl.mjs.map +1 -1
  284. package/dist/Slider.cjs +196 -229
  285. package/dist/Slider.cjs.map +1 -1
  286. package/dist/Slider.css +149 -221
  287. package/dist/Slider.css.map +1 -1
  288. package/dist/Slider.mjs +196 -229
  289. package/dist/Slider.mjs.map +1 -1
  290. package/dist/StatusLight.cjs +56 -56
  291. package/dist/StatusLight.cjs.map +1 -1
  292. package/dist/StatusLight.css +59 -59
  293. package/dist/StatusLight.css.map +1 -1
  294. package/dist/StatusLight.mjs +56 -56
  295. package/dist/StatusLight.mjs.map +1 -1
  296. package/dist/Switch.cjs +74 -107
  297. package/dist/Switch.cjs.map +1 -1
  298. package/dist/Switch.css +69 -141
  299. package/dist/Switch.css.map +1 -1
  300. package/dist/Switch.mjs +74 -107
  301. package/dist/Switch.mjs.map +1 -1
  302. package/dist/TableView.cjs +253 -280
  303. package/dist/TableView.cjs.map +1 -1
  304. package/dist/TableView.css +163 -199
  305. package/dist/TableView.css.map +1 -1
  306. package/dist/TableView.mjs +253 -280
  307. package/dist/TableView.mjs.map +1 -1
  308. package/dist/Tabs.cjs +112 -124
  309. package/dist/Tabs.cjs.map +1 -1
  310. package/dist/Tabs.css +84 -108
  311. package/dist/Tabs.css.map +1 -1
  312. package/dist/Tabs.mjs +112 -124
  313. package/dist/Tabs.mjs.map +1 -1
  314. package/dist/TabsPicker.cjs +105 -105
  315. package/dist/TabsPicker.css +111 -111
  316. package/dist/TabsPicker.mjs +105 -105
  317. package/dist/TagGroup.cjs +148 -148
  318. package/dist/TagGroup.cjs.map +1 -1
  319. package/dist/TagGroup.css +134 -134
  320. package/dist/TagGroup.css.map +1 -1
  321. package/dist/TagGroup.mjs +148 -148
  322. package/dist/TagGroup.mjs.map +1 -1
  323. package/dist/TextField.cjs +59 -59
  324. package/dist/TextField.cjs.map +1 -1
  325. package/dist/TextField.css +62 -62
  326. package/dist/TextField.css.map +1 -1
  327. package/dist/TextField.mjs +59 -59
  328. package/dist/TextField.mjs.map +1 -1
  329. package/dist/ToggleButton.cjs +3 -3
  330. package/dist/ToggleButton.cjs.map +1 -1
  331. package/dist/ToggleButton.css +12 -12
  332. package/dist/ToggleButton.css.map +1 -1
  333. package/dist/ToggleButton.mjs +3 -3
  334. package/dist/ToggleButton.mjs.map +1 -1
  335. package/dist/ToggleButtonGroup.cjs.map +1 -1
  336. package/dist/ToggleButtonGroup.mjs.map +1 -1
  337. package/dist/Tooltip.cjs +57 -60
  338. package/dist/Tooltip.cjs.map +1 -1
  339. package/dist/Tooltip.css +71 -83
  340. package/dist/Tooltip.css.map +1 -1
  341. package/dist/Tooltip.mjs +57 -60
  342. package/dist/Tooltip.mjs.map +1 -1
  343. package/dist/TreeView.cjs +217 -244
  344. package/dist/TreeView.cjs.map +1 -1
  345. package/dist/TreeView.css +166 -190
  346. package/dist/TreeView.css.map +1 -1
  347. package/dist/TreeView.mjs +220 -244
  348. package/dist/TreeView.mjs.map +1 -1
  349. package/dist/main.cjs +1 -0
  350. package/dist/main.cjs.map +1 -1
  351. package/dist/module.mjs +2 -2
  352. package/dist/module.mjs.map +1 -1
  353. package/dist/types.d.ts +77 -72
  354. package/dist/types.d.ts.map +1 -1
  355. package/icons/Icon.cjs.map +1 -1
  356. package/icons/Icon.mjs.map +1 -1
  357. package/icons/Skeleton.cjs +2 -2
  358. package/icons/Skeleton.cjs.map +1 -1
  359. package/icons/Skeleton.css +5 -5
  360. package/icons/Skeleton.css.map +1 -1
  361. package/icons/Skeleton.mjs +2 -2
  362. package/icons/Skeleton.mjs.map +1 -1
  363. package/package.json +21 -21
  364. package/src/Accordion.tsx +1 -1
  365. package/src/ActionButton.tsx +2 -2
  366. package/src/ActionMenu.tsx +1 -1
  367. package/src/Avatar.tsx +1 -1
  368. package/src/AvatarGroup.tsx +1 -1
  369. package/src/Breadcrumbs.tsx +4 -4
  370. package/src/Button.tsx +4 -4
  371. package/src/ButtonGroup.tsx +1 -1
  372. package/src/CardView.tsx +1 -1
  373. package/src/Checkbox.tsx +1 -1
  374. package/src/CheckboxGroup.tsx +2 -2
  375. package/src/CloseButton.tsx +1 -1
  376. package/src/ColorArea.tsx +1 -1
  377. package/src/ColorField.tsx +1 -1
  378. package/src/ColorSlider.tsx +1 -1
  379. package/src/ColorSwatch.tsx +1 -1
  380. package/src/ColorWheel.tsx +1 -1
  381. package/src/Content.tsx +7 -7
  382. package/src/ContextualHelp.tsx +2 -2
  383. package/src/Disclosure.tsx +1 -1
  384. package/src/Divider.tsx +1 -1
  385. package/src/DropZone.tsx +2 -2
  386. package/src/Field.tsx +1 -1
  387. package/src/Form.tsx +2 -2
  388. package/src/Icon.tsx +2 -2
  389. package/src/IllustratedMessage.tsx +1 -1
  390. package/src/Image.tsx +1 -1
  391. package/src/Link.tsx +2 -2
  392. package/src/Menu.tsx +4 -3
  393. package/src/Meter.tsx +1 -1
  394. package/src/NumberField.tsx +1 -1
  395. package/src/Picker.tsx +2 -1
  396. package/src/ProgressBar.tsx +1 -1
  397. package/src/ProgressCircle.tsx +1 -1
  398. package/src/RadioGroup.tsx +2 -2
  399. package/src/RangeSlider.tsx +1 -1
  400. package/src/SearchField.tsx +1 -1
  401. package/src/SegmentedControl.tsx +2 -2
  402. package/src/Skeleton.tsx +1 -1
  403. package/src/Slider.tsx +1 -1
  404. package/src/StatusLight.tsx +2 -2
  405. package/src/Switch.tsx +1 -1
  406. package/src/TableView.tsx +1 -1
  407. package/src/Tabs.tsx +16 -16
  408. package/src/TagGroup.tsx +2 -2
  409. package/src/TextField.tsx +2 -2
  410. package/src/ToggleButton.tsx +2 -2
  411. package/src/ToggleButtonGroup.tsx +1 -1
  412. package/src/Tooltip.tsx +3 -3
  413. package/src/TreeView.tsx +97 -144
  414. package/src/index.ts +1 -1
  415. package/style/__tests__/style-macro.test.js +18 -18
  416. package/style/dist/spectrum-theme.cjs +10 -20
  417. package/style/dist/spectrum-theme.cjs.map +1 -1
  418. package/style/dist/spectrum-theme.mjs +10 -20
  419. package/style/dist/spectrum-theme.mjs.map +1 -1
  420. package/style/dist/types.d.ts +0 -4
  421. package/style/dist/types.d.ts.map +1 -1
  422. package/style/spectrum-theme.ts +11 -19
@@ -41,73 +41,73 @@ $parcel$export(module.exports, "SegmentedControlItem", () => $e33225559d5e019f$e
41
41
  const $e33225559d5e019f$export$c083c44d8a07dd35 = /*#__PURE__*/ (0, $4JHQR$react.createContext)(null);
42
42
  const $e33225559d5e019f$var$segmentedControl = function anonymous(props, overrides) {
43
43
  let rules = " .";
44
- let matches = (overrides || '').match(/(?:^|\s)(?:B|C|D|E|__d|__c|g|_9|_8|__E|__g|__h|__e|__f|Y|__U|_b|_d|Z|_a|k|p|q)[^\s]+/g) || [];
44
+ let matches = (overrides || '').match(/(?:^|\s)(?:y|z|A|B|__a|_9|h|_6|_5|__B|__d|__e|__b|__c|V|__R|Y|_a|W|X|l|q|r)[^\s]+/g) || [];
45
45
  rules += matches.join('');
46
- let $k = false;
47
- for (let p of matches)if (/^\s*k/.test(p)) $k = true;
48
- rules += ' _3d';
49
- rules += ' hc';
46
+ let $l = false;
47
+ for (let p of matches)if (/^\s*l/.test(p)) $l = true;
48
+ rules += ' _0d';
50
49
  rules += ' ic';
50
+ rules += ' jc';
51
51
  rules += ' bg';
52
+ rules += ' _wc';
53
+ rules += ' _xc';
54
+ rules += ' _yc';
52
55
  rules += ' _zc';
53
- rules += ' _Ac';
54
- rules += ' _Bc';
55
- rules += ' _Cc';
56
- if (!$k) rules += ' ke';
56
+ if (!$l) rules += ' le';
57
57
  return rules;
58
58
  };
59
59
  const $e33225559d5e019f$var$controlItem = function anonymous(props, overrides) {
60
60
  let rules = " .";
61
- let matches = (overrides || '').match(/(?:^|\s)(?:B|C|D|E|__d|__c|g|_9|_8|__E|__g|__h|__e|__f|Y|__U|_b|_d|Z|_a|k|p|q)[^\s]+/g) || [];
61
+ let matches = (overrides || '').match(/(?:^|\s)(?:y|z|A|B|__a|_9|h|_6|_5|__B|__d|__e|__b|__c|V|__R|Y|_a|W|X|l|q|r)[^\s]+/g) || [];
62
62
  rules += matches.join('');
63
- let $Y = false;
64
- let $__d = false;
65
- let $g = false;
66
- let $__c = false;
67
- let $p = false;
63
+ let $V = false;
64
+ let $__a = false;
65
+ let $h = false;
66
+ let $_9 = false;
67
+ let $q = false;
68
68
  for (let p of matches){
69
- if (/^\s*Y/.test(p)) $Y = true;
70
- if (/^\s*__d/.test(p)) $__d = true;
71
- if (/^\s*g/.test(p)) $g = true;
72
- if (/^\s*__c/.test(p)) $__c = true;
73
- if (/^\s*p/.test(p)) $p = true;
69
+ if (/^\s*V/.test(p)) $V = true;
70
+ if (/^\s*__a/.test(p)) $__a = true;
71
+ if (/^\s*h/.test(p)) $h = true;
72
+ if (/^\s*_9/.test(p)) $_9 = true;
73
+ if (/^\s*q/.test(p)) $q = true;
74
74
  }
75
- if (props.isFocusVisible) rules += ' _Pb';
76
- else rules += ' _Pa';
77
- rules += ' ca_____M';
78
- rules += ' cx';
79
- rules += ' _Rc';
80
- rules += ' _Q-3t1z';
81
- if (!$Y) rules += ' Yc';
82
- rules += ' _3d';
83
- rules += ' _Db';
84
- rules += ' _g-bc1l9oh';
85
- rules += ' _g-1uotwbwg';
86
- rules += ' _g-eo0c6sf';
87
- rules += ' _g-enzzrge';
88
- rules += ' _g-enzykdd';
89
- rules += ' _g-enzwzjc';
90
- rules += ' _g-enzrfpb';
91
- rules += ' _ga';
75
+ if (props.isFocusVisible) rules += ' _Mb';
76
+ else rules += ' _Ma';
77
+ rules += ' da_____M';
78
+ rules += ' dx';
79
+ rules += ' _Oc';
80
+ rules += ' _N-3t1z';
81
+ if (!$V) rules += ' Vc';
82
+ rules += ' _0d';
83
+ rules += ' _Ab';
84
+ rules += ' _d-bc1l9oh';
85
+ rules += ' _d-1uotwbwg';
86
+ rules += ' _d-eo0c6sf';
87
+ rules += ' _d-enzzrge';
88
+ rules += ' _d-enzykdd';
89
+ rules += ' _d-enzwzjc';
90
+ rules += ' _d-enzrfpb';
91
+ rules += ' _da';
92
92
  if (props.size === "XL") {
93
- rules += ' _hbj';
94
- rules += ' _hi';
93
+ rules += ' _ebj';
94
+ rules += ' _ei';
95
95
  } else if (props.size === "L") {
96
- rules += ' _hbh';
97
- rules += ' _hg';
96
+ rules += ' _ebh';
97
+ rules += ' _eg';
98
98
  } else if (props.size === "S") {
99
- rules += ' _hbd';
100
- rules += ' _hc';
99
+ rules += ' _ebd';
100
+ rules += ' _ec';
101
101
  } else if (props.size === "XS") {
102
- rules += ' _hbb';
103
- rules += ' _ha';
102
+ rules += ' _ebb';
103
+ rules += ' _ea';
104
104
  } else {
105
- rules += ' _hbf';
106
- rules += ' _he';
105
+ rules += ' _ebf';
106
+ rules += ' _ee';
107
107
  }
108
- rules += ' _ib';
109
- rules += ' _j-1x99dlob';
110
- rules += ' _ja';
108
+ rules += ' _fb';
109
+ rules += ' _g-1x99dlob';
110
+ rules += ' _ga';
111
111
  if (props.isSelected) rules += ' aa_____N';
112
112
  else if (props.isDisabled) rules += ' aa_____O';
113
113
  else rules += ' aa_____K';
@@ -123,32 +123,32 @@ const $e33225559d5e019f$var$controlItem = function anonymous(props, overrides) {
123
123
  else if (props.isHovered) rules += ' an';
124
124
  else rules += ' am';
125
125
  } else rules += ' am';
126
- rules += ' F-soocic-6njx2e';
127
- rules += ' FI';
128
- rules += ' G-soocic-6njx2e';
129
- rules += ' GI';
130
- rules += ' j-375top';
131
- rules += ' _5c';
132
- if (!$__d) {
133
- if (props.isJustified) rules += ' __d-3t1y';
126
+ rules += ' C-soocic-6njx2e';
127
+ rules += ' CI';
128
+ rules += ' D-soocic-6njx2e';
129
+ rules += ' DI';
130
+ rules += ' k-375toq';
131
+ rules += ' _2c';
132
+ if (!$__a) {
133
+ if (props.isJustified) rules += ' __a-3t1y';
134
134
  }
135
- if (!$g) {
136
- if (props.isJustified) rules += ' ga';
135
+ if (!$h) {
136
+ if (props.isJustified) rules += ' ha';
137
137
  }
138
- if (!$__c) rules += ' __c-3t1x';
139
- if (!$p) rules += ' po';
140
- rules += ' _6d';
141
- rules += ' _tb';
142
- rules += ' __V-yksgrp';
143
- rules += ' __Ha';
138
+ if (!$_9) rules += ' _9-3t1x';
139
+ if (!$q) rules += ' qo';
140
+ rules += ' _3d';
141
+ rules += ' _qb';
142
+ rules += ' __S-yksgrp';
143
+ rules += ' __Ea';
144
144
  rules += ' ba';
145
- rules += ' zf';
145
+ rules += ' wf';
146
+ rules += ' _wc';
147
+ rules += ' _xc';
148
+ rules += ' _yc';
146
149
  rules += ' _zc';
147
- rules += ' _Ac';
148
- rules += ' _Bc';
149
- rules += ' _Cc';
150
- rules += ' -rwx0fg_d-b';
151
- rules += ' -_375top_j-U';
150
+ rules += ' -rwx0fg_e-b';
151
+ rules += ' -_375toq_k-U';
152
152
  return rules;
153
153
  };
154
154
  const $e33225559d5e019f$var$slider = function anonymous(props) {
@@ -156,36 +156,24 @@ const $e33225559d5e019f$var$slider = function anonymous(props) {
156
156
  if (props.isDisabled) rules += ' ba_____O';
157
157
  else rules += ' ba_____M';
158
158
  rules += ' bd';
159
- rules += ' _ca';
159
+ rules += ' Za';
160
+ rules += ' lb';
160
161
  rules += ' kb';
161
- rules += ' jb';
162
- rules += ' Ya';
163
- rules += ' __ra';
164
- rules += ' za';
165
- rules += ' tc';
162
+ rules += ' Va';
163
+ rules += ' __oa';
164
+ rules += ' wa';
166
165
  rules += ' uc';
167
- rules += ' rc';
166
+ rules += ' vc';
168
167
  rules += ' sc';
169
- if (props.isDisabled) rules += ' xa_____O';
170
- else rules += ' xa_____M';
171
- if (props.isDisabled) rules += ' xi';
172
- else rules += ' xo';
173
- if (props.isDisabled) rules += ' ya_____O';
174
- else rules += ' ya_____M';
175
- if (props.isDisabled) rules += ' yi';
176
- else rules += ' yo';
177
- if (props.isDisabled) rules += ' va_____O';
178
- else rules += ' va_____M';
179
- if (props.isDisabled) rules += ' vi';
180
- else rules += ' vo';
181
- if (props.isDisabled) rules += ' wa_____O';
182
- else rules += ' wa_____M';
183
- if (props.isDisabled) rules += ' wi';
184
- else rules += ' wo';
168
+ rules += ' tc';
169
+ if (props.isDisabled) rules += ' ca_____O';
170
+ else rules += ' ca_____M';
171
+ if (props.isDisabled) rules += ' ci';
172
+ else rules += ' co';
173
+ rules += ' _wd';
174
+ rules += ' _xd';
175
+ rules += ' _yd';
185
176
  rules += ' _zd';
186
- rules += ' _Ad';
187
- rules += ' _Bd';
188
- rules += ' _Cd';
189
177
  return rules;
190
178
  };
191
179
  const $e33225559d5e019f$var$InternalSegmentedControlContext = /*#__PURE__*/ (0, $4JHQR$react.createContext)({});
@@ -306,7 +294,7 @@ const $e33225559d5e019f$export$4fc12f2742e8cf3f = /*#__PURE__*/ (0, $4JHQR$react
306
294
  {
307
295
  render: (0, $e991cbcdf82ced71$exports.centerBaseline)({
308
296
  slot: 'icon',
309
- styles: " __E-3t1x __c-3t1x"
297
+ styles: " __B-3t1x _9-3t1x"
310
298
  })
311
299
  }
312
300
  ],
@@ -321,7 +309,7 @@ const $e33225559d5e019f$export$4fc12f2742e8cf3f = /*#__PURE__*/ (0, $4JHQR$react
321
309
  [
322
310
  (0, $6367bc87eb7d24ad$exports.TextContext),
323
311
  {
324
- styles: " __E-3t1y __zb __Ab _qa _tb"
312
+ styles: " __B-3t1y __wb __xb _na _qb"
325
313
  }
326
314
  ]
327
315
  ],
@@ -330,7 +318,7 @@ const $e33225559d5e019f$export$4fc12f2742e8cf3f = /*#__PURE__*/ (0, $4JHQR$react
330
318
  style: (0, $2061c83559b50a66$exports.pressScale)(divRef)({
331
319
  isPressed: isPressed
332
320
  }),
333
- className: " _3d hG hbH iG ibH _Sa _U-375x7f _Va _5c po",
321
+ className: " _0d iG ibH jG jbH _Pa _R-375x7f _Sa _2c qo",
334
322
  children: typeof props.children === 'string' ? /*#__PURE__*/ (0, $4JHQR$reactjsxruntime.jsx)((0, $6367bc87eb7d24ad$exports.Text), {
335
323
  children: props.children
336
324
  }) : props.children
@@ -1 +1 @@
1
- {"mappings":"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","sources":["packages/@react-spectrum/s2/src/SegmentedControl.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 {AriaLabelingProps, DOMRef, DOMRefValue, FocusableRef, Key} from '@react-types/shared';\nimport {centerBaseline} from './CenterBaseline';\nimport {ContextValue, DEFAULT_SLOT, Provider, TextContext as RACTextContext, SlotProps, ToggleButton, ToggleButtonGroup, ToggleGroupStateContext} from 'react-aria-components';\nimport {createContext, forwardRef, ReactNode, RefObject, useCallback, useContext, useRef} from 'react';\nimport {focusRing, space, style} from '../style' with {type: 'macro'};\nimport {getAllowedOverrides, StyleProps} from './style-utils' with {type: 'macro'};\nimport {IconContext} from './Icon';\nimport {pressScale} from './pressScale';\nimport {Text, TextContext} from './Content';\nimport {useDOMRef, useFocusableRef} from '@react-spectrum/utils';\nimport {useLayoutEffect} from '@react-aria/utils';\nimport {useSpectrumContextProps} from './useSpectrumContextProps';\n\nexport interface SegmentedControlProps extends AriaLabelingProps, StyleProps, SlotProps {\n /**\n * The content to display in the segmented control.\n */\n children: ReactNode,\n /**\n * Whether the segmented control is disabled.\n */\n isDisabled?: boolean,\n /** Whether the items should divide the container width equally. */\n isJustified?: boolean,\n /** The id of the currently selected item (controlled). */\n selectedKey?: Key | null,\n /** The id of the initial selected item (uncontrolled). */\n defaultSelectedKey?: Key,\n /** Handler that is called when the selection changes. */\n onSelectionChange?: (id: Key) => void\n}\nexport interface SegmentedControlItemProps extends AriaLabelingProps, StyleProps {\n /**\n * The content to display in the segmented control item.\n */\n children: ReactNode,\n /** The id of the item, matching the value used in SegmentedControl's `selectedKey` prop. */\n id: Key,\n /** Whether the item is disabled or not. */\n isDisabled?: boolean\n}\n\nexport const SegmentedControlContext = createContext<ContextValue<SegmentedControlProps, DOMRefValue<HTMLDivElement>>>(null);\n\nconst segmentedControl = style({\n display: 'flex',\n gap: 4,\n backgroundColor: 'gray-100',\n borderRadius: 'default',\n width: 'fit'\n}, getAllowedOverrides());\n\nconst controlItem = style({\n ...focusRing(),\n position: 'relative',\n display: 'flex',\n forcedColorAdjust: 'none',\n font: 'control',\n color: {\n default: 'gray-700',\n isHovered: 'neutral-subdued',\n isSelected: 'neutral',\n isDisabled: 'disabled',\n forcedColors: {\n default: 'ButtonText',\n isDisabled: 'GrayText',\n isSelected: 'HighlightText'\n }\n },\n // TODO: update this padding for icon-only items when we introduce the non-track style back\n paddingX: {\n default: 'edge-to-text',\n ':has([slot=icon]):not(:has([data-rsp-slot=text]))': space(6)\n },\n height: 32,\n alignItems: 'center',\n flexGrow: {\n isJustified: 1\n },\n flexBasis: {\n isJustified: 0\n },\n flexShrink: 0,\n minWidth: 0,\n justifyContent: 'center',\n whiteSpace: 'nowrap',\n disableTapHighlight: true,\n userSelect: 'none',\n backgroundColor: 'transparent',\n borderStyle: 'none',\n borderRadius: 'default',\n '--iconPrimary': {\n type: 'fill',\n value: 'currentColor'\n }\n}, getAllowedOverrides());\n\nconst slider = style({\n backgroundColor: {\n default: 'gray-25',\n forcedColors: {\n default: 'Highlight',\n isDisabled: 'GrayText'\n }\n },\n left: 0,\n width: 'full',\n height: 'full',\n position: 'absolute',\n boxSizing: 'border-box',\n borderStyle: 'solid',\n borderWidth: 2,\n borderColor: {\n default: 'gray-900',\n isDisabled: 'disabled',\n forcedColors: {\n default: 'Highlight',\n isDisabled: 'GrayText'\n }\n },\n borderRadius: 'lg'\n});\n\ninterface InternalSegmentedControlContextProps {\n register?: (value: Key, isDisabled?: boolean) => void,\n prevRef?: RefObject<DOMRect | null>,\n currentSelectedRef?: RefObject<HTMLDivElement | null>,\n isJustified?: boolean\n}\n\ninterface DefaultSelectionTrackProps {\n defaultValue?: Key | null,\n value?: Key | null,\n children?: ReactNode,\n prevRef: RefObject<DOMRect | null>,\n currentSelectedRef: RefObject<HTMLDivElement | null>,\n isJustified?: boolean\n}\n\nconst InternalSegmentedControlContext = createContext<InternalSegmentedControlContextProps>({});\n\n/**\n * A SegmentedControl is a mutually exclusive group of buttons used for view switching.\n */\nexport const SegmentedControl = /*#__PURE__*/ forwardRef(function SegmentedControl(props: SegmentedControlProps, ref: DOMRef<HTMLDivElement>) {\n [props, ref] = useSpectrumContextProps(props, ref, SegmentedControlContext);\n let {\n defaultSelectedKey,\n selectedKey,\n onSelectionChange\n } = props;\n let domRef = useDOMRef(ref);\n\n let prevRef = useRef<DOMRect>(null);\n let currentSelectedRef = useRef<HTMLDivElement>(null);\n\n let onChange = (values: Set<Key>) => {\n if (currentSelectedRef.current) {\n prevRef.current = currentSelectedRef?.current.getBoundingClientRect();\n }\n \n if (onSelectionChange) {\n onSelectionChange(values.values().next().value);\n }\n };\n\n return (\n <ToggleButtonGroup \n {...props}\n selectedKeys={selectedKey != null ? [selectedKey] : undefined}\n defaultSelectedKeys={defaultSelectedKey != null ? [defaultSelectedKey] : undefined}\n disallowEmptySelection\n ref={domRef}\n orientation=\"horizontal\"\n style={props.UNSAFE_style}\n onSelectionChange={onChange}\n className={(props.UNSAFE_className || '') + segmentedControl(null, props.styles)}\n aria-label={props['aria-label']}>\n <DefaultSelectionTracker defaultValue={defaultSelectedKey} value={selectedKey} prevRef={prevRef} currentSelectedRef={currentSelectedRef} isJustified={props.isJustified}>\n {props.children}\n </DefaultSelectionTracker>\n </ToggleButtonGroup>\n );\n});\n\nfunction DefaultSelectionTracker(props: DefaultSelectionTrackProps) {\n let state = useContext(ToggleGroupStateContext);\n let isRegistered = useRef(!(props.defaultValue == null && props.value == null));\n\n // default select the first available item\n let register = useCallback((value: Key) => {\n if (state && !isRegistered.current) {\n isRegistered.current = true;\n state.toggleKey(value);\n }\n }, []);\n\n return (\n <Provider\n values={[\n [InternalSegmentedControlContext, {register: register, prevRef: props.prevRef, currentSelectedRef: props.currentSelectedRef, isJustified: props.isJustified}]\n ]}> \n {props.children}\n </Provider>\n );\n}\n\n/**\n * A SegmentedControlItem represents an option within a SegmentedControl.\n */\nexport const SegmentedControlItem = /*#__PURE__*/ forwardRef(function SegmentedControlItem(props: SegmentedControlItemProps, ref: FocusableRef<HTMLButtonElement>) {\n let domRef = useFocusableRef(ref);\n let divRef = useRef<HTMLDivElement>(null);\n let {register, prevRef, currentSelectedRef, isJustified} = useContext(InternalSegmentedControlContext);\n let state = useContext(ToggleGroupStateContext);\n let isSelected = state?.selectedKeys.has(props.id);\n // do not apply animation if a user has the prefers-reduced-motion setting\n let isReduced = false;\n if (window?.matchMedia) {\n isReduced = window.matchMedia('(prefers-reduced-motion: reduce)').matches;\n }\n\n useLayoutEffect(() => {\n register?.(props.id);\n }, []);\n\n useLayoutEffect(() => {\n if (isSelected && prevRef?.current && currentSelectedRef?.current && !isReduced) {\n let currentItem = currentSelectedRef?.current.getBoundingClientRect();\n\n let deltaX = prevRef?.current.left - currentItem?.left;\n\n currentSelectedRef.current.animate(\n [\n {transform: `translateX(${deltaX}px)`, width: `${prevRef?.current.width}px`},\n {transform: 'translateX(0px)', width: `${currentItem.width}px`}\n ],\n {\n duration: 200,\n easing: 'ease-out'\n }\n );\n\n prevRef.current = null;\n }\n }, [isSelected]);\n\n return (\n <ToggleButton \n {...props}\n ref={domRef} \n style={props.UNSAFE_style}\n className={renderProps => (props.UNSAFE_className || '') + controlItem({...renderProps, isJustified}, props.styles)} >\n {({isSelected, isPressed, isDisabled}) => (\n <>\n {isSelected && <div className={slider({isDisabled})} ref={currentSelectedRef} />}\n <Provider \n values={[\n [IconContext, {\n render: centerBaseline({slot: 'icon', styles: style({order: 0, flexShrink: 0})})\n }],\n [RACTextContext, {slots: {[DEFAULT_SLOT]: {}}}],\n [TextContext, {styles: style({order: 1, truncate: true})}]\n ]}>\n <div ref={divRef} style={pressScale(divRef)({isPressed})} className={style({display: 'flex', gap: 'text-to-visual', transition: 'default', alignItems: 'center', minWidth: 0})}>\n {typeof props.children === 'string' ? <Text>{props.children}</Text> : props.children}\n </div>\n </Provider>\n </>\n )\n }\n </ToggleButton>\n );\n});\n"],"names":[],"version":3,"file":"SegmentedControl.cjs.map"}
1
+ {"mappings":"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","sources":["packages/@react-spectrum/s2/src/SegmentedControl.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 {AriaLabelingProps, DOMRef, DOMRefValue, FocusableRef, Key} from '@react-types/shared';\nimport {centerBaseline} from './CenterBaseline';\nimport {ContextValue, DEFAULT_SLOT, Provider, TextContext as RACTextContext, SlotProps, ToggleButton, ToggleButtonGroup, ToggleGroupStateContext} from 'react-aria-components';\nimport {createContext, forwardRef, ReactNode, RefObject, useCallback, useContext, useRef} from 'react';\nimport {focusRing, space, style} from '../style' with {type: 'macro'};\nimport {getAllowedOverrides, StyleProps} from './style-utils' with {type: 'macro'};\nimport {IconContext} from './Icon';\nimport {pressScale} from './pressScale';\nimport {Text, TextContext} from './Content';\nimport {useDOMRef, useFocusableRef} from '@react-spectrum/utils';\nimport {useLayoutEffect} from '@react-aria/utils';\nimport {useSpectrumContextProps} from './useSpectrumContextProps';\n\nexport interface SegmentedControlProps extends AriaLabelingProps, StyleProps, SlotProps {\n /**\n * The content to display in the segmented control.\n */\n children: ReactNode,\n /**\n * Whether the segmented control is disabled.\n */\n isDisabled?: boolean,\n /** Whether the items should divide the container width equally. */\n isJustified?: boolean,\n /** The id of the currently selected item (controlled). */\n selectedKey?: Key | null,\n /** The id of the initial selected item (uncontrolled). */\n defaultSelectedKey?: Key,\n /** Handler that is called when the selection changes. */\n onSelectionChange?: (id: Key) => void\n}\nexport interface SegmentedControlItemProps extends AriaLabelingProps, StyleProps {\n /**\n * The content to display in the segmented control item.\n */\n children: ReactNode,\n /** The id of the item, matching the value used in SegmentedControl's `selectedKey` prop. */\n id: Key,\n /** Whether the item is disabled or not. */\n isDisabled?: boolean\n}\n\nexport const SegmentedControlContext = createContext<ContextValue<Partial<SegmentedControlProps>, DOMRefValue<HTMLDivElement>>>(null);\n\nconst segmentedControl = style({\n display: 'flex',\n gap: 4,\n backgroundColor: 'gray-100',\n borderRadius: 'default',\n width: 'fit'\n}, getAllowedOverrides());\n\nconst controlItem = style({\n ...focusRing(),\n position: 'relative',\n display: 'flex',\n forcedColorAdjust: 'none',\n font: 'control',\n color: {\n default: 'gray-700',\n isHovered: 'neutral-subdued',\n isSelected: 'neutral',\n isDisabled: 'disabled',\n forcedColors: {\n default: 'ButtonText',\n isDisabled: 'GrayText',\n isSelected: 'HighlightText'\n }\n },\n // TODO: update this padding for icon-only items when we introduce the non-track style back\n paddingX: {\n default: 'edge-to-text',\n ':has([slot=icon]):not(:has([data-rsp-slot=text]))': space(6)\n },\n height: 32,\n alignItems: 'center',\n flexGrow: {\n isJustified: 1\n },\n flexBasis: {\n isJustified: 0\n },\n flexShrink: 0,\n minWidth: 0,\n justifyContent: 'center',\n whiteSpace: 'nowrap',\n disableTapHighlight: true,\n userSelect: 'none',\n backgroundColor: 'transparent',\n borderStyle: 'none',\n borderRadius: 'default',\n '--iconPrimary': {\n type: 'fill',\n value: 'currentColor'\n }\n}, getAllowedOverrides());\n\nconst slider = style({\n backgroundColor: {\n default: 'gray-25',\n forcedColors: {\n default: 'Highlight',\n isDisabled: 'GrayText'\n }\n },\n left: 0,\n width: 'full',\n height: 'full',\n position: 'absolute',\n boxSizing: 'border-box',\n borderStyle: 'solid',\n borderWidth: 2,\n borderColor: {\n default: 'gray-900',\n isDisabled: 'disabled',\n forcedColors: {\n default: 'Highlight',\n isDisabled: 'GrayText'\n }\n },\n borderRadius: 'lg'\n});\n\ninterface InternalSegmentedControlContextProps {\n register?: (value: Key, isDisabled?: boolean) => void,\n prevRef?: RefObject<DOMRect | null>,\n currentSelectedRef?: RefObject<HTMLDivElement | null>,\n isJustified?: boolean\n}\n\ninterface DefaultSelectionTrackProps {\n defaultValue?: Key | null,\n value?: Key | null,\n children: ReactNode,\n prevRef: RefObject<DOMRect | null>,\n currentSelectedRef: RefObject<HTMLDivElement | null>,\n isJustified?: boolean\n}\n\nconst InternalSegmentedControlContext = createContext<InternalSegmentedControlContextProps>({});\n\n/**\n * A SegmentedControl is a mutually exclusive group of buttons used for view switching.\n */\nexport const SegmentedControl = /*#__PURE__*/ forwardRef(function SegmentedControl(props: SegmentedControlProps, ref: DOMRef<HTMLDivElement>) {\n [props, ref] = useSpectrumContextProps(props, ref, SegmentedControlContext);\n let {\n defaultSelectedKey,\n selectedKey,\n onSelectionChange\n } = props;\n let domRef = useDOMRef(ref);\n\n let prevRef = useRef<DOMRect>(null);\n let currentSelectedRef = useRef<HTMLDivElement>(null);\n\n let onChange = (values: Set<Key>) => {\n if (currentSelectedRef.current) {\n prevRef.current = currentSelectedRef?.current.getBoundingClientRect();\n }\n \n if (onSelectionChange) {\n onSelectionChange(values.values().next().value);\n }\n };\n\n return (\n <ToggleButtonGroup \n {...props}\n selectedKeys={selectedKey != null ? [selectedKey] : undefined}\n defaultSelectedKeys={defaultSelectedKey != null ? [defaultSelectedKey] : undefined}\n disallowEmptySelection\n ref={domRef}\n orientation=\"horizontal\"\n style={props.UNSAFE_style}\n onSelectionChange={onChange}\n className={(props.UNSAFE_className || '') + segmentedControl(null, props.styles)}\n aria-label={props['aria-label']}>\n <DefaultSelectionTracker defaultValue={defaultSelectedKey} value={selectedKey} prevRef={prevRef} currentSelectedRef={currentSelectedRef} isJustified={props.isJustified}>\n {props.children}\n </DefaultSelectionTracker>\n </ToggleButtonGroup>\n );\n});\n\nfunction DefaultSelectionTracker(props: DefaultSelectionTrackProps) {\n let state = useContext(ToggleGroupStateContext);\n let isRegistered = useRef(!(props.defaultValue == null && props.value == null));\n\n // default select the first available item\n let register = useCallback((value: Key) => {\n if (state && !isRegistered.current) {\n isRegistered.current = true;\n state.toggleKey(value);\n }\n }, []);\n\n return (\n <Provider\n values={[\n [InternalSegmentedControlContext, {register: register, prevRef: props.prevRef, currentSelectedRef: props.currentSelectedRef, isJustified: props.isJustified}]\n ]}> \n {props.children}\n </Provider>\n );\n}\n\n/**\n * A SegmentedControlItem represents an option within a SegmentedControl.\n */\nexport const SegmentedControlItem = /*#__PURE__*/ forwardRef(function SegmentedControlItem(props: SegmentedControlItemProps, ref: FocusableRef<HTMLButtonElement>) {\n let domRef = useFocusableRef(ref);\n let divRef = useRef<HTMLDivElement>(null);\n let {register, prevRef, currentSelectedRef, isJustified} = useContext(InternalSegmentedControlContext);\n let state = useContext(ToggleGroupStateContext);\n let isSelected = state?.selectedKeys.has(props.id);\n // do not apply animation if a user has the prefers-reduced-motion setting\n let isReduced = false;\n if (window?.matchMedia) {\n isReduced = window.matchMedia('(prefers-reduced-motion: reduce)').matches;\n }\n\n useLayoutEffect(() => {\n register?.(props.id);\n }, []);\n\n useLayoutEffect(() => {\n if (isSelected && prevRef?.current && currentSelectedRef?.current && !isReduced) {\n let currentItem = currentSelectedRef?.current.getBoundingClientRect();\n\n let deltaX = prevRef?.current.left - currentItem?.left;\n\n currentSelectedRef.current.animate(\n [\n {transform: `translateX(${deltaX}px)`, width: `${prevRef?.current.width}px`},\n {transform: 'translateX(0px)', width: `${currentItem.width}px`}\n ],\n {\n duration: 200,\n easing: 'ease-out'\n }\n );\n\n prevRef.current = null;\n }\n }, [isSelected]);\n\n return (\n <ToggleButton \n {...props}\n ref={domRef} \n style={props.UNSAFE_style}\n className={renderProps => (props.UNSAFE_className || '') + controlItem({...renderProps, isJustified}, props.styles)} >\n {({isSelected, isPressed, isDisabled}) => (\n <>\n {isSelected && <div className={slider({isDisabled})} ref={currentSelectedRef} />}\n <Provider \n values={[\n [IconContext, {\n render: centerBaseline({slot: 'icon', styles: style({order: 0, flexShrink: 0})})\n }],\n [RACTextContext, {slots: {[DEFAULT_SLOT]: {}}}],\n [TextContext, {styles: style({order: 1, truncate: true})}]\n ]}>\n <div ref={divRef} style={pressScale(divRef)({isPressed})} className={style({display: 'flex', gap: 'text-to-visual', transition: 'default', alignItems: 'center', minWidth: 0})}>\n {typeof props.children === 'string' ? <Text>{props.children}</Text> : props.children}\n </div>\n </Provider>\n </>\n )\n }\n </ToggleButton>\n );\n});\n"],"names":[],"version":3,"file":"SegmentedControl.cjs.map"}