@telus-uds/components-base 1.83.0 → 1.85.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 (474) hide show
  1. package/CHANGELOG.md +36 -2
  2. package/lib/A11yInfoProvider/index.js +8 -10
  3. package/lib/A11yText/index.js +2 -4
  4. package/lib/ActivityIndicator/Spinner.js +3 -4
  5. package/lib/ActivityIndicator/Spinner.native.js +2 -4
  6. package/lib/Autocomplete/Autocomplete.js +13 -17
  7. package/lib/Autocomplete/Loading.js +4 -2
  8. package/lib/Autocomplete/Suggestions.js +2 -4
  9. package/lib/Badge/Badge.js +2 -4
  10. package/lib/BaseProvider/HydrationContext.js +5 -7
  11. package/lib/Box/Box.js +5 -7
  12. package/lib/Button/Button.js +3 -3
  13. package/lib/Button/ButtonBase.js +2 -7
  14. package/lib/Button/ButtonDropdown.js +3 -3
  15. package/lib/Button/ButtonGroup.js +11 -4
  16. package/lib/Button/ButtonLink.js +3 -3
  17. package/lib/Card/Card.js +159 -16
  18. package/lib/Card/CardBase.js +2 -4
  19. package/lib/Card/PressableCardBase.js +3 -5
  20. package/lib/CardGroup/CardGroup.js +220 -0
  21. package/lib/CardGroup/dictionary.js +15 -0
  22. package/lib/CardGroup/index.js +10 -0
  23. package/lib/Carousel/Carousel.js +308 -129
  24. package/lib/Carousel/CarouselFirstFocus/CarouselFirstFocus.js +2 -4
  25. package/lib/Carousel/CarouselItem/CarouselItem.js +3 -2
  26. package/lib/Carousel/CarouselStepTracker/CarouselStepTracker.js +4 -2
  27. package/lib/Carousel/CarouselTabs/CarouselTabs.js +2 -4
  28. package/lib/Carousel/CarouselTabs/CarouselTabsPanel.js +6 -8
  29. package/lib/Carousel/CarouselTabs/CarouselTabsPanelItem.js +3 -5
  30. package/lib/Carousel/CarouselThumbnail.js +4 -2
  31. package/lib/Carousel/CarouselThumbnailNavigation.js +2 -4
  32. package/lib/Checkbox/Checkbox.js +2 -4
  33. package/lib/Checkbox/CheckboxButton.js +3 -5
  34. package/lib/Checkbox/CheckboxGroup.js +2 -4
  35. package/lib/Checkbox/CheckboxInput.js +4 -14
  36. package/lib/CheckboxCard/CheckboxCard.js +3 -3
  37. package/lib/CheckboxCardGroup/CheckboxCardGroup.js +3 -3
  38. package/lib/ColourToggle/ColourBubble.js +5 -6
  39. package/lib/ColourToggle/ColourToggle.js +3 -5
  40. package/lib/Divider/Divider.js +2 -4
  41. package/lib/ExpandCollapse/Accordion.js +2 -4
  42. package/lib/ExpandCollapse/Control.js +2 -4
  43. package/lib/ExpandCollapse/ExpandCollapse.js +20 -13
  44. package/lib/ExpandCollapse/Panel.js +15 -5
  45. package/lib/ExpandCollapse/dictionary.js +17 -0
  46. package/lib/Feedback/Feedback.js +2 -4
  47. package/lib/Fieldset/Fieldset.js +2 -4
  48. package/lib/Fieldset/FieldsetContainer.js +2 -4
  49. package/lib/Fieldset/FieldsetContainer.native.js +2 -4
  50. package/lib/Fieldset/Legend.js +2 -4
  51. package/lib/Fieldset/Legend.native.js +2 -4
  52. package/lib/FlexGrid/Col/Col.js +3 -5
  53. package/lib/FlexGrid/FlexGrid.js +2 -4
  54. package/lib/FlexGrid/Row/Row.js +2 -4
  55. package/lib/Footnote/Footnote.js +9 -9
  56. package/lib/Footnote/FootnoteLink.js +5 -3
  57. package/lib/HorizontalScroll/HorizontalScroll.js +8 -10
  58. package/lib/HorizontalScroll/HorizontalScrollButton.js +2 -4
  59. package/lib/HorizontalScroll/ScrollViewEnd.js +5 -10
  60. package/lib/HorizontalScroll/ScrollViewEnd.native.js +2 -4
  61. package/lib/Icon/Icon.js +2 -4
  62. package/lib/Icon/IconText.js +6 -6
  63. package/lib/IconButton/IconButton.js +2 -4
  64. package/lib/InputLabel/InputLabel.js +2 -4
  65. package/lib/InputLabel/LabelContent.js +2 -4
  66. package/lib/InputLabel/LabelContent.native.js +2 -4
  67. package/lib/InputSupports/InputSupports.js +4 -5
  68. package/lib/Link/ChevronLink.js +2 -4
  69. package/lib/Link/InlinePressable.js +8 -7
  70. package/lib/Link/InlinePressable.native.js +10 -8
  71. package/lib/Link/Link.js +2 -4
  72. package/lib/Link/LinkBase.js +2 -4
  73. package/lib/Link/TextButton.js +2 -4
  74. package/lib/List/List.js +13 -11
  75. package/lib/List/ListItem.js +2 -4
  76. package/lib/List/ListItemBase.js +6 -10
  77. package/lib/List/ListItemContent.js +4 -2
  78. package/lib/List/ListItemMark.js +4 -2
  79. package/lib/List/PressableListItemBase.js +2 -4
  80. package/lib/Listbox/GroupControl.js +4 -2
  81. package/lib/Listbox/Listbox.js +6 -6
  82. package/lib/Listbox/ListboxContext.js +3 -4
  83. package/lib/Listbox/ListboxGroup.js +2 -4
  84. package/lib/Listbox/ListboxItem.js +2 -6
  85. package/lib/Listbox/ListboxOverlay.js +2 -6
  86. package/lib/Listbox/PressableItem.js +2 -6
  87. package/lib/Modal/Modal.js +5 -7
  88. package/lib/Modal/ModalContent.js +7 -7
  89. package/lib/Modal/WebModal.js +19 -10
  90. package/lib/MultiSelectFilter/ModalOverlay.js +2 -4
  91. package/lib/MultiSelectFilter/MultiSelectFilter.js +10 -10
  92. package/lib/Notification/Notification.js +5 -7
  93. package/lib/OrderedList/Item.js +4 -10
  94. package/lib/OrderedList/ItemBase.js +2 -4
  95. package/lib/OrderedList/OrderedList.js +5 -13
  96. package/lib/OrderedList/OrderedListBase.js +2 -4
  97. package/lib/Pagination/PageButton.js +1 -1
  98. package/lib/Pagination/Pagination.js +1 -1
  99. package/lib/Pagination/SideButton.js +2 -4
  100. package/lib/PriceLockup/PriceLockup.js +5 -5
  101. package/lib/ProductCard/ProductCard.js +3 -2
  102. package/lib/ProductCardGroup/ProductCardGroup.js +5 -6
  103. package/lib/Progress/Progress.js +2 -4
  104. package/lib/Progress/ProgressBar.js +2 -4
  105. package/lib/Progress/ProgressBarBackground.js +2 -4
  106. package/lib/QuickLinks/QuickLinks.js +2 -4
  107. package/lib/QuickLinks/QuickLinksCard.js +4 -2
  108. package/lib/QuickLinks/QuickLinksItem.js +2 -4
  109. package/lib/QuickLinksFeature/QuickLinksFeature.js +9 -7
  110. package/lib/QuickLinksFeature/QuickLinksFeatureItem.js +10 -12
  111. package/lib/Radio/Radio.js +3 -3
  112. package/lib/Radio/RadioButton.js +61 -15
  113. package/lib/Radio/RadioGroup.js +2 -4
  114. package/lib/Radio/RadioInput.js +6 -18
  115. package/lib/RadioCard/RadioCard.js +3 -3
  116. package/lib/RadioCard/RadioCardGroup.js +3 -3
  117. package/lib/Responsive/Responsive.js +3 -2
  118. package/lib/Responsive/ResponsiveWithMediaQueryStyleSheet.js +3 -2
  119. package/lib/Search/Search.js +2 -4
  120. package/lib/Select/Group.js +4 -2
  121. package/lib/Select/Item.js +4 -2
  122. package/lib/Select/Picker.js +2 -4
  123. package/lib/Select/Picker.native.js +3 -5
  124. package/lib/Select/Select.js +4 -6
  125. package/lib/SideNav/Item.js +2 -4
  126. package/lib/SideNav/ItemContent.js +4 -2
  127. package/lib/SideNav/ItemsGroup.js +2 -4
  128. package/lib/SideNav/SideNav.js +2 -2
  129. package/lib/Skeleton/Skeleton.js +2 -4
  130. package/lib/SkipLink/SkipLink.js +2 -4
  131. package/lib/Spacer/Spacer.js +2 -4
  132. package/lib/StackView/StackView.js +2 -4
  133. package/lib/StackView/StackWrap.js +3 -5
  134. package/lib/StackView/StackWrapBox.js +2 -4
  135. package/lib/StackView/StackWrapGap.js +2 -4
  136. package/lib/StackView/getStackedContent.js +3 -3
  137. package/lib/StepTracker/Step.js +4 -2
  138. package/lib/StepTracker/StepTracker.js +2 -4
  139. package/lib/Tabs/Tabs.js +4 -4
  140. package/lib/Tabs/TabsItem.js +3 -5
  141. package/lib/Tags/Tags.js +2 -4
  142. package/lib/TextInput/TextArea.js +3 -5
  143. package/lib/TextInput/TextInput.js +2 -4
  144. package/lib/TextInput/TextInputBase.js +7 -9
  145. package/lib/ThemeProvider/ThemeProvider.js +5 -7
  146. package/lib/Timeline/Timeline.js +2 -4
  147. package/lib/ToggleSwitch/ToggleSwitch.js +2 -4
  148. package/lib/ToggleSwitch/ToggleSwitchGroup.js +2 -4
  149. package/lib/Tooltip/Tooltip.js +6 -8
  150. package/lib/Tooltip/Tooltip.native.js +12 -14
  151. package/lib/TooltipButton/TooltipButton.js +4 -2
  152. package/lib/Typography/Typography.js +2 -4
  153. package/lib/Validator/Validator.js +11 -13
  154. package/lib/ViewportProvider/ViewportProvider.js +2 -4
  155. package/lib/index.js +8 -0
  156. package/lib/utils/BaseView/BaseView.js +2 -4
  157. package/lib/utils/children.js +4 -6
  158. package/lib/utils/withLinkRouter.js +3 -5
  159. package/lib-module/A11yInfoProvider/index.js +8 -8
  160. package/lib-module/A11yText/index.js +2 -2
  161. package/lib-module/ActivityIndicator/Spinner.js +2 -2
  162. package/lib-module/ActivityIndicator/Spinner.native.js +2 -2
  163. package/lib-module/Autocomplete/Autocomplete.js +13 -14
  164. package/lib-module/Autocomplete/Loading.js +4 -2
  165. package/lib-module/Autocomplete/Suggestions.js +2 -2
  166. package/lib-module/Badge/Badge.js +2 -2
  167. package/lib-module/BaseProvider/HydrationContext.js +5 -5
  168. package/lib-module/Box/Box.js +5 -5
  169. package/lib-module/Button/Button.js +2 -2
  170. package/lib-module/Button/ButtonBase.js +2 -5
  171. package/lib-module/Button/ButtonDropdown.js +2 -2
  172. package/lib-module/Button/ButtonGroup.js +11 -2
  173. package/lib-module/Button/ButtonLink.js +2 -2
  174. package/lib-module/Card/Card.js +159 -14
  175. package/lib-module/Card/CardBase.js +2 -2
  176. package/lib-module/Card/PressableCardBase.js +4 -4
  177. package/lib-module/CardGroup/CardGroup.js +210 -0
  178. package/lib-module/CardGroup/dictionary.js +8 -0
  179. package/lib-module/CardGroup/index.js +2 -0
  180. package/lib-module/Carousel/Carousel.js +308 -129
  181. package/lib-module/Carousel/CarouselFirstFocus/CarouselFirstFocus.js +2 -2
  182. package/lib-module/Carousel/CarouselItem/CarouselItem.js +3 -2
  183. package/lib-module/Carousel/CarouselStepTracker/CarouselStepTracker.js +4 -2
  184. package/lib-module/Carousel/CarouselTabs/CarouselTabs.js +2 -2
  185. package/lib-module/Carousel/CarouselTabs/CarouselTabsPanel.js +6 -6
  186. package/lib-module/Carousel/CarouselTabs/CarouselTabsPanelItem.js +3 -3
  187. package/lib-module/Carousel/CarouselThumbnail.js +4 -2
  188. package/lib-module/Carousel/CarouselThumbnailNavigation.js +2 -2
  189. package/lib-module/Checkbox/Checkbox.js +2 -2
  190. package/lib-module/Checkbox/CheckboxButton.js +3 -3
  191. package/lib-module/Checkbox/CheckboxGroup.js +2 -2
  192. package/lib-module/Checkbox/CheckboxInput.js +4 -12
  193. package/lib-module/CheckboxCard/CheckboxCard.js +2 -2
  194. package/lib-module/CheckboxCardGroup/CheckboxCardGroup.js +2 -2
  195. package/lib-module/ColourToggle/ColourBubble.js +5 -4
  196. package/lib-module/ColourToggle/ColourToggle.js +3 -3
  197. package/lib-module/Divider/Divider.js +2 -2
  198. package/lib-module/ExpandCollapse/Accordion.js +2 -2
  199. package/lib-module/ExpandCollapse/Control.js +2 -2
  200. package/lib-module/ExpandCollapse/ExpandCollapse.js +20 -11
  201. package/lib-module/ExpandCollapse/Panel.js +16 -4
  202. package/lib-module/ExpandCollapse/dictionary.js +10 -0
  203. package/lib-module/Feedback/Feedback.js +2 -2
  204. package/lib-module/Fieldset/Fieldset.js +2 -2
  205. package/lib-module/Fieldset/FieldsetContainer.js +2 -2
  206. package/lib-module/Fieldset/FieldsetContainer.native.js +2 -2
  207. package/lib-module/Fieldset/Legend.js +2 -2
  208. package/lib-module/Fieldset/Legend.native.js +2 -2
  209. package/lib-module/FlexGrid/Col/Col.js +3 -3
  210. package/lib-module/FlexGrid/FlexGrid.js +2 -2
  211. package/lib-module/FlexGrid/Row/Row.js +2 -2
  212. package/lib-module/Footnote/Footnote.js +9 -7
  213. package/lib-module/Footnote/FootnoteLink.js +5 -4
  214. package/lib-module/HorizontalScroll/HorizontalScroll.js +8 -8
  215. package/lib-module/HorizontalScroll/HorizontalScrollButton.js +2 -2
  216. package/lib-module/HorizontalScroll/ScrollViewEnd.js +5 -8
  217. package/lib-module/HorizontalScroll/ScrollViewEnd.native.js +2 -2
  218. package/lib-module/Icon/Icon.js +2 -2
  219. package/lib-module/Icon/IconText.js +5 -5
  220. package/lib-module/IconButton/IconButton.js +2 -2
  221. package/lib-module/InputLabel/InputLabel.js +2 -2
  222. package/lib-module/InputLabel/LabelContent.js +2 -2
  223. package/lib-module/InputLabel/LabelContent.native.js +2 -2
  224. package/lib-module/InputSupports/InputSupports.js +4 -3
  225. package/lib-module/Link/ChevronLink.js +2 -2
  226. package/lib-module/Link/InlinePressable.js +10 -4
  227. package/lib-module/Link/InlinePressable.native.js +12 -6
  228. package/lib-module/Link/Link.js +2 -2
  229. package/lib-module/Link/LinkBase.js +2 -2
  230. package/lib-module/Link/TextButton.js +2 -2
  231. package/lib-module/List/List.js +13 -9
  232. package/lib-module/List/ListItem.js +2 -2
  233. package/lib-module/List/ListItemBase.js +6 -8
  234. package/lib-module/List/ListItemContent.js +4 -2
  235. package/lib-module/List/ListItemMark.js +4 -2
  236. package/lib-module/List/PressableListItemBase.js +2 -2
  237. package/lib-module/Listbox/GroupControl.js +4 -2
  238. package/lib-module/Listbox/Listbox.js +7 -7
  239. package/lib-module/Listbox/ListboxContext.js +2 -2
  240. package/lib-module/Listbox/ListboxGroup.js +2 -2
  241. package/lib-module/Listbox/ListboxItem.js +2 -3
  242. package/lib-module/Listbox/ListboxOverlay.js +2 -3
  243. package/lib-module/Listbox/PressableItem.js +2 -3
  244. package/lib-module/Modal/Modal.js +5 -5
  245. package/lib-module/Modal/ModalContent.js +7 -5
  246. package/lib-module/Modal/WebModal.js +19 -10
  247. package/lib-module/MultiSelectFilter/ModalOverlay.js +2 -2
  248. package/lib-module/MultiSelectFilter/MultiSelectFilter.js +10 -8
  249. package/lib-module/Notification/Notification.js +5 -5
  250. package/lib-module/OrderedList/Item.js +4 -8
  251. package/lib-module/OrderedList/ItemBase.js +2 -2
  252. package/lib-module/OrderedList/OrderedList.js +6 -12
  253. package/lib-module/OrderedList/OrderedListBase.js +2 -2
  254. package/lib-module/Pagination/PageButton.js +2 -2
  255. package/lib-module/Pagination/Pagination.js +2 -2
  256. package/lib-module/Pagination/SideButton.js +2 -2
  257. package/lib-module/PriceLockup/PriceLockup.js +5 -5
  258. package/lib-module/ProductCard/ProductCard.js +3 -2
  259. package/lib-module/ProductCardGroup/ProductCardGroup.js +5 -4
  260. package/lib-module/Progress/Progress.js +2 -2
  261. package/lib-module/Progress/ProgressBar.js +2 -2
  262. package/lib-module/Progress/ProgressBarBackground.js +2 -2
  263. package/lib-module/QuickLinks/QuickLinks.js +2 -2
  264. package/lib-module/QuickLinks/QuickLinksCard.js +4 -2
  265. package/lib-module/QuickLinks/QuickLinksItem.js +2 -2
  266. package/lib-module/QuickLinksFeature/QuickLinksFeature.js +9 -5
  267. package/lib-module/QuickLinksFeature/QuickLinksFeatureItem.js +10 -10
  268. package/lib-module/Radio/Radio.js +2 -2
  269. package/lib-module/Radio/RadioButton.js +62 -14
  270. package/lib-module/Radio/RadioGroup.js +2 -2
  271. package/lib-module/Radio/RadioInput.js +6 -16
  272. package/lib-module/RadioCard/RadioCard.js +2 -2
  273. package/lib-module/RadioCard/RadioCardGroup.js +2 -2
  274. package/lib-module/Responsive/Responsive.js +3 -2
  275. package/lib-module/Responsive/ResponsiveWithMediaQueryStyleSheet.js +3 -2
  276. package/lib-module/Search/Search.js +2 -2
  277. package/lib-module/Select/Group.js +4 -2
  278. package/lib-module/Select/Item.js +4 -2
  279. package/lib-module/Select/Picker.js +2 -2
  280. package/lib-module/Select/Picker.native.js +3 -3
  281. package/lib-module/Select/Select.js +4 -4
  282. package/lib-module/SideNav/Item.js +2 -2
  283. package/lib-module/SideNav/ItemContent.js +4 -2
  284. package/lib-module/SideNav/ItemsGroup.js +2 -2
  285. package/lib-module/SideNav/SideNav.js +3 -3
  286. package/lib-module/Skeleton/Skeleton.js +2 -2
  287. package/lib-module/SkipLink/SkipLink.js +2 -2
  288. package/lib-module/Spacer/Spacer.js +2 -2
  289. package/lib-module/StackView/StackView.js +2 -2
  290. package/lib-module/StackView/StackWrap.js +3 -3
  291. package/lib-module/StackView/StackWrapBox.js +2 -2
  292. package/lib-module/StackView/StackWrapGap.js +2 -2
  293. package/lib-module/StackView/getStackedContent.js +4 -4
  294. package/lib-module/StepTracker/Step.js +4 -2
  295. package/lib-module/StepTracker/StepTracker.js +2 -2
  296. package/lib-module/Tabs/Tabs.js +3 -3
  297. package/lib-module/Tabs/TabsItem.js +3 -3
  298. package/lib-module/Tags/Tags.js +2 -2
  299. package/lib-module/TextInput/TextArea.js +3 -3
  300. package/lib-module/TextInput/TextInput.js +2 -2
  301. package/lib-module/TextInput/TextInputBase.js +7 -7
  302. package/lib-module/ThemeProvider/ThemeProvider.js +5 -5
  303. package/lib-module/Timeline/Timeline.js +2 -2
  304. package/lib-module/ToggleSwitch/ToggleSwitch.js +2 -2
  305. package/lib-module/ToggleSwitch/ToggleSwitchGroup.js +2 -2
  306. package/lib-module/Tooltip/Tooltip.js +6 -6
  307. package/lib-module/Tooltip/Tooltip.native.js +12 -12
  308. package/lib-module/TooltipButton/TooltipButton.js +4 -2
  309. package/lib-module/Typography/Typography.js +2 -2
  310. package/lib-module/Validator/Validator.js +11 -11
  311. package/lib-module/ViewportProvider/ViewportProvider.js +2 -2
  312. package/lib-module/index.js +1 -0
  313. package/lib-module/utils/BaseView/BaseView.js +2 -2
  314. package/lib-module/utils/children.js +4 -4
  315. package/lib-module/utils/withLinkRouter.js +3 -3
  316. package/package.json +2 -2
  317. package/src/A11yInfoProvider/index.jsx +8 -8
  318. package/src/A11yText/index.jsx +2 -2
  319. package/src/ActivityIndicator/Spinner.jsx +2 -2
  320. package/src/ActivityIndicator/Spinner.native.jsx +2 -2
  321. package/src/Autocomplete/Autocomplete.jsx +15 -14
  322. package/src/Autocomplete/Loading.jsx +6 -3
  323. package/src/Autocomplete/Suggestions.jsx +2 -2
  324. package/src/Badge/Badge.jsx +2 -2
  325. package/src/BaseProvider/HydrationContext.jsx +5 -5
  326. package/src/Box/Box.jsx +5 -5
  327. package/src/Button/Button.jsx +11 -9
  328. package/src/Button/ButtonBase.jsx +2 -3
  329. package/src/Button/ButtonDropdown.jsx +2 -2
  330. package/src/Button/ButtonGroup.jsx +11 -2
  331. package/src/Button/ButtonLink.jsx +2 -2
  332. package/src/Card/Card.jsx +151 -11
  333. package/src/Card/CardBase.jsx +2 -2
  334. package/src/Card/PressableCardBase.jsx +18 -4
  335. package/src/CardGroup/CardGroup.jsx +249 -0
  336. package/src/CardGroup/dictionary.js +8 -0
  337. package/src/CardGroup/index.js +3 -0
  338. package/src/Carousel/Carousel.jsx +338 -117
  339. package/src/Carousel/CarouselFirstFocus/CarouselFirstFocus.jsx +2 -2
  340. package/src/Carousel/CarouselItem/CarouselItem.jsx +19 -17
  341. package/src/Carousel/CarouselStepTracker/CarouselStepTracker.jsx +5 -3
  342. package/src/Carousel/CarouselTabs/CarouselTabs.jsx +2 -2
  343. package/src/Carousel/CarouselTabs/CarouselTabsPanel.jsx +6 -6
  344. package/src/Carousel/CarouselTabs/CarouselTabsPanelItem.jsx +3 -3
  345. package/src/Carousel/CarouselThumbnail.jsx +6 -2
  346. package/src/Carousel/CarouselThumbnailNavigation.jsx +2 -2
  347. package/src/Checkbox/Checkbox.jsx +2 -2
  348. package/src/Checkbox/CheckboxButton.jsx +5 -7
  349. package/src/Checkbox/CheckboxGroup.jsx +2 -2
  350. package/src/Checkbox/CheckboxInput.jsx +15 -12
  351. package/src/CheckboxCard/CheckboxCard.jsx +2 -2
  352. package/src/CheckboxCardGroup/CheckboxCardGroup.jsx +2 -2
  353. package/src/ColourToggle/ColourBubble.jsx +5 -4
  354. package/src/ColourToggle/ColourToggle.jsx +3 -3
  355. package/src/Divider/Divider.jsx +2 -2
  356. package/src/ExpandCollapse/Accordion.jsx +4 -2
  357. package/src/ExpandCollapse/Control.jsx +2 -2
  358. package/src/ExpandCollapse/ExpandCollapse.jsx +15 -7
  359. package/src/ExpandCollapse/Panel.jsx +30 -8
  360. package/src/ExpandCollapse/dictionary.js +10 -0
  361. package/src/Feedback/Feedback.jsx +2 -2
  362. package/src/Fieldset/Fieldset.jsx +2 -2
  363. package/src/Fieldset/FieldsetContainer.jsx +2 -2
  364. package/src/Fieldset/FieldsetContainer.native.jsx +2 -2
  365. package/src/Fieldset/Legend.jsx +2 -2
  366. package/src/Fieldset/Legend.native.jsx +2 -2
  367. package/src/FlexGrid/Col/Col.jsx +3 -3
  368. package/src/FlexGrid/FlexGrid.jsx +2 -2
  369. package/src/FlexGrid/Row/Row.jsx +2 -2
  370. package/src/Footnote/Footnote.jsx +111 -98
  371. package/src/Footnote/FootnoteLink.jsx +35 -31
  372. package/src/HorizontalScroll/HorizontalScroll.jsx +8 -8
  373. package/src/HorizontalScroll/HorizontalScrollButton.jsx +2 -2
  374. package/src/HorizontalScroll/ScrollViewEnd.jsx +4 -8
  375. package/src/HorizontalScroll/ScrollViewEnd.native.jsx +2 -2
  376. package/src/Icon/Icon.jsx +2 -2
  377. package/src/Icon/IconText.jsx +7 -5
  378. package/src/IconButton/IconButton.jsx +2 -2
  379. package/src/InputLabel/InputLabel.jsx +2 -2
  380. package/src/InputLabel/LabelContent.jsx +2 -2
  381. package/src/InputLabel/LabelContent.native.jsx +2 -2
  382. package/src/InputSupports/InputSupports.jsx +4 -3
  383. package/src/Link/ChevronLink.jsx +2 -2
  384. package/src/Link/InlinePressable.jsx +22 -15
  385. package/src/Link/InlinePressable.native.jsx +12 -6
  386. package/src/Link/Link.jsx +2 -2
  387. package/src/Link/LinkBase.jsx +2 -2
  388. package/src/Link/TextButton.jsx +2 -2
  389. package/src/List/List.jsx +15 -7
  390. package/src/List/ListItem.jsx +2 -2
  391. package/src/List/ListItemBase.jsx +6 -12
  392. package/src/List/ListItemContent.jsx +5 -2
  393. package/src/List/ListItemMark.jsx +5 -3
  394. package/src/List/PressableListItemBase.jsx +2 -2
  395. package/src/Listbox/GroupControl.jsx +5 -2
  396. package/src/Listbox/Listbox.jsx +7 -7
  397. package/src/Listbox/ListboxContext.js +2 -2
  398. package/src/Listbox/ListboxGroup.jsx +2 -2
  399. package/src/Listbox/ListboxItem.jsx +2 -3
  400. package/src/Listbox/ListboxOverlay.jsx +2 -3
  401. package/src/Listbox/PressableItem.jsx +2 -3
  402. package/src/Modal/Modal.jsx +5 -5
  403. package/src/Modal/ModalContent.jsx +132 -125
  404. package/src/Modal/WebModal.jsx +17 -8
  405. package/src/MultiSelectFilter/ModalOverlay.jsx +2 -2
  406. package/src/MultiSelectFilter/MultiSelectFilter.jsx +263 -252
  407. package/src/Notification/Notification.jsx +5 -5
  408. package/src/OrderedList/Item.jsx +4 -6
  409. package/src/OrderedList/ItemBase.jsx +2 -2
  410. package/src/OrderedList/OrderedList.jsx +4 -7
  411. package/src/OrderedList/OrderedListBase.jsx +2 -2
  412. package/src/Pagination/PageButton.jsx +2 -2
  413. package/src/Pagination/Pagination.jsx +2 -2
  414. package/src/Pagination/SideButton.jsx +2 -2
  415. package/src/PriceLockup/PriceLockup.jsx +93 -88
  416. package/src/ProductCard/ProductCard.jsx +90 -84
  417. package/src/ProductCardGroup/ProductCardGroup.jsx +5 -5
  418. package/src/Progress/Progress.jsx +2 -2
  419. package/src/Progress/ProgressBar.jsx +2 -2
  420. package/src/Progress/ProgressBarBackground.jsx +4 -2
  421. package/src/QuickLinks/QuickLinks.jsx +2 -2
  422. package/src/QuickLinks/QuickLinksCard.jsx +9 -3
  423. package/src/QuickLinks/QuickLinksItem.jsx +2 -2
  424. package/src/QuickLinksFeature/QuickLinksFeature.jsx +31 -27
  425. package/src/QuickLinksFeature/QuickLinksFeatureItem.jsx +3 -3
  426. package/src/Radio/Radio.jsx +2 -2
  427. package/src/Radio/RadioButton.jsx +58 -6
  428. package/src/Radio/RadioGroup.jsx +2 -2
  429. package/src/Radio/RadioInput.jsx +15 -14
  430. package/src/RadioCard/RadioCard.jsx +2 -2
  431. package/src/RadioCard/RadioCardGroup.jsx +2 -2
  432. package/src/Responsive/Responsive.jsx +8 -3
  433. package/src/Responsive/ResponsiveWithMediaQueryStyleSheet.jsx +23 -16
  434. package/src/Search/Search.jsx +2 -2
  435. package/src/Select/Group.jsx +9 -3
  436. package/src/Select/Item.jsx +7 -1
  437. package/src/Select/Picker.jsx +2 -2
  438. package/src/Select/Picker.native.jsx +3 -3
  439. package/src/Select/Select.jsx +4 -4
  440. package/src/SideNav/Item.jsx +2 -2
  441. package/src/SideNav/ItemContent.jsx +7 -3
  442. package/src/SideNav/ItemsGroup.jsx +2 -2
  443. package/src/SideNav/SideNav.jsx +3 -3
  444. package/src/Skeleton/Skeleton.jsx +2 -2
  445. package/src/SkipLink/SkipLink.jsx +2 -2
  446. package/src/Spacer/Spacer.jsx +2 -2
  447. package/src/StackView/StackView.jsx +2 -2
  448. package/src/StackView/StackWrap.jsx +3 -3
  449. package/src/StackView/StackWrapBox.jsx +2 -2
  450. package/src/StackView/StackWrapGap.jsx +2 -2
  451. package/src/StackView/getStackedContent.jsx +4 -4
  452. package/src/StepTracker/Step.jsx +75 -67
  453. package/src/StepTracker/StepTracker.jsx +2 -2
  454. package/src/Tabs/Tabs.jsx +3 -3
  455. package/src/Tabs/TabsItem.jsx +3 -3
  456. package/src/Tags/Tags.jsx +2 -2
  457. package/src/TextInput/TextArea.jsx +3 -3
  458. package/src/TextInput/TextInput.jsx +2 -2
  459. package/src/TextInput/TextInputBase.jsx +7 -7
  460. package/src/ThemeProvider/ThemeProvider.jsx +5 -5
  461. package/src/Timeline/Timeline.jsx +2 -2
  462. package/src/ToggleSwitch/ToggleSwitch.jsx +2 -2
  463. package/src/ToggleSwitch/ToggleSwitchGroup.jsx +2 -2
  464. package/src/Tooltip/Tooltip.jsx +6 -6
  465. package/src/Tooltip/Tooltip.native.jsx +12 -12
  466. package/src/TooltipButton/TooltipButton.jsx +5 -2
  467. package/src/Typography/Typography.jsx +2 -2
  468. package/src/Validator/Validator.jsx +11 -11
  469. package/src/ViewportProvider/ViewportProvider.jsx +2 -2
  470. package/src/index.js +1 -0
  471. package/src/utils/BaseView/BaseView.jsx +2 -2
  472. package/src/utils/children.jsx +4 -4
  473. package/src/utils/withLinkRouter.jsx +3 -3
  474. package/types/ExpandCollapse.d.ts +1 -1
@@ -35,7 +35,7 @@ const selectProductCardTokens = _ref => {
35
35
  paddingVertical
36
36
  };
37
37
  };
38
- const ProductCard = _ref2 => {
38
+ const ProductCard = /*#__PURE__*/React.forwardRef((_ref2, ref) => {
39
39
  var _getCopy;
40
40
  let {
41
41
  copy = 'en',
@@ -102,6 +102,7 @@ const ProductCard = _ref2 => {
102
102
  return /*#__PURE__*/_jsxs(View, {
103
103
  ...selectProps(rest),
104
104
  style: [selectProductCardTokens(themeTokens), staticStyles.container],
105
+ ref: ref,
105
106
  children: [image !== null && image !== void 0 && image.src ? /*#__PURE__*/_jsx(View, {
106
107
  style: staticStyles.imageContainer,
107
108
  children: /*#__PURE__*/_jsx(Image, {
@@ -173,7 +174,7 @@ const ProductCard = _ref2 => {
173
174
  })
174
175
  })]
175
176
  });
176
- };
177
+ });
177
178
  ProductCard.displayName = 'ProductCard';
178
179
 
179
180
  // If a language dictionary entry is provided, it must contain every key
@@ -1,4 +1,4 @@
1
- import React, { useState } from 'react';
1
+ import React from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import View from "react-native-web/dist/exports/View";
4
4
  import { selectSystemProps, htmlAttrs, viewProps, a11yProps } from '../utils';
@@ -6,13 +6,13 @@ import ProductCard from '../ProductCard';
6
6
  import { StackWrap } from '../StackView';
7
7
  import { jsx as _jsx } from "react/jsx-runtime";
8
8
  const [selectProps, selectedSystemPropTypes] = selectSystemProps([htmlAttrs, viewProps, a11yProps]);
9
- const ProductCardGroup = _ref => {
9
+ const ProductCardGroup = /*#__PURE__*/React.forwardRef((_ref, ref) => {
10
10
  let {
11
11
  productCards,
12
12
  maxSelection = 1,
13
13
  ...rest
14
14
  } = _ref;
15
- const [selectedCardIds, setSelectedCardIds] = useState([]);
15
+ const [selectedCardIds, setSelectedCardIds] = React.useState([]);
16
16
  const handleSelect = id => {
17
17
  const isAlreadySelected = selectedCardIds.includes(id);
18
18
  let updatedSelectedCardIds;
@@ -27,6 +27,7 @@ const ProductCardGroup = _ref => {
27
27
  };
28
28
  return /*#__PURE__*/_jsx(View, {
29
29
  ...selectProps(rest),
30
+ ref: ref,
30
31
  children: /*#__PURE__*/_jsx(StackWrap, {
31
32
  direction: {
32
33
  xs: 'column',
@@ -46,7 +47,7 @@ const ProductCardGroup = _ref => {
46
47
  })
47
48
  })
48
49
  });
49
- };
50
+ });
50
51
  ProductCardGroup.displayName = 'ProductCardGroup';
51
52
  ProductCardGroup.propTypes = {
52
53
  ...selectedSystemPropTypes,
@@ -1,4 +1,4 @@
1
- import React, { forwardRef } from 'react';
1
+ import React from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import View from "react-native-web/dist/exports/View";
4
4
  import { useThemeTokens } from '../ThemeProvider';
@@ -51,7 +51,7 @@ const selectProgressStyles = _ref => {
51
51
  * role.
52
52
  *
53
53
  */
54
- const Progress = /*#__PURE__*/forwardRef((_ref2, ref) => {
54
+ const Progress = /*#__PURE__*/React.forwardRef((_ref2, ref) => {
55
55
  let {
56
56
  children,
57
57
  tokens,
@@ -1,4 +1,4 @@
1
- import React, { forwardRef } from 'react';
1
+ import React from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import Platform from "react-native-web/dist/exports/Platform";
4
4
  import StyleSheet from "react-native-web/dist/exports/StyleSheet";
@@ -58,7 +58,7 @@ const selectBarStyles = (_ref, percentage) => {
58
58
  * - `accessibilityValue.text` (`aria-valuetext`): `%{percentage}%`,
59
59
  *
60
60
  */
61
- const ProgressBar = /*#__PURE__*/forwardRef((_ref2, ref) => {
61
+ const ProgressBar = /*#__PURE__*/React.forwardRef((_ref2, ref) => {
62
62
  let {
63
63
  children = null,
64
64
  percentage = 0,
@@ -1,11 +1,11 @@
1
- import React, { forwardRef } from 'react';
1
+ import React from 'react';
2
2
  import ImageBackground from "react-native-web/dist/exports/ImageBackground";
3
3
  import StyleSheet from "react-native-web/dist/exports/StyleSheet";
4
4
  import { variantProp } from '../utils';
5
5
  import { jsx as _jsx } from "react/jsx-runtime";
6
6
  const inactiveBackground = `%3Csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='24'%3E%3Cdefs%3E%3Cpattern id='inactive' patternUnits='userSpaceOnUse' width='8' height='8'%3E%3Crect width='8' height='8' fill='rgba(255, 255, 255, 0)'%3E%3C/rect%3E%3Ccircle cx='4' cy='4' r='2' fill='rgba(0, 0, 0, 0.4)' stroke='rgba(0, 0, 0, 0.4)' stroke-width='0'%3E%3C/circle%3E%3Ccircle cx='0' cy='0' r='2' fill='rgba(0, 0, 0, 0.4)' stroke='rgba(0, 0, 0, 0.4)' stroke-width='0'%3E%3C/circle%3E%3Ccircle cx='0' cy='8' r='2' fill='rgba(0, 0, 0, 0.4)' stroke='rgba(0, 0, 0, 0.4)' stroke-width='0'%3E%3C/circle%3E%3Ccircle cx='8' cy='0' r='2' fill='rgba(0, 0, 0, 0.4)' stroke='rgba(0, 0, 0, 0.4)' stroke-width='0'%3E%3C/circle%3E%3Ccircle cx='8' cy='8' r='2' fill='rgba(0, 0, 0, 0.4)' stroke='rgba(0, 0, 0, 0.4)' stroke-width='0'%3E%3C/circle%3E%3C/pattern%3E%3C/defs%3E%3Cpath d='M 0 0 L 0 140 L 2000 2000 L 2000 0 Z' style='fill: url("%23inactive");'%3E%3C/path%3E%3C/svg%3E`;
7
7
  const negativeBackground = `%3Csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='24'%3E%3Cdefs%3E%3Cpattern id='negative' patternUnits='userSpaceOnUse' width='8' height='8'%3E%3Crect width='8' height='8' fill='rgba(255, 255, 255, 0)'%3E%3C/rect%3E%3Cpath d='M 0,8 l 8,-8 M -2,2 l 4,-4 M 6,10 l 4,-4' stroke-width='1' shape-rendering='auto' stroke='rgba(255, 255, 255, 0.4)' stroke-linecap='square'%3E%3C/path%3E%3C/pattern%3E%3C/defs%3E%3Cpath d='M 0 0 L 0 140 L 2000 2000 L 2000 0 Z' style='fill: url("%23negative");'%3E%3C/path%3E%3C/svg%3E`;
8
- const ProgressBarBackground = /*#__PURE__*/forwardRef((_ref, ref) => {
8
+ const ProgressBarBackground = /*#__PURE__*/React.forwardRef((_ref, ref) => {
9
9
  let {
10
10
  variant
11
11
  } = _ref;
@@ -1,4 +1,4 @@
1
- import React, { forwardRef } from 'react';
1
+ import React from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import { useThemeTokens } from '../ThemeProvider';
4
4
  import { useViewport } from '../ViewportProvider';
@@ -14,7 +14,7 @@ import QuickLinksCard from './QuickLinksCard';
14
14
  * - If the theme returns `card` token as true, it wraps the above with a `Card`.
15
15
  */
16
16
  import { jsx as _jsx } from "react/jsx-runtime";
17
- const QuickLinks = /*#__PURE__*/forwardRef((_ref, ref) => {
17
+ const QuickLinks = /*#__PURE__*/React.forwardRef((_ref, ref) => {
18
18
  let {
19
19
  tokens,
20
20
  variant,
@@ -11,7 +11,7 @@ import CardBase from '../Card/CardBase';
11
11
  * QuickLinksCard theme rather than the Card theme.
12
12
  */
13
13
  import { jsx as _jsx } from "react/jsx-runtime";
14
- const QuickLinksList = _ref => {
14
+ const QuickLinksList = /*#__PURE__*/React.forwardRef((_ref, ref) => {
15
15
  let {
16
16
  tokens,
17
17
  variant,
@@ -20,9 +20,11 @@ const QuickLinksList = _ref => {
20
20
  const themeTokens = useThemeTokens('QuickLinksCard', tokens, variant);
21
21
  return /*#__PURE__*/_jsx(CardBase, {
22
22
  tokens: themeTokens,
23
+ ref: ref,
23
24
  children: children
24
25
  });
25
- };
26
+ });
27
+ QuickLinksList.displayName = 'QuickLinksList';
26
28
  QuickLinksList.propTypes = {
27
29
  tokens: getTokensPropType('QuickLinksCard'),
28
30
  variant: variantProp.propType,
@@ -1,4 +1,4 @@
1
- import React, { forwardRef } from 'react';
1
+ import React from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import { getTokensPropType, variantProp, withLinkRouter } from '../utils';
4
4
  import { useViewport } from '../ViewportProvider';
@@ -12,7 +12,7 @@ import ButtonBase from '../Button/ButtonBase';
12
12
  * Receives props injected by QuickLinks and renders the appropriate child component.
13
13
  */
14
14
  import { jsx as _jsx } from "react/jsx-runtime";
15
- const QuickLinksItem = /*#__PURE__*/forwardRef((_ref, ref) => {
15
+ const QuickLinksItem = /*#__PURE__*/React.forwardRef((_ref, ref) => {
16
16
  let {
17
17
  tokens,
18
18
  variant,
@@ -1,6 +1,7 @@
1
- import React, { forwardRef, Children, cloneElement } from 'react';
1
+ import React from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import { StackWrap } from '../StackView';
4
+ import { useViewport } from '../ViewportProvider';
4
5
  import { useThemeTokens } from '../ThemeProvider';
5
6
  import { a11yProps, getTokensPropType, selectSystemProps, variantProp, viewProps } from '../utils';
6
7
 
@@ -17,7 +18,7 @@ const isQuickListItem = element => {
17
18
  * QuickLinksFeature renders a list of interactive items.
18
19
  * - This is the base component that is used as a wrapper and accepts a List of `QuickLinksFeature.Item`
19
20
  */
20
- const QuickLinksFeature = /*#__PURE__*/forwardRef((_ref, ref) => {
21
+ const QuickLinksFeature = /*#__PURE__*/React.forwardRef((_ref, ref) => {
21
22
  let {
22
23
  tokens,
23
24
  variant,
@@ -25,14 +26,17 @@ const QuickLinksFeature = /*#__PURE__*/forwardRef((_ref, ref) => {
25
26
  children,
26
27
  ...rest
27
28
  } = _ref;
29
+ const viewport = useViewport();
28
30
  const {
29
31
  stackGap,
30
32
  stackJustify,
31
33
  stackSpace
32
- } = useThemeTokens('QuickLinksFeature', tokens, variant);
33
- const items = Children.map(children, child => {
34
+ } = useThemeTokens('QuickLinksFeature', tokens, variant, {
35
+ viewport
36
+ });
37
+ const items = React.Children.map(children, child => {
34
38
  if (isQuickListItem(child)) {
35
- return /*#__PURE__*/cloneElement(child, child.props);
39
+ return /*#__PURE__*/React.cloneElement(child, child.props);
36
40
  }
37
41
  return null;
38
42
  });
@@ -1,4 +1,4 @@
1
- import React, { forwardRef } from 'react';
1
+ import React from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import Image from "react-native-web/dist/exports/Image";
4
4
  import Platform from "react-native-web/dist/exports/Platform";
@@ -56,7 +56,7 @@ const selectLinkToken = _ref2 => {
56
56
  *
57
57
  * It will receive a image source and a accessibility label and will render a link accordingly with the theme tokens
58
58
  */
59
- const QuickLinksFeatureItem = /*#__PURE__*/forwardRef((_ref3, ref) => {
59
+ const QuickLinksFeatureItem = /*#__PURE__*/React.forwardRef((_ref3, ref) => {
60
60
  let {
61
61
  tokens,
62
62
  variant,
@@ -101,25 +101,25 @@ const QuickLinksFeatureItem = /*#__PURE__*/forwardRef((_ref3, ref) => {
101
101
  ...themeTokens,
102
102
  contentMaxDimension
103
103
  }),
104
- children: /*#__PURE__*/_jsxs(StackWrap, {
104
+ children: /*#__PURE__*/_jsx(StackWrap, {
105
105
  direction: contentDirection,
106
106
  space: contentSpace,
107
107
  gap: gap,
108
108
  tokens: {
109
109
  alignItems: contentAlignItems
110
110
  },
111
- children: [/*#__PURE__*/_jsx(View, {
111
+ children: /*#__PURE__*/_jsxs(View, {
112
112
  style: selectImageContainerStyle(contentMaxDimension),
113
- children: /*#__PURE__*/_jsx(Image, {
113
+ children: [/*#__PURE__*/_jsx(Image, {
114
114
  accessibilityIgnoresInvertColors: true,
115
115
  imageAccessibilityLabel: imageAccessibilityLabel,
116
116
  source: imageSource,
117
117
  style: selectImageStyle(imageDimension)
118
- })
119
- }), /*#__PURE__*/_jsx(Text, {
120
- style: textStyle,
121
- children: children
122
- })]
118
+ }), /*#__PURE__*/_jsx(Text, {
119
+ style: textStyle,
120
+ children: children
121
+ })]
122
+ })
123
123
  })
124
124
  });
125
125
  }
@@ -1,4 +1,4 @@
1
- import React, { forwardRef } from 'react';
1
+ import React from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import Pressable from "react-native-web/dist/exports/Pressable";
4
4
  import StyleSheet from "react-native-web/dist/exports/StyleSheet";
@@ -108,7 +108,7 @@ const selectLabelStyles = _ref3 => {
108
108
  * or the internal state in case of uncontrolled radio button.
109
109
  *
110
110
  */
111
- const Radio = /*#__PURE__*/forwardRef((_ref4, ref) => {
111
+ const Radio = /*#__PURE__*/React.forwardRef((_ref4, ref) => {
112
112
  let {
113
113
  checked,
114
114
  defaultChecked,
@@ -1,10 +1,10 @@
1
- import React, { forwardRef } from 'react';
1
+ import React from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import Platform from "react-native-web/dist/exports/Platform";
4
4
  import StyleSheet from "react-native-web/dist/exports/StyleSheet";
5
5
  import View from "react-native-web/dist/exports/View";
6
6
  import RadioInput from './RadioInput';
7
- import { applyOuterBorder, resolveThemeTokens, validateThemeTokens } from '../ThemeProvider';
7
+ import { applyOuterBorder, applyShadowToken, resolveThemeTokens, validateThemeTokens, useThemeTokens } from '../ThemeProvider';
8
8
  import { a11yProps, getTokensSetPropType, selectSystemProps, selectTokens, viewProps } from '../utils';
9
9
  import { jsx as _jsx } from "react/jsx-runtime";
10
10
  import { jsxs as _jsxs } from "react/jsx-runtime";
@@ -27,7 +27,38 @@ const selectCheckedStyles = _ref => {
27
27
  width: checkedSize
28
28
  };
29
29
  };
30
- const selectInputStyles = _ref2 => {
30
+ const selectIconTokens = _ref2 => {
31
+ let {
32
+ icon,
33
+ iconColor,
34
+ checkedSize
35
+ } = _ref2;
36
+ return {
37
+ icon,
38
+ color: iconColor,
39
+ size: checkedSize
40
+ };
41
+ };
42
+ const selectInputIconStyles = (_ref3, isChecked) => {
43
+ let {
44
+ iconBackgroundColor,
45
+ inputBackgroundColor,
46
+ inputBorderColor,
47
+ inputBorderWidth,
48
+ inputSize,
49
+ containerShadow
50
+ } = _ref3;
51
+ return {
52
+ borderColor: inputBorderColor,
53
+ borderRadius: getBorderRadius(inputSize),
54
+ borderWidth: inputBorderWidth,
55
+ backgroundColor: isChecked ? iconBackgroundColor : inputBackgroundColor,
56
+ height: inputSize,
57
+ width: inputSize,
58
+ ...applyShadowToken(containerShadow)
59
+ };
60
+ };
61
+ const selectInputStyles = _ref4 => {
31
62
  let {
32
63
  inputBackgroundColor,
33
64
  inputBorderColor,
@@ -35,7 +66,7 @@ const selectInputStyles = _ref2 => {
35
66
  inputOutlineColor,
36
67
  inputOutlineWidth,
37
68
  inputSize
38
- } = _ref2;
69
+ } = _ref4;
39
70
  return {
40
71
  borderColor: inputBorderColor,
41
72
  borderRadius: getBorderRadius(inputSize),
@@ -52,13 +83,13 @@ const selectInputStyles = _ref2 => {
52
83
  })
53
84
  };
54
85
  };
55
- const selectOuterBorderStyles = _ref3 => {
86
+ const selectOuterBorderStyles = _ref5 => {
56
87
  let {
57
88
  outerBorderColor,
58
89
  outerBorderWidth,
59
90
  outerBorderGap,
60
91
  inputSize
61
- } = _ref3;
92
+ } = _ref5;
62
93
  return {
63
94
  ...applyOuterBorder({
64
95
  outerBorderColor,
@@ -73,7 +104,7 @@ const selectOuterBorderStyles = _ref3 => {
73
104
  * The visual toggle of a radio input. Is not interactive on its own, should be used inside
74
105
  * an interactive parent that passes down props when interacted with.
75
106
  */
76
- const RadioButton = /*#__PURE__*/forwardRef((_ref4, ref) => {
107
+ const RadioButton = /*#__PURE__*/React.forwardRef((_ref6, ref) => {
77
108
  let {
78
109
  isChecked,
79
110
  tokens,
@@ -84,16 +115,36 @@ const RadioButton = /*#__PURE__*/forwardRef((_ref4, ref) => {
84
115
  handleChange,
85
116
  name: inputName,
86
117
  value,
118
+ testID = 'Radio-Checked',
87
119
  ...rest
88
- } = _ref4;
89
- const themeTokens = validateThemeTokens(resolveThemeTokens(tokens, {
120
+ } = _ref6;
121
+ const radioTokens = useThemeTokens('Radio', tokens, {
122
+ checked: isChecked
123
+ });
124
+ const {
125
+ icon: IconComponent,
126
+ ...iconTokens
127
+ } = selectIconTokens(radioTokens);
128
+ const themeTokens = validateThemeTokens(resolveThemeTokens(IconComponent ? radioTokens : tokens, {
90
129
  checked: isChecked
91
130
  }), getTokensSetPropType(tokenKeys), 'RadioButton');
131
+ const getCheckedInput = checked => {
132
+ if (!checked) return null;
133
+ if (!IconComponent) {
134
+ return /*#__PURE__*/_jsx(View, {
135
+ style: selectCheckedStyles(themeTokens),
136
+ testID: testID
137
+ });
138
+ }
139
+ return /*#__PURE__*/_jsx(IconComponent, {
140
+ ...iconTokens
141
+ });
142
+ };
92
143
  return /*#__PURE__*/_jsx(View, {
93
144
  style: selectOuterBorderStyles(themeTokens),
94
145
  ...selectProps(rest),
95
146
  children: /*#__PURE__*/_jsxs(View, {
96
- style: [staticStyles.defaultInputStyles, selectInputStyles(themeTokens, isChecked)],
147
+ style: [staticStyles.defaultInputStyles, IconComponent ? selectInputIconStyles(themeTokens, isChecked) : selectInputStyles(themeTokens)],
97
148
  testID: "Radio-Input",
98
149
  children: [/*#__PURE__*/_jsx(RadioInput, {
99
150
  ref: ref,
@@ -105,10 +156,7 @@ const RadioButton = /*#__PURE__*/forwardRef((_ref4, ref) => {
105
156
  onChange: handleChange,
106
157
  name: inputName,
107
158
  value: value
108
- }), isChecked && /*#__PURE__*/_jsx(View, {
109
- style: selectCheckedStyles(themeTokens),
110
- testID: "Radio-Checked"
111
- })]
159
+ }), getCheckedInput(isChecked)]
112
160
  })
113
161
  });
114
162
  });
@@ -1,4 +1,4 @@
1
- import React, { forwardRef } from 'react';
1
+ import React from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import ABBPropTypes from 'airbnb-prop-types';
4
4
  import { useViewport } from '../ViewportProvider';
@@ -59,7 +59,7 @@ const [selectItemProps, selectedItemPropTypes] = selectSystemProps([a11yProps, f
59
59
  * />
60
60
  * ```
61
61
  */
62
- const RadioGroup = /*#__PURE__*/forwardRef((_ref, ref) => {
62
+ const RadioGroup = /*#__PURE__*/React.forwardRef((_ref, ref) => {
63
63
  let {
64
64
  copy = 'en',
65
65
  tokens,
@@ -1,19 +1,19 @@
1
- import React, { forwardRef } from 'react';
1
+ import React from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
 
4
4
  /**
5
5
  * On Web we need to include an actual input but hide it.
6
6
  */
7
7
  import { jsx as _jsx } from "react/jsx-runtime";
8
- const RadioInput = /*#__PURE__*/forwardRef((_ref, ref) => {
8
+ const RadioInput = /*#__PURE__*/React.forwardRef((_ref, ref) => {
9
9
  let {
10
10
  checked,
11
11
  defaultChecked,
12
- disabled,
13
- id,
14
- isControlled,
12
+ disabled = false,
13
+ id = null,
14
+ isControlled = false,
15
15
  name,
16
- onChange,
16
+ onChange = () => {},
17
17
  value
18
18
  } = _ref;
19
19
  const handleClick = event => {
@@ -47,14 +47,4 @@ RadioInput.propTypes = {
47
47
  onChange: PropTypes.func,
48
48
  value: PropTypes.oneOfType([PropTypes.string, PropTypes.number, PropTypes.bool])
49
49
  };
50
- RadioInput.defaultProps = {
51
- checked: undefined,
52
- defaultChecked: undefined,
53
- disabled: false,
54
- id: null,
55
- isControlled: false,
56
- name: undefined,
57
- onChange: () => {},
58
- value: undefined
59
- };
60
50
  export default RadioInput;
@@ -1,4 +1,4 @@
1
- import React, { forwardRef } from 'react';
1
+ import React from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import StyleSheet from "react-native-web/dist/exports/StyleSheet";
4
4
  import Text from "react-native-web/dist/exports/Text";
@@ -47,7 +47,7 @@ const [selectProps, selectedSystemPropTypes] = selectSystemProps([a11yProps, foc
47
47
  * accessibility role `'radio'` and accessibility state that depends on the other props (`checked`, `inactive`)
48
48
  * or the internal state in case of uncontrolled radio button.
49
49
  */
50
- const RadioCard = /*#__PURE__*/forwardRef((_ref, ref) => {
50
+ const RadioCard = /*#__PURE__*/React.forwardRef((_ref, ref) => {
51
51
  let {
52
52
  tokens,
53
53
  variant,
@@ -1,4 +1,4 @@
1
- import React, { forwardRef } from 'react';
1
+ import React from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import { useViewport } from '../ViewportProvider';
4
4
  import { useThemeTokens } from '../ThemeProvider';
@@ -60,7 +60,7 @@ const [selectItemProps, selectedItemPropTypes] = selectSystemProps([a11yProps, f
60
60
  * />
61
61
  * ```
62
62
  */
63
- const RadioCardGroup = /*#__PURE__*/forwardRef((_ref, ref) => {
63
+ const RadioCardGroup = /*#__PURE__*/React.forwardRef((_ref, ref) => {
64
64
  let {
65
65
  copy = 'en',
66
66
  tokens,
@@ -17,7 +17,7 @@ import ResponsiveWithMediaQueryStyleSheet from './ResponsiveWithMediaQueryStyleS
17
17
  * is used to hide and show children of `Responsive` within a View.
18
18
  */
19
19
  import { jsx as _jsx } from "react/jsx-runtime";
20
- const Responsive = _ref => {
20
+ const Responsive = /*#__PURE__*/React.forwardRef((_ref, ref) => {
21
21
  let {
22
22
  min = 'xs',
23
23
  max,
@@ -34,6 +34,7 @@ const Responsive = _ref => {
34
34
  inheritedStyles: inheritedStyles,
35
35
  min: min,
36
36
  max: max,
37
+ ref: ref,
37
38
  children: children
38
39
  });
39
40
  }
@@ -42,7 +43,7 @@ const Responsive = _ref => {
42
43
  max: max,
43
44
  children: children
44
45
  });
45
- };
46
+ });
46
47
  Responsive.displayName = 'Responsive';
47
48
  Responsive.propTypes = {
48
49
  /**
@@ -24,7 +24,7 @@ function generateResponsiveStyles(min, max) {
24
24
  });
25
25
  return createMediaQueryStyles(styles, false);
26
26
  }
27
- const ResponsiveWithMediaQueryStyleSheet = _ref => {
27
+ const ResponsiveWithMediaQueryStyleSheet = /*#__PURE__*/React.forwardRef((_ref, ref) => {
28
28
  let {
29
29
  min,
30
30
  max,
@@ -48,9 +48,10 @@ const ResponsiveWithMediaQueryStyleSheet = _ref => {
48
48
  dataSet: ids.responsive && {
49
49
  media: ids.responsive
50
50
  },
51
+ ref: ref,
51
52
  children: children
52
53
  });
53
- };
54
+ });
54
55
  ResponsiveWithMediaQueryStyleSheet.displayName = 'Responsive';
55
56
  ResponsiveWithMediaQueryStyleSheet.propTypes = {
56
57
  /**
@@ -1,4 +1,4 @@
1
- import React, { forwardRef } from 'react';
1
+ import React from 'react';
2
2
  import View from "react-native-web/dist/exports/View";
3
3
  import PropTypes from 'prop-types';
4
4
  import { useThemeTokens, useThemeTokensCallback } from '../ThemeProvider';
@@ -58,7 +58,7 @@ const selectIconTokens = _ref2 => {
58
58
  * Use the following props to supply additional accessibility labels for the input - `accessibilityLabel`,
59
59
  * clear button - `clearButtonAccessibilityLabel`, and submit button - `submitButtonAccessibilityLabel`.
60
60
  */
61
- const Search = /*#__PURE__*/forwardRef((_ref3, ref) => {
61
+ const Search = /*#__PURE__*/React.forwardRef((_ref3, ref) => {
62
62
  let {
63
63
  initialValue,
64
64
  value,
@@ -2,16 +2,18 @@ import React from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import { componentPropType } from '../utils';
4
4
  import { jsx as _jsx } from "react/jsx-runtime";
5
- const Group = _ref => {
5
+ const Group = /*#__PURE__*/React.forwardRef((_ref, ref) => {
6
6
  let {
7
7
  children,
8
8
  label
9
9
  } = _ref;
10
10
  return /*#__PURE__*/_jsx("optgroup", {
11
11
  label: label,
12
+ ref: ref,
12
13
  children: children
13
14
  });
14
- };
15
+ });
16
+ Group.displayName = 'Group';
15
17
  export default Group;
16
18
  Group.propTypes = {
17
19
  children: componentPropType('Item'),
@@ -1,16 +1,18 @@
1
1
  import React from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import { jsx as _jsx } from "react/jsx-runtime";
4
- const Item = _ref => {
4
+ const Item = /*#__PURE__*/React.forwardRef((_ref, ref) => {
5
5
  let {
6
6
  children,
7
7
  value
8
8
  } = _ref;
9
9
  return /*#__PURE__*/_jsx("option", {
10
10
  value: value,
11
+ ref: ref,
11
12
  children: children
12
13
  });
13
- };
14
+ });
15
+ Item.displayName = 'Item';
14
16
  export default Item;
15
17
  Item.propTypes = {
16
18
  children: PropTypes.string.isRequired,
@@ -1,9 +1,9 @@
1
- import React, { forwardRef } from 'react';
1
+ import React from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import { componentPropType } from '../utils';
4
4
  import { jsx as _jsx } from "react/jsx-runtime";
5
5
  import { jsxs as _jsxs } from "react/jsx-runtime";
6
- const Picker = /*#__PURE__*/forwardRef((_ref, ref) => {
6
+ const Picker = /*#__PURE__*/React.forwardRef((_ref, ref) => {
7
7
  let {
8
8
  value,
9
9
  onChange,
@@ -1,4 +1,4 @@
1
- import React, { forwardRef, Children } from 'react';
1
+ import React from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import View from "react-native-web/dist/exports/View";
4
4
  import Platform from "react-native-web/dist/exports/Platform";
@@ -39,7 +39,7 @@ const selectAndroidContainerStyles = _ref2 => {
39
39
  height: rest.height + ANDROID_HEIGHT_OFFSET
40
40
  };
41
41
  };
42
- const Picker = /*#__PURE__*/forwardRef((_ref3, ref) => {
42
+ const Picker = /*#__PURE__*/React.forwardRef((_ref3, ref) => {
43
43
  let {
44
44
  value,
45
45
  onChange,
@@ -52,7 +52,7 @@ const Picker = /*#__PURE__*/forwardRef((_ref3, ref) => {
52
52
  ...rest
53
53
  } = _ref3;
54
54
  // Ungroup items, since there's no way to support groups on native
55
- const flatChildren = Children.toArray(children).flatMap(child => {
55
+ const flatChildren = React.Children.toArray(children).flatMap(child => {
56
56
  if (child.type === Group) {
57
57
  return child.props.children;
58
58
  }