@telus-uds/components-base 1.66.0 → 1.67.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 (486) hide show
  1. package/CHANGELOG.md +23 -3
  2. package/lib/A11yInfoProvider/index.js +5 -20
  3. package/lib/A11yText/index.js +3 -17
  4. package/lib/ActivityIndicator/Spinner.js +2 -9
  5. package/lib/ActivityIndicator/Spinner.native.js +4 -27
  6. package/lib/ActivityIndicator/index.js +1 -13
  7. package/lib/ActivityIndicator/shared.js +0 -3
  8. package/lib/Autocomplete/Autocomplete.js +34 -85
  9. package/lib/Autocomplete/Loading.js +0 -10
  10. package/lib/Autocomplete/Suggestions.js +0 -11
  11. package/lib/Autocomplete/index.js +0 -3
  12. package/lib/BaseProvider/HydrationContext.js +4 -18
  13. package/lib/BaseProvider/index.js +0 -12
  14. package/lib/Box/Box.js +10 -35
  15. package/lib/Box/index.js +0 -3
  16. package/lib/Button/Button.js +4 -13
  17. package/lib/Button/ButtonBase.js +23 -55
  18. package/lib/Button/ButtonDropdown.js +7 -32
  19. package/lib/Button/ButtonGroup.js +15 -48
  20. package/lib/Button/ButtonLink.js +3 -17
  21. package/lib/Button/index.js +0 -5
  22. package/lib/Button/propTypes.js +0 -15
  23. package/lib/Card/Card.js +3 -14
  24. package/lib/Card/CardBase.js +5 -16
  25. package/lib/Card/PressableCardBase.js +7 -30
  26. package/lib/Card/index.js +0 -7
  27. package/lib/Carousel/Carousel.js +22 -115
  28. package/lib/Carousel/CarouselContext.js +0 -14
  29. package/lib/Carousel/CarouselFirstFocus/CarouselFirstFocus.js +6 -18
  30. package/lib/Carousel/CarouselItem/CarouselItem.js +5 -20
  31. package/lib/Carousel/CarouselItem/index.js +0 -3
  32. package/lib/Carousel/CarouselStepTracker/CarouselStepTracker.js +0 -9
  33. package/lib/Carousel/CarouselStepTracker/index.js +0 -3
  34. package/lib/Carousel/CarouselTabs/CarouselTabs.js +5 -15
  35. package/lib/Carousel/CarouselTabs/CarouselTabsPanel.js +7 -16
  36. package/lib/Carousel/CarouselTabs/CarouselTabsPanelItem.js +2 -22
  37. package/lib/Carousel/CarouselTabs/index.js +0 -3
  38. package/lib/Carousel/CarouselThumbnail.js +1 -16
  39. package/lib/Carousel/CarouselThumbnailNavigation.js +0 -15
  40. package/lib/Carousel/index.js +0 -5
  41. package/lib/Checkbox/Checkbox.js +5 -44
  42. package/lib/Checkbox/CheckboxButton.js +7 -33
  43. package/lib/Checkbox/CheckboxGroup.js +14 -45
  44. package/lib/Checkbox/CheckboxInput.js +1 -11
  45. package/lib/Checkbox/CheckboxInput.native.js +0 -2
  46. package/lib/Checkbox/index.js +0 -4
  47. package/lib/CheckboxCard/CheckboxCard.js +4 -37
  48. package/lib/CheckboxCard/index.js +0 -3
  49. package/lib/CheckboxCardGroup/CheckboxCardGroup.js +216 -0
  50. package/lib/CheckboxCardGroup/index.js +10 -0
  51. package/lib/Divider/Divider.js +13 -24
  52. package/lib/Divider/index.js +0 -3
  53. package/lib/ExpandCollapse/Accordion.js +1 -9
  54. package/lib/ExpandCollapse/Control.js +10 -32
  55. package/lib/ExpandCollapse/ExpandCollapse.js +3 -19
  56. package/lib/ExpandCollapse/Panel.js +13 -38
  57. package/lib/ExpandCollapse/index.js +0 -5
  58. package/lib/Feedback/Feedback.js +13 -30
  59. package/lib/Feedback/index.js +0 -3
  60. package/lib/Fieldset/Fieldset.js +6 -37
  61. package/lib/Fieldset/FieldsetContainer.js +1 -10
  62. package/lib/Fieldset/FieldsetContainer.native.js +0 -8
  63. package/lib/Fieldset/Legend.js +1 -10
  64. package/lib/Fieldset/Legend.native.js +1 -13
  65. package/lib/Fieldset/index.js +0 -3
  66. package/lib/FlexGrid/Col/Col.js +10 -53
  67. package/lib/FlexGrid/Col/index.js +0 -3
  68. package/lib/FlexGrid/FlexGrid.js +3 -34
  69. package/lib/FlexGrid/Row/Row.js +0 -38
  70. package/lib/FlexGrid/Row/index.js +0 -3
  71. package/lib/FlexGrid/helpers/index.js +0 -4
  72. package/lib/FlexGrid/index.js +0 -3
  73. package/lib/FlexGrid/providers/GutterContext.js +0 -4
  74. package/lib/HorizontalScroll/HorizontalScroll.js +17 -45
  75. package/lib/HorizontalScroll/HorizontalScrollButton.js +1 -17
  76. package/lib/HorizontalScroll/ScrollViewEnd.js +5 -13
  77. package/lib/HorizontalScroll/ScrollViewEnd.native.js +1 -10
  78. package/lib/HorizontalScroll/index.js +0 -7
  79. package/lib/HorizontalScroll/itemPositions.js +8 -19
  80. package/lib/Icon/Icon.js +4 -17
  81. package/lib/Icon/IconText.js +5 -25
  82. package/lib/Icon/index.js +0 -6
  83. package/lib/IconButton/IconButton.js +5 -37
  84. package/lib/IconButton/index.js +0 -3
  85. package/lib/InputLabel/InputLabel.js +4 -28
  86. package/lib/InputLabel/LabelContent.js +2 -8
  87. package/lib/InputLabel/LabelContent.native.js +0 -8
  88. package/lib/InputLabel/index.js +0 -3
  89. package/lib/InputSupports/InputSupports.js +0 -21
  90. package/lib/InputSupports/index.js +0 -3
  91. package/lib/InputSupports/useInputSupports.js +2 -6
  92. package/lib/Link/ChevronLink.js +7 -18
  93. package/lib/Link/InlinePressable.js +0 -10
  94. package/lib/Link/InlinePressable.native.js +5 -18
  95. package/lib/Link/Link.js +0 -8
  96. package/lib/Link/LinkBase.js +17 -47
  97. package/lib/Link/TextButton.js +3 -16
  98. package/lib/Link/index.js +0 -5
  99. package/lib/List/List.js +5 -21
  100. package/lib/List/ListItem.js +1 -11
  101. package/lib/List/ListItemBase.js +5 -34
  102. package/lib/List/ListItemContent.js +1 -14
  103. package/lib/List/ListItemMark.js +3 -23
  104. package/lib/List/PressableListItemBase.js +2 -28
  105. package/lib/List/index.js +0 -4
  106. package/lib/Listbox/GroupControl.js +0 -14
  107. package/lib/Listbox/Listbox.js +15 -40
  108. package/lib/Listbox/ListboxContext.js +0 -7
  109. package/lib/Listbox/ListboxGroup.js +7 -19
  110. package/lib/Listbox/ListboxItem.js +3 -17
  111. package/lib/Listbox/ListboxOverlay.js +4 -20
  112. package/lib/Listbox/PressableItem.js +3 -18
  113. package/lib/Listbox/index.js +0 -3
  114. package/lib/Modal/Modal.js +94 -45
  115. package/lib/Modal/ModalContent.js +184 -0
  116. package/lib/Modal/index.js +0 -3
  117. package/lib/MultiSelectFilter/ModalOverlay.js +1 -20
  118. package/lib/MultiSelectFilter/MultiSelectFilter.js +20 -69
  119. package/lib/MultiSelectFilter/index.js +0 -3
  120. package/lib/Notification/Notification.js +11 -38
  121. package/lib/Notification/index.js +0 -3
  122. package/lib/Pagination/PageButton.js +2 -22
  123. package/lib/Pagination/Pagination.js +21 -42
  124. package/lib/Pagination/SideButton.js +0 -24
  125. package/lib/Pagination/index.js +0 -3
  126. package/lib/Pagination/usePagination.js +4 -9
  127. package/lib/Progress/Progress.js +3 -17
  128. package/lib/Progress/ProgressBar.js +3 -25
  129. package/lib/Progress/ProgressBarBackground.js +0 -12
  130. package/lib/Progress/index.js +0 -4
  131. package/lib/QuickLinks/QuickLinks.js +1 -18
  132. package/lib/QuickLinks/QuickLinksCard.js +1 -11
  133. package/lib/QuickLinks/QuickLinksItem.js +3 -17
  134. package/lib/QuickLinks/index.js +0 -4
  135. package/lib/QuickLinksFeature/QuickLinksFeature.js +3 -20
  136. package/lib/QuickLinksFeature/QuickLinksFeatureItem.js +7 -30
  137. package/lib/QuickLinksFeature/index.js +0 -4
  138. package/lib/Radio/Radio.js +5 -39
  139. package/lib/Radio/RadioButton.js +7 -26
  140. package/lib/Radio/RadioGroup.js +6 -39
  141. package/lib/Radio/RadioInput.js +1 -11
  142. package/lib/Radio/RadioInput.native.js +0 -2
  143. package/lib/Radio/index.js +0 -4
  144. package/lib/RadioCard/RadioCard.js +5 -38
  145. package/lib/RadioCard/RadioCardGroup.js +25 -40
  146. package/lib/RadioCard/index.js +0 -4
  147. package/lib/Responsive/Responsive.js +1 -14
  148. package/lib/Responsive/index.js +0 -3
  149. package/lib/Search/Search.js +22 -45
  150. package/lib/Search/index.js +0 -3
  151. package/lib/Select/Group.js +0 -8
  152. package/lib/Select/Group.native.js +0 -6
  153. package/lib/Select/Item.js +0 -7
  154. package/lib/Select/Item.native.js +0 -2
  155. package/lib/Select/Picker.js +0 -8
  156. package/lib/Select/Picker.native.js +6 -22
  157. package/lib/Select/Select.js +9 -52
  158. package/lib/Select/index.js +0 -5
  159. package/lib/SideNav/Item.js +5 -29
  160. package/lib/SideNav/ItemContent.js +1 -14
  161. package/lib/SideNav/ItemsGroup.js +9 -31
  162. package/lib/SideNav/SideNav.js +9 -33
  163. package/lib/SideNav/index.js +0 -2
  164. package/lib/Skeleton/Skeleton.js +10 -42
  165. package/lib/Skeleton/index.js +0 -3
  166. package/lib/Skeleton/skeletonWebAnimation.js +0 -2
  167. package/lib/Skeleton/useSkeletonNativeAnimation.js +1 -9
  168. package/lib/SkipLink/SkipLink.js +7 -27
  169. package/lib/SkipLink/index.js +0 -3
  170. package/lib/Spacer/Spacer.js +4 -20
  171. package/lib/Spacer/index.js +0 -3
  172. package/lib/StackView/StackView.js +3 -21
  173. package/lib/StackView/StackWrap.js +11 -21
  174. package/lib/StackView/StackWrap.native.js +0 -3
  175. package/lib/StackView/StackWrapBox.js +5 -21
  176. package/lib/StackView/StackWrapGap.js +1 -14
  177. package/lib/StackView/common.js +0 -6
  178. package/lib/StackView/getStackedContent.js +10 -21
  179. package/lib/StackView/index.js +0 -5
  180. package/lib/StepTracker/Step.js +3 -27
  181. package/lib/StepTracker/StepTracker.js +5 -32
  182. package/lib/StepTracker/index.js +0 -3
  183. package/lib/Tabs/Tabs.js +7 -30
  184. package/lib/Tabs/TabsItem.js +13 -38
  185. package/lib/Tabs/index.js +0 -3
  186. package/lib/Tags/Tags.js +9 -42
  187. package/lib/Tags/index.js +0 -3
  188. package/lib/TextInput/TextArea.js +11 -20
  189. package/lib/TextInput/TextInput.js +7 -16
  190. package/lib/TextInput/TextInputBase.js +12 -58
  191. package/lib/TextInput/index.js +0 -3
  192. package/lib/TextInput/propTypes.js +0 -8
  193. package/lib/ThemeProvider/ThemeProvider.js +10 -18
  194. package/lib/ThemeProvider/index.js +0 -9
  195. package/lib/ThemeProvider/useSetTheme.js +6 -9
  196. package/lib/ThemeProvider/useTheme.js +2 -7
  197. package/lib/ThemeProvider/useThemeTokens.js +1 -9
  198. package/lib/ThemeProvider/utils/index.js +0 -4
  199. package/lib/ThemeProvider/utils/styles.js +14 -35
  200. package/lib/ThemeProvider/utils/theme-tokens.js +15 -43
  201. package/lib/Timeline/Timeline.js +11 -27
  202. package/lib/Timeline/index.js +0 -3
  203. package/lib/ToggleSwitch/ToggleSwitch.js +12 -43
  204. package/lib/ToggleSwitch/ToggleSwitchGroup.js +4 -38
  205. package/lib/ToggleSwitch/index.js +0 -3
  206. package/lib/Tooltip/Backdrop.js +4 -11
  207. package/lib/Tooltip/Backdrop.native.js +1 -14
  208. package/lib/Tooltip/Tooltip.js +9 -37
  209. package/lib/Tooltip/Tooltip.native.js +14 -45
  210. package/lib/Tooltip/getTooltipPosition.js +26 -31
  211. package/lib/Tooltip/index.js +0 -5
  212. package/lib/Tooltip/shared.js +0 -10
  213. package/lib/TooltipButton/TooltipButton.js +5 -20
  214. package/lib/TooltipButton/index.js +0 -3
  215. package/lib/Typography/Typography.js +15 -38
  216. package/lib/Typography/index.js +0 -3
  217. package/lib/Validator/Validator.js +10 -58
  218. package/lib/Validator/index.js +0 -3
  219. package/lib/ViewportProvider/ViewportProvider.js +1 -13
  220. package/lib/ViewportProvider/index.js +0 -5
  221. package/lib/ViewportProvider/useViewport.js +0 -4
  222. package/lib/ViewportProvider/useViewportListener.js +3 -12
  223. package/lib/index.js +8 -71
  224. package/lib/utils/BaseView/BaseView.js +3 -17
  225. package/lib/utils/BaseView/BaseView.native.js +0 -3
  226. package/lib/utils/BaseView/index.js +0 -3
  227. package/lib/utils/a11y/index.js +0 -4
  228. package/lib/utils/a11y/semantics.js +14 -32
  229. package/lib/utils/a11y/textSize.js +1 -8
  230. package/lib/utils/animation/index.js +0 -2
  231. package/lib/utils/animation/useVerticalExpandAnimation.js +5 -18
  232. package/lib/utils/children.js +16 -28
  233. package/lib/utils/containUniqueFields.js +2 -5
  234. package/lib/utils/floating-ui/index.js +0 -1
  235. package/lib/utils/floating-ui/index.native.js +0 -1
  236. package/lib/utils/hasOwnProperty.js +0 -1
  237. package/lib/utils/htmlAttrs.js +2 -4
  238. package/lib/utils/index.js +0 -31
  239. package/lib/utils/info/index.js +0 -4
  240. package/lib/utils/info/platform/index.js +0 -4
  241. package/lib/utils/info/versions.js +0 -3
  242. package/lib/utils/input.js +12 -24
  243. package/lib/utils/pressability.js +7 -21
  244. package/lib/utils/props/a11yProps.js +19 -25
  245. package/lib/utils/props/clickProps.js +0 -4
  246. package/lib/utils/props/componentPropType.js +0 -14
  247. package/lib/utils/props/copyPropTypes.js +0 -4
  248. package/lib/utils/props/getPropSelector.js +11 -12
  249. package/lib/utils/props/handlerProps.js +2 -23
  250. package/lib/utils/props/hrefAttrsProp.js +0 -4
  251. package/lib/utils/props/index.js +0 -22
  252. package/lib/utils/props/inputSupportsProps.js +0 -9
  253. package/lib/utils/props/linkProps.js +2 -12
  254. package/lib/utils/props/paddingProp.js +0 -3
  255. package/lib/utils/props/pressProps.js +2 -8
  256. package/lib/utils/props/rectProp.js +0 -3
  257. package/lib/utils/props/responsiveProps.js +1 -5
  258. package/lib/utils/props/selectSystemProps.js +4 -6
  259. package/lib/utils/props/spacingProps.js +3 -10
  260. package/lib/utils/props/textInputProps.js +10 -31
  261. package/lib/utils/props/textProps.js +6 -11
  262. package/lib/utils/props/tokens.js +7 -26
  263. package/lib/utils/props/variantProp.js +0 -3
  264. package/lib/utils/props/viewProps.js +0 -5
  265. package/lib/utils/ssr.js +13 -33
  266. package/lib/utils/useCopy.js +3 -6
  267. package/lib/utils/useHash.js +5 -10
  268. package/lib/utils/useHash.native.js +0 -2
  269. package/lib/utils/useOverlaidPosition.js +6 -29
  270. package/lib/utils/useResponsiveProp.js +6 -13
  271. package/lib/utils/useSafeLayoutEffect.js +5 -10
  272. package/lib/utils/useScrollBlocking.js +3 -11
  273. package/lib/utils/useScrollBlocking.native.js +0 -2
  274. package/lib/utils/useSpacingScale.js +5 -8
  275. package/lib/utils/useUniqueId.js +0 -4
  276. package/lib/utils/withLinkRouter.js +13 -18
  277. package/lib-module/A11yInfoProvider/index.js +5 -9
  278. package/lib-module/A11yText/index.js +3 -4
  279. package/lib-module/ActivityIndicator/Spinner.js +2 -2
  280. package/lib-module/ActivityIndicator/Spinner.native.js +4 -6
  281. package/lib-module/ActivityIndicator/index.js +1 -5
  282. package/lib-module/ActivityIndicator/shared.js +2 -1
  283. package/lib-module/Autocomplete/Autocomplete.js +34 -59
  284. package/lib-module/Autocomplete/Loading.js +0 -2
  285. package/lib-module/BaseProvider/HydrationContext.js +4 -7
  286. package/lib-module/BaseProvider/index.js +0 -3
  287. package/lib-module/Box/Box.js +10 -24
  288. package/lib-module/Button/Button.js +4 -2
  289. package/lib-module/Button/ButtonBase.js +23 -35
  290. package/lib-module/Button/ButtonDropdown.js +7 -16
  291. package/lib-module/Button/ButtonGroup.js +15 -32
  292. package/lib-module/Button/ButtonLink.js +3 -2
  293. package/lib-module/Button/propTypes.js +0 -7
  294. package/lib-module/Card/Card.js +3 -2
  295. package/lib-module/Card/CardBase.js +5 -4
  296. package/lib-module/Card/PressableCardBase.js +7 -11
  297. package/lib-module/Carousel/Carousel.js +22 -60
  298. package/lib-module/Carousel/CarouselContext.js +0 -5
  299. package/lib-module/Carousel/CarouselFirstFocus/CarouselFirstFocus.js +7 -5
  300. package/lib-module/Carousel/CarouselItem/CarouselItem.js +5 -11
  301. package/lib-module/Carousel/CarouselStepTracker/CarouselStepTracker.js +0 -2
  302. package/lib-module/Carousel/CarouselTabs/CarouselTabs.js +3 -4
  303. package/lib-module/Carousel/CarouselTabs/CarouselTabsPanel.js +7 -6
  304. package/lib-module/Carousel/CarouselTabs/CarouselTabsPanelItem.js +2 -10
  305. package/lib-module/Carousel/CarouselThumbnail.js +1 -7
  306. package/lib-module/Carousel/CarouselThumbnailNavigation.js +0 -2
  307. package/lib-module/Checkbox/Checkbox.js +5 -23
  308. package/lib-module/Checkbox/CheckboxButton.js +7 -17
  309. package/lib-module/Checkbox/CheckboxGroup.js +14 -31
  310. package/lib-module/Checkbox/CheckboxInput.js +1 -3
  311. package/lib-module/Checkbox/CheckboxInput.native.js +0 -1
  312. package/lib-module/CheckboxCard/CheckboxCard.js +4 -21
  313. package/lib-module/CheckboxCardGroup/CheckboxCardGroup.js +206 -0
  314. package/lib-module/CheckboxCardGroup/index.js +2 -0
  315. package/lib-module/Divider/Divider.js +13 -11
  316. package/lib-module/ExpandCollapse/Accordion.js +1 -1
  317. package/lib-module/ExpandCollapse/Control.js +10 -17
  318. package/lib-module/ExpandCollapse/ExpandCollapse.js +3 -9
  319. package/lib-module/ExpandCollapse/Panel.js +13 -23
  320. package/lib-module/Feedback/Feedback.js +13 -16
  321. package/lib-module/Fieldset/Fieldset.js +6 -25
  322. package/lib-module/Fieldset/FieldsetContainer.js +1 -1
  323. package/lib-module/Fieldset/FieldsetContainer.native.js +0 -1
  324. package/lib-module/Fieldset/Legend.js +1 -1
  325. package/lib-module/Fieldset/Legend.native.js +1 -1
  326. package/lib-module/FlexGrid/Col/Col.js +10 -37
  327. package/lib-module/FlexGrid/FlexGrid.js +3 -17
  328. package/lib-module/FlexGrid/Row/Row.js +0 -25
  329. package/lib-module/FlexGrid/helpers/index.js +0 -3
  330. package/lib-module/HorizontalScroll/HorizontalScroll.js +17 -27
  331. package/lib-module/HorizontalScroll/HorizontalScrollButton.js +1 -3
  332. package/lib-module/HorizontalScroll/ScrollViewEnd.js +5 -4
  333. package/lib-module/HorizontalScroll/ScrollViewEnd.native.js +0 -1
  334. package/lib-module/HorizontalScroll/itemPositions.js +11 -10
  335. package/lib-module/Icon/Icon.js +4 -8
  336. package/lib-module/Icon/IconText.js +6 -17
  337. package/lib-module/IconButton/IconButton.js +7 -20
  338. package/lib-module/InputLabel/InputLabel.js +4 -13
  339. package/lib-module/InputLabel/LabelContent.js +2 -1
  340. package/lib-module/InputLabel/LabelContent.native.js +0 -1
  341. package/lib-module/InputSupports/InputSupports.js +0 -9
  342. package/lib-module/InputSupports/useInputSupports.js +2 -4
  343. package/lib-module/Link/ChevronLink.js +7 -7
  344. package/lib-module/Link/InlinePressable.js +0 -2
  345. package/lib-module/Link/InlinePressable.native.js +4 -12
  346. package/lib-module/Link/LinkBase.js +17 -25
  347. package/lib-module/Link/TextButton.js +3 -5
  348. package/lib-module/List/List.js +5 -9
  349. package/lib-module/List/ListItem.js +1 -1
  350. package/lib-module/List/ListItemBase.js +5 -17
  351. package/lib-module/List/ListItemContent.js +1 -4
  352. package/lib-module/List/ListItemMark.js +3 -16
  353. package/lib-module/List/PressableListItemBase.js +2 -6
  354. package/lib-module/Listbox/GroupControl.js +0 -2
  355. package/lib-module/Listbox/Listbox.js +15 -23
  356. package/lib-module/Listbox/ListboxContext.js +0 -2
  357. package/lib-module/Listbox/ListboxGroup.js +6 -4
  358. package/lib-module/Listbox/ListboxItem.js +2 -1
  359. package/lib-module/Listbox/ListboxOverlay.js +3 -4
  360. package/lib-module/Listbox/PressableItem.js +2 -7
  361. package/lib-module/Modal/Modal.js +94 -25
  362. package/lib-module/Modal/ModalContent.js +175 -0
  363. package/lib-module/MultiSelectFilter/ModalOverlay.js +1 -4
  364. package/lib-module/MultiSelectFilter/MultiSelectFilter.js +20 -42
  365. package/lib-module/Notification/Notification.js +11 -22
  366. package/lib-module/Pagination/PageButton.js +2 -6
  367. package/lib-module/Pagination/Pagination.js +21 -21
  368. package/lib-module/Pagination/SideButton.js +3 -8
  369. package/lib-module/Pagination/usePagination.js +4 -8
  370. package/lib-module/Progress/Progress.js +3 -7
  371. package/lib-module/Progress/ProgressBar.js +3 -11
  372. package/lib-module/Progress/ProgressBarBackground.js +0 -2
  373. package/lib-module/QuickLinks/QuickLinks.js +1 -6
  374. package/lib-module/QuickLinks/QuickLinksCard.js +1 -3
  375. package/lib-module/QuickLinks/QuickLinksItem.js +3 -2
  376. package/lib-module/QuickLinksFeature/QuickLinksFeature.js +5 -9
  377. package/lib-module/QuickLinksFeature/QuickLinksFeatureItem.js +9 -13
  378. package/lib-module/Radio/Radio.js +5 -22
  379. package/lib-module/Radio/RadioButton.js +8 -10
  380. package/lib-module/Radio/RadioGroup.js +6 -25
  381. package/lib-module/Radio/RadioInput.js +1 -3
  382. package/lib-module/Radio/RadioInput.native.js +0 -1
  383. package/lib-module/RadioCard/RadioCard.js +5 -21
  384. package/lib-module/RadioCard/RadioCardGroup.js +25 -27
  385. package/lib-module/Responsive/Responsive.js +1 -6
  386. package/lib-module/Search/Search.js +22 -31
  387. package/lib-module/Select/Group.js +0 -3
  388. package/lib-module/Select/Group.native.js +0 -3
  389. package/lib-module/Select/Item.js +0 -3
  390. package/lib-module/Select/Item.native.js +0 -1
  391. package/lib-module/Select/Picker.native.js +8 -10
  392. package/lib-module/Select/Select.js +10 -35
  393. package/lib-module/SideNav/Item.js +5 -16
  394. package/lib-module/SideNav/ItemContent.js +1 -2
  395. package/lib-module/SideNav/ItemsGroup.js +9 -19
  396. package/lib-module/SideNav/SideNav.js +9 -22
  397. package/lib-module/Skeleton/Skeleton.js +10 -25
  398. package/lib-module/Skeleton/skeletonWebAnimation.js +0 -1
  399. package/lib-module/Skeleton/useSkeletonNativeAnimation.js +1 -3
  400. package/lib-module/SkipLink/SkipLink.js +7 -9
  401. package/lib-module/Spacer/Spacer.js +4 -7
  402. package/lib-module/StackView/StackView.js +3 -7
  403. package/lib-module/StackView/StackWrap.js +13 -13
  404. package/lib-module/StackView/StackWrap.native.js +2 -1
  405. package/lib-module/StackView/StackWrapBox.js +5 -8
  406. package/lib-module/StackView/StackWrapGap.js +1 -1
  407. package/lib-module/StackView/getStackedContent.js +10 -10
  408. package/lib-module/StepTracker/Step.js +3 -14
  409. package/lib-module/StepTracker/StepTracker.js +5 -13
  410. package/lib-module/Tabs/Tabs.js +7 -16
  411. package/lib-module/Tabs/TabsItem.js +13 -16
  412. package/lib-module/Tags/Tags.js +9 -26
  413. package/lib-module/TextInput/TextArea.js +11 -8
  414. package/lib-module/TextInput/TextInput.js +7 -5
  415. package/lib-module/TextInput/TextInputBase.js +13 -39
  416. package/lib-module/TextInput/propTypes.js +3 -7
  417. package/lib-module/ThemeProvider/ThemeProvider.js +10 -9
  418. package/lib-module/ThemeProvider/useSetTheme.js +6 -7
  419. package/lib-module/ThemeProvider/useTheme.js +2 -5
  420. package/lib-module/ThemeProvider/useThemeTokens.js +1 -2
  421. package/lib-module/ThemeProvider/utils/styles.js +15 -27
  422. package/lib-module/ThemeProvider/utils/theme-tokens.js +15 -20
  423. package/lib-module/Timeline/Timeline.js +11 -17
  424. package/lib-module/ToggleSwitch/ToggleSwitch.js +13 -26
  425. package/lib-module/ToggleSwitch/ToggleSwitchGroup.js +4 -23
  426. package/lib-module/Tooltip/Backdrop.js +4 -7
  427. package/lib-module/Tooltip/Backdrop.native.js +1 -4
  428. package/lib-module/Tooltip/Tooltip.js +9 -18
  429. package/lib-module/Tooltip/Tooltip.native.js +14 -23
  430. package/lib-module/Tooltip/getTooltipPosition.js +26 -30
  431. package/lib-module/Tooltip/shared.js +0 -6
  432. package/lib-module/TooltipButton/TooltipButton.js +5 -8
  433. package/lib-module/Typography/Typography.js +14 -22
  434. package/lib-module/Validator/Validator.js +10 -42
  435. package/lib-module/ViewportProvider/ViewportProvider.js +1 -3
  436. package/lib-module/ViewportProvider/useViewportListener.js +6 -8
  437. package/lib-module/index.js +1 -0
  438. package/lib-module/utils/BaseView/BaseView.js +3 -4
  439. package/lib-module/utils/BaseView/BaseView.native.js +0 -1
  440. package/lib-module/utils/a11y/semantics.js +14 -27
  441. package/lib-module/utils/a11y/textSize.js +1 -2
  442. package/lib-module/utils/animation/useVerticalExpandAnimation.js +8 -11
  443. package/lib-module/utils/children.js +17 -19
  444. package/lib-module/utils/containUniqueFields.js +2 -4
  445. package/lib-module/utils/htmlAttrs.js +2 -1
  446. package/lib-module/utils/info/index.js +2 -1
  447. package/lib-module/utils/info/platform/index.js +4 -1
  448. package/lib-module/utils/info/versions.js +2 -1
  449. package/lib-module/utils/input.js +11 -19
  450. package/lib-module/utils/pressability.js +8 -7
  451. package/lib-module/utils/props/a11yProps.js +22 -20
  452. package/lib-module/utils/props/clickProps.js +0 -1
  453. package/lib-module/utils/props/componentPropType.js +0 -13
  454. package/lib-module/utils/props/getPropSelector.js +12 -8
  455. package/lib-module/utils/props/handlerProps.js +2 -19
  456. package/lib-module/utils/props/hrefAttrsProp.js +2 -2
  457. package/lib-module/utils/props/inputSupportsProps.js +0 -6
  458. package/lib-module/utils/props/linkProps.js +2 -3
  459. package/lib-module/utils/props/pressProps.js +2 -2
  460. package/lib-module/utils/props/responsiveProps.js +1 -3
  461. package/lib-module/utils/props/selectSystemProps.js +4 -5
  462. package/lib-module/utils/props/spacingProps.js +4 -3
  463. package/lib-module/utils/props/textInputProps.js +13 -27
  464. package/lib-module/utils/props/textProps.js +9 -7
  465. package/lib-module/utils/props/tokens.js +10 -13
  466. package/lib-module/utils/props/variantProp.js +1 -1
  467. package/lib-module/utils/props/viewProps.js +0 -1
  468. package/lib-module/utils/ssr.js +14 -18
  469. package/lib-module/utils/useCopy.js +3 -5
  470. package/lib-module/utils/useHash.js +5 -9
  471. package/lib-module/utils/useHash.native.js +0 -1
  472. package/lib-module/utils/useOverlaidPosition.js +6 -25
  473. package/lib-module/utils/useResponsiveProp.js +6 -7
  474. package/lib-module/utils/useSafeLayoutEffect.js +5 -7
  475. package/lib-module/utils/useScrollBlocking.js +3 -10
  476. package/lib-module/utils/useSpacingScale.js +4 -4
  477. package/lib-module/utils/useUniqueId.js +0 -2
  478. package/lib-module/utils/withLinkRouter.js +13 -10
  479. package/package.json +2 -2
  480. package/src/Checkbox/CheckboxGroup.jsx +10 -8
  481. package/src/CheckboxCardGroup/CheckboxCardGroup.jsx +231 -0
  482. package/src/CheckboxCardGroup/index.js +3 -0
  483. package/src/Modal/Modal.jsx +98 -5
  484. package/src/Modal/ModalContent.jsx +171 -0
  485. package/src/RadioCard/RadioCardGroup.jsx +23 -2
  486. package/src/index.js +1 -0
@@ -4,47 +4,26 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
-
8
7
  var _react = _interopRequireWildcard(require("react"));
9
-
10
8
  var _Dimensions = _interopRequireDefault(require("react-native-web/dist/cjs/exports/Dimensions"));
11
-
12
9
  var _Platform = _interopRequireDefault(require("react-native-web/dist/cjs/exports/Platform"));
13
-
14
10
  var _Pressable = _interopRequireDefault(require("react-native-web/dist/cjs/exports/Pressable"));
15
-
16
11
  var _StyleSheet = _interopRequireDefault(require("react-native-web/dist/cjs/exports/StyleSheet"));
17
-
18
12
  var _Text = _interopRequireDefault(require("react-native-web/dist/cjs/exports/Text"));
19
-
20
13
  var _View = _interopRequireDefault(require("react-native-web/dist/cjs/exports/View"));
21
-
22
14
  var _shared = _interopRequireDefault(require("./shared"));
23
-
24
15
  var _ThemeProvider = require("../ThemeProvider");
25
-
26
16
  var _utils = require("../utils");
27
-
28
17
  var _Backdrop = _interopRequireDefault(require("./Backdrop"));
29
-
30
18
  var _getTooltipPosition = _interopRequireDefault(require("./getTooltipPosition"));
31
-
32
19
  var _TooltipButton = _interopRequireDefault(require("../TooltipButton"));
33
-
34
20
  var _useCopy = _interopRequireDefault(require("../utils/useCopy"));
35
-
36
21
  var _dictionary = _interopRequireDefault(require("./dictionary"));
37
-
38
22
  var _jsxRuntime = require("react/jsx-runtime");
39
-
40
23
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
41
-
42
24
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
43
-
44
25
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
45
-
46
26
  const [selectProps, selectedSystemPropTypes] = (0, _utils.selectSystemProps)([_utils.a11yProps, _utils.viewProps]);
47
-
48
27
  const selectTooltipStyles = _ref => {
49
28
  let {
50
29
  backgroundColor,
@@ -63,7 +42,6 @@ const selectTooltipStyles = _ref => {
63
42
  borderRadius
64
43
  };
65
44
  };
66
-
67
45
  const selectTooltipShadowStyles = _ref2 => {
68
46
  let {
69
47
  shadow,
@@ -74,7 +52,6 @@ const selectTooltipShadowStyles = _ref2 => {
74
52
  ...(0, _ThemeProvider.applyShadowToken)(shadow)
75
53
  };
76
54
  };
77
-
78
55
  const selectTooltipPositionStyles = _ref3 => {
79
56
  let {
80
57
  top,
@@ -87,7 +64,6 @@ const selectTooltipPositionStyles = _ref3 => {
87
64
  width
88
65
  };
89
66
  };
90
-
91
67
  const selectArrowStyles = (_ref4, _ref5) => {
92
68
  let {
93
69
  backgroundColor,
@@ -101,13 +77,15 @@ const selectArrowStyles = (_ref4, _ref5) => {
101
77
  height: tooltipHeight
102
78
  } = _ref5;
103
79
  // the arrow width is actually a diagonal of the rectangle that we'll use as a tip
104
- const rectangleSide = Math.sqrt(arrowWidth * arrowWidth / 2); // position the arrow at the side and center of the tooltip - this happens before rotation
105
- // so we use the rectangle size as basis
80
+ const rectangleSide = Math.sqrt(arrowWidth * arrowWidth / 2);
106
81
 
82
+ // position the arrow at the side and center of the tooltip - this happens before rotation
83
+ // so we use the rectangle size as basis
107
84
  const verticalOffset = -1 * rectangleSide / 2;
108
- const horizontalOffset = rectangleSide / 2; // percentage-based absolute positioning doesn't act well on native, so we have to
109
- // calculate the pixel values
85
+ const horizontalOffset = rectangleSide / 2;
110
86
 
87
+ // percentage-based absolute positioning doesn't act well on native, so we have to
88
+ // calculate the pixel values
111
89
  const directionalStyles = {
112
90
  above: {
113
91
  bottom: verticalOffset,
@@ -148,13 +126,12 @@ const selectArrowStyles = (_ref4, _ref5) => {
148
126
  ...directionalStyles[position]
149
127
  };
150
128
  };
151
-
152
129
  const selectTextStyles = tokens => (0, _ThemeProvider.applyTextStyles)((0, _utils.selectTokens)('Typography', tokens));
153
-
154
130
  const defaultControl = (pressableState, variant) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_TooltipButton.default, {
155
131
  pressableState: pressableState,
156
132
  variant: variant
157
133
  });
134
+
158
135
  /**
159
136
  * Tooltip provides a descriptive and detailed explanation or instructions. It can be used next to an input label
160
137
  * to help a user fill it in, or as a standalone component.
@@ -170,8 +147,6 @@ const defaultControl = (pressableState, variant) => /*#__PURE__*/(0, _jsxRuntime
170
147
  * - You may use one when the information is useful only to a small percentage of users (ie. tech savvy people wouldn't need this info).
171
148
  * - Tooltips may also be useful when vertical space is an issue.
172
149
  */
173
-
174
-
175
150
  const Tooltip = /*#__PURE__*/(0, _react.forwardRef)((_ref6, ref) => {
176
151
  let {
177
152
  children,
@@ -207,17 +182,13 @@ const Tooltip = /*#__PURE__*/(0, _react.forwardRef)((_ref6, ref) => {
207
182
  } = _ref7;
208
183
  setWindowDimensions(window);
209
184
  });
210
-
211
185
  return () => subscription === null || subscription === void 0 ? void 0 : subscription.remove();
212
186
  });
213
-
214
187
  const toggleIsOpen = () => {
215
188
  onPress();
216
189
  setIsOpen(!isOpen);
217
190
  };
218
-
219
191
  const close = () => setIsOpen(false);
220
-
221
192
  const getPressableState = _ref8 => {
222
193
  let {
223
194
  pressed,
@@ -230,7 +201,6 @@ const Tooltip = /*#__PURE__*/(0, _react.forwardRef)((_ref6, ref) => {
230
201
  focus: focused
231
202
  };
232
203
  };
233
-
234
204
  const onTooltipLayout = _ref9 => {
235
205
  let {
236
206
  nativeEvent: {
@@ -240,7 +210,6 @@ const Tooltip = /*#__PURE__*/(0, _react.forwardRef)((_ref6, ref) => {
240
210
  }
241
211
  }
242
212
  } = _ref9;
243
-
244
213
  if (tooltipDimensions === null || tooltipDimensions.width !== width || tooltipDimensions.height !== height) {
245
214
  setTooltipDimensions({
246
215
  width: _Platform.default.select({
@@ -252,7 +221,6 @@ const Tooltip = /*#__PURE__*/(0, _react.forwardRef)((_ref6, ref) => {
252
221
  });
253
222
  }
254
223
  };
255
-
256
224
  (0, _react.useEffect)(() => {
257
225
  if (isOpen) {
258
226
  controlRef.current.measureInWindow((x, y, width, height) => {
@@ -276,19 +244,18 @@ const Tooltip = /*#__PURE__*/(0, _react.forwardRef)((_ref6, ref) => {
276
244
  if (tooltipPosition !== null && !(tooltipPosition !== null && tooltipPosition !== void 0 && tooltipPosition.isNormalized) || !isOpen || controlLayout === null || tooltipDimensions == null) {
277
245
  return;
278
246
  }
279
-
280
247
  const updatedPosition = (0, _getTooltipPosition.default)(position, {
281
248
  controlLayout,
282
249
  tooltipDimensions,
283
250
  windowDimensions,
284
251
  arrowWidth,
285
252
  arrowOffset
286
- }); // avoid ending up in an infinite normalization loop
253
+ });
287
254
 
255
+ // avoid ending up in an infinite normalization loop
288
256
  if (tooltipPosition !== null && tooltipPosition !== void 0 && tooltipPosition.isNormalized && updatedPosition.isNormalized) {
289
257
  return;
290
258
  }
291
-
292
259
  setTooltipPosition(updatedPosition);
293
260
  }, [isOpen, position, tooltipDimensions, controlLayout, windowDimensions, arrowWidth, arrowOffset, tooltipPosition]);
294
261
  const control = children !== undefined ? children : defaultControl;
@@ -324,9 +291,11 @@ const Tooltip = /*#__PURE__*/(0, _react.forwardRef)((_ref6, ref) => {
324
291
  onPress: close,
325
292
  children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_View.default, {
326
293
  ref: ref,
327
- style: [staticStyles.tooltip, selectTooltipShadowStyles(themeTokens), // applied separately so that it doesn't cover the arrow
294
+ style: [staticStyles.tooltip, selectTooltipShadowStyles(themeTokens),
295
+ // applied separately so that it doesn't cover the arrow
328
296
  tooltipPosition && selectTooltipPositionStyles(tooltipPosition), (tooltipPosition === null || (tooltipPosition === null || tooltipPosition === void 0 ? void 0 : tooltipPosition.isNormalized)) && staticStyles.tooltipHidden // visually hide the tooltip until we have a final measurement
329
297
  ],
298
+
330
299
  onLayout: onTooltipLayout,
331
300
  accessibilityRole: "alert",
332
301
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_View.default, {
@@ -343,12 +312,12 @@ const Tooltip = /*#__PURE__*/(0, _react.forwardRef)((_ref6, ref) => {
343
312
  });
344
313
  });
345
314
  Tooltip.displayName = 'NativeTooltip';
346
- Tooltip.propTypes = { ...selectedSystemPropTypes,
315
+ Tooltip.propTypes = {
316
+ ...selectedSystemPropTypes,
347
317
  ..._shared.default
348
318
  };
349
319
  var _default = Tooltip;
350
320
  exports.default = _default;
351
-
352
321
  const staticStyles = _StyleSheet.default.create({
353
322
  container: {
354
323
  alignItems: 'flex-start'
@@ -4,7 +4,6 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
-
8
7
  function normalizePosition(position) {
9
8
  const {
10
9
  left,
@@ -13,48 +12,42 @@ function normalizePosition(position) {
13
12
  top,
14
13
  width,
15
14
  ...rest
16
- } = position; // adjust the coordinates so that it fits within the window
15
+ } = position;
17
16
 
17
+ // adjust the coordinates so that it fits within the window
18
18
  const normalized = {
19
19
  left: Math.max(0, left),
20
20
  right: Math.max(0, right),
21
21
  top: Math.max(0, top),
22
22
  bottom // since it's ok the make the document grow downwards - no need to normalize here
23
-
24
23
  };
25
24
 
26
- const getAbsoluteDiff = (value1, value2) => Math.abs(Math.abs(value1) - Math.abs(value2)); // adjust the width by whatever has been subtracted from left or right
27
-
25
+ const getAbsoluteDiff = (value1, value2) => Math.abs(Math.abs(value1) - Math.abs(value2));
28
26
 
27
+ // adjust the width by whatever has been subtracted from left or right
29
28
  normalized.width = width - Math.abs(getAbsoluteDiff(left, normalized.left) - getAbsoluteDiff(right, normalized.right));
30
-
31
29
  if (normalized.top !== top) {
32
30
  normalized.bottom += normalized.top - top;
33
31
  }
34
-
35
32
  const isNormalized = normalized.right !== right || normalized.left !== left || normalized.top !== top;
36
- return { ...normalized,
33
+ return {
34
+ ...normalized,
37
35
  ...rest,
38
36
  isNormalized
39
37
  };
40
38
  }
41
-
42
39
  function invertPosition(position) {
43
40
  switch (position) {
44
41
  case 'above':
45
42
  return 'below';
46
-
47
43
  case 'below':
48
44
  return 'above';
49
-
50
45
  case 'left':
51
46
  return 'right';
52
-
53
47
  default:
54
48
  return 'left';
55
49
  }
56
50
  }
57
-
58
51
  function findRectByPosition(position, rectsArray) {
59
52
  return rectsArray.find(_ref => {
60
53
  let {
@@ -63,6 +56,7 @@ function findRectByPosition(position, rectsArray) {
63
56
  return rectPosition === position;
64
57
  });
65
58
  }
59
+
66
60
  /**
67
61
  * Used for absolute positioning of the tooltip. Since the tooltip is always centered relatively
68
62
  * to the control (button) and we have a limited set of positions, an easy and consistent way
@@ -71,8 +65,6 @@ function findRectByPosition(position, rectsArray) {
71
65
  * before it is shown, which makes it account for the width being limiting in styles, custom font
72
66
  * rendering, etc.
73
67
  */
74
-
75
-
76
68
  function getTooltipPosition(position, _ref2) {
77
69
  let {
78
70
  controlLayout,
@@ -103,8 +95,9 @@ function getTooltipPosition(position, _ref2) {
103
95
  const verticalBounds = {
104
96
  top: controlY,
105
97
  bottom: windowHeight - (controlY + controlHeight / 2 + tooltipHeight / 2)
106
- }; // calculate absolute coordinates for each of the potential positions (relative to window)
98
+ };
107
99
 
100
+ // calculate absolute coordinates for each of the potential positions (relative to window)
108
101
  const boundingRects = [{
109
102
  position: 'above',
110
103
  ...horizontalBounds,
@@ -128,42 +121,44 @@ function getTooltipPosition(position, _ref2) {
128
121
  }].map(rect => {
129
122
  // an absolute value representing how much of the tooltip is overflowing the window on each side
130
123
  const windowOverflow = Math.abs(Math.min(rect.top, 0) - Math.min(rect.left, 0) - Math.min(rect.right, 0) - Math.min(rect.bottom, 0));
131
- return { ...rect,
124
+ return {
125
+ ...rect,
132
126
  ...tooltipDimensions,
133
127
  overflow: windowOverflow,
134
128
  isNormalized: false
135
129
  };
136
- }); // the 'position' prop overrides the automatic positioning
130
+ });
137
131
 
132
+ // the 'position' prop overrides the automatic positioning
138
133
  if (position !== 'auto') {
139
- let rect = findRectByPosition(position, boundingRects); // check if the suggested 'position' fits in window
134
+ let rect = findRectByPosition(position, boundingRects);
140
135
 
136
+ // check if the suggested 'position' fits in window
141
137
  if (rect.overflow === 0) {
142
138
  return rect;
143
- } // otherwise try the inverted position (e.g. left -> right)
144
-
139
+ }
145
140
 
141
+ // otherwise try the inverted position (e.g. left -> right)
146
142
  rect = findRectByPosition(invertPosition(position), boundingRects);
147
-
148
143
  if (rect.overflow === 0) {
149
144
  return rect;
150
145
  }
151
146
  }
152
-
153
147
  const inWindow = boundingRects.filter(_ref3 => {
154
148
  let {
155
149
  overflow
156
150
  } = _ref3;
157
151
  return overflow === 0;
158
- }); // pick the first position that fits in window
159
- // (these are sorted clockwise which makes them show where one would expect them to be)
152
+ });
160
153
 
154
+ // pick the first position that fits in window
155
+ // (these are sorted clockwise which makes them show where one would expect them to be)
161
156
  if (inWindow.length > 0) {
162
157
  return inWindow[0];
163
- } // if all positions would end up being out of window bounds, let's pick the one that is
164
- // the least overflowing and normalize its position to fit within window bounds
165
-
158
+ }
166
159
 
160
+ // if all positions would end up being out of window bounds, let's pick the one that is
161
+ // the least overflowing and normalize its position to fit within window bounds
167
162
  boundingRects.sort((_ref4, _ref5) => {
168
163
  let {
169
164
  overflow: overflowA
@@ -173,11 +168,11 @@ function getTooltipPosition(position, _ref2) {
173
168
  } = _ref5;
174
169
  return overflowA - overflowB;
175
170
  });
176
- const leastOverflowing = boundingRects[0]; // prefer 'below' over 'above', since we can always expand the document downwards,
177
- // and 'above' might cause issues on small viewports with large tooltips
171
+ const leastOverflowing = boundingRects[0];
178
172
 
173
+ // prefer 'below' over 'above', since we can always expand the document downwards,
174
+ // and 'above' might cause issues on small viewports with large tooltips
179
175
  return normalizePosition(leastOverflowing.position === 'above' ? findRectByPosition('below', boundingRects) : leastOverflowing);
180
176
  }
181
-
182
177
  var _default = getTooltipPosition;
183
178
  exports.default = _default;
@@ -4,15 +4,10 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
-
8
7
  var _Dimensions = _interopRequireDefault(require("react-native-web/dist/cjs/exports/Dimensions"));
9
-
10
8
  var _Tooltip = _interopRequireDefault(require("./Tooltip"));
11
-
12
9
  var _Tooltip2 = _interopRequireDefault(require("./Tooltip.native"));
13
-
14
10
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
-
16
11
  const Tooltip = !_Dimensions.default.get('screen').width <= 340 ? _Tooltip2.default : _Tooltip.default;
17
12
  var _default = Tooltip;
18
13
  exports.default = _default;
@@ -4,45 +4,35 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
-
8
7
  var _propTypes = _interopRequireDefault(require("prop-types"));
9
-
10
8
  var _utils = require("../utils");
11
-
12
9
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
-
14
10
  const propTypes = {
15
11
  /**
16
12
  * Used to render the control (i.e. tooltip trigger). If a render function is used it will receive the
17
13
  * pressable state and tooltip variant as an argument.
18
14
  */
19
15
  children: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.node]),
20
-
21
16
  /**
22
17
  * The message. Can be raw text or text components.
23
18
  */
24
19
  content: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.node]),
25
-
26
20
  /**
27
21
  * Select English or French copy for the accessible label.
28
22
  */
29
23
  copy: _propTypes.default.oneOf(['en', 'fr']),
30
-
31
24
  /**
32
25
  * Use to place the tooltip in a specific location (only if it fits within viewport).
33
26
  */
34
27
  position: _propTypes.default.oneOf(['auto', 'above', 'right', 'below', 'left']),
35
-
36
28
  /**
37
29
  * Display tooltip icon button as an inline element.
38
30
  */
39
31
  inline: _propTypes.default.bool,
40
-
41
32
  /**
42
33
  * Callback function triggered when the tooltip is pressed.
43
34
  */
44
35
  onPress: _propTypes.default.func,
45
-
46
36
  /**
47
37
  * The `id` of the tooltip button.
48
38
  */
@@ -4,29 +4,17 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
-
8
7
  var _react = _interopRequireDefault(require("react"));
9
-
10
8
  var _View = _interopRequireDefault(require("react-native-web/dist/cjs/exports/View"));
11
-
12
9
  var _StyleSheet = _interopRequireDefault(require("react-native-web/dist/cjs/exports/StyleSheet"));
13
-
14
10
  var _Platform = _interopRequireDefault(require("react-native-web/dist/cjs/exports/Platform"));
15
-
16
11
  var _propTypes = _interopRequireDefault(require("prop-types"));
17
-
18
12
  var _ThemeProvider = require("../ThemeProvider");
19
-
20
13
  var _utils = require("../utils");
21
-
22
14
  var _Icon = _interopRequireDefault(require("../Icon"));
23
-
24
15
  var _jsxRuntime = require("react/jsx-runtime");
25
-
26
16
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
27
-
28
17
  const [selectProps, selectedSystemPropTypes] = (0, _utils.selectSystemProps)([_utils.a11yProps, _utils.viewProps]);
29
-
30
18
  const selectInnerContainerStyles = _ref => {
31
19
  let {
32
20
  borderRadius,
@@ -39,7 +27,6 @@ const selectInnerContainerStyles = _ref => {
39
27
  backgroundColor
40
28
  };
41
29
  };
42
-
43
30
  const selectIconTokens = _ref2 => {
44
31
  let {
45
32
  iconSize,
@@ -52,13 +39,12 @@ const selectIconTokens = _ref2 => {
52
39
  scale: iconScale
53
40
  };
54
41
  };
42
+
55
43
  /**
56
44
  * `TooltipButton` is a helper component used as a default control for the `Tooltip` component.
57
45
  * In fact though, it isn't actually a pressable - it's meant to be used as pressable's content.
58
46
  * Due to this any interaction states (e.g. pressed, hover, etc.) has to be passed down to it as a prop.
59
47
  */
60
-
61
-
62
48
  const TooltipButton = _ref3 => {
63
49
  let {
64
50
  pressableState,
@@ -84,18 +70,17 @@ const TooltipButton = _ref3 => {
84
70
  })
85
71
  });
86
72
  };
87
-
88
73
  const staticStyles = _StyleSheet.default.create({
89
- bubblePointerEvents: { ..._Platform.default.select({
74
+ bubblePointerEvents: {
75
+ ..._Platform.default.select({
90
76
  web: {
91
77
  pointerEvents: 'none'
92
78
  }
93
79
  })
94
80
  }
95
81
  });
96
-
97
- TooltipButton.propTypes = { ...selectedSystemPropTypes,
98
-
82
+ TooltipButton.propTypes = {
83
+ ...selectedSystemPropTypes,
99
84
  /**
100
85
  * Used as appearances when resolving theme tokens.
101
86
  */
@@ -4,10 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
-
8
7
  var _TooltipButton = _interopRequireDefault(require("./TooltipButton"));
9
-
10
8
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
-
12
9
  var _default = _TooltipButton.default;
13
10
  exports.default = _default;
@@ -4,37 +4,22 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
-
8
7
  var _react = _interopRequireWildcard(require("react"));
9
-
10
8
  var _propTypes = _interopRequireDefault(require("prop-types"));
11
-
12
9
  var _Text = _interopRequireDefault(require("react-native-web/dist/cjs/exports/Text"));
13
-
14
10
  var _View = _interopRequireDefault(require("react-native-web/dist/cjs/exports/View"));
15
-
16
11
  var _ThemeProvider = require("../ThemeProvider");
17
-
18
12
  var _ViewportProvider = require("../ViewportProvider");
19
-
20
13
  var _utils = require("../ThemeProvider/utils");
21
-
22
14
  var _utils2 = require("../utils");
23
-
24
15
  var _jsxRuntime = require("react/jsx-runtime");
25
-
26
16
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
27
-
28
17
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
29
-
30
18
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
31
-
32
19
  /**
33
20
  * @typedef {import('../utils/a11y/semantics').TextTag} TextTag
34
- */
35
- const [selectContainerProps, selectedContainerPropTypes] = (0, _utils2.selectSystemProps)([_utils2.a11yProps, _utils2.viewProps]);
21
+ */const [selectContainerProps, selectedContainerPropTypes] = (0, _utils2.selectSystemProps)([_utils2.a11yProps, _utils2.viewProps]);
36
22
  const [selectTextProps, selectedTextPropTypes] = (0, _utils2.selectSystemProps)([_utils2.textProps]);
37
-
38
23
  const selectTextStyles = (_ref, themeOptions) => {
39
24
  let {
40
25
  fontWeight,
@@ -57,9 +42,9 @@ const selectTextStyles = (_ref, themeOptions) => {
57
42
  textTransform,
58
43
  letterSpacing
59
44
  });
60
- }; // General-purpose flexible theme-neutral base component for text
61
-
45
+ };
62
46
 
47
+ // General-purpose flexible theme-neutral base component for text
63
48
  const Typography = /*#__PURE__*/(0, _react.forwardRef)((_ref2, ref) => {
64
49
  let {
65
50
  children,
@@ -84,8 +69,10 @@ const Typography = /*#__PURE__*/(0, _react.forwardRef)((_ref2, ref) => {
84
69
  const {
85
70
  themeOptions
86
71
  } = (0, _ThemeProvider.useTheme)();
87
- const resolvedTextProps = { ...selectTextProps(rest),
88
- style: selectTextStyles(align ? { ...themeTokens,
72
+ const resolvedTextProps = {
73
+ ...selectTextProps(rest),
74
+ style: selectTextStyles(align ? {
75
+ ...themeTokens,
89
76
  textAlign: align
90
77
  } : themeTokens, themeOptions),
91
78
  dataSet,
@@ -96,39 +83,33 @@ const Typography = /*#__PURE__*/(0, _react.forwardRef)((_ref2, ref) => {
96
83
  ...(0, _utils2.getA11yPropsFromHtmlTag)(tag, accessibilityRole),
97
84
  ...selectContainerProps(rest)
98
85
  };
99
-
100
86
  const resetTagStyling = child => {
101
87
  if (typeof child === 'object' && ((child === null || child === void 0 ? void 0 : child.type) === 'sub' || (child === null || child === void 0 ? void 0 : child.type) === 'sup')) {
102
88
  var _child$props;
103
-
104
89
  const childStyles = (child === null || child === void 0 ? void 0 : (_child$props = child.props) === null || _child$props === void 0 ? void 0 : _child$props.style) || {};
105
90
  const supFontSize = childStyles.fontSize ?? superScriptFontSize;
106
-
107
91
  const sanitizedChild = /*#__PURE__*/_react.default.cloneElement(child, {
108
- style: { ...childStyles,
92
+ style: {
93
+ ...childStyles,
109
94
  ...(supFontSize ? {
110
95
  fontSize: supFontSize
111
96
  } : {}),
112
97
  lineHeight: 0
113
98
  }
114
99
  });
115
-
116
100
  return sanitizedChild;
117
101
  }
118
-
119
102
  return child;
120
103
  };
121
-
122
104
  const sanitizeChildren = () => {
123
105
  if (Array.isArray(children)) {
124
106
  return children.map(resetTagStyling);
125
107
  }
126
-
127
108
  return resetTagStyling(children);
128
109
  };
129
-
130
110
  const textDecorationLine = strikeThrough ? 'line-through' : 'none';
131
- const textStyles = resolvedTextProps.style ? { ...resolvedTextProps.style,
111
+ const textStyles = resolvedTextProps.style ? {
112
+ ...resolvedTextProps.style,
132
113
  textDecorationLine
133
114
  } : {
134
115
  textDecorationLine
@@ -136,7 +117,8 @@ const Typography = /*#__PURE__*/(0, _react.forwardRef)((_ref2, ref) => {
136
117
  return block ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_View.default, {
137
118
  ref: ref,
138
119
  ...containerProps,
139
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Text.default, { ...resolvedTextProps,
120
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Text.default, {
121
+ ...resolvedTextProps,
140
122
  style: textStyles,
141
123
  children: sanitizeChildren(children)
142
124
  })
@@ -149,16 +131,15 @@ const Typography = /*#__PURE__*/(0, _react.forwardRef)((_ref2, ref) => {
149
131
  });
150
132
  });
151
133
  Typography.displayName = 'Typography';
152
- Typography.propTypes = { ...selectedContainerPropTypes,
134
+ Typography.propTypes = {
135
+ ...selectedContainerPropTypes,
153
136
  ...selectedTextPropTypes,
154
137
  tokens: (0, _utils2.getTokensPropType)('Typography'),
155
138
  variant: _utils2.variantProp.propType,
156
-
157
139
  /**
158
140
  * Renders the text with "text-decoration: 'line-through'" applied.
159
141
  */
160
142
  strikeThrough: _propTypes.default.bool,
161
-
162
143
  /**
163
144
  * Renders the text as a semantic heading. If a html heading tag is provided, uses that tag on Web.
164
145
  *
@@ -169,7 +150,6 @@ Typography.propTypes = { ...selectedContainerPropTypes,
169
150
  * is not defined, the accessibilityRole will default to "heading".
170
151
  */
171
152
  heading: _propTypes.default.oneOf([..._utils2.headingTags, true]),
172
-
173
153
  /**
174
154
  * Optional semantic HTML tag, to apply to the text on web. Does not change styling.
175
155
  *
@@ -179,18 +159,15 @@ Typography.propTypes = { ...selectedContainerPropTypes,
179
159
  * is not defined, the accessibilityRole will default to "heading".
180
160
  */
181
161
  tag: _propTypes.default.oneOf(_utils2.textTags),
182
-
183
162
  /**
184
163
  * If true, forces the element to behave as a View block even if nested in other text
185
164
  */
186
165
  block: _propTypes.default.bool,
187
-
188
166
  /**
189
167
  * Works the same as css text-align, note that RN doesn't support "start" or "end" (see https://reactnative.dev/docs/text-style-props#textalign)
190
168
  * Justify is known to make text harder to read, especially for people with dyslexia (see https://developer.mozilla.org/en-US/docs/Web/CSS/text-align#accessibility_concerns)
191
169
  */
192
170
  align: _propTypes.default.oneOf(['auto', 'left', 'right', 'center', 'justify']),
193
-
194
171
  /**
195
172
  * Same children allowed as a React Native <Text> node
196
173
  */