@telus-uds/components-base 1.96.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 (749) hide show
  1. package/CHANGELOG.md +30 -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 +138 -146
  43. package/lib/Carousel/CarouselContext.js +19 -27
  44. package/lib/Carousel/CarouselFirstFocus/CarouselFirstFocus.js +15 -22
  45. package/lib/Carousel/CarouselItem/CarouselItem.js +44 -56
  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 +38 -47
  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 +33 -40
  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 +29 -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 +51 -58
  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 +48 -51
  166. package/lib/Pagination/SideButton.js +25 -32
  167. package/lib/Pagination/constants.js +3 -0
  168. package/lib/Pagination/dictionary.js +2 -9
  169. package/lib/Pagination/index.js +2 -10
  170. package/lib/Pagination/usePagination.js +14 -12
  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 +80 -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 +17 -20
  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/Carousel/Carousel.jsx +1 -1
  373. package/src/Carousel/CarouselItem/CarouselItem.jsx +16 -22
  374. package/src/Icon/IconText.jsx +0 -1
  375. package/src/InputLabel/InputLabel.jsx +2 -3
  376. package/src/List/ListItemBase.jsx +6 -1
  377. package/src/Listbox/GroupControl.jsx +6 -1
  378. package/src/Modal/ModalContent.jsx +3 -2
  379. package/src/Pagination/Pagination.jsx +9 -2
  380. package/src/Pagination/constants.js +3 -0
  381. package/src/Pagination/usePagination.js +14 -3
  382. package/src/TextInput/TextInputBase.jsx +1 -1
  383. package/src/Timeline/Timeline.jsx +6 -2
  384. package/src/Tooltip/Tooltip.native.jsx +31 -3
  385. package/src/Tooltip/shared.js +5 -0
  386. package/src/index.js +9 -10
  387. package/src/utils/a11y/semantics.js +0 -7
  388. package/types/FileUpload.d.ts +40 -0
  389. package/types/index.d.ts +3 -0
  390. package/lib-module/A11yInfoProvider/index.js +0 -62
  391. package/lib-module/A11yText/index.js +0 -68
  392. package/lib-module/ActionCard/ActionCard.js +0 -343
  393. package/lib-module/ActionCard/index.js +0 -2
  394. package/lib-module/ActivityIndicator/Spinner.js +0 -80
  395. package/lib-module/ActivityIndicator/Spinner.native.js +0 -144
  396. package/lib-module/ActivityIndicator/index.js +0 -44
  397. package/lib-module/ActivityIndicator/shared.js +0 -14
  398. package/lib-module/Autocomplete/Autocomplete.js +0 -481
  399. package/lib-module/Autocomplete/Loading.js +0 -36
  400. package/lib-module/Autocomplete/Suggestions.js +0 -66
  401. package/lib-module/Autocomplete/constants.js +0 -4
  402. package/lib-module/Autocomplete/dictionary.js +0 -12
  403. package/lib-module/Autocomplete/index.js +0 -2
  404. package/lib-module/Badge/Badge.js +0 -102
  405. package/lib-module/Badge/index.js +0 -2
  406. package/lib-module/BaseProvider/HydrationContext.js +0 -48
  407. package/lib-module/BaseProvider/index.js +0 -38
  408. package/lib-module/Box/Box.js +0 -379
  409. package/lib-module/Box/backgroundImageStylesMap.js +0 -94
  410. package/lib-module/Box/index.js +0 -2
  411. package/lib-module/Button/Button.js +0 -34
  412. package/lib-module/Button/ButtonBase.js +0 -347
  413. package/lib-module/Button/ButtonDropdown.js +0 -173
  414. package/lib-module/Button/ButtonGroup.js +0 -272
  415. package/lib-module/Button/ButtonLink.js +0 -50
  416. package/lib-module/Button/index.js +0 -5
  417. package/lib-module/Button/propTypes.js +0 -46
  418. package/lib-module/Card/Card.js +0 -330
  419. package/lib-module/Card/CardBase.js +0 -114
  420. package/lib-module/Card/PressableCardBase.js +0 -112
  421. package/lib-module/Card/index.js +0 -4
  422. package/lib-module/CardGroup/CardGroup.js +0 -210
  423. package/lib-module/CardGroup/dictionary.js +0 -8
  424. package/lib-module/CardGroup/index.js +0 -2
  425. package/lib-module/Carousel/Carousel.js +0 -894
  426. package/lib-module/Carousel/CarouselContext.js +0 -51
  427. package/lib-module/Carousel/CarouselFirstFocus/CarouselFirstFocus.js +0 -53
  428. package/lib-module/Carousel/CarouselItem/CarouselItem.js +0 -150
  429. package/lib-module/Carousel/CarouselItem/index.js +0 -2
  430. package/lib-module/Carousel/CarouselStepTracker/CarouselStepTracker.js +0 -54
  431. package/lib-module/Carousel/CarouselStepTracker/index.js +0 -2
  432. package/lib-module/Carousel/CarouselTabs/CarouselTabs.js +0 -50
  433. package/lib-module/Carousel/CarouselTabs/CarouselTabsPanel.js +0 -89
  434. package/lib-module/Carousel/CarouselTabs/CarouselTabsPanelItem.js +0 -118
  435. package/lib-module/Carousel/CarouselTabs/index.js +0 -2
  436. package/lib-module/Carousel/CarouselThumbnail.js +0 -113
  437. package/lib-module/Carousel/CarouselThumbnailNavigation.js +0 -71
  438. package/lib-module/Carousel/dictionary.js +0 -22
  439. package/lib-module/Carousel/index.js +0 -3
  440. package/lib-module/Checkbox/Checkbox.js +0 -343
  441. package/lib-module/Checkbox/CheckboxButton.js +0 -164
  442. package/lib-module/Checkbox/CheckboxGroup.js +0 -240
  443. package/lib-module/Checkbox/CheckboxInput.js +0 -50
  444. package/lib-module/Checkbox/CheckboxInput.native.js +0 -5
  445. package/lib-module/Checkbox/index.js +0 -3
  446. package/lib-module/CheckboxCard/CheckboxCard.js +0 -183
  447. package/lib-module/CheckboxCard/index.js +0 -2
  448. package/lib-module/CheckboxCardGroup/CheckboxCardGroup.js +0 -206
  449. package/lib-module/CheckboxCardGroup/index.js +0 -2
  450. package/lib-module/ColourToggle/ColourBubble.js +0 -126
  451. package/lib-module/ColourToggle/ColourToggle.js +0 -92
  452. package/lib-module/ColourToggle/index.js +0 -2
  453. package/lib-module/Divider/Divider.js +0 -133
  454. package/lib-module/Divider/index.js +0 -2
  455. package/lib-module/DownloadApp/DownloadApp.js +0 -160
  456. package/lib-module/DownloadApp/dictionary.js +0 -10
  457. package/lib-module/DownloadApp/index.js +0 -2
  458. package/lib-module/ExpandCollapse/Accordion.js +0 -15
  459. package/lib-module/ExpandCollapse/Control.js +0 -165
  460. package/lib-module/ExpandCollapse/ExpandCollapse.js +0 -98
  461. package/lib-module/ExpandCollapse/Panel.js +0 -242
  462. package/lib-module/ExpandCollapse/dictionary.js +0 -10
  463. package/lib-module/ExpandCollapse/index.js +0 -7
  464. package/lib-module/Feedback/Feedback.js +0 -161
  465. package/lib-module/Feedback/index.js +0 -2
  466. package/lib-module/Fieldset/Fieldset.js +0 -194
  467. package/lib-module/Fieldset/FieldsetContainer.js +0 -48
  468. package/lib-module/Fieldset/FieldsetContainer.native.js +0 -32
  469. package/lib-module/Fieldset/Legend.js +0 -24
  470. package/lib-module/Fieldset/Legend.native.js +0 -31
  471. package/lib-module/Fieldset/cssReset.js +0 -14
  472. package/lib-module/Fieldset/index.js +0 -2
  473. package/lib-module/FileUpload/FileUpload.js +0 -329
  474. package/lib-module/FileUpload/NotificationContent.js +0 -55
  475. package/lib-module/FileUpload/dictionary.js +0 -40
  476. package/lib-module/FileUpload/index.js +0 -2
  477. package/lib-module/FlexGrid/Col/Col.js +0 -257
  478. package/lib-module/FlexGrid/Col/index.js +0 -2
  479. package/lib-module/FlexGrid/FlexGrid.js +0 -158
  480. package/lib-module/FlexGrid/Row/Row.js +0 -181
  481. package/lib-module/FlexGrid/Row/index.js +0 -2
  482. package/lib-module/FlexGrid/helpers/index.js +0 -15
  483. package/lib-module/FlexGrid/index.js +0 -2
  484. package/lib-module/FlexGrid/providers/GutterContext.js +0 -3
  485. package/lib-module/Footnote/Footnote.js +0 -317
  486. package/lib-module/Footnote/FootnoteLink.js +0 -107
  487. package/lib-module/Footnote/dictionary.js +0 -12
  488. package/lib-module/Footnote/index.js +0 -4
  489. package/lib-module/HorizontalScroll/HorizontalScroll.js +0 -165
  490. package/lib-module/HorizontalScroll/HorizontalScrollButton.js +0 -79
  491. package/lib-module/HorizontalScroll/ScrollViewEnd.js +0 -46
  492. package/lib-module/HorizontalScroll/ScrollViewEnd.native.js +0 -26
  493. package/lib-module/HorizontalScroll/dictionary.js +0 -11
  494. package/lib-module/HorizontalScroll/index.js +0 -11
  495. package/lib-module/HorizontalScroll/itemPositions.js +0 -113
  496. package/lib-module/Icon/Icon.js +0 -93
  497. package/lib-module/Icon/IconText.js +0 -114
  498. package/lib-module/Icon/index.js +0 -4
  499. package/lib-module/IconButton/IconButton.js +0 -203
  500. package/lib-module/IconButton/index.js +0 -2
  501. package/lib-module/InputLabel/InputLabel.js +0 -146
  502. package/lib-module/InputLabel/LabelContent.js +0 -28
  503. package/lib-module/InputLabel/LabelContent.native.js +0 -18
  504. package/lib-module/InputLabel/index.js +0 -2
  505. package/lib-module/InputSupports/InputSupports.js +0 -108
  506. package/lib-module/InputSupports/index.js +0 -2
  507. package/lib-module/InputSupports/useInputSupports.js +0 -31
  508. package/lib-module/Link/ChevronLink.js +0 -68
  509. package/lib-module/Link/InlinePressable.js +0 -48
  510. package/lib-module/Link/InlinePressable.native.js +0 -87
  511. package/lib-module/Link/Link.js +0 -28
  512. package/lib-module/Link/LinkBase.js +0 -269
  513. package/lib-module/Link/TextButton.js +0 -43
  514. package/lib-module/Link/index.js +0 -5
  515. package/lib-module/List/List.js +0 -77
  516. package/lib-module/List/ListItem.js +0 -32
  517. package/lib-module/List/ListItemBase.js +0 -164
  518. package/lib-module/List/ListItemContent.js +0 -73
  519. package/lib-module/List/ListItemMark.js +0 -126
  520. package/lib-module/List/PressableListItemBase.js +0 -112
  521. package/lib-module/List/index.js +0 -5
  522. package/lib-module/Listbox/GroupControl.js +0 -102
  523. package/lib-module/Listbox/Listbox.js +0 -172
  524. package/lib-module/Listbox/ListboxContext.js +0 -4
  525. package/lib-module/Listbox/ListboxGroup.js +0 -125
  526. package/lib-module/Listbox/ListboxItem.js +0 -76
  527. package/lib-module/Listbox/ListboxOverlay.js +0 -78
  528. package/lib-module/Listbox/PressableItem.js +0 -140
  529. package/lib-module/Listbox/index.js +0 -2
  530. package/lib-module/Modal/Modal.js +0 -373
  531. package/lib-module/Modal/ModalContent.js +0 -179
  532. package/lib-module/Modal/WebModal.js +0 -76
  533. package/lib-module/Modal/dictionary.js +0 -9
  534. package/lib-module/Modal/index.js +0 -2
  535. package/lib-module/MultiSelectFilter/ModalOverlay.js +0 -156
  536. package/lib-module/MultiSelectFilter/MultiSelectFilter.js +0 -526
  537. package/lib-module/MultiSelectFilter/dictionary.js +0 -12
  538. package/lib-module/MultiSelectFilter/index.js +0 -2
  539. package/lib-module/Notification/Notification.js +0 -429
  540. package/lib-module/Notification/dictionary.js +0 -8
  541. package/lib-module/Notification/index.js +0 -2
  542. package/lib-module/OrderedList/Item.js +0 -160
  543. package/lib-module/OrderedList/ItemBase.js +0 -43
  544. package/lib-module/OrderedList/OrderedList.js +0 -64
  545. package/lib-module/OrderedList/OrderedListBase.js +0 -36
  546. package/lib-module/OrderedList/index.js +0 -2
  547. package/lib-module/Pagination/PageButton.js +0 -74
  548. package/lib-module/Pagination/Pagination.js +0 -211
  549. package/lib-module/Pagination/SideButton.js +0 -113
  550. package/lib-module/Pagination/dictionary.js +0 -18
  551. package/lib-module/Pagination/index.js +0 -2
  552. package/lib-module/Pagination/usePagination.js +0 -69
  553. package/lib-module/Portal/Portal.js +0 -50
  554. package/lib-module/Portal/Portal.native.js +0 -2
  555. package/lib-module/Portal/index.js +0 -2
  556. package/lib-module/PriceLockup/PriceLockup.js +0 -225
  557. package/lib-module/PriceLockup/index.js +0 -2
  558. package/lib-module/PriceLockup/utils/renderFootnoteContent.js +0 -87
  559. package/lib-module/PriceLockup/utils/renderFootnoteLinks.js +0 -28
  560. package/lib-module/PriceLockup/utils/renderPrice.js +0 -141
  561. package/lib-module/PriceLockup/utils/renderTypography.js +0 -23
  562. package/lib-module/ProductCard/ProductCard.js +0 -232
  563. package/lib-module/ProductCard/dictionary.js +0 -38
  564. package/lib-module/ProductCard/index.js +0 -2
  565. package/lib-module/ProductCardGroup/ProductCardGroup.js +0 -70
  566. package/lib-module/ProductCardGroup/index.js +0 -2
  567. package/lib-module/Progress/Progress.js +0 -88
  568. package/lib-module/Progress/ProgressBar.js +0 -133
  569. package/lib-module/Progress/ProgressBarBackground.js +0 -40
  570. package/lib-module/Progress/index.js +0 -4
  571. package/lib-module/QuickLinks/QuickLinks.js +0 -78
  572. package/lib-module/QuickLinks/QuickLinksCard.js +0 -33
  573. package/lib-module/QuickLinks/QuickLinksItem.js +0 -51
  574. package/lib-module/QuickLinks/index.js +0 -4
  575. package/lib-module/QuickLinksFeature/QuickLinksFeature.js +0 -69
  576. package/lib-module/QuickLinksFeature/QuickLinksFeatureItem.js +0 -147
  577. package/lib-module/QuickLinksFeature/index.js +0 -4
  578. package/lib-module/Radio/Radio.js +0 -283
  579. package/lib-module/Radio/RadioButton.js +0 -184
  580. package/lib-module/Radio/RadioGroup.js +0 -255
  581. package/lib-module/Radio/RadioInput.js +0 -50
  582. package/lib-module/Radio/RadioInput.native.js +0 -5
  583. package/lib-module/Radio/index.js +0 -3
  584. package/lib-module/RadioCard/RadioCard.js +0 -211
  585. package/lib-module/RadioCard/RadioCardGroup.js +0 -257
  586. package/lib-module/RadioCard/index.js +0 -3
  587. package/lib-module/Responsive/Responsive.js +0 -65
  588. package/lib-module/Responsive/ResponsiveProp.js +0 -39
  589. package/lib-module/Responsive/ResponsiveWithMediaQueryStyleSheet.js +0 -68
  590. package/lib-module/Responsive/index.js +0 -2
  591. package/lib-module/Search/Search.js +0 -242
  592. package/lib-module/Search/dictionary.js +0 -12
  593. package/lib-module/Search/index.js +0 -2
  594. package/lib-module/Select/Group.js +0 -24
  595. package/lib-module/Select/Group.native.js +0 -16
  596. package/lib-module/Select/Item.js +0 -23
  597. package/lib-module/Select/Item.native.js +0 -2
  598. package/lib-module/Select/Picker.js +0 -97
  599. package/lib-module/Select/Picker.native.js +0 -120
  600. package/lib-module/Select/Select.js +0 -337
  601. package/lib-module/Select/constants.js +0 -5
  602. package/lib-module/Select/index.js +0 -6
  603. package/lib-module/SideNav/Item.js +0 -143
  604. package/lib-module/SideNav/ItemContent.js +0 -50
  605. package/lib-module/SideNav/ItemsGroup.js +0 -121
  606. package/lib-module/SideNav/SideNav.js +0 -131
  607. package/lib-module/SideNav/index.js +0 -1
  608. package/lib-module/Skeleton/Skeleton.js +0 -177
  609. package/lib-module/Skeleton/index.js +0 -2
  610. package/lib-module/Skeleton/skeleton.constant.js +0 -2
  611. package/lib-module/Skeleton/skeletonWebAnimation.js +0 -14
  612. package/lib-module/Skeleton/useSkeletonNativeAnimation.js +0 -28
  613. package/lib-module/SkipLink/SkipLink.js +0 -190
  614. package/lib-module/SkipLink/index.js +0 -2
  615. package/lib-module/Spacer/Spacer.js +0 -95
  616. package/lib-module/Spacer/index.js +0 -2
  617. package/lib-module/StackView/StackView.js +0 -126
  618. package/lib-module/StackView/StackWrap.js +0 -51
  619. package/lib-module/StackView/StackWrap.native.js +0 -4
  620. package/lib-module/StackView/StackWrapBox.js +0 -114
  621. package/lib-module/StackView/StackWrapGap.js +0 -61
  622. package/lib-module/StackView/common.js +0 -35
  623. package/lib-module/StackView/getStackedContent.js +0 -123
  624. package/lib-module/StackView/index.js +0 -5
  625. package/lib-module/Status/Status.js +0 -167
  626. package/lib-module/Status/index.js +0 -2
  627. package/lib-module/StepTracker/Step.js +0 -265
  628. package/lib-module/StepTracker/StepTracker.js +0 -208
  629. package/lib-module/StepTracker/dictionary.js +0 -30
  630. package/lib-module/StepTracker/index.js +0 -2
  631. package/lib-module/TabBar/TabBar.js +0 -125
  632. package/lib-module/TabBar/TabBarItem.js +0 -177
  633. package/lib-module/TabBar/index.js +0 -2
  634. package/lib-module/Tabs/Tabs.js +0 -179
  635. package/lib-module/Tabs/TabsItem.js +0 -239
  636. package/lib-module/Tabs/index.js +0 -2
  637. package/lib-module/Tags/Tags.js +0 -245
  638. package/lib-module/Tags/index.js +0 -2
  639. package/lib-module/TextInput/TextArea.js +0 -97
  640. package/lib-module/TextInput/TextInput.js +0 -80
  641. package/lib-module/TextInput/TextInputBase.js +0 -436
  642. package/lib-module/TextInput/dictionary.js +0 -12
  643. package/lib-module/TextInput/index.js +0 -3
  644. package/lib-module/TextInput/propTypes.js +0 -34
  645. package/lib-module/ThemeProvider/ThemeProvider.js +0 -84
  646. package/lib-module/ThemeProvider/index.js +0 -7
  647. package/lib-module/ThemeProvider/useResponsiveThemeTokens.js +0 -81
  648. package/lib-module/ThemeProvider/useSetTheme.js +0 -24
  649. package/lib-module/ThemeProvider/useTheme.js +0 -11
  650. package/lib-module/ThemeProvider/useThemeTokens.js +0 -109
  651. package/lib-module/ThemeProvider/utils/index.js +0 -2
  652. package/lib-module/ThemeProvider/utils/styles.js +0 -198
  653. package/lib-module/ThemeProvider/utils/theme-tokens.js +0 -160
  654. package/lib-module/Timeline/Timeline.js +0 -168
  655. package/lib-module/Timeline/index.js +0 -2
  656. package/lib-module/ToggleSwitch/ToggleSwitch.js +0 -280
  657. package/lib-module/ToggleSwitch/ToggleSwitchGroup.js +0 -208
  658. package/lib-module/ToggleSwitch/index.js +0 -3
  659. package/lib-module/Tooltip/Backdrop.js +0 -50
  660. package/lib-module/Tooltip/Backdrop.native.js +0 -41
  661. package/lib-module/Tooltip/Tooltip.js +0 -280
  662. package/lib-module/Tooltip/Tooltip.native.js +0 -328
  663. package/lib-module/Tooltip/dictionary.js +0 -8
  664. package/lib-module/Tooltip/getTooltipPosition.js +0 -170
  665. package/lib-module/Tooltip/index.js +0 -5
  666. package/lib-module/Tooltip/shared.js +0 -36
  667. package/lib-module/TooltipButton/TooltipButton.js +0 -90
  668. package/lib-module/TooltipButton/index.js +0 -2
  669. package/lib-module/Typography/Typography.js +0 -254
  670. package/lib-module/Typography/index.js +0 -2
  671. package/lib-module/Validator/Validator.js +0 -222
  672. package/lib-module/Validator/index.js +0 -2
  673. package/lib-module/ViewportProvider/ViewportProvider.js +0 -27
  674. package/lib-module/ViewportProvider/index.js +0 -3
  675. package/lib-module/ViewportProvider/useViewport.js +0 -3
  676. package/lib-module/ViewportProvider/useViewportListener.js +0 -37
  677. package/lib-module/index.js +0 -76
  678. package/lib-module/server.js +0 -4
  679. package/lib-module/utils/BaseView/BaseView.js +0 -42
  680. package/lib-module/utils/BaseView/BaseView.native.js +0 -5
  681. package/lib-module/utils/BaseView/index.js +0 -2
  682. package/lib-module/utils/a11y/index.js +0 -2
  683. package/lib-module/utils/a11y/semantics.js +0 -144
  684. package/lib-module/utils/a11y/textSize.js +0 -35
  685. package/lib-module/utils/animation/index.js +0 -2
  686. package/lib-module/utils/animation/useVerticalExpandAnimation.js +0 -86
  687. package/lib-module/utils/children.js +0 -117
  688. package/lib-module/utils/containUniqueFields.js +0 -24
  689. package/lib-module/utils/convertFromMegaByteToByte.js +0 -10
  690. package/lib-module/utils/floating-ui/index.js +0 -1
  691. package/lib-module/utils/floating-ui/index.native.js +0 -1
  692. package/lib-module/utils/formatImageSource.js +0 -27
  693. package/lib-module/utils/hasOwnProperty.js +0 -11
  694. package/lib-module/utils/htmlAttrs.js +0 -23
  695. package/lib-module/utils/index.js +0 -25
  696. package/lib-module/utils/info/index.js +0 -8
  697. package/lib-module/utils/info/platform/index.js +0 -14
  698. package/lib-module/utils/info/platform/platform.android.js +0 -1
  699. package/lib-module/utils/info/platform/platform.ios.js +0 -1
  700. package/lib-module/utils/info/platform/platform.js +0 -1
  701. package/lib-module/utils/info/platform/platform.native.js +0 -4
  702. package/lib-module/utils/info/versions.js +0 -6
  703. package/lib-module/utils/input.js +0 -185
  704. package/lib-module/utils/pressability.js +0 -112
  705. package/lib-module/utils/props/a11yProps.js +0 -310
  706. package/lib-module/utils/props/clickProps.js +0 -25
  707. package/lib-module/utils/props/componentPropType.js +0 -50
  708. package/lib-module/utils/props/copyPropTypes.js +0 -2
  709. package/lib-module/utils/props/getPropSelector.js +0 -52
  710. package/lib-module/utils/props/handlerProps.js +0 -105
  711. package/lib-module/utils/props/hrefAttrsProp.js +0 -33
  712. package/lib-module/utils/props/index.js +0 -19
  713. package/lib-module/utils/props/inputSupportsProps.js +0 -68
  714. package/lib-module/utils/props/linkProps.js +0 -43
  715. package/lib-module/utils/props/paddingProp.js +0 -9
  716. package/lib-module/utils/props/pressProps.js +0 -42
  717. package/lib-module/utils/props/rectProp.js +0 -9
  718. package/lib-module/utils/props/responsiveProps.js +0 -28
  719. package/lib-module/utils/props/selectSystemProps.js +0 -23
  720. package/lib-module/utils/props/spacingProps.js +0 -57
  721. package/lib-module/utils/props/textInputProps.js +0 -188
  722. package/lib-module/utils/props/textProps.js +0 -61
  723. package/lib-module/utils/props/tokens.js +0 -130
  724. package/lib-module/utils/props/variantProp.js +0 -18
  725. package/lib-module/utils/props/viewProps.js +0 -21
  726. package/lib-module/utils/ssr-media-query/create-stylesheet/create-stylesheet-mobile.js +0 -48
  727. package/lib-module/utils/ssr-media-query/create-stylesheet/index.android.js +0 -2
  728. package/lib-module/utils/ssr-media-query/create-stylesheet/index.ios.js +0 -2
  729. package/lib-module/utils/ssr-media-query/create-stylesheet/index.js +0 -36
  730. package/lib-module/utils/ssr-media-query/hash.js +0 -13
  731. package/lib-module/utils/ssr-media-query/index.js +0 -6
  732. package/lib-module/utils/ssr-media-query/utils/common.js +0 -33
  733. package/lib-module/utils/ssr-media-query/utils/create-declaration-block.js +0 -16
  734. package/lib-module/utils/ssr-media-query/utils/create-media-query-styles.js +0 -60
  735. package/lib-module/utils/ssr-media-query/utils/hyphenate-style-name.js +0 -12
  736. package/lib-module/utils/ssr-media-query/utils/inject.js +0 -39
  737. package/lib-module/utils/ssr.js +0 -142
  738. package/lib-module/utils/transformGradient.js +0 -15
  739. package/lib-module/utils/useCopy.js +0 -42
  740. package/lib-module/utils/useHash.js +0 -41
  741. package/lib-module/utils/useHash.native.js +0 -6
  742. package/lib-module/utils/useOverlaidPosition.js +0 -214
  743. package/lib-module/utils/useResponsiveProp.js +0 -45
  744. package/lib-module/utils/useSafeLayoutEffect.js +0 -28
  745. package/lib-module/utils/useScrollBlocking.js +0 -51
  746. package/lib-module/utils/useScrollBlocking.native.js +0 -2
  747. package/lib-module/utils/useSpacingScale.js +0 -123
  748. package/lib-module/utils/useUniqueId.js +0 -11
  749. package/lib-module/utils/withLinkRouter.js +0 -84
@@ -1,190 +0,0 @@
1
- import React from 'react';
2
- import Platform from "react-native-web/dist/exports/Platform";
3
- import Pressable from "react-native-web/dist/exports/Pressable";
4
- import StyleSheet from "react-native-web/dist/exports/StyleSheet";
5
- import Text from "react-native-web/dist/exports/Text";
6
- import PropTypes from 'prop-types';
7
- import { useThemeTokensCallback } from '../ThemeProvider';
8
- import { a11yProps, clickProps, getTokensPropType, linkProps, resolvePressableTokens, selectSystemProps, variantProp, withLinkRouter } from '../utils';
9
- import { jsx as _jsx } from "react/jsx-runtime";
10
- const [selectProps, selectedSystemPropTypes] = selectSystemProps([a11yProps, linkProps]);
11
-
12
- // ensure explicit selection of tokens
13
- const selectStyles = _ref => {
14
- let {
15
- backgroundColor,
16
- outlineColor,
17
- outlineOffset,
18
- outlineStyle,
19
- outlineWidth,
20
- paddingHorizontal,
21
- paddingVertical,
22
- borderRadius
23
- } = _ref;
24
- return {
25
- backgroundColor,
26
- outlineColor,
27
- outlineOffset,
28
- outlineStyle,
29
- outlineWidth,
30
- paddingHorizontal,
31
- paddingVertical,
32
- borderRadius
33
- };
34
- };
35
- const selectTextStyles = _ref2 => {
36
- let {
37
- color,
38
- textLine,
39
- fontName,
40
- fontSize,
41
- fontWeight,
42
- lineHeight
43
- } = _ref2;
44
- return {
45
- color,
46
- textDecorationLine: textLine,
47
- fontFamily: `${fontName}${fontWeight}normal`,
48
- lineHeight: fontSize * lineHeight,
49
- fontSize
50
- };
51
- };
52
-
53
- /**
54
- * A generic Skip link component, unstyled by default.
55
- * A Skip link component help keyboard-only users, screen reader users to skip
56
- * sections and navigate to the content they want.
57
- *
58
- * ## Component API
59
- *
60
- * For common uses, pass a `href` that is a # link to a DOM id that can be skipped to (web only).
61
- *
62
- * The element with this ID should be focusable, e.g. `<Box nativeID="skip-target" focusable>`.
63
- *
64
- * Other custom behaviour may be set by passing an `onPress` function, and routers may be integrated
65
- * in the same way as other navigation-related components by passing a `LinkRouter`; but a # anchor
66
- * href on web and/or a `targetRef` for cross-platform applications is the recommended approach.
67
- *
68
- * ## Visible styling
69
- *
70
- * When focused, the skip link shows as a visible element similar to a simplified ButtonLink using
71
- * UDS theming. The `tokens` prop may be used to override these styles.
72
- *
73
- * To control the background of a skip link, the following tokens can be used:
74
- *
75
- * - `backgroundColor`
76
- * *
77
- * In order to control the color of the skip link text, the following tokens can be used:
78
- *
79
- * - `color`
80
- *
81
- * ### Padding
82
- *
83
- * The following padding tokens can be used:
84
- *
85
- * - `paddingHorizontal`
86
- * - `paddingVertical`
87
- *
88
- * ### Outline
89
- *
90
- * The following tokens to control the outline:
91
- *
92
- * - `outlineColor`
93
- * - `outlineOffset`
94
- * - `outlineStyle`
95
- * - `outlineWidth`
96
- *
97
- * ## Usability and A11y guidelines
98
- *
99
- * - The skip link component is visually hidden until a keyboard press activates it.
100
- * - Usually, you should place the skip link immediately after the opening <body> tag.
101
- * - This lets users bypass top-level navigation links and jump to the main content on a page.
102
- * - Also consider using SkipLink before a complex feature containing many focusable elements.
103
- *
104
- * ## Accessibility
105
- *
106
- * Skip link supports all the common a11y and link props.
107
- */
108
- const SkipLink = /*#__PURE__*/React.forwardRef((_ref3, ref) => {
109
- let {
110
- tokens,
111
- variant,
112
- href,
113
- children,
114
- ...rawRest
115
- } = _ref3;
116
- const {
117
- onPress,
118
- ...rest
119
- } = clickProps.toPressProps(rawRest);
120
- const getTokens = useThemeTokensCallback('SkipLink', tokens, variant);
121
- const handlePress = event => {
122
- if (typeof onPress === 'function') onPress(event);
123
- // TODO - support native apps with something based on refs and/or setAccessibilityFocus
124
- };
125
-
126
- return /*#__PURE__*/_jsx(Pressable, {
127
- ref: ref,
128
- accessibilityRole: "link",
129
- onPress: handlePress,
130
- href: href,
131
- style: pressableState => {
132
- const themeTokens = resolvePressableTokens(getTokens, pressableState);
133
- const skipLinkStyle = selectStyles(themeTokens);
134
- const {
135
- focused
136
- } = pressableState;
137
- return [staticStyles.absolute, skipLinkStyle, !focused && staticStyles.hidden];
138
- },
139
- ...selectProps(rest),
140
- children: pressableState => {
141
- const themeTokens = resolvePressableTokens(getTokens, pressableState);
142
- const textStyles = selectTextStyles(themeTokens);
143
- return /*#__PURE__*/_jsx(Text, {
144
- style: [textStyles, staticStyles.baseline],
145
- children: children
146
- });
147
- }
148
- });
149
- });
150
- SkipLink.displayName = 'SkipLink';
151
- SkipLink.propTypes = {
152
- ...selectedSystemPropTypes,
153
- /**
154
- * The text content shown or read out when the SkipLink is focused, usually a string.
155
- */
156
- children: PropTypes.node,
157
- /**
158
- * The target to skip to. Usually an anchor link to a section id (e.g. href="#main-section").
159
- */
160
- href: PropTypes.string,
161
- tokens: getTokensPropType('SkipLink'),
162
- variant: variantProp.propType
163
- };
164
- const staticStyles = StyleSheet.create({
165
- baseline: {
166
- alignSelf: 'baseline'
167
- },
168
- absolute: {
169
- margin: 0,
170
- position: 'absolute',
171
- top: 0,
172
- left: 0
173
- },
174
- hidden: {
175
- overflow: 'hidden',
176
- ...Platform.select({
177
- web: {
178
- clip: 'rect(0 0 0 0)',
179
- clipPath: 'inset(50%)'
180
- },
181
- default: {
182
- // width / height of 0 would make it non-focusable
183
- height: 1,
184
- width: 1,
185
- opacity: 0
186
- }
187
- })
188
- }
189
- });
190
- export default withLinkRouter(SkipLink);
@@ -1,2 +0,0 @@
1
- import SkipLink from './SkipLink';
2
- export default SkipLink;
@@ -1,95 +0,0 @@
1
- import React from 'react';
2
- import PropTypes from 'prop-types';
3
- import StyleSheet from "react-native-web/dist/exports/StyleSheet";
4
- import View from "react-native-web/dist/exports/View";
5
- import { a11yProps, selectSystemProps, spacingProps, useSpacingScale, viewProps } from '../utils';
6
-
7
- /**
8
- * @typedef {import('../utils/props/spacingProps.js').SpacingValue} SpacingValue
9
- * @typedef {import('../utils/props/spacingProps.js').SpacingObject} SpacingObject
10
- */
11
- import { jsx as _jsx } from "react/jsx-runtime";
12
- const [selectProps, selectedSystemPropTypes] = selectSystemProps([a11yProps, viewProps]);
13
- const selectSizeStyle = (size, direction) => ({
14
- // Only apply space in one direction at a time, else large spacers will increase the
15
- // 'across' size of the parent and mess up siblings with styles like `alignItems: stretch`.
16
- [direction === 'row' ? 'width' : 'height']: size
17
- });
18
-
19
- /**
20
- * An empty element used to create a gap between components that is sized according to the theme spacing scale,
21
- * passing its `space` prop ({@link SpacingValue}) to `useSpacingScale`.
22
- *
23
- * ## Simple spacing
24
- *
25
- * For most simple uses, pass a number to Spacer's `space` prop referring to an index in the theme's
26
- * spacing scale. For example, for a spacer of the theme's smallest non-zero spacing size:
27
- *
28
- * ```jsx
29
- * <Spacer space={1} />
30
- * ```
31
- *
32
- * ## Responsive spacing
33
- *
34
- * Different spacing scale sizes may be chosen for different viewports by passing `space` a {@link SpacingObject}
35
- * using keys for the viewports at and above which certain spacing indexes should apply.
36
- *
37
- * This can be useful when a Spacer is inside a layout with a shape that changes between viewports.
38
- *
39
- * For example, a spacer might need no width below 'md' viewport because the items it separates will be on separate lines,
40
- * but may need a visible size above that viewport, and a wider size at the highest viewport:
41
- *
42
- * ```jsx
43
- * <Spacer space={{ xs: 0, md: 2, xl: 3 }} />
44
- * ```
45
- *
46
- * Note that themes may also define viewport-specific behaviour for indexes on the spacing scale. These viewport
47
- * props should only be used where necessary to achieve a certain responsive layoutm and shouldn't be used to replace
48
- * or deviate from responsive spacing behaviour in a theme that is intended to apply universally.
49
- *
50
- * ## More options
51
- *
52
- * See `useSpacingScale` hook for more options that may be used with the `space` prop.
53
- *
54
- * ## Accessibility
55
- *
56
- * Spacer has no content and is ignored by tools such as screen readers. Use `Divider` for
57
- * separations between elements that may be treated as semantically meaningful on web.
58
- */
59
- const Spacer = /*#__PURE__*/React.forwardRef((_ref, ref) => {
60
- let {
61
- space = 1,
62
- direction = 'column',
63
- ...rest
64
- } = _ref;
65
- const size = useSpacingScale(space);
66
- const sizeStyle = selectSizeStyle(size, direction);
67
- return /*#__PURE__*/_jsx(View, {
68
- ref: ref,
69
- style: [staticStyles.stretch, sizeStyle],
70
- ...selectProps(rest)
71
- });
72
- });
73
- Spacer.displayName = 'Spacer';
74
- Spacer.propTypes = {
75
- ...selectedSystemPropTypes,
76
- /**
77
- * The size of the spacer according to the theme's spacing scale.
78
- * Either a number corresponding to a position on the theme's spacing scale (1 is smallest, 2 is second smallest, etc),
79
- * or, a SpacingObject with viewport keys and options (see `useSpacingScale` for details).
80
- */
81
- space: spacingProps.types.spacingValue,
82
- /**
83
- * The spacer applies space in only one direction, which is controlled by the `direction` prop:
84
- *
85
- * - `'column'` (default) applies space vertically; has a fixed height and not width.
86
- * - `'row'` applies space horizontally; has a fixed width and not height.
87
- */
88
- direction: PropTypes.oneOf(['column', 'row'])
89
- };
90
- const staticStyles = StyleSheet.create({
91
- stretch: {
92
- alignSelf: 'stretch'
93
- }
94
- });
95
- export default Spacer;
@@ -1,2 +0,0 @@
1
- import Spacer from './Spacer';
2
- export default Spacer;
@@ -1,126 +0,0 @@
1
- import React from 'react';
2
- import PropTypes from 'prop-types';
3
- import View from "react-native-web/dist/exports/View";
4
- import Divider from '../Divider';
5
- import { a11yProps, getA11yPropsFromHtmlTag, getTokensPropType, layoutTags, responsiveProps, selectSystemProps, spacingProps, useResponsiveProp, variantProp, viewProps } from '../utils';
6
- import { useThemeTokens } from '../ThemeProvider';
7
- import { useViewport } from '../ViewportProvider';
8
- import getStackedContent from './getStackedContent';
9
- import { staticStyles, selectFlexStyles } from './common';
10
- import { jsx as _jsx } from "react/jsx-runtime";
11
- const [selectProps, selectedSystemPropTypes] = selectSystemProps([a11yProps, viewProps]);
12
-
13
- /**
14
- * StackView evenly spaces its children, by default placing `Spacer` components between them.
15
- *
16
- * ## Spacing
17
- *
18
- * StackView takes the same spacing props as `Spacer` and passes them directly to the layout components
19
- * it uses for spacing.
20
- *
21
- * ## Direction
22
- *
23
- * Use `direction` to control how the children are stacked:
24
- *
25
- * - `'column'` (default) stacks and spaces the children vertically.
26
- * - `'row'` stacks and spaces the children horizontally.
27
- * - `'column-reverse'` acts the same as `'column'`, but reverses the direction.
28
- * - `'row-reverse'` acts the same as `'row'`, but reverses the direction.
29
- *
30
- * `direction` is an optionally responsive prop and may be an object keyed by viewports. For example,
31
- * `{ xs: 'column', md: 'row' } stacks as a column on `xs` and `sm` viewports and a row at 'md' and above.
32
- *
33
- * ## Theming, alignment and justification
34
- *
35
- * `StackView` is a pure layout component and has no theme styles beyond a small set of layout styles
36
- * (`alignItems`, `justifyContent`, `flexGrow`) which may be set using the `tokens` prop. If the
37
- * tokens prop is a function it will recieve the current viewport.
38
- *
39
- * All other styling such as borders, background colours, padding etc should be applied by wrapping
40
- * the `StackView` in other components. For example, a `StackView` may be the child of a `Card`.
41
- *
42
- * ## Separator options
43
- *
44
- * By default, StackView inserts a `<Spacer>` component between each rendered child.
45
- *
46
- * With the `divider` prop, it instead renders a `Divider` instead of a `Spacer`. The gap between
47
- * items will be double what it would be without this prop plus the width of the divider.
48
- *
49
- * ## Accessibility
50
- *
51
- * `StackView` may take any React Native accessibility props and applies them to the outer `View`.
52
- * It applies no accessibility props of its own, unless `divider` prop is passed (`Divider` has a
53
- * semantic role but only on web, not within native apps).
54
- */
55
- const StackView = /*#__PURE__*/React.forwardRef((_ref, ref) => {
56
- let {
57
- space = 0,
58
- divider,
59
- direction: directionProp = 'column',
60
- children,
61
- variant,
62
- tokens,
63
- tag,
64
- accessibilityRole,
65
- ...rest
66
- } = _ref;
67
- const viewport = useViewport();
68
- const direction = useResponsiveProp(directionProp, 'column');
69
- const selectedProps = selectProps({
70
- accessibilityRole,
71
- ...getA11yPropsFromHtmlTag(tag, accessibilityRole),
72
- ...rest
73
- });
74
- const content = getStackedContent(children, {
75
- direction,
76
- divider,
77
- space
78
- });
79
- const themeTokens = useThemeTokens('StackView', tokens, variant, {
80
- viewport
81
- });
82
- const flexStyles = selectFlexStyles(themeTokens);
83
- const size = {
84
- width: themeTokens.width
85
- };
86
- return /*#__PURE__*/_jsx(View, {
87
- ref: ref,
88
- ...selectedProps,
89
- style: [flexStyles, staticStyles[direction], size],
90
- children: content
91
- });
92
- });
93
- StackView.displayName = 'StackView';
94
- StackView.propTypes = {
95
- ...selectedSystemPropTypes,
96
- tokens: getTokensPropType('StackView'),
97
- variant: variantProp.propType,
98
- /**
99
- * Sets the `flexDirection` of the container and, if `divider` is used, gives the Divider the appropriate direction.
100
- */
101
- direction: responsiveProps.getTypeOptionallyByViewport(PropTypes.oneOf(['column', 'row', 'column-reverse', 'row-reverse'])),
102
- /**
103
- * If true, renders a UDS `Divider` component between each item. If an object is passed,
104
- * this object is passes as props to each Divider.
105
- */
106
- divider: PropTypes.oneOfType([PropTypes.bool, PropTypes.shape(Divider.propTypes)]),
107
- /**
108
- * The size of the spacer according to the theme's spacing scale.
109
- * Either a number corresponding to a position on the theme's spacing scale (1 is smallest, 2 is second smallest, etc),
110
- * or, a SpacingObject with viewport keys and options (see `useSpacingScale` for details).
111
- */
112
- space: spacingProps.types.spacingValue,
113
- /**
114
- * Optional semantic HTML tag, to apply to the container on web. Does not change styling.
115
- *
116
- * In native apps, if a header tag is provided ("h1", "h2" etc) and accessibilityRole prop
117
- * is not defined, the accessibilityRole will default to "heading".
118
- */
119
- tag: PropTypes.oneOf(layoutTags),
120
- /**
121
- * A StackView may take any children, but will have no effect if it is only passed one child or is passed children
122
- * wrapped in a component. If necessary, children may be wrapped in one React Fragment.
123
- */
124
- children: PropTypes.node
125
- };
126
- export default StackView;
@@ -1,51 +0,0 @@
1
- import React from 'react';
2
- import Platform from "react-native-web/dist/exports/Platform";
3
- import useSafeLayoutEffect from '../utils/useSafeLayoutEffect';
4
- import StackWrapBox from './StackWrapBox';
5
- import StackWrapGap from './StackWrapGap';
6
-
7
- // In Jest/CI/SSR, global CSS isn't always available and doesn't always have .supports method
8
- import { jsx as _jsx } from "react/jsx-runtime";
9
- const cssSupports = (property, value) => {
10
- var _window$CSS;
11
- return Platform.OS === 'web' && typeof window !== 'undefined' && typeof ((_window$CSS = window.CSS) === null || _window$CSS === void 0 ? void 0 : _window$CSS.supports) === 'function' && window.CSS.supports(property, value);
12
- };
13
-
14
- // CSS.supports needs an example of the type of value you intend to use.
15
- // Will be an integer appended `px` after hooks and JSX styles are resolved.
16
- const exampleGapValue = '1px';
17
-
18
- /**
19
- * StackWrap is an alternative to StackView where the spaced items are allowed to wrap.
20
- *
21
- * As well as providing space between the items, StackWrap provides `gap` space between
22
- * wrapped lines of items. By default, this `gap` is the same as the gap between spaced items.
23
- * If a different spacing is desired between wrapped lines, pass a spacing value to the `gap` prop.
24
- */
25
- const StackWrap = /*#__PURE__*/React.forwardRef((props, ref) => {
26
- const [canUseCSSGap, setCanUseCSSGap] = React.useState(false);
27
- const {
28
- space
29
- } = props;
30
- // Don't apply separate gap if `null` or `undefined`, so can be unset in Storybook etc
31
- const gap = props.gap ?? space;
32
- const gapEqualsSpace = gap === space;
33
-
34
- // If possible, use the cleaner implementation that applies CSS `gap` styles to the container,
35
- // preserving direct parent-child relationships between the container and each item, which
36
- // can result in clearer descriptions on some screen readers (e.g. radio "X of Y" on MacOS).
37
- // Else, use the fallback implementation which renders a `Box` component around each child.
38
- const Component = canUseCSSGap ? StackWrapGap : StackWrapBox;
39
- // In SSR, the type of implementation must match the server during hydration, but
40
- // the server can't know if gap is supported, so never use it until after hydration.
41
- useSafeLayoutEffect(() => {
42
- setCanUseCSSGap(gapEqualsSpace && cssSupports('gap', exampleGapValue));
43
- }, [gapEqualsSpace]);
44
- return /*#__PURE__*/_jsx(Component, {
45
- ref: ref,
46
- ...props
47
- });
48
- });
49
- StackWrap.displayName = 'StackWrap';
50
- StackWrap.propTypes = StackWrapBox.propTypes;
51
- export default StackWrap;
@@ -1,4 +0,0 @@
1
- import StackWrapBox from './StackWrapBox';
2
-
3
- // No support for CSS `gap` on React Native, so always use the fallback "box" implementation.
4
- export default StackWrapBox;
@@ -1,114 +0,0 @@
1
- import React from 'react';
2
- import PropTypes from 'prop-types';
3
- import View from "react-native-web/dist/exports/View";
4
- import { a11yProps, getA11yPropsFromHtmlTag, getTokensPropType, layoutTags, responsiveProps, selectSystemProps, spacingProps, useSpacingScale, useResponsiveProp, viewProps } from '../utils';
5
- import { useThemeTokens } from '../ThemeProvider';
6
- import { useViewport } from '../ViewportProvider';
7
- import getStackedContent from './getStackedContent';
8
- import { staticStyles, selectFlexStyles } from './common';
9
- import { jsx as _jsx } from "react/jsx-runtime";
10
- const [selectProps, selectedSystemPropTypes] = selectSystemProps([a11yProps, viewProps]);
11
- const offsetSides = {
12
- row: 'marginBottom',
13
- column: 'marginRight'
14
- };
15
- const gapSides = {
16
- row: 'bottom',
17
- column: 'right'
18
- };
19
- const spaceSides = {
20
- row: 'right',
21
- column: 'bottom'
22
- };
23
-
24
- /**
25
- * An alternative fallback implementation of `StackWrap` that doesn't use CSS `gap`.
26
- *
27
- * This is not intended to be used directly. It will automatically be used instead of StackWrap in:
28
- *
29
- * - Native apps (no `gap` style prop in React Native).
30
- * - Older (~<=2020) browsers which don't support CSS `gap`.
31
- * - Cases where the `space` between items should be different to the `gap` between wrapped rows .
32
- *
33
- * Unlike the cleaner and more side-effect-free CSS gap StackWrap implementation, this renders a Box (View)
34
- * between the container and the stacked children, and requires a negative margin on the container.
35
- */
36
- const StackWrapBox = /*#__PURE__*/React.forwardRef((_ref, ref) => {
37
- let {
38
- space = 1,
39
- gap = space,
40
- direction: directionProp = 'row',
41
- children,
42
- tokens,
43
- variant,
44
- tag,
45
- accessibilityRole,
46
- ...rest
47
- } = _ref;
48
- const viewport = useViewport();
49
- const direction = useResponsiveProp(directionProp, 'row');
50
- const themeTokens = useThemeTokens('StackView', tokens, variant, {
51
- viewport
52
- });
53
- const flexStyles = selectFlexStyles(themeTokens);
54
- const selectedProps = selectProps({
55
- accessibilityRole,
56
- ...getA11yPropsFromHtmlTag(tag, accessibilityRole),
57
- ...rest
58
- });
59
-
60
- // Mimic CSS `gap` using box spacing on the side after a wrapped row then offsetting it on the last row.
61
- const gapSize = useSpacingScale(gap);
62
- const offsetStyle = {
63
- [offsetSides[direction]]: -1 * gapSize
64
- };
65
- const boxProps = {
66
- [gapSides[direction]]: gap,
67
- [spaceSides[direction]]: space
68
- };
69
- const content = getStackedContent(children, {
70
- direction,
71
- space: 0,
72
- box: boxProps
73
- });
74
- return /*#__PURE__*/_jsx(View, {
75
- ref: ref,
76
- ...selectedProps,
77
- style: [flexStyles, staticStyles.wrap, staticStyles[direction], offsetStyle],
78
- children: content
79
- });
80
- });
81
- StackWrapBox.displayName = 'StackWrapBox';
82
- StackWrapBox.propTypes = {
83
- ...selectedSystemPropTypes,
84
- tokens: getTokensPropType('StackView'),
85
- /**
86
- * Sets the `flexDirection` of the container
87
- */
88
- direction: responsiveProps.getTypeOptionallyByViewport(PropTypes.oneOf(['column', 'row', 'row-reverse', 'column-reverse'])),
89
- /**
90
- * The size of the space between items according to the theme's spacing scale.
91
- * Either a number corresponding to a position on the theme's spacing scale (1 is smallest, 2 is second smallest, etc),
92
- * or, a SpacingObject with viewport keys and options (see `useSpacingScale` for details).
93
- */
94
- space: spacingProps.types.spacingValue,
95
- /**
96
- * The size of the space between lines of content, according to the theme's spacing scale. By default, matches `space`.
97
- * Either a number corresponding to a position on the theme's spacing scale (1 is smallest, 2 is second smallest, etc),
98
- * or, a SpacingObject with viewport keys and options (see `useSpacingScale` for details).
99
- */
100
- gap: spacingProps.types.spacingValue,
101
- /**
102
- * Optional semantic HTML tag, to apply to the container on web. Does not change styling.
103
- *
104
- * In native apps, if a header tag is provided ("h1", "h2" etc) and accessibilityRole prop
105
- * is not defined, the accessibilityRole will default to "heading".
106
- */
107
- tag: PropTypes.oneOf(layoutTags),
108
- /**
109
- * A StackWrap may take any children, but will have no effect if it is only passed one child or is passed children
110
- * wrapped in a component. If necessary, children may be wrapped in one React Fragment.
111
- */
112
- children: PropTypes.node
113
- };
114
- export default StackWrapBox;
@@ -1,61 +0,0 @@
1
- import React from 'react';
2
- import View from "react-native-web/dist/exports/View";
3
- import StackWrapBox from './StackWrapBox';
4
- import { a11yProps, getA11yPropsFromHtmlTag, selectSystemProps, useSpacingScale, useResponsiveProp, viewProps } from '../utils';
5
- import { useThemeTokens } from '../ThemeProvider';
6
- import { useViewport } from '../ViewportProvider';
7
- import getStackedContent from './getStackedContent';
8
- import { staticStyles, selectFlexStyles } from './common';
9
- import { jsx as _jsx } from "react/jsx-runtime";
10
- const [selectProps] = selectSystemProps([a11yProps, viewProps]);
11
-
12
- /**
13
- * The primary implementation of StackWrap.
14
- *
15
- * This is not intended to be used directly. It will automatically be used instead of StackWrap if:
16
- *
17
- * - On web, and,
18
- * - On a browser that supports CSS `gap` (most browser versions from 2020 onwards), and,
19
- * - The `space` between items is the same as the `gap` between wrapped rows (this is the
20
- * default if `gap` prop is undefined)
21
- */
22
- const StackWrapGap = /*#__PURE__*/React.forwardRef((_ref, ref) => {
23
- let {
24
- space = 1,
25
- tokens,
26
- variant,
27
- direction: directionProp = 'row',
28
- children,
29
- tag,
30
- accessibilityRole,
31
- ...rest
32
- } = _ref;
33
- const viewport = useViewport();
34
- const direction = useResponsiveProp(directionProp, 'row');
35
- const themeTokens = useThemeTokens('StackView', tokens, variant, {
36
- viewport
37
- });
38
- const flexStyles = selectFlexStyles(themeTokens);
39
- const selectedProps = selectProps({
40
- accessibilityRole,
41
- ...getA11yPropsFromHtmlTag(tag, accessibilityRole),
42
- ...rest
43
- });
44
- const size = useSpacingScale(space);
45
- const gapStyle = {
46
- gap: size
47
- };
48
- const content = getStackedContent(children, {
49
- direction,
50
- space: 0
51
- });
52
- return /*#__PURE__*/_jsx(View, {
53
- ref: ref,
54
- ...selectedProps,
55
- style: [flexStyles, staticStyles.wrap, staticStyles[direction], gapStyle],
56
- children: content
57
- });
58
- });
59
- StackWrapGap.displayName = 'StackWrapGap';
60
- StackWrapGap.propTypes = StackWrapBox.propTypes;
61
- export default StackWrapGap;
@@ -1,35 +0,0 @@
1
- import StyleSheet from "react-native-web/dist/exports/StyleSheet";
2
- export const selectFlexStyles = _ref => {
3
- let {
4
- alignItems,
5
- justifyContent,
6
- flexGrow,
7
- flexShrink
8
- } = _ref;
9
- return {
10
- alignItems,
11
- justifyContent,
12
- flexGrow,
13
- flexShrink
14
- };
15
- };
16
- export const staticStyles = StyleSheet.create({
17
- wrap: {
18
- flexShrink: 1,
19
- flexWrap: 'wrap'
20
- },
21
- row: {
22
- flexDirection: 'row'
23
- },
24
- 'row-reverse': {
25
- flexDirection: 'row-reverse'
26
- },
27
- column: {
28
- // This is the React Native View default, but also it's very fundamental to the behaviour,
29
- // so make it explicit and allow it to be tested for.
30
- flexDirection: 'column'
31
- },
32
- 'column-reverse': {
33
- flexDirection: 'column-reverse'
34
- }
35
- });