@telus-uds/components-base 0.0.2-prerelease.7 → 1.0.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 (445) hide show
  1. package/.eslintrc.js +9 -0
  2. package/.ultra.cache.json +1 -1
  3. package/CHANGELOG.md +71 -0
  4. package/README.md +4 -2
  5. package/__fixtures__/Accessible.js +33 -0
  6. package/__fixtures__/Accessible.native.js +32 -0
  7. package/__fixtures__/test-utils.js +25 -0
  8. package/__fixtures__/testTheme.js +438 -31
  9. package/__tests__/ActivityIndicator/ActivityIndicator.test.jsx +1 -1
  10. package/__tests__/Button/ButtonGroup.test.jsx +6 -7
  11. package/__tests__/Checkbox/Checkbox.test.jsx +2 -2
  12. package/__tests__/Checkbox/CheckboxGroup.test.jsx +246 -0
  13. package/__tests__/ExpandCollapse/ExpandCollapse.test.jsx +2 -2
  14. package/__tests__/HorizontalScroll/HorizontalScroll.test.jsx +164 -0
  15. package/__tests__/Icon/Icon.test.jsx +3 -3
  16. package/__tests__/IconButton/IconButton.test.jsx +52 -0
  17. package/__tests__/Link/LinkBase.test.jsx +0 -14
  18. package/__tests__/Modal/Modal.test.jsx +47 -0
  19. package/__tests__/Notification/Notification.test.jsx +20 -0
  20. package/__tests__/Pagination/Pagination.test.jsx +2 -2
  21. package/__tests__/Progress/Progress.test.jsx +79 -0
  22. package/__tests__/Radio/Radio.test.jsx +2 -2
  23. package/__tests__/Radio/RadioGroup.test.jsx +220 -0
  24. package/__tests__/RadioCard/RadioCard.test.jsx +87 -0
  25. package/__tests__/RadioCard/RadioCardGroup.test.jsx +246 -0
  26. package/__tests__/Search/Search.test.jsx +73 -0
  27. package/__tests__/Select/Select.test.jsx +3 -2
  28. package/__tests__/Skeleton/Skeleton.test.jsx +1 -1
  29. package/__tests__/StepTracker/StepTracker.test.jsx +94 -0
  30. package/__tests__/Tabs/Tabs.test.jsx +40 -0
  31. package/__tests__/Tags/Tags.test.jsx +5 -6
  32. package/__tests__/TextInput/TextArea.test.jsx +3 -2
  33. package/__tests__/TextInput/TextInputBase.test.jsx +10 -5
  34. package/__tests__/ThemeProvider/ThemeProvider.test.jsx +77 -0
  35. package/__tests__/ThemeProvider/useThemeTokens.test.jsx +9 -5
  36. package/__tests__/ThemeProvider/utils/theme-tokens.test.js +41 -0
  37. package/__tests__/ToggleSwitch/ToggleSwitch.test.jsx +3 -2
  38. package/__tests__/utils/children.test.jsx +128 -0
  39. package/__tests__/utils/input.test.js +59 -1
  40. package/__tests__/utils/semantics.test.jsx +43 -0
  41. package/__tests__/utils/useCopy.test.js +14 -3
  42. package/babel.config.js +20 -0
  43. package/jest.config.js +6 -3
  44. package/lib/A11yInfoProvider/index.js +54 -26
  45. package/lib/A11yText/index.js +45 -17
  46. package/lib/ActivityIndicator/Spinner.js +81 -0
  47. package/lib/ActivityIndicator/Spinner.native.js +129 -91
  48. package/lib/ActivityIndicator/index.js +28 -12
  49. package/lib/ActivityIndicator/shared.js +27 -12
  50. package/lib/BaseProvider/index.js +34 -11
  51. package/lib/Box/Box.js +153 -35
  52. package/lib/Box/index.js +13 -2
  53. package/lib/Button/Button.js +38 -16
  54. package/lib/Button/ButtonBase.js +93 -79
  55. package/lib/Button/ButtonGroup.js +112 -73
  56. package/lib/Button/ButtonLink.js +45 -19
  57. package/lib/Button/index.js +31 -4
  58. package/lib/Button/propTypes.js +32 -9
  59. package/lib/Card/Card.js +38 -41
  60. package/lib/Card/CardBase.js +86 -0
  61. package/lib/Card/PressableCardBase.js +141 -0
  62. package/lib/Card/index.js +40 -2
  63. package/lib/Checkbox/Checkbox.js +158 -111
  64. package/lib/Checkbox/CheckboxGroup.js +241 -0
  65. package/lib/Checkbox/CheckboxInput.js +74 -0
  66. package/lib/Checkbox/CheckboxInput.native.js +9 -1
  67. package/lib/Checkbox/index.js +21 -2
  68. package/lib/Divider/Divider.js +59 -28
  69. package/lib/Divider/index.js +13 -2
  70. package/lib/ExpandCollapse/Accordion.js +26 -7
  71. package/lib/ExpandCollapse/Control.js +60 -31
  72. package/lib/ExpandCollapse/ExpandCollapse.js +50 -28
  73. package/lib/ExpandCollapse/Panel.js +83 -44
  74. package/lib/ExpandCollapse/index.js +25 -7
  75. package/lib/Feedback/Feedback.js +77 -43
  76. package/lib/Feedback/index.js +13 -2
  77. package/lib/Fieldset/Fieldset.js +165 -0
  78. package/lib/Fieldset/FieldsetContainer.js +46 -0
  79. package/lib/Fieldset/FieldsetContainer.native.js +38 -0
  80. package/lib/Fieldset/Legend.js +38 -0
  81. package/lib/Fieldset/Legend.native.js +48 -0
  82. package/lib/Fieldset/cssReset.js +21 -0
  83. package/lib/Fieldset/index.js +13 -0
  84. package/lib/FlexGrid/Col/Col.js +73 -41
  85. package/lib/FlexGrid/Col/index.js +13 -2
  86. package/lib/FlexGrid/FlexGrid.js +99 -49
  87. package/lib/FlexGrid/Row/Row.js +58 -30
  88. package/lib/FlexGrid/Row/index.js +13 -2
  89. package/lib/FlexGrid/helpers/index.js +9 -1
  90. package/lib/FlexGrid/index.js +13 -2
  91. package/lib/FlexGrid/providers/GutterContext.js +15 -3
  92. package/lib/HorizontalScroll/HorizontalScroll.js +200 -0
  93. package/lib/HorizontalScroll/HorizontalScrollButton.js +127 -0
  94. package/lib/HorizontalScroll/ScrollViewEnd.js +66 -0
  95. package/lib/HorizontalScroll/ScrollViewEnd.native.js +41 -0
  96. package/lib/HorizontalScroll/dictionary.js +18 -0
  97. package/lib/HorizontalScroll/index.js +35 -0
  98. package/lib/HorizontalScroll/itemPositions.js +128 -0
  99. package/lib/Icon/Icon.js +57 -48
  100. package/lib/Icon/IconText.js +54 -25
  101. package/lib/Icon/index.js +31 -4
  102. package/lib/IconButton/IconButton.js +140 -0
  103. package/lib/IconButton/index.js +13 -0
  104. package/lib/InputLabel/InputLabel.js +102 -40
  105. package/lib/InputLabel/LabelContent.js +41 -0
  106. package/lib/InputLabel/LabelContent.native.js +32 -6
  107. package/lib/InputLabel/index.js +13 -2
  108. package/lib/InputSupports/InputSupports.js +71 -52
  109. package/lib/InputSupports/index.js +13 -2
  110. package/lib/InputSupports/propTypes.js +19 -8
  111. package/lib/InputSupports/useInputSupports.js +41 -0
  112. package/lib/Link/ChevronLink.js +44 -20
  113. package/lib/Link/InlinePressable.js +56 -0
  114. package/lib/Link/InlinePressable.native.js +39 -15
  115. package/lib/Link/Link.js +36 -13
  116. package/lib/Link/LinkBase.js +98 -61
  117. package/lib/Link/TextButton.js +41 -17
  118. package/lib/Link/index.js +39 -5
  119. package/lib/List/List.js +55 -26
  120. package/lib/List/ListItem.js +79 -41
  121. package/lib/List/index.js +13 -2
  122. package/lib/Modal/Modal.js +231 -0
  123. package/lib/Modal/dictionary.js +16 -0
  124. package/lib/Modal/index.js +13 -0
  125. package/lib/Notification/Notification.js +216 -0
  126. package/lib/Notification/dictionary.js +15 -0
  127. package/lib/Notification/index.js +13 -0
  128. package/lib/Pagination/PageButton.js +61 -28
  129. package/lib/Pagination/Pagination.js +78 -43
  130. package/lib/Pagination/SideButton.js +73 -42
  131. package/lib/Pagination/dictionary.js +9 -2
  132. package/lib/Pagination/index.js +13 -2
  133. package/lib/Pagination/usePagination.js +12 -2
  134. package/lib/Progress/Progress.js +104 -0
  135. package/lib/Progress/ProgressBar.js +157 -0
  136. package/lib/Progress/ProgressBarBackground.js +61 -0
  137. package/lib/Progress/index.js +16 -0
  138. package/lib/Radio/Radio.js +116 -114
  139. package/lib/Radio/RadioButton.js +152 -0
  140. package/lib/Radio/RadioGroup.js +244 -0
  141. package/lib/Radio/RadioInput.js +76 -0
  142. package/lib/Radio/RadioInput.native.js +9 -1
  143. package/lib/Radio/index.js +21 -2
  144. package/lib/RadioCard/RadioCard.js +244 -0
  145. package/lib/RadioCard/RadioCardGroup.js +252 -0
  146. package/lib/RadioCard/index.js +21 -0
  147. package/lib/Search/Search.js +254 -0
  148. package/lib/Search/dictionary.js +19 -0
  149. package/lib/Search/index.js +13 -0
  150. package/lib/Select/Group.js +33 -0
  151. package/lib/Select/Group.native.js +16 -5
  152. package/lib/Select/Item.js +29 -0
  153. package/lib/Select/Item.native.js +14 -4
  154. package/lib/Select/Picker.js +84 -0
  155. package/lib/Select/Picker.native.js +73 -30
  156. package/lib/Select/Select.js +155 -85
  157. package/lib/Select/index.js +19 -6
  158. package/lib/SideNav/Item.js +63 -37
  159. package/lib/SideNav/ItemContent.js +41 -15
  160. package/lib/SideNav/ItemsGroup.js +55 -31
  161. package/lib/SideNav/SideNav.js +100 -73
  162. package/lib/SideNav/index.js +15 -1
  163. package/lib/Skeleton/Skeleton.js +64 -46
  164. package/lib/Skeleton/index.js +13 -2
  165. package/lib/Skeleton/skeleton.constant.js +12 -0
  166. package/lib/Skeleton/skeletonWebAnimation.js +27 -0
  167. package/lib/Skeleton/useSkeletonNativeAnimation.js +37 -0
  168. package/lib/Spacer/Spacer.js +49 -18
  169. package/lib/Spacer/index.js +13 -2
  170. package/lib/StackView/StackView.js +72 -31
  171. package/lib/StackView/StackWrap.js +43 -13
  172. package/lib/StackView/StackWrap.native.js +13 -2
  173. package/lib/StackView/StackWrapBox.js +77 -29
  174. package/lib/StackView/StackWrapGap.js +56 -26
  175. package/lib/StackView/common.js +23 -6
  176. package/lib/StackView/getStackedContent.js +47 -17
  177. package/lib/StackView/index.js +29 -5
  178. package/lib/StepTracker/Step.js +245 -0
  179. package/lib/StepTracker/StepTracker.js +202 -0
  180. package/lib/StepTracker/dictionary.js +17 -0
  181. package/lib/StepTracker/index.js +13 -0
  182. package/lib/Tabs/Tabs.js +124 -0
  183. package/lib/Tabs/TabsItem.js +238 -0
  184. package/lib/Tabs/index.js +13 -0
  185. package/lib/Tags/Tags.js +148 -99
  186. package/lib/Tags/index.js +13 -2
  187. package/lib/TextInput/TextArea.js +57 -28
  188. package/lib/TextInput/TextInput.js +50 -23
  189. package/lib/TextInput/TextInputBase.js +90 -63
  190. package/lib/TextInput/index.js +23 -3
  191. package/lib/TextInput/propTypes.js +18 -7
  192. package/lib/ThemeProvider/ThemeProvider.js +46 -18
  193. package/lib/ThemeProvider/index.js +61 -6
  194. package/lib/ThemeProvider/useSetTheme.js +19 -5
  195. package/lib/ThemeProvider/useTheme.js +13 -4
  196. package/lib/ThemeProvider/useThemeTokens.js +32 -16
  197. package/lib/ThemeProvider/utils/index.js +31 -2
  198. package/lib/ThemeProvider/utils/styles.js +50 -14
  199. package/lib/ThemeProvider/utils/theme-tokens.js +121 -12
  200. package/lib/ToggleSwitch/ToggleSwitch.js +85 -56
  201. package/lib/ToggleSwitch/index.js +13 -2
  202. package/lib/Tooltip/{Backdrop.web.js → Backdrop.js} +20 -8
  203. package/lib/Tooltip/Backdrop.native.js +39 -15
  204. package/lib/Tooltip/Tooltip.js +117 -74
  205. package/lib/Tooltip/dictionary.js +9 -2
  206. package/lib/Tooltip/getTooltipPosition.js +9 -1
  207. package/lib/Tooltip/index.js +13 -2
  208. package/lib/TooltipButton/TooltipButton.js +57 -38
  209. package/lib/TooltipButton/index.js +13 -2
  210. package/lib/Typography/Typography.js +87 -41
  211. package/lib/Typography/index.js +13 -2
  212. package/lib/ViewportProvider/ViewportProvider.js +34 -13
  213. package/lib/ViewportProvider/index.js +28 -3
  214. package/lib/ViewportProvider/useViewport.js +15 -3
  215. package/lib/ViewportProvider/useViewportListener.js +24 -10
  216. package/lib/index.js +539 -33
  217. package/lib/utils/a11y/index.js +31 -1
  218. package/lib/utils/a11y/semantics.js +173 -0
  219. package/lib/utils/a11y/textSize.js +23 -7
  220. package/lib/utils/animation/index.js +15 -2
  221. package/lib/utils/animation/useVerticalExpandAnimation.js +27 -10
  222. package/lib/utils/children.js +134 -0
  223. package/lib/utils/index.js +163 -10
  224. package/lib/utils/info/index.js +18 -6
  225. package/lib/utils/info/platform/index.js +19 -7
  226. package/lib/utils/info/platform/platform.android.js +8 -1
  227. package/lib/utils/info/platform/platform.ios.js +8 -1
  228. package/lib/utils/info/platform/platform.js +8 -0
  229. package/lib/utils/info/platform/platform.native.js +8 -1
  230. package/lib/utils/info/versions.js +15 -4
  231. package/lib/utils/input.js +53 -25
  232. package/lib/utils/pressability.js +38 -10
  233. package/lib/utils/propTypes.js +287 -141
  234. package/lib/utils/useCopy.js +40 -5
  235. package/lib/utils/useHash.js +52 -0
  236. package/lib/utils/useHash.native.js +15 -0
  237. package/lib/utils/useResponsiveProp.js +21 -9
  238. package/lib/utils/useSpacingScale.js +19 -9
  239. package/lib/utils/useUniqueId.js +12 -3
  240. package/package.json +14 -9
  241. package/release-context.json +4 -4
  242. package/src/A11yText/index.jsx +6 -4
  243. package/src/ActivityIndicator/{Spinner.web.jsx → Spinner.jsx} +5 -3
  244. package/src/ActivityIndicator/Spinner.native.jsx +5 -3
  245. package/src/Box/Box.jsx +132 -39
  246. package/src/Button/Button.jsx +10 -6
  247. package/src/Button/ButtonBase.jsx +99 -99
  248. package/src/Button/ButtonGroup.jsx +81 -69
  249. package/src/Button/ButtonLink.jsx +21 -15
  250. package/src/Button/propTypes.js +12 -2
  251. package/src/Card/Card.jsx +5 -31
  252. package/src/Card/CardBase.jsx +59 -0
  253. package/src/Card/PressableCardBase.jsx +119 -0
  254. package/src/Card/index.js +3 -0
  255. package/src/Checkbox/Checkbox.jsx +121 -112
  256. package/src/Checkbox/CheckboxGroup.jsx +206 -0
  257. package/src/Checkbox/{CheckboxInput.web.jsx → CheckboxInput.jsx} +0 -0
  258. package/src/Checkbox/index.js +2 -0
  259. package/src/Divider/Divider.jsx +7 -4
  260. package/src/ExpandCollapse/Accordion.jsx +3 -2
  261. package/src/ExpandCollapse/Control.jsx +40 -43
  262. package/src/ExpandCollapse/ExpandCollapse.jsx +26 -23
  263. package/src/ExpandCollapse/Panel.jsx +69 -63
  264. package/src/Feedback/Feedback.jsx +36 -33
  265. package/src/Fieldset/Fieldset.jsx +136 -0
  266. package/src/Fieldset/FieldsetContainer.jsx +31 -0
  267. package/src/Fieldset/FieldsetContainer.native.jsx +19 -0
  268. package/src/Fieldset/Legend.jsx +21 -0
  269. package/src/Fieldset/Legend.native.jsx +27 -0
  270. package/src/Fieldset/cssReset.js +14 -0
  271. package/src/Fieldset/index.js +3 -0
  272. package/src/FlexGrid/Col/Col.jsx +139 -132
  273. package/src/FlexGrid/FlexGrid.jsx +79 -51
  274. package/src/FlexGrid/Row/Row.jsx +55 -48
  275. package/src/HorizontalScroll/HorizontalScroll.jsx +168 -0
  276. package/src/HorizontalScroll/HorizontalScrollButton.jsx +105 -0
  277. package/src/HorizontalScroll/ScrollViewEnd.jsx +53 -0
  278. package/src/HorizontalScroll/ScrollViewEnd.native.jsx +24 -0
  279. package/src/HorizontalScroll/dictionary.js +11 -0
  280. package/src/HorizontalScroll/index.js +17 -0
  281. package/src/HorizontalScroll/itemPositions.js +101 -0
  282. package/src/Icon/Icon.jsx +43 -50
  283. package/src/Icon/IconText.jsx +23 -18
  284. package/src/Icon/index.js +2 -2
  285. package/src/IconButton/IconButton.jsx +114 -0
  286. package/src/IconButton/index.js +3 -0
  287. package/src/InputLabel/InputLabel.jsx +57 -35
  288. package/src/InputLabel/LabelContent.jsx +21 -0
  289. package/src/InputLabel/LabelContent.native.jsx +11 -2
  290. package/src/InputSupports/InputSupports.jsx +29 -45
  291. package/src/InputSupports/useInputSupports.js +30 -0
  292. package/src/Link/ChevronLink.jsx +26 -16
  293. package/src/Link/{InlinePressable.web.jsx → InlinePressable.jsx} +5 -3
  294. package/src/Link/InlinePressable.native.jsx +5 -3
  295. package/src/Link/Link.jsx +22 -16
  296. package/src/Link/LinkBase.jsx +76 -65
  297. package/src/Link/TextButton.jsx +30 -23
  298. package/src/List/List.jsx +5 -4
  299. package/src/List/ListItem.jsx +77 -82
  300. package/src/Modal/Modal.jsx +190 -0
  301. package/src/Modal/dictionary.js +9 -0
  302. package/src/Modal/index.js +3 -0
  303. package/src/Notification/Notification.jsx +164 -0
  304. package/src/Notification/dictionary.js +8 -0
  305. package/src/Notification/index.js +3 -0
  306. package/src/Pagination/PageButton.jsx +42 -35
  307. package/src/Pagination/Pagination.jsx +88 -92
  308. package/src/Pagination/SideButton.jsx +44 -41
  309. package/src/Progress/Progress.jsx +78 -0
  310. package/src/Progress/ProgressBar.jsx +123 -0
  311. package/src/Progress/ProgressBarBackground.jsx +36 -0
  312. package/src/Progress/index.js +6 -0
  313. package/src/Radio/Radio.jsx +82 -112
  314. package/src/Radio/RadioButton.jsx +142 -0
  315. package/src/Radio/RadioGroup.jsx +209 -0
  316. package/src/Radio/{RadioInput.web.jsx → RadioInput.jsx} +0 -0
  317. package/src/Radio/index.js +2 -0
  318. package/src/RadioCard/RadioCard.jsx +198 -0
  319. package/src/RadioCard/RadioCardGroup.jsx +218 -0
  320. package/src/RadioCard/index.js +5 -0
  321. package/src/Search/Search.jsx +225 -0
  322. package/src/Search/dictionary.js +12 -0
  323. package/src/Search/index.js +3 -0
  324. package/src/Select/{Group.web.jsx → Group.jsx} +0 -0
  325. package/src/Select/{Item.web.jsx → Item.jsx} +0 -0
  326. package/src/Select/Picker.jsx +74 -0
  327. package/src/Select/Picker.native.jsx +56 -49
  328. package/src/Select/Select.jsx +125 -92
  329. package/src/SideNav/Item.jsx +54 -47
  330. package/src/SideNav/ItemsGroup.jsx +50 -43
  331. package/src/SideNav/SideNav.jsx +68 -60
  332. package/src/Skeleton/Skeleton.jsx +25 -32
  333. package/src/Skeleton/skeleton.constant.js +3 -0
  334. package/src/Skeleton/skeletonWebAnimation.js +13 -0
  335. package/src/Skeleton/useSkeletonNativeAnimation.js +27 -0
  336. package/src/Spacer/Spacer.jsx +11 -4
  337. package/src/StackView/StackView.jsx +54 -23
  338. package/src/StackView/StackWrap.jsx +16 -7
  339. package/src/StackView/StackWrapBox.jsx +63 -28
  340. package/src/StackView/StackWrapGap.jsx +46 -24
  341. package/src/StackView/common.jsx +3 -2
  342. package/src/StackView/getStackedContent.jsx +8 -2
  343. package/src/StepTracker/Step.jsx +202 -0
  344. package/src/StepTracker/StepTracker.jsx +174 -0
  345. package/src/StepTracker/dictionary.js +10 -0
  346. package/src/StepTracker/index.js +3 -0
  347. package/src/Tabs/Tabs.jsx +97 -0
  348. package/src/Tabs/TabsItem.jsx +212 -0
  349. package/src/Tabs/index.js +3 -0
  350. package/src/Tags/Tags.jsx +115 -102
  351. package/src/TextInput/TextArea.jsx +5 -4
  352. package/src/TextInput/TextInput.jsx +5 -4
  353. package/src/TextInput/TextInputBase.jsx +95 -98
  354. package/src/ThemeProvider/ThemeProvider.jsx +11 -7
  355. package/src/ThemeProvider/useSetTheme.js +4 -0
  356. package/src/ThemeProvider/useThemeTokens.js +2 -2
  357. package/src/ThemeProvider/utils/styles.js +18 -5
  358. package/src/ThemeProvider/utils/theme-tokens.js +74 -5
  359. package/src/ToggleSwitch/ToggleSwitch.jsx +50 -52
  360. package/src/Tooltip/{Backdrop.web.jsx → Backdrop.jsx} +0 -0
  361. package/src/Tooltip/Tooltip.jsx +135 -131
  362. package/src/TooltipButton/TooltipButton.jsx +23 -27
  363. package/src/Typography/Typography.jsx +71 -47
  364. package/src/index.js +23 -2
  365. package/src/utils/a11y/index.js +1 -0
  366. package/src/utils/a11y/semantics.js +162 -0
  367. package/src/utils/children.jsx +119 -0
  368. package/src/utils/index.js +3 -0
  369. package/src/utils/info/platform/platform.js +1 -0
  370. package/src/utils/info/versions.js +2 -2
  371. package/src/utils/input.js +36 -25
  372. package/src/utils/pressability.js +4 -0
  373. package/src/utils/propTypes.js +199 -72
  374. package/src/utils/useCopy.js +30 -4
  375. package/src/utils/useHash.js +39 -0
  376. package/src/utils/useHash.native.js +6 -0
  377. package/stories/A11yText/A11yText.stories.jsx +6 -10
  378. package/stories/ActivityIndicator/ActivityIndicator.stories.jsx +1 -1
  379. package/stories/Box/Box.stories.jsx +1 -1
  380. package/stories/Button/Button.stories.jsx +2 -2
  381. package/stories/Button/ButtonGroup.stories.jsx +1 -1
  382. package/stories/Button/ButtonLink.stories.jsx +1 -1
  383. package/stories/Card/Card.stories.jsx +1 -1
  384. package/stories/Checkbox/Checkbox.stories.jsx +24 -1
  385. package/stories/Divider/Divider.stories.jsx +1 -1
  386. package/stories/ExpandCollapse/ExpandCollapse.stories.jsx +2 -2
  387. package/stories/Feedback/Feedback.stories.jsx +1 -1
  388. package/stories/FlexGrid/01 FlexGrid.stories.jsx +1 -1
  389. package/stories/FlexGrid/02 Row.stories.jsx +1 -1
  390. package/stories/FlexGrid/03 Col.stories.jsx +1 -1
  391. package/stories/Icon/Icon.stories.jsx +27 -7
  392. package/stories/IconButton/IconButton.stories.jsx +50 -0
  393. package/stories/InputLabel/InputLabel.stories.jsx +1 -1
  394. package/stories/Link/ChevronLink.stories.jsx +1 -1
  395. package/stories/Link/Link.stories.jsx +17 -21
  396. package/stories/Link/TextButton.stories.jsx +1 -1
  397. package/stories/List/List.stories.jsx +1 -1
  398. package/stories/Modal/Modal.stories.jsx +29 -0
  399. package/stories/Notification/Notification.stories.jsx +82 -0
  400. package/stories/Pagination/Pagination.stories.jsx +1 -1
  401. package/stories/Progress/Progress.stories.jsx +93 -0
  402. package/stories/Radio/Radio.stories.jsx +23 -36
  403. package/stories/RadioCard/RadioCard.stories.jsx +98 -0
  404. package/stories/Search/Search.stories.jsx +16 -0
  405. package/stories/Select/Select.stories.jsx +1 -1
  406. package/stories/SideNav/SideNav.stories.jsx +1 -1
  407. package/stories/SideNav/SideNavItem.stories.jsx +1 -1
  408. package/stories/SideNav/SideNavItemsGroup.stories.jsx +1 -1
  409. package/stories/Skeleton/Skeleton.stories.jsx +2 -2
  410. package/stories/Spacer/Spacer.stories.jsx +1 -1
  411. package/stories/StackView/StackView.stories.jsx +1 -1
  412. package/stories/StackView/StackWrap.stories.jsx +1 -1
  413. package/stories/StepTracker/StepTracker.stories.jsx +71 -0
  414. package/stories/Tabs/Tabs.stories.jsx +97 -0
  415. package/stories/Tags/Tags.stories.jsx +1 -1
  416. package/stories/TextInput/TextArea.stories.jsx +1 -1
  417. package/stories/TextInput/TextInput.stories.jsx +1 -1
  418. package/stories/ToggleSwitch/ToggleSwitch.stories.jsx +1 -1
  419. package/stories/Tooltip/Tooltip.stories.jsx +1 -1
  420. package/stories/TooltipButton/TooltipButton.stories.jsx +1 -1
  421. package/stories/Typography/Typography.stories.jsx +1 -1
  422. package/stories/{platform-supports.web.jsx → platform-supports.jsx} +1 -1
  423. package/stories/supports.jsx +37 -3
  424. package/__fixtures__/accessible.icon.svg +0 -6
  425. package/babel.config.json +0 -8
  426. package/docs/Contributing.stories.mdx +0 -9
  427. package/docs/Fonts.stories.mdx +0 -104
  428. package/docs/Icons.stories.mdx +0 -144
  429. package/docs/Introduction.stories.mdx +0 -9
  430. package/lib/ActivityIndicator/Spinner.web.js +0 -55
  431. package/lib/Checkbox/CheckboxInput.web.js +0 -57
  432. package/lib/InputLabel/LabelContent.web.js +0 -17
  433. package/lib/Link/InlinePressable.web.js +0 -32
  434. package/lib/Radio/RadioInput.web.js +0 -59
  435. package/lib/Select/Group.web.js +0 -18
  436. package/lib/Select/Item.web.js +0 -15
  437. package/lib/Select/Picker.web.js +0 -63
  438. package/lib/config/svgr-icons-web.js +0 -9
  439. package/lib/config/svgr-icons.js +0 -52
  440. package/lib/utils/info/platform/platform.web.js +0 -1
  441. package/src/InputLabel/LabelContent.web.jsx +0 -13
  442. package/src/Select/Picker.web.jsx +0 -67
  443. package/src/config/svgr-icons-web.js +0 -11
  444. package/src/config/svgr-icons.js +0 -46
  445. package/src/utils/info/platform/platform.web.js +0 -1
@@ -1,12 +1,14 @@
1
1
  /* eslint-disable react/no-multi-comp */
2
2
  import React from 'react'
3
- import { StyleSheet, Text } from 'react-native'
4
- import AccessibleIcon from '../../__fixtures__/accessible.icon.svg'
5
- import { Container, useVariants, EachParentType, parentTypesParams } from '../supports'
3
+ import { StyleSheet, Text, View } from 'react-native'
4
+
5
+ import AccessibleIcon from '../../__fixtures__/Accessible'
6
+ import { Container, useVariants, EachIcon, EachParentType, parentTypesParams } from '../supports'
7
+ import { Icon, StackWrap, Tooltip } from '../../src'
6
8
 
7
9
  export default {
8
10
  title: 'Base/Icon',
9
- component: AccessibleIcon,
11
+ component: Icon,
10
12
  argTypes: {
11
13
  label: {
12
14
  type: {
@@ -30,21 +32,35 @@ export default {
30
32
  }
31
33
  }
32
34
 
33
- export const ExampleIcon = (args) => <AccessibleIcon {...args} />
35
+ export const ExampleIcon = (args) => <Icon icon={AccessibleIcon} {...args} />
36
+
37
+ export const EveryIcon = (args) => (
38
+ <StackWrap space={0}>
39
+ <EachIcon>
40
+ {([iconName, IconComponent]) => (
41
+ <View key={iconName} style={styles.border}>
42
+ <Tooltip content={iconName}>
43
+ <Icon icon={IconComponent} {...args} />
44
+ </Tooltip>
45
+ </View>
46
+ )}
47
+ </EachIcon>
48
+ </StackWrap>
49
+ )
34
50
 
35
51
  export const IconVariants = (args) => {
36
52
  const variants = useVariants('Icon')
37
53
  return variants.map(([key, value, label]) => (
38
54
  <Container key={label} dark={value === 'white'}>
39
55
  <Text style={styles.subtle}>{label}</Text>
40
- <AccessibleIcon {...args} variant={{ [key]: value }} />
56
+ <Icon icon={AccessibleIcon} {...args} variant={{ [key]: value }} />
41
57
  </Container>
42
58
  ))
43
59
  }
44
60
 
45
61
  export const ParentTypes = (args) => (
46
62
  <EachParentType {...args}>
47
- {({ label }) => <AccessibleIcon {...args} label={label} />}
63
+ {({ label }) => <Icon icon={AccessibleIcon} {...args} label={label} />}
48
64
  </EachParentType>
49
65
  )
50
66
  ParentTypes.parameters = parentTypesParams
@@ -55,5 +71,9 @@ const styles = StyleSheet.create({
55
71
  color: 'rgb(180, 180, 180)',
56
72
  fontWeight: '700',
57
73
  marginVertical: 16
74
+ },
75
+ border: {
76
+ borderWidth: 8,
77
+ borderColor: '#efefef'
58
78
  }
59
79
  })
@@ -0,0 +1,50 @@
1
+ /* eslint-disable react/no-multi-comp */
2
+ import React from 'react'
3
+
4
+ /* eslint-disable-next-line import/no-extraneous-dependencies */
5
+ import { Add } from '@telus-uds/palette-allium/build/rn/icons'
6
+
7
+ import { Box, IconButton, StackView } from '../../src'
8
+ import { useVariants, EachParentType, parentTypesParams } from '../supports'
9
+
10
+ export default {
11
+ title: 'Base/IconButton',
12
+ component: IconButton
13
+ }
14
+
15
+ export const Default = (args) => <IconButton {...args} />
16
+ Default.storyName = 'IconButton'
17
+ Default.args = {
18
+ icon: Add,
19
+ onPress: () => {}
20
+ }
21
+
22
+ export const Variants = (args) => {
23
+ const variants = useVariants('IconButton')
24
+ return (
25
+ <StackView space={5}>
26
+ {variants.map(([key, value, label]) => (
27
+ <Box
28
+ key={`${key}:${value}`}
29
+ space={5}
30
+ tokens={label === 'inverse' ? { backgroundColor: '#454545' } : null}
31
+ >
32
+ <IconButton
33
+ {...args}
34
+ variant={{ ...args.variant, [key]: value }}
35
+ accessibilityLabel={label}
36
+ />
37
+ </Box>
38
+ ))}
39
+ </StackView>
40
+ )
41
+ }
42
+ Variants.args = Default.args
43
+
44
+ export const ParentTypes = (args) => (
45
+ <EachParentType componentThemeName="IconButton" {...args}>
46
+ {({ label, variant }) => <IconButton {...args} variant={variant} accessibilityLabel={label} />}
47
+ </EachParentType>
48
+ )
49
+ ParentTypes.parameters = parentTypesParams
50
+ ParentTypes.args = Default.args
@@ -1,7 +1,7 @@
1
1
  /* eslint-disable react/no-multi-comp */
2
2
  import React from 'react'
3
3
 
4
- import InputLabel from '../../lib/InputLabel/InputLabel'
4
+ import InputLabel from '../../src/InputLabel/InputLabel'
5
5
 
6
6
  export default {
7
7
  title: 'Base/InputLabel',
@@ -1,7 +1,7 @@
1
1
  /* eslint-disable react/no-multi-comp */
2
2
  import React from 'react'
3
3
 
4
- import { ChevronLink } from '../../lib'
4
+ import { ChevronLink } from '../../src'
5
5
  import { Container, EachParentType, parentTypesParams, useVariants } from '../supports'
6
6
 
7
7
  export default {
@@ -2,12 +2,10 @@
2
2
  import React from 'react'
3
3
  import { View } from 'react-native'
4
4
 
5
- // TODO: move icon-specific stories to Allium storybook and add generic/default icons
6
- // eslint-disable-next-line import/no-extraneous-dependencies
7
- import * as Icons from '@telus-uds/palette-allium/build/rn/icons'
5
+ import AccessibleIcon from '../../__fixtures__/Accessible'
8
6
 
9
- import { Link, Typography, variantProp } from '../../lib'
10
- import { Container, EachParentType, parentTypesParams, useVariants } from '../supports'
7
+ import { Link, Typography, variantProp } from '../../src'
8
+ import { Container, EachIcon, EachParentType, parentTypesParams, useVariants } from '../supports'
11
9
 
12
10
  export default {
13
11
  title: 'Base/Link',
@@ -34,17 +32,17 @@ Template.propTypes = {
34
32
  variant: variantProp.propType
35
33
  }
36
34
 
37
- const SampleIcon = Icons.Settings
38
-
39
- const EveryIconTemplate = (args) => (
35
+ export const EveryIcon = (args) => (
40
36
  <View>
41
- {Object.entries(Icons).map(([key, Icon]) => (
42
- <Container key={key}>
43
- <Link key={key} icon={Icon} {...args}>
44
- Link to {key}
45
- </Link>
46
- </Container>
47
- ))}
37
+ <EachIcon>
38
+ {([iconName, IconComponent]) => (
39
+ <Container key={iconName}>
40
+ <Link key={iconName} icon={IconComponent} {...args}>
41
+ Link to {iconName}
42
+ </Link>
43
+ </Container>
44
+ )}
45
+ </EachIcon>
48
46
  </View>
49
47
  )
50
48
 
@@ -55,21 +53,19 @@ Default.args = { children: "I'm a link" }
55
53
  export const Variants = Template.bind({})
56
54
 
57
55
  export const IconLeft = Template.bind({})
58
- IconLeft.args = { icon: SampleIcon, iconPosition: 'left' }
56
+ IconLeft.args = { icon: AccessibleIcon, iconPosition: 'left' }
59
57
 
60
58
  export const IconRight = Template.bind({})
61
- IconRight.args = { icon: SampleIcon, iconPosition: 'right' }
62
-
63
- export const EveryIcon = EveryIconTemplate.bind({})
59
+ IconRight.args = { icon: AccessibleIcon, iconPosition: 'right' }
64
60
 
65
61
  export const InText = (args) => (
66
62
  <Typography>
67
63
  Some text containing a{' '}
68
- <Link icon={SampleIcon} iconPosition="left" {...args}>
64
+ <Link icon={AccessibleIcon} iconPosition="left" {...args}>
69
65
  left icon link
70
66
  </Link>
71
67
  , alongside a{' '}
72
- <Link icon={SampleIcon} iconPosition="right" {...args}>
68
+ <Link icon={AccessibleIcon} iconPosition="right" {...args}>
73
69
  right icon link
74
70
  </Link>
75
71
  , and also with a <Link {...args}>text link</Link>, all inline in text.
@@ -6,7 +6,7 @@ import { View } from 'react-native'
6
6
  // eslint-disable-next-line import/no-extraneous-dependencies
7
7
  import * as Icons from '@telus-uds/palette-allium/build/rn/icons'
8
8
 
9
- import { TextButton, variantProp } from '../../lib'
9
+ import { TextButton, variantProp } from '../../src'
10
10
  import { Container, EachParentType, useVariants, parentTypesParams } from '../supports'
11
11
 
12
12
  export default {
@@ -6,7 +6,7 @@ import { StyleSheet, Text } from 'react-native'
6
6
  import { Checkmark, ThumbsUp, Baby } from '@telus-uds/palette-allium/build/rn/icons'
7
7
  import { useVariants, Container } from '../supports'
8
8
 
9
- import { List, Typography } from '../../lib'
9
+ import { List, Typography } from '../../src'
10
10
 
11
11
  export default {
12
12
  title: 'Base/List',
@@ -0,0 +1,29 @@
1
+ import React, { useState } from 'react'
2
+
3
+ import { Button, Modal, Spacer, Typography } from '../../src'
4
+
5
+ export default {
6
+ title: 'Base/Modal',
7
+ component: Modal
8
+ }
9
+
10
+ export const Default = (args) => {
11
+ const [isOpen, setIsOpen] = useState(false)
12
+ const [isMaxWidthOpen, setIsMaxWidthOpen] = useState(false)
13
+
14
+ return (
15
+ <>
16
+ <Button onPress={() => setIsOpen(true)}>Open modal</Button>
17
+ <Modal {...args} isOpen={isOpen} onClose={() => setIsOpen(false)}>
18
+ <Typography>Test content</Typography>
19
+ </Modal>
20
+ <Spacer space={3} />
21
+ <Button onPress={() => setIsMaxWidthOpen(true)}>Open maxWidth modal</Button>
22
+ <Modal {...args} isOpen={isMaxWidthOpen} onClose={() => setIsMaxWidthOpen(false)} maxWidth>
23
+ <Typography variant={{ size: 'h2' }}>Test heading</Typography>
24
+ <Typography>Test content</Typography>
25
+ </Modal>
26
+ </>
27
+ )
28
+ }
29
+ Default.storyName = 'Modal'
@@ -0,0 +1,82 @@
1
+ /* eslint-disable react/no-multi-comp */
2
+ import React from 'react'
3
+ import { Text } from 'react-native'
4
+
5
+ import { Link, Notification, Typography } from '../../src'
6
+ import { Container } from '../supports'
7
+
8
+ export default {
9
+ title: 'Base/Notification',
10
+ component: Notification
11
+ }
12
+
13
+ const Template = (args) => <Notification {...args} />
14
+
15
+ export const Default = Template.bind({})
16
+ Default.args = {
17
+ children: 'Your password was updated successfully.'
18
+ }
19
+
20
+ export const Variants = () => {
21
+ const variants = [{}, { style: 'success' }, { style: 'warning' }, { style: 'error' }]
22
+ const propSets = [
23
+ {},
24
+ { system: true },
25
+ { dismissible: true },
26
+ { system: true, dismissible: true }
27
+ ]
28
+
29
+ const combinations = variants.flatMap((variant) => {
30
+ return propSets.map((propSet) => ({ variant, ...propSet }))
31
+ })
32
+
33
+ return combinations.map((props) => {
34
+ const label = [
35
+ props.variant.style ?? 'default',
36
+ props.system && 'system',
37
+ props.dismissible && 'dismissible'
38
+ ]
39
+ .filter((value) => value)
40
+ .join(' ')
41
+
42
+ return (
43
+ <Container key={label}>
44
+ <Text>{label}</Text>
45
+ <Notification {...props}>
46
+ Tip: These services are best suited for large business organizations. Order products and
47
+ services at TELUS.com.
48
+ </Notification>
49
+ </Container>
50
+ )
51
+ })
52
+ }
53
+
54
+ export const ContentTypes = () => {
55
+ return (
56
+ <>
57
+ <Container>
58
+ <Notification>A regular string content.</Notification>
59
+ </Container>
60
+ <Container>
61
+ <Notification>
62
+ <Typography>
63
+ Text components content. <Link href="https://telus.com/uds">Combined with a link.</Link>
64
+ </Typography>
65
+ </Notification>
66
+ </Container>
67
+ <Container>
68
+ <Notification variant={{ customVariant: true }}>
69
+ {({ textStyles, variant }) => (
70
+ <Text style={textStyles}>
71
+ A render function, to apply component styles and variant ({Object.keys(variant)[0]})
72
+ to Text and{' '}
73
+ <Link href="https://telus.com/uds" tokens={{ color: textStyles.color }}>
74
+ Link
75
+ </Link>
76
+ </Text>
77
+ )}
78
+ </Notification>
79
+ </Container>
80
+ </>
81
+ )
82
+ }
@@ -2,7 +2,7 @@
2
2
  import React, { useState } from 'react'
3
3
  import PropTypes from 'prop-types'
4
4
 
5
- import { Pagination, Typography } from '../../lib'
5
+ import { Pagination, Typography } from '../../src'
6
6
  import { Container, EachParentType, parentTypesParams } from '../supports'
7
7
 
8
8
  export default {
@@ -0,0 +1,93 @@
1
+ /* eslint-disable react/no-multi-comp */
2
+ import React from 'react'
3
+
4
+ import { Progress, StackView, Typography } from '../../src'
5
+ import { Container, EachParentType, parentTypesParams } from '../supports'
6
+
7
+ export default {
8
+ title: 'Base/Progress',
9
+ component: Progress.Bar,
10
+ args: { accessibilityLabel: 'Progress Bar' }
11
+ }
12
+
13
+ export const Default = (args) => (
14
+ <Progress>
15
+ <Progress.Bar {...args} />
16
+ </Progress>
17
+ )
18
+ Default.storyName = 'Example'
19
+ Default.args = { percentage: 50 }
20
+ Default.argTypes = {
21
+ percentage: { control: { type: 'range', min: 0, max: 100 } }
22
+ }
23
+
24
+ export const Variants = () => (
25
+ <Container>
26
+ <StackView>
27
+ <Progress>
28
+ <Progress.Bar
29
+ percentage={25}
30
+ variant={{ inactive: true }}
31
+ accessibilityLabel="Inactive progress bar"
32
+ />
33
+ </Progress>
34
+ <Progress>
35
+ <Progress.Bar
36
+ percentage={50}
37
+ variant={{ negative: true }}
38
+ accessibilityLabel="Negative progress bar"
39
+ />
40
+ </Progress>
41
+ <Progress>
42
+ <Progress.Bar percentage={75} accessibilityLabel="Progress bar" />
43
+ </Progress>
44
+ <Progress variant={{ size: 'mini' }}>
45
+ <Progress.Bar
46
+ percentage={25}
47
+ variant={{ inactive: true }}
48
+ accessibilityLabel="Inactive progress bar"
49
+ />
50
+ </Progress>
51
+ <Progress variant={{ size: 'mini' }}>
52
+ <Progress.Bar
53
+ percentage={50}
54
+ variant={{ negative: true }}
55
+ accessibilityLabel="Negative progress bar"
56
+ />
57
+ </Progress>
58
+ <Progress variant={{ size: 'mini' }}>
59
+ <Progress.Bar
60
+ percentage={75}
61
+ variant={{ size: 'mini' }}
62
+ accessibilityLabel="Minimal progress bar"
63
+ />
64
+ </Progress>
65
+ </StackView>
66
+ </Container>
67
+ )
68
+
69
+ export const StackedBars = () => (
70
+ <Progress>
71
+ <Progress.Bar
72
+ percentage={75}
73
+ variant={{ inactive: true }}
74
+ accessibilityLabel="Stacked inactive progress bar"
75
+ />
76
+ <Progress.Bar percentage={50} accessibilityLabel="Stacked progress bar" />
77
+ </Progress>
78
+ )
79
+
80
+ export const ParentTypes = (args) => (
81
+ <EachParentType componentThemeName="ProgressBar" {...args}>
82
+ {({ label, variant }) => (
83
+ <Container key={label}>
84
+ <Typography>{`${label} `}</Typography>
85
+ <Progress>
86
+ <Progress.Bar {...args} variant={variant} accessibilityLabel={label} />
87
+ </Progress>
88
+ </Container>
89
+ )}
90
+ </EachParentType>
91
+ )
92
+ ParentTypes.parameters = parentTypesParams
93
+ ParentTypes.args = { percentage: 75 }
@@ -1,7 +1,7 @@
1
1
  /* eslint-disable react/no-multi-comp */
2
- import React, { useState } from 'react'
2
+ import React from 'react'
3
3
 
4
- import { Radio, StackView, Typography } from '../../lib'
4
+ import { Radio, RadioGroup, Typography } from '../../src'
5
5
  import { Container, EachParentType, parentTypesParams } from '../supports'
6
6
 
7
7
  export default {
@@ -55,40 +55,27 @@ WithDescription.args = {
55
55
  description: 'This is a description'
56
56
  }
57
57
 
58
- export const RadioGroup = (args) => {
59
- const [value, setValue] = useState(1)
60
- const handleChange = (val) => () => setValue(val)
61
-
62
- return (
63
- <Container>
64
- <StackView accessibilityRole="radiogroup">
65
- <Radio
66
- {...args}
67
- checked={value === 1}
68
- label="Radio1"
69
- onChange={handleChange(1)}
70
- name="group"
71
- value={1}
72
- />
73
- <Radio
74
- {...args}
75
- checked={value === 2}
76
- label="Radio2"
77
- onChange={handleChange(2)}
78
- name="group"
79
- value={2}
80
- />
81
- <Radio
82
- {...args}
83
- checked={value === 3}
84
- label="Radio3"
85
- onChange={handleChange(3)}
86
- name="group"
87
- value={3}
88
- />
89
- </StackView>
90
- </Container>
91
- )
58
+ export const RadioGroupStory = (args) => <RadioGroup {...args} />
59
+ RadioGroupStory.storyName = 'RadioGroup'
60
+ RadioGroupStory.args = {
61
+ items: [
62
+ {
63
+ label: 'Radio Card 1'
64
+ },
65
+ {
66
+ label: 'Radio Card 2'
67
+ },
68
+ {
69
+ label: 'Radio Card 3'
70
+ },
71
+ {
72
+ label: 'Radio Card 4'
73
+ }
74
+ ],
75
+ legend: 'Choose a radio button.',
76
+ hint: 'Of the radio buttons below, choose one.',
77
+ tooltip: 'Decide which radio button you like best, then press it.',
78
+ name: 'example'
92
79
  }
93
80
 
94
81
  export const ParentTypes = (args) => (
@@ -0,0 +1,98 @@
1
+ /* eslint-disable react/no-multi-comp */
2
+ import React from 'react'
3
+
4
+ import { RadioCard, RadioCardGroup, Typography } from '../../src'
5
+ import { Container, EachParentType, parentTypesParams } from '../supports'
6
+
7
+ export default {
8
+ title: 'Base/RadioCard',
9
+ component: RadioCard
10
+ }
11
+
12
+ const additionalContent = (
13
+ <>
14
+ <Typography>First line</Typography>
15
+ <Typography>Second line</Typography>
16
+ </>
17
+ )
18
+
19
+ export const Default = (args) => <RadioCard {...args} />
20
+ Default.args = {
21
+ title: 'Radio card',
22
+ children: additionalContent
23
+ }
24
+ Default.storyName = 'RadioCard'
25
+
26
+ export const RadioCardGroupStory = (args) => <RadioCardGroup {...args} />
27
+ RadioCardGroupStory.storyName = 'RadioCardGroup'
28
+ RadioCardGroupStory.args = {
29
+ items: [
30
+ {
31
+ title: 'Radio Card 1',
32
+ content: (
33
+ <>
34
+ <Typography>First line</Typography>
35
+ </>
36
+ )
37
+ },
38
+ {
39
+ title: 'Radio Card 2',
40
+ content: (
41
+ <>
42
+ <Typography>First line</Typography>
43
+ <Typography>Second line</Typography>
44
+ </>
45
+ )
46
+ },
47
+ {
48
+ title: 'Radio Card 3',
49
+ content: (
50
+ <>
51
+ <Typography>First line</Typography>
52
+ <Typography>Second line</Typography>
53
+ <Typography>Third line</Typography>
54
+ </>
55
+ )
56
+ },
57
+ {
58
+ title: 'Radio Card 4',
59
+ content: (
60
+ <>
61
+ <Typography>First line</Typography>
62
+ <Typography>Second line</Typography>
63
+ </>
64
+ )
65
+ },
66
+ {
67
+ title: 'Radio Card 5',
68
+ content: (
69
+ <>
70
+ <Typography>First line</Typography>
71
+ <Typography>Second line</Typography>
72
+ <Typography>Third line</Typography>
73
+ <Typography>Fourth line</Typography>
74
+ </>
75
+ )
76
+ }
77
+ ],
78
+ legend: 'Choose a radio card.',
79
+ hint: 'Of the radio cards below, choose one.',
80
+ tooltip: 'Decide which radio card you like best, then press it.',
81
+ name: 'example'
82
+ }
83
+
84
+ export const ParentTypes = (args) => (
85
+ <EachParentType componentThemeName="Radio" {...args}>
86
+ {({ label, variant }) => (
87
+ <Container key={label}>
88
+ <RadioCard {...args} variant={variant} title={label}>
89
+ {additionalContent}
90
+ </RadioCard>
91
+ </Container>
92
+ )}
93
+ </EachParentType>
94
+ )
95
+ ParentTypes.parameters = parentTypesParams
96
+ ParentTypes.args = {
97
+ defaultChecked: undefined
98
+ }
@@ -0,0 +1,16 @@
1
+ import React from 'react'
2
+
3
+ import { Search } from '../../src'
4
+
5
+ export default {
6
+ title: 'Base/Search',
7
+ component: Search
8
+ }
9
+
10
+ const Template = (args) => <Search {...args} />
11
+
12
+ export const Default = Template.bind({})
13
+ Default.args = {}
14
+
15
+ export const Inactive = Template.bind({})
16
+ Inactive.args = { inactive: true }
@@ -1,7 +1,7 @@
1
1
  import React, { useState } from 'react'
2
2
  import { Text } from 'react-native'
3
3
 
4
- import { Select } from '../../lib'
4
+ import { Select } from '../../src'
5
5
 
6
6
  export default {
7
7
  title: 'Base/Select',
@@ -1,7 +1,7 @@
1
1
  /* eslint-disable react/no-multi-comp */
2
2
  import React from 'react'
3
3
  import PropTypes from 'prop-types'
4
- import { SideNav } from '../../lib'
4
+ import { SideNav } from '../../src'
5
5
  import { EachParentType, parentTypesParams } from '../supports'
6
6
 
7
7
  export default {
@@ -1,5 +1,5 @@
1
1
  import React from 'react'
2
- import { SideNav } from '../../lib'
2
+ import { SideNav } from '../../src'
3
3
 
4
4
  export default {
5
5
  title: 'Base/SideNav/Item',
@@ -1,5 +1,5 @@
1
1
  import React from 'react'
2
- import { SideNav } from '../../lib'
2
+ import { SideNav } from '../../src'
3
3
 
4
4
  export default {
5
5
  title: 'Base/SideNav/Items Group',