@telus-uds/components-base 1.97.0 → 1.97.1

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 (737) hide show
  1. package/CHANGELOG.md +11 -2
  2. package/babel.config.cjs +35 -0
  3. package/{jest.config-android.js → jest.config-android.cjs} +1 -1
  4. package/{jest.config-ios.js → jest.config-ios.cjs} +1 -1
  5. package/{jest.config-web.js → jest.config-web.cjs} +1 -1
  6. package/jest.config.cjs +40 -0
  7. package/lib/A11yInfoProvider/index.js +29 -35
  8. package/lib/A11yText/index.js +16 -24
  9. package/lib/ActionCard/ActionCard.js +47 -55
  10. package/lib/ActionCard/index.js +2 -10
  11. package/lib/ActivityIndicator/Spinner.js +20 -28
  12. package/lib/ActivityIndicator/Spinner.native.js +32 -40
  13. package/lib/ActivityIndicator/index.js +18 -22
  14. package/lib/ActivityIndicator/shared.js +12 -23
  15. package/lib/Autocomplete/Autocomplete.js +90 -99
  16. package/lib/Autocomplete/Loading.js +14 -22
  17. package/lib/Autocomplete/Suggestions.js +23 -31
  18. package/lib/Autocomplete/constants.js +4 -14
  19. package/lib/Autocomplete/dictionary.js +2 -9
  20. package/lib/Autocomplete/index.js +2 -10
  21. package/lib/Badge/Badge.js +18 -26
  22. package/lib/Badge/index.js +2 -10
  23. package/lib/BaseProvider/HydrationContext.js +13 -23
  24. package/lib/BaseProvider/index.js +24 -29
  25. package/lib/Box/Box.js +60 -68
  26. package/lib/Box/backgroundImageStylesMap.js +2 -9
  27. package/lib/Box/index.js +2 -10
  28. package/lib/Button/Button.js +15 -25
  29. package/lib/Button/ButtonBase.js +37 -46
  30. package/lib/Button/ButtonDropdown.js +37 -47
  31. package/lib/Button/ButtonGroup.js +53 -61
  32. package/lib/Button/ButtonLink.js +21 -29
  33. package/lib/Button/index.js +5 -34
  34. package/lib/Button/propTypes.js +16 -25
  35. package/lib/Card/Card.js +47 -55
  36. package/lib/Card/CardBase.js +27 -35
  37. package/lib/Card/PressableCardBase.js +26 -35
  38. package/lib/Card/index.js +4 -33
  39. package/lib/CardGroup/CardGroup.js +45 -55
  40. package/lib/CardGroup/dictionary.js +2 -9
  41. package/lib/CardGroup/index.js +2 -10
  42. package/lib/Carousel/Carousel.js +137 -145
  43. package/lib/Carousel/CarouselContext.js +19 -27
  44. package/lib/Carousel/CarouselFirstFocus/CarouselFirstFocus.js +15 -22
  45. package/lib/Carousel/CarouselItem/CarouselItem.js +29 -37
  46. package/lib/Carousel/CarouselItem/index.js +2 -10
  47. package/lib/Carousel/CarouselStepTracker/CarouselStepTracker.js +12 -20
  48. package/lib/Carousel/CarouselStepTracker/index.js +2 -10
  49. package/lib/Carousel/CarouselTabs/CarouselTabs.js +16 -23
  50. package/lib/Carousel/CarouselTabs/CarouselTabsPanel.js +20 -28
  51. package/lib/Carousel/CarouselTabs/CarouselTabsPanelItem.js +23 -31
  52. package/lib/Carousel/CarouselTabs/index.js +2 -10
  53. package/lib/Carousel/CarouselThumbnail.js +19 -27
  54. package/lib/Carousel/CarouselThumbnailNavigation.js +22 -30
  55. package/lib/Carousel/dictionary.js +2 -9
  56. package/lib/Carousel/index.js +3 -36
  57. package/lib/Checkbox/Checkbox.js +52 -60
  58. package/lib/Checkbox/CheckboxButton.js +32 -41
  59. package/lib/Checkbox/CheckboxGroup.js +41 -49
  60. package/lib/Checkbox/CheckboxInput.js +15 -21
  61. package/lib/Checkbox/CheckboxInput.native.js +1 -8
  62. package/lib/Checkbox/index.js +3 -17
  63. package/lib/CheckboxCard/CheckboxCard.js +45 -55
  64. package/lib/CheckboxCard/index.js +2 -10
  65. package/lib/CheckboxCardGroup/CheckboxCardGroup.js +42 -52
  66. package/lib/CheckboxCardGroup/index.js +2 -10
  67. package/lib/ColourToggle/ColourBubble.js +23 -31
  68. package/lib/ColourToggle/ColourToggle.js +27 -35
  69. package/lib/ColourToggle/index.js +2 -10
  70. package/lib/Divider/Divider.js +23 -31
  71. package/lib/Divider/index.js +2 -10
  72. package/lib/DownloadApp/DownloadApp.js +32 -40
  73. package/lib/DownloadApp/dictionary.js +2 -9
  74. package/lib/DownloadApp/index.js +2 -10
  75. package/lib/ExpandCollapse/Accordion.js +7 -13
  76. package/lib/ExpandCollapse/Control.js +26 -34
  77. package/lib/ExpandCollapse/ExpandCollapse.js +22 -30
  78. package/lib/ExpandCollapse/Panel.js +43 -51
  79. package/lib/ExpandCollapse/dictionary.js +2 -9
  80. package/lib/ExpandCollapse/index.js +7 -20
  81. package/lib/Feedback/Feedback.js +33 -41
  82. package/lib/Feedback/index.js +2 -10
  83. package/lib/Fieldset/Fieldset.js +37 -43
  84. package/lib/Fieldset/FieldsetContainer.js +17 -25
  85. package/lib/Fieldset/FieldsetContainer.native.js +12 -20
  86. package/lib/Fieldset/Legend.js +10 -16
  87. package/lib/Fieldset/Legend.native.js +11 -17
  88. package/lib/Fieldset/cssReset.js +2 -9
  89. package/lib/Fieldset/index.js +2 -10
  90. package/lib/FileUpload/FileUpload.js +50 -58
  91. package/lib/FileUpload/NotificationContent.js +12 -18
  92. package/lib/FileUpload/dictionary.js +2 -9
  93. package/lib/FileUpload/index.js +2 -10
  94. package/lib/FlexGrid/Col/Col.js +35 -43
  95. package/lib/FlexGrid/Col/index.js +2 -10
  96. package/lib/FlexGrid/FlexGrid.js +38 -46
  97. package/lib/FlexGrid/Row/Row.js +24 -32
  98. package/lib/FlexGrid/Row/index.js +2 -10
  99. package/lib/FlexGrid/helpers/index.js +1 -8
  100. package/lib/FlexGrid/index.js +2 -10
  101. package/lib/FlexGrid/providers/GutterContext.js +3 -11
  102. package/lib/Footnote/Footnote.js +63 -71
  103. package/lib/Footnote/FootnoteLink.js +30 -38
  104. package/lib/Footnote/dictionary.js +2 -9
  105. package/lib/Footnote/index.js +4 -12
  106. package/lib/HorizontalScroll/HorizontalScroll.js +32 -41
  107. package/lib/HorizontalScroll/HorizontalScrollButton.js +25 -33
  108. package/lib/HorizontalScroll/ScrollViewEnd.js +12 -20
  109. package/lib/HorizontalScroll/ScrollViewEnd.native.js +9 -16
  110. package/lib/HorizontalScroll/dictionary.js +2 -9
  111. package/lib/HorizontalScroll/index.js +11 -28
  112. package/lib/HorizontalScroll/itemPositions.js +17 -27
  113. package/lib/Icon/Icon.js +21 -30
  114. package/lib/Icon/IconText.js +29 -39
  115. package/lib/Icon/index.js +4 -25
  116. package/lib/IconButton/IconButton.js +35 -42
  117. package/lib/IconButton/index.js +2 -10
  118. package/lib/InputLabel/InputLabel.js +36 -44
  119. package/lib/InputLabel/LabelContent.js +8 -16
  120. package/lib/InputLabel/LabelContent.native.js +8 -17
  121. package/lib/InputLabel/index.js +2 -10
  122. package/lib/InputSupports/InputSupports.js +27 -35
  123. package/lib/InputSupports/index.js +2 -10
  124. package/lib/InputSupports/useInputSupports.js +5 -13
  125. package/lib/Link/ChevronLink.js +22 -28
  126. package/lib/Link/InlinePressable.js +13 -19
  127. package/lib/Link/InlinePressable.native.js +14 -23
  128. package/lib/Link/Link.js +9 -17
  129. package/lib/Link/LinkBase.js +40 -48
  130. package/lib/Link/TextButton.js +16 -22
  131. package/lib/Link/index.js +5 -34
  132. package/lib/List/List.js +22 -30
  133. package/lib/List/ListItem.js +12 -18
  134. package/lib/List/ListItemBase.js +31 -39
  135. package/lib/List/ListItemContent.js +22 -31
  136. package/lib/List/ListItemMark.js +24 -33
  137. package/lib/List/PressableListItemBase.js +32 -40
  138. package/lib/List/index.js +5 -24
  139. package/lib/Listbox/GroupControl.js +25 -33
  140. package/lib/Listbox/Listbox.js +40 -50
  141. package/lib/Listbox/ListboxContext.js +4 -12
  142. package/lib/Listbox/ListboxGroup.js +31 -40
  143. package/lib/Listbox/ListboxItem.js +23 -31
  144. package/lib/Listbox/ListboxOverlay.js +26 -35
  145. package/lib/Listbox/PressableItem.js +22 -30
  146. package/lib/Listbox/index.js +2 -10
  147. package/lib/Modal/Modal.js +75 -85
  148. package/lib/Modal/ModalContent.js +48 -56
  149. package/lib/Modal/WebModal.js +15 -23
  150. package/lib/Modal/dictionary.js +2 -9
  151. package/lib/Modal/index.js +2 -10
  152. package/lib/MultiSelectFilter/ModalOverlay.js +45 -53
  153. package/lib/MultiSelectFilter/MultiSelectFilter.js +110 -118
  154. package/lib/MultiSelectFilter/dictionary.js +2 -9
  155. package/lib/MultiSelectFilter/index.js +2 -10
  156. package/lib/Notification/Notification.js +59 -67
  157. package/lib/Notification/dictionary.js +2 -9
  158. package/lib/Notification/index.js +2 -10
  159. package/lib/OrderedList/Item.js +31 -39
  160. package/lib/OrderedList/ItemBase.js +13 -22
  161. package/lib/OrderedList/OrderedList.js +17 -25
  162. package/lib/OrderedList/OrderedListBase.js +12 -21
  163. package/lib/OrderedList/index.js +2 -10
  164. package/lib/Pagination/PageButton.js +22 -32
  165. package/lib/Pagination/Pagination.js +42 -52
  166. package/lib/Pagination/SideButton.js +25 -32
  167. package/lib/Pagination/constants.js +3 -12
  168. package/lib/Pagination/dictionary.js +2 -9
  169. package/lib/Pagination/index.js +2 -10
  170. package/lib/Pagination/usePagination.js +5 -13
  171. package/lib/Portal/Portal.js +8 -15
  172. package/lib/Portal/Portal.native.js +2 -9
  173. package/lib/Portal/index.js +2 -10
  174. package/lib/PriceLockup/PriceLockup.js +37 -45
  175. package/lib/PriceLockup/index.js +2 -10
  176. package/lib/PriceLockup/utils/renderFootnoteContent.js +20 -28
  177. package/lib/PriceLockup/utils/renderFootnoteLinks.js +5 -13
  178. package/lib/PriceLockup/utils/renderPrice.js +30 -38
  179. package/lib/PriceLockup/utils/renderTypography.js +5 -13
  180. package/lib/ProductCard/ProductCard.js +62 -70
  181. package/lib/ProductCard/dictionary.js +2 -9
  182. package/lib/ProductCard/index.js +2 -10
  183. package/lib/ProductCardGroup/ProductCardGroup.js +20 -28
  184. package/lib/ProductCardGroup/index.js +2 -10
  185. package/lib/Progress/Progress.js +15 -23
  186. package/lib/Progress/ProgressBar.js +23 -31
  187. package/lib/Progress/ProgressBarBackground.js +10 -18
  188. package/lib/Progress/index.js +4 -12
  189. package/lib/QuickLinks/QuickLinks.js +23 -29
  190. package/lib/QuickLinks/QuickLinksCard.js +14 -20
  191. package/lib/QuickLinks/QuickLinksItem.js +22 -28
  192. package/lib/QuickLinks/index.js +4 -12
  193. package/lib/QuickLinksFeature/QuickLinksFeature.js +20 -27
  194. package/lib/QuickLinksFeature/QuickLinksFeatureItem.js +31 -38
  195. package/lib/QuickLinksFeature/index.js +4 -12
  196. package/lib/Radio/Radio.js +43 -53
  197. package/lib/Radio/RadioButton.js +34 -43
  198. package/lib/Radio/RadioGroup.js +43 -51
  199. package/lib/Radio/RadioInput.js +15 -21
  200. package/lib/Radio/RadioInput.native.js +1 -8
  201. package/lib/Radio/index.js +3 -17
  202. package/lib/RadioCard/RadioCard.js +43 -53
  203. package/lib/RadioCard/RadioCardGroup.js +42 -52
  204. package/lib/RadioCard/index.js +3 -17
  205. package/lib/Responsive/Responsive.js +16 -22
  206. package/lib/Responsive/ResponsiveProp.js +13 -21
  207. package/lib/Responsive/ResponsiveWithMediaQueryStyleSheet.js +15 -23
  208. package/lib/Responsive/index.js +2 -10
  209. package/lib/Search/Search.js +47 -55
  210. package/lib/Search/dictionary.js +2 -9
  211. package/lib/Search/index.js +2 -10
  212. package/lib/Select/Group.js +9 -17
  213. package/lib/Select/Group.native.js +5 -13
  214. package/lib/Select/Item.js +8 -16
  215. package/lib/Select/Item.native.js +1 -8
  216. package/lib/Select/Picker.js +27 -35
  217. package/lib/Select/Picker.native.js +34 -41
  218. package/lib/Select/Select.js +45 -54
  219. package/lib/Select/constants.js +4 -14
  220. package/lib/Select/index.js +6 -14
  221. package/lib/SideNav/Item.js +29 -37
  222. package/lib/SideNav/ItemContent.js +17 -26
  223. package/lib/SideNav/ItemsGroup.js +25 -32
  224. package/lib/SideNav/SideNav.js +28 -38
  225. package/lib/SideNav/index.js +1 -13
  226. package/lib/Skeleton/Skeleton.js +32 -40
  227. package/lib/Skeleton/index.js +2 -10
  228. package/lib/Skeleton/skeleton.constant.js +2 -10
  229. package/lib/Skeleton/skeletonWebAnimation.js +1 -8
  230. package/lib/Skeleton/useSkeletonNativeAnimation.js +14 -22
  231. package/lib/SkipLink/SkipLink.js +24 -33
  232. package/lib/SkipLink/index.js +2 -10
  233. package/lib/Spacer/Spacer.js +15 -21
  234. package/lib/Spacer/index.js +2 -10
  235. package/lib/StackView/StackView.js +28 -36
  236. package/lib/StackView/StackWrap.js +14 -21
  237. package/lib/StackView/StackWrap.native.js +2 -9
  238. package/lib/StackView/StackWrapBox.js +27 -35
  239. package/lib/StackView/StackWrapGap.js +22 -30
  240. package/lib/StackView/common.js +4 -13
  241. package/lib/StackView/getStackedContent.js +14 -22
  242. package/lib/StackView/index.js +5 -24
  243. package/lib/Status/Status.js +27 -35
  244. package/lib/Status/index.js +2 -10
  245. package/lib/StepTracker/Step.js +35 -43
  246. package/lib/StepTracker/StepTracker.js +38 -46
  247. package/lib/StepTracker/dictionary.js +2 -9
  248. package/lib/StepTracker/index.js +2 -10
  249. package/lib/TabBar/TabBar.js +28 -36
  250. package/lib/TabBar/TabBarItem.js +33 -42
  251. package/lib/TabBar/index.js +2 -10
  252. package/lib/Tabs/Tabs.js +38 -48
  253. package/lib/Tabs/TabsItem.js +45 -53
  254. package/lib/Tabs/index.js +2 -10
  255. package/lib/Tags/Tags.js +47 -55
  256. package/lib/Tags/index.js +2 -10
  257. package/lib/TextInput/TextArea.js +19 -27
  258. package/lib/TextInput/TextInput.js +18 -26
  259. package/lib/TextInput/TextInputBase.js +64 -73
  260. package/lib/TextInput/dictionary.js +2 -9
  261. package/lib/TextInput/index.js +3 -20
  262. package/lib/TextInput/propTypes.js +8 -15
  263. package/lib/ThemeProvider/ThemeProvider.js +25 -36
  264. package/lib/ThemeProvider/index.js +7 -60
  265. package/lib/ThemeProvider/useResponsiveThemeTokens.js +10 -18
  266. package/lib/ThemeProvider/useSetTheme.js +5 -12
  267. package/lib/ThemeProvider/useTheme.js +4 -11
  268. package/lib/ThemeProvider/useThemeTokens.js +15 -24
  269. package/lib/ThemeProvider/utils/index.js +2 -27
  270. package/lib/ThemeProvider/utils/styles.js +12 -24
  271. package/lib/ThemeProvider/utils/theme-tokens.js +19 -34
  272. package/lib/Timeline/Timeline.js +28 -34
  273. package/lib/Timeline/index.js +2 -10
  274. package/lib/ToggleSwitch/ToggleSwitch.js +40 -48
  275. package/lib/ToggleSwitch/ToggleSwitchGroup.js +43 -51
  276. package/lib/ToggleSwitch/index.js +3 -20
  277. package/lib/Tooltip/Backdrop.js +8 -16
  278. package/lib/Tooltip/Backdrop.native.js +16 -22
  279. package/lib/Tooltip/Tooltip.js +42 -50
  280. package/lib/Tooltip/Tooltip.native.js +52 -61
  281. package/lib/Tooltip/dictionary.js +2 -9
  282. package/lib/Tooltip/getTooltipPosition.js +1 -9
  283. package/lib/Tooltip/index.js +5 -13
  284. package/lib/Tooltip/shared.js +14 -22
  285. package/lib/TooltipButton/TooltipButton.js +25 -33
  286. package/lib/TooltipButton/index.js +2 -10
  287. package/lib/Typography/Typography.js +39 -46
  288. package/lib/Typography/index.js +2 -10
  289. package/lib/Validator/Validator.js +42 -50
  290. package/lib/Validator/index.js +2 -10
  291. package/lib/ViewportProvider/ViewportProvider.js +13 -19
  292. package/lib/ViewportProvider/index.js +3 -23
  293. package/lib/ViewportProvider/useViewport.js +3 -11
  294. package/lib/ViewportProvider/useViewportListener.js +10 -17
  295. package/lib/index.js +71 -772
  296. package/lib/server.js +4 -40
  297. package/lib/utils/BaseView/BaseView.js +14 -20
  298. package/lib/utils/BaseView/BaseView.native.js +2 -10
  299. package/lib/utils/BaseView/index.js +2 -10
  300. package/lib/utils/a11y/index.js +2 -27
  301. package/lib/utils/a11y/semantics.js +11 -35
  302. package/lib/utils/a11y/textSize.js +7 -16
  303. package/lib/utils/animation/index.js +2 -13
  304. package/lib/utils/animation/useVerticalExpandAnimation.js +19 -26
  305. package/lib/utils/children.js +12 -20
  306. package/lib/utils/containUniqueFields.js +1 -8
  307. package/lib/utils/convertFromMegaByteToByte.js +1 -7
  308. package/lib/utils/floating-ui/index.js +1 -42
  309. package/lib/utils/floating-ui/index.native.js +1 -42
  310. package/lib/utils/formatImageSource.js +1 -8
  311. package/lib/utils/hasOwnProperty.js +1 -7
  312. package/lib/utils/htmlAttrs.js +11 -19
  313. package/lib/utils/index.js +25 -245
  314. package/lib/utils/info/index.js +6 -13
  315. package/lib/utils/info/platform/index.js +8 -13
  316. package/lib/utils/info/platform/platform.android.js +1 -8
  317. package/lib/utils/info/platform/platform.ios.js +1 -8
  318. package/lib/utils/info/platform/platform.js +1 -8
  319. package/lib/utils/info/platform/platform.native.js +1 -8
  320. package/lib/utils/info/versions.js +4 -11
  321. package/lib/utils/input.js +13 -21
  322. package/lib/utils/pressability.js +14 -22
  323. package/lib/utils/props/a11yProps.js +90 -98
  324. package/lib/utils/props/clickProps.js +4 -12
  325. package/lib/utils/props/componentPropType.js +1 -7
  326. package/lib/utils/props/copyPropTypes.js +2 -10
  327. package/lib/utils/props/getPropSelector.js +6 -11
  328. package/lib/utils/props/handlerProps.js +23 -31
  329. package/lib/utils/props/hrefAttrsProp.js +6 -13
  330. package/lib/utils/props/index.js +19 -168
  331. package/lib/utils/props/inputSupportsProps.js +12 -20
  332. package/lib/utils/props/linkProps.js +16 -24
  333. package/lib/utils/props/paddingProp.js +8 -16
  334. package/lib/utils/props/pressProps.js +22 -31
  335. package/lib/utils/props/rectProp.js +8 -16
  336. package/lib/utils/props/responsiveProps.js +5 -13
  337. package/lib/utils/props/selectSystemProps.js +1 -7
  338. package/lib/utils/props/spacingProps.js +12 -19
  339. package/lib/utils/props/textInputProps.js +56 -62
  340. package/lib/utils/props/textProps.js +18 -24
  341. package/lib/utils/props/tokens.js +16 -26
  342. package/lib/utils/props/variantProp.js +4 -11
  343. package/lib/utils/props/viewProps.js +10 -18
  344. package/lib/utils/ssr-media-query/create-stylesheet/create-stylesheet-mobile.js +8 -16
  345. package/lib/utils/ssr-media-query/create-stylesheet/index.android.js +2 -10
  346. package/lib/utils/ssr-media-query/create-stylesheet/index.ios.js +2 -10
  347. package/lib/utils/ssr-media-query/create-stylesheet/index.js +12 -20
  348. package/lib/utils/ssr-media-query/hash.js +1 -7
  349. package/lib/utils/ssr-media-query/index.js +4 -17
  350. package/lib/utils/ssr-media-query/utils/common.js +1 -12
  351. package/lib/utils/ssr-media-query/utils/create-declaration-block.js +6 -14
  352. package/lib/utils/ssr-media-query/utils/create-media-query-styles.js +5 -12
  353. package/lib/utils/ssr-media-query/utils/hyphenate-style-name.js +1 -8
  354. package/lib/utils/ssr-media-query/utils/inject.js +8 -18
  355. package/lib/utils/ssr.js +19 -28
  356. package/lib/utils/transformGradient.js +3 -11
  357. package/lib/utils/useCopy.js +2 -10
  358. package/lib/utils/useHash.js +7 -14
  359. package/lib/utils/useHash.native.js +1 -8
  360. package/lib/utils/useOverlaidPosition.js +17 -25
  361. package/lib/utils/useResponsiveProp.js +10 -19
  362. package/lib/utils/useSafeLayoutEffect.js +6 -13
  363. package/lib/utils/useScrollBlocking.js +10 -17
  364. package/lib/utils/useScrollBlocking.native.js +1 -8
  365. package/lib/utils/useSpacingScale.js +7 -14
  366. package/lib/utils/useUniqueId.js +3 -10
  367. package/lib/utils/withLinkRouter.js +13 -19
  368. package/package.json +20 -25
  369. package/src/A11yInfoProvider/index.jsx +5 -2
  370. package/src/ActivityIndicator/index.jsx +12 -3
  371. package/src/BaseProvider/index.jsx +5 -2
  372. package/src/Icon/IconText.jsx +0 -1
  373. package/src/TextInput/TextInputBase.jsx +1 -1
  374. package/src/Timeline/Timeline.jsx +6 -2
  375. package/src/index.js +9 -10
  376. package/src/utils/a11y/semantics.js +0 -7
  377. package/lib-module/A11yInfoProvider/index.js +0 -62
  378. package/lib-module/A11yText/index.js +0 -68
  379. package/lib-module/ActionCard/ActionCard.js +0 -343
  380. package/lib-module/ActionCard/index.js +0 -2
  381. package/lib-module/ActivityIndicator/Spinner.js +0 -80
  382. package/lib-module/ActivityIndicator/Spinner.native.js +0 -144
  383. package/lib-module/ActivityIndicator/index.js +0 -44
  384. package/lib-module/ActivityIndicator/shared.js +0 -14
  385. package/lib-module/Autocomplete/Autocomplete.js +0 -481
  386. package/lib-module/Autocomplete/Loading.js +0 -36
  387. package/lib-module/Autocomplete/Suggestions.js +0 -66
  388. package/lib-module/Autocomplete/constants.js +0 -4
  389. package/lib-module/Autocomplete/dictionary.js +0 -12
  390. package/lib-module/Autocomplete/index.js +0 -2
  391. package/lib-module/Badge/Badge.js +0 -102
  392. package/lib-module/Badge/index.js +0 -2
  393. package/lib-module/BaseProvider/HydrationContext.js +0 -48
  394. package/lib-module/BaseProvider/index.js +0 -38
  395. package/lib-module/Box/Box.js +0 -379
  396. package/lib-module/Box/backgroundImageStylesMap.js +0 -94
  397. package/lib-module/Box/index.js +0 -2
  398. package/lib-module/Button/Button.js +0 -34
  399. package/lib-module/Button/ButtonBase.js +0 -347
  400. package/lib-module/Button/ButtonDropdown.js +0 -173
  401. package/lib-module/Button/ButtonGroup.js +0 -272
  402. package/lib-module/Button/ButtonLink.js +0 -50
  403. package/lib-module/Button/index.js +0 -5
  404. package/lib-module/Button/propTypes.js +0 -46
  405. package/lib-module/Card/Card.js +0 -330
  406. package/lib-module/Card/CardBase.js +0 -114
  407. package/lib-module/Card/PressableCardBase.js +0 -112
  408. package/lib-module/Card/index.js +0 -4
  409. package/lib-module/CardGroup/CardGroup.js +0 -210
  410. package/lib-module/CardGroup/dictionary.js +0 -8
  411. package/lib-module/CardGroup/index.js +0 -2
  412. package/lib-module/Carousel/Carousel.js +0 -894
  413. package/lib-module/Carousel/CarouselContext.js +0 -51
  414. package/lib-module/Carousel/CarouselFirstFocus/CarouselFirstFocus.js +0 -53
  415. package/lib-module/Carousel/CarouselItem/CarouselItem.js +0 -146
  416. package/lib-module/Carousel/CarouselItem/index.js +0 -2
  417. package/lib-module/Carousel/CarouselStepTracker/CarouselStepTracker.js +0 -54
  418. package/lib-module/Carousel/CarouselStepTracker/index.js +0 -2
  419. package/lib-module/Carousel/CarouselTabs/CarouselTabs.js +0 -50
  420. package/lib-module/Carousel/CarouselTabs/CarouselTabsPanel.js +0 -89
  421. package/lib-module/Carousel/CarouselTabs/CarouselTabsPanelItem.js +0 -118
  422. package/lib-module/Carousel/CarouselTabs/index.js +0 -2
  423. package/lib-module/Carousel/CarouselThumbnail.js +0 -113
  424. package/lib-module/Carousel/CarouselThumbnailNavigation.js +0 -71
  425. package/lib-module/Carousel/dictionary.js +0 -22
  426. package/lib-module/Carousel/index.js +0 -3
  427. package/lib-module/Checkbox/Checkbox.js +0 -343
  428. package/lib-module/Checkbox/CheckboxButton.js +0 -164
  429. package/lib-module/Checkbox/CheckboxGroup.js +0 -240
  430. package/lib-module/Checkbox/CheckboxInput.js +0 -50
  431. package/lib-module/Checkbox/CheckboxInput.native.js +0 -5
  432. package/lib-module/Checkbox/index.js +0 -3
  433. package/lib-module/CheckboxCard/CheckboxCard.js +0 -183
  434. package/lib-module/CheckboxCard/index.js +0 -2
  435. package/lib-module/CheckboxCardGroup/CheckboxCardGroup.js +0 -206
  436. package/lib-module/CheckboxCardGroup/index.js +0 -2
  437. package/lib-module/ColourToggle/ColourBubble.js +0 -126
  438. package/lib-module/ColourToggle/ColourToggle.js +0 -92
  439. package/lib-module/ColourToggle/index.js +0 -2
  440. package/lib-module/Divider/Divider.js +0 -133
  441. package/lib-module/Divider/index.js +0 -2
  442. package/lib-module/DownloadApp/DownloadApp.js +0 -160
  443. package/lib-module/DownloadApp/dictionary.js +0 -10
  444. package/lib-module/DownloadApp/index.js +0 -2
  445. package/lib-module/ExpandCollapse/Accordion.js +0 -15
  446. package/lib-module/ExpandCollapse/Control.js +0 -165
  447. package/lib-module/ExpandCollapse/ExpandCollapse.js +0 -98
  448. package/lib-module/ExpandCollapse/Panel.js +0 -242
  449. package/lib-module/ExpandCollapse/dictionary.js +0 -10
  450. package/lib-module/ExpandCollapse/index.js +0 -7
  451. package/lib-module/Feedback/Feedback.js +0 -161
  452. package/lib-module/Feedback/index.js +0 -2
  453. package/lib-module/Fieldset/Fieldset.js +0 -194
  454. package/lib-module/Fieldset/FieldsetContainer.js +0 -48
  455. package/lib-module/Fieldset/FieldsetContainer.native.js +0 -32
  456. package/lib-module/Fieldset/Legend.js +0 -24
  457. package/lib-module/Fieldset/Legend.native.js +0 -31
  458. package/lib-module/Fieldset/cssReset.js +0 -14
  459. package/lib-module/Fieldset/index.js +0 -2
  460. package/lib-module/FileUpload/FileUpload.js +0 -329
  461. package/lib-module/FileUpload/NotificationContent.js +0 -55
  462. package/lib-module/FileUpload/dictionary.js +0 -40
  463. package/lib-module/FileUpload/index.js +0 -2
  464. package/lib-module/FlexGrid/Col/Col.js +0 -257
  465. package/lib-module/FlexGrid/Col/index.js +0 -2
  466. package/lib-module/FlexGrid/FlexGrid.js +0 -158
  467. package/lib-module/FlexGrid/Row/Row.js +0 -181
  468. package/lib-module/FlexGrid/Row/index.js +0 -2
  469. package/lib-module/FlexGrid/helpers/index.js +0 -15
  470. package/lib-module/FlexGrid/index.js +0 -2
  471. package/lib-module/FlexGrid/providers/GutterContext.js +0 -3
  472. package/lib-module/Footnote/Footnote.js +0 -317
  473. package/lib-module/Footnote/FootnoteLink.js +0 -107
  474. package/lib-module/Footnote/dictionary.js +0 -12
  475. package/lib-module/Footnote/index.js +0 -4
  476. package/lib-module/HorizontalScroll/HorizontalScroll.js +0 -165
  477. package/lib-module/HorizontalScroll/HorizontalScrollButton.js +0 -79
  478. package/lib-module/HorizontalScroll/ScrollViewEnd.js +0 -46
  479. package/lib-module/HorizontalScroll/ScrollViewEnd.native.js +0 -26
  480. package/lib-module/HorizontalScroll/dictionary.js +0 -11
  481. package/lib-module/HorizontalScroll/index.js +0 -11
  482. package/lib-module/HorizontalScroll/itemPositions.js +0 -113
  483. package/lib-module/Icon/Icon.js +0 -93
  484. package/lib-module/Icon/IconText.js +0 -114
  485. package/lib-module/Icon/index.js +0 -4
  486. package/lib-module/IconButton/IconButton.js +0 -203
  487. package/lib-module/IconButton/index.js +0 -2
  488. package/lib-module/InputLabel/InputLabel.js +0 -145
  489. package/lib-module/InputLabel/LabelContent.js +0 -28
  490. package/lib-module/InputLabel/LabelContent.native.js +0 -18
  491. package/lib-module/InputLabel/index.js +0 -2
  492. package/lib-module/InputSupports/InputSupports.js +0 -108
  493. package/lib-module/InputSupports/index.js +0 -2
  494. package/lib-module/InputSupports/useInputSupports.js +0 -31
  495. package/lib-module/Link/ChevronLink.js +0 -68
  496. package/lib-module/Link/InlinePressable.js +0 -48
  497. package/lib-module/Link/InlinePressable.native.js +0 -87
  498. package/lib-module/Link/Link.js +0 -28
  499. package/lib-module/Link/LinkBase.js +0 -269
  500. package/lib-module/Link/TextButton.js +0 -43
  501. package/lib-module/Link/index.js +0 -5
  502. package/lib-module/List/List.js +0 -77
  503. package/lib-module/List/ListItem.js +0 -32
  504. package/lib-module/List/ListItemBase.js +0 -165
  505. package/lib-module/List/ListItemContent.js +0 -73
  506. package/lib-module/List/ListItemMark.js +0 -126
  507. package/lib-module/List/PressableListItemBase.js +0 -112
  508. package/lib-module/List/index.js +0 -5
  509. package/lib-module/Listbox/GroupControl.js +0 -106
  510. package/lib-module/Listbox/Listbox.js +0 -172
  511. package/lib-module/Listbox/ListboxContext.js +0 -4
  512. package/lib-module/Listbox/ListboxGroup.js +0 -125
  513. package/lib-module/Listbox/ListboxItem.js +0 -76
  514. package/lib-module/Listbox/ListboxOverlay.js +0 -78
  515. package/lib-module/Listbox/PressableItem.js +0 -140
  516. package/lib-module/Listbox/index.js +0 -2
  517. package/lib-module/Modal/Modal.js +0 -373
  518. package/lib-module/Modal/ModalContent.js +0 -180
  519. package/lib-module/Modal/WebModal.js +0 -76
  520. package/lib-module/Modal/dictionary.js +0 -9
  521. package/lib-module/Modal/index.js +0 -2
  522. package/lib-module/MultiSelectFilter/ModalOverlay.js +0 -156
  523. package/lib-module/MultiSelectFilter/MultiSelectFilter.js +0 -526
  524. package/lib-module/MultiSelectFilter/dictionary.js +0 -12
  525. package/lib-module/MultiSelectFilter/index.js +0 -2
  526. package/lib-module/Notification/Notification.js +0 -429
  527. package/lib-module/Notification/dictionary.js +0 -8
  528. package/lib-module/Notification/index.js +0 -2
  529. package/lib-module/OrderedList/Item.js +0 -160
  530. package/lib-module/OrderedList/ItemBase.js +0 -43
  531. package/lib-module/OrderedList/OrderedList.js +0 -64
  532. package/lib-module/OrderedList/OrderedListBase.js +0 -36
  533. package/lib-module/OrderedList/index.js +0 -2
  534. package/lib-module/Pagination/PageButton.js +0 -74
  535. package/lib-module/Pagination/Pagination.js +0 -218
  536. package/lib-module/Pagination/SideButton.js +0 -113
  537. package/lib-module/Pagination/constants.js +0 -3
  538. package/lib-module/Pagination/dictionary.js +0 -18
  539. package/lib-module/Pagination/index.js +0 -2
  540. package/lib-module/Pagination/usePagination.js +0 -79
  541. package/lib-module/Portal/Portal.js +0 -50
  542. package/lib-module/Portal/Portal.native.js +0 -2
  543. package/lib-module/Portal/index.js +0 -2
  544. package/lib-module/PriceLockup/PriceLockup.js +0 -225
  545. package/lib-module/PriceLockup/index.js +0 -2
  546. package/lib-module/PriceLockup/utils/renderFootnoteContent.js +0 -87
  547. package/lib-module/PriceLockup/utils/renderFootnoteLinks.js +0 -28
  548. package/lib-module/PriceLockup/utils/renderPrice.js +0 -141
  549. package/lib-module/PriceLockup/utils/renderTypography.js +0 -23
  550. package/lib-module/ProductCard/ProductCard.js +0 -232
  551. package/lib-module/ProductCard/dictionary.js +0 -38
  552. package/lib-module/ProductCard/index.js +0 -2
  553. package/lib-module/ProductCardGroup/ProductCardGroup.js +0 -70
  554. package/lib-module/ProductCardGroup/index.js +0 -2
  555. package/lib-module/Progress/Progress.js +0 -88
  556. package/lib-module/Progress/ProgressBar.js +0 -133
  557. package/lib-module/Progress/ProgressBarBackground.js +0 -40
  558. package/lib-module/Progress/index.js +0 -4
  559. package/lib-module/QuickLinks/QuickLinks.js +0 -78
  560. package/lib-module/QuickLinks/QuickLinksCard.js +0 -33
  561. package/lib-module/QuickLinks/QuickLinksItem.js +0 -51
  562. package/lib-module/QuickLinks/index.js +0 -4
  563. package/lib-module/QuickLinksFeature/QuickLinksFeature.js +0 -69
  564. package/lib-module/QuickLinksFeature/QuickLinksFeatureItem.js +0 -147
  565. package/lib-module/QuickLinksFeature/index.js +0 -4
  566. package/lib-module/Radio/Radio.js +0 -283
  567. package/lib-module/Radio/RadioButton.js +0 -184
  568. package/lib-module/Radio/RadioGroup.js +0 -255
  569. package/lib-module/Radio/RadioInput.js +0 -50
  570. package/lib-module/Radio/RadioInput.native.js +0 -5
  571. package/lib-module/Radio/index.js +0 -3
  572. package/lib-module/RadioCard/RadioCard.js +0 -211
  573. package/lib-module/RadioCard/RadioCardGroup.js +0 -257
  574. package/lib-module/RadioCard/index.js +0 -3
  575. package/lib-module/Responsive/Responsive.js +0 -65
  576. package/lib-module/Responsive/ResponsiveProp.js +0 -39
  577. package/lib-module/Responsive/ResponsiveWithMediaQueryStyleSheet.js +0 -68
  578. package/lib-module/Responsive/index.js +0 -2
  579. package/lib-module/Search/Search.js +0 -242
  580. package/lib-module/Search/dictionary.js +0 -12
  581. package/lib-module/Search/index.js +0 -2
  582. package/lib-module/Select/Group.js +0 -24
  583. package/lib-module/Select/Group.native.js +0 -16
  584. package/lib-module/Select/Item.js +0 -23
  585. package/lib-module/Select/Item.native.js +0 -2
  586. package/lib-module/Select/Picker.js +0 -97
  587. package/lib-module/Select/Picker.native.js +0 -120
  588. package/lib-module/Select/Select.js +0 -337
  589. package/lib-module/Select/constants.js +0 -5
  590. package/lib-module/Select/index.js +0 -6
  591. package/lib-module/SideNav/Item.js +0 -143
  592. package/lib-module/SideNav/ItemContent.js +0 -50
  593. package/lib-module/SideNav/ItemsGroup.js +0 -121
  594. package/lib-module/SideNav/SideNav.js +0 -131
  595. package/lib-module/SideNav/index.js +0 -1
  596. package/lib-module/Skeleton/Skeleton.js +0 -177
  597. package/lib-module/Skeleton/index.js +0 -2
  598. package/lib-module/Skeleton/skeleton.constant.js +0 -2
  599. package/lib-module/Skeleton/skeletonWebAnimation.js +0 -14
  600. package/lib-module/Skeleton/useSkeletonNativeAnimation.js +0 -28
  601. package/lib-module/SkipLink/SkipLink.js +0 -190
  602. package/lib-module/SkipLink/index.js +0 -2
  603. package/lib-module/Spacer/Spacer.js +0 -95
  604. package/lib-module/Spacer/index.js +0 -2
  605. package/lib-module/StackView/StackView.js +0 -126
  606. package/lib-module/StackView/StackWrap.js +0 -51
  607. package/lib-module/StackView/StackWrap.native.js +0 -4
  608. package/lib-module/StackView/StackWrapBox.js +0 -114
  609. package/lib-module/StackView/StackWrapGap.js +0 -61
  610. package/lib-module/StackView/common.js +0 -35
  611. package/lib-module/StackView/getStackedContent.js +0 -123
  612. package/lib-module/StackView/index.js +0 -5
  613. package/lib-module/Status/Status.js +0 -167
  614. package/lib-module/Status/index.js +0 -2
  615. package/lib-module/StepTracker/Step.js +0 -265
  616. package/lib-module/StepTracker/StepTracker.js +0 -208
  617. package/lib-module/StepTracker/dictionary.js +0 -30
  618. package/lib-module/StepTracker/index.js +0 -2
  619. package/lib-module/TabBar/TabBar.js +0 -125
  620. package/lib-module/TabBar/TabBarItem.js +0 -177
  621. package/lib-module/TabBar/index.js +0 -2
  622. package/lib-module/Tabs/Tabs.js +0 -179
  623. package/lib-module/Tabs/TabsItem.js +0 -239
  624. package/lib-module/Tabs/index.js +0 -2
  625. package/lib-module/Tags/Tags.js +0 -245
  626. package/lib-module/Tags/index.js +0 -2
  627. package/lib-module/TextInput/TextArea.js +0 -97
  628. package/lib-module/TextInput/TextInput.js +0 -80
  629. package/lib-module/TextInput/TextInputBase.js +0 -436
  630. package/lib-module/TextInput/dictionary.js +0 -12
  631. package/lib-module/TextInput/index.js +0 -3
  632. package/lib-module/TextInput/propTypes.js +0 -34
  633. package/lib-module/ThemeProvider/ThemeProvider.js +0 -84
  634. package/lib-module/ThemeProvider/index.js +0 -7
  635. package/lib-module/ThemeProvider/useResponsiveThemeTokens.js +0 -81
  636. package/lib-module/ThemeProvider/useSetTheme.js +0 -24
  637. package/lib-module/ThemeProvider/useTheme.js +0 -11
  638. package/lib-module/ThemeProvider/useThemeTokens.js +0 -109
  639. package/lib-module/ThemeProvider/utils/index.js +0 -2
  640. package/lib-module/ThemeProvider/utils/styles.js +0 -198
  641. package/lib-module/ThemeProvider/utils/theme-tokens.js +0 -160
  642. package/lib-module/Timeline/Timeline.js +0 -168
  643. package/lib-module/Timeline/index.js +0 -2
  644. package/lib-module/ToggleSwitch/ToggleSwitch.js +0 -280
  645. package/lib-module/ToggleSwitch/ToggleSwitchGroup.js +0 -208
  646. package/lib-module/ToggleSwitch/index.js +0 -3
  647. package/lib-module/Tooltip/Backdrop.js +0 -50
  648. package/lib-module/Tooltip/Backdrop.native.js +0 -41
  649. package/lib-module/Tooltip/Tooltip.js +0 -280
  650. package/lib-module/Tooltip/Tooltip.native.js +0 -356
  651. package/lib-module/Tooltip/dictionary.js +0 -8
  652. package/lib-module/Tooltip/getTooltipPosition.js +0 -170
  653. package/lib-module/Tooltip/index.js +0 -5
  654. package/lib-module/Tooltip/shared.js +0 -41
  655. package/lib-module/TooltipButton/TooltipButton.js +0 -90
  656. package/lib-module/TooltipButton/index.js +0 -2
  657. package/lib-module/Typography/Typography.js +0 -254
  658. package/lib-module/Typography/index.js +0 -2
  659. package/lib-module/Validator/Validator.js +0 -222
  660. package/lib-module/Validator/index.js +0 -2
  661. package/lib-module/ViewportProvider/ViewportProvider.js +0 -27
  662. package/lib-module/ViewportProvider/index.js +0 -3
  663. package/lib-module/ViewportProvider/useViewport.js +0 -3
  664. package/lib-module/ViewportProvider/useViewportListener.js +0 -37
  665. package/lib-module/index.js +0 -76
  666. package/lib-module/server.js +0 -4
  667. package/lib-module/utils/BaseView/BaseView.js +0 -42
  668. package/lib-module/utils/BaseView/BaseView.native.js +0 -5
  669. package/lib-module/utils/BaseView/index.js +0 -2
  670. package/lib-module/utils/a11y/index.js +0 -2
  671. package/lib-module/utils/a11y/semantics.js +0 -144
  672. package/lib-module/utils/a11y/textSize.js +0 -35
  673. package/lib-module/utils/animation/index.js +0 -2
  674. package/lib-module/utils/animation/useVerticalExpandAnimation.js +0 -86
  675. package/lib-module/utils/children.js +0 -117
  676. package/lib-module/utils/containUniqueFields.js +0 -24
  677. package/lib-module/utils/convertFromMegaByteToByte.js +0 -10
  678. package/lib-module/utils/floating-ui/index.js +0 -1
  679. package/lib-module/utils/floating-ui/index.native.js +0 -1
  680. package/lib-module/utils/formatImageSource.js +0 -27
  681. package/lib-module/utils/hasOwnProperty.js +0 -11
  682. package/lib-module/utils/htmlAttrs.js +0 -23
  683. package/lib-module/utils/index.js +0 -25
  684. package/lib-module/utils/info/index.js +0 -8
  685. package/lib-module/utils/info/platform/index.js +0 -14
  686. package/lib-module/utils/info/platform/platform.android.js +0 -1
  687. package/lib-module/utils/info/platform/platform.ios.js +0 -1
  688. package/lib-module/utils/info/platform/platform.js +0 -1
  689. package/lib-module/utils/info/platform/platform.native.js +0 -4
  690. package/lib-module/utils/info/versions.js +0 -6
  691. package/lib-module/utils/input.js +0 -185
  692. package/lib-module/utils/pressability.js +0 -112
  693. package/lib-module/utils/props/a11yProps.js +0 -310
  694. package/lib-module/utils/props/clickProps.js +0 -25
  695. package/lib-module/utils/props/componentPropType.js +0 -50
  696. package/lib-module/utils/props/copyPropTypes.js +0 -2
  697. package/lib-module/utils/props/getPropSelector.js +0 -52
  698. package/lib-module/utils/props/handlerProps.js +0 -105
  699. package/lib-module/utils/props/hrefAttrsProp.js +0 -33
  700. package/lib-module/utils/props/index.js +0 -19
  701. package/lib-module/utils/props/inputSupportsProps.js +0 -68
  702. package/lib-module/utils/props/linkProps.js +0 -43
  703. package/lib-module/utils/props/paddingProp.js +0 -9
  704. package/lib-module/utils/props/pressProps.js +0 -42
  705. package/lib-module/utils/props/rectProp.js +0 -9
  706. package/lib-module/utils/props/responsiveProps.js +0 -28
  707. package/lib-module/utils/props/selectSystemProps.js +0 -23
  708. package/lib-module/utils/props/spacingProps.js +0 -57
  709. package/lib-module/utils/props/textInputProps.js +0 -188
  710. package/lib-module/utils/props/textProps.js +0 -61
  711. package/lib-module/utils/props/tokens.js +0 -130
  712. package/lib-module/utils/props/variantProp.js +0 -18
  713. package/lib-module/utils/props/viewProps.js +0 -21
  714. package/lib-module/utils/ssr-media-query/create-stylesheet/create-stylesheet-mobile.js +0 -48
  715. package/lib-module/utils/ssr-media-query/create-stylesheet/index.android.js +0 -2
  716. package/lib-module/utils/ssr-media-query/create-stylesheet/index.ios.js +0 -2
  717. package/lib-module/utils/ssr-media-query/create-stylesheet/index.js +0 -36
  718. package/lib-module/utils/ssr-media-query/hash.js +0 -13
  719. package/lib-module/utils/ssr-media-query/index.js +0 -6
  720. package/lib-module/utils/ssr-media-query/utils/common.js +0 -33
  721. package/lib-module/utils/ssr-media-query/utils/create-declaration-block.js +0 -16
  722. package/lib-module/utils/ssr-media-query/utils/create-media-query-styles.js +0 -60
  723. package/lib-module/utils/ssr-media-query/utils/hyphenate-style-name.js +0 -12
  724. package/lib-module/utils/ssr-media-query/utils/inject.js +0 -39
  725. package/lib-module/utils/ssr.js +0 -142
  726. package/lib-module/utils/transformGradient.js +0 -15
  727. package/lib-module/utils/useCopy.js +0 -42
  728. package/lib-module/utils/useHash.js +0 -41
  729. package/lib-module/utils/useHash.native.js +0 -6
  730. package/lib-module/utils/useOverlaidPosition.js +0 -214
  731. package/lib-module/utils/useResponsiveProp.js +0 -45
  732. package/lib-module/utils/useSafeLayoutEffect.js +0 -28
  733. package/lib-module/utils/useScrollBlocking.js +0 -51
  734. package/lib-module/utils/useScrollBlocking.native.js +0 -2
  735. package/lib-module/utils/useSpacingScale.js +0 -123
  736. package/lib-module/utils/useUniqueId.js +0 -11
  737. package/lib-module/utils/withLinkRouter.js +0 -84
@@ -1,84 +0,0 @@
1
- import React from 'react';
2
- import PropTypes from 'prop-types';
3
- import { validateThemeTokensVersion } from './utils';
4
- import responsiveProps from '../utils/props/responsiveProps';
5
- import { jsx as _jsx } from "react/jsx-runtime";
6
- export const uninitialisedError = new Error('Theme context used outside of ThemeProvider');
7
- export const ThemeContext = /*#__PURE__*/React.createContext(uninitialisedError);
8
- export const ThemeSetterContext = /*#__PURE__*/React.createContext(uninitialisedError);
9
-
10
- // These options default to `true` in v1.x to match legacy defaults and avoid breaking changes.
11
- // This should change in future major releases to become "opt-in" legacy support.
12
- const defaultThemeOptions = {
13
- // TODO: switch `forceAbsoluteFontSizing` to be false by default in the next major version
14
- forceAbsoluteFontSizing: true,
15
- // TODO: switch `forceZIndex` to be false by default in the next major version
16
- forceZIndex: true,
17
- // TODO: switch `enableHelmetSSR` to be false by default in the next major version
18
- enableHelmetSSR: true,
19
- enableMediaQueryStyleSheet: false
20
- };
21
- const ThemeProvider = _ref => {
22
- let {
23
- children,
24
- defaultTheme,
25
- themeOptions = {}
26
- } = _ref;
27
- const [theme, setTheme] = React.useState(defaultTheme);
28
- React.useEffect(() => {
29
- if (theme.metadata.name !== defaultTheme.metadata.name) {
30
- setTheme(defaultTheme);
31
- }
32
- }, [theme.metadata.name, defaultTheme]);
33
- const appliedThemeOptions = {
34
- ...defaultThemeOptions,
35
- ...themeOptions
36
- };
37
-
38
- // Validate the theme tokens version on every render.
39
- // This will intentionally break the application when attempting to use an invalid theme.
40
- // This will surface an incompatibility quickly rather than allowing the potential for strange bugs due to missing or incompatible tokens.
41
- validateThemeTokensVersion(theme);
42
- return /*#__PURE__*/_jsx(ThemeSetterContext.Provider, {
43
- value: setTheme,
44
- children: /*#__PURE__*/_jsx(ThemeContext.Provider, {
45
- value: {
46
- ...theme,
47
- themeOptions: appliedThemeOptions
48
- },
49
- children: children
50
- })
51
- });
52
- };
53
- ThemeProvider.propTypes = {
54
- children: PropTypes.node.isRequired,
55
- defaultTheme: PropTypes.shape({
56
- metadata: PropTypes.shape({
57
- themeTokensVersion: PropTypes.string.isRequired,
58
- name: PropTypes.string.isRequired
59
- }).isRequired
60
- }).isRequired,
61
- /**
62
- * An object containing options allowing to customize the theming experience:
63
- *
64
- * - `forceAbsoluteFontSizing`: available on web only; when set to true, allows
65
- * using absolute font sizing (in pixels, doesn't scale) instead of the
66
- * relative sizing (in `rem`, scales depending on the browser settings)
67
- * - `contentMaxWidth`: allows configuration of the content max width to be used in components
68
- * such as Footnote and Notification to avoid content to stretch width more then the page's width
69
- * - `forceZIndex`: available on web only, when set to false, sets zIndex on `View` to be `auto`
70
- * and when true, sets zIndex to be `0` (the default from `react-native-web`)
71
- * - `enableHelmetSSR`: on Web SSR, allows React Helmet to run during server-side rendering. This should be
72
- * disabled unless a web app has been specifically configured to stop React Helmet accumulating
73
- * instances (which may cause a memory leak). See React Helmet's docs: https://github.com/nfl/react-helmet
74
- * - `enableMediaQueryStyleSheet`: enables the use of Media Query StyleSheet.
75
- */
76
- themeOptions: PropTypes.shape({
77
- forceAbsoluteFontSizing: PropTypes.bool,
78
- forceZIndex: PropTypes.bool,
79
- enableHelmetSSR: PropTypes.bool,
80
- contentMaxWidth: responsiveProps.getTypeOptionallyByViewport(PropTypes.number),
81
- enableMediaQueryStyleSheet: PropTypes.bool
82
- })
83
- };
84
- export default ThemeProvider;
@@ -1,7 +0,0 @@
1
- import ThemeProvider from './ThemeProvider';
2
- export { default as useTheme } from './useTheme';
3
- export { default as useSetTheme } from './useSetTheme';
4
- export { default as useResponsiveThemeTokens } from './useResponsiveThemeTokens';
5
- export * from './useThemeTokens';
6
- export * from './utils';
7
- export default ThemeProvider;
@@ -1,81 +0,0 @@
1
- import { viewports } from '@telus-uds/system-constants';
2
- import useTheme from './useTheme';
3
- import { getComponentTheme, mergeAppearances, resolveThemeTokens } from './utils';
4
- const getResponsiveThemeTokens = function (_ref, tokensProp) {
5
- let {
6
- rules = [],
7
- tokens: defaultThemeTokens = {}
8
- } = _ref;
9
- let variants = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
10
- let states = arguments.length > 3 ? arguments[3] : undefined;
11
- const appearances = mergeAppearances(variants, states);
12
- const tokensByViewport = Object.fromEntries(viewports.keys.map(viewport => [viewport, {
13
- ...defaultThemeTokens
14
- }]));
15
-
16
- // Go through each rule and collect them for the corresponding viewport if they apply
17
- rules.forEach(rule => {
18
- if (doesRuleApply(rule, appearances)) {
19
- // If the rule does not have a viewport specified, we collect it in all viewports
20
- let targetViewports = rule.if.viewport || viewports.keys;
21
- if (!Array.isArray(targetViewports)) {
22
- targetViewports = [targetViewports];
23
- }
24
- targetViewports.forEach(viewport => {
25
- tokensByViewport[viewport] = {
26
- ...tokensByViewport[viewport],
27
- ...rule.tokens
28
- };
29
- });
30
- }
31
- });
32
- Object.keys(tokensByViewport).forEach(viewport => {
33
- tokensByViewport[viewport] = resolveThemeTokens(tokensByViewport[viewport], appearances, tokensProp);
34
- });
35
- return tokensByViewport;
36
- };
37
- const doesRuleApply = (rule, appearances) => Object.entries(rule.if).every(condition => doesConditionApply(condition, appearances));
38
- const doesConditionApply = (_ref2, appearances) => {
39
- let [key, value] = _ref2;
40
- if (key === 'viewport') {
41
- return true;
42
- }
43
- // use null rather than undefined so we can serialise the value in themes
44
- const appearanceValue = appearances[key] ?? null;
45
- return Array.isArray(value) ? value.includes(appearanceValue) : value === appearanceValue;
46
- };
47
-
48
- /**
49
- * @typedef {import('../utils/props/tokens.js').TokensSet} TokensSet
50
- * @typedef {import('../utils/props/tokens.js').TokensProp} TokensProp
51
- * @typedef {import('../utils/props/variantProp').AppearanceSet} AppearanceSet
52
- *
53
- * Returns a complete set of tokens for a component for each viewport based on which of the
54
- * component's theme rules apply to the current set of theme appearances.
55
- * Pass the returned output to createMediaQueryStyles to generate media query styles for use inside
56
- * the media query stylesheet from './utils/ssr-media-query'.
57
- *
58
- * @typedef {Object} ResponsiveObject
59
- * @property {TokensSet} xs
60
- * @property {TokensSet} sm
61
- * @property {TokensSet} md
62
- * @property {TokensSet} lg
63
- * @property {TokensSet} xl
64
- *
65
- * @param { string } componentName
66
- * @param { TokensProp } tokens
67
- * @param { AppearanceSet } variants
68
- * @param { AppearanceSet } states
69
- * @returns { ResponsiveObject }
70
- */
71
-
72
- const useResponsiveThemeTokens = function (componentName) {
73
- let tokens = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
74
- let variants = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
75
- let states = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
76
- const theme = useTheme();
77
- const componentTheme = getComponentTheme(theme, componentName);
78
- const themeTokens = getResponsiveThemeTokens(componentTheme, tokens, variants, states);
79
- return themeTokens;
80
- };
81
- export default useResponsiveThemeTokens;
@@ -1,24 +0,0 @@
1
- import { useCallback, useContext } from 'react';
2
- import { ThemeSetterContext } from './ThemeProvider';
3
- const useSetTheme = () => {
4
- // Replace current theme with provided object
5
- const setTheme = useContext(ThemeSetterContext);
6
- // Fail fast if dev uses useSetTheme outside of ThemeProvider
7
- if (setTheme instanceof Error) {
8
- throw setTheme;
9
- }
10
-
11
- // Merge provided object into current theme
12
- const editTheme = useCallback(newTheme => setTheme(function () {
13
- let oldTheme = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
14
- return {
15
- ...oldTheme,
16
- ...newTheme
17
- };
18
- }), [setTheme]);
19
- return {
20
- setTheme,
21
- editTheme
22
- };
23
- };
24
- export default useSetTheme;
@@ -1,11 +0,0 @@
1
- import { useContext } from 'react';
2
- import { ThemeContext } from './ThemeProvider';
3
- const useTheme = () => {
4
- const theme = useContext(ThemeContext);
5
- // Fail fast if dev uses useTheme outside of ThemeProvider
6
- if (theme instanceof Error) {
7
- throw theme;
8
- }
9
- return theme;
10
- };
11
- export default useTheme;
@@ -1,109 +0,0 @@
1
- import { useCallback } from 'react';
2
- import useTheme from './useTheme';
3
- import { getComponentTheme, getThemeTokens, resolveThemeTokens, mergeAppearances } from './utils';
4
- /**
5
- * @typedef {import('../utils/props/variantProp.js').AppearanceSet} AppearanceSet
6
- * @typedef {import('../utils/props/tokens.js').TokensProp} TokensProp
7
- * @typedef {import('../utils/props/tokens.js').TokensSet} TokensSet
8
- */
9
-
10
- /**
11
- * Returns a complete set of theme tokens for a component based on which of the
12
- * component's theme rules apply to the current set of theme appearances.
13
- *
14
- * When applying theme tokens as styles to a component, don't spread the theme tokens
15
- * object, explicitly select each property. This way, if new theme tokens are added to the
16
- * component's theme in a minor or patch release of the theme package, the appearance
17
- * of the component in sites and apps will only change when the component itself is updated.
18
- *
19
- * @example
20
- * const seletContainerTokens = ({ color, width, height }) => ({
21
- * backgroundColor: color, width, height
22
- * })
23
- * const MyComponent = ({ tokens, variant, children }) => {
24
- * const viewport = useViewport()
25
- * const themeTokens = useThemeTokens('MyComponent', tokens, variant, { viewport })
26
- * const style = seletContainerTokens(themeTokens)
27
- * return <View style={style}>{children}</View>
28
- * }
29
- *
30
- * @param {string} componentName - the name as defined in the theme schema of the component whose theme is to be used
31
- * @param {TokensProp} [tokens] - every themed component should accept an optional `tokens` prop allowing theme tokens to be overridden
32
- * @param {AppearanceSet} [variants] - every themed component should accept an optional `variants` prop specifying theme variants
33
- * @param {AppearanceSet} [states] - optional object containing current theme appearances dictated by user action or context
34
- * @returns {TokensSet} - the currently-applicable resolved set of theme tokens to apply
35
- */
36
- export const useThemeTokens = function (componentName) {
37
- let tokens = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
38
- let variants = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
39
- let states = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
40
- const theme = useTheme();
41
- const componentTheme = getComponentTheme(theme, componentName);
42
- const themeTokens = getThemeTokens(componentTheme, tokens, variants, states);
43
- return themeTokens;
44
- };
45
-
46
- /**
47
- * Returns a memoised tokens getter function that gets tokens similar to calling useThemeTokens.
48
- * Scenarios where `useThemeTokensCallback` should be used instead of `useThemeTokens` include:
49
- *
50
- * - Where tokens are to be obtained from state that is accessible only in scopes like callbacks
51
- * and render functions, where calling useThemeTokens directly would be disallowed by React's hook rules.
52
- * - Passing a tokens getter down via a child component's `tokens` prop, applying rules using the
53
- * child component's current state. Consider wrapping the returned tokens in `selectTokens()`.
54
- *
55
- * The function returned by `useThemeTokens` may be called with an object of state appearances to get an object
56
- * of tokens, or may be passed as a `tokens` prop to other themed components or `useThemeTokens`/`useThemeTokensCallback`
57
- * hooks.
58
- *
59
- * @example
60
- * // Resolving tokens inside Pressable's style function, based on Pressable state
61
- * const PressMe = ({ tokens, variant, children }) => {
62
- * const getTokens = useThemeTokensCallback('PressMe', tokens, variant)
63
- * const getPressableStyle = ({ pressed }) => {
64
- * const { color, width, height } = getTokens({ pressed })
65
- * return { backgroundColor: color, width, height }
66
- * }
67
- * return <Pressable style={getPressableStyle}>{children}</Pressable>
68
- * }
69
- *
70
- * @example
71
- * // Setting the theme in a parent and resolving it in a child based on child's state
72
- * const MenuButton = ({ tokens, variant, ...buttonProps }) => {
73
- * // Define what theme, variant etc we want in this component...
74
- * const getTokens = useThemeTokensCallback('Button', tokens, variant)
75
- * // ...resolve them in another component based on its state (e.g. press, hover...)
76
- * return <ButtonBase tokens={getTokens} accessibilityRole="menuitem" {...buttonProps} />
77
- * }
78
- *
79
- * @example
80
- * // Chaining multiple themes together, sharing the same variants and state
81
- * const GlowingLink = ({ tokens, variant, children }) => {
82
- * // applies a small theme for a glowing effect, using same variants and states as "link"
83
- * const getGlowTokens = useThemeCallback('GlowingLink', tokens, variant)
84
- * // applies link state to get "Link" theme tokens and merge "GlowingLink" tokens on top
85
- * const getTokens = useThemeCallback('Link', getGlowTokens, variant)
86
- * // renders a link with both themes applied, both based on current link state
87
- * return <LinkBase tokens={getTokens}>{children}</LinkBase>
88
- * }
89
- *
90
- * @param {string} componentName - the name as defined in the theme schema of the component whose theme is to be used
91
- * @param {TokensProp} [tokens] - every themed component should accept a `tokens` prop allowing theme tokens to be overridden
92
- * @param {AppearanceSet} [variants] - variants passed in as props that don't change dynamically
93
- * @returns {(states: AppearanceSet, tokenOverrides?: TokensProp) => TokensSet}
94
- * - callback function that returning an overridable tokens set for current state. Only pass
95
- * tokenOverrides in rare cases where tokens overrides are also generated outside hook scope,
96
- * e.g. if one theme tokens callback needs to pass certain token overrides to another.
97
- */
98
- export const useThemeTokensCallback = function (componentName) {
99
- let tokens = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
100
- let variants = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
101
- const theme = useTheme();
102
- const componentTheme = getComponentTheme(theme, componentName);
103
- const getThemeTokensCallback = useCallback((states, tokenOverrides) => {
104
- const appearances = mergeAppearances(variants, states);
105
- const resolvedTokens = resolveThemeTokens(tokens, appearances, tokenOverrides);
106
- return getThemeTokens(componentTheme, resolvedTokens, appearances);
107
- }, [componentTheme, tokens, variants]);
108
- return getThemeTokensCallback;
109
- };
@@ -1,2 +0,0 @@
1
- export * from './styles';
2
- export * from './theme-tokens';
@@ -1,198 +0,0 @@
1
- /**
2
- * React-Native specific implementations of style patterns that
3
- * don't map directly to cross-platform design token values.
4
- */
5
- import Platform from "react-native-web/dist/exports/Platform";
6
- import { fontBasePixels } from '@telus-uds/system-constants';
7
-
8
- // Make design tokens fit React Native's text styles' specific requirements and quirks
9
- export function applyTextStyles(_ref) {
10
- let {
11
- fontColor,
12
- fontSize,
13
- fontScaleCap,
14
- lineHeight,
15
- letterSpacing,
16
- fontWeight = '400',
17
- fontName,
18
- fontStyle = 'normal',
19
- themeOptions = {
20
- // TODO: switch `forceAbsoluteFontSizing` to be false by default in the next major version
21
- forceAbsoluteFontSizing: true
22
- },
23
- ...rest
24
- } = _ref;
25
- const styles = {
26
- ...rest
27
- };
28
- const {
29
- forceAbsoluteFontSizing
30
- } = themeOptions;
31
- if (fontSize) {
32
- // If relative font sizes are needed, catch and calculate them here
33
- styles.fontSize = Platform.OS === 'web' && !forceAbsoluteFontSizing ? `${fontSize / fontBasePixels}rem` : fontSize;
34
- }
35
- if (typeof lineHeight === 'number') {
36
- // React Native expects absolute line heights but multipliers are better as design tokens
37
- styles.lineHeight = lineHeight * (fontSize || fontBasePixels);
38
- }
39
- if (typeof letterSpacing === 'number' && letterSpacing) {
40
- // Same as for line heights - React Native expects absolute letter spacing value
41
- styles.letterSpacing = letterSpacing * (fontSize || fontBasePixels);
42
- }
43
- if (fontName) {
44
- // Don't set undefined font families. May need some validation here that the font is available.
45
- // Android doesn't recognise font weights natively so apply custom font weights via `fontFamily`.
46
- styles.fontFamily = `${fontName}${fontWeight}${fontStyle}`;
47
- } else if (fontWeight) {
48
- // If using system default font, apply the font weight directly.
49
- // Font weight support in Android is limited to 'bold' or anything else === 'normal'.
50
- styles.fontWeight = Platform.OS === 'android' && Number(fontWeight) > 400 ? 'bold' : fontWeight;
51
- }
52
- if (fontColor) {
53
- styles.color = fontColor;
54
- }
55
-
56
- // TODO: look into calculating typographic spacing with PixelRatio.getFontScale()
57
- // Do while implementing advanced typography e.g. paragraph etc
58
- // https://github.com/telus/universal-design-system/issues/89
59
-
60
- return styles;
61
- }
62
-
63
- /**
64
- * React Native's in-built shadow support is limited. Take an object describing an ideal shadow and
65
- * return a platform-appropriate implementation that gets close to the described effect.
66
- *
67
- * @param {object} shadowToken
68
- * @param {boolean} shadowToken.inset
69
- * @param {color} shadowToken.string
70
- * @param {number} shadowToken.offsetX
71
- * @param {number} shadowToken.offsetY
72
- * @param {number} shadowToken.blur
73
- * @param {number} shadowToken.spread
74
- * @return {object}
75
- */
76
- export function applyShadowToken(shadowToken) {
77
- if (!shadowToken) return {};
78
- const applyShadow = Platform.select({
79
- web: () => applyWebShadow(shadowToken),
80
- ios: () => applyIosShadow(shadowToken),
81
- android: () => applyAndroidShadow(shadowToken)
82
- });
83
- return applyShadow();
84
- }
85
- function applyWebShadow(_ref2) {
86
- let {
87
- inset,
88
- color = '',
89
- offsetX = 0,
90
- offsetY = 0,
91
- blur = 0,
92
- spread = 0
93
- } = _ref2;
94
- const insetString = inset ? 'inset ' : '';
95
- const boxShadow = {
96
- boxShadow: `${insetString}${offsetX}px ${offsetY}px ${blur}px ${spread}px ${color}`
97
- };
98
- return boxShadow;
99
- }
100
- function applyAndroidShadow(shadowToken) {
101
- const {
102
- color,
103
- inset,
104
- spread,
105
- offsetY,
106
- offsetX
107
- } = shadowToken;
108
- // Android shadows are very limited and workarounds are hacky. Use the built-in `elevation` API unless
109
- // shadow design is radically different to a simple top-down shadow (e.g. horizontal, upward, or inset)
110
- if (!inset && offsetY >= 0 && offsetY >= offsetX) {
111
- return {
112
- // Can't match other platforms, but can give longer shadows to elements designed for longer shadows
113
- elevation: spread + offsetY,
114
- shadowColor: color // Only applies on Android >= 9 and React Native >= 0.64.0
115
- };
116
- }
117
- // TODO: maybe use a library or workaround to increase capabilities.
118
- // https://github.com/telus/universal-design-system/issues/535
119
- return {};
120
- }
121
- function applyIosShadow(_ref3) {
122
- let {
123
- inset,
124
- color,
125
- offsetX,
126
- offsetY,
127
- spread,
128
- blur
129
- } = _ref3;
130
- // React Native iOS doesn't support inset shadows.
131
- // TODO: maybe use a library or workaround for inset shadows. This is a sizable task and would
132
- // involve changing component implementations to use a custom view, can't be done with styles alone.
133
- // https://github.com/telus/universal-design-system/issues/535
134
- if (inset) return {};
135
-
136
- // React Native iOS doesn't support spread. Where there's an offset, can approximate positive spread by
137
- // increasing the (positive or negative) offset by the spread. This makes the shadow reach the point it
138
- // would if spread was supported (with a side effect that its start is further "under" the element).
139
- const nudgeBySpread = offset => {
140
- if (!offset || spread <= 0) return 0;
141
- return offset > 0 ? spread : spread * -1;
142
- };
143
- return {
144
- shadowColor: color,
145
- shadowOffset: {
146
- width: offsetX + nudgeBySpread(offsetX),
147
- height: offsetY + nudgeBySpread(offsetY)
148
- },
149
- shadowRadius: blur,
150
- shadowOpacity: 1 // opacity is applied via RGBA in the `color` token
151
- };
152
- }
153
-
154
- const verticalAlignToFlexRowAlign = {
155
- top: 'flex-start',
156
- middle: 'center',
157
- bottom: 'flex-end'
158
- };
159
- export function verticalAlignRow(verticalAlign) {
160
- let reverse = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
161
- return {
162
- flexDirection: reverse ? 'row-reverse' : 'row',
163
- alignItems: verticalAlignToFlexRowAlign[verticalAlign]
164
- };
165
- }
166
- const calculateBorderRadius = (borderRadius, outerBorderGap, outerBorderWidth) => {
167
- if (borderRadius) {
168
- return borderRadius + outerBorderGap + outerBorderWidth;
169
- }
170
- return null;
171
- };
172
- /**
173
- * Use on an outer container to create an outer border with an optional gap around it
174
- * that matches the border radius of any inner border.
175
- */
176
- export const applyOuterBorder = _ref4 => {
177
- let {
178
- outerBorderColor,
179
- outerBorderWidth = 0,
180
- outerBorderGap = 0,
181
- borderRadius,
182
- borderTopLeftRadius,
183
- borderTopRightRadius,
184
- borderBottomLeftRadius,
185
- borderBottomRightRadius
186
- } = _ref4;
187
- return {
188
- margin: 0 - outerBorderWidth - outerBorderGap,
189
- padding: outerBorderGap,
190
- borderRadius: calculateBorderRadius(borderRadius, outerBorderGap, outerBorderWidth),
191
- borderTopLeftRadius: calculateBorderRadius(borderTopLeftRadius, outerBorderGap, outerBorderWidth),
192
- borderTopRightRadius: calculateBorderRadius(borderTopRightRadius, outerBorderGap, outerBorderWidth),
193
- borderBottomLeftRadius: calculateBorderRadius(borderBottomLeftRadius, outerBorderGap, outerBorderWidth),
194
- borderBottomRightRadius: calculateBorderRadius(borderBottomRightRadius, outerBorderGap, outerBorderWidth),
195
- borderWidth: outerBorderWidth,
196
- borderColor: outerBorderColor
197
- };
198
- };