@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,144 +0,0 @@
1
- import React from 'react';
2
- import Animated from "react-native-web/dist/exports/Animated";
3
- import Easing from "react-native-web/dist/exports/Easing";
4
- import StyleSheet from "react-native-web/dist/exports/StyleSheet";
5
- import View from "react-native-web/dist/exports/View";
6
- import { DURATION, MIN_EMPTY_ANGLE, MIN_STROKE_ANGLE, BEZIER, propTypes } from './shared';
7
- import { useA11yInfo } from '../A11yInfoProvider';
8
- import { jsx as _jsx } from "react/jsx-runtime";
9
- const ea = MIN_EMPTY_ANGLE / 2;
10
- const sa = MIN_STROKE_ANGLE / 2;
11
- const Spinner = /*#__PURE__*/React.forwardRef((_ref, ref) => {
12
- let {
13
- size,
14
- color,
15
- thickness,
16
- label,
17
- isStatic = false
18
- } = _ref;
19
- const {
20
- current: timer
21
- } = React.useRef(new Animated.Value(0));
22
- const {
23
- reduceMotionEnabled
24
- } = useA11yInfo();
25
- const reduceMotion = reduceMotionEnabled || isStatic;
26
- React.useLayoutEffect(() => {
27
- const loop = Animated.timing(timer, {
28
- duration: DURATION,
29
- easing: Easing.linear,
30
- // Animated.loop does not work if useNativeDriver is true on web
31
- useNativeDriver: true,
32
- toValue: 1,
33
- isInteraction: false
34
- });
35
- if (!reduceMotion) Animated.loop(loop).start();else loop.stop();
36
- }, [timer, reduceMotion]);
37
- const frames = 60 * DURATION / 1000;
38
- const easing = Easing.bezier(...BEZIER);
39
- const containerStyle = {
40
- width: size,
41
- height: size / (reduceMotion ? 1.5 : 2),
42
- overflow: 'hidden'
43
- };
44
- const animationFrequency = reduceMotion ? [0] : [0, 1];
45
-
46
- // Credit to https://github.com/n4kz/react-native-indicators and https://github.com/callstack/react-native-paper for this
47
- return /*#__PURE__*/_jsx(View, {
48
- ref: ref,
49
- style: [styles.container],
50
- accessible: true,
51
- accessibilityLabel: label,
52
- accessibilityRole: "progressbar",
53
- accessibilityState: {
54
- busy: true
55
- },
56
- children: /*#__PURE__*/_jsx(Animated.View, {
57
- style: [{
58
- width: size,
59
- height: size
60
- }],
61
- collapsable: false,
62
- children: animationFrequency.map(index => {
63
- const inputRange = Array.from(new Array(frames), (_, frameIndex) => frameIndex / (frames - 1));
64
- const outputRange = Array.from(new Array(frames), (_, frameIndex) => {
65
- let progress = 2 * frameIndex / (frames - 1);
66
- const rotation = index ? +(360 - sa) : -(180 - sa);
67
- if (progress > 1.0) {
68
- progress = 2.0 - progress;
69
- }
70
- const direction = index ? -1 : +1;
71
- return `${direction * (180 - (sa + ea)) * easing(progress) + rotation}deg`;
72
- });
73
- const layerStyle = {
74
- width: size,
75
- height: size
76
- };
77
- const viewportStyle = {
78
- width: size,
79
- height: size
80
- };
81
- if (!reduceMotion) {
82
- layerStyle.transform = [{
83
- rotate: timer.interpolate({
84
- inputRange: [0, 1],
85
- outputRange: [`${0 + ea + sa}deg`, `${2 * 360 + ea + sa}deg`]
86
- })
87
- }];
88
- viewportStyle.transform = [{
89
- translateY: index ? -size / 2 : 0
90
- }, {
91
- rotate: timer.interpolate({
92
- inputRange,
93
- outputRange
94
- })
95
- }];
96
- }
97
- const offsetStyle = index ? {
98
- top: size / 2
99
- } : null;
100
- const lineStyle = {
101
- width: size,
102
- height: size,
103
- borderColor: color,
104
- borderWidth: thickness,
105
- borderRadius: size / 2
106
- };
107
- return /*#__PURE__*/_jsx(Animated.View, {
108
- style: [styles.layer],
109
- children: /*#__PURE__*/_jsx(Animated.View, {
110
- style: layerStyle,
111
- children: /*#__PURE__*/_jsx(Animated.View, {
112
- style: [containerStyle, offsetStyle],
113
- collapsable: false,
114
- children: /*#__PURE__*/_jsx(Animated.View, {
115
- style: viewportStyle,
116
- children: /*#__PURE__*/_jsx(Animated.View, {
117
- style: containerStyle,
118
- collapsable: false,
119
- children: /*#__PURE__*/_jsx(Animated.View, {
120
- style: lineStyle
121
- })
122
- })
123
- })
124
- })
125
- })
126
- }, index);
127
- })
128
- })
129
- });
130
- });
131
- Spinner.displayName = 'Spinner';
132
- Spinner.propTypes = propTypes;
133
- const styles = StyleSheet.create({
134
- container: {
135
- flexGrow: 0,
136
- flexShrink: 0
137
- },
138
- layer: {
139
- ...StyleSheet.absoluteFillObject,
140
- justifyContent: 'center',
141
- alignItems: 'center'
142
- }
143
- });
144
- export default Spinner;
@@ -1,44 +0,0 @@
1
- import React from 'react';
2
- import PropTypes from 'prop-types';
3
- import { useThemeTokens } from '../ThemeProvider';
4
- import { getTokensPropType, variantProp } from '../utils/props';
5
- import Spinner from './Spinner';
6
-
7
- /**
8
- * `ActivityIndicator` renders a visual loading state.
9
- * It does not handle positioning or layout of that visual loader.
10
- */
11
- import { jsx as _jsx } from "react/jsx-runtime";
12
- const ActivityIndicator = _ref => {
13
- let {
14
- variant,
15
- tokens,
16
- label,
17
- isStatic = false
18
- } = _ref;
19
- const {
20
- size,
21
- color,
22
- thickness
23
- } = useThemeTokens('ActivityIndicator', tokens, variant);
24
- return /*#__PURE__*/_jsx(Spinner, {
25
- size: size,
26
- color: color,
27
- thickness: thickness,
28
- label: label,
29
- isStatic: isStatic
30
- });
31
- };
32
- ActivityIndicator.propTypes = {
33
- variant: variantProp.propType,
34
- tokens: getTokensPropType('ActivityIndicator'),
35
- /**
36
- * A visually hidden accessible label describing the action taking place
37
- */
38
- label: PropTypes.string.isRequired,
39
- /**
40
- * If true, it should render a static spinner
41
- */
42
- isStatic: PropTypes.bool
43
- };
44
- export default ActivityIndicator;
@@ -1,14 +0,0 @@
1
- import PropTypes from 'prop-types';
2
-
3
- // these could be specified by the theme
4
- export const DURATION = 1800;
5
- export const MIN_EMPTY_ANGLE = 60;
6
- export const MIN_STROKE_ANGLE = 30;
7
- export const BEZIER = [0.42, 0.0, 0.58, 1.0];
8
- export const propTypes = {
9
- color: PropTypes.string.isRequired,
10
- label: PropTypes.string.isRequired,
11
- size: PropTypes.number.isRequired,
12
- thickness: PropTypes.number.isRequired,
13
- isStatic: PropTypes.bool
14
- };
@@ -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;