@telus-uds/components-base 1.3.0 → 1.5.0

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 (344) hide show
  1. package/.turbo/turbo-build.log +5 -2
  2. package/CHANGELOG.json +82 -0
  3. package/CHANGELOG.md +42 -2
  4. package/__tests__/ActivityIndicator/ActivityIndicator.test.jsx +35 -0
  5. package/__tests__/ActivityIndicator/__snapshots__/ActivityIndicator.test.jsx.snap +287 -0
  6. package/babel.config.js +27 -5
  7. package/component-docs.json +121 -438
  8. package/lib/A11yText/index.js +5 -4
  9. package/lib/ActivityIndicator/Spinner.js +46 -37
  10. package/lib/ActivityIndicator/Spinner.native.js +26 -15
  11. package/lib/Box/Box.js +4 -4
  12. package/lib/Button/ButtonBase.js +7 -8
  13. package/lib/Card/Card.js +5 -4
  14. package/lib/Card/PressableCardBase.js +6 -11
  15. package/lib/Checkbox/Checkbox.js +4 -6
  16. package/lib/Divider/Divider.js +12 -11
  17. package/lib/ExpandCollapse/Control.js +7 -7
  18. package/lib/ExpandCollapse/ExpandCollapse.js +6 -2
  19. package/lib/ExpandCollapse/Panel.js +6 -7
  20. package/lib/Feedback/Feedback.js +6 -5
  21. package/lib/Fieldset/Fieldset.js +1 -3
  22. package/lib/HorizontalScroll/HorizontalScroll.js +5 -7
  23. package/lib/HorizontalScroll/HorizontalScrollButton.js +23 -49
  24. package/lib/IconButton/IconButton.js +6 -6
  25. package/lib/InputLabel/InputLabel.js +7 -2
  26. package/lib/InputSupports/InputSupports.js +2 -2
  27. package/lib/Link/LinkBase.js +5 -6
  28. package/lib/List/List.js +4 -6
  29. package/lib/List/ListItem.js +6 -2
  30. package/lib/Modal/Modal.js +6 -2
  31. package/lib/Notification/Notification.js +12 -8
  32. package/lib/Pagination/Pagination.js +8 -3
  33. package/lib/Progress/Progress.js +5 -4
  34. package/lib/Progress/ProgressBar.js +8 -7
  35. package/lib/Radio/Radio.js +4 -6
  36. package/lib/Radio/RadioButton.js +6 -3
  37. package/lib/Radio/RadioGroup.js +7 -2
  38. package/lib/RadioCard/RadioCard.js +4 -4
  39. package/lib/RadioCard/RadioCardGroup.js +9 -6
  40. package/lib/Search/Search.js +7 -2
  41. package/lib/Select/Select.js +10 -9
  42. package/lib/SideNav/Item.js +7 -7
  43. package/lib/SideNav/SideNav.js +7 -3
  44. package/lib/Skeleton/Skeleton.js +6 -2
  45. package/lib/Spacer/Spacer.js +7 -18
  46. package/lib/StackView/StackView.js +7 -7
  47. package/lib/StackView/StackWrapBox.js +6 -7
  48. package/lib/StackView/StackWrapGap.js +6 -5
  49. package/lib/StepTracker/Step.js +7 -3
  50. package/lib/StepTracker/StepTracker.js +7 -7
  51. package/lib/Tabs/Tabs.js +6 -2
  52. package/lib/Tabs/TabsItem.js +6 -5
  53. package/lib/Tags/Tags.js +5 -6
  54. package/lib/TextInput/TextArea.js +13 -14
  55. package/lib/TextInput/TextInput.js +13 -14
  56. package/lib/TextInput/TextInputBase.js +5 -3
  57. package/lib/ToggleSwitch/ToggleSwitch.js +10 -9
  58. package/lib/ToggleSwitch/ToggleSwitchGroup.js +5 -7
  59. package/lib/Tooltip/Tooltip.js +7 -2
  60. package/lib/TooltipButton/TooltipButton.js +7 -2
  61. package/lib/Typography/Typography.js +8 -6
  62. package/lib/index.js +7 -0
  63. package/lib/utils/children.js +5 -1
  64. package/lib/utils/index.js +14 -0
  65. package/lib/utils/props/index.js +9 -0
  66. package/lib/{InputSupports/propTypes.js → utils/props/inputSupportsProps.js} +2 -3
  67. package/lib/utils/ssr.js +51 -0
  68. package/lib-module/A11yInfoProvider/index.js +62 -0
  69. package/lib-module/A11yText/index.js +55 -0
  70. package/lib-module/ActivityIndicator/Spinner.js +76 -0
  71. package/lib-module/ActivityIndicator/Spinner.native.js +143 -0
  72. package/lib-module/ActivityIndicator/index.js +40 -0
  73. package/lib-module/ActivityIndicator/shared.js +12 -0
  74. package/lib-module/BaseProvider/index.js +26 -0
  75. package/lib-module/Box/Box.js +243 -0
  76. package/lib-module/Box/index.js +2 -0
  77. package/lib-module/Button/Button.js +25 -0
  78. package/lib-module/Button/ButtonBase.js +254 -0
  79. package/lib-module/Button/ButtonGroup.js +164 -0
  80. package/lib-module/Button/ButtonLink.js +39 -0
  81. package/lib-module/Button/index.js +4 -0
  82. package/lib-module/Button/propTypes.js +36 -0
  83. package/lib-module/Card/Card.js +83 -0
  84. package/lib-module/Card/CardBase.js +62 -0
  85. package/lib-module/Card/PressableCardBase.js +113 -0
  86. package/lib-module/Card/index.js +4 -0
  87. package/lib-module/Checkbox/Checkbox.js +321 -0
  88. package/lib-module/Checkbox/CheckboxGroup.js +218 -0
  89. package/lib-module/Checkbox/CheckboxInput.js +58 -0
  90. package/lib-module/Checkbox/CheckboxInput.native.js +6 -0
  91. package/lib-module/Checkbox/index.js +3 -0
  92. package/lib-module/Divider/Divider.js +123 -0
  93. package/lib-module/Divider/index.js +2 -0
  94. package/lib-module/ExpandCollapse/Accordion.js +15 -0
  95. package/lib-module/ExpandCollapse/Control.js +130 -0
  96. package/lib-module/ExpandCollapse/ExpandCollapse.js +94 -0
  97. package/lib-module/ExpandCollapse/Panel.js +158 -0
  98. package/lib-module/ExpandCollapse/index.js +7 -0
  99. package/lib-module/Feedback/Feedback.js +144 -0
  100. package/lib-module/Feedback/index.js +2 -0
  101. package/lib-module/Fieldset/Fieldset.js +145 -0
  102. package/lib-module/Fieldset/FieldsetContainer.js +29 -0
  103. package/lib-module/Fieldset/FieldsetContainer.native.js +20 -0
  104. package/lib-module/Fieldset/Legend.js +21 -0
  105. package/lib-module/Fieldset/Legend.native.js +28 -0
  106. package/lib-module/Fieldset/cssReset.js +14 -0
  107. package/lib-module/Fieldset/index.js +2 -0
  108. package/lib-module/FlexGrid/Col/Col.js +265 -0
  109. package/lib-module/FlexGrid/Col/index.js +2 -0
  110. package/lib-module/FlexGrid/FlexGrid.js +147 -0
  111. package/lib-module/FlexGrid/Row/Row.js +177 -0
  112. package/lib-module/FlexGrid/Row/index.js +2 -0
  113. package/lib-module/FlexGrid/helpers/index.js +18 -0
  114. package/lib-module/FlexGrid/index.js +2 -0
  115. package/lib-module/FlexGrid/providers/GutterContext.js +3 -0
  116. package/lib-module/HorizontalScroll/HorizontalScroll.js +170 -0
  117. package/lib-module/HorizontalScroll/HorizontalScrollButton.js +77 -0
  118. package/lib-module/HorizontalScroll/ScrollViewEnd.js +47 -0
  119. package/lib-module/HorizontalScroll/ScrollViewEnd.native.js +24 -0
  120. package/lib-module/HorizontalScroll/dictionary.js +11 -0
  121. package/lib-module/HorizontalScroll/index.js +11 -0
  122. package/lib-module/HorizontalScroll/itemPositions.js +106 -0
  123. package/lib-module/Icon/Icon.js +61 -0
  124. package/lib-module/Icon/IconText.js +81 -0
  125. package/lib-module/Icon/index.js +4 -0
  126. package/lib-module/IconButton/IconButton.js +115 -0
  127. package/lib-module/IconButton/index.js +2 -0
  128. package/lib-module/InputLabel/InputLabel.js +131 -0
  129. package/lib-module/InputLabel/LabelContent.js +24 -0
  130. package/lib-module/InputLabel/LabelContent.native.js +16 -0
  131. package/lib-module/InputLabel/index.js +2 -0
  132. package/lib-module/InputSupports/InputSupports.js +88 -0
  133. package/lib-module/InputSupports/index.js +2 -0
  134. package/lib-module/InputSupports/useInputSupports.js +31 -0
  135. package/lib-module/Link/ChevronLink.js +51 -0
  136. package/lib-module/Link/InlinePressable.js +37 -0
  137. package/lib-module/Link/InlinePressable.native.js +85 -0
  138. package/lib-module/Link/Link.js +27 -0
  139. package/lib-module/Link/LinkBase.js +210 -0
  140. package/lib-module/Link/TextButton.js +43 -0
  141. package/lib-module/Link/index.js +5 -0
  142. package/lib-module/List/List.js +55 -0
  143. package/lib-module/List/ListItem.js +213 -0
  144. package/lib-module/List/index.js +5 -0
  145. package/lib-module/Modal/Modal.js +208 -0
  146. package/lib-module/Modal/dictionary.js +9 -0
  147. package/lib-module/Modal/index.js +2 -0
  148. package/lib-module/Notification/Notification.js +196 -0
  149. package/lib-module/Notification/dictionary.js +8 -0
  150. package/lib-module/Notification/index.js +2 -0
  151. package/lib-module/Pagination/PageButton.js +65 -0
  152. package/lib-module/Pagination/Pagination.js +140 -0
  153. package/lib-module/Pagination/SideButton.js +103 -0
  154. package/lib-module/Pagination/dictionary.js +18 -0
  155. package/lib-module/Pagination/index.js +2 -0
  156. package/lib-module/Pagination/usePagination.js +72 -0
  157. package/lib-module/Progress/Progress.js +85 -0
  158. package/lib-module/Progress/ProgressBar.js +134 -0
  159. package/lib-module/Progress/ProgressBarBackground.js +41 -0
  160. package/lib-module/Progress/index.js +4 -0
  161. package/lib-module/Radio/Radio.js +263 -0
  162. package/lib-module/Radio/RadioButton.js +128 -0
  163. package/lib-module/Radio/RadioGroup.js +225 -0
  164. package/lib-module/Radio/RadioInput.js +60 -0
  165. package/lib-module/Radio/RadioInput.native.js +6 -0
  166. package/lib-module/Radio/index.js +3 -0
  167. package/lib-module/RadioCard/RadioCard.js +218 -0
  168. package/lib-module/RadioCard/RadioCardGroup.js +232 -0
  169. package/lib-module/RadioCard/index.js +3 -0
  170. package/lib-module/Search/Search.js +233 -0
  171. package/lib-module/Search/dictionary.js +12 -0
  172. package/lib-module/Search/index.js +2 -0
  173. package/lib-module/Select/Group.js +20 -0
  174. package/lib-module/Select/Group.native.js +14 -0
  175. package/lib-module/Select/Item.js +17 -0
  176. package/lib-module/Select/Item.native.js +9 -0
  177. package/lib-module/Select/Picker.js +67 -0
  178. package/lib-module/Select/Picker.native.js +110 -0
  179. package/lib-module/Select/Select.js +317 -0
  180. package/lib-module/Select/index.js +6 -0
  181. package/lib-module/SideNav/Item.js +139 -0
  182. package/lib-module/SideNav/ItemContent.js +45 -0
  183. package/lib-module/SideNav/ItemsGroup.js +115 -0
  184. package/lib-module/SideNav/SideNav.js +133 -0
  185. package/lib-module/SideNav/index.js +1 -0
  186. package/lib-module/Skeleton/Skeleton.js +117 -0
  187. package/lib-module/Skeleton/index.js +2 -0
  188. package/lib-module/Skeleton/skeleton.constant.js +3 -0
  189. package/lib-module/Skeleton/skeletonWebAnimation.js +18 -0
  190. package/lib-module/Skeleton/useSkeletonNativeAnimation.js +24 -0
  191. package/lib-module/Spacer/Spacer.js +97 -0
  192. package/lib-module/Spacer/index.js +2 -0
  193. package/lib-module/StackView/StackView.js +124 -0
  194. package/lib-module/StackView/StackWrap.js +48 -0
  195. package/lib-module/StackView/StackWrap.native.js +3 -0
  196. package/lib-module/StackView/StackWrapBox.js +114 -0
  197. package/lib-module/StackView/StackWrapGap.js +58 -0
  198. package/lib-module/StackView/common.js +32 -0
  199. package/lib-module/StackView/getStackedContent.js +123 -0
  200. package/lib-module/StackView/index.js +5 -0
  201. package/lib-module/StepTracker/Step.js +229 -0
  202. package/lib-module/StepTracker/StepTracker.js +175 -0
  203. package/lib-module/StepTracker/dictionary.js +10 -0
  204. package/lib-module/StepTracker/index.js +2 -0
  205. package/lib-module/Tabs/Tabs.js +113 -0
  206. package/lib-module/Tabs/TabsItem.js +215 -0
  207. package/lib-module/Tabs/index.js +2 -0
  208. package/lib-module/Tags/Tags.js +238 -0
  209. package/lib-module/Tags/index.js +2 -0
  210. package/lib-module/TextInput/TextArea.js +88 -0
  211. package/lib-module/TextInput/TextInput.js +60 -0
  212. package/lib-module/TextInput/TextInputBase.js +233 -0
  213. package/lib-module/TextInput/index.js +3 -0
  214. package/lib-module/TextInput/propTypes.js +31 -0
  215. package/lib-module/ThemeProvider/ThemeProvider.js +35 -0
  216. package/lib-module/ThemeProvider/index.js +6 -0
  217. package/lib-module/ThemeProvider/useSetTheme.js +22 -0
  218. package/lib-module/ThemeProvider/useTheme.js +14 -0
  219. package/lib-module/ThemeProvider/useThemeTokens.js +105 -0
  220. package/lib-module/ThemeProvider/utils/index.js +2 -0
  221. package/lib-module/ThemeProvider/utils/styles.js +174 -0
  222. package/lib-module/ThemeProvider/utils/theme-tokens.js +151 -0
  223. package/lib-module/ToggleSwitch/ToggleSwitch.js +224 -0
  224. package/lib-module/ToggleSwitch/ToggleSwitchGroup.js +202 -0
  225. package/lib-module/ToggleSwitch/index.js +3 -0
  226. package/lib-module/Tooltip/Backdrop.js +52 -0
  227. package/lib-module/Tooltip/Backdrop.native.js +43 -0
  228. package/lib-module/Tooltip/Tooltip.js +332 -0
  229. package/lib-module/Tooltip/dictionary.js +8 -0
  230. package/lib-module/Tooltip/getTooltipPosition.js +164 -0
  231. package/lib-module/Tooltip/index.js +2 -0
  232. package/lib-module/TooltipButton/TooltipButton.js +71 -0
  233. package/lib-module/TooltipButton/index.js +2 -0
  234. package/lib-module/Typography/Typography.js +118 -0
  235. package/lib-module/Typography/index.js +2 -0
  236. package/lib-module/ViewportProvider/ViewportProvider.js +28 -0
  237. package/lib-module/ViewportProvider/index.js +3 -0
  238. package/lib-module/ViewportProvider/useViewport.js +3 -0
  239. package/lib-module/ViewportProvider/useViewportListener.js +43 -0
  240. package/lib-module/index.js +48 -0
  241. package/lib-module/utils/a11y/index.js +2 -0
  242. package/lib-module/utils/a11y/semantics.js +154 -0
  243. package/lib-module/utils/a11y/textSize.js +34 -0
  244. package/lib-module/utils/animation/index.js +2 -0
  245. package/lib-module/utils/animation/useVerticalExpandAnimation.js +49 -0
  246. package/lib-module/utils/children.js +118 -0
  247. package/lib-module/utils/index.js +15 -0
  248. package/lib-module/utils/info/index.js +7 -0
  249. package/lib-module/utils/info/platform/index.js +11 -0
  250. package/lib-module/utils/info/platform/platform.android.js +1 -0
  251. package/lib-module/utils/info/platform/platform.ios.js +1 -0
  252. package/lib-module/utils/info/platform/platform.js +1 -0
  253. package/lib-module/utils/info/platform/platform.native.js +4 -0
  254. package/lib-module/utils/info/versions.js +5 -0
  255. package/lib-module/utils/input.js +180 -0
  256. package/lib-module/utils/pressability.js +97 -0
  257. package/lib-module/utils/props/a11yProps.js +140 -0
  258. package/lib-module/utils/props/clickProps.js +25 -0
  259. package/lib-module/utils/props/componentPropType.js +63 -0
  260. package/lib-module/utils/props/copyPropTypes.js +2 -0
  261. package/lib-module/utils/props/getPropSelector.js +6 -0
  262. package/lib-module/utils/props/hrefAttrsProp.js +30 -0
  263. package/lib-module/utils/props/index.js +16 -0
  264. package/lib-module/utils/props/inputSupportsProps.js +54 -0
  265. package/lib-module/utils/props/linkProps.js +47 -0
  266. package/lib-module/utils/props/paddingProp.js +9 -0
  267. package/lib-module/utils/props/pressProps.js +42 -0
  268. package/lib-module/utils/props/rectProp.js +9 -0
  269. package/lib-module/utils/props/responsiveProps.js +30 -0
  270. package/lib-module/utils/props/selectSystemProps.js +24 -0
  271. package/lib-module/utils/props/spacingProps.js +56 -0
  272. package/lib-module/utils/props/tokens.js +120 -0
  273. package/lib-module/utils/props/variantProp.js +18 -0
  274. package/lib-module/utils/props/viewProps.js +22 -0
  275. package/lib-module/utils/ssr.js +35 -0
  276. package/lib-module/utils/useCopy.js +42 -0
  277. package/lib-module/utils/useHash.js +44 -0
  278. package/lib-module/utils/useHash.native.js +7 -0
  279. package/lib-module/utils/useResponsiveProp.js +47 -0
  280. package/lib-module/utils/useSpacingScale.js +123 -0
  281. package/lib-module/utils/useUniqueId.js +12 -0
  282. package/lib-module/utils/withLinkRouter.js +82 -0
  283. package/package.json +9 -5
  284. package/src/A11yText/index.jsx +7 -3
  285. package/src/ActivityIndicator/Spinner.jsx +56 -44
  286. package/src/ActivityIndicator/Spinner.native.jsx +20 -12
  287. package/src/Box/Box.jsx +10 -9
  288. package/src/Button/ButtonBase.jsx +9 -8
  289. package/src/Card/Card.jsx +7 -4
  290. package/src/Card/PressableCardBase.jsx +12 -12
  291. package/src/Checkbox/Checkbox.jsx +12 -5
  292. package/src/Divider/Divider.jsx +17 -10
  293. package/src/ExpandCollapse/Control.jsx +12 -7
  294. package/src/ExpandCollapse/ExpandCollapse.jsx +13 -3
  295. package/src/ExpandCollapse/Panel.jsx +15 -5
  296. package/src/Feedback/Feedback.jsx +13 -3
  297. package/src/Fieldset/Fieldset.jsx +1 -1
  298. package/src/HorizontalScroll/HorizontalScroll.jsx +13 -6
  299. package/src/HorizontalScroll/HorizontalScrollButton.jsx +21 -58
  300. package/src/IconButton/IconButton.jsx +12 -8
  301. package/src/InputLabel/InputLabel.jsx +16 -2
  302. package/src/InputSupports/InputSupports.jsx +1 -1
  303. package/src/Link/LinkBase.jsx +10 -9
  304. package/src/List/List.jsx +12 -5
  305. package/src/List/ListItem.jsx +16 -2
  306. package/src/Modal/Modal.jsx +63 -50
  307. package/src/Notification/Notification.jsx +23 -6
  308. package/src/Pagination/Pagination.jsx +10 -3
  309. package/src/Progress/Progress.jsx +5 -3
  310. package/src/Progress/ProgressBar.jsx +8 -6
  311. package/src/Radio/Radio.jsx +13 -5
  312. package/src/Radio/RadioButton.jsx +13 -3
  313. package/src/Radio/RadioGroup.jsx +14 -2
  314. package/src/RadioCard/RadioCard.jsx +9 -6
  315. package/src/RadioCard/RadioCardGroup.jsx +16 -4
  316. package/src/Search/Search.jsx +15 -3
  317. package/src/Select/Select.jsx +21 -7
  318. package/src/SideNav/Item.jsx +15 -7
  319. package/src/SideNav/SideNav.jsx +13 -2
  320. package/src/Skeleton/Skeleton.jsx +55 -43
  321. package/src/Spacer/Spacer.jsx +8 -16
  322. package/src/StackView/StackView.jsx +13 -12
  323. package/src/StackView/StackWrapBox.jsx +12 -12
  324. package/src/StackView/StackWrapGap.jsx +9 -7
  325. package/src/StepTracker/Step.jsx +7 -4
  326. package/src/StepTracker/StepTracker.jsx +8 -8
  327. package/src/Tabs/Tabs.jsx +16 -3
  328. package/src/Tabs/TabsItem.jsx +13 -9
  329. package/src/Tags/Tags.jsx +20 -5
  330. package/src/TextInput/TextArea.jsx +20 -8
  331. package/src/TextInput/TextInput.jsx +20 -8
  332. package/src/TextInput/TextInputBase.jsx +13 -3
  333. package/src/ToggleSwitch/ToggleSwitch.jsx +16 -5
  334. package/src/ToggleSwitch/ToggleSwitchGroup.jsx +14 -6
  335. package/src/Tooltip/Tooltip.jsx +13 -3
  336. package/src/TooltipButton/TooltipButton.jsx +6 -4
  337. package/src/Typography/Typography.jsx +10 -6
  338. package/src/index.js +1 -1
  339. package/src/utils/children.jsx +2 -1
  340. package/src/utils/index.js +1 -0
  341. package/src/utils/props/index.js +1 -0
  342. package/src/{InputSupports/propTypes.js → utils/props/inputSupportsProps.js} +2 -4
  343. package/src/utils/ssr.js +35 -0
  344. package/release-context.json +0 -7
@@ -29,6 +29,8 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
29
29
 
30
30
  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
31
 
32
+ const [selectProps, selectedSystemPropTypes] = (0, _utils.selectSystemProps)([_utils.a11yProps, _utils.viewProps]);
33
+
32
34
  const selectStyles = tokens => (0, _utils.selectTokens)('Feedback', tokens);
33
35
 
34
36
  const selectTitleTextStyles = ({
@@ -102,17 +104,15 @@ const Feedback = /*#__PURE__*/(0, _react.forwardRef)(({
102
104
  style: contentTextStyles,
103
105
  children: children
104
106
  }) : children;
105
-
106
- const accessibilityProps = _utils.a11yProps.select({
107
+ const selectedProps = selectProps({
107
108
  accessibilityRole: validation === 'error' ? 'alert' : undefined,
108
109
  ...rest
109
110
  });
110
-
111
111
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_View.default, {
112
112
  ref: ref,
113
113
  style: selectStyles(themeTokens),
114
- ...accessibilityProps,
115
114
  nativeID: id,
115
+ ...selectedProps,
116
116
  children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_StackView.default, {
117
117
  space: space,
118
118
  children: [title !== undefined && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_View.default, {
@@ -133,7 +133,8 @@ const Feedback = /*#__PURE__*/(0, _react.forwardRef)(({
133
133
  });
134
134
  });
135
135
  Feedback.displayName = 'Feedback';
136
- Feedback.propTypes = {
136
+ Feedback.propTypes = { ...selectedSystemPropTypes,
137
+
137
138
  /**
138
139
  * Emphasized summary of the feedback. If an icon is set, it is rendered next to the title.
139
140
  */
@@ -81,9 +81,7 @@ const Fieldset = /*#__PURE__*/(0, _react.forwardRef)(({
81
81
  // fieldset / feedback / etc, wrap resolved children in a fragment, and stack with `preserveFragments`.
82
82
 
83
83
  const childContent = /*#__PURE__*/(0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {
84
- children: typeof children === 'function' ? children({
85
- a11yProps
86
- }) : children
84
+ children: typeof children === 'function' ? children(a11yProps) : children
87
85
  });
88
86
  const orderedContent = feedbackPosition === 'bottom' ? [legendContent, feedbackContent, childContent] : [legendContent, childContent, feedbackContent];
89
87
  const stackedContent = (0, _StackView.getStackedContent)(orderedContent, {
@@ -31,6 +31,7 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
31
31
 
32
32
  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; }
33
33
 
34
+ const [selectProps, selectedSystemPropTypes] = (0, _utils.selectSystemProps)([_utils.a11yProps, _utils.viewProps]);
34
35
  const tokenKeys = ['nextIcon', 'previousIcon', 'gutter', 'borderBottomWidth', 'borderBottomColor', 'buttonClearance'];
35
36
 
36
37
  const selectHorizontalScrollTokens = (themeTokens, prefix) => (0, _utils.selectTokens)(tokenKeys, themeTokens, prefix);
@@ -38,7 +39,7 @@ const selectHorizontalScrollTokens = (themeTokens, prefix) => (0, _utils.selectT
38
39
  * Base component that scrolls horizontally and displays left and right buttons if
39
40
  * there is content to the left and the right which can be scrolled to.
40
41
  *
41
- * @TODO revist `ScrollButton` after IconButton is stable.
42
+ * @TODO revisit `ScrollButton` after IconButton is stable.
42
43
  */
43
44
 
44
45
 
@@ -138,9 +139,7 @@ const HorizontalScroll = /*#__PURE__*/(0, _react.forwardRef)(({
138
139
 
139
140
  const scrollNext = () => scrollTo(scrollOffset + scrollDistance);
140
141
 
141
- const scrollPrevious = () => scrollTo(scrollOffset - scrollDistance);
142
-
143
- const a11y = _utils.a11yProps.select(rest); // On Web, being scrollable in one direction prevents overflow: visible in the other direction.
142
+ const scrollPrevious = () => scrollTo(scrollOffset - scrollDistance); // On Web, being scrollable in one direction prevents overflow: visible in the other direction.
144
143
  // Apply a fixed margin gutter that tab highlight effects can overhang without getting trimmed.
145
144
 
146
145
 
@@ -155,11 +154,10 @@ const HorizontalScroll = /*#__PURE__*/(0, _react.forwardRef)(({
155
154
  onLayout: handleContainerLayout,
156
155
  showsHorizontalScrollIndicator: false,
157
156
  contentContainerStyle: [staticStyles.scrollContainer, {
158
- marginBottom: gutter,
159
157
  borderBottomWidth,
160
158
  borderBottomColor
161
159
  }],
162
- ...a11y,
160
+ ...selectProps(rest),
163
161
  children: children
164
162
  }), showPreviousButton && /*#__PURE__*/(0, _jsxRuntime.jsx)(ScrollButton, {
165
163
  icon: previousIcon,
@@ -188,7 +186,7 @@ const staticStyles = _StyleSheet.default.create({
188
186
  }
189
187
  });
190
188
 
191
- HorizontalScroll.propTypes = {
189
+ HorizontalScroll.propTypes = { ...selectedSystemPropTypes,
192
190
  itemPositions: _itemPositions.itemPositionsPropType,
193
191
  ScrollButton: _propTypes.default.elementType,
194
192
  tokens: (0, _utils.getTokensSetPropType)(tokenKeys, {
@@ -9,17 +9,15 @@ var _react = _interopRequireWildcard(require("react"));
9
9
 
10
10
  var _propTypes = _interopRequireDefault(require("prop-types"));
11
11
 
12
- var _Pressable = _interopRequireDefault(require("react-native-web/dist/cjs/exports/Pressable"));
13
-
14
12
  var _StyleSheet = _interopRequireDefault(require("react-native-web/dist/cjs/exports/StyleSheet"));
15
13
 
16
- var _ThemeProvider = require("../ThemeProvider");
14
+ var _View = _interopRequireDefault(require("react-native-web/dist/cjs/exports/View"));
17
15
 
18
16
  var _utils = require("../utils");
19
17
 
20
- var _Icon = _interopRequireDefault(require("../Icon"));
18
+ var _ThemeProvider = require("../ThemeProvider");
21
19
 
22
- var _Typography = _interopRequireDefault(require("../Typography"));
20
+ var _IconButton = _interopRequireDefault(require("../IconButton"));
23
21
 
24
22
  var _dictionary = _interopRequireDefault(require("./dictionary"));
25
23
 
@@ -31,19 +29,11 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
31
29
 
32
30
  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; }
33
31
 
34
- const selectButtonStyles = ({
35
- borderRadius,
36
- backgroundColor,
37
- borderColor,
38
- borderWidth,
39
- padding
40
- }, direction) => [staticStyles.absolute, staticStyles[direction], {
41
- borderRadius,
42
- backgroundColor,
43
- borderColor,
44
- borderWidth,
45
- padding
46
- }];
32
+ const selectContainerStyles = ({
33
+ offset
34
+ }) => ({
35
+ marginTop: offset ? -offset : 0
36
+ });
47
37
  /**
48
38
  * Button within a Tabs component showing users that content is available to the left or
49
39
  * right, scrolling a screen's worth of content left or right when pressed.
@@ -57,47 +47,31 @@ const selectButtonStyles = ({
57
47
  const HorizontalScrollButton = /*#__PURE__*/(0, _react.forwardRef)(({
58
48
  direction = 'next',
59
49
  icon,
60
- onPress,
61
50
  offset,
51
+ onPress,
62
52
  variant,
63
53
  tokens,
64
54
  copy
65
55
  }, ref) => {
66
- const getTokens = (0, _ThemeProvider.useThemeTokensCallback)('HorizontalScrollButton', tokens, variant);
67
-
68
- const resolveButtonTokens = pressableState => (0, _utils.resolvePressableTokens)(getTokens, pressableState);
69
-
70
- const getPressableStyle = pressableState => [selectButtonStyles(resolveButtonTokens(pressableState), direction), {
71
- marginTop: -1 * (offset || 0)
72
- }];
73
-
56
+ const themeTokens = (0, _ThemeProvider.useThemeTokens)('HorizontalScrollButton', tokens, variant);
74
57
  const getCopy = (0, _utils.useCopy)({
75
58
  dictionary: _dictionary.default,
76
59
  copy
77
60
  });
78
61
  const label = direction === 'previous' ? getCopy('previousText') : getCopy('nextText');
79
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Pressable.default, {
80
- ref: ref,
81
- style: getPressableStyle,
82
- onPress: onPress,
83
- accessibilityLabel: label,
84
- accessibilityRole: "button" // For keyboard-tab or screenreader-swipe navigation, users can just go through all items
85
- ,
86
- ..._utils.a11yProps.nonFocusableProps,
87
- children: pressableState => {
88
- const iconTokens = (0, _utils.selectTokens)('Icon', resolveButtonTokens(pressableState), 'icon');
89
- return icon ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Icon.default, {
90
- icon: icon,
91
- tokens: iconTokens
92
- }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {
93
- tokens: {
94
- fontSize: iconTokens.size,
95
- lineHeight: 1,
96
- color: iconTokens.color
97
- },
98
- children: direction === 'next' ? '→' : '←'
99
- });
100
- }
62
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_View.default, {
63
+ style: [staticStyles.absolute, staticStyles[direction], selectContainerStyles({
64
+ offset
65
+ })],
66
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {
67
+ accessibilityLabel: label,
68
+ icon: icon,
69
+ onPress: onPress,
70
+ ref: ref,
71
+ tokens: themeTokens,
72
+ variant: variant,
73
+ ..._utils.a11yProps.nonFocusableProps
74
+ })
101
75
  });
102
76
  });
103
77
  HorizontalScrollButton.displayName = 'HorizontalScrollButton';
@@ -21,8 +21,6 @@ var _ThemeProvider = require("../ThemeProvider");
21
21
 
22
22
  var _utils = require("../utils");
23
23
 
24
- var _props = require("../utils/props");
25
-
26
24
  var _Icon = _interopRequireDefault(require("../Icon"));
27
25
 
28
26
  var _jsxRuntime = require("react/jsx-runtime");
@@ -33,6 +31,8 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
33
31
 
34
32
  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; }
35
33
 
34
+ const [selectProps, selectedSystemPropTypes] = (0, _utils.selectSystemProps)([_utils.a11yProps, _utils.viewProps]);
35
+
36
36
  const selectOuterStyle = ({
37
37
  backgroundColor,
38
38
  borderRadius,
@@ -91,7 +91,7 @@ const IconButton = /*#__PURE__*/(0, _react.forwardRef)(({
91
91
  ...rest
92
92
  } = _utils.clickProps.toPressProps(rawRest);
93
93
 
94
- const a11y = _props.a11yProps.select({ ...rest,
94
+ const selectedProps = selectProps({ ...rest,
95
95
  accessibilityRole
96
96
  });
97
97
 
@@ -110,14 +110,14 @@ const IconButton = /*#__PURE__*/(0, _react.forwardRef)(({
110
110
  onPress: handlePress,
111
111
  hrefAttrs: hrefAttrs,
112
112
  style: getOuterStyle,
113
- ...a11y,
113
+ ...selectedProps,
114
114
  children: pressableState => {
115
115
  const themeTokens = getTokens((0, _utils.resolvePressableState)(pressableState));
116
116
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_View.default, {
117
117
  style: selectInnerStyle(themeTokens),
118
118
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Icon.default, {
119
119
  icon: IconComponent,
120
- title: a11y.accessibilityLabel,
120
+ title: selectedProps.accessibilityLabel,
121
121
  tokens: (0, _utils.selectTokens)('Icon', themeTokens, 'icon')
122
122
  })
123
123
  });
@@ -125,7 +125,7 @@ const IconButton = /*#__PURE__*/(0, _react.forwardRef)(({
125
125
  });
126
126
  });
127
127
  IconButton.displayName = 'IconButton';
128
- IconButton.propTypes = { ..._props.a11yProps.types,
128
+ IconButton.propTypes = { ...selectedSystemPropTypes,
129
129
  variant: _utils.variantProp.propType,
130
130
  tokens: (0, _utils.getTokensPropType)('IconButton'),
131
131
  icon: _propTypes.default.elementType.isRequired,
@@ -31,6 +31,8 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
31
31
 
32
32
  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; }
33
33
 
34
+ const [selectProps, selectedSystemPropTypes] = (0, _utils.selectSystemProps)([_utils.a11yProps, _utils.viewProps]);
35
+
34
36
  const selectLabelStyles = tokens => (0, _ThemeProvider.applyTextStyles)((0, _utils.selectTokens)('Typography', tokens));
35
37
 
36
38
  const selectHintStyles = ({
@@ -61,7 +63,8 @@ const InputLabel = /*#__PURE__*/(0, _react.forwardRef)(({
61
63
  hintId,
62
64
  tooltip,
63
65
  tokens,
64
- variant
66
+ variant,
67
+ ...rest
65
68
  }, ref) => {
66
69
  const themeTokens = (0, _ThemeProvider.useThemeTokens)('InputLabel', tokens, variant);
67
70
  const hasTooltip = tooltip !== undefined;
@@ -69,6 +72,7 @@ const InputLabel = /*#__PURE__*/(0, _react.forwardRef)(({
69
72
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_View.default, {
70
73
  ref: ref,
71
74
  style: [staticStyles.container, !isHintInline && staticStyles.containerWithHintBelow],
75
+ ...selectProps(rest),
72
76
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Text.default, {
73
77
  style: [selectLabelStyles(themeTokens), selectGapStyles(themeTokens), staticStyles.label],
74
78
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_LabelContent.default, {
@@ -92,7 +96,8 @@ const InputLabel = /*#__PURE__*/(0, _react.forwardRef)(({
92
96
  });
93
97
  });
94
98
  InputLabel.displayName = 'InputLabel';
95
- InputLabel.propTypes = {
99
+ InputLabel.propTypes = { ...selectedSystemPropTypes,
100
+
96
101
  /**
97
102
  * The input label.
98
103
  */
@@ -61,8 +61,8 @@ const InputSupports = /*#__PURE__*/(0, _react.forwardRef)(({
61
61
  tooltip: tooltip,
62
62
  forId: inputId
63
63
  }), typeof children === 'function' ? children({
64
- a11yProps,
65
- inputId
64
+ inputId,
65
+ ...a11yProps
66
66
  }) : children, feedback && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Feedback.default, {
67
67
  id: feedbackId,
68
68
  title: feedback,
@@ -35,6 +35,8 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
35
35
 
36
36
  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; }
37
37
 
38
+ const [selectProps, selectedSystemPropTypes] = (0, _props.selectSystemProps)([_props.a11yProps, _props.linkProps, _props.viewProps]);
39
+
38
40
  const selectOuterBorderStyles = ({
39
41
  outerBorderColor,
40
42
  outerBorderWidth,
@@ -129,7 +131,6 @@ const LinkBase = /*#__PURE__*/(0, _react.forwardRef)(({
129
131
  tokens = {},
130
132
  children,
131
133
  accessibilityRole = 'link',
132
- dataSet,
133
134
  ...rawRest
134
135
  }, ref) => {
135
136
  const {
@@ -142,7 +143,7 @@ const LinkBase = /*#__PURE__*/(0, _react.forwardRef)(({
142
143
  rest
143
144
  } = _props.hrefAttrsProp.bundle(props);
144
145
 
145
- const linkPropSet = _props.linkProps.select({
146
+ const selectedProps = selectProps({
146
147
  accessibilityRole,
147
148
  href,
148
149
  onPress: _props.linkProps.handleHref({
@@ -159,9 +160,8 @@ const LinkBase = /*#__PURE__*/(0, _react.forwardRef)(({
159
160
 
160
161
 
161
162
  const blockLeftStyle = _Platform.default.OS === 'web' && staticStyles.blockLeft;
162
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_InlinePressable.default, { ...linkPropSet,
163
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_InlinePressable.default, { ...selectedProps,
163
164
  ref: ref,
164
- dataSet: dataSet,
165
165
  style: linkState => {
166
166
  const themeTokens = resolveLinkTokens(linkState);
167
167
  const outerBorderStyles = selectOuterBorderStyles(themeTokens);
@@ -195,8 +195,7 @@ const LinkBase = /*#__PURE__*/(0, _react.forwardRef)(({
195
195
  });
196
196
  });
197
197
  LinkBase.displayName = 'LinkBase';
198
- LinkBase.propTypes = { ..._props.a11yProps.types,
199
- ..._props.linkProps.types,
198
+ LinkBase.propTypes = { ...selectedSystemPropTypes,
200
199
  tokens: (0, _props.getTokensPropType)('Link'),
201
200
  variant: _props.variantProp.propType,
202
201
 
package/lib/List/List.js CHANGED
@@ -15,8 +15,6 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
15
15
 
16
16
  var _utils = require("../utils");
17
17
 
18
- var _props = require("../utils/props");
19
-
20
18
  var _ListItem = _interopRequireDefault(require("./ListItem"));
21
19
 
22
20
  var _jsxRuntime = require("react/jsx-runtime");
@@ -27,10 +25,12 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
27
25
 
28
26
  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; }
29
27
 
28
+ const [selectProps, selectedSystemPropTypes] = (0, _utils.selectSystemProps)([_utils.a11yProps, _utils.viewProps]);
30
29
  /**
31
30
  * An unordered List component has a child a ListItem that
32
31
  * allows icon, dividers and customized typography
33
32
  */
33
+
34
34
  const List = /*#__PURE__*/(0, _react.forwardRef)(({
35
35
  children,
36
36
  showDivider,
@@ -43,8 +43,6 @@ const List = /*#__PURE__*/(0, _react.forwardRef)(({
43
43
  default: 'none'
44
44
  });
45
45
 
46
- const a11y = _props.a11yProps.select(rest);
47
-
48
46
  const items = _react.Children.map(children, (child, index) => {
49
47
  if (child.type.name === _ListItem.default.name) {
50
48
  return /*#__PURE__*/(0, _react.cloneElement)(child, {
@@ -61,12 +59,12 @@ const List = /*#__PURE__*/(0, _react.forwardRef)(({
61
59
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_View.default, {
62
60
  ref: ref,
63
61
  accessibilityRole: accessibilityRole,
64
- ...a11y,
62
+ ...selectProps(rest),
65
63
  children: items
66
64
  });
67
65
  });
68
66
  List.displayName = 'List';
69
- List.propTypes = { ..._props.a11yProps.types,
67
+ List.propTypes = { ...selectedSystemPropTypes,
70
68
  tokens: (0, _utils.getTokensPropType)('List'),
71
69
  variant: _utils.variantProp.propType,
72
70
  children: (0, _utils.componentPropType)('ListItem'),
@@ -27,6 +27,8 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
27
27
 
28
28
  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; }
29
29
 
30
+ const [selectProps, selectedSystemPropTypes] = (0, _utils.selectSystemProps)([_utils.a11yProps, _utils.viewProps]);
31
+
30
32
  const selectBulletStyles = ({
31
33
  itemBulletWidth,
32
34
  itemBulletHeight,
@@ -108,7 +110,8 @@ const ListItem = /*#__PURE__*/(0, _react.forwardRef)(({
108
110
  iconSize,
109
111
  showDivider,
110
112
  children,
111
- isLastItem
113
+ isLastItem,
114
+ ...rest
112
115
  }, ref) => {
113
116
  const themeTokens = (0, _ThemeProvider.useThemeTokens)('List', tokens, variant);
114
117
  const itemStyles = selectItemStyles(themeTokens);
@@ -182,6 +185,7 @@ const ListItem = /*#__PURE__*/(0, _react.forwardRef)(({
182
185
  ref: ref,
183
186
  style: [staticStyles.itemContainer, getContainerStyle()],
184
187
  accessibilityRole: accessibilityRole,
188
+ ...selectProps(rest),
185
189
  children: [renderMarker(), renderItem()]
186
190
  });
187
191
  });
@@ -196,7 +200,7 @@ const staticStyles = _StyleSheet.default.create({
196
200
  }
197
201
  });
198
202
 
199
- ListItem.propTypes = {
203
+ ListItem.propTypes = { ...selectedSystemPropTypes,
200
204
  tokens: (0, _utils.getTokensPropType)('List'),
201
205
  variant: _utils.variantProp.propType,
202
206
  children: _propTypes.default.node.isRequired,
@@ -37,6 +37,8 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
37
37
 
38
38
  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; }
39
39
 
40
+ const [selectProps, selectedSystemPropTypes] = (0, _utils.selectSystemProps)([_utils.a11yProps, _utils.viewProps]);
41
+
40
42
  const selectContainerStyles = ({
41
43
  containerPaddingLeft,
42
44
  containerPaddingRight,
@@ -119,7 +121,8 @@ const Modal = /*#__PURE__*/(0, _react.forwardRef)(({
119
121
  maxWidth,
120
122
  tokens,
121
123
  variant,
122
- copy
124
+ copy,
125
+ ...rest
123
126
  }, ref) => {
124
127
  const viewport = (0, _ViewportProvider.useViewport)();
125
128
  const themeTokens = (0, _ThemeProvider.useThemeTokens)('Modal', tokens, variant, {
@@ -150,6 +153,7 @@ const Modal = /*#__PURE__*/(0, _react.forwardRef)(({
150
153
 
151
154
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Modal.default, {
152
155
  transparent: true,
156
+ ...selectProps(rest),
153
157
  children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_View.default, {
154
158
  style: [staticStyles.positioningContainer],
155
159
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_View.default, {
@@ -182,7 +186,7 @@ const Modal = /*#__PURE__*/(0, _react.forwardRef)(({
182
186
  });
183
187
  });
184
188
  Modal.displayName = 'Modal';
185
- Modal.propTypes = {
189
+ Modal.propTypes = { ...selectedSystemPropTypes,
186
190
  children: _propTypes.default.oneOfType([_propTypes.default.node, _propTypes.default.arrayOf(_propTypes.default.node)]),
187
191
  copy: _utils.copyPropTypes,
188
192
  isOpen: _propTypes.default.bool,
@@ -9,8 +9,6 @@ var _react = _interopRequireWildcard(require("react"));
9
9
 
10
10
  var _StyleSheet = _interopRequireDefault(require("react-native-web/dist/cjs/exports/StyleSheet"));
11
11
 
12
- var _Text = _interopRequireDefault(require("react-native-web/dist/cjs/exports/Text"));
13
-
14
12
  var _View = _interopRequireDefault(require("react-native-web/dist/cjs/exports/View"));
15
13
 
16
14
  var _propTypes = _interopRequireDefault(require("prop-types"));
@@ -33,6 +31,8 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
33
31
 
34
32
  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; }
35
33
 
34
+ const [selectProps, selectedSystemPropTypes] = (0, _utils.selectSystemProps)([_utils.a11yProps, _utils.viewProps]);
35
+
36
36
  const selectContainerStyles = tokens => ({ ...tokens
37
37
  });
38
38
 
@@ -124,7 +124,8 @@ const Notification = /*#__PURE__*/(0, _react.forwardRef)(({
124
124
  dismissible,
125
125
  copy = 'en',
126
126
  tokens,
127
- variant
127
+ variant,
128
+ ...rest
128
129
  }, ref) => {
129
130
  const [isDismissed, setIsDismissed] = (0, _react.useState)(false);
130
131
  const themeTokens = (0, _ThemeProvider.useThemeTokens)('Notification', tokens, variant, {
@@ -140,10 +141,11 @@ const Notification = /*#__PURE__*/(0, _react.forwardRef)(({
140
141
  }
141
142
 
142
143
  const textStyles = selectTextStyles(themeTokens);
143
- const content = typeof children === 'string' ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Text.default, {
144
- style: textStyles,
145
- children: children
146
- }) : children;
144
+ const content = (0, _utils.wrapStringsInText)(typeof children === 'function' ? children({
145
+ textStyles
146
+ }) : children, {
147
+ style: textStyles
148
+ });
147
149
  const {
148
150
  icon: IconComponent,
149
151
  dismissIcon: DismissIconComponent
@@ -155,6 +157,7 @@ const Notification = /*#__PURE__*/(0, _react.forwardRef)(({
155
157
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_View.default, {
156
158
  ref: ref,
157
159
  style: [staticStyles.container, selectContainerStyles(themeTokens)],
160
+ ...selectProps(rest),
158
161
  children: [IconComponent && /*#__PURE__*/(0, _jsxRuntime.jsx)(_View.default, {
159
162
  style: selectIconContainerStyles(themeTokens),
160
163
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(IconComponent, { ...selectIconProps(themeTokens)
@@ -178,7 +181,8 @@ const Notification = /*#__PURE__*/(0, _react.forwardRef)(({
178
181
  });
179
182
  });
180
183
  Notification.displayName = 'Notification';
181
- Notification.propTypes = {
184
+ Notification.propTypes = { ...selectedSystemPropTypes,
185
+
182
186
  /**
183
187
  * Content of the `Notification`.
184
188
  */
@@ -35,6 +35,8 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
35
35
 
36
36
  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; }
37
37
 
38
+ const [selectProps, selectedSystemPropTypes] = (0, _utils.selectSystemProps)([_utils.a11yProps, _utils.viewProps]);
39
+
38
40
  const selectTextStyles = ({
39
41
  color,
40
42
  fontName,
@@ -57,7 +59,8 @@ const Pagination = /*#__PURE__*/(0, _react.forwardRef)(({
57
59
  sideButtonVariant,
58
60
  sideButtonTokens,
59
61
  LinkRouter,
60
- linkRouterProps
62
+ linkRouterProps,
63
+ ...rest
61
64
  }, ref) => {
62
65
  const viewport = (0, _ViewportProvider.useViewport)();
63
66
  const {
@@ -98,7 +101,7 @@ const Pagination = /*#__PURE__*/(0, _react.forwardRef)(({
98
101
  tokens: sideButtonTokens,
99
102
  LinkRouter: LinkRouter,
100
103
  linkRouterProps: linkRouterProps
101
- }), ...items.map((child, itemIndex) => {
104
+ }), ...items.map((_child, itemIndex) => {
102
105
  const buttonLabel = `${itemIndex + 1}`;
103
106
  const itemProps = getItemProps(itemIndex);
104
107
  const ItemLinkRouter = itemProps.LinkRouter ?? LinkRouter;
@@ -135,6 +138,7 @@ const Pagination = /*#__PURE__*/(0, _react.forwardRef)(({
135
138
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_View.default, {
136
139
  style: staticStyles.container,
137
140
  ref: ref,
141
+ ...selectProps(rest),
138
142
  children: buttons // keep the keys in-line with the page numbers regardless of which buttons are actually rendered
139
143
  .map((element, index) => [element, `page-${index + 1}`]).filter(([element]) => element !== null).map(([element, key]) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {
140
144
  right: gap,
@@ -144,7 +148,8 @@ const Pagination = /*#__PURE__*/(0, _react.forwardRef)(({
144
148
  });
145
149
  _PageButton.default.displayName = 'PageButton';
146
150
  Pagination.PageButton = _PageButton.default;
147
- Pagination.propTypes = { ..._utils.withLinkRouter.propTypes,
151
+ Pagination.propTypes = { ...selectedSystemPropTypes,
152
+ ..._utils.withLinkRouter.propTypes,
148
153
  children: (0, _utils.componentPropType)('PageButton'),
149
154
  copy: _utils.copyPropTypes,
150
155
  variant: _utils.variantProp.propType,
@@ -11,8 +11,6 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
11
11
 
12
12
  var _View = _interopRequireDefault(require("react-native-web/dist/cjs/exports/View"));
13
13
 
14
- var _props = require("../utils/props");
15
-
16
14
  var _ThemeProvider = require("../ThemeProvider");
17
15
 
18
16
  var _utils = require("../utils");
@@ -25,6 +23,8 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
25
23
 
26
24
  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; }
27
25
 
26
+ const [selectProps, selectedSystemPropTypes] = (0, _utils.selectSystemProps)([_utils.a11yProps, _utils.viewProps]);
27
+
28
28
  const selectProgressStyles = ({
29
29
  backgroundColor,
30
30
  borderWidth,
@@ -79,12 +79,13 @@ const Progress = /*#__PURE__*/(0, _react.forwardRef)(({
79
79
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_View.default, {
80
80
  ref: ref,
81
81
  style: selectProgressStyles(themeTokens),
82
- ..._props.a11yProps.select(rest),
82
+ ...selectProps(rest),
83
83
  children: children
84
84
  });
85
85
  });
86
86
  Progress.displayName = 'Progress';
87
- Progress.propTypes = {
87
+ Progress.propTypes = { ...selectedSystemPropTypes,
88
+
88
89
  /**
89
90
  * Use the `children` prop to supply one or several `ProgressBar`s.
90
91
  */