@telus-uds/components-base 0.0.2-prerelease.7 → 0.0.2-prerelease.8

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 (349) hide show
  1. package/.ultra.cache.json +1 -1
  2. package/CHANGELOG.md +27 -0
  3. package/__fixtures__/Accessible.js +33 -0
  4. package/__fixtures__/Accessible.native.js +32 -0
  5. package/__fixtures__/testTheme.js +429 -29
  6. package/__tests__/ActivityIndicator/ActivityIndicator.test.jsx +1 -1
  7. package/__tests__/Button/ButtonGroup.test.jsx +2 -2
  8. package/__tests__/Checkbox/CheckboxGroup.test.jsx +247 -0
  9. package/__tests__/Icon/Icon.test.jsx +3 -3
  10. package/__tests__/Modal/Modal.test.jsx +47 -0
  11. package/__tests__/Notification/Notification.test.jsx +20 -0
  12. package/__tests__/Pagination/Pagination.test.jsx +2 -2
  13. package/__tests__/Progress/Progress.test.jsx +79 -0
  14. package/__tests__/Radio/RadioGroup.test.jsx +221 -0
  15. package/__tests__/RadioCard/RadioCard.test.jsx +87 -0
  16. package/__tests__/RadioCard/RadioCardGroup.test.jsx +247 -0
  17. package/__tests__/Search/Search.test.jsx +72 -0
  18. package/__tests__/Skeleton/Skeleton.test.jsx +1 -1
  19. package/__tests__/StepTracker/StepTracker.test.jsx +94 -0
  20. package/__tests__/Tabs/Tabs.test.jsx +200 -0
  21. package/__tests__/Tags/Tags.test.jsx +1 -1
  22. package/__tests__/utils/input.test.js +58 -0
  23. package/__tests__/utils/useCopy.test.js +14 -3
  24. package/babel.config.js +20 -0
  25. package/jest.config.js +1 -1
  26. package/lib/A11yInfoProvider/index.js +54 -26
  27. package/lib/A11yText/index.js +37 -14
  28. package/lib/ActivityIndicator/Spinner.js +78 -0
  29. package/lib/ActivityIndicator/Spinner.native.js +121 -87
  30. package/lib/ActivityIndicator/index.js +28 -12
  31. package/lib/ActivityIndicator/shared.js +27 -12
  32. package/lib/BaseProvider/index.js +34 -11
  33. package/lib/Box/Box.js +54 -31
  34. package/lib/Box/index.js +13 -2
  35. package/lib/Button/Button.js +32 -11
  36. package/lib/Button/ButtonBase.js +85 -78
  37. package/lib/Button/ButtonGroup.js +94 -70
  38. package/lib/Button/ButtonLink.js +38 -15
  39. package/lib/Button/index.js +31 -4
  40. package/lib/Button/propTypes.js +32 -9
  41. package/lib/Card/Card.js +36 -41
  42. package/lib/Card/CardBase.js +78 -0
  43. package/lib/Card/PressableCardBase.js +137 -0
  44. package/lib/Card/index.js +40 -2
  45. package/lib/Checkbox/Checkbox.js +139 -103
  46. package/lib/Checkbox/CheckboxGroup.js +231 -0
  47. package/lib/Checkbox/CheckboxInput.js +74 -0
  48. package/lib/Checkbox/CheckboxInput.native.js +9 -1
  49. package/lib/Checkbox/index.js +21 -2
  50. package/lib/Divider/Divider.js +50 -24
  51. package/lib/Divider/index.js +13 -2
  52. package/lib/ExpandCollapse/Accordion.js +20 -7
  53. package/lib/ExpandCollapse/Control.js +50 -27
  54. package/lib/ExpandCollapse/ExpandCollapse.js +41 -24
  55. package/lib/ExpandCollapse/Panel.js +75 -37
  56. package/lib/ExpandCollapse/index.js +25 -7
  57. package/lib/Feedback/Feedback.js +69 -40
  58. package/lib/Feedback/index.js +13 -2
  59. package/lib/Fieldset/Fieldset.js +160 -0
  60. package/lib/Fieldset/FieldsetContainer.js +41 -0
  61. package/lib/Fieldset/FieldsetContainer.native.js +33 -0
  62. package/lib/Fieldset/Legend.js +33 -0
  63. package/lib/Fieldset/Legend.native.js +43 -0
  64. package/lib/Fieldset/cssReset.js +21 -0
  65. package/lib/Fieldset/index.js +13 -0
  66. package/lib/FlexGrid/Col/Col.js +67 -38
  67. package/lib/FlexGrid/Col/index.js +13 -2
  68. package/lib/FlexGrid/FlexGrid.js +70 -45
  69. package/lib/FlexGrid/Row/Row.js +48 -27
  70. package/lib/FlexGrid/Row/index.js +13 -2
  71. package/lib/FlexGrid/helpers/index.js +9 -1
  72. package/lib/FlexGrid/index.js +13 -2
  73. package/lib/FlexGrid/providers/GutterContext.js +15 -3
  74. package/lib/Icon/Icon.js +46 -44
  75. package/lib/Icon/IconText.js +49 -21
  76. package/lib/Icon/index.js +31 -4
  77. package/lib/InputLabel/InputLabel.js +70 -36
  78. package/lib/InputLabel/LabelContent.js +31 -0
  79. package/lib/InputLabel/LabelContent.native.js +9 -1
  80. package/lib/InputLabel/index.js +13 -2
  81. package/lib/InputSupports/InputSupports.js +62 -48
  82. package/lib/InputSupports/index.js +13 -2
  83. package/lib/InputSupports/propTypes.js +19 -8
  84. package/lib/InputSupports/useInputSupports.js +41 -0
  85. package/lib/Link/ChevronLink.js +33 -16
  86. package/lib/Link/InlinePressable.js +50 -0
  87. package/lib/Link/InlinePressable.native.js +34 -11
  88. package/lib/Link/Link.js +25 -9
  89. package/lib/Link/LinkBase.js +87 -57
  90. package/lib/Link/TextButton.js +32 -13
  91. package/lib/Link/index.js +39 -5
  92. package/lib/List/List.js +51 -23
  93. package/lib/List/ListItem.js +70 -40
  94. package/lib/List/index.js +13 -2
  95. package/lib/Modal/Modal.js +226 -0
  96. package/lib/Modal/dictionary.js +16 -0
  97. package/lib/Modal/index.js +13 -0
  98. package/lib/Notification/Notification.js +200 -0
  99. package/lib/Notification/dictionary.js +15 -0
  100. package/lib/Notification/index.js +13 -0
  101. package/lib/Pagination/PageButton.js +47 -25
  102. package/lib/Pagination/Pagination.js +70 -40
  103. package/lib/Pagination/SideButton.js +63 -37
  104. package/lib/Pagination/dictionary.js +9 -2
  105. package/lib/Pagination/index.js +13 -2
  106. package/lib/Pagination/usePagination.js +12 -2
  107. package/lib/Progress/Progress.js +99 -0
  108. package/lib/Progress/ProgressBar.js +146 -0
  109. package/lib/Progress/ProgressBarBackground.js +57 -0
  110. package/lib/Progress/index.js +16 -0
  111. package/lib/Radio/Radio.js +110 -109
  112. package/lib/Radio/RadioButton.js +141 -0
  113. package/lib/Radio/RadioGroup.js +233 -0
  114. package/lib/Radio/RadioInput.js +76 -0
  115. package/lib/Radio/RadioInput.native.js +9 -1
  116. package/lib/Radio/index.js +21 -2
  117. package/lib/RadioCard/RadioCard.js +240 -0
  118. package/lib/RadioCard/RadioCardGroup.js +251 -0
  119. package/lib/RadioCard/index.js +21 -0
  120. package/lib/Search/Search.js +243 -0
  121. package/lib/Search/dictionary.js +19 -0
  122. package/lib/Search/index.js +13 -0
  123. package/lib/Select/Group.js +33 -0
  124. package/lib/Select/Group.native.js +16 -5
  125. package/lib/Select/Item.js +29 -0
  126. package/lib/Select/Item.native.js +14 -4
  127. package/lib/Select/Picker.js +79 -0
  128. package/lib/Select/Picker.native.js +52 -24
  129. package/lib/Select/Select.js +110 -82
  130. package/lib/Select/index.js +19 -6
  131. package/lib/SideNav/Item.js +54 -33
  132. package/lib/SideNav/ItemContent.js +41 -15
  133. package/lib/SideNav/ItemsGroup.js +46 -27
  134. package/lib/SideNav/SideNav.js +92 -69
  135. package/lib/SideNav/index.js +15 -1
  136. package/lib/Skeleton/Skeleton.js +55 -37
  137. package/lib/Skeleton/index.js +13 -2
  138. package/lib/Skeleton/skeleton.constant.js +12 -0
  139. package/lib/Skeleton/skeletonWebAnimation.js +27 -0
  140. package/lib/Skeleton/useSkeletonNativeAnimation.js +37 -0
  141. package/lib/Spacer/Spacer.js +31 -12
  142. package/lib/Spacer/index.js +13 -2
  143. package/lib/StackView/StackView.js +49 -27
  144. package/lib/StackView/StackWrap.js +33 -10
  145. package/lib/StackView/StackWrap.native.js +13 -2
  146. package/lib/StackView/StackWrapBox.js +46 -24
  147. package/lib/StackView/StackWrapGap.js +43 -22
  148. package/lib/StackView/common.js +19 -4
  149. package/lib/StackView/getStackedContent.js +49 -19
  150. package/lib/StackView/index.js +29 -5
  151. package/lib/StepTracker/Step.js +245 -0
  152. package/lib/StepTracker/StepTracker.js +197 -0
  153. package/lib/StepTracker/dictionary.js +17 -0
  154. package/lib/StepTracker/index.js +13 -0
  155. package/lib/Tabs/HorizontalScroll.js +199 -0
  156. package/lib/Tabs/ScrollViewEnd.js +66 -0
  157. package/lib/Tabs/ScrollViewEnd.native.js +41 -0
  158. package/lib/Tabs/Tabs.js +117 -0
  159. package/lib/Tabs/TabsItem.js +234 -0
  160. package/lib/Tabs/TabsScrollButton.js +121 -0
  161. package/lib/Tabs/dictionary.js +18 -0
  162. package/lib/Tabs/index.js +13 -0
  163. package/lib/Tabs/itemPositions.js +128 -0
  164. package/lib/Tags/Tags.js +130 -97
  165. package/lib/Tags/index.js +13 -2
  166. package/lib/TextInput/TextArea.js +51 -24
  167. package/lib/TextInput/TextInput.js +40 -19
  168. package/lib/TextInput/TextInputBase.js +78 -55
  169. package/lib/TextInput/index.js +23 -3
  170. package/lib/TextInput/propTypes.js +18 -7
  171. package/lib/ThemeProvider/ThemeProvider.js +38 -14
  172. package/lib/ThemeProvider/index.js +61 -6
  173. package/lib/ThemeProvider/useSetTheme.js +14 -5
  174. package/lib/ThemeProvider/useTheme.js +13 -4
  175. package/lib/ThemeProvider/useThemeTokens.js +32 -16
  176. package/lib/ThemeProvider/utils/index.js +31 -2
  177. package/lib/ThemeProvider/utils/styles.js +52 -16
  178. package/lib/ThemeProvider/utils/theme-tokens.js +94 -16
  179. package/lib/ToggleSwitch/ToggleSwitch.js +75 -51
  180. package/lib/ToggleSwitch/index.js +13 -2
  181. package/lib/Tooltip/{Backdrop.web.js → Backdrop.js} +22 -18
  182. package/lib/Tooltip/Backdrop.native.js +39 -15
  183. package/lib/Tooltip/Tooltip.js +112 -70
  184. package/lib/Tooltip/dictionary.js +9 -2
  185. package/lib/Tooltip/getTooltipPosition.js +9 -1
  186. package/lib/Tooltip/index.js +13 -2
  187. package/lib/TooltipButton/TooltipButton.js +57 -38
  188. package/lib/TooltipButton/index.js +13 -2
  189. package/lib/Typography/Typography.js +57 -27
  190. package/lib/Typography/index.js +13 -2
  191. package/lib/ViewportProvider/ViewportProvider.js +34 -13
  192. package/lib/ViewportProvider/index.js +28 -3
  193. package/lib/ViewportProvider/useViewport.js +15 -3
  194. package/lib/ViewportProvider/useViewportListener.js +24 -10
  195. package/lib/index.js +509 -33
  196. package/lib/utils/a11y/index.js +18 -1
  197. package/lib/utils/a11y/textSize.js +23 -7
  198. package/lib/utils/animation/index.js +15 -2
  199. package/lib/utils/animation/useVerticalExpandAnimation.js +28 -11
  200. package/lib/utils/children.js +87 -0
  201. package/lib/utils/index.js +163 -10
  202. package/lib/utils/info/index.js +18 -6
  203. package/lib/utils/info/platform/index.js +19 -7
  204. package/lib/utils/info/platform/platform.android.js +8 -1
  205. package/lib/utils/info/platform/platform.ios.js +8 -1
  206. package/lib/utils/info/platform/platform.js +8 -0
  207. package/lib/utils/info/platform/platform.native.js +8 -1
  208. package/lib/utils/info/versions.js +15 -4
  209. package/lib/utils/input.js +51 -33
  210. package/lib/utils/pressability.js +38 -10
  211. package/lib/utils/propTypes.js +217 -125
  212. package/lib/utils/useCopy.js +40 -5
  213. package/lib/utils/useHash.js +48 -0
  214. package/lib/utils/useHash.native.js +15 -0
  215. package/lib/utils/useResponsiveProp.js +21 -9
  216. package/lib/utils/useSpacingScale.js +21 -9
  217. package/lib/utils/useUniqueId.js +13 -4
  218. package/package.json +7 -6
  219. package/release-context.json +4 -4
  220. package/src/ActivityIndicator/{Spinner.web.jsx → Spinner.jsx} +0 -0
  221. package/src/Box/Box.jsx +11 -4
  222. package/src/Button/Button.jsx +3 -2
  223. package/src/Button/ButtonBase.jsx +27 -36
  224. package/src/Button/ButtonGroup.jsx +2 -2
  225. package/src/Button/ButtonLink.jsx +3 -2
  226. package/src/Button/propTypes.js +12 -2
  227. package/src/Card/Card.jsx +4 -30
  228. package/src/Card/CardBase.jsx +57 -0
  229. package/src/Card/PressableCardBase.jsx +112 -0
  230. package/src/Card/index.js +3 -0
  231. package/src/Checkbox/Checkbox.jsx +10 -11
  232. package/src/Checkbox/CheckboxGroup.jsx +196 -0
  233. package/src/Checkbox/{CheckboxInput.web.jsx → CheckboxInput.jsx} +0 -0
  234. package/src/Checkbox/index.js +2 -0
  235. package/src/ExpandCollapse/Control.jsx +1 -1
  236. package/src/Feedback/Feedback.jsx +1 -1
  237. package/src/Fieldset/Fieldset.jsx +129 -0
  238. package/src/Fieldset/FieldsetContainer.jsx +22 -0
  239. package/src/Fieldset/FieldsetContainer.native.jsx +16 -0
  240. package/src/Fieldset/Legend.jsx +16 -0
  241. package/src/Fieldset/Legend.native.jsx +22 -0
  242. package/src/Fieldset/cssReset.js +14 -0
  243. package/src/Fieldset/index.js +3 -0
  244. package/src/Icon/Icon.jsx +14 -23
  245. package/src/Icon/IconText.jsx +2 -2
  246. package/src/Icon/index.js +2 -2
  247. package/src/InputLabel/InputLabel.jsx +9 -2
  248. package/src/InputLabel/{LabelContent.web.jsx → LabelContent.jsx} +0 -0
  249. package/src/InputSupports/InputSupports.jsx +7 -18
  250. package/src/InputSupports/useInputSupports.js +30 -0
  251. package/src/Link/{InlinePressable.web.jsx → InlinePressable.jsx} +0 -0
  252. package/src/Link/LinkBase.jsx +14 -12
  253. package/src/Modal/Modal.jsx +185 -0
  254. package/src/Modal/dictionary.js +9 -0
  255. package/src/Modal/index.js +3 -0
  256. package/src/Notification/Notification.jsx +149 -0
  257. package/src/Notification/dictionary.js +8 -0
  258. package/src/Notification/index.js +3 -0
  259. package/src/Progress/Progress.jsx +77 -0
  260. package/src/Progress/ProgressBar.jsx +110 -0
  261. package/src/Progress/ProgressBarBackground.jsx +34 -0
  262. package/src/Progress/index.js +6 -0
  263. package/src/Radio/Radio.jsx +19 -56
  264. package/src/Radio/RadioButton.jsx +131 -0
  265. package/src/Radio/RadioGroup.jsx +198 -0
  266. package/src/Radio/{RadioInput.web.jsx → RadioInput.jsx} +0 -0
  267. package/src/Radio/index.js +2 -0
  268. package/src/RadioCard/RadioCard.jsx +191 -0
  269. package/src/RadioCard/RadioCardGroup.jsx +211 -0
  270. package/src/RadioCard/index.js +5 -0
  271. package/src/Search/Search.jsx +204 -0
  272. package/src/Search/dictionary.js +12 -0
  273. package/src/Search/index.js +3 -0
  274. package/src/Select/{Group.web.jsx → Group.jsx} +0 -0
  275. package/src/Select/{Item.web.jsx → Item.jsx} +0 -0
  276. package/src/Select/{Picker.web.jsx → Picker.jsx} +0 -0
  277. package/src/Select/Select.jsx +12 -22
  278. package/src/SideNav/Item.jsx +2 -2
  279. package/src/Skeleton/Skeleton.jsx +17 -20
  280. package/src/Skeleton/skeleton.constant.js +3 -0
  281. package/src/Skeleton/skeletonWebAnimation.js +13 -0
  282. package/src/Skeleton/useSkeletonNativeAnimation.js +27 -0
  283. package/src/StackView/StackView.jsx +10 -3
  284. package/src/StackView/StackWrap.jsx +9 -1
  285. package/src/StackView/StackWrapBox.jsx +4 -3
  286. package/src/StackView/StackWrapGap.jsx +3 -3
  287. package/src/StackView/getStackedContent.jsx +8 -2
  288. package/src/StepTracker/Step.jsx +202 -0
  289. package/src/StepTracker/StepTracker.jsx +163 -0
  290. package/src/StepTracker/dictionary.js +10 -0
  291. package/src/StepTracker/index.js +3 -0
  292. package/src/Tabs/HorizontalScroll.jsx +165 -0
  293. package/src/Tabs/ScrollViewEnd.jsx +53 -0
  294. package/src/Tabs/ScrollViewEnd.native.jsx +24 -0
  295. package/src/Tabs/Tabs.jsx +89 -0
  296. package/src/Tabs/TabsItem.jsx +204 -0
  297. package/src/Tabs/TabsScrollButton.jsx +100 -0
  298. package/src/Tabs/dictionary.js +11 -0
  299. package/src/Tabs/index.js +3 -0
  300. package/src/Tabs/itemPositions.js +101 -0
  301. package/src/Tags/Tags.jsx +2 -1
  302. package/src/TextInput/TextInputBase.jsx +12 -22
  303. package/src/ThemeProvider/useThemeTokens.js +2 -2
  304. package/src/ThemeProvider/utils/styles.js +18 -5
  305. package/src/ThemeProvider/utils/theme-tokens.js +46 -5
  306. package/src/ToggleSwitch/ToggleSwitch.jsx +2 -3
  307. package/src/Tooltip/{Backdrop.web.jsx → Backdrop.jsx} +0 -0
  308. package/src/Tooltip/Tooltip.jsx +1 -1
  309. package/src/TooltipButton/TooltipButton.jsx +23 -27
  310. package/src/Typography/Typography.jsx +6 -5
  311. package/src/index.js +20 -2
  312. package/src/utils/children.jsx +66 -0
  313. package/src/utils/index.js +3 -0
  314. package/src/utils/info/platform/platform.js +1 -0
  315. package/src/utils/info/versions.js +2 -2
  316. package/src/utils/input.js +20 -12
  317. package/src/utils/pressability.js +4 -0
  318. package/src/utils/propTypes.js +98 -34
  319. package/src/utils/useCopy.js +30 -4
  320. package/src/utils/useHash.js +34 -0
  321. package/src/utils/useHash.native.js +6 -0
  322. package/stories/A11yText/A11yText.stories.jsx +4 -8
  323. package/stories/Checkbox/Checkbox.stories.jsx +24 -1
  324. package/stories/Icon/Icon.stories.jsx +6 -5
  325. package/stories/Modal/Modal.stories.jsx +29 -0
  326. package/stories/Notification/Notification.stories.jsx +82 -0
  327. package/stories/Progress/Progress.stories.jsx +93 -0
  328. package/stories/Radio/Radio.stories.jsx +23 -36
  329. package/stories/RadioCard/RadioCard.stories.jsx +98 -0
  330. package/stories/Search/Search.stories.jsx +16 -0
  331. package/stories/StepTracker/StepTracker.stories.jsx +71 -0
  332. package/stories/Tabs/Tabs.stories.jsx +97 -0
  333. package/stories/{platform-supports.web.jsx → platform-supports.jsx} +0 -0
  334. package/__fixtures__/accessible.icon.svg +0 -6
  335. package/babel.config.json +0 -8
  336. package/lib/ActivityIndicator/Spinner.web.js +0 -55
  337. package/lib/Checkbox/CheckboxInput.web.js +0 -57
  338. package/lib/InputLabel/LabelContent.web.js +0 -17
  339. package/lib/Link/InlinePressable.web.js +0 -32
  340. package/lib/Radio/RadioInput.web.js +0 -59
  341. package/lib/Select/Group.web.js +0 -18
  342. package/lib/Select/Item.web.js +0 -15
  343. package/lib/Select/Picker.web.js +0 -63
  344. package/lib/config/svgr-icons-web.js +0 -9
  345. package/lib/config/svgr-icons.js +0 -52
  346. package/lib/utils/info/platform/platform.web.js +0 -1
  347. package/src/config/svgr-icons-web.js +0 -11
  348. package/src/config/svgr-icons.js +0 -46
  349. package/src/utils/info/platform/platform.web.js +0 -1
@@ -1,16 +1,16 @@
1
1
  import { appearances } from '@telus-uds/system-themes/schema'
2
2
 
3
3
  // This is a dev-only file so we don't need to make @telus-uds/palette-allium a dependency.
4
- // eslint-disable-next-line import/no-extraneous-dependencies
5
- const chevronLeft = require('@telus-uds/palette-allium/build/rn/icons/chevron-left.icon.svg')
6
- .default
7
- // eslint-disable-next-line import/no-extraneous-dependencies
8
- const chevronRight = require('@telus-uds/palette-allium/build/rn/icons/chevron-right.icon.svg')
9
- .default
10
- // eslint-disable-next-line import/no-extraneous-dependencies
11
- const checkmarkIcon = require('@telus-uds/palette-allium/build/rn/icons/checkmark.icon.svg').default
12
- // eslint-disable-next-line import/no-extraneous-dependencies
13
- const questionIcon = require('@telus-uds/palette-allium/build/rn/icons/question.icon.svg').default
4
+ /* eslint-disable-next-line import/no-extraneous-dependencies */
5
+ import {
6
+ ChevronLeft,
7
+ ChevronRight,
8
+ Checkmark,
9
+ Close,
10
+ Question,
11
+ SearchBold,
12
+ Times
13
+ } from '@telus-uds/palette-allium/build/rn/icons'
14
14
 
15
15
  const transparent = 'rgba(0, 0, 0, 0)'
16
16
 
@@ -123,7 +123,6 @@ export default {
123
123
  outerBorderColor: transparent,
124
124
  outerBorderWidth: 4,
125
125
  outerBorderGap: 2,
126
- outerBorderRadius: 2,
127
126
 
128
127
  fontSize: 16,
129
128
  color: '#0e6ac8',
@@ -224,8 +223,7 @@ export default {
224
223
  {
225
224
  if: { rounded: true },
226
225
  tokens: {
227
- borderRadius: 48,
228
- outerBorderRadius: 16
226
+ borderRadius: 48
229
227
  }
230
228
  },
231
229
  {
@@ -243,8 +241,7 @@ export default {
243
241
  {
244
242
  if: { rounded: true, pressed: true },
245
243
  tokens: {
246
- borderRadius: 0,
247
- outerBorderRadius: 0
244
+ borderRadius: 0
248
245
  }
249
246
  },
250
247
  {
@@ -312,7 +309,6 @@ export default {
312
309
  outerBorderColor: transparent,
313
310
  outerBorderWidth: 4,
314
311
  outerBorderGap: 2,
315
- outerBorderRadius: 2,
316
312
 
317
313
  fontSize: 16,
318
314
  color: '#0e6ac8',
@@ -369,6 +365,7 @@ export default {
369
365
  viewport: appearances.system.viewport
370
366
  },
371
367
  tokens: {
368
+ flex: 1,
372
369
  backgroundColor: '#ffffff',
373
370
  borderColor: '#666666',
374
371
  borderRadius: 6,
@@ -458,11 +455,10 @@ export default {
458
455
  },
459
456
  tokens: {
460
457
  containerBackgroundColor: transparent,
461
- containerMarginBottom: 8,
462
458
  feedbackMarginBottom: 0,
463
459
  feedbackMarginTop: 2,
464
460
  feedbackPosition: 'bottom',
465
- icon: checkmarkIcon,
461
+ icon: Checkmark,
466
462
  iconBackgroundColor: '#7c53a5',
467
463
  iconColor: '#ffffff',
468
464
  iconSize: 18,
@@ -517,11 +513,19 @@ export default {
517
513
  ChevronLink: {
518
514
  appearances: {},
519
515
  tokens: {
520
- leftIcon: chevronLeft,
521
- rightIcon: chevronRight,
516
+ leftIcon: ChevronLeft,
517
+ rightIcon: ChevronRight,
522
518
  iconDisplace: 4
523
519
  }
524
520
  },
521
+ CheckboxGroup: {
522
+ appearances: {},
523
+ tokens: {
524
+ fieldSpace: 2,
525
+ space: 2
526
+ },
527
+ rules: []
528
+ },
525
529
  Divider: {
526
530
  appearances: {
527
531
  weight: {
@@ -597,6 +601,348 @@ export default {
597
601
  }
598
602
  ]
599
603
  },
604
+ Progress: {
605
+ appearances: {
606
+ size: { values: ['mini'], type: 'variant' }
607
+ },
608
+ tokens: {
609
+ backgroundColor: '#ffffff',
610
+ borderWidth: 1,
611
+ borderColor: '#f4f4f7',
612
+ borderRadius: 12,
613
+ height: 16
614
+ },
615
+ rules: [{ if: { size: 'mini' }, tokens: { height: 8 } }]
616
+ },
617
+ ProgressBar: {
618
+ appearances: {
619
+ inactive: appearances.ProgressBar.inactive,
620
+ negative: { values: [true], type: 'variant' }
621
+ },
622
+ tokens: {
623
+ backgroundColor: '#08804b',
624
+ borderRadius: 12,
625
+ outlineWidth: 1,
626
+ outlineColor: '#2b8000'
627
+ },
628
+ rules: [
629
+ {
630
+ if: { inactive: true },
631
+ tokens: {
632
+ backgroundColor: '#b2b9bf',
633
+ outlineColor: '#f4f4f7'
634
+ }
635
+ },
636
+ {
637
+ if: { negative: true },
638
+ tokens: {
639
+ backgroundColor: '#c12335',
640
+ outlineColor: '#c12335'
641
+ }
642
+ }
643
+ ]
644
+ },
645
+ RadioCardGroup: {
646
+ appearances: {
647
+ viewport: appearances.system.viewport
648
+ },
649
+ tokens: {
650
+ direction: 'column',
651
+ fieldSpace: 2,
652
+ space: 2
653
+ },
654
+ rules: [
655
+ {
656
+ if: {
657
+ viewport: ['lg', 'xl']
658
+ },
659
+ tokens: {
660
+ direction: 'row'
661
+ }
662
+ }
663
+ ]
664
+ },
665
+ RadioGroup: {
666
+ appearances: {},
667
+ tokens: {
668
+ fieldSpace: 2,
669
+ space: 2
670
+ },
671
+ rules: []
672
+ },
673
+ Modal: {
674
+ appearances: {},
675
+ tokens: {
676
+ backdropColor: 'rgba(0,0,0,0.5)',
677
+ backdropOpacity: 1,
678
+ maxWidth: 600,
679
+ containerPaddingLeft: 16,
680
+ containerPaddingRight: 16,
681
+ containerPaddingTop: 16,
682
+ containerPaddingBottom: 16,
683
+ backgroundColor: '#fff',
684
+ borderRadius: 4,
685
+ paddingLeft: 24,
686
+ paddingRight: 24,
687
+ paddingTop: 24,
688
+ paddingBottom: 24,
689
+
690
+ closeIcon: Close,
691
+ closeIconSize: 24,
692
+ closeIconColor: '#000'
693
+ },
694
+ rules: []
695
+ },
696
+ Search: {
697
+ appearances: {
698
+ focus: appearances.Search.focus,
699
+ hover: appearances.Search.hover,
700
+ inactive: appearances.Search.inactive
701
+ },
702
+ tokens: {
703
+ borderRadius: 32,
704
+ borderWidth: 1,
705
+ borderColor: '#00000044',
706
+ paddingTop: 6,
707
+ paddingBottom: 6,
708
+ paddingLeft: 16,
709
+ paddingRight: 6,
710
+ outerBorderWidth: 1,
711
+ outerBorderColor: transparent,
712
+ outerBorderRadius: 32,
713
+ buttonsGap: 2,
714
+ clearButtonIcon: Times,
715
+ submitButtonIcon: SearchBold
716
+ },
717
+ rules: [
718
+ {
719
+ if: { focus: true },
720
+ tokens: {
721
+ outerBorderColor: '#debc06'
722
+ }
723
+ },
724
+ {
725
+ if: { hover: true },
726
+ tokens: {
727
+ outerBorderColor: '#6666cc'
728
+ }
729
+ }
730
+ ]
731
+ },
732
+ SearchButton: {
733
+ appearances: {},
734
+ tokens: {},
735
+ rules: []
736
+ },
737
+ Notification: {
738
+ appearances: {},
739
+ tokens: {
740
+ dismissIcon: Close
741
+ },
742
+ rules: []
743
+ },
744
+ RadioCard: {
745
+ appearances: {
746
+ checked: appearances.Radio.checked,
747
+ error: appearances.Radio.error,
748
+ focus: appearances.Radio.focus,
749
+ hover: appearances.Radio.hover,
750
+ inactive: appearances.Radio.inactive
751
+ },
752
+ tokens: {
753
+ // Taken from Allium theme snapshot
754
+ flex: 1,
755
+ backgroundColor: '#ffffff',
756
+ borderColor: '#b2b9bf',
757
+ borderRadius: 6,
758
+ borderWidth: 1,
759
+ color: '#2c2e30',
760
+ contentSpace: 2,
761
+ fontSize: 20,
762
+ fontWeight: '500',
763
+ letterSpacing: 0,
764
+ lineHeight: 1.4,
765
+ outerBorderColor: transparent,
766
+ outerBorderGap: 0,
767
+ outerBorderWidth: 0,
768
+ paddingBottom: 16,
769
+ paddingLeft: 10,
770
+ paddingRight: 16,
771
+ paddingTop: 16,
772
+ radioCheckedBackgroundColor: '#7c53a5',
773
+ radioCheckedSize: 12,
774
+ radioInputBackgroundColor: '#ffffff',
775
+ radioInputBorderColor: '#676e73',
776
+ radioInputBorderWidth: 1,
777
+ radioInputOutlineColor: transparent,
778
+ radioInputOutlineWidth: 0,
779
+ radioInputSize: 20,
780
+ radioOuterBorderColor: transparent,
781
+ radioOuterBorderGap: 0,
782
+ radioOuterBorderWidth: 0,
783
+ radioSpace: 2,
784
+ minWidth: 288,
785
+ shadow: null,
786
+ textTransform: 'none'
787
+ },
788
+ rules: [
789
+ {
790
+ if: {
791
+ viewport: ['lg', 'xl']
792
+ },
793
+ tokens: {
794
+ fontSize: 24,
795
+ lineHeight: 1.33333333333,
796
+ paddingBottom: 24,
797
+ paddingLeft: 16,
798
+ paddingRight: 24,
799
+ paddingTop: 16
800
+ }
801
+ },
802
+ {
803
+ if: {
804
+ hover: true
805
+ },
806
+ tokens: {
807
+ borderColor: '#676e73',
808
+ outerBorderColor: '#e3e6e8',
809
+ outerBorderWidth: 2,
810
+ radioOuterBorderColor: '#e3e6e8',
811
+ radioOuterBorderWidth: 2
812
+ }
813
+ },
814
+ {
815
+ description: 'Pressed state matches hover state plus light grey background',
816
+ if: {
817
+ pressed: true
818
+ },
819
+ tokens: {
820
+ backgroundColor: '#f4f4f7',
821
+ borderColor: '#676e73',
822
+ outerBorderColor: '#e3e6e8',
823
+ outerBorderWidth: 2
824
+ }
825
+ },
826
+ {
827
+ if: {
828
+ focus: true
829
+ },
830
+ tokens: {
831
+ radioIputBorderColor: '#7c53a5',
832
+ radioInputBorderWidth: 3,
833
+ outerBorderColor: '#676e73',
834
+ outerBorderGap: 2,
835
+ outerBorderWidth: 2
836
+ }
837
+ },
838
+ {
839
+ if: {
840
+ inactive: true
841
+ },
842
+ tokens: {
843
+ backgroundColor: '#f4f4f7',
844
+ borderColor: 'transparent',
845
+ radioInputBackgroundColor: '#e3e6e8',
846
+ radioInputBorderColor: 'rgba(0, 0, 0, 0)',
847
+ labelColor: '#676e73'
848
+ }
849
+ },
850
+ {
851
+ if: {
852
+ error: true
853
+ },
854
+ tokens: {
855
+ borderColor: '#e12339',
856
+ color: '#e12339',
857
+ radioInputBorderColor: '#e12339'
858
+ }
859
+ }
860
+ ]
861
+ },
862
+ Tabs: {
863
+ appearances: {},
864
+ tokens: {
865
+ buttonClearance: 20,
866
+ gutter: 12,
867
+ nextIcon: ChevronRight,
868
+ previousIcon: ChevronLeft,
869
+ borderBottomWidth: 1,
870
+ borderBottomColor: '#ebefed',
871
+ space: 1
872
+ },
873
+ rules: []
874
+ },
875
+ TabsItem: {
876
+ appearances: {},
877
+ tokens: {
878
+ backgroundColor: transparent,
879
+ borderColor: transparent,
880
+ borderRadius: 0,
881
+ borderWidth: 0,
882
+ color: '#034045',
883
+ fontName: '',
884
+ fontScaleCap: 66,
885
+ fontSize: 14,
886
+ fontWeight: '700',
887
+ highlightBarBorderRadius: 0,
888
+ highlightBarBorderWidth: 0,
889
+ highlightBarHeight: 0,
890
+ highlightColor: transparent,
891
+ highlightTriangleSize: 0,
892
+ letterSpacing: 0,
893
+ lineHeight: 1,
894
+ maxWidth: 150,
895
+ paddingHorizontal: 16,
896
+ paddingVertical: 16,
897
+ space: 0,
898
+ textAlign: 'left',
899
+ textTransform: 'uppercase'
900
+ },
901
+ rules: [
902
+ {
903
+ if: { hover: true },
904
+ tokens: {
905
+ highlightBarHeight: 2,
906
+ highlightColor: '#81a0a2'
907
+ }
908
+ },
909
+ {
910
+ if: { focus: true },
911
+ tokens: {
912
+ borderColor: '#81a0a2',
913
+ borderWidth: 1
914
+ }
915
+ },
916
+ {
917
+ if: { pressed: true },
918
+ tokens: {
919
+ backgroundColor: '#ebefed'
920
+ }
921
+ },
922
+ {
923
+ if: { selected: true },
924
+ tokens: {
925
+ highlightBarHeight: 2,
926
+ highlightColor: '#034045',
927
+ highlightTriangleSize: 8
928
+ }
929
+ }
930
+ ]
931
+ },
932
+ TabsScrollButton: {
933
+ appearances: {},
934
+ tokens: {
935
+ backgroundColor: '#ffffff',
936
+ borderColor: '#81a0a2',
937
+ borderRadius: 12,
938
+ borderWidth: 1,
939
+ iconColor: '#81a0a2',
940
+ iconSize: 24,
941
+ padding: 0,
942
+ shadow: null
943
+ },
944
+ rules: []
945
+ },
600
946
  Typography: {
601
947
  appearances: {
602
948
  weight: {
@@ -961,7 +1307,6 @@ export default {
961
1307
  checkedSize: 12,
962
1308
  containerBackgroundColor: '#ffffff',
963
1309
  containerBorderRadius: 12,
964
- containerMarginBottom: 0,
965
1310
  containerOpacity: 1,
966
1311
  containerPaddingBottom: 12,
967
1312
  containerPaddingLeft: 18,
@@ -978,6 +1323,9 @@ export default {
978
1323
  inputOutlineWidth: 0,
979
1324
  inputSize: 20,
980
1325
  inputShadow: null,
1326
+ outerBorderWidth: 0,
1327
+ outerBorderColor: transparent,
1328
+ outerBorderGap: 0,
981
1329
  labelColor: '#414547',
982
1330
  labelFontName: '',
983
1331
  labelFontSize: 18,
@@ -1029,6 +1377,62 @@ export default {
1029
1377
  StackView: {
1030
1378
  tokens: {}
1031
1379
  },
1380
+ StepTracker: {
1381
+ appearances: {},
1382
+ tokens: {
1383
+ completedIcon: null,
1384
+ completedIconColor: '#ffffff',
1385
+ completedIconSize: 12,
1386
+ connectorColor: '#676e73',
1387
+ connectorHeight: 1,
1388
+ connectorMinWidth: 16,
1389
+ connectorCompletedHeight: 3,
1390
+ connectorCompletedColor: '#7c53a5',
1391
+ containerPaddingBottom: 0,
1392
+ containerPaddingLeft: 0,
1393
+ containerPaddingRight: 0,
1394
+ containerPaddingTop: 0,
1395
+ knobBackgroundColor: transparent,
1396
+ knobBorderWidth: 1,
1397
+ knobBorderColor: '#676e73',
1398
+ knobCompletedBackgroundColor: '#7c53a5',
1399
+ knobCompletedBorderColor: '#7c53a5',
1400
+ knobCompletedPaddingLeft: 1,
1401
+ knobCompletedPaddingTop: 1,
1402
+ knobCurrentBackgroundColor: transparent,
1403
+ knobCurrentBorderColor: '#7c53a5',
1404
+ knobCurrentBorderWidth: 2,
1405
+ knobCurrentInnerColor: '#7c53a5',
1406
+ knobCurrentInnerSize: 8,
1407
+ knobCurrentPaddingLeft: 2,
1408
+ knobCurrentPaddingTop: 2,
1409
+ knobSize: 16,
1410
+ labelColor: '#676e73',
1411
+ labelCurrentColor: '#7c53a5',
1412
+ labelCurrentFontWeight: '600',
1413
+ labelDirection: 'column',
1414
+ labelFontSize: 16,
1415
+ labelFontWeight: '400',
1416
+ labelFontName: '',
1417
+ labelGap: 0,
1418
+ labelLineHeight: 1.5,
1419
+ labelMarginTop: 8,
1420
+ labelPaddingLeft: 16,
1421
+ labelPaddingRight: 16,
1422
+ showStepLabel: false,
1423
+ showStepName: true,
1424
+ showStepTrackerLabel: true
1425
+ },
1426
+ rules: [
1427
+ {
1428
+ if: { viewport: ['lg', 'xl'] },
1429
+ tokens: {
1430
+ showStepLabel: true,
1431
+ showStepTrackerLabel: false
1432
+ }
1433
+ }
1434
+ ]
1435
+ },
1032
1436
  ToggleSwitch: {
1033
1437
  appearances: {
1034
1438
  focus: appearances.ToggleSwitch.focus,
@@ -1041,7 +1445,6 @@ export default {
1041
1445
  outerBorderColor: '#000000',
1042
1446
  outerBorderWidth: 2,
1043
1447
  outerBorderGap: 2,
1044
- outerBorderRadius: 8,
1045
1448
  outerBackgroundColor: '#333333',
1046
1449
  borderColor: '#666666',
1047
1450
  borderWidth: 2,
@@ -1121,8 +1524,7 @@ export default {
1121
1524
  paddingLeft: 6,
1122
1525
  paddingRight: 6,
1123
1526
  outerBorderWidth: 1,
1124
- outerBorderColor: transparent,
1125
- outerBorderRadius: 4
1527
+ outerBorderColor: transparent
1126
1528
  },
1127
1529
  rules: [
1128
1530
  {
@@ -1262,7 +1664,7 @@ export default {
1262
1664
  selected: appearances.ButtonGroupItem.selected
1263
1665
  },
1264
1666
  tokens: {
1265
- icon: checkmarkIcon,
1667
+ icon: Checkmark,
1266
1668
  iconSize: 16,
1267
1669
  iconColor: '#ffffff',
1268
1670
  iconTranslateX: 0,
@@ -1283,7 +1685,6 @@ export default {
1283
1685
  outerBorderColor: transparent,
1284
1686
  outerBorderWidth: 4,
1285
1687
  outerBorderGap: 2,
1286
- outerBorderRadius: 2,
1287
1688
 
1288
1689
  fontSize: 16,
1289
1690
  color: '#0e6ac8',
@@ -1345,7 +1746,7 @@ export default {
1345
1746
  },
1346
1747
  TooltipButton: {
1347
1748
  tokens: {
1348
- icon: questionIcon,
1749
+ icon: Question,
1349
1750
  iconColor: 'black',
1350
1751
  iconSize: 16
1351
1752
  }
@@ -1373,8 +1774,7 @@ export default {
1373
1774
  paddingLeft: 6,
1374
1775
  paddingRight: 6,
1375
1776
  outerBorderWidth: 1,
1376
- outerBorderColor: transparent,
1377
- outerBorderRadius: 4
1777
+ outerBorderColor: transparent
1378
1778
  },
1379
1779
  rules: [
1380
1780
  {
@@ -4,7 +4,7 @@ import Theme from '../../__fixtures__/Theme'
4
4
  import ActivityIndicator from '../../src/ActivityIndicator'
5
5
 
6
6
  // Used to remove the "Animated: `useNativeDriver` is not supported because the native animated module is missing." warnings
7
- jest.mock('react-native/Libraries/Animated/src/NativeAnimatedHelper')
7
+ jest.mock('react-native/Libraries/Animated/NativeAnimatedHelper')
8
8
 
9
9
  const render = (jsx) => baseRender(jsx, { wrapper: Theme })
10
10
 
@@ -106,7 +106,7 @@ describe('ButtonGroup (uncontrolled)', () => {
106
106
  </Theme>
107
107
  )
108
108
  expect(queryAllByA11yRole('checkbox')).toHaveLength(0)
109
- expect(queryAllByA11yRole('radioGroup')).toHaveLength(1)
109
+ expect(queryAllByA11yRole('radiogroup')).toHaveLength(1)
110
110
  const radios = queryAllByA11yRole('radio')
111
111
  expect(radios).toHaveLength(4)
112
112
 
@@ -158,7 +158,7 @@ describe('ButtonGroup (uncontrolled)', () => {
158
158
  </Theme>
159
159
  )
160
160
 
161
- expect(queryAllByA11yRole('radioGroup')).toHaveLength(0)
161
+ expect(queryAllByA11yRole('radiogroup')).toHaveLength(0)
162
162
  expect(queryAllByA11yRole('radio')).toHaveLength(0)
163
163
 
164
164
  const checks = queryAllByA11yRole('checkbox')