@telus-uds/components-base 1.84.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 (471) hide show
  1. package/CHANGELOG.md +18 -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 +2 -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 +67 -57
  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 +2 -4
  44. package/lib/ExpandCollapse/Panel.js +3 -5
  45. package/lib/Feedback/Feedback.js +2 -4
  46. package/lib/Fieldset/Fieldset.js +2 -4
  47. package/lib/Fieldset/FieldsetContainer.js +2 -4
  48. package/lib/Fieldset/FieldsetContainer.native.js +2 -4
  49. package/lib/Fieldset/Legend.js +2 -4
  50. package/lib/Fieldset/Legend.native.js +2 -4
  51. package/lib/FlexGrid/Col/Col.js +3 -5
  52. package/lib/FlexGrid/FlexGrid.js +2 -4
  53. package/lib/FlexGrid/Row/Row.js +2 -4
  54. package/lib/Footnote/Footnote.js +9 -9
  55. package/lib/Footnote/FootnoteLink.js +5 -3
  56. package/lib/HorizontalScroll/HorizontalScroll.js +8 -10
  57. package/lib/HorizontalScroll/HorizontalScrollButton.js +2 -4
  58. package/lib/HorizontalScroll/ScrollViewEnd.js +5 -10
  59. package/lib/HorizontalScroll/ScrollViewEnd.native.js +2 -4
  60. package/lib/Icon/Icon.js +2 -4
  61. package/lib/Icon/IconText.js +3 -3
  62. package/lib/IconButton/IconButton.js +2 -4
  63. package/lib/InputLabel/InputLabel.js +2 -4
  64. package/lib/InputLabel/LabelContent.js +2 -4
  65. package/lib/InputLabel/LabelContent.native.js +2 -4
  66. package/lib/InputSupports/InputSupports.js +4 -5
  67. package/lib/Link/ChevronLink.js +2 -4
  68. package/lib/Link/InlinePressable.js +8 -7
  69. package/lib/Link/InlinePressable.native.js +10 -8
  70. package/lib/Link/Link.js +2 -4
  71. package/lib/Link/LinkBase.js +2 -4
  72. package/lib/Link/TextButton.js +2 -4
  73. package/lib/List/List.js +13 -11
  74. package/lib/List/ListItem.js +2 -4
  75. package/lib/List/ListItemBase.js +6 -10
  76. package/lib/List/ListItemContent.js +4 -2
  77. package/lib/List/ListItemMark.js +4 -2
  78. package/lib/List/PressableListItemBase.js +2 -4
  79. package/lib/Listbox/GroupControl.js +4 -2
  80. package/lib/Listbox/Listbox.js +6 -6
  81. package/lib/Listbox/ListboxContext.js +3 -4
  82. package/lib/Listbox/ListboxGroup.js +2 -4
  83. package/lib/Listbox/ListboxItem.js +2 -6
  84. package/lib/Listbox/ListboxOverlay.js +2 -6
  85. package/lib/Listbox/PressableItem.js +2 -6
  86. package/lib/Modal/Modal.js +5 -7
  87. package/lib/Modal/ModalContent.js +7 -7
  88. package/lib/Modal/WebModal.js +16 -9
  89. package/lib/MultiSelectFilter/ModalOverlay.js +2 -4
  90. package/lib/MultiSelectFilter/MultiSelectFilter.js +10 -10
  91. package/lib/Notification/Notification.js +5 -7
  92. package/lib/OrderedList/Item.js +4 -10
  93. package/lib/OrderedList/ItemBase.js +2 -4
  94. package/lib/OrderedList/OrderedList.js +5 -13
  95. package/lib/OrderedList/OrderedListBase.js +2 -4
  96. package/lib/Pagination/PageButton.js +1 -1
  97. package/lib/Pagination/Pagination.js +1 -1
  98. package/lib/Pagination/SideButton.js +2 -4
  99. package/lib/PriceLockup/PriceLockup.js +5 -5
  100. package/lib/ProductCard/ProductCard.js +3 -2
  101. package/lib/ProductCardGroup/ProductCardGroup.js +5 -6
  102. package/lib/Progress/Progress.js +2 -4
  103. package/lib/Progress/ProgressBar.js +2 -4
  104. package/lib/Progress/ProgressBarBackground.js +2 -4
  105. package/lib/QuickLinks/QuickLinks.js +2 -4
  106. package/lib/QuickLinks/QuickLinksCard.js +4 -2
  107. package/lib/QuickLinks/QuickLinksItem.js +2 -4
  108. package/lib/QuickLinksFeature/QuickLinksFeature.js +9 -7
  109. package/lib/QuickLinksFeature/QuickLinksFeatureItem.js +10 -12
  110. package/lib/Radio/Radio.js +3 -3
  111. package/lib/Radio/RadioButton.js +61 -15
  112. package/lib/Radio/RadioGroup.js +2 -4
  113. package/lib/Radio/RadioInput.js +6 -18
  114. package/lib/RadioCard/RadioCard.js +3 -3
  115. package/lib/RadioCard/RadioCardGroup.js +3 -3
  116. package/lib/Responsive/Responsive.js +3 -2
  117. package/lib/Responsive/ResponsiveWithMediaQueryStyleSheet.js +3 -2
  118. package/lib/Search/Search.js +2 -4
  119. package/lib/Select/Group.js +4 -2
  120. package/lib/Select/Item.js +4 -2
  121. package/lib/Select/Picker.js +2 -4
  122. package/lib/Select/Picker.native.js +3 -5
  123. package/lib/Select/Select.js +4 -6
  124. package/lib/SideNav/Item.js +2 -4
  125. package/lib/SideNav/ItemContent.js +4 -2
  126. package/lib/SideNav/ItemsGroup.js +2 -4
  127. package/lib/SideNav/SideNav.js +2 -2
  128. package/lib/Skeleton/Skeleton.js +2 -4
  129. package/lib/SkipLink/SkipLink.js +2 -4
  130. package/lib/Spacer/Spacer.js +2 -4
  131. package/lib/StackView/StackView.js +2 -4
  132. package/lib/StackView/StackWrap.js +3 -5
  133. package/lib/StackView/StackWrapBox.js +2 -4
  134. package/lib/StackView/StackWrapGap.js +2 -4
  135. package/lib/StackView/getStackedContent.js +3 -3
  136. package/lib/StepTracker/Step.js +4 -2
  137. package/lib/StepTracker/StepTracker.js +2 -4
  138. package/lib/Tabs/Tabs.js +4 -4
  139. package/lib/Tabs/TabsItem.js +3 -5
  140. package/lib/Tags/Tags.js +2 -4
  141. package/lib/TextInput/TextArea.js +3 -5
  142. package/lib/TextInput/TextInput.js +2 -4
  143. package/lib/TextInput/TextInputBase.js +7 -9
  144. package/lib/ThemeProvider/ThemeProvider.js +5 -7
  145. package/lib/Timeline/Timeline.js +2 -4
  146. package/lib/ToggleSwitch/ToggleSwitch.js +2 -4
  147. package/lib/ToggleSwitch/ToggleSwitchGroup.js +2 -4
  148. package/lib/Tooltip/Tooltip.js +6 -8
  149. package/lib/Tooltip/Tooltip.native.js +12 -14
  150. package/lib/TooltipButton/TooltipButton.js +4 -2
  151. package/lib/Typography/Typography.js +2 -4
  152. package/lib/Validator/Validator.js +11 -13
  153. package/lib/ViewportProvider/ViewportProvider.js +2 -4
  154. package/lib/index.js +8 -0
  155. package/lib/utils/BaseView/BaseView.js +2 -4
  156. package/lib/utils/children.js +4 -6
  157. package/lib/utils/withLinkRouter.js +3 -5
  158. package/lib-module/A11yInfoProvider/index.js +8 -8
  159. package/lib-module/A11yText/index.js +2 -2
  160. package/lib-module/ActivityIndicator/Spinner.js +2 -2
  161. package/lib-module/ActivityIndicator/Spinner.native.js +2 -2
  162. package/lib-module/Autocomplete/Autocomplete.js +13 -14
  163. package/lib-module/Autocomplete/Loading.js +4 -2
  164. package/lib-module/Autocomplete/Suggestions.js +2 -2
  165. package/lib-module/Badge/Badge.js +2 -2
  166. package/lib-module/BaseProvider/HydrationContext.js +5 -5
  167. package/lib-module/Box/Box.js +5 -5
  168. package/lib-module/Button/Button.js +2 -2
  169. package/lib-module/Button/ButtonBase.js +2 -5
  170. package/lib-module/Button/ButtonDropdown.js +2 -2
  171. package/lib-module/Button/ButtonGroup.js +2 -2
  172. package/lib-module/Button/ButtonLink.js +2 -2
  173. package/lib-module/Card/Card.js +159 -14
  174. package/lib-module/Card/CardBase.js +2 -2
  175. package/lib-module/Card/PressableCardBase.js +4 -4
  176. package/lib-module/CardGroup/CardGroup.js +210 -0
  177. package/lib-module/CardGroup/dictionary.js +8 -0
  178. package/lib-module/CardGroup/index.js +2 -0
  179. package/lib-module/Carousel/Carousel.js +67 -55
  180. package/lib-module/Carousel/CarouselFirstFocus/CarouselFirstFocus.js +2 -2
  181. package/lib-module/Carousel/CarouselItem/CarouselItem.js +3 -2
  182. package/lib-module/Carousel/CarouselStepTracker/CarouselStepTracker.js +4 -2
  183. package/lib-module/Carousel/CarouselTabs/CarouselTabs.js +2 -2
  184. package/lib-module/Carousel/CarouselTabs/CarouselTabsPanel.js +6 -6
  185. package/lib-module/Carousel/CarouselTabs/CarouselTabsPanelItem.js +3 -3
  186. package/lib-module/Carousel/CarouselThumbnail.js +4 -2
  187. package/lib-module/Carousel/CarouselThumbnailNavigation.js +2 -2
  188. package/lib-module/Checkbox/Checkbox.js +2 -2
  189. package/lib-module/Checkbox/CheckboxButton.js +3 -3
  190. package/lib-module/Checkbox/CheckboxGroup.js +2 -2
  191. package/lib-module/Checkbox/CheckboxInput.js +4 -12
  192. package/lib-module/CheckboxCard/CheckboxCard.js +2 -2
  193. package/lib-module/CheckboxCardGroup/CheckboxCardGroup.js +2 -2
  194. package/lib-module/ColourToggle/ColourBubble.js +5 -4
  195. package/lib-module/ColourToggle/ColourToggle.js +3 -3
  196. package/lib-module/Divider/Divider.js +2 -2
  197. package/lib-module/ExpandCollapse/Accordion.js +2 -2
  198. package/lib-module/ExpandCollapse/Control.js +2 -2
  199. package/lib-module/ExpandCollapse/ExpandCollapse.js +2 -2
  200. package/lib-module/ExpandCollapse/Panel.js +3 -3
  201. package/lib-module/Feedback/Feedback.js +2 -2
  202. package/lib-module/Fieldset/Fieldset.js +2 -2
  203. package/lib-module/Fieldset/FieldsetContainer.js +2 -2
  204. package/lib-module/Fieldset/FieldsetContainer.native.js +2 -2
  205. package/lib-module/Fieldset/Legend.js +2 -2
  206. package/lib-module/Fieldset/Legend.native.js +2 -2
  207. package/lib-module/FlexGrid/Col/Col.js +3 -3
  208. package/lib-module/FlexGrid/FlexGrid.js +2 -2
  209. package/lib-module/FlexGrid/Row/Row.js +2 -2
  210. package/lib-module/Footnote/Footnote.js +9 -7
  211. package/lib-module/Footnote/FootnoteLink.js +5 -4
  212. package/lib-module/HorizontalScroll/HorizontalScroll.js +8 -8
  213. package/lib-module/HorizontalScroll/HorizontalScrollButton.js +2 -2
  214. package/lib-module/HorizontalScroll/ScrollViewEnd.js +5 -8
  215. package/lib-module/HorizontalScroll/ScrollViewEnd.native.js +2 -2
  216. package/lib-module/Icon/Icon.js +2 -2
  217. package/lib-module/Icon/IconText.js +2 -2
  218. package/lib-module/IconButton/IconButton.js +2 -2
  219. package/lib-module/InputLabel/InputLabel.js +2 -2
  220. package/lib-module/InputLabel/LabelContent.js +2 -2
  221. package/lib-module/InputLabel/LabelContent.native.js +2 -2
  222. package/lib-module/InputSupports/InputSupports.js +4 -3
  223. package/lib-module/Link/ChevronLink.js +2 -2
  224. package/lib-module/Link/InlinePressable.js +10 -4
  225. package/lib-module/Link/InlinePressable.native.js +12 -6
  226. package/lib-module/Link/Link.js +2 -2
  227. package/lib-module/Link/LinkBase.js +2 -2
  228. package/lib-module/Link/TextButton.js +2 -2
  229. package/lib-module/List/List.js +13 -9
  230. package/lib-module/List/ListItem.js +2 -2
  231. package/lib-module/List/ListItemBase.js +6 -8
  232. package/lib-module/List/ListItemContent.js +4 -2
  233. package/lib-module/List/ListItemMark.js +4 -2
  234. package/lib-module/List/PressableListItemBase.js +2 -2
  235. package/lib-module/Listbox/GroupControl.js +4 -2
  236. package/lib-module/Listbox/Listbox.js +7 -7
  237. package/lib-module/Listbox/ListboxContext.js +2 -2
  238. package/lib-module/Listbox/ListboxGroup.js +2 -2
  239. package/lib-module/Listbox/ListboxItem.js +2 -3
  240. package/lib-module/Listbox/ListboxOverlay.js +2 -3
  241. package/lib-module/Listbox/PressableItem.js +2 -3
  242. package/lib-module/Modal/Modal.js +5 -5
  243. package/lib-module/Modal/ModalContent.js +7 -5
  244. package/lib-module/Modal/WebModal.js +16 -9
  245. package/lib-module/MultiSelectFilter/ModalOverlay.js +2 -2
  246. package/lib-module/MultiSelectFilter/MultiSelectFilter.js +10 -8
  247. package/lib-module/Notification/Notification.js +5 -5
  248. package/lib-module/OrderedList/Item.js +4 -8
  249. package/lib-module/OrderedList/ItemBase.js +2 -2
  250. package/lib-module/OrderedList/OrderedList.js +6 -12
  251. package/lib-module/OrderedList/OrderedListBase.js +2 -2
  252. package/lib-module/Pagination/PageButton.js +2 -2
  253. package/lib-module/Pagination/Pagination.js +2 -2
  254. package/lib-module/Pagination/SideButton.js +2 -2
  255. package/lib-module/PriceLockup/PriceLockup.js +5 -5
  256. package/lib-module/ProductCard/ProductCard.js +3 -2
  257. package/lib-module/ProductCardGroup/ProductCardGroup.js +5 -4
  258. package/lib-module/Progress/Progress.js +2 -2
  259. package/lib-module/Progress/ProgressBar.js +2 -2
  260. package/lib-module/Progress/ProgressBarBackground.js +2 -2
  261. package/lib-module/QuickLinks/QuickLinks.js +2 -2
  262. package/lib-module/QuickLinks/QuickLinksCard.js +4 -2
  263. package/lib-module/QuickLinks/QuickLinksItem.js +2 -2
  264. package/lib-module/QuickLinksFeature/QuickLinksFeature.js +9 -5
  265. package/lib-module/QuickLinksFeature/QuickLinksFeatureItem.js +10 -10
  266. package/lib-module/Radio/Radio.js +2 -2
  267. package/lib-module/Radio/RadioButton.js +62 -14
  268. package/lib-module/Radio/RadioGroup.js +2 -2
  269. package/lib-module/Radio/RadioInput.js +6 -16
  270. package/lib-module/RadioCard/RadioCard.js +2 -2
  271. package/lib-module/RadioCard/RadioCardGroup.js +2 -2
  272. package/lib-module/Responsive/Responsive.js +3 -2
  273. package/lib-module/Responsive/ResponsiveWithMediaQueryStyleSheet.js +3 -2
  274. package/lib-module/Search/Search.js +2 -2
  275. package/lib-module/Select/Group.js +4 -2
  276. package/lib-module/Select/Item.js +4 -2
  277. package/lib-module/Select/Picker.js +2 -2
  278. package/lib-module/Select/Picker.native.js +3 -3
  279. package/lib-module/Select/Select.js +4 -4
  280. package/lib-module/SideNav/Item.js +2 -2
  281. package/lib-module/SideNav/ItemContent.js +4 -2
  282. package/lib-module/SideNav/ItemsGroup.js +2 -2
  283. package/lib-module/SideNav/SideNav.js +3 -3
  284. package/lib-module/Skeleton/Skeleton.js +2 -2
  285. package/lib-module/SkipLink/SkipLink.js +2 -2
  286. package/lib-module/Spacer/Spacer.js +2 -2
  287. package/lib-module/StackView/StackView.js +2 -2
  288. package/lib-module/StackView/StackWrap.js +3 -3
  289. package/lib-module/StackView/StackWrapBox.js +2 -2
  290. package/lib-module/StackView/StackWrapGap.js +2 -2
  291. package/lib-module/StackView/getStackedContent.js +4 -4
  292. package/lib-module/StepTracker/Step.js +4 -2
  293. package/lib-module/StepTracker/StepTracker.js +2 -2
  294. package/lib-module/Tabs/Tabs.js +3 -3
  295. package/lib-module/Tabs/TabsItem.js +3 -3
  296. package/lib-module/Tags/Tags.js +2 -2
  297. package/lib-module/TextInput/TextArea.js +3 -3
  298. package/lib-module/TextInput/TextInput.js +2 -2
  299. package/lib-module/TextInput/TextInputBase.js +7 -7
  300. package/lib-module/ThemeProvider/ThemeProvider.js +5 -5
  301. package/lib-module/Timeline/Timeline.js +2 -2
  302. package/lib-module/ToggleSwitch/ToggleSwitch.js +2 -2
  303. package/lib-module/ToggleSwitch/ToggleSwitchGroup.js +2 -2
  304. package/lib-module/Tooltip/Tooltip.js +6 -6
  305. package/lib-module/Tooltip/Tooltip.native.js +12 -12
  306. package/lib-module/TooltipButton/TooltipButton.js +4 -2
  307. package/lib-module/Typography/Typography.js +2 -2
  308. package/lib-module/Validator/Validator.js +11 -11
  309. package/lib-module/ViewportProvider/ViewportProvider.js +2 -2
  310. package/lib-module/index.js +1 -0
  311. package/lib-module/utils/BaseView/BaseView.js +2 -2
  312. package/lib-module/utils/children.js +4 -4
  313. package/lib-module/utils/withLinkRouter.js +3 -3
  314. package/package.json +2 -2
  315. package/src/A11yInfoProvider/index.jsx +8 -8
  316. package/src/A11yText/index.jsx +2 -2
  317. package/src/ActivityIndicator/Spinner.jsx +2 -2
  318. package/src/ActivityIndicator/Spinner.native.jsx +2 -2
  319. package/src/Autocomplete/Autocomplete.jsx +15 -14
  320. package/src/Autocomplete/Loading.jsx +6 -3
  321. package/src/Autocomplete/Suggestions.jsx +2 -2
  322. package/src/Badge/Badge.jsx +2 -2
  323. package/src/BaseProvider/HydrationContext.jsx +5 -5
  324. package/src/Box/Box.jsx +5 -5
  325. package/src/Button/Button.jsx +11 -9
  326. package/src/Button/ButtonBase.jsx +2 -3
  327. package/src/Button/ButtonDropdown.jsx +2 -2
  328. package/src/Button/ButtonGroup.jsx +2 -2
  329. package/src/Button/ButtonLink.jsx +2 -2
  330. package/src/Card/Card.jsx +151 -11
  331. package/src/Card/CardBase.jsx +2 -2
  332. package/src/Card/PressableCardBase.jsx +18 -4
  333. package/src/CardGroup/CardGroup.jsx +249 -0
  334. package/src/CardGroup/dictionary.js +8 -0
  335. package/src/CardGroup/index.js +3 -0
  336. package/src/Carousel/Carousel.jsx +69 -53
  337. package/src/Carousel/CarouselFirstFocus/CarouselFirstFocus.jsx +2 -2
  338. package/src/Carousel/CarouselItem/CarouselItem.jsx +19 -17
  339. package/src/Carousel/CarouselStepTracker/CarouselStepTracker.jsx +5 -3
  340. package/src/Carousel/CarouselTabs/CarouselTabs.jsx +2 -2
  341. package/src/Carousel/CarouselTabs/CarouselTabsPanel.jsx +6 -6
  342. package/src/Carousel/CarouselTabs/CarouselTabsPanelItem.jsx +3 -3
  343. package/src/Carousel/CarouselThumbnail.jsx +6 -2
  344. package/src/Carousel/CarouselThumbnailNavigation.jsx +2 -2
  345. package/src/Checkbox/Checkbox.jsx +2 -2
  346. package/src/Checkbox/CheckboxButton.jsx +5 -7
  347. package/src/Checkbox/CheckboxGroup.jsx +2 -2
  348. package/src/Checkbox/CheckboxInput.jsx +15 -12
  349. package/src/CheckboxCard/CheckboxCard.jsx +2 -2
  350. package/src/CheckboxCardGroup/CheckboxCardGroup.jsx +2 -2
  351. package/src/ColourToggle/ColourBubble.jsx +5 -4
  352. package/src/ColourToggle/ColourToggle.jsx +3 -3
  353. package/src/Divider/Divider.jsx +2 -2
  354. package/src/ExpandCollapse/Accordion.jsx +4 -2
  355. package/src/ExpandCollapse/Control.jsx +2 -2
  356. package/src/ExpandCollapse/ExpandCollapse.jsx +2 -2
  357. package/src/ExpandCollapse/Panel.jsx +3 -3
  358. package/src/Feedback/Feedback.jsx +2 -2
  359. package/src/Fieldset/Fieldset.jsx +2 -2
  360. package/src/Fieldset/FieldsetContainer.jsx +2 -2
  361. package/src/Fieldset/FieldsetContainer.native.jsx +2 -2
  362. package/src/Fieldset/Legend.jsx +2 -2
  363. package/src/Fieldset/Legend.native.jsx +2 -2
  364. package/src/FlexGrid/Col/Col.jsx +3 -3
  365. package/src/FlexGrid/FlexGrid.jsx +2 -2
  366. package/src/FlexGrid/Row/Row.jsx +2 -2
  367. package/src/Footnote/Footnote.jsx +111 -98
  368. package/src/Footnote/FootnoteLink.jsx +35 -31
  369. package/src/HorizontalScroll/HorizontalScroll.jsx +8 -8
  370. package/src/HorizontalScroll/HorizontalScrollButton.jsx +2 -2
  371. package/src/HorizontalScroll/ScrollViewEnd.jsx +4 -8
  372. package/src/HorizontalScroll/ScrollViewEnd.native.jsx +2 -2
  373. package/src/Icon/Icon.jsx +2 -2
  374. package/src/Icon/IconText.jsx +2 -2
  375. package/src/IconButton/IconButton.jsx +2 -2
  376. package/src/InputLabel/InputLabel.jsx +2 -2
  377. package/src/InputLabel/LabelContent.jsx +2 -2
  378. package/src/InputLabel/LabelContent.native.jsx +2 -2
  379. package/src/InputSupports/InputSupports.jsx +4 -3
  380. package/src/Link/ChevronLink.jsx +2 -2
  381. package/src/Link/InlinePressable.jsx +22 -15
  382. package/src/Link/InlinePressable.native.jsx +12 -6
  383. package/src/Link/Link.jsx +2 -2
  384. package/src/Link/LinkBase.jsx +2 -2
  385. package/src/Link/TextButton.jsx +2 -2
  386. package/src/List/List.jsx +15 -7
  387. package/src/List/ListItem.jsx +2 -2
  388. package/src/List/ListItemBase.jsx +6 -12
  389. package/src/List/ListItemContent.jsx +5 -2
  390. package/src/List/ListItemMark.jsx +5 -3
  391. package/src/List/PressableListItemBase.jsx +2 -2
  392. package/src/Listbox/GroupControl.jsx +5 -2
  393. package/src/Listbox/Listbox.jsx +7 -7
  394. package/src/Listbox/ListboxContext.js +2 -2
  395. package/src/Listbox/ListboxGroup.jsx +2 -2
  396. package/src/Listbox/ListboxItem.jsx +2 -3
  397. package/src/Listbox/ListboxOverlay.jsx +2 -3
  398. package/src/Listbox/PressableItem.jsx +2 -3
  399. package/src/Modal/Modal.jsx +5 -5
  400. package/src/Modal/ModalContent.jsx +132 -125
  401. package/src/Modal/WebModal.jsx +13 -8
  402. package/src/MultiSelectFilter/ModalOverlay.jsx +2 -2
  403. package/src/MultiSelectFilter/MultiSelectFilter.jsx +263 -252
  404. package/src/Notification/Notification.jsx +5 -5
  405. package/src/OrderedList/Item.jsx +4 -6
  406. package/src/OrderedList/ItemBase.jsx +2 -2
  407. package/src/OrderedList/OrderedList.jsx +4 -7
  408. package/src/OrderedList/OrderedListBase.jsx +2 -2
  409. package/src/Pagination/PageButton.jsx +2 -2
  410. package/src/Pagination/Pagination.jsx +2 -2
  411. package/src/Pagination/SideButton.jsx +2 -2
  412. package/src/PriceLockup/PriceLockup.jsx +93 -88
  413. package/src/ProductCard/ProductCard.jsx +90 -84
  414. package/src/ProductCardGroup/ProductCardGroup.jsx +5 -5
  415. package/src/Progress/Progress.jsx +2 -2
  416. package/src/Progress/ProgressBar.jsx +2 -2
  417. package/src/Progress/ProgressBarBackground.jsx +4 -2
  418. package/src/QuickLinks/QuickLinks.jsx +2 -2
  419. package/src/QuickLinks/QuickLinksCard.jsx +9 -3
  420. package/src/QuickLinks/QuickLinksItem.jsx +2 -2
  421. package/src/QuickLinksFeature/QuickLinksFeature.jsx +31 -27
  422. package/src/QuickLinksFeature/QuickLinksFeatureItem.jsx +3 -3
  423. package/src/Radio/Radio.jsx +2 -2
  424. package/src/Radio/RadioButton.jsx +58 -6
  425. package/src/Radio/RadioGroup.jsx +2 -2
  426. package/src/Radio/RadioInput.jsx +15 -14
  427. package/src/RadioCard/RadioCard.jsx +2 -2
  428. package/src/RadioCard/RadioCardGroup.jsx +2 -2
  429. package/src/Responsive/Responsive.jsx +8 -3
  430. package/src/Responsive/ResponsiveWithMediaQueryStyleSheet.jsx +23 -16
  431. package/src/Search/Search.jsx +2 -2
  432. package/src/Select/Group.jsx +9 -3
  433. package/src/Select/Item.jsx +7 -1
  434. package/src/Select/Picker.jsx +2 -2
  435. package/src/Select/Picker.native.jsx +3 -3
  436. package/src/Select/Select.jsx +4 -4
  437. package/src/SideNav/Item.jsx +2 -2
  438. package/src/SideNav/ItemContent.jsx +7 -3
  439. package/src/SideNav/ItemsGroup.jsx +2 -2
  440. package/src/SideNav/SideNav.jsx +3 -3
  441. package/src/Skeleton/Skeleton.jsx +2 -2
  442. package/src/SkipLink/SkipLink.jsx +2 -2
  443. package/src/Spacer/Spacer.jsx +2 -2
  444. package/src/StackView/StackView.jsx +2 -2
  445. package/src/StackView/StackWrap.jsx +3 -3
  446. package/src/StackView/StackWrapBox.jsx +2 -2
  447. package/src/StackView/StackWrapGap.jsx +2 -2
  448. package/src/StackView/getStackedContent.jsx +4 -4
  449. package/src/StepTracker/Step.jsx +75 -67
  450. package/src/StepTracker/StepTracker.jsx +2 -2
  451. package/src/Tabs/Tabs.jsx +3 -3
  452. package/src/Tabs/TabsItem.jsx +3 -3
  453. package/src/Tags/Tags.jsx +2 -2
  454. package/src/TextInput/TextArea.jsx +3 -3
  455. package/src/TextInput/TextInput.jsx +2 -2
  456. package/src/TextInput/TextInputBase.jsx +7 -7
  457. package/src/ThemeProvider/ThemeProvider.jsx +5 -5
  458. package/src/Timeline/Timeline.jsx +2 -2
  459. package/src/ToggleSwitch/ToggleSwitch.jsx +2 -2
  460. package/src/ToggleSwitch/ToggleSwitchGroup.jsx +2 -2
  461. package/src/Tooltip/Tooltip.jsx +6 -6
  462. package/src/Tooltip/Tooltip.native.jsx +12 -12
  463. package/src/TooltipButton/TooltipButton.jsx +5 -2
  464. package/src/Typography/Typography.jsx +2 -2
  465. package/src/Validator/Validator.jsx +11 -11
  466. package/src/ViewportProvider/ViewportProvider.jsx +2 -2
  467. package/src/index.js +1 -0
  468. package/src/utils/BaseView/BaseView.jsx +2 -2
  469. package/src/utils/children.jsx +4 -4
  470. package/src/utils/withLinkRouter.jsx +3 -3
  471. package/types/ExpandCollapse.d.ts +1 -1
@@ -1,4 +1,4 @@
1
- import React, { Children, Fragment } from 'react';
1
+ import React from 'react';
2
2
  import Box from '../Box';
3
3
  import Divider from '../Divider';
4
4
  import Spacer from '../Spacer';
@@ -46,7 +46,7 @@ const getStackedContent = (children, _ref) => {
46
46
 
47
47
  // Avoid surprises if children contains comments, nulls, or is a variable wrapped as a fragment
48
48
  const topLevelChildren = preserveFragments ? children : unpackFragment(children);
49
- const validChildren = Children.toArray(topLevelChildren).filter(Boolean);
49
+ const validChildren = React.Children.toArray(topLevelChildren).filter(Boolean);
50
50
  const content = validChildren.reduce((newChildren, child, index) => {
51
51
  const boxID = `Stack-Box-${index}`;
52
52
  const item = box ?
@@ -112,10 +112,10 @@ const getStackedContent = (children, _ref) => {
112
112
  const unpackFragment = child => {
113
113
  var _child$props;
114
114
  // If this level is a set of top-level siblings rather than one child, check each in turn
115
- if (Children.count(child) > 1) return Children.map(child, unpackFragment);
115
+ if (React.Children.count(child) > 1) return React.Children.map(child, unpackFragment);
116
116
 
117
117
  // When a fragment is found, unpack its children to the top level and check them
118
- if ((child === null || child === void 0 ? void 0 : child.type) === Fragment) return unpackFragment((_child$props = child.props) === null || _child$props === void 0 ? void 0 : _child$props.children);
118
+ if ((child === null || child === void 0 ? void 0 : child.type) === React.Fragment) return unpackFragment((_child$props = child.props) === null || _child$props === void 0 ? void 0 : _child$props.children);
119
119
 
120
120
  // Stop unpacking as soon as any non-fragment child is found
121
121
  return child;
@@ -155,7 +155,7 @@ const getStepTestID = (isCompleted, isCurrent) => {
155
155
  /**
156
156
  * A single step of a StepTracker.
157
157
  */
158
- const Step = _ref8 => {
158
+ const Step = /*#__PURE__*/React.forwardRef((_ref8, ref) => {
159
159
  let {
160
160
  label,
161
161
  name,
@@ -189,6 +189,7 @@ const Step = _ref8 => {
189
189
  accessibilityLabel: label,
190
190
  accessibilityLevel: 2,
191
191
  accessibilityCurrent: status === stepIndex,
192
+ ref: ref,
192
193
  ...selectProps(rest),
193
194
  children: [/*#__PURE__*/_jsxs(StackView, {
194
195
  direction: "row",
@@ -226,7 +227,8 @@ const Step = _ref8 => {
226
227
  })]
227
228
  })]
228
229
  });
229
- };
230
+ });
231
+ Step.displayName = 'Step';
230
232
  Step.propTypes = {
231
233
  ...selectedSystemPropTypes,
232
234
  label: PropTypes.string.isRequired,
@@ -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";
@@ -85,7 +85,7 @@ const selectStepTrackerLabelStyles = (_ref3, themeOptions) => {
85
85
  * - `accessibilityValue.text` (`aria-valuetext`): `<Current Step Label>`,
86
86
  *
87
87
  */
88
- const StepTracker = /*#__PURE__*/forwardRef((_ref4, ref) => {
88
+ const StepTracker = /*#__PURE__*/React.forwardRef((_ref4, ref) => {
89
89
  let {
90
90
  current = 0,
91
91
  copy = 'en',
@@ -1,4 +1,4 @@
1
- import React, { forwardRef, useCallback } from 'react';
1
+ import React from 'react';
2
2
  import Platform from "react-native-web/dist/exports/Platform";
3
3
  import PropTypes from 'prop-types';
4
4
  import ABBPropTypes from 'airbnb-prop-types';
@@ -43,7 +43,7 @@ const getStackViewTokens = variant => {
43
43
  * `navigation`as the `accessibilityRole` to te Tabs component, this will cause
44
44
  * TabItems to default to a role of link and obtain aria-current behaviour.
45
45
  */
46
- const Tabs = /*#__PURE__*/forwardRef((_ref, ref) => {
46
+ const Tabs = /*#__PURE__*/React.forwardRef((_ref, ref) => {
47
47
  let {
48
48
  tokens,
49
49
  itemTokens,
@@ -70,7 +70,7 @@ const Tabs = /*#__PURE__*/forwardRef((_ref, ref) => {
70
70
  onChange
71
71
  });
72
72
  const [itemPositions, isPositioningReady] = useItemPositions();
73
- useHash(useCallback((hash, event) => {
73
+ useHash(React.useCallback((hash, event) => {
74
74
  const hashItem = hash && items.find(_ref2 => {
75
75
  let {
76
76
  href
@@ -1,4 +1,4 @@
1
- import React, { forwardRef, useEffect } 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 Pressable from "react-native-web/dist/exports/Pressable";
@@ -80,7 +80,7 @@ const selectContainerStyles = _ref3 => {
80
80
  *
81
81
  * This is rendered automatically by `Tabs` and isn't intended be used directly.
82
82
  */
83
- const TabsItem = /*#__PURE__*/forwardRef((_ref4, ref) => {
83
+ const TabsItem = /*#__PURE__*/React.forwardRef((_ref4, ref) => {
84
84
  let {
85
85
  href,
86
86
  variant,
@@ -135,7 +135,7 @@ const TabsItem = /*#__PURE__*/forwardRef((_ref4, ref) => {
135
135
  accessibilityState,
136
136
  ...rest
137
137
  });
138
- useEffect(() => {
138
+ React.useEffect(() => {
139
139
  // If this is selected while off-screen, scroll it into view
140
140
  if (selected) {
141
141
  const position = itemPositions.positions[index];
@@ -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 Platform from "react-native-web/dist/exports/Platform";
@@ -55,7 +55,7 @@ const separateIconTextTokens = (_ref, returnRest) => {
55
55
  };
56
56
  const selectIconTextTokens = tokens => separateIconTextTokens(tokens, false);
57
57
  const selectNonIconTextTokens = tokens => separateIconTextTokens(tokens, true);
58
- const Tags = /*#__PURE__*/forwardRef((_ref2, ref) => {
58
+ const Tags = /*#__PURE__*/React.forwardRef((_ref2, ref) => {
59
59
  let {
60
60
  variant,
61
61
  tokens,
@@ -1,4 +1,4 @@
1
- import React, { forwardRef, useState } from 'react';
1
+ import React from 'react';
2
2
  import Platform from "react-native-web/dist/exports/Platform";
3
3
  import { a11yProps, focusHandlerProps, getTokensPropType, inputSupportsProps, selectSystemProps, textInputHandlerProps, textInputProps, variantProp, viewProps } from '../utils';
4
4
  import InputSupports from '../InputSupports';
@@ -32,14 +32,14 @@ const [selectProps, selectedSystemPropTypes] = selectSystemProps([a11yProps, foc
32
32
  * or an indicator that the field is optional.
33
33
  * It is a more usable and accessible option than the HTML `placeholder` attribute.
34
34
  */
35
- const TextArea = /*#__PURE__*/forwardRef((_ref, ref) => {
35
+ const TextArea = /*#__PURE__*/React.forwardRef((_ref, ref) => {
36
36
  let {
37
37
  tokens,
38
38
  variant = {},
39
39
  ...rest
40
40
  } = _ref;
41
41
  const themeTokens = useThemeTokens('TextArea', tokens, variant);
42
- const [inputHeight, setInputHeight] = useState();
42
+ const [inputHeight, setInputHeight] = React.useState();
43
43
 
44
44
  // adjust the text area's height as new lines are added to the content
45
45
  const onHeightChange = _ref2 => {
@@ -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 { a11yProps, focusHandlerProps, getTokensPropType, inputSupportsProps, selectSystemProps, textInputHandlerProps, textInputProps, variantProp, viewProps } from '../utils';
4
4
  import InputSupports from '../InputSupports';
@@ -27,7 +27,7 @@ const [selectProps, selectedSystemPropTypes] = selectSystemProps([a11yProps, foc
27
27
  * supported props and <a href="https://reactnative.dev/docs/textinput" target="_blank">React Native Web documentation</a> for
28
28
  * their implementation on the web.
29
29
  */
30
- const TextInput = /*#__PURE__*/forwardRef((_ref, ref) => {
30
+ const TextInput = /*#__PURE__*/React.forwardRef((_ref, ref) => {
31
31
  let {
32
32
  tokens,
33
33
  nativeID,
@@ -1,4 +1,4 @@
1
- import React, { forwardRef, useEffect, useRef, useState } 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";
@@ -175,7 +175,7 @@ const getIcon = function () {
175
175
  testID: selectedIcon.testID
176
176
  });
177
177
  };
178
- const TextInputBase = /*#__PURE__*/forwardRef((_ref7, ref) => {
178
+ const TextInputBase = /*#__PURE__*/React.forwardRef((_ref7, ref) => {
179
179
  let {
180
180
  buttons = [],
181
181
  copy = 'en',
@@ -198,8 +198,8 @@ const TextInputBase = /*#__PURE__*/forwardRef((_ref7, ref) => {
198
198
  onKeyPress,
199
199
  ...rest
200
200
  } = _ref7;
201
- const [isFocused, setIsFocused] = useState(false);
202
- const [showPassword, setShowPassword] = useState(false);
201
+ const [isFocused, setIsFocused] = React.useState(false);
202
+ const [showPassword, setShowPassword] = React.useState(false);
203
203
  const handleFocus = event => {
204
204
  setIsFocused(true);
205
205
  if (typeof onFocus === 'function') onFocus(event);
@@ -208,7 +208,7 @@ const TextInputBase = /*#__PURE__*/forwardRef((_ref7, ref) => {
208
208
  setIsFocused(false);
209
209
  if (typeof onBlur === 'function') onBlur(event);
210
210
  };
211
- const [isHovered, setIsHovered] = useState(false);
211
+ const [isHovered, setIsHovered] = React.useState(false);
212
212
  const handleMouseOver = event => {
213
213
  setIsHovered(true);
214
214
  if (typeof onMouseOver === 'function') onMouseOver(event);
@@ -217,7 +217,7 @@ const TextInputBase = /*#__PURE__*/forwardRef((_ref7, ref) => {
217
217
  setIsHovered(false);
218
218
  if (typeof onMouseOut === 'function') onMouseOut(event);
219
219
  };
220
- const defaultRef = useRef();
220
+ const defaultRef = React.useRef();
221
221
  const inputRef = ref ?? defaultRef;
222
222
  const {
223
223
  currentValue,
@@ -239,7 +239,7 @@ const TextInputBase = /*#__PURE__*/forwardRef((_ref7, ref) => {
239
239
  const isNumeric = numeric || type === 'card' || type === 'number';
240
240
  const isPassword = password || type === 'password';
241
241
  const element = inputRef === null || inputRef === void 0 ? void 0 : inputRef.current;
242
- useEffect(() => {
242
+ React.useEffect(() => {
243
243
  if (Platform.OS === 'web' && pattern && element) {
244
244
  // React Native Web doesn't support `pattern`, so we have to attach it via a ref,
245
245
  // which a `pattern` user must provide anyway to call .checkValidity() on the element.
@@ -1,11 +1,11 @@
1
- import React, { createContext, useEffect, useState } from 'react';
1
+ import React from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import { validateThemeTokensVersion } from './utils';
4
4
  import responsiveProps from '../utils/props/responsiveProps';
5
5
  import { jsx as _jsx } from "react/jsx-runtime";
6
6
  export const uninitialisedError = new Error('Theme context used outside of ThemeProvider');
7
- export const ThemeContext = /*#__PURE__*/createContext(uninitialisedError);
8
- export const ThemeSetterContext = /*#__PURE__*/createContext(uninitialisedError);
7
+ export const ThemeContext = /*#__PURE__*/React.createContext(uninitialisedError);
8
+ export const ThemeSetterContext = /*#__PURE__*/React.createContext(uninitialisedError);
9
9
 
10
10
  // These options default to `true` in v1.x to match legacy defaults and avoid breaking changes.
11
11
  // This should change in future major releases to become "opt-in" legacy support.
@@ -24,8 +24,8 @@ const ThemeProvider = _ref => {
24
24
  defaultTheme,
25
25
  themeOptions = {}
26
26
  } = _ref;
27
- const [theme, setTheme] = useState(defaultTheme);
28
- useEffect(() => {
27
+ const [theme, setTheme] = React.useState(defaultTheme);
28
+ React.useEffect(() => {
29
29
  if (theme.metadata.name !== defaultTheme.metadata.name) {
30
30
  setTheme(defaultTheme);
31
31
  }
@@ -1,5 +1,5 @@
1
1
  import PropTypes from 'prop-types';
2
- import React, { forwardRef } from 'react';
2
+ import React from 'react';
3
3
  import View from "react-native-web/dist/exports/View";
4
4
  import { useThemeTokens } from '../ThemeProvider';
5
5
  import { getTokensPropType, variantProp, a11yProps, viewProps, selectSystemProps, getA11yPropsFromHtmlTag, layoutTags } from '../utils';
@@ -93,7 +93,7 @@ const [selectProps, selectedSystemPropTypes] = selectSystemProps([a11yProps, vie
93
93
  * ## A11y guidelines
94
94
  * Timeline link supports all the common a11y props.
95
95
  */
96
- const Timeline = /*#__PURE__*/forwardRef((_ref7, ref) => {
96
+ const Timeline = /*#__PURE__*/React.forwardRef((_ref7, ref) => {
97
97
  let {
98
98
  tokens,
99
99
  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 Platform from "react-native-web/dist/exports/Platform";
4
4
  import StyleSheet from "react-native-web/dist/exports/StyleSheet";
@@ -119,7 +119,7 @@ const selectLabelTokens = _ref8 => {
119
119
  lineHeight: labelLineHeight
120
120
  };
121
121
  };
122
- const ToggleSwitch = /*#__PURE__*/forwardRef((_ref9, ref) => {
122
+ const ToggleSwitch = /*#__PURE__*/React.forwardRef((_ref9, ref) => {
123
123
  let {
124
124
  copy = 'en',
125
125
  value,
@@ -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 Platform from "react-native-web/dist/exports/Platform";
@@ -11,7 +11,7 @@ import { a11yProps, containUniqueFields, focusHandlerProps, getTokensPropType, s
11
11
  import { jsx as _jsx } from "react/jsx-runtime";
12
12
  const [selectProps, selectedSystemPropTypes] = selectSystemProps([a11yProps, viewProps]);
13
13
  const [selectItemProps, selectedItemPropTypes] = selectSystemProps([a11yProps, focusHandlerProps, viewProps]);
14
- const ToggleSwitchGroup = /*#__PURE__*/forwardRef((_ref, ref) => {
14
+ const ToggleSwitchGroup = /*#__PURE__*/React.forwardRef((_ref, ref) => {
15
15
  let {
16
16
  copy = 'en',
17
17
  variant,
@@ -1,4 +1,4 @@
1
- import React, { forwardRef, useEffect, useRef, useState } from 'react';
1
+ import React from 'react';
2
2
  import Platform from "react-native-web/dist/exports/Platform";
3
3
  import Pressable from "react-native-web/dist/exports/Pressable";
4
4
  import StyleSheet from "react-native-web/dist/exports/StyleSheet";
@@ -110,7 +110,7 @@ const defaultControl = (pressableState, variant) => /*#__PURE__*/_jsx(TooltipBut
110
110
  * - You may use one when the information is useful only to a small percentage of users (ie. tech savvy people wouldn't need this info).
111
111
  * - Tooltips may also be useful when vertical space is an issue.
112
112
  */
113
- const Tooltip = /*#__PURE__*/forwardRef((_ref6, ref) => {
113
+ const Tooltip = /*#__PURE__*/React.forwardRef((_ref6, ref) => {
114
114
  let {
115
115
  children,
116
116
  content,
@@ -123,9 +123,9 @@ const Tooltip = /*#__PURE__*/forwardRef((_ref6, ref) => {
123
123
  nativeID,
124
124
  ...rest
125
125
  } = _ref6;
126
- const [isOpen, setIsOpen] = useState(false);
127
- const arrowRef = useRef();
128
- const [tooltipDimensions, setTooltipDimensions] = useState(null);
126
+ const [isOpen, setIsOpen] = React.useState(false);
127
+ const arrowRef = React.useRef();
128
+ const [tooltipDimensions, setTooltipDimensions] = React.useState(null);
129
129
  const positions = {
130
130
  auto: undefined,
131
131
  // Auto needs to specifically bet set to undefined
@@ -195,7 +195,7 @@ const Tooltip = /*#__PURE__*/forwardRef((_ref6, ref) => {
195
195
  });
196
196
  }
197
197
  };
198
- useEffect(() => {
198
+ React.useEffect(() => {
199
199
  if (!isOpen) {
200
200
  setTooltipDimensions(null);
201
201
  }
@@ -1,4 +1,4 @@
1
- import React, { forwardRef, useEffect, useRef, useState } from 'react';
1
+ import React from 'react';
2
2
  import Dimensions from "react-native-web/dist/exports/Dimensions";
3
3
  import Platform from "react-native-web/dist/exports/Platform";
4
4
  import Pressable from "react-native-web/dist/exports/Pressable";
@@ -139,7 +139,7 @@ const defaultControl = (pressableState, variant) => /*#__PURE__*/_jsx(TooltipBut
139
139
  * - You may use one when the information is useful only to a small percentage of users (ie. tech savvy people wouldn't need this info).
140
140
  * - Tooltips may also be useful when vertical space is an issue.
141
141
  */
142
- const Tooltip = /*#__PURE__*/forwardRef((_ref6, ref) => {
142
+ const Tooltip = /*#__PURE__*/React.forwardRef((_ref6, ref) => {
143
143
  let {
144
144
  children,
145
145
  content,
@@ -152,12 +152,12 @@ const Tooltip = /*#__PURE__*/forwardRef((_ref6, ref) => {
152
152
  nativeID,
153
153
  ...rest
154
154
  } = _ref6;
155
- const [isOpen, setIsOpen] = useState(false);
156
- const controlRef = useRef();
157
- const [controlLayout, setControlLayout] = useState(null);
158
- const [tooltipDimensions, setTooltipDimensions] = useState(null);
159
- const [windowDimensions, setWindowDimensions] = useState(Dimensions.get('window'));
160
- const [tooltipPosition, setTooltipPosition] = useState(null);
155
+ const [isOpen, setIsOpen] = React.useState(false);
156
+ const controlRef = React.useRef();
157
+ const [controlLayout, setControlLayout] = React.useState(null);
158
+ const [tooltipDimensions, setTooltipDimensions] = React.useState(null);
159
+ const [windowDimensions, setWindowDimensions] = React.useState(Dimensions.get('window'));
160
+ const [tooltipPosition, setTooltipPosition] = React.useState(null);
161
161
  const getCopy = useCopy({
162
162
  dictionary,
163
163
  copy
@@ -167,7 +167,7 @@ const Tooltip = /*#__PURE__*/forwardRef((_ref6, ref) => {
167
167
  arrowWidth,
168
168
  arrowOffset
169
169
  } = themeTokens;
170
- useEffect(() => {
170
+ React.useEffect(() => {
171
171
  const subscription = Dimensions.addEventListener('change', _ref7 => {
172
172
  let {
173
173
  window
@@ -213,7 +213,7 @@ const Tooltip = /*#__PURE__*/forwardRef((_ref6, ref) => {
213
213
  });
214
214
  }
215
215
  };
216
- useEffect(() => {
216
+ React.useEffect(() => {
217
217
  if (isOpen) {
218
218
  controlRef.current.measureInWindow((x, y, width, height) => {
219
219
  setControlLayout({
@@ -229,10 +229,10 @@ const Tooltip = /*#__PURE__*/forwardRef((_ref6, ref) => {
229
229
  setTooltipPosition(null);
230
230
  }
231
231
  }, [isOpen]);
232
- useEffect(() => {
232
+ React.useEffect(() => {
233
233
  setIsOpen(false);
234
234
  }, [windowDimensions]);
235
- useEffect(() => {
235
+ React.useEffect(() => {
236
236
  if (tooltipPosition !== null && !(tooltipPosition !== null && tooltipPosition !== void 0 && tooltipPosition.isNormalized) || !isOpen || controlLayout === null || tooltipDimensions == null) {
237
237
  return;
238
238
  }
@@ -38,7 +38,7 @@ const selectIconTokens = _ref2 => {
38
38
  * In fact though, it isn't actually a pressable - it's meant to be used as pressable's content.
39
39
  * Due to this any interaction states (e.g. pressed, hover, etc.) has to be passed down to it as a prop.
40
40
  */
41
- const TooltipButton = _ref3 => {
41
+ const TooltipButton = /*#__PURE__*/React.forwardRef((_ref3, ref) => {
42
42
  let {
43
43
  pressableState,
44
44
  tokens,
@@ -54,6 +54,7 @@ const TooltipButton = _ref3 => {
54
54
  margin: -themeTokens.outerBorderWidth
55
55
  }, staticStyles.bubblePointerEvents],
56
56
  ...selectProps(rest),
57
+ ref: ref,
57
58
  children: /*#__PURE__*/_jsx(View, {
58
59
  style: selectInnerContainerStyles(themeTokens),
59
60
  children: IconComponent && /*#__PURE__*/_jsx(Icon, {
@@ -62,7 +63,8 @@ const TooltipButton = _ref3 => {
62
63
  })
63
64
  })
64
65
  });
65
- };
66
+ });
67
+ TooltipButton.displayName = 'TooltipButton';
66
68
  const staticStyles = StyleSheet.create({
67
69
  bubblePointerEvents: {
68
70
  ...Platform.select({
@@ -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 Text from "react-native-web/dist/exports/Text";
4
4
  import View from "react-native-web/dist/exports/View";
@@ -41,7 +41,7 @@ const selectTextStyles = (_ref, themeOptions) => {
41
41
  };
42
42
 
43
43
  // General-purpose flexible theme-neutral base component for text
44
- const Typography = /*#__PURE__*/forwardRef((_ref2, ref) => {
44
+ const Typography = /*#__PURE__*/React.forwardRef((_ref2, ref) => {
45
45
  let {
46
46
  children,
47
47
  variant,
@@ -1,4 +1,4 @@
1
- import React, { forwardRef, createRef, useRef, useMemo, useEffect, 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 StyleSheet from "react-native-web/dist/exports/StyleSheet";
@@ -21,7 +21,7 @@ const selectCodeTextInputTokens = _ref => {
21
21
  icon: null
22
22
  };
23
23
  };
24
- const Validator = /*#__PURE__*/forwardRef((_ref2, ref) => {
24
+ const Validator = /*#__PURE__*/React.forwardRef((_ref2, ref) => {
25
25
  let {
26
26
  value = '',
27
27
  inactive,
@@ -30,18 +30,18 @@ const Validator = /*#__PURE__*/forwardRef((_ref2, ref) => {
30
30
  variant = {},
31
31
  ...rest
32
32
  } = _ref2;
33
- const defaultRef = useRef();
33
+ const defaultRef = React.useRef();
34
34
  const codeRef = ref ?? defaultRef;
35
35
  const {
36
36
  supportsProps
37
37
  } = selectProps(rest);
38
38
  const strValidation = supportsProps.validation;
39
- const [individualCodes, setIndividualCodes] = useState({});
40
- const [text, setText] = useState(value);
39
+ const [individualCodes, setIndividualCodes] = React.useState({});
40
+ const [text, setText] = React.useState(value);
41
41
  const validatorsLength = 6;
42
42
  const prefix = 'code';
43
43
  const sufixValidation = 'Validation';
44
- const [isHover, setIsHover] = useState(false);
44
+ const [isHover, setIsHover] = React.useState(false);
45
45
  const handleMouseOver = () => {
46
46
  setIsHover(true);
47
47
  };
@@ -51,11 +51,11 @@ const Validator = /*#__PURE__*/forwardRef((_ref2, ref) => {
51
51
  const themeTokens = useThemeTokens('TextInput', tokens, variant, {
52
52
  hover: isHover
53
53
  });
54
- const [codeReferences, singleCodes] = useMemo(() => {
54
+ const [codeReferences, singleCodes] = React.useMemo(() => {
55
55
  const codes = [];
56
56
  const valueCodes = {};
57
57
  for (let i = 0; validatorsLength && i < validatorsLength; i += 1) {
58
- codes[prefix + i] = /*#__PURE__*/createRef();
58
+ codes[prefix + i] = /*#__PURE__*/React.createRef();
59
59
  valueCodes[prefix + i] = '';
60
60
  valueCodes[prefix + i + sufixValidation] = '';
61
61
  }
@@ -135,13 +135,13 @@ const Validator = /*#__PURE__*/forwardRef((_ref2, ref) => {
135
135
  }
136
136
  return components;
137
137
  };
138
- useEffect(() => {
138
+ React.useEffect(() => {
139
139
  /* eslint-disable no-unused-expressions */
140
140
  if (Number(value).toString() !== 'NaN') setText(value);
141
141
  }, [value]);
142
142
 
143
143
  /* eslint-disable react-hooks/exhaustive-deps */
144
- useEffect(() => {
144
+ React.useEffect(() => {
145
145
  for (let i = 0; i < validatorsLength; i += 1) {
146
146
  codeReferences[prefix + i].current.value = text[i] ?? '';
147
147
  handleSingleCodes(prefix + i, text[i] ?? '', text[i] ? 'success' : '');
@@ -149,7 +149,7 @@ const Validator = /*#__PURE__*/forwardRef((_ref2, ref) => {
149
149
  }, [text]);
150
150
 
151
151
  /* eslint-disable react-hooks/exhaustive-deps */
152
- useEffect(() => {
152
+ React.useEffect(() => {
153
153
  const handlePasteCode = event => {
154
154
  setText('');
155
155
  const clipBoardText = event.clipboardData.getData('text');
@@ -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 { viewports } from '@telus-uds/system-constants';
4
4
  import { ViewportContext } from './useViewport';
@@ -14,7 +14,7 @@ const ViewportProvider = _ref => {
14
14
  } = _ref;
15
15
  // Default to the smallest viewport for mobile-first SSR. On client side, this is updated
16
16
  // by useViewportListener in a layout effect before anything is shown to the user.
17
- const [viewport, setViewport] = useState(viewports.keys[0]);
17
+ const [viewport, setViewport] = React.useState(viewports.keys[0]);
18
18
  useViewportListener(setViewport);
19
19
  return /*#__PURE__*/_jsx(ViewportContext.Provider, {
20
20
  value: viewport,
@@ -5,6 +5,7 @@ export { default as Box } from './Box';
5
5
  export { default as Badge } from './Badge';
6
6
  export * from './Button';
7
7
  export { default as Card, PressableCardBase } from './Card';
8
+ export { default as CardGroup } from './CardGroup';
8
9
  export * from './Carousel';
9
10
  export { default as Listbox } from './Listbox';
10
11
  export { default as Checkbox } from './Checkbox';
@@ -1,4 +1,4 @@
1
- import React, { forwardRef } from 'react';
1
+ import React from 'react';
2
2
  import NativeView from "react-native-web/dist/exports/View";
3
3
  import StyleSheet from "react-native-web/dist/exports/StyleSheet";
4
4
  import PropTypes from 'prop-types';
@@ -9,7 +9,7 @@ import { useTheme } from '../../ThemeProvider';
9
9
  * - a zIndex: 'auto' style added to prevent unexpectedly causing children to overlap other elements from other stacking contexts
10
10
  */
11
11
  import { jsx as _jsx } from "react/jsx-runtime";
12
- const BaseView = /*#__PURE__*/forwardRef((_ref, ref) => {
12
+ const BaseView = /*#__PURE__*/React.forwardRef((_ref, ref) => {
13
13
  let {
14
14
  children,
15
15
  style,
@@ -1,4 +1,4 @@
1
- import React, { Children, Fragment } from 'react';
1
+ import React from 'react';
2
2
  import Text from "react-native-web/dist/exports/Text";
3
3
  import A11yText from '../A11yText';
4
4
 
@@ -38,10 +38,10 @@ import { jsx as _jsx } from "react/jsx-runtime";
38
38
  export const unpackFragment = child => {
39
39
  var _child$props;
40
40
  // If this level is a set of top-level siblings rather than one child, check each in turn
41
- if (Children.count(child) > 1) return Children.map(child, unpackFragment);
41
+ if (React.Children.count(child) > 1) return React.Children.map(child, unpackFragment);
42
42
 
43
43
  // When a fragment is found, unpack its children to the top level and check them
44
- if ((child === null || child === void 0 ? void 0 : child.type) === Fragment) return unpackFragment((_child$props = child.props) === null || _child$props === void 0 ? void 0 : _child$props.children);
44
+ if ((child === null || child === void 0 ? void 0 : child.type) === React.Fragment) return unpackFragment((_child$props = child.props) === null || _child$props === void 0 ? void 0 : _child$props.children);
45
45
 
46
46
  // Stop unpacking as soon as any non-fragment child is found
47
47
  return child;
@@ -84,7 +84,7 @@ const wrapChild = (child, wrappedText) => {
84
84
  */
85
85
  export const wrapStringsInText = function (children) {
86
86
  let textProps = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
87
- const childrenArray = unpackFragment(Children.toArray(children));
87
+ const childrenArray = unpackFragment(React.Children.toArray(children));
88
88
 
89
89
  // Group adjacent wrapable children together in one Text element to create as few Text elements
90
90
  // as possible, e.g. give <X>Text {someString}</X> one Text, same as <X>{`Text ${someString}`}</X>
@@ -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 hasOwnProperty from './hasOwnProperty';
4
4
 
@@ -17,7 +17,7 @@ import hasOwnProperty from './hasOwnProperty';
17
17
  * @example A LinkRouter component to be used with link-like components might look like:
18
18
  *
19
19
  * ```jsx
20
- * const LinkLinkRouter = forwardRef(({ Component, linkRouterProps: { to, options }, href, ...rest }, ref) => {
20
+ * const LinkLinkRouter = React.forwardRef(({ Component, linkRouterProps: { to, options }, href, ...rest }, ref) => {
21
21
  * const { href: resolvedHref, onClick } = useSomeRouterHook({ to, href, options })
22
22
  * return <Component href={resolvedHref} onPress={onClick} {...rest} />
23
23
  * })
@@ -32,7 +32,7 @@ import hasOwnProperty from './hasOwnProperty';
32
32
  */
33
33
  import { jsx as _jsx } from "react/jsx-runtime";
34
34
  const withLinkRouter = Component => {
35
- const wrappedComponent = /*#__PURE__*/forwardRef((_ref, ref) => {
35
+ const wrappedComponent = /*#__PURE__*/React.forwardRef((_ref, ref) => {
36
36
  let {
37
37
  LinkRouter,
38
38
  linkRouterProps,
package/package.json CHANGED
@@ -11,7 +11,7 @@
11
11
  "@floating-ui/react-native": "^0.8.1",
12
12
  "@gorhom/portal": "^1.0.14",
13
13
  "@telus-uds/system-constants": "^1.3.0",
14
- "@telus-uds/system-theme-tokens": "^2.55.0",
14
+ "@telus-uds/system-theme-tokens": "^2.56.0",
15
15
  "airbnb-prop-types": "^2.16.0",
16
16
  "css-mediaquery": "^0.1.2",
17
17
  "expo-linear-gradient": "^12.5.0",
@@ -85,6 +85,6 @@
85
85
  "standard-engine": {
86
86
  "skip": true
87
87
  },
88
- "version": "1.84.0",
88
+ "version": "1.85.0",
89
89
  "types": "types/index.d.ts"
90
90
  }