@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,481 +0,0 @@
1
- import React from 'react';
2
- import PropTypes from 'prop-types';
3
- import Dimensions from "react-native-web/dist/exports/Dimensions";
4
- import Platform from "react-native-web/dist/exports/Platform";
5
- import View from "react-native-web/dist/exports/View";
6
- import StyleSheet from "react-native-web/dist/exports/StyleSheet";
7
- import throttle from 'lodash.throttle';
8
- import matchAll from 'string.prototype.matchall';
9
- import { inputSupportsProps, selectSystemProps, textInputProps, textInputHandlerProps, useCopy, htmlAttrs, useOverlaidPosition, useSafeLayoutEffect } from '../utils';
10
- import { useThemeTokens } from '../ThemeProvider';
11
- import Listbox from '../Listbox';
12
- import Typography from '../Typography';
13
- import { TextInput } from '../TextInput';
14
- import InputSupports from '../InputSupports';
15
- import Loading from './Loading';
16
- import Suggestions from './Suggestions';
17
- import { DEFAULT_MAX_SUGGESTIONS, DEFAULT_MIN_TO_SUGGESTION, INPUT_LEFT_PADDING, MIN_LISTBOX_WIDTH } from './constants';
18
- import dictionary from './dictionary';
19
- import { jsx as _jsx } from "react/jsx-runtime";
20
- import { Fragment as _Fragment } from "react/jsx-runtime";
21
- import { jsxs as _jsxs } from "react/jsx-runtime";
22
- const staticStyles = StyleSheet.create({
23
- container: {
24
- zIndex: 100,
25
- flexDirection: 'column',
26
- justifyContent: 'flex-start',
27
- flexGrow: 0,
28
- flexShrink: 0
29
- }
30
- });
31
- const [selectProps, selectedSystemPropTypes] = selectSystemProps([htmlAttrs, inputSupportsProps, textInputHandlerProps, textInputProps]);
32
-
33
- // Returns JSX to display a bold string `str` with unbolded occurrences of the
34
- // `substring` based in the array of `matchIndexes` provided
35
- const highlightAllMatches = function (str) {
36
- let substring = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
37
- let matchIndexes = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];
38
- let resultsTextColor = arguments.length > 3 ? arguments[3] : undefined;
39
- return (
40
- /*#__PURE__*/
41
- // Wrapping all in bold
42
- _jsx(Typography, {
43
- variant: {
44
- bold: false
45
- },
46
- tokens: {
47
- color: resultsTextColor
48
- },
49
- children: matchIndexes.reduce((acc, matchIndex, index) => [...acc,
50
- // Add a piece of the string up to the first occurrence of the substring
51
- index === 0 && (str.slice(0, matchIndex) ?? ''),
52
- /*#__PURE__*/
53
- // Unbold the occurrence of the substring (while keeping the original casing)
54
- _jsx(Typography, {
55
- variant: {
56
- bold: true
57
- },
58
- tokens: {
59
- color: resultsTextColor
60
- },
61
- children: str.slice(matchIndex, matchIndex + substring.length)
62
- }, matchIndex),
63
- // Add the rest of the string until the next occurrence or the end of it
64
- str.slice(matchIndex + substring.length, matchIndexes[index + 1] ?? str.length)], [])
65
- })
66
- );
67
- };
68
- const highlight = function () {
69
- let items = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
70
- let text = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
71
- let color = arguments.length > 2 ? arguments[2] : undefined;
72
- return items.reduce((acc, item) => {
73
- var _Array$from;
74
- const matches = (_Array$from = Array.from(matchAll(item.label.toLowerCase(), text.toLowerCase().replace(/[/\-\\^$*+?.()|[\]{}]/g, '\\$&')))) === null || _Array$from === void 0 ? void 0 : _Array$from.map(_ref => {
75
- let {
76
- index
77
- } = _ref;
78
- return index;
79
- });
80
- if (matches !== null && matches !== void 0 && matches.length) {
81
- return [...acc, {
82
- ...item,
83
- label: highlightAllMatches(item.label, text, matches, color)
84
- }];
85
- }
86
- return [...acc, item];
87
- }, []);
88
- };
89
- const Autocomplete = /*#__PURE__*/React.forwardRef((_ref2, ref) => {
90
- var _ref3;
91
- let {
92
- children,
93
- copy = 'en',
94
- fullWidth = true,
95
- initialItems,
96
- initialValue,
97
- isLoading = false,
98
- items,
99
- maxSuggestions = DEFAULT_MAX_SUGGESTIONS,
100
- minToSuggestion = DEFAULT_MIN_TO_SUGGESTION,
101
- noResults,
102
- onChange,
103
- onClear,
104
- onSelect,
105
- readOnly,
106
- validation,
107
- value,
108
- helpText = '',
109
- loadingLabel,
110
- ...rest
111
- } = _ref2;
112
- const {
113
- color: resultsTextColor
114
- } = useThemeTokens('Search', {}, {
115
- focus: true
116
- });
117
- // The wrapped input is mostly responsible for controlled vs uncontrolled handling,
118
- // but we also need to adjust suggestions based on the mode:
119
- // - in controlled mode we rely entirely on the suggestions passed via the `items` prop,
120
- // - in uncontrolled mode we filter the suggestions ourselves based on the `initialItems`
121
- // prop and the text entered
122
- const isControlled = value !== undefined;
123
-
124
- // We need to store current items for uncontrolled usage
125
- const [currentItems, setCurrentItems] = React.useState(initialItems);
126
- const [otherItems, setOtherItems] = React.useState(items);
127
-
128
- // We need to store the current value as well to be able to highlight it
129
- const [currentValue, setCurrentValue] = React.useState(value ?? initialValue);
130
- const inputTokens = {
131
- paddingLeft: INPUT_LEFT_PADDING
132
- };
133
-
134
- // Setting up the overlay
135
- const openOverlayRef = React.useRef();
136
- const [isExpanded, setIsExpanded] = React.useState(((_ref3 = value ?? initialValue) === null || _ref3 === void 0 ? void 0 : _ref3.length) >= minToSuggestion);
137
- const [isFocused, setisFocused] = React.useState(false);
138
- const [sourceLayout, setSourceLayout] = React.useState(null);
139
-
140
- // When it's nested, selected value
141
- const [nestedSelectedValue, setNestedSelectedValue] = React.useState(null);
142
- const [isInputVisible, setIsInputVisible] = React.useState(true);
143
- const {
144
- supportsProps,
145
- ...selectedProps
146
- } = selectProps(rest);
147
- const {
148
- hint,
149
- label: inputLabel
150
- } = supportsProps;
151
- const hintExpansionEnabled = isFocused && helpText && !currentValue;
152
- const {
153
- overlaidPosition,
154
- sourceRef: inputRef,
155
- // targetRef,
156
- onTargetLayout,
157
- isReady
158
- } = useOverlaidPosition({
159
- isShown: isExpanded || hintExpansionEnabled,
160
- offsets: {
161
- vertical: Platform.OS !== 'web' && (hint || inputLabel) ? 28 : 4
162
- }
163
- });
164
- const targetRef = React.useRef(null);
165
- // We limit the number of suggestions displayed to avoid huge lists
166
- // TODO: add a way to make the `Listbox` occupy fixed height and be scrollable
167
- // within that height, which will unlock similar behaviour for `AutoComplete` as well
168
- const itemsToSuggest = function () {
169
- let data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
170
- return maxSuggestions ? data.slice(0, maxSuggestions) : [...data];
171
- };
172
- const getCopy = useCopy({
173
- dictionary,
174
- copy
175
- });
176
- // Tracking input width changes to resize the listbox overlay accordingly
177
- const [inputWidth, setInputWidth] = React.useState();
178
- useSafeLayoutEffect(() => {
179
- if (Platform.OS === 'web') {
180
- const updateInputWidth = () => {
181
- var _inputRef$current;
182
- setInputWidth((inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.clientWidth) + 4); // adding back all the input borders / outlines
183
- setIsExpanded(false); // close the suggestions while the input is changing
184
- };
185
-
186
- const throttledUpdateInputWidth = throttle(updateInputWidth, 100, {
187
- leading: false
188
- });
189
- throttledUpdateInputWidth();
190
- Dimensions.addEventListener('change', throttledUpdateInputWidth);
191
- return () => {
192
- Dimensions.removeEventListener('change', throttledUpdateInputWidth);
193
- };
194
- }
195
- setInputWidth(sourceLayout === null || sourceLayout === void 0 ? void 0 : sourceLayout.width);
196
- return () => {};
197
- }, [inputRef, sourceLayout]);
198
- const handleMeasure = event => {
199
- onTargetLayout(event);
200
- if (Platform.OS !== 'web') {
201
- var _inputRef$current2;
202
- inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current2 = inputRef.current) === null || _inputRef$current2 === void 0 ? void 0 : _inputRef$current2.measureInWindow((x, y, width) => {
203
- setInputWidth(width);
204
- });
205
- }
206
- };
207
- const handleChange = newValue => {
208
- onChange === null || onChange === void 0 ? void 0 : onChange(newValue || '');
209
- setCurrentValue(newValue);
210
- setIsExpanded((newValue === null || newValue === void 0 ? void 0 : newValue.length) >= minToSuggestion);
211
- if (!isControlled && initialItems !== undefined) {
212
- setCurrentItems(initialItems.filter(_ref4 => {
213
- var _label$toLowerCase;
214
- let {
215
- label
216
- } = _ref4;
217
- return label === null || label === void 0 ? void 0 : (_label$toLowerCase = label.toLowerCase()) === null || _label$toLowerCase === void 0 ? void 0 : _label$toLowerCase.includes(newValue === null || newValue === void 0 ? void 0 : newValue.toLowerCase());
218
- }));
219
- }
220
- };
221
- const handleSelect = selectedId => {
222
- var _ref5;
223
- onSelect === null || onSelect === void 0 ? void 0 : onSelect(selectedId);
224
- const {
225
- label: newValue,
226
- nested,
227
- title
228
- } = (_ref5 = isControlled ? items : currentItems) === null || _ref5 === void 0 ? void 0 : _ref5.find(_ref6 => {
229
- let {
230
- id
231
- } = _ref6;
232
- return id === selectedId;
233
- });
234
- if (title) return;
235
- if (!nested) {
236
- setNestedSelectedValue(null);
237
- onChange === null || onChange === void 0 ? void 0 : onChange(newValue);
238
- setIsExpanded(false);
239
- }
240
- setCurrentValue(newValue);
241
- if (!isControlled && inputRef !== null && inputRef !== void 0 && inputRef.current) inputRef.current.value = newValue;
242
- if (nested) setNestedSelectedValue(newValue);
243
- inputRef.current.focus();
244
- };
245
-
246
- /**
247
- * When an item that is nested equal "true" is selected this useEffect is executed.
248
- * The nested item is added to the item list at the top, the if validates it doesn't exist
249
- * within the list, if doesn't exist the nested item is added to the top of the list,
250
- * the nested item is added with an id equal "0"
251
- */
252
- React.useEffect(() => {
253
- if (nestedSelectedValue && !items.find(item => item.id === 0)) {
254
- const tmpItems = [...items];
255
- tmpItems.unshift({
256
- label: nestedSelectedValue,
257
- title: true,
258
- id: 0
259
- });
260
- setOtherItems(tmpItems.map(item => {
261
- return {
262
- ...item,
263
- nestedChild: item.id !== 0
264
- };
265
- }));
266
- }
267
- }, [nestedSelectedValue, items]);
268
- React.useEffect(() => {
269
- if (Platform.OS === 'ios' || Platform.OS === 'android') {
270
- return undefined;
271
- }
272
- const observer = new IntersectionObserver(entries => {
273
- const [entry] = entries;
274
- setIsInputVisible(entry.isIntersecting);
275
- if (!entry.isIntersecting) {
276
- setIsExpanded(false);
277
- }
278
- });
279
- const currentInputRef = inputRef.current;
280
- if (currentInputRef) {
281
- observer.observe(currentInputRef);
282
- }
283
- return () => {
284
- if (currentInputRef) {
285
- observer.unobserve(currentInputRef);
286
- }
287
- };
288
- }, [inputRef]);
289
- const handleClose = event => {
290
- var _openOverlayRef$curre, _openOverlayRef$curre2;
291
- if (event.type === 'keydown' && (event.key === 'Escape' || event.key === '27') || event.type === 'click' && !(openOverlayRef !== null && openOverlayRef !== void 0 && (_openOverlayRef$curre = openOverlayRef.current) !== null && _openOverlayRef$curre !== void 0 && _openOverlayRef$curre.contains(event.target)) || event.type === 'touchstart' && openOverlayRef !== null && openOverlayRef !== void 0 && openOverlayRef.current && event.touches[0].target && !(openOverlayRef !== null && openOverlayRef !== void 0 && (_openOverlayRef$curre2 = openOverlayRef.current) !== null && _openOverlayRef$curre2 !== void 0 && _openOverlayRef$curre2.contains(event.touches[0].target))) {
292
- setIsExpanded(false);
293
- setNestedSelectedValue(null);
294
- } else if (event.type === 'keydown' && (event.key === 'ArrowDown' || event.key === 'Tab') && isExpanded && !isLoading && targetRef !== null && targetRef !== void 0 && targetRef.current) {
295
- event.preventDefault();
296
- targetRef.current.focus();
297
- }
298
- };
299
- const itemsToShow = currentValue ? itemsToSuggest(highlight(isControlled ? items : currentItems, currentValue, resultsTextColor)) : [];
300
- const helpTextToShow = isFocused && !currentValue ? helpText : noResults ?? getCopy('noResults');
301
- return /*#__PURE__*/_jsxs(View, {
302
- style: staticStyles.container,
303
- children: [/*#__PURE__*/_jsx(InputSupports, {
304
- ...supportsProps,
305
- accessibilityAutoComplete: "list",
306
- accessibilityControls: "autocomplete",
307
- accessibilityExpanded: isExpanded,
308
- accessibilityRole: "combobox",
309
- ...selectedProps,
310
- validation: validation,
311
- ref: ref,
312
- children: _ref7 => {
313
- let {
314
- inputId,
315
- ...props
316
- } = _ref7;
317
- if (typeof children === 'function') return children({
318
- inputId,
319
- inputRef,
320
- onChange: handleChange,
321
- onKeyPress: handleClose,
322
- readOnly,
323
- tokens: inputTokens,
324
- ...selectedProps,
325
- ...props,
326
- ...(isControlled ? {
327
- value
328
- } : {
329
- initialValue
330
- })
331
- });
332
- return /*#__PURE__*/_jsx(TextInput, {
333
- onChange: handleChange,
334
- onFocus: () => {
335
- setisFocused(true);
336
- },
337
- onBlur: () => {
338
- setisFocused(false);
339
- },
340
- onClear: onClear,
341
- onKeyPress: handleClose,
342
- readOnly: readOnly,
343
- ref: inputRef,
344
- ...(Platform.OS !== 'web' ? {
345
- onLayout: event => {
346
- setSourceLayout(event.nativeEvent.layout);
347
- const {
348
- y,
349
- height
350
- } = event.nativeEvent.layout;
351
- if (y >= 0 && height > 0) {
352
- setIsInputVisible(true);
353
- } else {
354
- setIsInputVisible(false);
355
- setIsExpanded(false);
356
- }
357
- }
358
- } : {}),
359
- tokens: inputTokens,
360
- validation: validation,
361
- ...selectedProps,
362
- ...props,
363
- ...(isControlled ? {
364
- value
365
- } : {
366
- initialValue
367
- })
368
- });
369
- }
370
- }), (isExpanded || hintExpansionEnabled) && isInputVisible && /*#__PURE__*/_jsxs(_Fragment, {
371
- children: [/*#__PURE__*/_jsx(Listbox.Overlay, {
372
- overlaidPosition: overlaidPosition,
373
- isReady: isReady,
374
- minWidth: fullWidth ? inputWidth : MIN_LISTBOX_WIDTH,
375
- maxWidth: inputWidth,
376
- onLayout: handleMeasure,
377
- ref: openOverlayRef,
378
- children: isLoading ? /*#__PURE__*/_jsx(Loading, {
379
- label: loadingLabel ?? getCopy('loading')
380
- }) : /*#__PURE__*/_jsx(Suggestions, {
381
- hasResults: getCopy('hasResults'),
382
- id: "autocomplete",
383
- items: nestedSelectedValue ? itemsToSuggest(highlight(otherItems, nestedSelectedValue, resultsTextColor)) : itemsToShow,
384
- noResults: helpTextToShow,
385
- onClose: handleClose,
386
- onSelect: handleSelect,
387
- parentRef: inputRef,
388
- ref: targetRef
389
- })
390
- }), (targetRef === null || targetRef === void 0 ? void 0 : targetRef.current) && /*#__PURE__*/_jsx(View
391
- // This catches and shifts focus to other interactive elements.
392
- , {
393
- onFocus: () => {
394
- var _targetRef$current;
395
- return targetRef === null || targetRef === void 0 ? void 0 : (_targetRef$current = targetRef.current) === null || _targetRef$current === void 0 ? void 0 : _targetRef$current.focus();
396
- },
397
- tabIndex: 0
398
- })]
399
- })]
400
- });
401
- });
402
- Autocomplete.displayName = 'Autocomplete';
403
-
404
- // If a language dictionary entry is provided, it must contain every key
405
- const dictionaryContentShape = PropTypes.shape({
406
- hasResults: PropTypes.string.isRequired,
407
- loading: PropTypes.string.isRequired,
408
- noResults: PropTypes.string.isRequired
409
- });
410
- Autocomplete.propTypes = {
411
- ...selectedSystemPropTypes,
412
- /**
413
- * Can be used to provide a function that renders a custom input:
414
- * <Autocomplete items={items} value={currentValue}>
415
- * {({ inputId, inputRef, onChange, onKeyPress, readOnly, tokens, value }) => (
416
- * <Search
417
- * nativeID={inputId}
418
- * ref={inputRef}
419
- * onChange={onChange}
420
- * onKeyPress={onKeyPress}
421
- * readOnly={readOnly}
422
- * tokens={tokens}
423
- * value={value}
424
- * />
425
- * )}
426
- * </Autocomplete>
427
- */
428
- children: PropTypes.func,
429
- /**
430
- * Copy language identifier
431
- */
432
- copy: PropTypes.oneOfType([PropTypes.oneOf(['en', 'fr']), dictionaryContentShape]),
433
- /**
434
- * Set to true in order to display the loading indicator instead of results
435
- */
436
- isLoading: PropTypes.bool,
437
- /**
438
- * List of items to display as suggestions
439
- */
440
- items: PropTypes.arrayOf(PropTypes.shape({
441
- id: PropTypes.string,
442
- label: PropTypes.string
443
- })),
444
- /**
445
- * Label to display alongside the spinner when in a loading state
446
- */
447
- loadingLabel: PropTypes.string,
448
- /**
449
- * Minimum number of characters typed for a list of suggestions to appear
450
- */
451
- minToSuggestion: PropTypes.number,
452
- /**
453
- * Maximum number of suggestions provided at the same time
454
- */
455
- maxSuggestions: PropTypes.number,
456
- /**
457
- * Text or JSX to render when no results are available
458
- */
459
- noResults: PropTypes.node,
460
- /**
461
- * Help text to display when the input is focused and empty
462
- */
463
- helpText: PropTypes.string,
464
- /**
465
- * Handler function to be called when the input value changes
466
- */
467
- onChange: PropTypes.func,
468
- /**
469
- * Handler function to be called when the clear button (appears if the handler is passed) is pressed
470
- */
471
- onClear: PropTypes.func,
472
- /**
473
- * Callback function to be called when an item is selected from the list
474
- */
475
- onSelect: PropTypes.func,
476
- /**
477
- * Input value for controlled usage
478
- */
479
- value: PropTypes.string
480
- };
481
- export default Autocomplete;
@@ -1,36 +0,0 @@
1
- import React from 'react';
2
- import PropTypes from 'prop-types';
3
- import ActivityIndicator from '../ActivityIndicator';
4
- import Typography from '../Typography';
5
- import Box from '../Box';
6
- import StackView from '../StackView';
7
- import { jsx as _jsx } from "react/jsx-runtime";
8
- import { jsxs as _jsxs } from "react/jsx-runtime";
9
- const Loading = /*#__PURE__*/React.forwardRef((_ref, ref) => {
10
- let {
11
- label
12
- } = _ref;
13
- return /*#__PURE__*/_jsx(Box, {
14
- space: 3,
15
- ref: ref,
16
- children: /*#__PURE__*/_jsxs(StackView, {
17
- direction: "row",
18
- space: 2,
19
- tokens: {
20
- alignItems: 'center'
21
- },
22
- children: [/*#__PURE__*/_jsx(ActivityIndicator, {
23
- variant: {
24
- size: 'large'
25
- }
26
- }), /*#__PURE__*/_jsx(Typography, {
27
- children: label
28
- })]
29
- })
30
- });
31
- });
32
- Loading.displayName = 'Loading';
33
- Loading.propTypes = {
34
- label: PropTypes.string
35
- };
36
- export default Loading;
@@ -1,66 +0,0 @@
1
- import React from 'react';
2
- import PropTypes from 'prop-types';
3
- import A11yText from '../A11yText';
4
- import Typography from '../Typography';
5
- import Box from '../Box';
6
- import Listbox from '../Listbox';
7
- import { jsx as _jsx } from "react/jsx-runtime";
8
- import { Fragment as _Fragment } from "react/jsx-runtime";
9
- import { jsxs as _jsxs } from "react/jsx-runtime";
10
- const Suggestions = /*#__PURE__*/React.forwardRef((_ref, ref) => {
11
- let {
12
- hasResults,
13
- items = [],
14
- noResults,
15
- onClose,
16
- onSelect,
17
- parentRef
18
- } = _ref;
19
- const pressableItems = items.map(_ref2 => {
20
- let {
21
- id,
22
- ...rest
23
- } = _ref2;
24
- return {
25
- id,
26
- onPress: () => onSelect(id),
27
- ...rest
28
- };
29
- });
30
- if (items !== null && items !== void 0 && items.length) return /*#__PURE__*/_jsxs(_Fragment, {
31
- children: [/*#__PURE__*/_jsx(A11yText, {
32
- accessibilityLiveRegion: "polite",
33
- text: hasResults
34
- }), /*#__PURE__*/_jsx(Listbox, {
35
- items: pressableItems,
36
- firstItemRef: ref,
37
- parentRef: parentRef,
38
- onClose: onClose
39
- })]
40
- });
41
- return /*#__PURE__*/_jsx(Box, {
42
- space: 3,
43
- children: typeof noResults === 'string' ? /*#__PURE__*/_jsx(_Fragment, {
44
- children: /*#__PURE__*/_jsx(Typography, {
45
- accessibilityLiveRegion: "polite",
46
- variant: {
47
- size: 'small'
48
- },
49
- children: noResults
50
- })
51
- }) : noResults
52
- });
53
- });
54
- Suggestions.displayName = 'Suggestions';
55
- Suggestions.propTypes = {
56
- hasResults: PropTypes.string.isRequired,
57
- items: PropTypes.arrayOf(PropTypes.shape({
58
- id: PropTypes.string,
59
- label: PropTypes.node
60
- })).isRequired,
61
- noResults: PropTypes.node.isRequired,
62
- onClose: PropTypes.func.isRequired,
63
- onSelect: PropTypes.func.isRequired,
64
- parentRef: PropTypes.object.isRequired
65
- };
66
- export default Suggestions;
@@ -1,4 +0,0 @@
1
- export const DEFAULT_MIN_TO_SUGGESTION = 1;
2
- export const DEFAULT_MAX_SUGGESTIONS = 5;
3
- export const INPUT_LEFT_PADDING = 16;
4
- export const MIN_LISTBOX_WIDTH = 288;
@@ -1,12 +0,0 @@
1
- export default {
2
- en: {
3
- hasResults: 'Some results are available',
4
- loading: 'Searching...',
5
- noResults: 'No results found'
6
- },
7
- fr: {
8
- hasResults: 'Quelques suggestions sont disponible',
9
- loading: 'Recherche...',
10
- noResults: 'Aucun résultat trouvé'
11
- }
12
- };
@@ -1,2 +0,0 @@
1
- import Autocomplete from './Autocomplete';
2
- export default Autocomplete;