@eeacms/volto-eea-design-system 1.0.0-alpha.1 → 1.0.0-alpha.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 (318) hide show
  1. package/.coverage.babel.config.js +1 -5
  2. package/.i18n.babel.config.js +1 -0
  3. package/.project.eslintrc.js +4 -5
  4. package/CHANGELOG.md +17 -0
  5. package/README.md +1 -105
  6. package/RELEASE.md +74 -0
  7. package/babel.config.js +17 -0
  8. package/cypress.config.js +26 -0
  9. package/jest-addon.config.js +4 -4
  10. package/package.json +15 -14
  11. package/src/ui/Accordion/Accordion.stories.js +167 -0
  12. package/src/ui/Comment/Comment.stories.js +117 -0
  13. package/src/ui/Confirm/Confirm.stories.js +97 -0
  14. package/src/ui/Container/Container.stories.js +62 -0
  15. package/src/ui/ContentBox/ContentBox.stories.js +66 -0
  16. package/src/ui/Footer/Footer.stories.js +100 -0
  17. package/src/ui/Form/Checkbox.stories.js +211 -0
  18. package/src/ui/Form/Dropdown.stories.js +183 -0
  19. package/src/ui/Form/FileUpload.stories.js +46 -0
  20. package/src/ui/Form/Input.stories.js +219 -0
  21. package/src/ui/Form/Radio.stories.js +256 -0
  22. package/src/ui/Form/Textarea.stories.js +126 -0
  23. package/src/ui/Form/Toggle.stories.js +68 -0
  24. package/src/ui/Grid/ComponentGrid.stories.js +41 -0
  25. package/src/ui/Header/Header.stories.js +1526 -0
  26. package/src/ui/Heading/Heading.stories.js +62 -0
  27. package/src/ui/Item/Item.stories.js +242 -0
  28. package/src/ui/Item/ItemGroupWithIcons.stories.js +195 -0
  29. package/src/ui/Label/Label.stories.js +129 -0
  30. package/src/ui/List/DefaultList.stories.js +33 -0
  31. package/src/ui/List/DescriptionList.stories.js +77 -0
  32. package/src/ui/List/OrderedList.stories.js +140 -0
  33. package/src/ui/List/UnorderedList.stories.js +73 -0
  34. package/src/ui/Logo/Logo.stories.js +31 -0
  35. package/src/ui/Media/Image.stories.js +237 -0
  36. package/src/ui/Message/Message.stories.js +171 -0
  37. package/src/ui/Modal/Modal.stories.js +136 -0
  38. package/src/ui/Pagination/Pagination.stories.js +97 -0
  39. package/src/ui/Progress/Progress.stories.js +195 -0
  40. package/src/ui/Statistic/Statistic.stories.js +464 -0
  41. package/src/ui/Tab/Tab.stories.js +202 -0
  42. package/src/ui/Table/Table.stories.js +395 -0
  43. package/templates/eea.hbs +16 -9
  44. package/website/.eslintrc +59 -0
  45. package/website/README.md +33 -0
  46. package/website/babel.config.js +3 -0
  47. package/website/docs/0-intro.md +21 -0
  48. package/website/docs/2-whatsnew.md +2054 -0
  49. package/website/docs/dataguide/0-intro.md +15 -0
  50. package/website/docs/dataguide/_category_.yml +10 -0
  51. package/website/docs/pubguide/0-writing.md +12 -0
  52. package/website/docs/pubguide/1-design.md +16 -0
  53. package/website/docs/pubguide/_category_.yml +10 -0
  54. package/website/docs/webcontent/0-intro.md +10 -0
  55. package/website/docs/webcontent/_category_.yml +10 -0
  56. package/website/docs/webdev/3-Guidelines/0-intro.md +17 -0
  57. package/website/docs/webdev/3-Guidelines/1-typography.mdx +270 -0
  58. package/website/docs/webdev/3-Guidelines/2-colours.md +915 -0
  59. package/website/docs/webdev/3-Guidelines/3-images.md +81 -0
  60. package/website/docs/webdev/3-Guidelines/4-iconography.mdx +16298 -0
  61. package/website/docs/webdev/3-Guidelines/5-spacing.md +116 -0
  62. package/website/docs/webdev/3-Guidelines/_category_.yml +8 -0
  63. package/website/docs/webdev/4-Templates/1-Grid.mdx +12 -0
  64. package/website/docs/webdev/4-Templates/2-SiteHeader.mdx +12 -0
  65. package/website/docs/webdev/4-Templates/3-SiteFooter.mdx +12 -0
  66. package/website/docs/webdev/4-Templates/4-PageHeader.mdx +12 -0
  67. package/website/docs/webdev/4-Templates/_category_.yml +8 -0
  68. package/website/docs/webdev/5-Components/0-Accordion.mdx +12 -0
  69. package/website/docs/webdev/5-Components/1-Callout.mdx +11 -0
  70. package/website/docs/webdev/5-Components/10-Item.mdx +12 -0
  71. package/website/docs/webdev/5-Components/11-Labeled-icons.mdx +11 -0
  72. package/website/docs/webdev/5-Components/12-Labels.mdx +13 -0
  73. package/website/docs/webdev/5-Components/13-Lists.mdx +13 -0
  74. package/website/docs/webdev/5-Components/14-Logo.mdx +12 -0
  75. package/website/docs/webdev/5-Components/15-Image.mdx +12 -0
  76. package/website/docs/webdev/5-Components/16-Loader.mdx +11 -0
  77. package/website/docs/webdev/5-Components/17-Messages.mdx +14 -0
  78. package/website/docs/webdev/5-Components/18-Modal.mdx +14 -0
  79. package/website/docs/webdev/5-Components/19-Pagination.mdx +14 -0
  80. package/website/docs/webdev/5-Components/2-Breadcrumb.mdx +14 -0
  81. package/website/docs/webdev/5-Components/20-Popup.mdx +14 -0
  82. package/website/docs/webdev/5-Components/21-Progress.mdx +14 -0
  83. package/website/docs/webdev/5-Components/21-Quote/1-Quote.mdx +14 -0
  84. package/website/docs/webdev/5-Components/21-Quote/2-Testimonial.mdx +14 -0
  85. package/website/docs/webdev/5-Components/21-Quote/_category_.yml +8 -0
  86. package/website/docs/webdev/5-Components/22-Segment.mdx +14 -0
  87. package/website/docs/webdev/5-Components/23-Statistic.mdx +14 -0
  88. package/website/docs/webdev/5-Components/24-Search/0-Filters.mdx +12 -0
  89. package/website/docs/webdev/5-Components/24-Search/1-Suggestions.mdx +11 -0
  90. package/website/docs/webdev/5-Components/24-Search/2-Searchbox.mdx +11 -0
  91. package/website/docs/webdev/5-Components/24-Search/_category_.yml +8 -0
  92. package/website/docs/webdev/5-Components/24-Tab.mdx +14 -0
  93. package/website/docs/webdev/5-Components/25-Table.mdx +14 -0
  94. package/website/docs/webdev/5-Components/25-Visuals/0-Dashboard.mdx +11 -0
  95. package/website/docs/webdev/5-Components/25-Visuals/1-Charts.mdx +11 -0
  96. package/website/docs/webdev/5-Components/25-Visuals/2-Maps.mdx +11 -0
  97. package/website/docs/webdev/5-Components/25-Visuals/_category_.yml +8 -0
  98. package/website/docs/webdev/5-Components/26-Content.mdx +13 -0
  99. package/website/docs/webdev/5-Components/27-Tags.mdx +13 -0
  100. package/website/docs/webdev/5-Components/28-Timeline.mdx +13 -0
  101. package/website/docs/webdev/5-Components/3-Buttons.mdx +13 -0
  102. package/website/docs/webdev/5-Components/3-Callout.mdx +11 -0
  103. package/website/docs/webdev/5-Components/4-Cards.mdx +13 -0
  104. package/website/docs/webdev/5-Components/5-Comment.mdx +12 -0
  105. package/website/docs/webdev/5-Components/6-Confirm.mdx +12 -0
  106. package/website/docs/webdev/5-Components/7-Divider.mdx +12 -0
  107. package/website/docs/webdev/5-Components/7-Forms/0-Checkbox.mdx +11 -0
  108. package/website/docs/webdev/5-Components/7-Forms/1-Dropdown.mdx +12 -0
  109. package/website/docs/webdev/5-Components/7-Forms/2-TextInput.mdx +11 -0
  110. package/website/docs/webdev/5-Components/7-Forms/3-Radio.mdx +12 -0
  111. package/website/docs/webdev/5-Components/7-Forms/4-TextArea.mdx +12 -0
  112. package/website/docs/webdev/5-Components/7-Forms/_category_.yml +8 -0
  113. package/website/docs/webdev/5-Components/8-Headings.mdx +12 -0
  114. package/website/docs/webdev/5-Components/9-Inpage-Navigation.mdx +12 -0
  115. package/website/docs/webdev/5-Components/_category_.yml +10 -0
  116. package/website/docs/webdev/7-Utilities/_category_.yml +8 -0
  117. package/website/docs/webdev/7-Utilities/intro.md +1 -0
  118. package/website/docs/webdev/8-Resources/_category_.yml +8 -0
  119. package/website/docs/webdev/8-Resources/developer-guidelines.md +149 -0
  120. package/website/docs/webdev/8-Resources/theming-guidelines.md +285 -0
  121. package/website/docs/webdev/_category_.yml +10 -0
  122. package/website/docs/webdev/md_components/accordion_components/api_markdown.md +25 -0
  123. package/website/docs/webdev/md_components/accordion_components/showcase_markdown.md +3 -0
  124. package/website/docs/webdev/md_components/accordion_components/usage_markdown.md +27 -0
  125. package/website/docs/webdev/md_components/breadcrumb_components/api_markdown.md +42 -0
  126. package/website/docs/webdev/md_components/breadcrumb_components/showcase_markdown.md +6 -0
  127. package/website/docs/webdev/md_components/breadcrumb_components/usage_markdown.md +18 -0
  128. package/website/docs/webdev/md_components/button_components/showcase_markdown.md +25 -0
  129. package/website/docs/webdev/md_components/button_components/usage_markdown.md +53 -0
  130. package/website/docs/webdev/md_components/callout_components/showcase_markdown.md +3 -0
  131. package/website/docs/webdev/md_components/callout_components/usage_markdown.md +20 -0
  132. package/website/docs/webdev/md_components/card_components/showcase_markdown.md +3 -0
  133. package/website/docs/webdev/md_components/card_components/usage_markdown.md +36 -0
  134. package/website/docs/webdev/md_components/charts_components/usage_markdown.md +18 -0
  135. package/website/docs/webdev/md_components/checkbox_components/showcase_markdown.md +17 -0
  136. package/website/docs/webdev/md_components/checkbox_components/usage_markdown.md +31 -0
  137. package/website/docs/webdev/md_components/comment_components/api_markdown.md +25 -0
  138. package/website/docs/webdev/md_components/comment_components/showcase_markdown.md +3 -0
  139. package/website/docs/webdev/md_components/comment_components/usage_markdown.md +1 -0
  140. package/website/docs/webdev/md_components/component_grid_components/api_markdown.md +25 -0
  141. package/website/docs/webdev/md_components/component_grid_components/showcase_markdown.md +9 -0
  142. package/website/docs/webdev/md_components/component_grid_components/usage_markdown.md +87 -0
  143. package/website/docs/webdev/md_components/confirm_components/api_markdown.md +25 -0
  144. package/website/docs/webdev/md_components/confirm_components/showcase_markdown.md +3 -0
  145. package/website/docs/webdev/md_components/confirm_components/usage_markdown.md +9 -0
  146. package/website/docs/webdev/md_components/content_components/usage_markdown.md +21 -0
  147. package/website/docs/webdev/md_components/dashboard_components/usage_markdown.md +20 -0
  148. package/website/docs/webdev/md_components/divider_components/showcase_markdown.md +5 -0
  149. package/website/docs/webdev/md_components/divider_components/usage_markdown.md +39 -0
  150. package/website/docs/webdev/md_components/dropdown_components/api_markdown.md +34 -0
  151. package/website/docs/webdev/md_components/dropdown_components/showcase_markdown.md +5 -0
  152. package/website/docs/webdev/md_components/dropdown_components/usage_markdown.md +24 -0
  153. package/website/docs/webdev/md_components/filters_components/usage_markdown.md +39 -0
  154. package/website/docs/webdev/md_components/grid_components/api_markdown.md +25 -0
  155. package/website/docs/webdev/md_components/grid_components/showcase_markdown.md +9 -0
  156. package/website/docs/webdev/md_components/grid_components/usage_markdown.md +89 -0
  157. package/website/docs/webdev/md_components/heading_components/api_markdown.md +25 -0
  158. package/website/docs/webdev/md_components/heading_components/showcase_markdown.md +3 -0
  159. package/website/docs/webdev/md_components/heading_components/usage_markdown.md +9 -0
  160. package/website/docs/webdev/md_components/iframe_component.mdx +14 -0
  161. package/website/docs/webdev/md_components/inpage_navigation_components/api_markdown.md +46 -0
  162. package/website/docs/webdev/md_components/inpage_navigation_components/showcase_markdown.md +3 -0
  163. package/website/docs/webdev/md_components/inpage_navigation_components/usage_markdown.md +18 -0
  164. package/website/docs/webdev/md_components/item_components/api_markdown.md +25 -0
  165. package/website/docs/webdev/md_components/item_components/showcase_markdown.md +9 -0
  166. package/website/docs/webdev/md_components/item_components/usage_markdown.md +1 -0
  167. package/website/docs/webdev/md_components/label_components/showcase_markdown.md +17 -0
  168. package/website/docs/webdev/md_components/label_components/usage_markdown.md +18 -0
  169. package/website/docs/webdev/md_components/labeled-icons_components/showcase_markdown.md +14 -0
  170. package/website/docs/webdev/md_components/labeled-icons_components/usage_markdown.md +13 -0
  171. package/website/docs/webdev/md_components/list_components/showcase_markdown.md +13 -0
  172. package/website/docs/webdev/md_components/list_components/usage_markdown.md +75 -0
  173. package/website/docs/webdev/md_components/loader_components/showcase_markdown.md +7 -0
  174. package/website/docs/webdev/md_components/loader_components/usage_markdown.md +13 -0
  175. package/website/docs/webdev/md_components/logo_components/api_markdown.md +25 -0
  176. package/website/docs/webdev/md_components/logo_components/showcase_markdown.md +3 -0
  177. package/website/docs/webdev/md_components/logo_components/usage_markdown.md +4 -0
  178. package/website/docs/webdev/md_components/maps_components/usage_markdown.md +64 -0
  179. package/website/docs/webdev/md_components/media_container_image_components/api_markdown.md +25 -0
  180. package/website/docs/webdev/md_components/media_container_image_components/showcase_markdown.md +7 -0
  181. package/website/docs/webdev/md_components/media_container_image_components/usage_markdown.md +10 -0
  182. package/website/docs/webdev/md_components/message_components/api_markdown.md +30 -0
  183. package/website/docs/webdev/md_components/message_components/showcase_markdown.md +17 -0
  184. package/website/docs/webdev/md_components/message_components/usage_markdown.md +22 -0
  185. package/website/docs/webdev/md_components/modal_components/api_markdown.md +36 -0
  186. package/website/docs/webdev/md_components/modal_components/showcase_markdown.md +3 -0
  187. package/website/docs/webdev/md_components/modal_components/usage_markdown.md +11 -0
  188. package/website/docs/webdev/md_components/page_header_components/api_markdown.md +25 -0
  189. package/website/docs/webdev/md_components/page_header_components/showcase_markdown.md +5 -0
  190. package/website/docs/webdev/md_components/page_header_components/usage_markdown.md +30 -0
  191. package/website/docs/webdev/md_components/pagination_components/api_markdown.md +36 -0
  192. package/website/docs/webdev/md_components/pagination_components/showcase_markdown.md +3 -0
  193. package/website/docs/webdev/md_components/pagination_components/usage_markdown.md +17 -0
  194. package/website/docs/webdev/md_components/popup_components/api_markdown.md +36 -0
  195. package/website/docs/webdev/md_components/popup_components/showcase_markdown.md +9 -0
  196. package/website/docs/webdev/md_components/popup_components/usage_markdown.md +15 -0
  197. package/website/docs/webdev/md_components/progress_components/api_markdown.md +36 -0
  198. package/website/docs/webdev/md_components/progress_components/showcase_markdown.md +13 -0
  199. package/website/docs/webdev/md_components/progress_components/usage_markdown.md +9 -0
  200. package/website/docs/webdev/md_components/quote_components/api_markdown.md +27 -0
  201. package/website/docs/webdev/md_components/quote_components/showcase_markdown.md +13 -0
  202. package/website/docs/webdev/md_components/quote_components/usage_markdown.md +8 -0
  203. package/website/docs/webdev/md_components/radio_components/api_markdown.md +34 -0
  204. package/website/docs/webdev/md_components/radio_components/showcase_markdown.md +15 -0
  205. package/website/docs/webdev/md_components/radio_components/usage_markdown.md +26 -0
  206. package/website/docs/webdev/md_components/searchbox_components/usage_markdown.md +15 -0
  207. package/website/docs/webdev/md_components/segment_components/api_markdown.md +36 -0
  208. package/website/docs/webdev/md_components/segment_components/showcase_markdown.md +3 -0
  209. package/website/docs/webdev/md_components/segment_components/usage_markdown.md +1 -0
  210. package/website/docs/webdev/md_components/site_footer_components/api_markdown.md +25 -0
  211. package/website/docs/webdev/md_components/site_footer_components/showcase_markdown.md +3 -0
  212. package/website/docs/webdev/md_components/site_footer_components/usage_markdown.md +26 -0
  213. package/website/docs/webdev/md_components/site_header_components/api_markdown.md +25 -0
  214. package/website/docs/webdev/md_components/site_header_components/showcase_markdown.md +3 -0
  215. package/website/docs/webdev/md_components/site_header_components/usage_markdown.md +51 -0
  216. package/website/docs/webdev/md_components/static/8px_spacing.png +0 -0
  217. package/website/docs/webdev/md_components/static/EEA_logo.png +0 -0
  218. package/website/docs/webdev/md_components/static/PXuse.png +0 -0
  219. package/website/docs/webdev/md_components/static/colors1.png +0 -0
  220. package/website/docs/webdev/md_components/static/columns1.png +0 -0
  221. package/website/docs/webdev/md_components/static/columns2.png +0 -0
  222. package/website/docs/webdev/md_components/static/columns3.png +0 -0
  223. package/website/docs/webdev/md_components/static/componenetPX.png +0 -0
  224. package/website/docs/webdev/md_components/static/desktop-mid-grid.png +0 -0
  225. package/website/docs/webdev/md_components/static/desktop_grid.png +0 -0
  226. package/website/docs/webdev/md_components/static/font-size1.png +0 -0
  227. package/website/docs/webdev/md_components/static/font-size2.png +0 -0
  228. package/website/docs/webdev/md_components/static/grid1.png +0 -0
  229. package/website/docs/webdev/md_components/static/grid2.png +0 -0
  230. package/website/docs/webdev/md_components/static/grid3.png +0 -0
  231. package/website/docs/webdev/md_components/static/grid4.png +0 -0
  232. package/website/docs/webdev/md_components/static/height150.png +0 -0
  233. package/website/docs/webdev/md_components/static/layoutPX.png +0 -0
  234. package/website/docs/webdev/md_components/static/line-height.png +0 -0
  235. package/website/docs/webdev/md_components/static/mobile-mid-grid.png +0 -0
  236. package/website/docs/webdev/md_components/static/mobile_grid.png +0 -0
  237. package/website/docs/webdev/md_components/static/spacing1.png +0 -0
  238. package/website/docs/webdev/md_components/static/spacing2.png +0 -0
  239. package/website/docs/webdev/md_components/static/tablet-mid-grid.png +0 -0
  240. package/website/docs/webdev/md_components/static/tablet_grid.png +0 -0
  241. package/website/docs/webdev/md_components/statistic_components/api_markdown.md +36 -0
  242. package/website/docs/webdev/md_components/statistic_components/showcase_markdown.md +8 -0
  243. package/website/docs/webdev/md_components/statistic_components/usage_markdown.md +1 -0
  244. package/website/docs/webdev/md_components/suggestions_components/usage_markdown.md +13 -0
  245. package/website/docs/webdev/md_components/tab_component.mdx +21 -0
  246. package/website/docs/webdev/md_components/tab_components/api_markdown.md +29 -0
  247. package/website/docs/webdev/md_components/tab_components/showcase_markdown.md +9 -0
  248. package/website/docs/webdev/md_components/tab_components/usage_markdown.md +26 -0
  249. package/website/docs/webdev/md_components/table_components/api_markdown.md +27 -0
  250. package/website/docs/webdev/md_components/table_components/showcase_markdown.md +3 -0
  251. package/website/docs/webdev/md_components/table_components/usage_markdown.md +22 -0
  252. package/website/docs/webdev/md_components/tags_components/showcase_markdown.md +6 -0
  253. package/website/docs/webdev/md_components/tags_components/usage_markdown.md +11 -0
  254. package/website/docs/webdev/md_components/testimonial_components/api_markdown.md +27 -0
  255. package/website/docs/webdev/md_components/testimonial_components/showcase_markdown.md +7 -0
  256. package/website/docs/webdev/md_components/testimonial_components/usage_markdown.md +7 -0
  257. package/website/docs/webdev/md_components/text_input_components/showcase_markdown.md +14 -0
  258. package/website/docs/webdev/md_components/text_input_components/usage_markdown.md +32 -0
  259. package/website/docs/webdev/md_components/textarea_components/api_markdown.md +34 -0
  260. package/website/docs/webdev/md_components/textarea_components/showcase_markdown.md +5 -0
  261. package/website/docs/webdev/md_components/textarea_components/usage_markdown.md +16 -0
  262. package/website/docs/webdev/md_components/timeline_components/api_markdown.md +27 -0
  263. package/website/docs/webdev/md_components/timeline_components/showcase_markdown.md +17 -0
  264. package/website/docs/webdev/md_components/timeline_components/usage_markdown.md +2 -0
  265. package/website/docusaurus.config.js +127 -0
  266. package/website/package.json +52 -0
  267. package/website/sidebars.js +24 -0
  268. package/website/src/components/HomepageFeatures.js +71 -0
  269. package/website/src/components/HomepageFeatures.module.css +13 -0
  270. package/website/src/css/custom.css +226 -0
  271. package/website/src/pages/index.js +43 -0
  272. package/website/src/pages/index.module.css +25 -0
  273. package/website/static/.nojekyll +0 -0
  274. package/website/static/fonts/roboto/LICENSE.txt +202 -0
  275. package/website/static/fonts/roboto/Roboto-Black.ttf +0 -0
  276. package/website/static/fonts/roboto/Roboto-BlackItalic.ttf +0 -0
  277. package/website/static/fonts/roboto/Roboto-Bold.ttf +0 -0
  278. package/website/static/fonts/roboto/Roboto-BoldItalic.ttf +0 -0
  279. package/website/static/fonts/roboto/Roboto-Italic.ttf +0 -0
  280. package/website/static/fonts/roboto/Roboto-Light.ttf +0 -0
  281. package/website/static/fonts/roboto/Roboto-LightItalic.ttf +0 -0
  282. package/website/static/fonts/roboto/Roboto-Medium.ttf +0 -0
  283. package/website/static/fonts/roboto/Roboto-MediumItalic.ttf +0 -0
  284. package/website/static/fonts/roboto/Roboto-Regular.ttf +0 -0
  285. package/website/static/fonts/roboto/Roboto-Thin.ttf +0 -0
  286. package/website/static/fonts/roboto/Roboto-ThinItalic.ttf +0 -0
  287. package/website/static/img/eea_icon.png +0 -0
  288. package/website/static/img/favicon.ico +0 -0
  289. package/website/static/img/logo.svg +1 -0
  290. package/website/static/img/undraw_add_information_j2wg.svg +1 -0
  291. package/website/static/img/undraw_add_post_re_174w.svg +1 -0
  292. package/website/static/img/undraw_all_the_data_re_hh4w.svg +1 -0
  293. package/website/static/img/undraw_book_lover_re_rwjy.svg +1 -0
  294. package/website/static/img/undraw_books_re_8gea.svg +1 -0
  295. package/website/static/img/undraw_content_creator_re_pt5b.svg +1 -0
  296. package/website/static/img/undraw_data_re_80ws.svg +1 -0
  297. package/website/static/img/undraw_data_trends_re_2cdy.svg +1 -0
  298. package/website/static/img/undraw_design_data_re_0s26.svg +1 -0
  299. package/website/static/img/undraw_designer_girl_re_h54c.svg +1 -0
  300. package/website/static/img/undraw_designer_life_re_6ywf.svg +1 -0
  301. package/website/static/img/undraw_designer_re_5v95.svg +1 -0
  302. package/website/static/img/undraw_dev_focus_re_6iwt.svg +1 -0
  303. package/website/static/img/undraw_developer_activity_re_39tg.svg +1 -0
  304. package/website/static/img/undraw_docusaurus_mountain.svg +170 -0
  305. package/website/static/img/undraw_docusaurus_react.svg +169 -0
  306. package/website/static/img/undraw_docusaurus_tree.svg +1 -0
  307. package/website/static/img/undraw_education_f8ru.svg +1 -0
  308. package/website/static/img/undraw_my_documents_re_13dc.svg +1 -0
  309. package/website/static/img/undraw_online_articles_re_yrkj.svg +1 -0
  310. package/website/static/img/undraw_personal_notebook_re_d7dc.svg +1 -0
  311. package/website/static/img/undraw_programmer_re_owql.svg +1 -0
  312. package/website/static/img/undraw_programming_re_kg9v.svg +1 -0
  313. package/website/static/img/undraw_proud_coder_re_exuy.svg +1 -0
  314. package/website/static/img/undraw_static_website_re_x70h.svg +1 -0
  315. package/website/static/img/undraw_typewriter_re_u9i2.svg +1 -0
  316. package/website/static/img/undraw_visual_data_re_mxxo.svg +1 -0
  317. package/website/static/img/undraw_web_development_0l6v.svg +1 -0
  318. package/cypress.json +0 -17
@@ -2,11 +2,7 @@ const defaultBabel = require('@plone/volto/babel');
2
2
 
3
3
  function applyDefault(api) {
4
4
  const voltoBabel = defaultBabel(api);
5
- voltoBabel.plugins.push(
6
- '@babel/plugin-transform-modules-commonjs',
7
- 'transform-class-properties',
8
- 'istanbul',
9
- );
5
+ voltoBabel.plugins.push('istanbul');
10
6
  return voltoBabel;
11
7
  }
12
8
 
@@ -0,0 +1 @@
1
+ module.exports = require('@plone/volto/babel');
@@ -1,16 +1,15 @@
1
1
  const fs = require('fs');
2
2
  const path = require('path');
3
3
 
4
- const projectRootPath = fs.realpathSync('./project'); // __dirname
4
+ const projectRootPath = fs.realpathSync('./project'); // __dirname
5
5
  const packageJson = require(path.join(projectRootPath, 'package.json'));
6
- const jsConfig = require(path.join(projectRootPath, 'jsconfig.json'))
7
- .compilerOptions;
6
+ const jsConfig = require(path.join(projectRootPath, 'jsconfig.json')).compilerOptions;
8
7
 
9
8
  const pathsConfig = jsConfig.paths;
10
9
 
11
10
  let voltoPath = path.join(projectRootPath, 'node_modules/@plone/volto');
12
11
 
13
- Object.keys(pathsConfig).forEach((pkg) => {
12
+ Object.keys(pathsConfig).forEach(pkg => {
14
13
  if (pkg === '@plone/volto') {
15
14
  voltoPath = `./${jsConfig.baseUrl}/${pathsConfig[pkg][0]}`;
16
15
  }
@@ -19,7 +18,7 @@ const AddonConfigurationRegistry = require(`${voltoPath}/addon-registry.js`);
19
18
  const reg = new AddonConfigurationRegistry(projectRootPath);
20
19
 
21
20
  // Extends ESlint configuration for adding the aliases to `src` directories in Volto addons
22
- const addonAliases = Object.keys(reg.packages).map((o) => [
21
+ const addonAliases = Object.keys(reg.packages).map(o => [
23
22
  o,
24
23
  reg.packages[o].modulePath,
25
24
  ]);
package/CHANGELOG.md CHANGED
@@ -4,6 +4,23 @@ All notable changes to this project will be documented in this file. Dates are d
4
4
 
5
5
  Generated by [`auto-changelog`](https://github.com/CookPete/auto-changelog).
6
6
 
7
+ ### [1.0.0-alpha.2](https://github.com/eea/volto-eea-design-system/compare/1.0.0-alpha.1...1.0.0-alpha.2) - 28 October 2022
8
+
9
+ #### :nail_care: Enhancements
10
+
11
+ - refactor(volto-slate): Upgrade to @plone/volto-slate - refs #153447 [Alin Voinea - [`853d9d1`](https://github.com/eea/volto-eea-design-system/commit/853d9d189dd17859e3999fbf53507df7083eefb4)]
12
+ - change(documentation): grammarly proof-read suggestions [David Ichim - [`9f609be`](https://github.com/eea/volto-eea-design-system/commit/9f609be3758673b0d479d99baee69e7238a5b7f9)]
13
+
14
+ #### :house: Internal changes
15
+
16
+ - chore(docs): Back to dev [Alin Voinea - [`e33113a`](https://github.com/eea/volto-eea-design-system/commit/e33113a0541d082d93f61c7494bcce2ac5f79a8c)]
17
+
18
+ #### :hammer_and_wrench: Others
19
+
20
+ - test(cypress): Upgrade to Cypress 10 / Razzle 4 [Alin Voinea - [`c1c1f4b`](https://github.com/eea/volto-eea-design-system/commit/c1c1f4b280945a9f0b77eb0b59de003c1360bac9)]
21
+ - Update dependencies [Alin Voinea - [`ee30a2b`](https://github.com/eea/volto-eea-design-system/commit/ee30a2bad3769163d3ab4d996c0a7be8fcb4bc6e)]
22
+ - add announcement bar, showing that EEA DS is WIP [Antonio De Marinis - [`e14aeac`](https://github.com/eea/volto-eea-design-system/commit/e14aeac02cf922493aff4f83c8d80af95cc63eb9)]
23
+ - more explanations [Antonio De Marinis - [`a8b2272`](https://github.com/eea/volto-eea-design-system/commit/a8b22728659125ba6ea6fb41f29571a8f1b9953b)]
7
24
  ### [1.0.0-alpha.1](https://github.com/eea/volto-eea-design-system/compare/0.9.5...1.0.0-alpha.1) - 20 October 2022
8
25
 
9
26
  #### :nail_care: Enhancements
package/README.md CHANGED
@@ -27,39 +27,6 @@ This package provides the following features:
27
27
 
28
28
  ## Getting started
29
29
 
30
- ### Try volto-eea-design-system with Docker
31
-
32
- 1. Get the latest Docker images
33
-
34
- ```
35
- docker pull plone
36
- docker pull plone/volto
37
- ```
38
-
39
- 2. Start Plone backend
40
- ```
41
- docker run -v $(pwd)/var:/data -e SITE=Plone -p 8080:8080 -e PROFILES="profile-plone.restapi:blocks" --name eea-plone -it --rm plone fg
42
- ```
43
- 3. Wait until you get the following message:
44
-
45
- ```
46
- Serving on http://0.0.0.0:8080
47
- ```
48
-
49
- 4. Start Volto frontend
50
-
51
- ```
52
- docker run -it --rm -p 3000:3000 --link eea-plone -e ADDONS="@eeacms/volto-eea-design-system" plone/volto
53
- ```
54
-
55
- 5. Wait until you get the following message:
56
-
57
- ```
58
- Volto started at http://localhost:8080
59
- ```
60
-
61
- 6. Go to http://localhost:3000, login with admin:admin if you need to edit the site.
62
-
63
30
  ### Add volto-eea-design-system to your Volto project
64
31
 
65
32
  1. Make sure you have a [Plone backend](https://plone.org/download) up-and-running at http://localhost:8080/Plone
@@ -107,78 +74,7 @@ Checkout the docs found within the [mockups](https://github.com/eea/volto-eea-de
107
74
 
108
75
  ## Release
109
76
 
110
- ### Automatic release using Jenkins
111
-
112
- * The automatic release is started by creating a [Pull Request](../../compare/master...develop) from `develop` to `master`. The pull request status checks correlated to the branch and PR Jenkins jobs need to be processed successfully. 1 review from a github user with rights is mandatory.
113
- * It runs on every commit on `master` branch, which is protected from direct commits, only allowing pull request merge commits.
114
- * The automatic release is done by [Jenkins](https://ci.eionet.europa.eu). The status of the release job can be seen both in the Readme.md badges and the green check/red cross/yellow circle near the last commit information. If you click on the icon, you will have the list of checks that were run. The `continuous-integration/jenkins/branch` link goes to the Jenkins job execution webpage.
115
- * Automated release scripts are located in the `eeacms/gitflow` docker image, specifically [js-release.sh](https://github.com/eea/eea.docker.gitflow/blob/master/src/js-release.sh) script. It uses the `release-it` tool.
116
- * As long as a PR request is open from develop to master, the PR Jenkins job will automatically re-create the CHANGELOG.md and package.json files to be production-ready.
117
- * The version format must be MAJOR.MINOR.PATCH. By default, next release is set to next minor version (with patch 0).
118
- * You can manually change the version in `package.json`. The new version must not be already present in the tags/releases of the repository, otherwise it will be automatically increased by the script. Any changes to the version will trigger a `CHANGELOG.md` re-generation.
119
- * Automated commits and commits with [JENKINS] or [YARN] in the commit log are excluded from `CHANGELOG.md` file.
120
-
121
- ### Manual release from the develop branch ( beta release )
122
-
123
- #### Installation and configuration of release-it
124
-
125
- You need to first install the [release-it](https://github.com/release-it/release-it) client.
126
-
127
- ```
128
- npm install -g release-it
129
- ```
130
-
131
- Release-it uses the configuration written in the [`.release-it.json`](./.release-it.json) file located in the root of the repository.
132
-
133
- Release-it is a tool that automates 4 important steps in the release process:
134
-
135
- 1. Version increase in `package.json` ( increased from the current version in `package.json`)
136
- 2. `CHANGELOG.md` automatic generation from commit messages ( grouped by releases )
137
- 3. GitHub release on the commit with the changelog and package.json modification on the develop branch
138
- 4. NPM release ( by default it's disabled, but can be enabled in the configuration file )
139
-
140
- To configure the authentification, you need to export GITHUB_TOKEN for [GitHub](https://github.com/settings/tokens)
141
-
142
- ```
143
- export GITHUB_TOKEN=XXX-XXXXXXXXXXXXXXXXXXXXXX
144
- ```
145
-
146
- To configure npm, you can use the `npm login` command or use a configuration file with a TOKEN :
147
-
148
- ```
149
- echo "//registry.npmjs.org/:_authToken=YYYYYYYYYYYYYYYYYYYYYYYYYYYYYY" > .npmrc
150
- ```
151
-
152
- #### Using release-it tool
153
-
154
- There are 3 yarn scripts that can be run to do the release
155
-
156
- ##### yarn release-beta
157
-
158
- Automatically calculates and presents 3 beta versions - patch, minor and major for you to choose ( or Other for manual input).
159
-
160
- ```
161
- ? Select increment (next version):
162
- ❯ prepatch (0.1.1-beta.0)
163
- preminor (0.2.0-beta.0)
164
- premajor (1.0.0-beta.0)
165
- Other, please specify...
166
- ```
167
-
168
- ##### yarn release-major-beta
169
-
170
- Same as `yarn release-beta`, but with premajor version pre-selected.
171
-
172
- ##### yarn release
173
-
174
- Generic command, does not automatically add the `beta` to version, but you can still manually write it if you choose Other.
175
-
176
- #### Important notes
177
-
178
- > Do not use release-it tool on master branch, the commit on CHANGELOG.md file and the version increase in the package.json file can't be done without a PULL REQUEST.
179
-
180
- > Do not keep Pull Requests from develop to master branches open when you are doing beta releases from the develop branch. As long as a PR to master is open, an automatic script will run on every commit and will update both the version and the changelog to a production-ready state - ( MAJOR.MINOR.PATCH mandatory format for version).
181
-
77
+ See [RELEASE.md](https://github.com/eea/volto-eea-design-system/blob/master/RELEASE.md).
182
78
 
183
79
  ## How to contribute
184
80
 
package/RELEASE.md ADDED
@@ -0,0 +1,74 @@
1
+ ## Release
2
+
3
+ ### Automatic release using Jenkins
4
+
5
+ * The automatic release is started by creating a [Pull Request](../../compare/master...develop) from `develop` to `master`. The pull request status checks correlated to the branch and PR Jenkins jobs need to be processed successfully. 1 review from a github user with rights is mandatory.
6
+ * It runs on every commit on `master` branch, which is protected from direct commits, only allowing pull request merge commits.
7
+ * The automatic release is done by [Jenkins](https://ci.eionet.europa.eu). The status of the release job can be seen both in the Readme.md badges and the green check/red cross/yellow circle near the last commit information. If you click on the icon, you will have the list of checks that were run. The `continuous-integration/jenkins/branch` link goes to the Jenkins job execution webpage.
8
+ * Automated release scripts are located in the `eeacms/gitflow` docker image, specifically [js-release.sh](https://github.com/eea/eea.docker.gitflow/blob/master/src/js-release.sh) script. It uses the `release-it` tool.
9
+ * As long as a PR request is open from develop to master, the PR Jenkins job will automatically re-create the CHANGELOG.md and package.json files to be production-ready.
10
+ * The version format must be MAJOR.MINOR.PATCH. By default, next release is set to next minor version (with patch 0).
11
+ * You can manually change the version in `package.json`. The new version must not be already present in the tags/releases of the repository, otherwise it will be automatically increased by the script. Any changes to the version will trigger a `CHANGELOG.md` re-generation.
12
+ * Automated commits and commits with [JENKINS] or [YARN] in the commit log are excluded from `CHANGELOG.md` file.
13
+
14
+ ### Manual release from the develop branch ( beta release )
15
+
16
+ #### Installation and configuration of release-it
17
+
18
+ You need to first install the [release-it](https://github.com/release-it/release-it) client.
19
+
20
+ ```
21
+ npm install -g release-it
22
+ ```
23
+
24
+ Release-it uses the configuration written in the [`.release-it.json`](./.release-it.json) file located in the root of the repository.
25
+
26
+ Release-it is a tool that automates 4 important steps in the release process:
27
+
28
+ 1. Version increase in `package.json` ( increased from the current version in `package.json`)
29
+ 2. `CHANGELOG.md` automatic generation from commit messages ( grouped by releases )
30
+ 3. GitHub release on the commit with the changelog and package.json modification on the develop branch
31
+ 4. NPM release ( by default it's disabled, but can be enabled in the configuration file )
32
+
33
+ To configure the authentification, you need to export GITHUB_TOKEN for [GitHub](https://github.com/settings/tokens)
34
+
35
+ ```
36
+ export GITHUB_TOKEN=XXX-XXXXXXXXXXXXXXXXXXXXXX
37
+ ```
38
+
39
+ To configure npm, you can use the `npm login` command or use a configuration file with a TOKEN :
40
+
41
+ ```
42
+ echo "//registry.npmjs.org/:_authToken=YYYYYYYYYYYYYYYYYYYYYYYYYYYYYY" > .npmrc
43
+ ```
44
+
45
+ #### Using release-it tool
46
+
47
+ There are 3 yarn scripts that can be run to do the release
48
+
49
+ ##### yarn release-beta
50
+
51
+ Automatically calculates and presents 3 beta versions - patch, minor and major for you to choose ( or Other for manual input).
52
+
53
+ ```
54
+ ? Select increment (next version):
55
+ ❯ prepatch (0.1.1-beta.0)
56
+ preminor (0.2.0-beta.0)
57
+ premajor (1.0.0-beta.0)
58
+ Other, please specify...
59
+ ```
60
+
61
+ ##### yarn release-major-beta
62
+
63
+ Same as `yarn release-beta`, but with premajor version pre-selected.
64
+
65
+ ##### yarn release
66
+
67
+ Generic command, does not automatically add the `beta` to version, but you can still manually write it if you choose Other.
68
+
69
+ #### Important notes
70
+
71
+ > Do not use release-it tool on master branch, the commit on CHANGELOG.md file and the version increase in the package.json file can't be done without a PULL REQUEST.
72
+
73
+ > Do not keep Pull Requests from develop to master branches open when you are doing beta releases from the develop branch. As long as a PR to master is open, an automatic script will run on every commit and will update both the version and the changelog to a production-ready state - ( MAJOR.MINOR.PATCH mandatory format for version).
74
+
@@ -0,0 +1,17 @@
1
+ module.exports = function (api) {
2
+ api.cache(true);
3
+ const presets = ['razzle'];
4
+ const plugins = [
5
+ [
6
+ 'react-intl', // React Intl extractor, required for the whole i18n infrastructure to work
7
+ {
8
+ messagesDir: './build/messages/',
9
+ },
10
+ ],
11
+ ];
12
+
13
+ return {
14
+ plugins,
15
+ presets,
16
+ };
17
+ };
@@ -0,0 +1,26 @@
1
+ const { defineConfig } = require('cypress');
2
+
3
+ module.exports = defineConfig({
4
+ viewportWidth: 1280,
5
+ defaultCommandTimeout: 8888,
6
+ chromeWebSecurity: false,
7
+ reporter: 'junit',
8
+ video: true,
9
+ retries: {
10
+ runMode: 8,
11
+ openMode: 0,
12
+ },
13
+ reporterOptions: {
14
+ mochaFile: 'cypress/reports/cypress-[hash].xml',
15
+ jenkinsMode: true,
16
+ toConsole: true,
17
+ },
18
+ e2e: {
19
+ setupNodeEvents(on, config) {
20
+ // e2e testing node events setup code
21
+ require('@cypress/code-coverage/task')(on, config);
22
+ return config;
23
+ },
24
+ baseUrl: 'http://localhost:3000',
25
+ },
26
+ });
@@ -9,18 +9,18 @@ module.exports = {
9
9
  '@plone/volto/babel': '<rootDir>/node_modules/@plone/volto/babel',
10
10
  '@plone/volto/(.*)$': '<rootDir>/node_modules/@plone/volto/src/$1',
11
11
  '@package/(.*)$': '<rootDir>/src/$1',
12
+ '@root/(.*)$': '<rootDir>/src/$1',
12
13
  '@plone/volto-quanta/(.*)$': '<rootDir>/src/addons/volto-quanta/src/$1',
13
14
  '@eeacms/(.*?)/(.*)$': '<rootDir>/src/addons/$1/src/$2',
14
- 'volto-slate/(.*)$': '<rootDir>/src/addons/volto-slate/src/$1',
15
+ '@plone/volto-slate':
16
+ '<rootDir>/node_modules/@plone/volto/packages/volto-slate/src',
15
17
  '~/(.*)$': '<rootDir>/src/$1',
16
18
  'load-volto-addons':
17
19
  '<rootDir>/node_modules/@plone/volto/jest-addons-loader.js',
20
+ '\\.(css|less|scss|sass)$': 'identity-obj-proxy',
18
21
  },
19
22
  transform: {
20
23
  '^.+\\.js(x)?$': 'babel-jest',
21
- '^.+\\.css$': 'jest-css-modules',
22
- '^.+\\.less$': 'jest-css-modules',
23
- '^.+\\.scss$': 'jest-css-modules',
24
24
  '^.+\\.(png)$': 'jest-file',
25
25
  '^.+\\.(jpg)$': 'jest-file',
26
26
  '^.+\\.(svg)$': './node_modules/@plone/volto/jest-svgsystem-transform.js',
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@eeacms/volto-eea-design-system",
3
- "version": "1.0.0-alpha.1",
3
+ "version": "1.0.0-alpha.2",
4
4
  "description": "@eeacms/volto-eea-design-system: Volto add-on",
5
5
  "main": "src/index.js",
6
6
  "author": "European Environment Agency: IDM2 A-Team",
@@ -26,9 +26,10 @@
26
26
  "react-countup": "^6.3.0"
27
27
  },
28
28
  "devDependencies": {
29
- "md5": "^2.3.0",
30
- "@cypress/code-coverage": "^3.9.5",
31
- "babel-plugin-transform-class-properties": "^6.24.1"
29
+ "@plone/scripts": "*",
30
+ "@cypress/code-coverage": "^3.10.0",
31
+ "babel-plugin-transform-class-properties": "^6.24.1",
32
+ "md5": "^2.3.0"
32
33
  },
33
34
  "scripts": {
34
35
  "release": "release-it",
@@ -37,16 +38,16 @@
37
38
  "bootstrap": "npm install -g ejs; npm link ejs; node bootstrap",
38
39
  "test": "make test",
39
40
  "test:fix": "make test-update",
40
- "i18n": "rm -rf build/messages && NODE_ENV=production node src/i18n.js",
41
41
  "pre-commit": "yarn stylelint:fix && yarn prettier:fix && yarn lint:fix",
42
- "stylelint": "../../../node_modules/stylelint/bin/stylelint.js --allow-empty-input 'src/**/*.{css,less}'",
43
- "stylelint:overrides": "../../../node_modules/.bin/stylelint --allow-empty-input 'theme/**/*.overrides' 'src/**/*.overrides'",
44
- "stylelint:fix": "yarn stylelint --fix && yarn stylelint:overrides --fix",
45
- "prettier": "../../../node_modules/.bin/prettier --single-quote --check 'src/**/*.{js,jsx,json,css,less,md}'",
46
- "prettier:fix": "../../../node_modules/.bin/prettier --single-quote --write 'src/**/*.{js,jsx,json,css,less,md}'",
47
- "lint": "../../../node_modules/eslint/bin/eslint.js --max-warnings=0 'src/**/*.{js,jsx}'",
48
- "lint:fix": "../../../node_modules/eslint/bin/eslint.js --fix 'src/**/*.{js,jsx}'; fi",
49
- "cypress:run": "../../../node_modules/cypress/bin/cypress run",
50
- "cypress:open": "../../../node_modules/cypress/bin/cypress open"
42
+ "stylelint": "make stylelint",
43
+ "stylelint:overrides": "make stylelint-overrides",
44
+ "stylelint:fix": "make stylelint-fix",
45
+ "prettier": "make prettier",
46
+ "prettier:fix": "make prettier-fix",
47
+ "lint": "make lint",
48
+ "lint:fix": "make lint-fix",
49
+ "i18n": "make i18n",
50
+ "cypress:run": "make cypress-run",
51
+ "cypress:open": "make cypress-open"
51
52
  }
52
53
  }
@@ -0,0 +1,167 @@
1
+ import React, { useState } from 'react';
2
+ import { Accordion, Icon, Container } from 'semantic-ui-react';
3
+
4
+ export default {
5
+ title: 'Components/Accordion',
6
+ component: Accordion,
7
+ parameters: {
8
+ actions: {
9
+ handles: ['click'],
10
+ },
11
+ },
12
+ argTypes: {
13
+ variant: {
14
+ name: 'Variation',
15
+ defaultValue: 'primary',
16
+ options: ['default', 'primary', 'secondary', 'tertiary'],
17
+ control: { type: 'select' },
18
+ description: 'call to action variation',
19
+ table: {
20
+ defaultValue: { summary: 'primary' },
21
+ type: { summary: 'string' },
22
+ },
23
+ },
24
+ toggle1: {
25
+ description: 'Text of the accordion toggler',
26
+ table: {
27
+ type: {
28
+ summary: 'string',
29
+ },
30
+ defaultValue: {
31
+ summary: '""',
32
+ },
33
+ },
34
+ },
35
+ toggle2: {
36
+ description: 'Text of the accordion toggler',
37
+ table: {
38
+ type: {
39
+ summary: 'string',
40
+ },
41
+ defaultValue: {
42
+ summary: '""',
43
+ },
44
+ },
45
+ },
46
+ toggle3: {
47
+ description: 'Text of the accordion toggler',
48
+ table: {
49
+ type: {
50
+ summary: 'string',
51
+ },
52
+ defaultValue: {
53
+ summary: '""',
54
+ },
55
+ },
56
+ },
57
+ content1: {
58
+ description: 'Text of the hidden content',
59
+ table: {
60
+ type: {
61
+ summary: 'array',
62
+ },
63
+ defaultValue: {
64
+ summary: '""',
65
+ },
66
+ },
67
+ },
68
+ content2: {
69
+ description: 'Text of the hidden content',
70
+ table: {
71
+ type: {
72
+ summary: 'array',
73
+ },
74
+ defaultValue: {
75
+ summary: '""',
76
+ },
77
+ },
78
+ },
79
+ content3: {
80
+ description: 'Text of the hidden content',
81
+ table: {
82
+ type: {
83
+ summary: 'array',
84
+ },
85
+ defaultValue: {
86
+ summary: '""',
87
+ },
88
+ },
89
+ },
90
+ },
91
+ };
92
+
93
+ function AccordionContainer({ ...args }) {
94
+ const [activeIndex, setActiveIndex] = useState();
95
+
96
+ const toggleOpenAccordion = (e, titleProps) => {
97
+ const { index } = titleProps;
98
+ const newIndex = activeIndex === index ? -1 : index;
99
+
100
+ setActiveIndex(newIndex);
101
+ };
102
+
103
+ return (
104
+ <Container>
105
+ <Accordion className={args.variant}>
106
+ <Accordion.Title
107
+ active={activeIndex === 0}
108
+ index={0}
109
+ onClick={toggleOpenAccordion}
110
+ >
111
+ {args.toggle1}
112
+ <Icon className="ri-arrow-down-s-line" />
113
+ </Accordion.Title>
114
+ <Accordion.Content active={activeIndex === 0}>
115
+ {args.content1.length > 0 &&
116
+ args.content1.map((item, index) => <p key={index}>{item}</p>)}
117
+ </Accordion.Content>
118
+
119
+ <Accordion.Title
120
+ active={activeIndex === 1}
121
+ index={1}
122
+ onClick={toggleOpenAccordion}
123
+ >
124
+ {args.toggle2}
125
+ <Icon className="ri-arrow-down-s-line" />
126
+ </Accordion.Title>
127
+ <Accordion.Content active={activeIndex === 1}>
128
+ {args.content2.length > 0 &&
129
+ args.content2.map((item, index) => <p key={index}>{item}</p>)}
130
+ </Accordion.Content>
131
+
132
+ <Accordion.Title
133
+ active={activeIndex === 2}
134
+ index={2}
135
+ onClick={toggleOpenAccordion}
136
+ >
137
+ {args.toggle3}
138
+ <Icon className="ri-arrow-down-s-line" />
139
+ </Accordion.Title>
140
+ <Accordion.Content active={activeIndex === 2}>
141
+ {args.content3.length > 0 &&
142
+ args.content3.map((item, index) => <p key={index}>{item}</p>)}
143
+ </Accordion.Content>
144
+ </Accordion>
145
+ </Container>
146
+ );
147
+ }
148
+
149
+ const Template = (args) => <AccordionContainer {...args}></AccordionContainer>;
150
+
151
+ export const Default = Template.bind({});
152
+ Default.args = {
153
+ variant: 'secondary',
154
+ toggle1: 'Water and marine environment',
155
+ toggle2: 'Resource efficiency and waste',
156
+ toggle3: 'Air pollution',
157
+ content1: [
158
+ 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Urna nisi mauris enim felis eget id sed tristique. At laoreet ligula pretium, pulvinar. Accumsan egestas ultricies erat sed. Eget non quis libero, odio elementum lectus lectus ullamcorper elit. In quam pulvinar amet, habitasse mi lorem nunc. Sed sed elementum est purus elementum eget. Elementum tortor at nulla nunc, tempor rhoncus, bibendum. Massa mauris, mauris, vel elementum adipiscing.',
159
+ ],
160
+ content2: [
161
+ 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Urna nisi mauris enim felis eget id sed tristique. At laoreet ligula pretium, pulvinar. Accumsan egestas ultricies erat sed. Eget non quis libero, odio elementum lectus lectus ullamcorper elit. In quam pulvinar amet, habitasse mi lorem nunc. Sed sed elementum est purus elementum eget. Elementum tortor at nulla nunc, tempor rhoncus, bibendum. Massa mauris, mauris, vel elementum adipiscing.',
162
+ ],
163
+ content3: [
164
+ 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Urna nisi mauris enim felis eget id sed tristique. At laoreet ligula pretium, pulvinar. Accumsan egestas ultricies erat sed. Eget non quis libero, odio elementum lectus lectus ullamcorper elit. In quam pulvinar amet, habitasse mi lorem nunc. Sed sed elementum est purus elementum eget. Elementum tortor at nulla nunc, tempor rhoncus, bibendum. Massa mauris, mauris, vel elementum adipiscing.',
165
+ 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Urna nisi mauris enim felis eget id sed tristique. At laoreet ligula pretium, pulvinar. Accumsan egestas ultricies erat sed. Eget non quis libero, odio elementum lectus lectus ullamcorper elit. In quam pulvinar amet, habitasse mi lorem nunc. Sed sed elementum est purus elementum eget. Elementum tortor at nulla nunc, tempor rhoncus, bibendum. Massa mauris, mauris, vel elementum adipiscing.',
166
+ ],
167
+ };
@@ -0,0 +1,117 @@
1
+ import React from 'react';
2
+ import { Comment, Header } from 'semantic-ui-react';
3
+
4
+ export default {
5
+ title: 'Components/Comment',
6
+ component: CommentEEA,
7
+ argTypes: {
8
+ title: {
9
+ description: 'comment section header',
10
+ table: {
11
+ type: { summary: 'string' },
12
+ defaultValue: { summary: ' "" ' },
13
+ },
14
+ },
15
+ comments: {
16
+ description: 'comments data',
17
+ table: {
18
+ type: { summary: 'Object' },
19
+ defaultValue: { summary: ' "" ' },
20
+ },
21
+ },
22
+ threaded: {
23
+ description: 'showing the relationship between comments',
24
+ table: {
25
+ type: { summary: 'boolean' },
26
+ defaultValue: { summary: false },
27
+ },
28
+ },
29
+ minimal: {
30
+ description: 'hide extra information',
31
+ table: {
32
+ type: { summary: 'boolean' },
33
+ defaultValue: { summary: false },
34
+ },
35
+ },
36
+ },
37
+ };
38
+
39
+ function CommentEEA({ title, comments, threaded, minimal, size }) {
40
+ return (
41
+ <Comment.Group threaded={threaded} minimal={minimal} size={size}>
42
+ <Header dividing>{title}</Header>
43
+
44
+ {comments.map((comment, comIndex) => (
45
+ <Comment key={comIndex}>
46
+ <Comment.Avatar src={comment.src} alt="user avatar" />
47
+ <Comment.Content>
48
+ <Comment.Author as="a">{comment.author}</Comment.Author>
49
+ <Comment.Metadata>
50
+ <div>{comment.time}</div>
51
+ </Comment.Metadata>
52
+ <Comment.Text>{comment.text}</Comment.Text>
53
+ <Comment.Actions>
54
+ <Comment.Action>Reply</Comment.Action>
55
+ </Comment.Actions>
56
+ </Comment.Content>
57
+ <Comment.Group>
58
+ {comment.replies.map((reply, repIndex) => (
59
+ <Comment key={repIndex}>
60
+ <Comment.Avatar src={comment.src} alt="user avatar" />
61
+ <Comment.Content>
62
+ <Comment.Author as="a">{reply.author}</Comment.Author>
63
+ <Comment.Metadata>
64
+ <div>{reply.time}</div>
65
+ </Comment.Metadata>
66
+ <Comment.Text>{reply.text}</Comment.Text>
67
+ <Comment.Actions>
68
+ <Comment.Action>Reply</Comment.Action>
69
+ </Comment.Actions>
70
+ </Comment.Content>
71
+ </Comment>
72
+ ))}
73
+ </Comment.Group>
74
+ </Comment>
75
+ ))}
76
+ </Comment.Group>
77
+ );
78
+ }
79
+
80
+ const Template = (args) => <CommentEEA {...args}></CommentEEA>;
81
+
82
+ export const Default = Template.bind({});
83
+ Default.args = {
84
+ title: 'Comments Header',
85
+ threaded: false,
86
+ minimal: false,
87
+ comments: [
88
+ {
89
+ src: 'https://react.semantic-ui.com/images/avatar/large/matthew.png',
90
+ author: 'User 1',
91
+ time: 'Message timestamp',
92
+ text: 'Message Content',
93
+ replies: [
94
+ {
95
+ src: 'https://react.semantic-ui.com/images/avatar/large/matthew.png',
96
+ author: 'User 4',
97
+ time: 'Message timestamp',
98
+ text: 'Message Content',
99
+ },
100
+ ],
101
+ },
102
+ {
103
+ src: 'https://react.semantic-ui.com/images/avatar/large/matthew.png',
104
+ author: 'User 2',
105
+ time: 'Message timestamp',
106
+ text: 'Message Content',
107
+ replies: [],
108
+ },
109
+ {
110
+ src: 'https://react.semantic-ui.com/images/avatar/large/matthew.png',
111
+ author: 'User 3',
112
+ time: 'Message timestamp',
113
+ text: 'Message Content',
114
+ replies: [],
115
+ },
116
+ ],
117
+ };