@automattic/vip-design-system 1.2.0 → 1.2.2

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 (455) hide show
  1. package/.storybook/decorators/withBoundingBox.tsx +11 -0
  2. package/.storybook/decorators/{withThemeProvider.jsx → withThemeProvider.tsx} +1 -5
  3. package/.storybook/{preview.js → preview.tsx} +12 -3
  4. package/build/declaration.d.js +1 -0
  5. package/build/system/Accordion/Accordion.d.ts +41 -0
  6. package/build/system/Accordion/Accordion.js +10 -35
  7. package/build/system/Accordion/Accordion.stories.d.ts +13 -0
  8. package/build/system/Accordion/Accordion.stories.js +4 -7
  9. package/build/system/Accordion/Accordion.test.d.ts +2 -0
  10. package/build/system/Accordion/Accordion.test.js +5 -7
  11. package/build/system/Accordion/index.d.ts +5 -0
  12. package/build/system/Avatar/Avatar.d.ts +13 -0
  13. package/build/system/Avatar/Avatar.js +7 -20
  14. package/build/system/Avatar/Avatar.stories.d.ts +16 -0
  15. package/build/system/Avatar/Avatar.stories.js +5 -7
  16. package/build/system/Avatar/Avatar.test.d.ts +1 -0
  17. package/build/system/Avatar/Avatar.test.js +5 -7
  18. package/build/system/Avatar/index.d.ts +4 -0
  19. package/build/system/Avatar/index.js +1 -0
  20. package/build/system/Badge/Badge.d.ts +6 -0
  21. package/build/system/Badge/Badge.js +6 -15
  22. package/build/system/Badge/Badge.stories.d.ts +18 -0
  23. package/build/system/Badge/Badge.stories.js +70 -71
  24. package/build/system/Badge/Badge.test.d.ts +1 -0
  25. package/build/system/Badge/Badge.test.js +6 -8
  26. package/build/system/Badge/index.d.ts +4 -0
  27. package/build/system/Badge/index.js +1 -0
  28. package/build/system/Box/Box.d.ts +3 -0
  29. package/build/system/{Form/Label.stories.js → Box/Box.js} +15 -31
  30. package/build/system/Box/Box.stories.d.ts +16 -0
  31. package/build/system/Box/Box.stories.js +21 -0
  32. package/build/system/Box/index.d.ts +2 -0
  33. package/build/system/Box/index.js +5 -4
  34. package/build/system/Button/Button.d.ts +12 -0
  35. package/build/system/Button/Button.js +10 -18
  36. package/build/system/Button/Button.stories.d.ts +30 -0
  37. package/build/system/Button/Button.stories.js +10 -20
  38. package/build/system/Button/Button.test.d.ts +1 -0
  39. package/build/system/Button/Button.test.js +45 -74
  40. package/build/system/Button/ButtonSubmit.d.ts +2 -0
  41. package/build/system/Button/ButtonSubmit.js +60 -70
  42. package/build/system/Button/ButtonSubmit.stories.d.ts +38 -0
  43. package/build/system/Button/ButtonSubmit.stories.jsx +40 -0
  44. package/build/system/Button/ButtonSubmit.test.d.ts +1 -0
  45. package/build/system/Button/ButtonSubmit.test.js +32 -60
  46. package/build/system/Button/index.d.ts +3 -0
  47. package/build/system/Button/index.js +7 -6
  48. package/build/system/Button/variants.d.ts +2 -0
  49. package/build/system/Button/variants.js +1 -6
  50. package/build/system/Card/Card.d.ts +9 -0
  51. package/build/system/Card/Card.js +2 -10
  52. package/build/system/Card/Card.stories.d.ts +7 -0
  53. package/build/system/Card/Card.stories.js +4 -6
  54. package/build/system/Card/Card.test.d.ts +1 -0
  55. package/build/system/Card/Card.test.js +5 -7
  56. package/build/system/Card/index.d.ts +4 -0
  57. package/build/system/Card/index.js +1 -0
  58. package/build/system/Code/Code.d.ts +15 -0
  59. package/build/system/Code/Code.js +14 -21
  60. package/build/system/Code/Code.stories.d.ts +18 -0
  61. package/build/system/Code/Code.stories.js +31 -23
  62. package/build/system/Code/Code.test.d.ts +1 -0
  63. package/build/system/Code/Code.test.js +10 -11
  64. package/build/system/Code/index.d.ts +4 -0
  65. package/build/system/Code/index.js +1 -0
  66. package/build/system/ConfirmationDialog/ConfirmationDialog.d.ts +35 -0
  67. package/build/system/ConfirmationDialog/ConfirmationDialog.js +68 -94
  68. package/build/system/ConfirmationDialog/ConfirmationDialog.stories.d.ts +7 -0
  69. package/build/system/ConfirmationDialog/ConfirmationDialog.stories.jsx +29 -0
  70. package/build/system/ConfirmationDialog/index.d.ts +3 -0
  71. package/build/system/ConfirmationDialog/index.js +5 -5
  72. package/build/system/Dialog/Dialog.d.ts +18 -0
  73. package/build/system/Dialog/Dialog.js +81 -94
  74. package/build/system/Dialog/Dialog.stories.d.ts +7 -0
  75. package/build/system/Dialog/Dialog.stories.jsx +60 -0
  76. package/build/system/Dialog/DialogButton.d.ts +16 -0
  77. package/build/system/Dialog/DialogButton.js +51 -66
  78. package/build/system/Dialog/DialogContent.d.ts +18 -0
  79. package/build/system/Dialog/DialogContent.js +142 -137
  80. package/build/system/Dialog/DialogDivider.d.ts +5 -0
  81. package/build/system/Dialog/DialogDivider.js +5 -16
  82. package/build/system/Dialog/DialogMenu.d.ts +5 -0
  83. package/build/system/Dialog/DialogMenu.js +5 -18
  84. package/build/system/Dialog/DialogMenuItem.d.ts +13 -0
  85. package/build/system/Dialog/DialogMenuItem.js +64 -71
  86. package/build/system/Dialog/DialogTrigger.d.ts +1 -0
  87. package/build/system/Dialog/DialogTrigger.js +10 -16
  88. package/build/system/Dialog/index.d.ts +8 -0
  89. package/build/system/Dialog/index.js +19 -16
  90. package/build/system/Dropdown/Dropdown.d.ts +37 -0
  91. package/build/system/Dropdown/Dropdown.js +96 -93
  92. package/build/system/Dropdown/Dropdown.stories.d.ts +34 -0
  93. package/build/system/Dropdown/Dropdown.stories.jsx +170 -0
  94. package/build/system/Dropdown/Dropdown.test.d.ts +1 -0
  95. package/build/system/Dropdown/Dropdown.test.js +30 -52
  96. package/build/system/Dropdown/DropdownContent.d.ts +11 -0
  97. package/build/system/Dropdown/DropdownContent.js +40 -49
  98. package/build/system/Dropdown/DropdownItem.d.ts +32 -0
  99. package/build/system/Dropdown/DropdownItem.js +91 -95
  100. package/build/system/Dropdown/DropdownLabel.d.ts +8 -0
  101. package/build/system/Dropdown/DropdownLabel.js +24 -33
  102. package/build/system/Dropdown/DropdownSeparator.d.ts +7 -0
  103. package/build/system/Dropdown/DropdownSeparator.js +23 -32
  104. package/build/system/Dropdown/index.d.ts +40 -0
  105. package/build/system/Dropdown/index.js +49 -37
  106. package/build/system/Flex/Flex.d.ts +2 -0
  107. package/build/system/Flex/Flex.js +6 -8
  108. package/build/system/Flex/Flex.stories.d.ts +7 -0
  109. package/build/system/Flex/Flex.stories.js +3 -5
  110. package/build/system/Flex/index.d.ts +4 -0
  111. package/build/system/Flex/index.js +1 -0
  112. package/build/system/Form/Checkbox.d.ts +10 -0
  113. package/build/system/Form/Checkbox.js +61 -62
  114. package/build/system/Form/Checkbox.stories.d.ts +7 -0
  115. package/build/system/Form/Checkbox.stories.jsx +54 -0
  116. package/build/system/Form/Input.d.ts +2 -0
  117. package/build/system/Form/Input.js +70 -69
  118. package/build/system/Form/Input.stories.d.ts +5 -0
  119. package/build/system/Form/Input.stories.jsx +38 -0
  120. package/build/system/Form/Input.styles.d.ts +32 -0
  121. package/build/system/Form/Input.styles.js +29 -40
  122. package/build/system/Form/InputWithCopyButton.d.ts +2 -0
  123. package/build/system/Form/InputWithCopyButton.js +109 -105
  124. package/build/system/Form/InputWithCopyButton.stories.d.ts +5 -0
  125. package/build/system/Form/InputWithCopyButton.stories.jsx +30 -0
  126. package/build/system/Form/Label.d.ts +9 -0
  127. package/build/system/Form/Label.js +41 -47
  128. package/build/system/Form/Label.stories.d.ts +6 -0
  129. package/build/system/Form/Label.stories.jsx +36 -0
  130. package/build/system/Form/Radio.d.ts +2 -0
  131. package/build/system/Form/Radio.js +185 -169
  132. package/build/system/Form/Radio.stories.d.ts +7 -0
  133. package/build/system/Form/Radio.stories.jsx +100 -0
  134. package/build/system/Form/RadioBoxGroup.d.ts +2 -0
  135. package/build/system/Form/RadioBoxGroup.js +193 -187
  136. package/build/system/Form/RadioBoxGroup.stories.d.ts +8 -0
  137. package/build/system/Form/RadioBoxGroup.stories.jsx +60 -0
  138. package/build/system/Form/RequiredLabel.d.ts +5 -0
  139. package/build/system/Form/RequiredLabel.js +7 -17
  140. package/build/system/Form/Textarea.d.ts +2 -0
  141. package/build/system/Form/Textarea.js +18 -20
  142. package/build/system/Form/Textarea.stories.d.ts +34 -0
  143. package/build/system/Form/Textarea.stories.jsx +40 -0
  144. package/build/system/Form/Toggle.d.ts +2 -0
  145. package/build/system/Form/Toggle.js +67 -81
  146. package/build/system/Form/Toggle.stories.d.ts +19 -0
  147. package/build/system/Form/Toggle.stories.jsx +96 -0
  148. package/build/system/Form/Toggle.test.d.ts +1 -0
  149. package/build/system/Form/Toggle.test.js +21 -39
  150. package/build/system/Form/ToggleRow.d.ts +22 -0
  151. package/build/system/Form/ToggleRow.js +66 -95
  152. package/build/system/Form/Validation.d.ts +14 -0
  153. package/build/system/Form/Validation.js +33 -42
  154. package/build/system/Form/index.d.ts +11 -0
  155. package/build/system/Form/index.js +25 -22
  156. package/build/system/Grid/Grid.d.ts +6 -0
  157. package/build/system/Grid/Grid.js +4 -5
  158. package/build/system/Grid/Grid.stories.d.ts +7 -0
  159. package/build/system/Grid/Grid.stories.js +3 -5
  160. package/build/system/Grid/index.d.ts +4 -0
  161. package/build/system/Grid/index.js +1 -0
  162. package/build/system/Heading/Heading.d.ts +6 -0
  163. package/build/system/Heading/Heading.js +33 -0
  164. package/build/system/Heading/Heading.stories.d.ts +7 -0
  165. package/build/system/Heading/Heading.stories.js +33 -0
  166. package/build/system/Heading/index.d.ts +2 -0
  167. package/build/system/Heading/index.js +5 -4
  168. package/build/system/Link/Link.d.ts +6 -0
  169. package/build/system/Link/Link.js +5 -12
  170. package/build/system/Link/Link.stories.d.ts +16 -0
  171. package/build/system/Link/Link.stories.js +12 -13
  172. package/build/system/Link/index.d.ts +4 -0
  173. package/build/system/Link/index.js +1 -0
  174. package/build/system/NewConfirmationDialog/NewConfirmationDialog.d.ts +23 -0
  175. package/build/system/NewConfirmationDialog/NewConfirmationDialog.js +86 -99
  176. package/build/system/NewConfirmationDialog/NewConfirmationDialog.stories.d.ts +8 -0
  177. package/build/system/NewConfirmationDialog/NewConfirmationDialog.stories.jsx +34 -0
  178. package/build/system/NewConfirmationDialog/NewConfirmationDialog.test.d.ts +1 -0
  179. package/build/system/NewConfirmationDialog/NewConfirmationDialog.test.js +43 -66
  180. package/build/system/NewConfirmationDialog/index.d.ts +2 -0
  181. package/build/system/NewConfirmationDialog/index.js +5 -4
  182. package/build/system/NewDialog/DialogClose.d.ts +6 -0
  183. package/build/system/NewDialog/DialogClose.js +50 -69
  184. package/build/system/NewDialog/DialogClose.test.d.ts +1 -0
  185. package/build/system/NewDialog/DialogClose.test.js +29 -46
  186. package/build/system/NewDialog/DialogContent.d.ts +18 -0
  187. package/build/system/NewDialog/DialogContent.js +14 -21
  188. package/build/system/NewDialog/DialogDescription.d.ts +5 -0
  189. package/build/system/NewDialog/DialogDescription.js +31 -38
  190. package/build/system/NewDialog/DialogDescription.test.d.ts +1 -0
  191. package/build/system/NewDialog/DialogDescription.test.js +44 -67
  192. package/build/system/NewDialog/DialogOverlay.d.ts +2 -0
  193. package/build/system/NewDialog/DialogOverlay.js +28 -32
  194. package/build/system/NewDialog/DialogOverlay.test.d.ts +1 -0
  195. package/build/system/NewDialog/DialogOverlay.test.js +26 -42
  196. package/build/system/NewDialog/DialogTitle.d.ts +11 -0
  197. package/build/system/NewDialog/DialogTitle.js +19 -34
  198. package/build/system/NewDialog/DialogTitle.test.d.ts +1 -0
  199. package/build/system/NewDialog/DialogTitle.test.js +44 -67
  200. package/build/system/NewDialog/NewDialog.d.ts +29 -0
  201. package/build/system/NewDialog/NewDialog.js +74 -89
  202. package/build/system/NewDialog/NewDialog.stories.d.ts +38 -0
  203. package/build/system/NewDialog/NewDialog.stories.jsx +192 -0
  204. package/build/system/NewDialog/index.d.ts +31 -0
  205. package/build/system/NewDialog/index.js +9 -13
  206. package/build/system/NewForm/Fieldset.d.ts +2 -0
  207. package/build/system/NewForm/Fieldset.js +38 -43
  208. package/build/system/NewForm/Form.d.ts +2 -0
  209. package/build/system/NewForm/Form.js +21 -28
  210. package/build/system/NewForm/FormAutocomplete.d.ts +2 -0
  211. package/build/system/NewForm/FormAutocomplete.js +386 -381
  212. package/build/system/NewForm/FormAutocomplete.stories.d.ts +156 -0
  213. package/build/system/NewForm/FormAutocomplete.stories.jsx +159 -0
  214. package/build/system/NewForm/FormAutocomplete.test.d.ts +1 -0
  215. package/build/system/NewForm/FormAutocomplete.test.js +40 -73
  216. package/build/system/NewForm/FormAutocompleteMultiselect.d.ts +2 -0
  217. package/build/system/NewForm/FormAutocompleteMultiselect.js +456 -468
  218. package/build/system/NewForm/FormAutocompleteMultiselect.stories.d.ts +45 -0
  219. package/build/system/NewForm/FormAutocompleteMultiselect.stories.jsx +162 -0
  220. package/build/system/NewForm/FormAutocompleteMultiselect.test.d.ts +1 -0
  221. package/build/system/NewForm/FormAutocompleteMultiselect.test.js +37 -73
  222. package/build/system/NewForm/FormSelect.d.ts +2 -0
  223. package/build/system/NewForm/FormSelect.js +159 -140
  224. package/build/system/NewForm/FormSelect.stories.d.ts +137 -0
  225. package/build/system/NewForm/FormSelect.stories.jsx +138 -0
  226. package/build/system/NewForm/FormSelect.test.d.ts +1 -0
  227. package/build/system/NewForm/FormSelect.test.js +131 -227
  228. package/build/system/NewForm/FormSelectArrow.d.ts +2 -0
  229. package/build/system/NewForm/FormSelectArrow.js +35 -35
  230. package/build/system/NewForm/FormSelectContent.d.ts +2 -0
  231. package/build/system/NewForm/FormSelectContent.js +27 -34
  232. package/build/system/NewForm/FormSelectInline.d.ts +30 -0
  233. package/build/system/NewForm/FormSelectInline.js +41 -38
  234. package/build/system/NewForm/FormSelectLoading.d.ts +2 -0
  235. package/build/system/NewForm/FormSelectLoading.js +36 -45
  236. package/build/system/NewForm/FormSelectSearch.d.ts +2 -0
  237. package/build/system/NewForm/FormSelectSearch.js +23 -25
  238. package/build/system/NewForm/Legend.d.ts +2 -0
  239. package/build/system/NewForm/Legend.js +32 -37
  240. package/build/system/NewForm/index.d.ts +12 -0
  241. package/build/system/NewForm/index.js +30 -30
  242. package/build/system/Notice/Notice.d.ts +18 -0
  243. package/build/system/Notice/Notice.js +41 -55
  244. package/build/system/Notice/Notice.stories.d.ts +13 -0
  245. package/build/system/Notice/Notice.stories.js +3 -5
  246. package/build/system/Notice/index.d.ts +5 -0
  247. package/build/system/OptionRow/OptionRow.d.ts +2 -0
  248. package/build/system/OptionRow/OptionRow.js +146 -159
  249. package/build/system/OptionRow/OptionRow.stories.d.ts +8 -0
  250. package/build/system/OptionRow/OptionRow.stories.jsx +53 -0
  251. package/build/system/OptionRow/OptionRow.test.d.ts +1 -0
  252. package/build/system/OptionRow/OptionRow.test.js +38 -67
  253. package/build/system/OptionRow/index.d.ts +2 -0
  254. package/build/system/OptionRow/index.js +5 -4
  255. package/build/system/Progress/Progress.d.ts +2 -0
  256. package/build/system/Progress/Progress.js +69 -84
  257. package/build/system/Progress/Progress.stories.d.ts +8 -0
  258. package/build/system/Progress/Progress.stories.jsx +25 -0
  259. package/build/system/Progress/index.d.ts +2 -0
  260. package/build/system/Progress/index.js +5 -4
  261. package/build/system/ScreenReaderText/ScreenReader.test.d.ts +1 -0
  262. package/build/system/ScreenReaderText/ScreenReader.test.js +21 -25
  263. package/build/system/ScreenReaderText/ScreenReaderText.d.ts +14 -0
  264. package/build/system/ScreenReaderText/ScreenReaderText.js +13 -21
  265. package/build/system/ScreenReaderText/index.d.ts +3 -0
  266. package/build/system/ScreenReaderText/index.js +6 -8
  267. package/build/system/Spinner/Spinner.d.ts +9 -0
  268. package/build/system/Spinner/Spinner.js +12 -19
  269. package/build/system/Spinner/Spinner.stories.d.ts +7 -0
  270. package/build/system/Spinner/Spinner.stories.js +3 -5
  271. package/build/system/Spinner/Spinner.test.d.ts +1 -0
  272. package/build/system/Spinner/Spinner.test.js +59 -0
  273. package/build/system/Spinner/index.d.ts +1 -0
  274. package/build/system/Spinner/index.js +1 -0
  275. package/build/system/Table/Table.d.ts +14 -0
  276. package/build/system/Table/Table.js +7 -21
  277. package/build/system/Table/Table.stories.d.ts +9 -0
  278. package/build/system/Table/Table.stories.js +5 -12
  279. package/build/system/Table/TableCell.d.ts +15 -0
  280. package/build/system/Table/TableCell.js +13 -18
  281. package/build/system/Table/TableRow.d.ts +14 -0
  282. package/build/system/Table/TableRow.js +19 -24
  283. package/build/system/Table/index.d.ts +6 -0
  284. package/build/system/Table/index.js +1 -0
  285. package/build/system/Tabs/Tabs.d.ts +5 -0
  286. package/build/system/Tabs/Tabs.js +40 -38
  287. package/build/system/Tabs/Tabs.stories.d.ts +9 -0
  288. package/build/system/Tabs/Tabs.stories.jsx +69 -0
  289. package/build/system/Tabs/TabsContent.d.ts +16 -0
  290. package/build/system/Tabs/TabsContent.js +23 -30
  291. package/build/system/Tabs/TabsList.d.ts +15 -0
  292. package/build/system/Tabs/TabsList.js +24 -32
  293. package/build/system/Tabs/TabsTrigger.d.ts +2 -0
  294. package/build/system/Tabs/TabsTrigger.js +58 -66
  295. package/build/system/Tabs/index.d.ts +5 -0
  296. package/build/system/Tabs/index.js +8 -10
  297. package/build/system/Text/Text.d.ts +2 -0
  298. package/build/system/Text/Text.js +5 -13
  299. package/build/system/Text/Text.stories.d.ts +8 -0
  300. package/build/system/Text/Text.stories.js +4 -5
  301. package/build/system/Text/index.d.ts +4 -0
  302. package/build/system/Text/index.js +1 -0
  303. package/build/system/Tooltip/Tooltip.css +96 -0
  304. package/build/system/Tooltip/Tooltip.d.ts +15 -0
  305. package/build/system/Tooltip/Tooltip.js +23 -93
  306. package/build/system/Tooltip/Tooltip.stories.d.ts +15 -0
  307. package/build/system/Tooltip/Tooltip.stories.js +83 -21
  308. package/build/system/Tooltip/index.d.ts +5 -0
  309. package/build/system/Wizard/Wizard.d.ts +2 -0
  310. package/build/system/Wizard/Wizard.js +94 -103
  311. package/build/system/Wizard/Wizard.stories.d.ts +9 -0
  312. package/build/system/Wizard/Wizard.stories.jsx +145 -0
  313. package/build/system/Wizard/WizardStep.d.ts +2 -0
  314. package/build/system/Wizard/WizardStep.js +188 -198
  315. package/build/system/Wizard/WizardStepHorizontal.d.ts +2 -0
  316. package/build/system/Wizard/WizardStepHorizontal.js +43 -55
  317. package/build/system/Wizard/index.d.ts +4 -0
  318. package/build/system/Wizard/index.js +7 -8
  319. package/build/system/index.d.ts +51 -0
  320. package/build/system/index.js +104 -86
  321. package/build/system/theme/colors.d.ts +2 -0
  322. package/build/system/theme/colors.js +7 -12
  323. package/build/system/theme/getColor.d.ts +8 -0
  324. package/build/system/theme/getColor.js +47 -46
  325. package/build/system/theme/index.d.ts +322 -0
  326. package/build/system/theme/index.js +494 -396
  327. package/build/system/theme/textStyles.d.ts +71 -0
  328. package/build/system/theme/textStyles.js +45 -50
  329. package/build/system/utils/random.d.ts +1 -0
  330. package/build/system/utils/random.js +3 -7
  331. package/package.json +31 -37
  332. package/src/declaration.d.ts +1 -0
  333. package/src/system/Accordion/{Accordion.test.js → Accordion.test.tsx} +2 -2
  334. package/src/system/Accordion/{Accordion.js → Accordion.tsx} +87 -80
  335. package/src/system/Avatar/Avatar.stories.tsx +18 -0
  336. package/src/system/Avatar/{Avatar.test.js → Avatar.test.tsx} +2 -2
  337. package/src/system/Avatar/{Avatar.js → Avatar.tsx} +17 -19
  338. package/src/system/Avatar/index.ts +4 -0
  339. package/src/system/Badge/Badge.stories.tsx +57 -0
  340. package/src/system/Badge/{Badge.test.js → Badge.test.tsx} +3 -3
  341. package/src/system/Badge/{Badge.js → Badge.tsx} +10 -15
  342. package/src/system/Badge/index.ts +4 -0
  343. package/src/system/Box/Box.stories.tsx +13 -1
  344. package/src/system/Box/Box.tsx +4 -8
  345. package/src/system/Button/Button.stories.tsx +110 -0
  346. package/src/system/Button/Button.tsx +67 -0
  347. package/src/system/Card/{Card.stories.jsx → Card.stories.tsx} +1 -1
  348. package/src/system/Card/{Card.test.js → Card.test.tsx} +2 -2
  349. package/src/system/Card/Card.tsx +40 -0
  350. package/src/system/Card/index.ts +4 -0
  351. package/src/system/Code/Code.stories.tsx +44 -0
  352. package/src/system/Code/{Code.test.js → Code.test.tsx} +6 -4
  353. package/src/system/Code/{Code.js → Code.tsx} +27 -22
  354. package/src/system/Code/index.ts +4 -0
  355. package/src/system/Flex/Flex.tsx +11 -0
  356. package/src/system/Flex/index.ts +4 -0
  357. package/src/system/Grid/Grid.tsx +11 -0
  358. package/src/system/Grid/index.ts +4 -0
  359. package/src/system/Heading/Heading.tsx +8 -17
  360. package/src/system/Link/Link.stories.tsx +23 -0
  361. package/src/system/Link/Link.tsx +43 -0
  362. package/src/system/Link/index.ts +4 -0
  363. package/src/system/NewForm/FormAutocomplete.js +2 -2
  364. package/src/system/Notice/Notice.tsx +129 -0
  365. package/src/system/OptionRow/OptionRow.test.js +1 -1
  366. package/src/system/ScreenReaderText/ScreenReaderText.tsx +40 -0
  367. package/src/system/Spinner/Spinner.test.tsx +30 -0
  368. package/src/system/Spinner/Spinner.tsx +34 -0
  369. package/src/system/Spinner/index.ts +1 -0
  370. package/src/system/Table/{Table.stories.jsx → Table.stories.tsx} +6 -6
  371. package/src/system/Table/{Table.js → Table.tsx} +14 -18
  372. package/src/system/Table/{TableCell.js → TableCell.tsx} +14 -12
  373. package/src/system/Table/TableRow.tsx +63 -0
  374. package/src/system/Table/index.ts +6 -0
  375. package/src/system/Text/{Text.stories.jsx → Text.stories.tsx} +1 -0
  376. package/src/system/Text/Text.tsx +25 -0
  377. package/src/system/Text/index.ts +4 -0
  378. package/src/system/Tooltip/Tooltip.css +96 -0
  379. package/src/system/Tooltip/Tooltip.stories.tsx +133 -0
  380. package/src/system/Tooltip/Tooltip.tsx +39 -0
  381. package/src/system/index.js +1 -2
  382. package/src/system/theme/index.js +21 -1
  383. package/test/fileMock.ts +1 -0
  384. package/test/setupAfterEnv.ts +5 -0
  385. package/tsconfig.definition.json +12 -0
  386. package/.storybook/decorators/withBoundingBox.jsx +0 -22
  387. package/build/system/Box/Box.stories.tsx +0 -11
  388. package/build/system/Box/Box.tsx +0 -22
  389. package/build/system/Button/ButtonSubmit.stories.js +0 -58
  390. package/build/system/ConfirmationDialog/ConfirmationDialog.stories.js +0 -42
  391. package/build/system/Dialog/Dialog.stories.js +0 -70
  392. package/build/system/Dropdown/Dropdown.stories.js +0 -197
  393. package/build/system/Form/Checkbox.stories.js +0 -73
  394. package/build/system/Form/Input.stories.js +0 -51
  395. package/build/system/Form/InputWithCopyButton.stories.js +0 -39
  396. package/build/system/Form/Radio.stories.js +0 -115
  397. package/build/system/Form/RadioBoxGroup.stories.js +0 -62
  398. package/build/system/Form/Textarea.stories.js +0 -59
  399. package/build/system/Form/Toggle.stories.js +0 -104
  400. package/build/system/Heading/Heading.stories.tsx +0 -19
  401. package/build/system/Heading/Heading.tsx +0 -38
  402. package/build/system/NewConfirmationDialog/NewConfirmationDialog.stories.js +0 -46
  403. package/build/system/NewDialog/NewDialog.stories.js +0 -247
  404. package/build/system/NewForm/FormAutocomplete.stories.js +0 -220
  405. package/build/system/NewForm/FormAutocompleteMultiselect.stories.js +0 -231
  406. package/build/system/NewForm/FormSelect.stories.js +0 -171
  407. package/build/system/Notification/Notification.js +0 -97
  408. package/build/system/Notification/Notification.stories.js +0 -29
  409. package/build/system/Notification/index.js +0 -5
  410. package/build/system/OptionRow/OptionRow.stories.js +0 -64
  411. package/build/system/Progress/Progress.stories.js +0 -36
  412. package/build/system/Tabs/Tabs.stories.js +0 -113
  413. package/build/system/Wizard/Wizard.stories.js +0 -182
  414. package/src/system/Avatar/Avatar.stories.jsx +0 -11
  415. package/src/system/Avatar/index.js +0 -6
  416. package/src/system/Badge/Badge.stories.jsx +0 -43
  417. package/src/system/Badge/index.js +0 -6
  418. package/src/system/Button/Button.js +0 -63
  419. package/src/system/Button/Button.stories.jsx +0 -87
  420. package/src/system/Card/Card.js +0 -39
  421. package/src/system/Card/index.js +0 -6
  422. package/src/system/Code/Code.stories.jsx +0 -37
  423. package/src/system/Code/index.js +0 -6
  424. package/src/system/Flex/Flex.js +0 -15
  425. package/src/system/Flex/index.js +0 -6
  426. package/src/system/Grid/Grid.js +0 -16
  427. package/src/system/Grid/index.js +0 -6
  428. package/src/system/Link/Link.js +0 -42
  429. package/src/system/Link/Link.stories.jsx +0 -15
  430. package/src/system/Link/index.js +0 -6
  431. package/src/system/Notice/Notice.js +0 -136
  432. package/src/system/Notification/Notification.js +0 -66
  433. package/src/system/Notification/Notification.stories.jsx +0 -16
  434. package/src/system/Notification/index.js +0 -6
  435. package/src/system/ScreenReaderText/ScreenReaderText.js +0 -39
  436. package/src/system/Spinner/Spinner.js +0 -34
  437. package/src/system/Spinner/index.js +0 -6
  438. package/src/system/Table/TableRow.js +0 -50
  439. package/src/system/Table/index.js +0 -8
  440. package/src/system/Text/Text.js +0 -33
  441. package/src/system/Text/index.js +0 -6
  442. package/src/system/Tooltip/Tooltip.js +0 -79
  443. package/src/system/Tooltip/Tooltip.stories.jsx +0 -22
  444. package/test/fileMock.js +0 -1
  445. package/test/setupAfterEnv.js +0 -13
  446. package/test/setupTests.js +0 -4
  447. /package/.storybook/decorators/{withColorMode.jsx → withColorMode.tsx} +0 -0
  448. /package/src/system/Accordion/{Accordion.stories.jsx → Accordion.stories.tsx} +0 -0
  449. /package/src/system/Accordion/{index.js → index.ts} +0 -0
  450. /package/src/system/Flex/{Flex.stories.jsx → Flex.stories.tsx} +0 -0
  451. /package/src/system/Grid/{Grid.stories.jsx → Grid.stories.tsx} +0 -0
  452. /package/src/system/Notice/{Notice.stories.jsx → Notice.stories.tsx} +0 -0
  453. /package/src/system/Notice/{index.js → index.ts} +0 -0
  454. /package/src/system/Spinner/{Spinner.stories.jsx → Spinner.stories.tsx} +0 -0
  455. /package/src/system/Tooltip/{index.js → index.ts} +0 -0
@@ -1,39 +1,101 @@
1
1
  "use strict";
2
2
 
3
3
  exports.__esModule = true;
4
- exports["default"] = exports.Default = void 0;
4
+ exports["default"] = exports.Container = exports.Basic = void 0;
5
5
  var _ = require("..");
6
6
  var _jsxRuntime = require("theme-ui/jsx-runtime");
7
7
  /**
8
8
  * Internal dependencies
9
9
  */
10
- var _default = {
10
+ var _default = exports["default"] = {
11
11
  title: 'Tooltip',
12
- component: _.Tooltip
12
+ component: _.Tooltip,
13
+ parameters: {
14
+ docs: {
15
+ description: {
16
+ component: "\nA tooltip is a short descriptive message that appears when a user hovers or focuses on an\nelement. Our tooltip aims to be 100% CSS-only. It uses a global css approach to inject the\ntooltip styles.\n\n## Kwown issues\n\n- Storybook uses iframes to render the components. This means that the tooltip box will overlap in the demos, but you can click on each demo page to see the correct render.\n- The current implementation of this component is <strong>NOT</strong> protected from viewport\nclipping (collision). For now, you can pick another <code>vip-tooltip-position</code> if\npossible.\n\n## Guidance\n\n### When to use the tooltip component\n\n- <strong>Helpful, non-critical information.</strong> Use tooltips to strengthen an existing\nmessage.\n- <strong>Enhance confidence.</strong> Use tooltips to increase certainty about an\ninteraction.\n- <strong>Brief descriptions.</strong> Tooltips perform best with succinct helper text.\n- <strong>Lack of space.</strong> Tooltips are useful as a last resort for space-constrained\nUI. Explore other options for keeping content visible without a tooltip.\n\n### When to consider something else\n\n- <strong>Critical information.</strong> Don&apos;t hide information necessary for completing\na task behind an tooltip interaction.\n- <strong>Lengthy descriptions.</strong> Tooltips are microcopy, and should be brief.\nDon&apos;t use a tooltip if you need a lot of text.\n- <strong>Redundant content.</strong> Don&apos;t use a tooltip when its content is repetitive\nor if usability is obvious.\n- <strong>Sufficient space.</strong> If content can fit outside a tooltip, don&apos;t use a\ntooltip.\n\n### Usability guidance\n\n- <strong>Use affordances.</strong> A hidden tooltip is unusable. Use tooltips only on\nelements that appear interactive, like buttons or links.\n- <strong>Avoid collisions.</strong> Be careful not introduce conflicting hover or focus\nevents.\n- <strong>Use consistently.</strong> If using tooltips in one context, use in all similar\ncontexts.\n- <strong>Don&apos;t block content.</strong> Use the <code>data-position</code> attribute to\nprevent the tooltip from covering other page elements.\n\n-------\n\nThis documentation is heavily inspired by the [U.S Web Design System (USWDS)](https://designsystem.digital.gov/components/tooltip/#package). We use USWDS as trusted source of truth for accessibility and usability best practices.\n\n## Component Properties\n"
17
+ }
18
+ }
19
+ }
13
20
  };
14
- exports["default"] = _default;
15
- var Default = function Default() {
16
- return (0, _jsxRuntime.jsxs)(_.Flex, {
17
- sx: {
18
- alignItems: 'center'
19
- },
21
+ var Basic = exports.Basic = function Basic() {
22
+ return (0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
20
23
  children: [(0, _jsxRuntime.jsx)(_.Heading, {
21
- sx: {
22
- mb: 0,
23
- mr: 2
24
- },
25
- children: "My Section Heading"
24
+ variant: "h2",
25
+ children: "Basic Usage"
26
+ }), (0, _jsxRuntime.jsxs)(_.Text, {
27
+ children: ["Pass a trigger and title, the trigger component will be cloned and injected with a", ' ', (0, _jsxRuntime.jsx)("code", {
28
+ children: "[vip-tooltip]"
29
+ }), " HTML attribute."]
30
+ }), (0, _jsxRuntime.jsx)(_.Tooltip, {
31
+ trigger: (0, _jsxRuntime.jsx)(_.Button, {
32
+ sx: {
33
+ mr: 3
34
+ },
35
+ children: "Button with top tooltip"
36
+ }),
37
+ title: "On the top",
38
+ position: "top"
39
+ }), (0, _jsxRuntime.jsx)(_.Tooltip, {
40
+ trigger: (0, _jsxRuntime.jsx)(_.Button, {
41
+ sx: {
42
+ mr: 3
43
+ },
44
+ children: "Button with bottom tooltip"
45
+ }),
46
+ title: "On the Bottom",
47
+ position: "bottom"
26
48
  }), (0, _jsxRuntime.jsx)(_.Tooltip, {
27
- children: (0, _jsxRuntime.jsxs)(_.Text, {
49
+ trigger: (0, _jsxRuntime.jsx)(_.Button, {
28
50
  sx: {
29
- fontSize: 1,
30
- color: 'text'
51
+ mr: 3
31
52
  },
32
- children: ["This is a tooltip that can be used to describe various pieces of functionality.", (0, _jsxRuntime.jsx)("br", {}), (0, _jsxRuntime.jsx)(_.Link, {
33
- children: "Find out more \u2192"
53
+ children: "Button with left tooltip"
54
+ }),
55
+ title: "On the Left",
56
+ position: "left"
57
+ }), (0, _jsxRuntime.jsx)(_.Tooltip, {
58
+ trigger: (0, _jsxRuntime.jsx)(_.Button, {
59
+ children: "Button with right tooltip"
60
+ }),
61
+ title: "On the Right",
62
+ position: "right"
63
+ })]
64
+ });
65
+ };
66
+ var Container = exports.Container = function Container() {
67
+ return (0, _jsxRuntime.jsxs)("div", {
68
+ children: [(0, _jsxRuntime.jsx)(_.Heading, {
69
+ variant: "h2",
70
+ children: "Container Usage"
71
+ }), (0, _jsxRuntime.jsxs)(_.Text, {
72
+ children: ["You can also wrap a component with the ", (0, _jsxRuntime.jsx)("code", {
73
+ children: "Tooltip"
74
+ }), " component. To use tooltips you can simply pass ", (0, _jsxRuntime.jsx)("code", {
75
+ children: "data-vip-tooltip"
76
+ }), " as an HTML attribute to your component."]
77
+ }), (0, _jsxRuntime.jsx)("div", {
78
+ sx: {
79
+ backgroundColor: 'red'
80
+ },
81
+ children: (0, _jsxRuntime.jsxs)(_.Tooltip, {
82
+ children: [(0, _jsxRuntime.jsx)(_.Button, {
83
+ "data-vip-tooltip-position": "top",
84
+ "data-vip-tooltip": "Test test",
85
+ sx: {
86
+ ml: 3
87
+ },
88
+ children: "This is another way"
89
+ }), (0, _jsxRuntime.jsx)("br", {}), (0, _jsxRuntime.jsx)("br", {}), (0, _jsxRuntime.jsx)("br", {}), (0, _jsxRuntime.jsx)(_.Link, {
90
+ href: "http://google.com",
91
+ "data-vip-tooltip-position": "right",
92
+ "data-vip-tooltip": "is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500",
93
+ sx: {
94
+ ml: 3
95
+ },
96
+ children: "Use with links too"
34
97
  })]
35
98
  })
36
99
  })]
37
100
  });
38
- };
39
- exports.Default = Default;
101
+ };
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Internal dependencies
3
+ */
4
+ import { Tooltip } from './Tooltip';
5
+ export { Tooltip };
@@ -0,0 +1,2 @@
1
+ export const Wizard: React.ForwardRefExoticComponent<React.RefAttributes<any>>;
2
+ import React from 'react';
@@ -1,112 +1,103 @@
1
- "use strict";
2
-
3
- exports.__esModule = true;
4
- exports.Wizard = void 0;
5
- var _react = _interopRequireWildcard(require("react"));
6
- var _propTypes = _interopRequireDefault(require("prop-types"));
7
- var _classnames = _interopRequireDefault(require("classnames"));
8
- var _md = require("react-icons/md");
9
- var _ = require("..");
10
- var _jsxRuntime = require("theme-ui/jsx-runtime");
11
- var _excluded = ["steps", "activeStep", "variant", "completed", "skipped", "className", "titleAutofocus"];
12
1
  /** @jsxImportSource theme-ui */
2
+
13
3
  /**
14
4
  * External dependencies
15
5
  */
6
+ import React, { useLayoutEffect, useState } from 'react';
7
+ import PropTypes from 'prop-types';
8
+ import classNames from 'classnames';
9
+ import { MdArrowForward } from 'react-icons/md';
10
+
16
11
  /**
17
12
  * Internal dependencies
18
13
  */
19
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
20
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
21
- 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; }
22
- function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
23
- function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
24
- var Wizard = /*#__PURE__*/_react["default"].forwardRef(function (_ref, forwardRef) {
25
- var steps = _ref.steps,
26
- activeStep = _ref.activeStep,
27
- variant = _ref.variant,
28
- _ref$completed = _ref.completed,
29
- completed = _ref$completed === void 0 ? [] : _ref$completed,
30
- _ref$skipped = _ref.skipped,
31
- skipped = _ref$skipped === void 0 ? [] : _ref$skipped,
32
- _ref$className = _ref.className,
33
- className = _ref$className === void 0 ? null : _ref$className,
34
- _ref$titleAutofocus = _ref.titleAutofocus,
35
- titleAutofocus = _ref$titleAutofocus === void 0 ? false : _ref$titleAutofocus,
36
- props = _objectWithoutPropertiesLoose(_ref, _excluded);
37
- var _useState = (0, _react.useState)(false),
38
- didMount = _useState[0],
39
- setDidMount = _useState[1];
40
- var _useState2 = (0, _react.useState)(activeStep),
41
- initialStep = _useState2[0];
42
- // didMount helps us to track the initial render, so we can focus the title only subsequent renders
43
- // to avoid stealing the focus from the page we're in.
44
- (0, _react.useLayoutEffect)(function () {
45
- if (!didMount && activeStep !== initialStep) {
46
- setDidMount(true);
47
- }
48
- }, [initialStep, activeStep, didMount, setDidMount]);
49
- return (0, _jsxRuntime.jsx)(_.Box, {
50
- className: (0, _classnames["default"])('vip-wizard-component', className),
51
- ref: forwardRef,
52
- children: variant === 'horizontal' ? (0, _jsxRuntime.jsxs)(_.Box, {
53
- children: [(0, _jsxRuntime.jsx)(_.Flex, _extends({
54
- sx: {
55
- flex: '0 0 auto'
56
- }
57
- }, props, {
58
- children: steps.map(function (_ref2, index) {
59
- var title = _ref2.title,
60
- subTitle = _ref2.subTitle,
61
- titleVariant = _ref2.titleVariant;
62
- return (0, _jsxRuntime.jsxs)(_react["default"].Fragment, {
63
- children: [(0, _jsxRuntime.jsx)(_.WizardStepHorizontal, {
64
- active: index === activeStep,
65
- order: index + 1,
66
- subTitle: subTitle,
67
- title: title,
68
- titleVariant: titleVariant
69
- }), index < steps.length - 1 && (0, _jsxRuntime.jsx)(_md.MdArrowForward, {
70
- sx: {
71
- mx: 2,
72
- color: 'gray.80'
73
- }
74
- })]
75
- }, index);
76
- })
77
- })), steps[activeStep].children]
78
- }) : steps.map(function (_ref3, index) {
79
- var title = _ref3.title,
80
- subTitle = _ref3.subTitle,
81
- children = _ref3.children,
82
- titleVariant = _ref3.titleVariant,
83
- summary = _ref3.summary,
84
- onChange = _ref3.onChange;
85
- return (0, _jsxRuntime.jsx)(_.WizardStep, {
86
- active: index === activeStep,
87
- complete: completed.includes(index),
88
- skipped: skipped.includes(index),
89
- order: index + 1,
90
- totalSteps: steps.length,
91
- subTitle: subTitle,
92
- title: title,
93
- titleVariant: titleVariant,
94
- summary: summary,
95
- onChange: onChange,
96
- shouldFocusTitle: titleAutofocus && didMount,
97
- children: children
98
- }, index);
99
- })
100
- });
101
- });
102
- exports.Wizard = Wizard;
14
+ import { Box, WizardStep, Flex, WizardStepHorizontal } from '..';
15
+
16
+ const Wizard = React.forwardRef(
17
+ (
18
+ {
19
+ steps,
20
+ activeStep,
21
+ variant,
22
+ completed = [],
23
+ skipped = [],
24
+ className = null,
25
+ titleAutofocus = false,
26
+ ...props
27
+ },
28
+ forwardRef
29
+ ) => {
30
+ const [ didMount, setDidMount ] = useState( false );
31
+ const [ initialStep ] = useState( activeStep );
32
+ // didMount helps us to track the initial render, so we can focus the title only subsequent renders
33
+ // to avoid stealing the focus from the page we're in.
34
+ useLayoutEffect( () => {
35
+ if ( ! didMount && activeStep !== initialStep ) {
36
+ setDidMount( true );
37
+ }
38
+ }, [ initialStep, activeStep, didMount, setDidMount ] );
39
+ return (
40
+ <Box className={ classNames( 'vip-wizard-component', className ) } ref={ forwardRef }>
41
+ { variant === 'horizontal' ? (
42
+ <Box>
43
+ <Flex
44
+ sx={ {
45
+ flex: '0 0 auto',
46
+ } }
47
+ { ...props }
48
+ >
49
+ { steps.map( ( { title, subTitle, titleVariant }, index ) => (
50
+ <React.Fragment key={ index }>
51
+ <WizardStepHorizontal
52
+ active={ index === activeStep }
53
+ order={ index + 1 }
54
+ subTitle={ subTitle }
55
+ title={ title }
56
+ titleVariant={ titleVariant }
57
+ />
58
+ { index < steps.length - 1 && (
59
+ <MdArrowForward sx={ { mx: 2, color: 'gray.80' } } />
60
+ ) }
61
+ </React.Fragment>
62
+ ) ) }
63
+ </Flex>
64
+ { steps[ activeStep ].children }
65
+ </Box>
66
+ ) : (
67
+ steps.map( ( { title, subTitle, children, titleVariant, summary, onChange }, index ) => (
68
+ <WizardStep
69
+ active={ index === activeStep }
70
+ complete={ completed.includes( index ) }
71
+ skipped={ skipped.includes( index ) }
72
+ key={ index }
73
+ order={ index + 1 }
74
+ totalSteps={ steps.length }
75
+ subTitle={ subTitle }
76
+ title={ title }
77
+ titleVariant={ titleVariant }
78
+ summary={ summary }
79
+ onChange={ onChange }
80
+ shouldFocusTitle={ titleAutofocus && didMount }
81
+ >
82
+ { children }
83
+ </WizardStep>
84
+ ) )
85
+ ) }
86
+ </Box>
87
+ );
88
+ }
89
+ );
90
+
103
91
  Wizard.displayName = 'Wizard';
92
+
104
93
  Wizard.propTypes = {
105
- steps: _propTypes["default"].array,
106
- activeStep: _propTypes["default"].number,
107
- variant: _propTypes["default"].string,
108
- completed: _propTypes["default"].array,
109
- skipped: _propTypes["default"].array,
110
- className: _propTypes["default"].any,
111
- titleAutofocus: _propTypes["default"].bool
112
- };
94
+ steps: PropTypes.array,
95
+ activeStep: PropTypes.number,
96
+ variant: PropTypes.string,
97
+ completed: PropTypes.array,
98
+ skipped: PropTypes.array,
99
+ className: PropTypes.any,
100
+ titleAutofocus: PropTypes.bool,
101
+ };
102
+
103
+ export { Wizard };
@@ -0,0 +1,9 @@
1
+ declare namespace _default {
2
+ export let title: string;
3
+ export { Wizard as component };
4
+ }
5
+ export default _default;
6
+ export function Default(): React.JSX.Element;
7
+ export function WithTitleAutoFocus(): React.JSX.Element;
8
+ import { Wizard } from '..';
9
+ import React from 'react';
@@ -0,0 +1,145 @@
1
+ /** @jsxImportSource theme-ui */
2
+
3
+ /**
4
+ * External dependencies
5
+ */
6
+ import React from 'react';
7
+
8
+ /**
9
+ * Internal dependencies
10
+ */
11
+ import { Wizard, Box, Label, Input, Button, Form } from '..';
12
+
13
+ export default {
14
+ title: 'Wizard',
15
+ component: Wizard,
16
+ };
17
+
18
+ const options = [
19
+ { value: 'chocolate', label: 'Chocolate' },
20
+ { value: 'strawberry', label: 'Strawberry' },
21
+ { value: 'vanilla', label: 'Vanilla' },
22
+ { value: 'coffee', label: 'Coffee' },
23
+ ];
24
+
25
+ export const Default = () => {
26
+ const steps = [
27
+ {
28
+ title: 'Choose Domain',
29
+ titleVariant: 'h2',
30
+ subTitle: 'You can bring a domain name you already own, or buy a new one.',
31
+ children: (
32
+ <Box>
33
+ <Label>Domain</Label>
34
+ <Input autoFocus placeholder="yourdomain.com" />
35
+ <Form.Autocomplete label="Autocomplete" options={ options } />
36
+ <Button sx={ { mt: 3 } }>Continue</Button>
37
+ </Box>
38
+ ),
39
+ },
40
+ {
41
+ title: 'Configure DNS',
42
+ titleVariant: 'h2',
43
+ },
44
+ {
45
+ title: 'Configure Certificate',
46
+ titleVariant: 'h2',
47
+ },
48
+ {
49
+ title: 'Verify Domain',
50
+ titleVariant: 'h2',
51
+ },
52
+ ];
53
+ return (
54
+ <React.Fragment>
55
+ <Box mt={ 4 }>
56
+ <Wizard activeStep={ 0 } steps={ steps } completed={ [ 1 ] } className="vip-wizard-xyz" />
57
+ </Box>
58
+ </React.Fragment>
59
+ );
60
+ };
61
+
62
+ export const WithTitleAutoFocus = () => {
63
+ const [ activeStep, setActiveStep ] = React.useState( 0 );
64
+ const [ autoFocus, setAutoFocus ] = React.useState( true );
65
+ const steps = [
66
+ {
67
+ title: 'Choose Domain',
68
+ titleVariant: 'h2',
69
+ summary: [
70
+ {
71
+ label: 'Demo Label',
72
+ value: 'Demo value',
73
+ },
74
+ ],
75
+ onChange: () => setActiveStep( 0 ),
76
+ children: (
77
+ <Box>
78
+ <Label>Domain</Label>
79
+ <Input placeholder="yourdomain.com" />
80
+ <Button sx={ { mt: 3 } } onClick={ () => setActiveStep( 1 ) }>
81
+ Continue
82
+ </Button>
83
+ </Box>
84
+ ),
85
+ },
86
+ {
87
+ title: 'Configure DNS',
88
+ titleVariant: 'h2',
89
+ onChange: () => setActiveStep( 1 ),
90
+ children: (
91
+ <Box>
92
+ <Label>DNS</Label>
93
+ <Button sx={ { mt: 3 } } onClick={ () => setActiveStep( 0 ) }>
94
+ back
95
+ </Button>
96
+ </Box>
97
+ ),
98
+ },
99
+
100
+ {
101
+ title: 'Certificate',
102
+ titleVariant: 'h2',
103
+ summary: [
104
+ {
105
+ label: 'Certificate status',
106
+ value: 'Not found',
107
+ },
108
+ ],
109
+ onChange: () => setActiveStep( 2 ),
110
+ children: (
111
+ <Box>
112
+ <Label>Certificate validation</Label>
113
+ <Button sx={ { mt: 3 } }>Check certificate</Button>
114
+ </Box>
115
+ ),
116
+ },
117
+ ];
118
+ return (
119
+ <React.Fragment>
120
+ <Box mt={ 4 }>
121
+ <Wizard
122
+ completed={ [ 0, 1 ] }
123
+ skipped={ [ 2 ] }
124
+ activeStep={ activeStep }
125
+ steps={ steps }
126
+ titleAutofocus={ autoFocus }
127
+ className="vip-wizard-xyz"
128
+ />
129
+ </Box>
130
+ <Box mt={ 4 }>
131
+ <Form.Select
132
+ id="wizard-autofocus"
133
+ forLabel="wizard-autofocus"
134
+ label="Autofocus status"
135
+ value={ autoFocus }
136
+ onChange={ e => setAutoFocus( e.value ) }
137
+ options={ [
138
+ { value: true, label: 'On' },
139
+ { value: false, label: 'Off' },
140
+ ] }
141
+ />
142
+ </Box>
143
+ </React.Fragment>
144
+ );
145
+ };
@@ -0,0 +1,2 @@
1
+ export const WizardStep: React.ForwardRefExoticComponent<React.RefAttributes<any>>;
2
+ import React from 'react';