@pingux/astro 2.9.2 → 2.13.0-alpha.11

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 (434) hide show
  1. package/README.md +6 -2
  2. package/lib/README.md +6 -2
  3. package/lib/cjs/components/AccordionGridGroup/AccordionGridGroup.mdx +40 -0
  4. package/lib/cjs/components/AccordionGridGroup/AccordionGridGroup.test.js +2 -2
  5. package/lib/cjs/components/AccordionGroup/Accordion.styles.js +1 -2
  6. package/lib/cjs/components/AccordionGroup/AccordionGroup.js +4 -5
  7. package/lib/cjs/components/AccordionGroup/AccordionGroup.mdx +41 -0
  8. package/lib/cjs/components/ArrayField/ArrayField.mdx +34 -0
  9. package/lib/cjs/components/AstroWrapper/AstroWrapper.mdx +16 -0
  10. package/lib/cjs/components/Avatar/Avatar.mdx +14 -0
  11. package/lib/cjs/components/Badge/Badge.mdx +24 -0
  12. package/lib/cjs/components/Box/Box.d.ts +4 -0
  13. package/lib/cjs/components/Box/Box.js +4 -19
  14. package/lib/cjs/components/Box/Box.mdx +23 -0
  15. package/lib/cjs/components/Box/Box.styles.d.ts +6 -0
  16. package/lib/cjs/components/Box/Box.test.d.ts +1 -0
  17. package/lib/cjs/components/Box/Box.test.js +2 -6
  18. package/lib/cjs/components/Box/index.d.ts +1 -0
  19. package/lib/cjs/components/Bracket/Bracket.mdx +17 -0
  20. package/lib/cjs/components/Breadcrumbs/Breadcrumbs.mdx +40 -0
  21. package/lib/cjs/components/Button/Button.mdx +40 -0
  22. package/lib/cjs/components/Button/Button.stories.js +30 -5
  23. package/lib/cjs/components/Button/Buttons.styles.js +25 -7
  24. package/lib/cjs/components/Calendar/Calendar.mdx +39 -0
  25. package/lib/cjs/components/Calendar/Calendar.test.js +2 -2
  26. package/lib/cjs/components/Calendar/CalendarCell.js +2 -3
  27. package/lib/cjs/components/Calendar/CalendarGrid.js +1 -3
  28. package/lib/cjs/components/Callout/Callout.mdx +28 -0
  29. package/lib/cjs/components/Card/Card.mdx +32 -0
  30. package/lib/cjs/components/Checkbox/Checkbox.js +1 -2
  31. package/lib/cjs/components/Checkbox/CheckboxBase.js +1 -2
  32. package/lib/cjs/components/CheckboxField/CheckboxField.mdx +42 -0
  33. package/lib/cjs/components/CodeView/CodeView.mdx +23 -0
  34. package/lib/cjs/components/CodeView/CodeView.test.js +1 -1
  35. package/lib/cjs/components/CollapsiblePanel/CollapsiblePanel.mdx +29 -0
  36. package/lib/cjs/components/CollapsiblePanelContainer/CollapsiblePanelBadge.js +0 -1
  37. package/lib/cjs/components/CollapsiblePanelContainer/CollapsiblePanelContainer.js +2 -3
  38. package/lib/cjs/components/ColorField/ColorField.mdx +38 -0
  39. package/lib/cjs/components/ComboBoxField/ComboBoxField.mdx +66 -0
  40. package/lib/cjs/components/ComboBoxField/ComboBoxField.stories.js +1 -1
  41. package/lib/cjs/components/ComboBoxField/ComboBoxField.test.js +2 -2
  42. package/lib/cjs/components/CopyText/CopyText.mdx +23 -0
  43. package/lib/cjs/components/CopyText/CopyText.test.js +1 -1
  44. package/lib/cjs/components/DataTable/DataTable.mdx +54 -0
  45. package/lib/cjs/components/DataTable/DataTable.stories.js +1 -1
  46. package/lib/cjs/components/DataTable/DataTable.test.js +2 -2
  47. package/lib/cjs/components/DataTable/DataTableVirtualizer.js +2 -3
  48. package/lib/cjs/components/DatePicker/DateField.js +4 -5
  49. package/lib/cjs/components/DatePicker/DatePicker.js +4 -6
  50. package/lib/cjs/components/DatePicker/DatePicker.mdx +49 -0
  51. package/lib/cjs/components/DatePicker/DatePicker.test.js +2 -2
  52. package/lib/cjs/components/DatePicker/DateSegment.js +1 -2
  53. package/lib/cjs/components/EnvironmentBreadcrumb/EnvironmentBreadcrumb.js +3 -3
  54. package/lib/cjs/components/EnvironmentBreadcrumb/EnvironmentBreadcrumb.mdx +36 -0
  55. package/lib/cjs/components/EnvironmentBreadcrumb/EnvironmentBreadcrumb.stories.js +29 -45
  56. package/lib/cjs/components/EnvironmentBreadcrumb/EnvironmentBreadcrumb.test.js +1 -1
  57. package/lib/cjs/components/FieldHelperText/FieldHelperText.js +4 -4
  58. package/lib/cjs/components/FileInputField/FileInputField.mdx +33 -0
  59. package/lib/cjs/components/HelpHint/HelpHint.js +145 -27
  60. package/lib/cjs/components/HelpHint/HelpHint.mdx +32 -0
  61. package/lib/cjs/components/HelpHint/HelpHint.stories.js +40 -7
  62. package/lib/cjs/components/HelpHint/HelpHint.styles.js +9 -1
  63. package/lib/cjs/components/HelpHint/HelpHint.test.js +213 -30
  64. package/lib/cjs/components/Icon/Icon.d.ts +4 -0
  65. package/lib/cjs/components/Icon/Icon.js +4 -27
  66. package/lib/cjs/components/Icon/Icon.mdx +49 -0
  67. package/lib/cjs/components/Icon/Icon.stories.d.ts +8 -0
  68. package/lib/cjs/components/Icon/Icon.test.d.ts +1 -0
  69. package/lib/cjs/components/Icon/index.d.ts +1 -0
  70. package/lib/cjs/components/IconBadge/IconBadge.mdx +14 -0
  71. package/lib/cjs/components/IconButton/IconButton.mdx +33 -0
  72. package/lib/cjs/components/IconButtonToggle/IconButtonToggle.mdx +31 -0
  73. package/lib/cjs/components/Image/Image.mdx +28 -0
  74. package/lib/cjs/components/ImageUploadField/ImageUploadField.mdx +38 -0
  75. package/lib/cjs/components/ImageUploadField/ImageUploadField.stories.js +1 -1
  76. package/lib/cjs/components/ImageUploadField/ImageUploadField.test.js +2 -2
  77. package/lib/cjs/components/Input/Input.js +2 -3
  78. package/lib/cjs/components/Label/Label.styles.js +1 -1
  79. package/lib/cjs/components/Link/Link.mdx +27 -0
  80. package/lib/cjs/components/Link/Link.styles.js +10 -0
  81. package/lib/cjs/components/LinkSelectField/LinkSelectField.mdx +47 -0
  82. package/lib/cjs/components/LinkSelectField/LinkSelectField.stories.js +1 -1
  83. package/lib/cjs/components/LinkSelectField/LinkSelectField.test.js +2 -2
  84. package/lib/cjs/components/ListBox/ListBox.test.js +2 -2
  85. package/lib/cjs/components/ListItem/ListItem.mdx +21 -0
  86. package/lib/cjs/components/ListView/ListView.mdx +44 -0
  87. package/lib/cjs/components/ListView/ListView.stories.js +95 -49
  88. package/lib/cjs/components/ListView/ListView.test.js +2 -2
  89. package/lib/cjs/components/Loader/Loader.d.ts +4 -0
  90. package/lib/cjs/components/Loader/Loader.js +0 -14
  91. package/lib/cjs/components/Loader/Loader.mdx +29 -0
  92. package/lib/cjs/components/Loader/Loader.styles.d.ts +53 -0
  93. package/lib/cjs/components/Loader/Loader.test.d.ts +1 -0
  94. package/lib/cjs/components/Loader/index.d.ts +1 -0
  95. package/lib/cjs/components/Menu/Menu.mdx +43 -0
  96. package/lib/cjs/components/MenuItem/MenuItem.js +2 -3
  97. package/lib/cjs/components/Messages/Messages.mdx +35 -0
  98. package/lib/cjs/components/Modal/Modal.mdx +59 -0
  99. package/lib/cjs/components/Modal/tests/Modal.integration.test.js +1 -2
  100. package/lib/cjs/components/MultivaluesField/MultivaluesField.js +43 -9
  101. package/lib/cjs/components/MultivaluesField/MultivaluesField.mdx +44 -0
  102. package/lib/cjs/components/MultivaluesField/MultivaluesField.test.js +3 -3
  103. package/lib/cjs/components/NavBar/NavBar.mdx +42 -0
  104. package/lib/cjs/components/NavBarSection/NavBarSection.js +2 -3
  105. package/lib/cjs/components/NumberField/NumberField.mdx +39 -0
  106. package/lib/cjs/components/OverlayPanel/OverlayPanel.mdx +39 -0
  107. package/lib/cjs/components/PasswordField/PasswordField.mdx +33 -0
  108. package/lib/cjs/components/PasswordField/PasswordField.test.js +2 -3
  109. package/lib/cjs/components/PopoverContainer/PopoverContainer.d.ts +9 -0
  110. package/lib/cjs/components/PopoverContainer/PopoverContainer.js +10 -42
  111. package/lib/cjs/components/PopoverContainer/index.d.ts +2 -0
  112. package/lib/cjs/components/PopoverMenu/PopoverMenu.mdx +53 -0
  113. package/lib/cjs/components/Radio/Radio.js +1 -2
  114. package/lib/cjs/components/RadioGroupField/RadioGroupField.mdx +41 -0
  115. package/lib/cjs/components/RadioGroupField/RadioGroupField.test.js +2 -2
  116. package/lib/cjs/components/RequirementsList/RequirementsList.mdx +17 -0
  117. package/lib/cjs/components/RockerButtonGroup/RockerButtonGroup.mdx +36 -0
  118. package/lib/cjs/components/ScrollBox/ScrollBox.mdx +17 -0
  119. package/lib/cjs/components/SearchField/SearchField.mdx +33 -0
  120. package/lib/cjs/components/SelectField/Select.styles.js +1 -1
  121. package/lib/cjs/components/SelectField/SelectField.mdx +46 -0
  122. package/lib/cjs/components/SelectField/SelectField.stories.js +1 -1
  123. package/lib/cjs/components/SelectFieldBase/SelectFieldBase.js +4 -4
  124. package/lib/cjs/components/SelectFieldBase/SelectFieldBase.test.js +2 -2
  125. package/lib/cjs/components/Separator/Separator.mdx +19 -0
  126. package/lib/cjs/components/Stepper/Stepper.mdx +41 -0
  127. package/lib/cjs/components/Stepper/Stepper.styles.js +1 -1
  128. package/lib/cjs/components/Stepper/Stepper.test.js +2 -3
  129. package/lib/cjs/components/Switch/Switch.js +1 -2
  130. package/lib/cjs/components/SwitchField/SwitchField.js +1 -0
  131. package/lib/cjs/components/SwitchField/SwitchField.mdx +36 -0
  132. package/lib/cjs/components/Tab/Tab.js +2 -3
  133. package/lib/cjs/components/TabPicker/TabPicker.js +1 -1
  134. package/lib/cjs/components/Table/Table.mdx +30 -0
  135. package/lib/cjs/components/TableBody/TableBody.js +0 -1
  136. package/lib/cjs/components/TableCaption/TableCaption.js +0 -1
  137. package/lib/cjs/components/TableCell/TableCell.d.ts +12 -0
  138. package/lib/cjs/components/TableCell/TableCell.js +0 -6
  139. package/lib/cjs/components/TableCell/TableCell.test.d.ts +1 -0
  140. package/lib/cjs/components/TableCell/index.d.ts +1 -0
  141. package/lib/cjs/components/TableHead/TableHead.js +0 -1
  142. package/lib/cjs/components/TableRow/TableRow.js +0 -1
  143. package/lib/cjs/components/Tabs/Tabs.mdx +40 -0
  144. package/lib/cjs/components/Tabs/Tabs.test.js +3 -4
  145. package/lib/cjs/components/Text/Text.d.ts +4 -0
  146. package/lib/cjs/components/Text/Text.js +3 -7
  147. package/lib/cjs/components/Text/Text.mdx +13 -0
  148. package/lib/cjs/components/Text/Text.stories.d.ts +6 -0
  149. package/lib/cjs/components/Text/Text.styles.d.ts +286 -0
  150. package/lib/cjs/components/Text/Text.test.d.ts +1 -0
  151. package/lib/cjs/components/Text/index.d.ts +1 -0
  152. package/lib/cjs/components/TextArea/TextArea.js +1 -3
  153. package/lib/cjs/components/TextAreaField/TextAreaField.mdx +34 -0
  154. package/lib/cjs/components/TextField/TextField.js +1 -1
  155. package/lib/cjs/components/TextField/TextField.mdx +34 -0
  156. package/lib/cjs/components/TimeZonePicker/TimeZonePicker.mdx +18 -0
  157. package/lib/cjs/components/TooltipTrigger/Tooltip.styles.js +2 -1
  158. package/lib/cjs/components/TooltipTrigger/TooltipTrigger.js +2 -0
  159. package/lib/cjs/components/TooltipTrigger/TooltipTrigger.mdx +23 -0
  160. package/lib/cjs/components/TooltipTrigger/TooltipTrigger.test.js +47 -1
  161. package/lib/cjs/docs/Props.stories.mdx +35 -0
  162. package/lib/cjs/docs/Welcome.stories.mdx +149 -0
  163. package/lib/cjs/docs/hooks/useDebounce.stories.mdx +59 -0
  164. package/lib/cjs/docs/hooks/useModalState.stories.mdx +83 -0
  165. package/lib/cjs/docs/hooks/useOverlayPanelState.stories.mdx +84 -0
  166. package/lib/cjs/docs/theme/AstroNanoTheme.stories.mdx +174 -0
  167. package/lib/cjs/docs/theme/AstroTheme.stories.mdx +20 -0
  168. package/lib/cjs/docs/theme/CustomThemes.stories.mdx +70 -0
  169. package/lib/cjs/docs/theme/StylingGuideline.stories.mdx +116 -0
  170. package/lib/cjs/docs/utils/messagesReducer.stories.mdx +64 -0
  171. package/lib/cjs/experimental/EditButton/EditButton.js +63 -0
  172. package/lib/cjs/experimental/EditButton/EditButton.mdx +9 -0
  173. package/lib/cjs/experimental/EditButton/EditButton.stories.js +91 -0
  174. package/lib/cjs/experimental/EditButton/EditButton.test.js +71 -0
  175. package/lib/cjs/experimental/EditButton/index.js +14 -0
  176. package/lib/cjs/experimental/ListView/ListView.mdx +47 -0
  177. package/lib/cjs/experimental/ListView/ListView.stories.js +742 -0
  178. package/lib/cjs/experimental/ListViewItem/ListViewItem.js +23 -5
  179. package/lib/cjs/experimental/ListViewItem/ListViewItem.mdx +36 -0
  180. package/lib/cjs/experimental/ListViewItem/ListViewItem.stories.js +31 -7
  181. package/lib/cjs/experimental/ListViewItem/ListViewItem.test.js +51 -7
  182. package/lib/cjs/experimental/ListViewItem/controls/ListViewItemEditButton.js +2 -7
  183. package/lib/cjs/experimental/ListViewItem/controls/ListViewItemEditButton.stories.js +4 -1
  184. package/lib/cjs/experimental/ListViewItem/controls/ListViewItemMenu.js +0 -1
  185. package/lib/cjs/experimental/ListViewItem/controls/ListViewItemMenu.test.js +2 -2
  186. package/lib/cjs/experimental/ListViewItem/controls/ListViewItemSwitchField.js +2 -3
  187. package/lib/cjs/experimental/ListViewItem/listViewItemAttributes.js +28 -13
  188. package/lib/cjs/experimental/PanelHeader/PanelHeader.js +88 -0
  189. package/lib/cjs/experimental/PanelHeader/PanelHeader.mdx +19 -0
  190. package/lib/cjs/experimental/PanelHeader/PanelHeader.stories.js +71 -0
  191. package/lib/cjs/experimental/PanelHeader/PanelHeader.styles.js +38 -0
  192. package/lib/cjs/experimental/PanelHeader/PanelHeader.test.js +46 -0
  193. package/lib/cjs/experimental/PanelHeader/controls/PanelHeaderCloseButton.js +32 -0
  194. package/lib/cjs/experimental/PanelHeader/controls/PanelHeaderCloseButton.stories.js +31 -0
  195. package/lib/cjs/experimental/PanelHeader/controls/PanelHeaderCloseButton.test.js +25 -0
  196. package/lib/cjs/experimental/PanelHeader/controls/PanelHeaderMenu.js +25 -0
  197. package/lib/cjs/experimental/PanelHeader/controls/PanelHeaderMenu.stories.js +36 -0
  198. package/lib/cjs/experimental/PanelHeader/controls/PanelHeaderMenu.test.js +58 -0
  199. package/lib/cjs/experimental/PanelHeader/controls/PanelHeaderSwitchField.js +25 -0
  200. package/lib/cjs/experimental/PanelHeader/controls/PanelHeaderSwitchField.stories.js +41 -0
  201. package/lib/cjs/experimental/PanelHeader/controls/PanelHeaderSwitchField.test.js +25 -0
  202. package/lib/cjs/experimental/PanelHeader/index.js +14 -0
  203. package/lib/cjs/experimental/README.stories.mdx +7 -0
  204. package/lib/cjs/experimental/SaveBar/SaveBar.mdx +13 -0
  205. package/lib/cjs/experimental/recipes/ListAndPanel.stories.js +1 -1
  206. package/lib/cjs/hooks/useComponentToggle/useComponentToggle.test.js +2 -2
  207. package/lib/cjs/hooks/useCopyToClipboard/useCopyToClipboard.js +2 -2
  208. package/lib/cjs/hooks/useCopyToClipboard/useCopyToClipboard.test.js +1 -1
  209. package/lib/cjs/hooks/useOverlappingMenuHoverState/useOverlappingMenuHoverState.test.js +2 -2
  210. package/lib/cjs/hooks/usePropWarning/usePropWarning.js +1 -1
  211. package/lib/cjs/hooks/useStatusClasses/useStatusClasses.js +2 -2
  212. package/lib/cjs/hooks/useTShirtSize/useTShirtSize.js +1 -1
  213. package/lib/cjs/index.d.ts +173 -0
  214. package/lib/cjs/index.js +53 -1
  215. package/lib/cjs/recipes/ApplicationSearchDropdown.stories.hidden.js +1 -1
  216. package/lib/cjs/recipes/{AttributesAndPingOneMapping.stories.js → AttributeMapping.stories.js} +405 -132
  217. package/lib/cjs/recipes/Slider.stories.js +1 -1
  218. package/lib/cjs/styles/colors.js +1 -1
  219. package/lib/cjs/styles/forms/index.js +1 -1
  220. package/lib/cjs/styles/variants/README.md +98 -0
  221. package/lib/cjs/styles/variants/variants.js +2 -0
  222. package/lib/cjs/types/box.d.ts +10 -0
  223. package/lib/cjs/types/box.js +6 -0
  224. package/lib/cjs/types/icon.d.ts +34 -0
  225. package/lib/cjs/types/icon.js +6 -0
  226. package/lib/cjs/types/index.d.ts +7 -0
  227. package/lib/cjs/types/index.js +86 -0
  228. package/lib/cjs/types/loader.d.ts +14 -0
  229. package/lib/cjs/types/loader.js +6 -0
  230. package/lib/cjs/types/mdx.d.js +1 -0
  231. package/lib/cjs/types/popoverContainer.d.ts +23 -0
  232. package/lib/cjs/types/popoverContainer.js +6 -0
  233. package/lib/cjs/types/shared/dom.d.ts +9 -0
  234. package/lib/cjs/types/shared/dom.js +6 -0
  235. package/lib/cjs/types/shared/index.d.ts +3 -0
  236. package/lib/cjs/types/shared/index.js +42 -0
  237. package/lib/cjs/types/shared/style.d.ts +11 -0
  238. package/lib/cjs/types/shared/style.js +6 -0
  239. package/lib/cjs/types/shared/test.d.ts +3 -0
  240. package/lib/cjs/types/shared/test.js +6 -0
  241. package/lib/cjs/types/shared/utils.d.ts +1 -0
  242. package/lib/cjs/types/shared/utils.js +6 -0
  243. package/lib/cjs/types/tableCell.d.ts +5 -0
  244. package/lib/cjs/types/tableCell.js +6 -0
  245. package/lib/cjs/types/text.d.ts +3 -0
  246. package/lib/cjs/types/text.js +6 -0
  247. package/lib/cjs/utils/designUtils/figmaLinks.js +7 -1
  248. package/lib/cjs/utils/devUtils/constants/variants.js +1 -2
  249. package/lib/cjs/utils/testUtils/testAxe.js +2 -2
  250. package/lib/cjs/utils/testUtils/testWrapper.js +2 -0
  251. package/lib/components/AccordionGridGroup/AccordionGridGroup.mdx +40 -0
  252. package/lib/components/AccordionGridGroup/AccordionGridGroup.test.js +2 -2
  253. package/lib/components/AccordionGroup/Accordion.styles.js +1 -2
  254. package/lib/components/AccordionGroup/AccordionGroup.mdx +41 -0
  255. package/lib/components/ArrayField/ArrayField.mdx +34 -0
  256. package/lib/components/AstroWrapper/AstroWrapper.mdx +16 -0
  257. package/lib/components/Avatar/Avatar.mdx +14 -0
  258. package/lib/components/Badge/Badge.mdx +24 -0
  259. package/lib/components/Box/Box.js +4 -19
  260. package/lib/components/Box/Box.mdx +23 -0
  261. package/lib/components/Box/Box.test.js +2 -6
  262. package/lib/components/Bracket/Bracket.mdx +17 -0
  263. package/lib/components/Breadcrumbs/Breadcrumbs.mdx +40 -0
  264. package/lib/components/Button/Button.mdx +40 -0
  265. package/lib/components/Button/Button.stories.js +30 -5
  266. package/lib/components/Button/Buttons.styles.js +25 -7
  267. package/lib/components/Calendar/Calendar.mdx +39 -0
  268. package/lib/components/Calendar/Calendar.test.js +2 -2
  269. package/lib/components/Callout/Callout.mdx +28 -0
  270. package/lib/components/Card/Card.mdx +32 -0
  271. package/lib/components/CheckboxField/CheckboxField.mdx +42 -0
  272. package/lib/components/CodeView/CodeView.mdx +23 -0
  273. package/lib/components/CodeView/CodeView.test.js +1 -1
  274. package/lib/components/CollapsiblePanel/CollapsiblePanel.mdx +29 -0
  275. package/lib/components/ColorField/ColorField.mdx +38 -0
  276. package/lib/components/ComboBoxField/ComboBoxField.mdx +66 -0
  277. package/lib/components/ComboBoxField/ComboBoxField.stories.js +1 -1
  278. package/lib/components/ComboBoxField/ComboBoxField.test.js +2 -2
  279. package/lib/components/CopyText/CopyText.mdx +23 -0
  280. package/lib/components/CopyText/CopyText.test.js +1 -1
  281. package/lib/components/DataTable/DataTable.mdx +54 -0
  282. package/lib/components/DataTable/DataTable.stories.js +1 -1
  283. package/lib/components/DataTable/DataTable.test.js +1 -1
  284. package/lib/components/DatePicker/DatePicker.mdx +49 -0
  285. package/lib/components/DatePicker/DatePicker.test.js +2 -2
  286. package/lib/components/EnvironmentBreadcrumb/EnvironmentBreadcrumb.js +3 -3
  287. package/lib/components/EnvironmentBreadcrumb/EnvironmentBreadcrumb.mdx +36 -0
  288. package/lib/components/EnvironmentBreadcrumb/EnvironmentBreadcrumb.stories.js +29 -45
  289. package/lib/components/EnvironmentBreadcrumb/EnvironmentBreadcrumb.test.js +1 -1
  290. package/lib/components/FileInputField/FileInputField.mdx +33 -0
  291. package/lib/components/HelpHint/HelpHint.js +148 -30
  292. package/lib/components/HelpHint/HelpHint.mdx +32 -0
  293. package/lib/components/HelpHint/HelpHint.stories.js +37 -6
  294. package/lib/components/HelpHint/HelpHint.styles.js +9 -1
  295. package/lib/components/HelpHint/HelpHint.test.js +213 -30
  296. package/lib/components/Icon/Icon.js +2 -25
  297. package/lib/components/Icon/Icon.mdx +49 -0
  298. package/lib/components/IconBadge/IconBadge.mdx +14 -0
  299. package/lib/components/IconButton/IconButton.mdx +33 -0
  300. package/lib/components/IconButtonToggle/IconButtonToggle.mdx +31 -0
  301. package/lib/components/Image/Image.mdx +28 -0
  302. package/lib/components/ImageUploadField/ImageUploadField.mdx +38 -0
  303. package/lib/components/ImageUploadField/ImageUploadField.stories.js +1 -1
  304. package/lib/components/ImageUploadField/ImageUploadField.test.js +2 -2
  305. package/lib/components/Link/Link.mdx +27 -0
  306. package/lib/components/Link/Link.styles.js +10 -0
  307. package/lib/components/LinkSelectField/LinkSelectField.mdx +47 -0
  308. package/lib/components/LinkSelectField/LinkSelectField.stories.js +1 -1
  309. package/lib/components/LinkSelectField/LinkSelectField.test.js +2 -2
  310. package/lib/components/ListBox/ListBox.test.js +2 -2
  311. package/lib/components/ListItem/ListItem.mdx +21 -0
  312. package/lib/components/ListView/ListView.mdx +44 -0
  313. package/lib/components/ListView/ListView.stories.js +96 -50
  314. package/lib/components/ListView/ListView.test.js +2 -2
  315. package/lib/components/Loader/Loader.js +0 -14
  316. package/lib/components/Loader/Loader.mdx +29 -0
  317. package/lib/components/Menu/Menu.mdx +43 -0
  318. package/lib/components/Messages/Messages.mdx +35 -0
  319. package/lib/components/Modal/Modal.mdx +59 -0
  320. package/lib/components/MultivaluesField/MultivaluesField.js +43 -9
  321. package/lib/components/MultivaluesField/MultivaluesField.mdx +44 -0
  322. package/lib/components/MultivaluesField/MultivaluesField.test.js +3 -3
  323. package/lib/components/NavBar/NavBar.mdx +42 -0
  324. package/lib/components/NumberField/NumberField.mdx +39 -0
  325. package/lib/components/OverlayPanel/OverlayPanel.mdx +39 -0
  326. package/lib/components/PasswordField/PasswordField.mdx +33 -0
  327. package/lib/components/PasswordField/PasswordField.test.js +2 -2
  328. package/lib/components/PopoverContainer/PopoverContainer.js +7 -38
  329. package/lib/components/PopoverMenu/PopoverMenu.mdx +53 -0
  330. package/lib/components/RadioGroupField/RadioGroupField.mdx +41 -0
  331. package/lib/components/RadioGroupField/RadioGroupField.test.js +2 -2
  332. package/lib/components/RequirementsList/RequirementsList.mdx +17 -0
  333. package/lib/components/RockerButtonGroup/RockerButtonGroup.mdx +36 -0
  334. package/lib/components/ScrollBox/ScrollBox.mdx +17 -0
  335. package/lib/components/SearchField/SearchField.mdx +33 -0
  336. package/lib/components/SelectField/SelectField.mdx +46 -0
  337. package/lib/components/SelectField/SelectField.stories.js +1 -1
  338. package/lib/components/SelectFieldBase/SelectFieldBase.test.js +2 -2
  339. package/lib/components/Separator/Separator.mdx +19 -0
  340. package/lib/components/Stepper/Stepper.mdx +41 -0
  341. package/lib/components/Stepper/Stepper.test.js +2 -2
  342. package/lib/components/SwitchField/SwitchField.mdx +36 -0
  343. package/lib/components/Table/Table.mdx +30 -0
  344. package/lib/components/TableCell/TableCell.js +0 -5
  345. package/lib/components/Tabs/Tabs.mdx +40 -0
  346. package/lib/components/Tabs/Tabs.test.js +2 -2
  347. package/lib/components/Text/Text.js +3 -7
  348. package/lib/components/Text/Text.mdx +13 -0
  349. package/lib/components/TextAreaField/TextAreaField.mdx +34 -0
  350. package/lib/components/TextField/TextField.js +1 -1
  351. package/lib/components/TextField/TextField.mdx +34 -0
  352. package/lib/components/TimeZonePicker/TimeZonePicker.mdx +18 -0
  353. package/lib/components/TooltipTrigger/Tooltip.styles.js +1 -1
  354. package/lib/components/TooltipTrigger/TooltipTrigger.js +2 -0
  355. package/lib/components/TooltipTrigger/TooltipTrigger.mdx +23 -0
  356. package/lib/components/TooltipTrigger/TooltipTrigger.test.js +48 -2
  357. package/lib/docs/Props.stories.mdx +35 -0
  358. package/lib/docs/Welcome.stories.mdx +149 -0
  359. package/lib/docs/hooks/useDebounce.stories.mdx +59 -0
  360. package/lib/docs/hooks/useModalState.stories.mdx +83 -0
  361. package/lib/docs/hooks/useOverlayPanelState.stories.mdx +84 -0
  362. package/lib/docs/theme/AstroNanoTheme.stories.mdx +174 -0
  363. package/lib/docs/theme/AstroTheme.stories.mdx +20 -0
  364. package/lib/docs/theme/CustomThemes.stories.mdx +70 -0
  365. package/lib/docs/theme/StylingGuideline.stories.mdx +116 -0
  366. package/lib/docs/utils/messagesReducer.stories.mdx +64 -0
  367. package/lib/experimental/EditButton/EditButton.js +50 -0
  368. package/lib/experimental/EditButton/EditButton.mdx +9 -0
  369. package/lib/experimental/EditButton/EditButton.stories.js +75 -0
  370. package/lib/experimental/EditButton/EditButton.test.js +68 -0
  371. package/lib/experimental/EditButton/index.js +1 -0
  372. package/lib/experimental/ListView/ListView.mdx +47 -0
  373. package/lib/experimental/ListView/ListView.stories.js +729 -0
  374. package/lib/experimental/ListViewItem/ListViewItem.js +24 -6
  375. package/lib/experimental/ListViewItem/ListViewItem.mdx +36 -0
  376. package/lib/experimental/ListViewItem/ListViewItem.stories.js +28 -5
  377. package/lib/experimental/ListViewItem/ListViewItem.test.js +45 -1
  378. package/lib/experimental/ListViewItem/controls/ListViewItemEditButton.js +1 -4
  379. package/lib/experimental/ListViewItem/controls/ListViewItemEditButton.stories.js +4 -1
  380. package/lib/experimental/ListViewItem/controls/ListViewItemMenu.test.js +2 -2
  381. package/lib/experimental/ListViewItem/controls/ListViewItemSwitchField.js +1 -0
  382. package/lib/experimental/ListViewItem/listViewItemAttributes.js +25 -12
  383. package/lib/experimental/PanelHeader/PanelHeader.js +75 -0
  384. package/lib/experimental/PanelHeader/PanelHeader.mdx +19 -0
  385. package/lib/experimental/PanelHeader/PanelHeader.stories.js +59 -0
  386. package/lib/experimental/PanelHeader/PanelHeader.styles.js +30 -0
  387. package/lib/experimental/PanelHeader/PanelHeader.test.js +43 -0
  388. package/lib/experimental/PanelHeader/controls/PanelHeaderCloseButton.js +25 -0
  389. package/lib/experimental/PanelHeader/controls/PanelHeaderCloseButton.stories.js +21 -0
  390. package/lib/experimental/PanelHeader/controls/PanelHeaderCloseButton.test.js +22 -0
  391. package/lib/experimental/PanelHeader/controls/PanelHeaderMenu.js +18 -0
  392. package/lib/experimental/PanelHeader/controls/PanelHeaderMenu.stories.js +26 -0
  393. package/lib/experimental/PanelHeader/controls/PanelHeaderMenu.test.js +55 -0
  394. package/lib/experimental/PanelHeader/controls/PanelHeaderSwitchField.js +18 -0
  395. package/lib/experimental/PanelHeader/controls/PanelHeaderSwitchField.stories.js +32 -0
  396. package/lib/experimental/PanelHeader/controls/PanelHeaderSwitchField.test.js +22 -0
  397. package/lib/experimental/PanelHeader/index.js +1 -0
  398. package/lib/experimental/README.stories.mdx +7 -0
  399. package/lib/experimental/SaveBar/SaveBar.mdx +13 -0
  400. package/lib/experimental/recipes/ListAndPanel.stories.js +1 -1
  401. package/lib/hooks/useComponentToggle/useComponentToggle.test.js +2 -2
  402. package/lib/hooks/useCopyToClipboard/useCopyToClipboard.js +2 -2
  403. package/lib/hooks/useCopyToClipboard/useCopyToClipboard.test.js +1 -1
  404. package/lib/hooks/useOverlappingMenuHoverState/useOverlappingMenuHoverState.test.js +2 -2
  405. package/lib/hooks/usePropWarning/usePropWarning.js +1 -1
  406. package/lib/hooks/useStatusClasses/useStatusClasses.js +2 -2
  407. package/lib/hooks/useTShirtSize/useTShirtSize.js +1 -1
  408. package/lib/index.js +6 -0
  409. package/lib/recipes/AttributeMapping.stories.js +553 -0
  410. package/lib/styles/colors.js +1 -1
  411. package/lib/styles/variants/README.md +98 -0
  412. package/lib/styles/variants/variants.js +2 -0
  413. package/lib/types/box.js +1 -0
  414. package/lib/types/icon.js +1 -0
  415. package/lib/types/index.js +7 -0
  416. package/lib/types/loader.js +1 -0
  417. package/lib/types/mdx.d.js +0 -0
  418. package/lib/types/popoverContainer.js +1 -0
  419. package/lib/types/shared/dom.js +1 -0
  420. package/lib/types/shared/index.js +3 -0
  421. package/lib/types/shared/style.js +1 -0
  422. package/lib/types/shared/test.js +1 -0
  423. package/lib/types/shared/utils.js +1 -0
  424. package/lib/types/tableCell.js +1 -0
  425. package/lib/types/text.js +1 -0
  426. package/lib/utils/designUtils/figmaLinks.js +7 -1
  427. package/lib/utils/testUtils/testAxe.js +2 -2
  428. package/package.json +23 -9
  429. package/CHANGELOG.md +0 -2565
  430. package/NOTICE +0 -2481
  431. package/NOTICE.html +0 -9174
  432. package/lib/cjs/recipes/AttributeMappingReadOnlyField.stories.js +0 -254
  433. package/lib/recipes/AttributeMappingReadOnlyField.stories.js +0 -243
  434. package/lib/recipes/AttributesAndPingOneMapping.stories.js +0 -282
package/README.md CHANGED
@@ -14,9 +14,13 @@ Yarn:
14
14
 
15
15
  ## Requirements
16
16
 
17
- - Node: 16+
17
+ - Node: 18+
18
18
  - React: 16.8+
19
19
 
20
+ ## Typescript
21
+
22
+ Run `yarn dlx @yarnpkg/sdks vscode` and reload the window to configure vscode for TypeScript.
23
+
20
24
  ## Usage
21
25
 
22
26
  All apps should be wrapped in an `<AstroWrapper>` for full functionality and styling.
@@ -89,4 +93,4 @@ ESLint packages or versions these features may stop working. Run this command ag
89
93
 
90
94
  ## Licensing
91
95
 
92
- This project is licensed under the Apache license. See the [LICENSE](LICENSE) file for more information.
96
+ This project is licensed under the Apache 2.0 license. See the [LICENSE](LICENSE) file for more information.
package/lib/README.md CHANGED
@@ -14,9 +14,13 @@ Yarn:
14
14
 
15
15
  ## Requirements
16
16
 
17
- - Node: 16+
17
+ - Node: 18+
18
18
  - React: 16.8+
19
19
 
20
+ ## Typescript
21
+
22
+ Run `yarn dlx @yarnpkg/sdks vscode` and reload the window to configure vscode for TypeScript.
23
+
20
24
  ## Usage
21
25
 
22
26
  All apps should be wrapped in an `<AstroWrapper>` for full functionality and styling.
@@ -89,4 +93,4 @@ ESLint packages or versions these features may stop working. Run this command ag
89
93
 
90
94
  ## Licensing
91
95
 
92
- This project is licensed under the Apache license. See the [LICENSE](LICENSE) file for more information.
96
+ This project is licensed under the Apache 2.0 license. See the [LICENSE](LICENSE) file for more information.
@@ -0,0 +1,40 @@
1
+ import { Meta } from '@storybook/addon-docs';
2
+
3
+ <Meta title="Components/AccordionGridGroup/AccordionGridGroup" />
4
+
5
+ # AccordionGridGroup
6
+
7
+ The AccordionGrid component combines the look and functionality of a grid with that of an accordion, and is a composite component with two children:
8
+ - The header, which controls the expansion of the body.
9
+ - The body, which renders the content.
10
+
11
+ The purpose of this component is to allow keyboard interaction with the children passed into the body and header. Use it to pass complex or focusable components into an accordion component.
12
+ It should have clear, concise labels, and should not be used for small amounts of static text. Use [Box](./?path=/story/components-box--default) instead.
13
+
14
+ ### Required components
15
+
16
+ This component requires the Header, Body and Item originating from [react-stately/collections](https://react-spectrum.adobe.com/react-stately/collections.html).
17
+
18
+ ### Accessibility
19
+
20
+ This component should adhere to the [WAI-ARIA Accordion](https://www.w3.org/WAI/ARIA/apg/patterns/accordion/examples/accordion) accessibility guidelines.
21
+
22
+ #### Keyboard Navigation
23
+
24
+ These keys provide additional functionality to the component.
25
+
26
+ | Keys | Functions |
27
+ | ---- | --------- |
28
+ | Space or Enter | When focus is on the header panel of a collapsed section, these keys toggle the component. |
29
+ | Tab | Moves focus to the next focusable component. All focusable components in the accordion are included in the page tab sequence.|
30
+ | Shift + Tab | Moves focus to the previous focusable component. All focusable components in the accordion are included in the page tab sequence. |
31
+ | Arrow Keys | All components are accessible using arrow keys. |
32
+
33
+ #### Screen readers
34
+
35
+ This component uses the following attributes to assist screen readers:
36
+
37
+ - The accordion grid item header button uses the **`aria-selected`** attribute to indicate the selection state of the row.
38
+ - The accordion header button uses the **`aria-expanded`** attribute to indicate when the content expands and collapses.
39
+ - The **`aria-multiselectable`** attribute indicates that the user can toggle numerous items from the grid.
40
+ - The grid uses the **`aria-label`** attribute to provide an accessible name.
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
 
3
3
  var _typeof = require("@babel/runtime-corejs3/helpers/typeof");
4
- var _Symbol = require("@babel/runtime-corejs3/core-js-stable/symbol");
5
4
  var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
5
+ var _Symbol = require("@babel/runtime-corejs3/core-js-stable/symbol");
6
6
  var _Object$create = require("@babel/runtime-corejs3/core-js-stable/object/create");
7
7
  var _Object$getPrototypeOf = require("@babel/runtime-corejs3/core-js-stable/object/get-prototype-of");
8
8
  var _forEachInstanceProperty = require("@babel/runtime-corejs3/core-js-stable/instance/for-each");
@@ -21,7 +21,7 @@ var _testAxe = _interopRequireDefault(require("../../utils/testUtils/testAxe"));
21
21
  var _testWrapper = require("../../utils/testUtils/testWrapper");
22
22
  var _ = _interopRequireDefault(require("."));
23
23
  var _react2 = require("@emotion/react");
24
- function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof _Symbol ? _Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return _Object$defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = _Object$create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = _Object$getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = _Object$create(IteratorPrototype); function defineIteratorMethods(prototype) { var _context2; _forEachInstanceProperty(_context2 = ["next", "throw", "return"]).call(_context2, function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator["return"] && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], _forEachInstanceProperty(tryLocsList).call(tryLocsList, pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return _Object$setPrototypeOf ? _Object$setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = _Object$create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = _Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return _reverseInstanceProperty(keys).call(keys), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { var _context3; if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, _forEachInstanceProperty(_context3 = this.tryEntries).call(_context3, resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+_sliceInstanceProperty(name).call(name, 1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, "catch": function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }
24
+ function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, defineProperty = _Object$defineProperty || function (obj, key, desc) { obj[key] = desc.value; }, $Symbol = "function" == typeof _Symbol ? _Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return _Object$defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = _Object$create(protoGenerator.prototype), context = new Context(tryLocsList || []); return defineProperty(generator, "_invoke", { value: makeInvokeMethod(innerFn, self, context) }), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = _Object$getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = _Object$create(IteratorPrototype); function defineIteratorMethods(prototype) { var _context2; _forEachInstanceProperty(_context2 = ["next", "throw", "return"]).call(_context2, function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; defineProperty(this, "_invoke", { value: function value(method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; } function maybeInvokeDelegate(delegate, context) { var methodName = context.method, method = delegate.iterator[methodName]; if (undefined === method) return context.delegate = null, "throw" === methodName && delegate.iterator["return"] && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method) || "return" !== methodName && (context.method = "throw", context.arg = new TypeError("The iterator does not provide a '" + methodName + "' method")), ContinueSentinel; var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], _forEachInstanceProperty(tryLocsList).call(tryLocsList, pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), defineProperty(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return _Object$setPrototypeOf ? _Object$setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = _Object$create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = _Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (val) { var object = Object(val), keys = []; for (var key in object) { keys.push(key); } return _reverseInstanceProperty(keys).call(keys), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { var _context3; if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, _forEachInstanceProperty(_context3 = this.tryEntries).call(_context3, resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+_sliceInstanceProperty(name).call(name, 1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, "catch": function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }
25
25
  var testId = 'test-accordion';
26
26
  var defaultProps = {
27
27
  'data-testid': testId
@@ -48,8 +48,7 @@ var header = _objectSpread(_objectSpread({}, _Buttons.base), {}, {
48
48
  display: 'inline-flex',
49
49
  bg: 'transparent',
50
50
  color: 'neutral.10',
51
- paddingLeft: '5px',
52
- paddingRight: '5px',
51
+ padding: '0 5px',
53
52
  flexGrow: 0,
54
53
  fontWeight: 700,
55
54
  '&.is-hovered': {
@@ -32,16 +32,15 @@ var _AccordionItem = _interopRequireDefault(require("../AccordionItem"));
32
32
  var _react2 = require("@emotion/react");
33
33
  var _excluded = ["defaultExpandedKeys", "expandedKeys", "onExpandedChange"],
34
34
  _excluded2 = ["onFocus"];
35
- 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); }
36
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = _Object$defineProperty && _Object$getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { _Object$defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
37
- function ownKeys(object, enumerableOnly) { var keys = _Object$keys(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); enumerableOnly && (symbols = _filterInstanceProperty(symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
38
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var _context2, _context3; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty(_context2 = ownKeys(Object(source), !0)).call(_context2, function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source)) : _forEachInstanceProperty(_context3 = ownKeys(Object(source))).call(_context3, function (key) { _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } return target; }
39
35
  /**
40
36
  * Console Warning: "Cannot update a component (`Unknown`)...`"
41
37
  * when using controlledExpanded prop is expected
42
38
  * and related to a known issue within React Stately.
43
39
  */
44
-
40
+ 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); }
41
+ 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; }
42
+ function ownKeys(object, enumerableOnly) { var keys = _Object$keys(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); enumerableOnly && (symbols = _filterInstanceProperty(symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
43
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var _context2, _context3; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty(_context2 = ownKeys(Object(source), !0)).call(_context2, function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source)) : _forEachInstanceProperty(_context3 = ownKeys(Object(source))).call(_context3, function (key) { _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } return target; }
45
44
  var AccordionGroup = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
46
45
  var _context;
47
46
  var defaultExpandedKeys = props.defaultExpandedKeys,
@@ -0,0 +1,41 @@
1
+ import { Meta } from '@storybook/addon-docs';
2
+
3
+ <Meta title="Components/AccordionGroup/AccordionGroup" />
4
+
5
+ # AccordionGroup
6
+
7
+ Accordions are for grouping big chunks of content into easier-to-scan headers, which the user can expand when they want to read what is associated with that header.
8
+
9
+ Accordions should be used:
10
+ - To organize related information.
11
+ - To shorten pages and reduce scrolling when it’s not crucial that users review the content.
12
+ - When white space is at a minimum and content cannot be displayed all at once.
13
+
14
+ Accordions should not have focusable items as children.
15
+
16
+ It is built on React Aria [useAccordion](https://reactspectrum.blob.core.windows.net/reactspectrum/d77b35e970e5549f66b47a83f07423f5c93b7297/docs/react-aria/useAccordion.html).
17
+
18
+ ### Required components
19
+
20
+ This component requires Item originating from [react-stately/collections](https://react-spectrum.adobe.com/react-stately/collections.html).
21
+
22
+ ### Accessibility
23
+
24
+ This component should adhere to the [WAI-ARIA Accordion](https://www.w3.org/WAI/ARIA/apg/patterns/accordion/examples/accordion) accessibility guidelines.
25
+
26
+ #### Keyboard Navigation
27
+
28
+ These keys provide additional functionality to the component.
29
+
30
+ | Keys | Functions |
31
+ | ---- | --------- |
32
+ | Space or Enter | When focus is on the accordion header of a collapsed section, these keys expand the section. |
33
+ | Tab | Moves focus to the next focusable component. All focusable components in the accordion are included in the page tab sequence.|
34
+ | Shift + Tab | Moves focus to the previous focusable component. All focusable components in the accordion are included in the page tab sequence. |
35
+
36
+ #### Screen readers
37
+
38
+ This component uses the following attributes to assist screen readers:
39
+ - The accordion header button uses the **`aria-expanded`** attribute to indicate when the content expands and collapses.
40
+ - When expanded, the **`aria-controls`** attribute is added to the button pointing to the content. The button uses **`aria-label`** to provide an accessible name.
41
+ - The **`aria-labelledby`** attribute is added to the entire accordion component, which is supplied with the button ID.
@@ -0,0 +1,34 @@
1
+ import { Meta } from '@storybook/addon-docs';
2
+
3
+ <Meta title="Components/ArrayField/ArrayField" />
4
+
5
+ # ArrayField
6
+
7
+ The component displays array collections to provide useful functions and optimizations for arrays.
8
+
9
+ ArrayField should:
10
+ - Be used for dynamic-sized arrays/lists.
11
+ - Be used with common array/list manipulations.
12
+ - Be used to create an instance or collect information.
13
+
14
+ ### Required Components
15
+
16
+ This component requires the appropriate field component ([TextField](./?path=/story/form-textfield--default) or [SelectField](./?path=/story/form-selectfield--default)) and the ArrayFieldDeleteButton.
17
+
18
+ ### Accessibility
19
+
20
+ #### Keyboard Navigation
21
+
22
+ These keys provide additional functionality to the component.
23
+
24
+ | Keys | Functions |
25
+ | ---- | ---- |
26
+ | Space or Enter | When focused, selects the item. |
27
+ | Tab | Moves focus to the next focusable component and follows the page tab sequence. |
28
+ | Shift + Tab | Moves focus to the previous focusable component. |
29
+
30
+ #### Screen Readers
31
+
32
+ This component uses the following attributes to assist screen readers:
33
+ - The input uses the **`aria-invalid`** attribute to alert users that the values entered are not in the expected format.
34
+ - The field and buttons use the **`aria-label`** attribute to provide accessible names.
@@ -0,0 +1,16 @@
1
+ import { Meta } from '@storybook/addon-docs';
2
+
3
+ <Meta title="Components/AstroWrapper/AstroWrapper" />
4
+
5
+ # AstroWrapper
6
+
7
+ The AstroWrapper component provides a standard background, global styles, and the Astro theme, by default. This component should be used:
8
+ - Sparingly and cautiously when altering the default theme.
9
+ - With the **`themeOverrides`** prop to change some base theme properties.
10
+ - When targeting multiple components on a global scale.
11
+
12
+ It should not be used for minor CSS alterations. Use sx objects instead.
13
+
14
+ ### Required components
15
+
16
+ This component can be used independently and does not require additional components.
@@ -0,0 +1,14 @@
1
+ import { Meta } from '@storybook/addon-docs';
2
+
3
+ <Meta title="Components/Avatar/Avatar" />
4
+
5
+ # Avatar
6
+
7
+ Avatars are graphical representations of a user, and are usually photos, illustrations, or the user’s initials. When photos or illustrations aren’t available, the user’s initials are used instead.
8
+ The alternate text used on the image cannot be empty as it describes the function/appearance of the image.
9
+
10
+ This component is built on [Avatar from Theme-UI](https://theme-ui.com/components/avatar/).
11
+
12
+ ### Required components
13
+
14
+ This component can be used independently and does not require additional components.
@@ -0,0 +1,24 @@
1
+ import { Meta } from '@storybook/addon-docs';
2
+
3
+ <Meta title="Components/Badge/Badge" />
4
+
5
+ # Badge
6
+
7
+ Badges are compact Box components used as filtering cues or contextual support. They should be clearly labeled and should not be used as buttons.
8
+
9
+ This component uses [props from Theme-UI](https://theme-ui.com/sx-prop).
10
+
11
+ ### Required Components
12
+
13
+ This component can be used independently and does not require additional components.
14
+
15
+ ### Accessibility
16
+
17
+ #### Keyboard Navigation
18
+
19
+ Badge itself is not focusable. However, when components are added to it, these keys provide additional functionality.
20
+
21
+ | Keys | Functions |
22
+ | ---- | --------- |
23
+ | Space or Enter | Selects the component. |
24
+ | Tab | Focuses the component and follows the page tab sequence. |
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ import { BoxProps } from '../../types';
3
+ declare const Box: React.ForwardRefExoticComponent<BoxProps & React.RefAttributes<HTMLElement>>;
4
+ export default Box;
@@ -21,9 +21,7 @@ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/he
21
21
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/objectWithoutProperties"));
22
22
  var _base = _interopRequireDefault(require("@emotion/styled/base"));
23
23
  var _react = _interopRequireWildcard(require("react"));
24
- var _propTypes = require("@styled-system/prop-types");
25
24
  var _lodash = require("lodash");
26
- var _propTypes2 = _interopRequireDefault(require("prop-types"));
27
25
  var _styledSystem = require("styled-system");
28
26
  var _themeUi = require("theme-ui");
29
27
  var _hooks = require("../../hooks");
@@ -34,11 +32,11 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
34
32
  function ownKeys(object, enumerableOnly) { var keys = _Object$keys(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); enumerableOnly && (symbols = _filterInstanceProperty(symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
35
33
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var _context, _context2; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty(_context = ownKeys(Object(source), !0)).call(_context, function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source)) : _forEachInstanceProperty(_context2 = ownKeys(Object(source))).call(_context2, function (key) { _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } return target; }
36
34
  var ExtendedBox = /*#__PURE__*/(0, _base["default"])(_themeUi.Box, process.env.NODE_ENV === "production" ? {
37
- target: "e146bxl90"
35
+ target: "ejf9h0h0"
38
36
  } : {
39
- target: "e146bxl90",
37
+ target: "ejf9h0h0",
40
38
  label: "ExtendedBox"
41
- })(_styledSystem.layout, _styledSystem.flexbox, _styledSystem.typography, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0JveC9Cb3guanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBVW9CIiwiZmlsZSI6Ii4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0JveC9Cb3guanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgZm9yd2FyZFJlZiwgdXNlTWVtbyB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcbmltcG9ydCB7IHByb3BUeXBlIGFzIHN0eWxlUHJvcFR5cGUgfSBmcm9tICdAc3R5bGVkLXN5c3RlbS9wcm9wLXR5cGVzJztcbmltcG9ydCB7IHRvTnVtYmVyIH0gZnJvbSAnbG9kYXNoJztcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQgeyBmbGV4Ym94LCBsYXlvdXQsIHR5cG9ncmFwaHkgfSBmcm9tICdzdHlsZWQtc3lzdGVtJztcbmltcG9ydCB7IEJveCBhcyBUaGVtZVVJQm94IH0gZnJvbSAndGhlbWUtdWknO1xuXG5pbXBvcnQgeyB1c2VQcm9wV2FybmluZywgdXNlU3RhdHVzQ2xhc3NlcyB9IGZyb20gJy4uLy4uL2hvb2tzJztcblxuY29uc3QgRXh0ZW5kZWRCb3ggPSBzdHlsZWQoVGhlbWVVSUJveCkobGF5b3V0LCBmbGV4Ym94LCB0eXBvZ3JhcGh5KTtcblxuY29uc3QgQm94ID0gZm9yd2FyZFJlZigocHJvcHMsIHJlZikgPT4ge1xuICBjb25zdCB7XG4gICAgZmxleERpcmVjdGlvbiwgLy8gZXNsaW50LWRpc2FibGUtbGluZVxuICAgIGdhcCxcbiAgICBpc1JvdyxcbiAgICBpc0Rpc2FibGVkLFxuICAgIGNsYXNzTmFtZSxcbiAgICBmb250U2l6ZSxcbiAgICBzeCwgLy8gZXNsaW50LWRpc2FibGUtbGluZVxuICAgIC4uLm90aGVyc1xuICB9ID0gcHJvcHM7XG4gIGNvbnN0IGZkID0gZmxleERpcmVjdGlvbiB8fCBpc1JvdyA/ICdyb3cnIDogJ2NvbHVtbic7XG4gIGNvbnN0IGN1c3RvbSA9IHsgLi4uc3ggfTtcblxuICBjb25zdCB7IGNsYXNzTmFtZXMgfSA9IHVzZVN0YXR1c0NsYXNzZXMoY2xhc3NOYW1lLCB7IGlzRGlzYWJsZWQgfSk7XG4gIHVzZVByb3BXYXJuaW5nKHByb3BzLCAnZGlzYWJsZWQnLCAnaXNEaXNhYmxlZCcpO1xuXG4gIGlmIChnYXApIHtcbiAgICBjdXN0b21bJyYgPiAqICsgKjpub3QoOmZpcnN0LWNoaWxkKSAvKiBlbW90aW9uLWRpc2FibGUtc2VydmVyLXJlbmRlcmluZy11bnNhZmUtc2VsZWN0b3Itd2FybmluZy1wbGVhc2UtZG8tbm90LXVzZS10aGlzLXRoZS13YXJuaW5nLWV4aXN0cy1mb3ItYS1yZWFzb24gKi8nXSA9IHtcbiAgICAgIFtmZCA9PT0gJ3JvdycgPyAnbWFyZ2luTGVmdCcgOiAnbWFyZ2luVG9wJ106IGdhcCxcbiAgICB9O1xuICB9XG5cbiAgY29uc3QgY3VzdG9tRm9udFNpemUgPSB1c2VNZW1vKCgpID0+IHtcbiAgICBjb25zdCBudW1lcmljYWxGb250U2l6ZSA9IHRvTnVtYmVyKGZvbnRTaXplKTtcbiAgICBpZiAoTnVtYmVyLmlzTmFOKG51bWVyaWNhbEZvbnRTaXplKSkge1xuICAgICAgcmV0dXJuIGZvbnRTaXplO1xuICAgIH1cbiAgICByZXR1cm4gbnVtZXJpY2FsRm9udFNpemU7XG4gIH0sIFtmb250U2l6ZV0pO1xuXG4gIHJldHVybiAoXG4gICAgPEV4dGVuZGVkQm94XG4gICAgICBjbGFzc05hbWU9e2NsYXNzTmFtZXN9XG4gICAgICByZWY9e3JlZn1cbiAgICAgIGRpc3BsYXk9XCJmbGV4XCJcbiAgICAgIGZsZXhEaXJlY3Rpb249e2ZkfVxuICAgICAgdmFyaWFudD1cImJveC5iYXNlXCJcbiAgICAgIGZvbnRTaXplPXtjdXN0b21Gb250U2l6ZX1cbiAgICAgIHsuLi5vdGhlcnN9XG4gICAgICBzeD17Y3VzdG9tfVxuICAgIC8+XG4gICk7XG59KTtcblxuQm94LnByb3BUeXBlcyA9IHtcbiAgLyoqIFRoZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBib3guICovXG4gIGJnOiBQcm9wVHlwZXMuc3RyaW5nLFxuICAvKiogV2hldGhlciB0aGUgYm94IGlzIGRpc2FibGVkLiAqL1xuICBpc0Rpc2FibGVkOiBQcm9wVHlwZXMub25lT2ZUeXBlKFtQcm9wVHlwZXMuYm9vbCwgUHJvcFR5cGVzLm9iamVjdF0pLFxuICAvKiogVGhlIGJhc2UgSFRNTCB0YWcgbmFtZSBvciBSZWFjdCBjb21wb25lbnQgdHlwZSB0byByZW5kZXIgKi9cbiAgYXM6IFByb3BUeXBlcy5vbmVPZlR5cGUoW1Byb3BUeXBlcy5zdHJpbmcsIFByb3BUeXBlcy5lbGVtZW50VHlwZV0pLFxuICAvKiogV2hlbiB0cnVlLCBkaXNwbGF5IGFzIGEgcm93IHJhdGhlciB0aGFuIGEgY29sdW1uLiAqL1xuICBpc1JvdzogUHJvcFR5cGVzLmJvb2wsXG4gIC8qKiBHYXAgYmV0d2VlbiBpdGVtcywgd2hldGhlciBpbiBhIHJvdyBvciBjb2x1bW4uICovXG4gIGdhcDogc3R5bGVQcm9wVHlwZSxcbiAgZm9udFNpemU6IFByb3BUeXBlcy5vbmVPZlR5cGUoW1Byb3BUeXBlcy5zdHJpbmcsIFByb3BUeXBlcy5udW1iZXJdKSxcbn07XG5cbkJveC5kZWZhdWx0UHJvcHMgPSB7XG4gIGFzOiAnZGl2JyxcbiAgaXNSb3c6IGZhbHNlLFxuICBpc0Rpc2FibGVkOiBmYWxzZSxcbn07XG5cbkJveC5kaXNwbGF5TmFtZSA9ICdCb3gnO1xuXG5leHBvcnQgZGVmYXVsdCBCb3g7XG4iXX0= */");
39
+ })(_styledSystem.layout, _styledSystem.flexbox, _styledSystem.typography, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0JveC9Cb3gudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVNvQiIsImZpbGUiOiIuLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9Cb3gvQm94LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyBmb3J3YXJkUmVmLCB1c2VNZW1vIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgdG9OdW1iZXIgfSBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IHsgZmxleGJveCwgbGF5b3V0LCB0eXBvZ3JhcGh5IH0gZnJvbSAnc3R5bGVkLXN5c3RlbSc7XG5pbXBvcnQgeyBCb3ggYXMgVGhlbWVVSUJveCB9IGZyb20gJ3RoZW1lLXVpJztcblxuaW1wb3J0IHsgdXNlUHJvcFdhcm5pbmcsIHVzZVN0YXR1c0NsYXNzZXMgfSBmcm9tICcuLi8uLi9ob29rcyc7XG5pbXBvcnQgeyBCb3hQcm9wcywgUmVhY3RSZWYgfSBmcm9tICcuLi8uLi90eXBlcyc7XG5cbmNvbnN0IEV4dGVuZGVkQm94ID0gc3R5bGVkKFRoZW1lVUlCb3gpKFxuICBsYXlvdXQsXG4gIGZsZXhib3gsXG4gIHR5cG9ncmFwaHksXG4pO1xuXG5jb25zdCBCb3ggPSBmb3J3YXJkUmVmKChwcm9wczogQm94UHJvcHMsIHJlZjogUmVhY3RSZWYpID0+IHtcbiAgY29uc3Qge1xuICAgIGZsZXhEaXJlY3Rpb24sXG4gICAgZ2FwLFxuICAgIGlzUm93LFxuICAgIGlzRGlzYWJsZWQsXG4gICAgY2xhc3NOYW1lLFxuICAgIGZvbnRTaXplLFxuICAgIHN4LFxuICAgIC4uLm90aGVyc1xuICB9ID0gcHJvcHM7XG4gIGNvbnN0IGZkID0gZmxleERpcmVjdGlvbiB8fCBpc1JvdyA/ICdyb3cnIDogJ2NvbHVtbic7XG4gIGNvbnN0IGN1c3RvbSA9IHsgLi4uc3ggfTtcblxuICBjb25zdCB7IGNsYXNzTmFtZXMgfSA9IHVzZVN0YXR1c0NsYXNzZXMoY2xhc3NOYW1lLCB7IGlzRGlzYWJsZWQgfSk7XG4gIHVzZVByb3BXYXJuaW5nKHByb3BzLCAnZGlzYWJsZWQnLCAnaXNEaXNhYmxlZCcpO1xuXG4gIGlmIChnYXApIHtcbiAgICBjdXN0b21bJyYgPiAqICsgKjpub3QoOmZpcnN0LW9mLXR5cGU6bm90KHN0eWxlKTpub3QoOmZpcnN0LW9mLXR5cGUgfiAqKSknXSA9IHtcbiAgICAgIFtmZCA9PT0gJ3JvdycgPyAnbWFyZ2luTGVmdCcgOiAnbWFyZ2luVG9wJ106IGdhcCxcbiAgICB9O1xuICB9XG5cbiAgY29uc3QgY3VzdG9tRm9udFNpemUgPSB1c2VNZW1vKCgpID0+IHtcbiAgICBjb25zdCBudW1lcmljYWxGb250U2l6ZSA9IHRvTnVtYmVyKGZvbnRTaXplKTtcbiAgICBpZiAoTnVtYmVyLmlzTmFOKG51bWVyaWNhbEZvbnRTaXplKSkge1xuICAgICAgcmV0dXJuIGZvbnRTaXplO1xuICAgIH1cbiAgICByZXR1cm4gbnVtZXJpY2FsRm9udFNpemU7XG4gIH0sIFtmb250U2l6ZV0pO1xuXG4gIHJldHVybiAoXG4gICAgPEV4dGVuZGVkQm94XG4gICAgICBjbGFzc05hbWU9e2NsYXNzTmFtZXN9XG4gICAgICByZWY9e3JlZn1cbiAgICAgIGRpc3BsYXk9XCJmbGV4XCJcbiAgICAgIGZsZXhEaXJlY3Rpb249e2ZkfVxuICAgICAgdmFyaWFudD1cImJveC5iYXNlXCJcbiAgICAgIGZvbnRTaXplPXtjdXN0b21Gb250U2l6ZX1cbiAgICAgIHsuLi5vdGhlcnN9XG4gICAgICBzeD17Y3VzdG9tfVxuICAgIC8+XG4gICk7XG59KTtcblxuQm94LmRlZmF1bHRQcm9wcyA9IHtcbiAgYXM6ICdkaXYnLFxuICBpc1JvdzogZmFsc2UsXG4gIGlzRGlzYWJsZWQ6IGZhbHNlLFxufTtcblxuQm94LmRpc3BsYXlOYW1lID0gJ0JveCc7XG5cbmV4cG9ydCBkZWZhdWx0IEJveDtcbiJdfQ== */");
42
40
  var Box = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
43
41
  var flexDirection = props.flexDirection,
44
42
  gap = props.gap,
@@ -56,7 +54,7 @@ var Box = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
56
54
  classNames = _useStatusClasses.classNames;
57
55
  (0, _hooks.usePropWarning)(props, 'disabled', 'isDisabled');
58
56
  if (gap) {
59
- custom['& > * + *:not(:first-child) /* emotion-disable-server-rendering-unsafe-selector-warning-please-do-not-use-this-the-warning-exists-for-a-reason */'] = (0, _defineProperty2["default"])({}, fd === 'row' ? 'marginLeft' : 'marginTop', gap);
57
+ custom['& > * + *:not(:first-of-type:not(style):not(:first-of-type ~ *))'] = (0, _defineProperty2["default"])({}, fd === 'row' ? 'marginLeft' : 'marginTop', gap);
60
58
  }
61
59
  var customFontSize = (0, _react.useMemo)(function () {
62
60
  var numericalFontSize = (0, _lodash.toNumber)(fontSize);
@@ -76,19 +74,6 @@ var Box = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
76
74
  sx: custom
77
75
  }));
78
76
  });
79
- Box.propTypes = {
80
- /** The background color of the box. */
81
- bg: _propTypes2["default"].string,
82
- /** Whether the box is disabled. */
83
- isDisabled: _propTypes2["default"].oneOfType([_propTypes2["default"].bool, _propTypes2["default"].object]),
84
- /** The base HTML tag name or React component type to render */
85
- as: _propTypes2["default"].oneOfType([_propTypes2["default"].string, _propTypes2["default"].elementType]),
86
- /** When true, display as a row rather than a column. */
87
- isRow: _propTypes2["default"].bool,
88
- /** Gap between items, whether in a row or column. */
89
- gap: _propTypes.propType,
90
- fontSize: _propTypes2["default"].oneOfType([_propTypes2["default"].string, _propTypes2["default"].number])
91
- };
92
77
  Box.defaultProps = {
93
78
  as: 'div',
94
79
  isRow: false,
@@ -0,0 +1,23 @@
1
+ import { Meta } from '@storybook/addon-docs';
2
+
3
+ <Meta title="Components/Box/Box" />
4
+
5
+ # Box
6
+
7
+ A Box is a flex-based component that can be used as a container for text, form controls, or other components.
8
+ You can customize the colors, margins, and padding surrounding the objects in the box.
9
+
10
+ This component should be used to style form controls, or as a container.
11
+ It should not be used for large, complex layouts. Use a [React Spectrum Grid](https://react-spectrum.adobe.com/react-spectrum/Grid.html) instead.
12
+
13
+ The Box is built on [Box-Theme UI](https://theme-ui.com/components/box/)
14
+ and accepts most [Styled System style props](https://styled-system.com/table/).
15
+
16
+ ### Required components
17
+
18
+ - This component can be used independently and does not require additional components.
19
+
20
+ ### Accessibility
21
+
22
+ This component adheres to the [WCAG 2.1 - 1.3.1 Info and Relationships](https://www.w3.org/WAI/WCAG21/Understanding/info-and-relationships.html)
23
+ accessibility guidelines.
@@ -0,0 +1,6 @@
1
+ declare const _default: {
2
+ base: {
3
+ display: string;
4
+ };
5
+ };
6
+ export default _default;
@@ -0,0 +1 @@
1
+ export {};
@@ -46,9 +46,7 @@ test('box with default gap', function () {
46
46
  gap: '30px'
47
47
  });
48
48
  var box = _react3.screen.getByTestId(testId);
49
- expect(box).toHaveStyle('margin-top: 0px', {
50
- target: '> * + *'
51
- });
49
+ expect(box).toHaveStyle('margin-top: 0px');
52
50
  });
53
51
  test('box as row with gap', function () {
54
52
  getComponent({
@@ -56,7 +54,5 @@ test('box as row with gap', function () {
56
54
  gap: '30px'
57
55
  });
58
56
  var box = _react3.screen.getByTestId(testId);
59
- expect(box).toHaveStyle('margin-left: 0px', {
60
- target: '> * + *'
61
- });
57
+ expect(box).toHaveStyle('margin-left: 0px');
62
58
  });
@@ -0,0 +1 @@
1
+ export { default } from './Box';
@@ -0,0 +1,17 @@
1
+ import { Meta } from '@storybook/addon-docs';
2
+
3
+ <Meta title="Components/Bracket/Bracket" />
4
+
5
+ # Bracket
6
+
7
+ The Bracket component displays information in a hierarchical view of the content structure.
8
+ Items such as headings, directories, and subitems are displayed in a tree structure, which shows how these items are related to each other.
9
+
10
+ Brackets should avoid cross-referencing. Try separating the content into sections instead.
11
+ Brackets shouldn’t display too many levels of depth to avoid overflow.
12
+
13
+ ### Required components
14
+
15
+ This component requires the [Badge](./?path=/docs/components-badge--default),[Box](./?path=/story/components-box--default), and [Text](./?path=/docs/components-text--default) components.
16
+
17
+
@@ -0,0 +1,40 @@
1
+ import { Meta } from '@storybook/addon-docs';
2
+
3
+ <Meta title="Components/Breadcrumbs/Breadcrumbs" />
4
+
5
+ # Breadcrumbs
6
+
7
+ Breadcrumbs display a hierarchy of links to the current page or resource in an application. They are effective in products and experiences that have a large amount of content organized in a hierarchy of more than two levels.
8
+ They take up little space but still provide context for the user’s place in the navigation hierarchy, but should be treated as secondary navigation and never entirely replace the primary navigation.
9
+
10
+ There are two different types of breadcrumbs:
11
+ - **Location-based**: Illustrate the hierarchy and show users where they are within that hierarchy.
12
+ - **Path-based**: Show the steps the user took to get to the current page, rather than reflecting the site’s information architecture.
13
+
14
+ It is built on React Aria [useBreadcrumbs](https://react-spectrum.adobe.com/react-aria/useBreadcrumbs.html) from React-Aria.
15
+
16
+ ### Required components
17
+
18
+ This component requires Item originating from [react-stately/collections](https://react-spectrum.adobe.com/react-stately/collections.html).
19
+
20
+ ### Accessibility
21
+
22
+ This component should adhere to the [WAI-ARIA Breadcrumbs](https://www.w3.org/WAI/ARIA/apg/example-index/breadcrumb/index.html) accessibility guidelines.
23
+
24
+ #### Keyboard Navigation
25
+
26
+ These keys provide additional functionality to the component.
27
+
28
+ | Keys | Functions |
29
+ | ---- | --------- |
30
+ | Space or Enter | Selects the item and navigates to the associated location. |
31
+ | Tab | Moves focus to the next focusable component and follows the page tab sequence. |
32
+ | Shift + Tab | Moves focus to the previous focusable component. |
33
+
34
+ #### Screen readers
35
+
36
+ This component uses the following attributes to assist screen readers:
37
+
38
+ - The Breadcrumbs and BreadcrumbItems components use the **`aria-label`** attribute to provide an accessible name.
39
+ - The Icon component uses the **`aria-hidden`** attribute to hide its content from assistive technology.
40
+ - The last BreadcrumbItem component uses the **`aria-current`** attribute to indicate that the user is currently viewing that page.
@@ -0,0 +1,40 @@
1
+ import { Meta } from '@storybook/addon-docs';
2
+
3
+ <Meta title="Components/Button/Button" />
4
+
5
+ # Button
6
+
7
+ Buttons are used to trigger actions or events and can contain an icon or a text label. The style used depends on its type:
8
+
9
+ - **Primary buttons**: Indicate the call to action on the page. Primary buttons should only appear once per screen (not including the application header, modal dialog, or side panel).
10
+ - **Secondary buttons**: Secondary buttons, the default, often have text labels and can only be used in conjunction with a primary button. As part of a pair, the secondary button’s function is to perform the negative action of the set, such as “Cancel” or “Back.”
11
+ - **Tertiary buttons**: Indicate that lower-priority tasks can be accomplished, and are often used in sections of the UI that have less space, such as cards, lists, or tables.
12
+ - **Danger buttons**: Use these buttons for:
13
+
14
+ - Dangerous actions, such as those that lose or destroy data.
15
+ - Primary danger buttons should only be used when the dangerous action is the most likely action, such as the affirmative Delete action in a deletion confirmation dialog.
16
+ - Secondary and tertiary variants can also be used for actions related to current errors, such as resolving them or viewing their details.
17
+
18
+ This component is built on [Button from Theme-UI](https://theme-ui.com/components/button)
19
+
20
+ ### Required components
21
+
22
+ This component can be used independently and does not require additional components.
23
+
24
+ ### Accessibility
25
+
26
+ This component should adhere to the [WAI-ARIA Button](https://www.w3.org/TR/wai-aria-practices-1.1/examples/button/button.html) accessibility guidelines.
27
+
28
+ #### Keyboard Navigation
29
+
30
+ These keys provide additional functionality to the component.
31
+
32
+ | Keys | Functions |
33
+ | ---- | --------- |
34
+ | Space or Enter | Selects the button. |
35
+ | Tab | Focuses the button and follows the page tab sequence. |
36
+
37
+ #### Screen readers.
38
+
39
+ This component uses the **`aria-label`** attribute to provide an accessible name.
40
+
@@ -17,8 +17,8 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/e
17
17
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/objectWithoutProperties"));
18
18
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/defineProperty"));
19
19
  var _react = _interopRequireDefault(require("react"));
20
- var _AddCircleIcon = _interopRequireDefault(require("@pingux/mdi-react/AddCircleIcon"));
21
20
  var _CreateIcon = _interopRequireDefault(require("@pingux/mdi-react/CreateIcon"));
21
+ var _PlusIcon = _interopRequireDefault(require("@pingux/mdi-react/PlusIcon"));
22
22
  var _storybookAddonDesigns = require("storybook-addon-designs");
23
23
  var _storybookDocsLayout = _interopRequireDefault(require("../../../.storybook/storybookDocsLayout"));
24
24
  var _index = require("../../index");
@@ -68,13 +68,14 @@ var Disabled = function Disabled() {
68
68
  exports.Disabled = Disabled;
69
69
  var TextIconButton = function TextIconButton() {
70
70
  return (0, _react2.jsx)(_index.Button, {
71
- mb: "sm"
71
+ mb: "sm",
72
+ variant: "withIcon"
72
73
  }, (0, _react2.jsx)(_index.Box, {
73
74
  isRow: true,
74
75
  alignItems: "center"
75
76
  }, (0, _react2.jsx)(_index.Icon, {
76
- icon: _AddCircleIcon["default"],
77
- mr: "sm",
77
+ icon: _PlusIcon["default"],
78
+ mr: "xs",
78
79
  color: "active",
79
80
  size: 20,
80
81
  title: {
@@ -89,10 +90,34 @@ var InlineButton = function InlineButton() {
89
90
  mr: "auto",
90
91
  variant: "inline"
91
92
  }, "Inline"), (0, _react2.jsx)(_index.Button, {
93
+ mb: "sm",
94
+ mr: "auto",
95
+ variant: "inlineWithIcon"
96
+ }, (0, _react2.jsx)(_index.Icon, {
97
+ icon: _PlusIcon["default"],
98
+ mr: "xs",
99
+ color: "active",
100
+ size: 15,
101
+ title: {
102
+ name: 'Add Circle Icon'
103
+ }
104
+ }), "Inline with icon"), (0, _react2.jsx)(_index.Button, {
92
105
  mb: "sm",
93
106
  mr: "auto",
94
107
  variant: "inlinePrimary"
95
- }, "Inline primary"));
108
+ }, "Inline primary"), (0, _react2.jsx)(_index.Button, {
109
+ mb: "sm",
110
+ mr: "auto",
111
+ variant: "inlinePrimaryWithIcon"
112
+ }, (0, _react2.jsx)(_index.Icon, {
113
+ icon: _PlusIcon["default"],
114
+ mr: "xs",
115
+ color: "active",
116
+ size: 15,
117
+ title: {
118
+ name: 'Add Circle Icon'
119
+ }
120
+ }), "Inline primary with icon"));
96
121
  };
97
122
  exports.InlineButton = InlineButton;
98
123
  var ColorBlockButton = function ColorBlockButton(args) {