@eeacms/volto-eea-design-system 0.9.5 → 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.
- package/.coverage.babel.config.js +1 -5
- package/.i18n.babel.config.js +1 -0
- package/.project.eslintrc.js +4 -5
- package/CHANGELOG.md +38 -9
- package/README.md +1 -105
- package/RELEASE.md +74 -0
- package/babel.config.js +17 -0
- package/cypress.config.js +26 -0
- package/jest-addon.config.js +4 -4
- package/package.json +15 -14
- package/src/ui/Accordion/Accordion.stories.js +167 -0
- package/src/ui/Comment/Comment.stories.js +117 -0
- package/src/ui/Confirm/Confirm.stories.js +97 -0
- package/src/ui/Container/Container.stories.js +62 -0
- package/src/ui/ContentBox/ContentBox.stories.js +66 -0
- package/src/ui/Footer/Footer.stories.js +100 -0
- package/src/ui/Form/Checkbox.stories.js +211 -0
- package/src/ui/Form/Dropdown.stories.js +183 -0
- package/src/ui/Form/FileUpload.stories.js +46 -0
- package/src/ui/Form/Input.stories.js +219 -0
- package/src/ui/Form/Radio.stories.js +256 -0
- package/src/ui/Form/Textarea.stories.js +126 -0
- package/src/ui/Form/Toggle.stories.js +68 -0
- package/src/ui/Grid/ComponentGrid.stories.js +41 -0
- package/src/ui/Header/Header.stories.js +1526 -0
- package/src/ui/Heading/Heading.stories.js +62 -0
- package/src/ui/Item/Item.stories.js +242 -0
- package/src/ui/Item/ItemGroupWithIcons.stories.js +195 -0
- package/src/ui/Label/Label.stories.js +129 -0
- package/src/ui/List/DefaultList.stories.js +33 -0
- package/src/ui/List/DescriptionList.stories.js +77 -0
- package/src/ui/List/OrderedList.stories.js +140 -0
- package/src/ui/List/UnorderedList.stories.js +73 -0
- package/src/ui/Logo/Logo.stories.js +31 -0
- package/src/ui/Media/Image.stories.js +237 -0
- package/src/ui/Message/Message.stories.js +171 -0
- package/src/ui/Modal/Modal.stories.js +136 -0
- package/src/ui/Pagination/Pagination.stories.js +97 -0
- package/src/ui/Progress/Progress.stories.js +195 -0
- package/src/ui/Statistic/Statistic.stories.js +464 -0
- package/src/ui/Tab/Tab.stories.js +202 -0
- package/src/ui/Table/Table.stories.js +395 -0
- package/templates/eea.hbs +33 -1
- package/theme/themes/eea/assets/logo/climate-health.svg +42 -49
- package/theme/themes/eea/extras/footer.less +22 -3
- package/theme/themes/eea/extras/footer.variables +7 -2
- package/theme/themes/eea/globals/utilities.less +3 -3
- package/website/.eslintrc +59 -0
- package/website/README.md +33 -0
- package/website/babel.config.js +3 -0
- package/website/docs/0-intro.md +21 -0
- package/website/docs/2-whatsnew.md +2054 -0
- package/website/docs/dataguide/0-intro.md +15 -0
- package/website/docs/dataguide/_category_.yml +10 -0
- package/website/docs/pubguide/0-writing.md +12 -0
- package/website/docs/pubguide/1-design.md +16 -0
- package/website/docs/pubguide/_category_.yml +10 -0
- package/website/docs/webcontent/0-intro.md +10 -0
- package/website/docs/webcontent/_category_.yml +10 -0
- package/website/docs/webdev/3-Guidelines/0-intro.md +17 -0
- package/website/docs/webdev/3-Guidelines/1-typography.mdx +270 -0
- package/website/docs/webdev/3-Guidelines/2-colours.md +915 -0
- package/website/docs/webdev/3-Guidelines/3-images.md +81 -0
- package/website/docs/webdev/3-Guidelines/4-iconography.mdx +16298 -0
- package/website/docs/webdev/3-Guidelines/5-spacing.md +116 -0
- package/website/docs/webdev/3-Guidelines/_category_.yml +8 -0
- package/website/docs/webdev/4-Templates/1-Grid.mdx +12 -0
- package/website/docs/webdev/4-Templates/2-SiteHeader.mdx +12 -0
- package/website/docs/webdev/4-Templates/3-SiteFooter.mdx +12 -0
- package/website/docs/webdev/4-Templates/4-PageHeader.mdx +12 -0
- package/website/docs/webdev/4-Templates/_category_.yml +8 -0
- package/website/docs/webdev/5-Components/0-Accordion.mdx +12 -0
- package/website/docs/webdev/5-Components/1-Callout.mdx +11 -0
- package/website/docs/webdev/5-Components/10-Item.mdx +12 -0
- package/website/docs/webdev/5-Components/11-Labeled-icons.mdx +11 -0
- package/website/docs/webdev/5-Components/12-Labels.mdx +13 -0
- package/website/docs/webdev/5-Components/13-Lists.mdx +13 -0
- package/website/docs/webdev/5-Components/14-Logo.mdx +12 -0
- package/website/docs/webdev/5-Components/15-Image.mdx +12 -0
- package/website/docs/webdev/5-Components/16-Loader.mdx +11 -0
- package/website/docs/webdev/5-Components/17-Messages.mdx +14 -0
- package/website/docs/webdev/5-Components/18-Modal.mdx +14 -0
- package/website/docs/webdev/5-Components/19-Pagination.mdx +14 -0
- package/website/docs/webdev/5-Components/2-Breadcrumb.mdx +14 -0
- package/website/docs/webdev/5-Components/20-Popup.mdx +14 -0
- package/website/docs/webdev/5-Components/21-Progress.mdx +14 -0
- package/website/docs/webdev/5-Components/21-Quote/1-Quote.mdx +14 -0
- package/website/docs/webdev/5-Components/21-Quote/2-Testimonial.mdx +14 -0
- package/website/docs/webdev/5-Components/21-Quote/_category_.yml +8 -0
- package/website/docs/webdev/5-Components/22-Segment.mdx +14 -0
- package/website/docs/webdev/5-Components/23-Statistic.mdx +14 -0
- package/website/docs/webdev/5-Components/24-Search/0-Filters.mdx +12 -0
- package/website/docs/webdev/5-Components/24-Search/1-Suggestions.mdx +11 -0
- package/website/docs/webdev/5-Components/24-Search/2-Searchbox.mdx +11 -0
- package/website/docs/webdev/5-Components/24-Search/_category_.yml +8 -0
- package/website/docs/webdev/5-Components/24-Tab.mdx +14 -0
- package/website/docs/webdev/5-Components/25-Table.mdx +14 -0
- package/website/docs/webdev/5-Components/25-Visuals/0-Dashboard.mdx +11 -0
- package/website/docs/webdev/5-Components/25-Visuals/1-Charts.mdx +11 -0
- package/website/docs/webdev/5-Components/25-Visuals/2-Maps.mdx +11 -0
- package/website/docs/webdev/5-Components/25-Visuals/_category_.yml +8 -0
- package/website/docs/webdev/5-Components/26-Content.mdx +13 -0
- package/website/docs/webdev/5-Components/27-Tags.mdx +13 -0
- package/website/docs/webdev/5-Components/28-Timeline.mdx +13 -0
- package/website/docs/webdev/5-Components/3-Buttons.mdx +13 -0
- package/website/docs/webdev/5-Components/3-Callout.mdx +11 -0
- package/website/docs/webdev/5-Components/4-Cards.mdx +13 -0
- package/website/docs/webdev/5-Components/5-Comment.mdx +12 -0
- package/website/docs/webdev/5-Components/6-Confirm.mdx +12 -0
- package/website/docs/webdev/5-Components/7-Divider.mdx +12 -0
- package/website/docs/webdev/5-Components/7-Forms/0-Checkbox.mdx +11 -0
- package/website/docs/webdev/5-Components/7-Forms/1-Dropdown.mdx +12 -0
- package/website/docs/webdev/5-Components/7-Forms/2-TextInput.mdx +11 -0
- package/website/docs/webdev/5-Components/7-Forms/3-Radio.mdx +12 -0
- package/website/docs/webdev/5-Components/7-Forms/4-TextArea.mdx +12 -0
- package/website/docs/webdev/5-Components/7-Forms/_category_.yml +8 -0
- package/website/docs/webdev/5-Components/8-Headings.mdx +12 -0
- package/website/docs/webdev/5-Components/9-Inpage-Navigation.mdx +12 -0
- package/website/docs/webdev/5-Components/_category_.yml +10 -0
- package/website/docs/webdev/7-Utilities/_category_.yml +8 -0
- package/website/docs/webdev/7-Utilities/intro.md +1 -0
- package/website/docs/webdev/8-Resources/_category_.yml +8 -0
- package/website/docs/webdev/8-Resources/developer-guidelines.md +149 -0
- package/website/docs/webdev/8-Resources/theming-guidelines.md +285 -0
- package/website/docs/webdev/_category_.yml +10 -0
- package/website/docs/webdev/md_components/accordion_components/api_markdown.md +25 -0
- package/website/docs/webdev/md_components/accordion_components/showcase_markdown.md +3 -0
- package/website/docs/webdev/md_components/accordion_components/usage_markdown.md +27 -0
- package/website/docs/webdev/md_components/breadcrumb_components/api_markdown.md +42 -0
- package/website/docs/webdev/md_components/breadcrumb_components/showcase_markdown.md +6 -0
- package/website/docs/webdev/md_components/breadcrumb_components/usage_markdown.md +18 -0
- package/website/docs/webdev/md_components/button_components/showcase_markdown.md +25 -0
- package/website/docs/webdev/md_components/button_components/usage_markdown.md +53 -0
- package/website/docs/webdev/md_components/callout_components/showcase_markdown.md +3 -0
- package/website/docs/webdev/md_components/callout_components/usage_markdown.md +20 -0
- package/website/docs/webdev/md_components/card_components/showcase_markdown.md +3 -0
- package/website/docs/webdev/md_components/card_components/usage_markdown.md +36 -0
- package/website/docs/webdev/md_components/charts_components/usage_markdown.md +18 -0
- package/website/docs/webdev/md_components/checkbox_components/showcase_markdown.md +17 -0
- package/website/docs/webdev/md_components/checkbox_components/usage_markdown.md +31 -0
- package/website/docs/webdev/md_components/comment_components/api_markdown.md +25 -0
- package/website/docs/webdev/md_components/comment_components/showcase_markdown.md +3 -0
- package/website/docs/webdev/md_components/comment_components/usage_markdown.md +1 -0
- package/website/docs/webdev/md_components/component_grid_components/api_markdown.md +25 -0
- package/website/docs/webdev/md_components/component_grid_components/showcase_markdown.md +9 -0
- package/website/docs/webdev/md_components/component_grid_components/usage_markdown.md +87 -0
- package/website/docs/webdev/md_components/confirm_components/api_markdown.md +25 -0
- package/website/docs/webdev/md_components/confirm_components/showcase_markdown.md +3 -0
- package/website/docs/webdev/md_components/confirm_components/usage_markdown.md +9 -0
- package/website/docs/webdev/md_components/content_components/usage_markdown.md +21 -0
- package/website/docs/webdev/md_components/dashboard_components/usage_markdown.md +20 -0
- package/website/docs/webdev/md_components/divider_components/showcase_markdown.md +5 -0
- package/website/docs/webdev/md_components/divider_components/usage_markdown.md +39 -0
- package/website/docs/webdev/md_components/dropdown_components/api_markdown.md +34 -0
- package/website/docs/webdev/md_components/dropdown_components/showcase_markdown.md +5 -0
- package/website/docs/webdev/md_components/dropdown_components/usage_markdown.md +24 -0
- package/website/docs/webdev/md_components/filters_components/usage_markdown.md +39 -0
- package/website/docs/webdev/md_components/grid_components/api_markdown.md +25 -0
- package/website/docs/webdev/md_components/grid_components/showcase_markdown.md +9 -0
- package/website/docs/webdev/md_components/grid_components/usage_markdown.md +89 -0
- package/website/docs/webdev/md_components/heading_components/api_markdown.md +25 -0
- package/website/docs/webdev/md_components/heading_components/showcase_markdown.md +3 -0
- package/website/docs/webdev/md_components/heading_components/usage_markdown.md +9 -0
- package/website/docs/webdev/md_components/iframe_component.mdx +14 -0
- package/website/docs/webdev/md_components/inpage_navigation_components/api_markdown.md +46 -0
- package/website/docs/webdev/md_components/inpage_navigation_components/showcase_markdown.md +3 -0
- package/website/docs/webdev/md_components/inpage_navigation_components/usage_markdown.md +18 -0
- package/website/docs/webdev/md_components/item_components/api_markdown.md +25 -0
- package/website/docs/webdev/md_components/item_components/showcase_markdown.md +9 -0
- package/website/docs/webdev/md_components/item_components/usage_markdown.md +1 -0
- package/website/docs/webdev/md_components/label_components/showcase_markdown.md +17 -0
- package/website/docs/webdev/md_components/label_components/usage_markdown.md +18 -0
- package/website/docs/webdev/md_components/labeled-icons_components/showcase_markdown.md +14 -0
- package/website/docs/webdev/md_components/labeled-icons_components/usage_markdown.md +13 -0
- package/website/docs/webdev/md_components/list_components/showcase_markdown.md +13 -0
- package/website/docs/webdev/md_components/list_components/usage_markdown.md +75 -0
- package/website/docs/webdev/md_components/loader_components/showcase_markdown.md +7 -0
- package/website/docs/webdev/md_components/loader_components/usage_markdown.md +13 -0
- package/website/docs/webdev/md_components/logo_components/api_markdown.md +25 -0
- package/website/docs/webdev/md_components/logo_components/showcase_markdown.md +3 -0
- package/website/docs/webdev/md_components/logo_components/usage_markdown.md +4 -0
- package/website/docs/webdev/md_components/maps_components/usage_markdown.md +64 -0
- package/website/docs/webdev/md_components/media_container_image_components/api_markdown.md +25 -0
- package/website/docs/webdev/md_components/media_container_image_components/showcase_markdown.md +7 -0
- package/website/docs/webdev/md_components/media_container_image_components/usage_markdown.md +10 -0
- package/website/docs/webdev/md_components/message_components/api_markdown.md +30 -0
- package/website/docs/webdev/md_components/message_components/showcase_markdown.md +17 -0
- package/website/docs/webdev/md_components/message_components/usage_markdown.md +22 -0
- package/website/docs/webdev/md_components/modal_components/api_markdown.md +36 -0
- package/website/docs/webdev/md_components/modal_components/showcase_markdown.md +3 -0
- package/website/docs/webdev/md_components/modal_components/usage_markdown.md +11 -0
- package/website/docs/webdev/md_components/page_header_components/api_markdown.md +25 -0
- package/website/docs/webdev/md_components/page_header_components/showcase_markdown.md +5 -0
- package/website/docs/webdev/md_components/page_header_components/usage_markdown.md +30 -0
- package/website/docs/webdev/md_components/pagination_components/api_markdown.md +36 -0
- package/website/docs/webdev/md_components/pagination_components/showcase_markdown.md +3 -0
- package/website/docs/webdev/md_components/pagination_components/usage_markdown.md +17 -0
- package/website/docs/webdev/md_components/popup_components/api_markdown.md +36 -0
- package/website/docs/webdev/md_components/popup_components/showcase_markdown.md +9 -0
- package/website/docs/webdev/md_components/popup_components/usage_markdown.md +15 -0
- package/website/docs/webdev/md_components/progress_components/api_markdown.md +36 -0
- package/website/docs/webdev/md_components/progress_components/showcase_markdown.md +13 -0
- package/website/docs/webdev/md_components/progress_components/usage_markdown.md +9 -0
- package/website/docs/webdev/md_components/quote_components/api_markdown.md +27 -0
- package/website/docs/webdev/md_components/quote_components/showcase_markdown.md +13 -0
- package/website/docs/webdev/md_components/quote_components/usage_markdown.md +8 -0
- package/website/docs/webdev/md_components/radio_components/api_markdown.md +34 -0
- package/website/docs/webdev/md_components/radio_components/showcase_markdown.md +15 -0
- package/website/docs/webdev/md_components/radio_components/usage_markdown.md +26 -0
- package/website/docs/webdev/md_components/searchbox_components/usage_markdown.md +15 -0
- package/website/docs/webdev/md_components/segment_components/api_markdown.md +36 -0
- package/website/docs/webdev/md_components/segment_components/showcase_markdown.md +3 -0
- package/website/docs/webdev/md_components/segment_components/usage_markdown.md +1 -0
- package/website/docs/webdev/md_components/site_footer_components/api_markdown.md +25 -0
- package/website/docs/webdev/md_components/site_footer_components/showcase_markdown.md +3 -0
- package/website/docs/webdev/md_components/site_footer_components/usage_markdown.md +26 -0
- package/website/docs/webdev/md_components/site_header_components/api_markdown.md +25 -0
- package/website/docs/webdev/md_components/site_header_components/showcase_markdown.md +3 -0
- package/website/docs/webdev/md_components/site_header_components/usage_markdown.md +51 -0
- package/website/docs/webdev/md_components/static/8px_spacing.png +0 -0
- package/website/docs/webdev/md_components/static/EEA_logo.png +0 -0
- package/website/docs/webdev/md_components/static/PXuse.png +0 -0
- package/website/docs/webdev/md_components/static/colors1.png +0 -0
- package/website/docs/webdev/md_components/static/columns1.png +0 -0
- package/website/docs/webdev/md_components/static/columns2.png +0 -0
- package/website/docs/webdev/md_components/static/columns3.png +0 -0
- package/website/docs/webdev/md_components/static/componenetPX.png +0 -0
- package/website/docs/webdev/md_components/static/desktop-mid-grid.png +0 -0
- package/website/docs/webdev/md_components/static/desktop_grid.png +0 -0
- package/website/docs/webdev/md_components/static/font-size1.png +0 -0
- package/website/docs/webdev/md_components/static/font-size2.png +0 -0
- package/website/docs/webdev/md_components/static/grid1.png +0 -0
- package/website/docs/webdev/md_components/static/grid2.png +0 -0
- package/website/docs/webdev/md_components/static/grid3.png +0 -0
- package/website/docs/webdev/md_components/static/grid4.png +0 -0
- package/website/docs/webdev/md_components/static/height150.png +0 -0
- package/website/docs/webdev/md_components/static/layoutPX.png +0 -0
- package/website/docs/webdev/md_components/static/line-height.png +0 -0
- package/website/docs/webdev/md_components/static/mobile-mid-grid.png +0 -0
- package/website/docs/webdev/md_components/static/mobile_grid.png +0 -0
- package/website/docs/webdev/md_components/static/spacing1.png +0 -0
- package/website/docs/webdev/md_components/static/spacing2.png +0 -0
- package/website/docs/webdev/md_components/static/tablet-mid-grid.png +0 -0
- package/website/docs/webdev/md_components/static/tablet_grid.png +0 -0
- package/website/docs/webdev/md_components/statistic_components/api_markdown.md +36 -0
- package/website/docs/webdev/md_components/statistic_components/showcase_markdown.md +8 -0
- package/website/docs/webdev/md_components/statistic_components/usage_markdown.md +1 -0
- package/website/docs/webdev/md_components/suggestions_components/usage_markdown.md +13 -0
- package/website/docs/webdev/md_components/tab_component.mdx +21 -0
- package/website/docs/webdev/md_components/tab_components/api_markdown.md +29 -0
- package/website/docs/webdev/md_components/tab_components/showcase_markdown.md +9 -0
- package/website/docs/webdev/md_components/tab_components/usage_markdown.md +26 -0
- package/website/docs/webdev/md_components/table_components/api_markdown.md +27 -0
- package/website/docs/webdev/md_components/table_components/showcase_markdown.md +3 -0
- package/website/docs/webdev/md_components/table_components/usage_markdown.md +22 -0
- package/website/docs/webdev/md_components/tags_components/showcase_markdown.md +6 -0
- package/website/docs/webdev/md_components/tags_components/usage_markdown.md +11 -0
- package/website/docs/webdev/md_components/testimonial_components/api_markdown.md +27 -0
- package/website/docs/webdev/md_components/testimonial_components/showcase_markdown.md +7 -0
- package/website/docs/webdev/md_components/testimonial_components/usage_markdown.md +7 -0
- package/website/docs/webdev/md_components/text_input_components/showcase_markdown.md +14 -0
- package/website/docs/webdev/md_components/text_input_components/usage_markdown.md +32 -0
- package/website/docs/webdev/md_components/textarea_components/api_markdown.md +34 -0
- package/website/docs/webdev/md_components/textarea_components/showcase_markdown.md +5 -0
- package/website/docs/webdev/md_components/textarea_components/usage_markdown.md +16 -0
- package/website/docs/webdev/md_components/timeline_components/api_markdown.md +27 -0
- package/website/docs/webdev/md_components/timeline_components/showcase_markdown.md +17 -0
- package/website/docs/webdev/md_components/timeline_components/usage_markdown.md +2 -0
- package/website/docusaurus.config.js +127 -0
- package/website/package.json +52 -0
- package/website/sidebars.js +24 -0
- package/website/src/components/HomepageFeatures.js +71 -0
- package/website/src/components/HomepageFeatures.module.css +13 -0
- package/website/src/css/custom.css +226 -0
- package/website/src/pages/index.js +43 -0
- package/website/src/pages/index.module.css +25 -0
- package/website/static/.nojekyll +0 -0
- package/website/static/fonts/roboto/LICENSE.txt +202 -0
- package/website/static/fonts/roboto/Roboto-Black.ttf +0 -0
- package/website/static/fonts/roboto/Roboto-BlackItalic.ttf +0 -0
- package/website/static/fonts/roboto/Roboto-Bold.ttf +0 -0
- package/website/static/fonts/roboto/Roboto-BoldItalic.ttf +0 -0
- package/website/static/fonts/roboto/Roboto-Italic.ttf +0 -0
- package/website/static/fonts/roboto/Roboto-Light.ttf +0 -0
- package/website/static/fonts/roboto/Roboto-LightItalic.ttf +0 -0
- package/website/static/fonts/roboto/Roboto-Medium.ttf +0 -0
- package/website/static/fonts/roboto/Roboto-MediumItalic.ttf +0 -0
- package/website/static/fonts/roboto/Roboto-Regular.ttf +0 -0
- package/website/static/fonts/roboto/Roboto-Thin.ttf +0 -0
- package/website/static/fonts/roboto/Roboto-ThinItalic.ttf +0 -0
- package/website/static/img/eea_icon.png +0 -0
- package/website/static/img/favicon.ico +0 -0
- package/website/static/img/logo.svg +1 -0
- package/website/static/img/undraw_add_information_j2wg.svg +1 -0
- package/website/static/img/undraw_add_post_re_174w.svg +1 -0
- package/website/static/img/undraw_all_the_data_re_hh4w.svg +1 -0
- package/website/static/img/undraw_book_lover_re_rwjy.svg +1 -0
- package/website/static/img/undraw_books_re_8gea.svg +1 -0
- package/website/static/img/undraw_content_creator_re_pt5b.svg +1 -0
- package/website/static/img/undraw_data_re_80ws.svg +1 -0
- package/website/static/img/undraw_data_trends_re_2cdy.svg +1 -0
- package/website/static/img/undraw_design_data_re_0s26.svg +1 -0
- package/website/static/img/undraw_designer_girl_re_h54c.svg +1 -0
- package/website/static/img/undraw_designer_life_re_6ywf.svg +1 -0
- package/website/static/img/undraw_designer_re_5v95.svg +1 -0
- package/website/static/img/undraw_dev_focus_re_6iwt.svg +1 -0
- package/website/static/img/undraw_developer_activity_re_39tg.svg +1 -0
- package/website/static/img/undraw_docusaurus_mountain.svg +170 -0
- package/website/static/img/undraw_docusaurus_react.svg +169 -0
- package/website/static/img/undraw_docusaurus_tree.svg +1 -0
- package/website/static/img/undraw_education_f8ru.svg +1 -0
- package/website/static/img/undraw_my_documents_re_13dc.svg +1 -0
- package/website/static/img/undraw_online_articles_re_yrkj.svg +1 -0
- package/website/static/img/undraw_personal_notebook_re_d7dc.svg +1 -0
- package/website/static/img/undraw_programmer_re_owql.svg +1 -0
- package/website/static/img/undraw_programming_re_kg9v.svg +1 -0
- package/website/static/img/undraw_proud_coder_re_exuy.svg +1 -0
- package/website/static/img/undraw_static_website_re_x70h.svg +1 -0
- package/website/static/img/undraw_typewriter_re_u9i2.svg +1 -0
- package/website/static/img/undraw_visual_data_re_mxxo.svg +1 -0
- package/website/static/img/undraw_web_development_0l6v.svg +1 -0
- package/cypress.json +0 -17
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
### Static
|
|
2
|
+
|
|
3
|
+
There are five main design principles in map design.
|
|
4
|
+
|
|
5
|
+
- legibility
|
|
6
|
+
- visual contrast
|
|
7
|
+
- figure-ground organization
|
|
8
|
+
- hierarchical organization, and
|
|
9
|
+
- balance
|
|
10
|
+
|
|
11
|
+
Together these principles form a system for seeing and understanding the relative importance of the content in the map and on the page.
|
|
12
|
+
|
|
13
|
+
What are the qualities of a good map?
|
|
14
|
+
|
|
15
|
+
- clear idea of what the map is trying to demonstrate
|
|
16
|
+
- easy to interpret legend or key
|
|
17
|
+
- good use of symbols to demonstrate a clear point
|
|
18
|
+
- good sources/metadata
|
|
19
|
+
- clear features not overcrowded
|
|
20
|
+
|
|
21
|
+
#### Styles
|
|
22
|
+
|
|
23
|
+
- do not use underlined text! This is difficult for low-vision users to read and indicates a possible hyperlink
|
|
24
|
+
- italics should be used as little as possible, for water labels and short labels only
|
|
25
|
+
- bolding of fonts is a good way to call out features, but avoid it for continuous, readable text
|
|
26
|
+
- although ALL CAPS labels stand out, they are harder to read and should be used sparingly
|
|
27
|
+
|
|
28
|
+
#### Map Objects
|
|
29
|
+
|
|
30
|
+
- avoid overlapping points or annotations, when possible. Try to place them offset from a line
|
|
31
|
+
- there should be visible whitespace between symbols; touching symbols blend together for users with low vision
|
|
32
|
+
- there should be a 2x size difference in levels of information
|
|
33
|
+
|
|
34
|
+
#### Colors
|
|
35
|
+
|
|
36
|
+
- **use a limited color palette.** Limited color palette works the best for all UIs, and map UI is not an exception. It’s much easier to create visual harmony with a limited color palette. You should use between 10 to 12 colors for a full-body color palette, depending on the complexity of your map. Choose colors for individuals with visual impairments such as color-blindness (i.e. don’t use red-green color schemes)
|
|
37
|
+
- **try to use the same hue for similar features.** For example, features related to transportation (bus stops, railway stations, etc.) should share the same hue. The same hue will help users to decode visual elements without reading text, and this will help you to create a more cohesive UI.
|
|
38
|
+
- **always consider accessibility.** Many people have limited color vision, so you also need to take this into account when selecting colors to ensure that you have a proper contrast ratio
|
|
39
|
+
|
|
40
|
+
#### Text
|
|
41
|
+
|
|
42
|
+
- choose fonts that have a variety of styles, such as bold, extra bold, italic, bold italic light, etc to differentiate between different kinds of features on your map
|
|
43
|
+
- use one version of fonts for the map body and one for the explainer text outside the map
|
|
44
|
+
|
|
45
|
+
### Interactive Maps
|
|
46
|
+
|
|
47
|
+
Interactive maps are high risk, high reward. Highly interactive maps can be too difficult for new users, yet they can also allow users to learn and explore at their own pace. It is always important to test designs on multiple people with varying degrees of technical expertise to see how they interact differently with the layout. Interactive map design should reflect what the cartographer is trying to convey (beauty vs. function) and never sacrifice visual hierarchy or great styling for interactivity.
|
|
48
|
+
|
|
49
|
+
Tips for designing effective interactive maps:
|
|
50
|
+
|
|
51
|
+
- simplify the interface
|
|
52
|
+
- panels should be the minimum possible size so they don’t clutter the space
|
|
53
|
+
- don’t innovate to the point where users don’t know what to do
|
|
54
|
+
- use panel opacity and margins to help them blend with your basemap and look cohesive
|
|
55
|
+
- leave space for the maps to be used on mobile devices. This means avoiding permanent panels
|
|
56
|
+
|
|
57
|
+
#### Pop-ups and markers
|
|
58
|
+
|
|
59
|
+
- keep pop-ups concise
|
|
60
|
+
- only one pop-up on the screen at a time (generally)
|
|
61
|
+
- cluster markers for better readability
|
|
62
|
+
- use a legend when you have multiple types of markers
|
|
63
|
+
- remove unnecessary padding and margins from popups
|
|
64
|
+
- use a slight shadow to “lift” pop-ups off the map
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
## API
|
|
2
|
+
|
|
3
|
+
<AccordionJSDoc />
|
|
4
|
+
|
|
5
|
+
## Setup
|
|
6
|
+
|
|
7
|
+
There are 2 ways to initialise the component.
|
|
8
|
+
|
|
9
|
+
### Automatic
|
|
10
|
+
|
|
11
|
+
Add `data-ecl-auto-init="Accordion"` attribute to component's markup:
|
|
12
|
+
|
|
13
|
+
```html
|
|
14
|
+
<div class="ecl-accordion" data-ecl-accordion data-ecl-auto-init="Accordion">
|
|
15
|
+
...
|
|
16
|
+
</div>
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
Use the `ECL` library's `autoInit()` (`ECL.autoInit()`) when your page is ready or other custom event you want to hook onto.
|
|
20
|
+
|
|
21
|
+
### Manual
|
|
22
|
+
|
|
23
|
+
Get target element, create an instance and invoke `init()`.
|
|
24
|
+
|
|
25
|
+
Given you have 1 element with an attribute `data-ecl-accordion` on the page:
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
Images must have natural snapshots that show unique situations.
|
|
2
|
+
|
|
3
|
+
### Do’s
|
|
4
|
+
- use stylistic tools such as light, perspective, color, focus and composition to tell stories that are authentic and believable.
|
|
5
|
+
- the content of the photographs should be positive, optimistic, natural, realistic, warm, and welcoming. Framing should be playful and feel spontaneous
|
|
6
|
+
### Don’ts
|
|
7
|
+
- do not use images that are too dark or do not have enough contrast
|
|
8
|
+
- do not use overlaying gradients
|
|
9
|
+
- images that are too static or that appear too symmetrical should not be used
|
|
10
|
+
- do not Use images that are over exposed or over saturated
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
## API
|
|
2
|
+
|
|
3
|
+
<MessageJSDoc />
|
|
4
|
+
|
|
5
|
+
## Setup
|
|
6
|
+
|
|
7
|
+
There are 2 ways to initialise the component.
|
|
8
|
+
|
|
9
|
+
### Automatic
|
|
10
|
+
|
|
11
|
+
Add `data-ecl-auto-init="Message"` attribute to component's markup:
|
|
12
|
+
|
|
13
|
+
```html
|
|
14
|
+
<div
|
|
15
|
+
role="alert"
|
|
16
|
+
class="ecl-message ecl-message--info"
|
|
17
|
+
data-ecl-message
|
|
18
|
+
data-ecl-auto-init="Message"
|
|
19
|
+
>
|
|
20
|
+
...
|
|
21
|
+
</div>
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
Use the `ECL` library's `autoInit()` (`ECL.autoInit()`) when your page is ready or other custom event you want to hook onto.
|
|
25
|
+
|
|
26
|
+
### Manual
|
|
27
|
+
|
|
28
|
+
Get target element, create an instance and invoke `init()`.
|
|
29
|
+
|
|
30
|
+
Given you have 1 element with an attribute `data-ecl-message` on the page:
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import Iframe from '../iframe_component.mdx';
|
|
2
|
+
|
|
3
|
+
## Default
|
|
4
|
+
<Iframe id='components-message--default' height="120"> </Iframe>
|
|
5
|
+
|
|
6
|
+
## Success
|
|
7
|
+
<Iframe id='components-message--success' height="120"> </Iframe>
|
|
8
|
+
|
|
9
|
+
## Warning
|
|
10
|
+
<Iframe id='components-message--warning' height="120"> </Iframe>
|
|
11
|
+
|
|
12
|
+
## Error
|
|
13
|
+
<Iframe id='components-message--error' height="120"> </Iframe>
|
|
14
|
+
|
|
15
|
+
## Info
|
|
16
|
+
<Iframe id='components-message--info' height="120"> </Iframe>
|
|
17
|
+
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
Messages component contains important information to alert users to take a certain actions.
|
|
2
|
+
|
|
3
|
+
### Do's
|
|
4
|
+
|
|
5
|
+
- keep the message brief and clear
|
|
6
|
+
- use consistent messages for the same information/success/warning/error throughout your site
|
|
7
|
+
|
|
8
|
+
### Don'ts
|
|
9
|
+
|
|
10
|
+
- overuse messages - users may ignore them and they can get in the way of a user completing their task
|
|
11
|
+
- write messages that are neutral. For example, instead of _The postal code you entered is invalid,_ the message should say _Please enter a valid postal code_
|
|
12
|
+
|
|
13
|
+
### When to use
|
|
14
|
+
|
|
15
|
+
- when the information is essential to convey to the users in order to go to the next step
|
|
16
|
+
- success message: the user has performed an action which was successfully completed
|
|
17
|
+
- warning message: the user needs to know about the potential dangers of completing their task (for example: "you are about replace/erase your data")
|
|
18
|
+
- error message: the user tried to perform an action that failed because of a problem (for example: a file could not be uploaded because it wasn't the correct type of file)
|
|
19
|
+
|
|
20
|
+
### When not to use
|
|
21
|
+
|
|
22
|
+
- don't use to show non critical information
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
## API
|
|
2
|
+
|
|
3
|
+
<MenuJSDoc />
|
|
4
|
+
|
|
5
|
+
## Force close
|
|
6
|
+
|
|
7
|
+
For javascript based pages or applications, you can use the css class `ecl-menu--forced-close` to manually close the menu on desktop view (on mobile a close function is already provided).
|
|
8
|
+
Feel free to add/remove this class when needed.
|
|
9
|
+
|
|
10
|
+
Note: for a better display, you may want to remove/add the css class `ecl-menu--transition` when manually changing the close/open status of the menu.
|
|
11
|
+
|
|
12
|
+
## Setup
|
|
13
|
+
|
|
14
|
+
There are 2 ways to initialise the component.
|
|
15
|
+
|
|
16
|
+
### Automatic
|
|
17
|
+
|
|
18
|
+
Add `data-ecl-auto-init` attribute to component's markup
|
|
19
|
+
|
|
20
|
+
```html
|
|
21
|
+
<nav class="ecl-menu" data-ecl-menu data-ecl-auto-init="Menu">...</nav>
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
Use the `ECL` library's `autoInit()` (`ECL.autoInit()`) when your page is ready or other custom event you want to hook onto.
|
|
25
|
+
|
|
26
|
+
### Manual
|
|
27
|
+
|
|
28
|
+
Get target element, create an instance and invoke `init()`.
|
|
29
|
+
|
|
30
|
+
Given you have 1 element with an attribute `data-ecl-menu` on the page:
|
|
31
|
+
|
|
32
|
+
```js
|
|
33
|
+
var elt = document.querySelector('[data-ecl-menu]');
|
|
34
|
+
var menu = new ECL.menu(elt);
|
|
35
|
+
menu.init();
|
|
36
|
+
```
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
Modals appear on top of the main content and require user interaction. This dialog disables the main content until the user explicitly interacts with the modal dialog.
|
|
2
|
+
|
|
3
|
+
### Do’s
|
|
4
|
+
- use modal dialogs for important warnings, to prevent or correct critical errors
|
|
5
|
+
- use modal dialogs to request the user to enter information critical to continuing the current process
|
|
6
|
+
- modal dialogs can be used to fragment a complex workflow into simpler steps
|
|
7
|
+
|
|
8
|
+
### Don’ts
|
|
9
|
+
- do not use modal dialogs for nonessential information that is not related to the current user flow
|
|
10
|
+
- avoid modal dialogs that interrupt high-stake processes
|
|
11
|
+
- avoid modal dialogues for complex decision making that require additional sources of information unavailable in the modal
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
## API
|
|
2
|
+
|
|
3
|
+
<AccordionJSDoc />
|
|
4
|
+
|
|
5
|
+
## Setup
|
|
6
|
+
|
|
7
|
+
There are 2 ways to initialise the component.
|
|
8
|
+
|
|
9
|
+
### Automatic
|
|
10
|
+
|
|
11
|
+
Add `data-ecl-auto-init="Accordion"` attribute to component's markup:
|
|
12
|
+
|
|
13
|
+
```html
|
|
14
|
+
<div class="ecl-accordion" data-ecl-accordion data-ecl-auto-init="Accordion">
|
|
15
|
+
...
|
|
16
|
+
</div>
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
Use the `ECL` library's `autoInit()` (`ECL.autoInit()`) when your page is ready or other custom event you want to hook onto.
|
|
20
|
+
|
|
21
|
+
### Manual
|
|
22
|
+
|
|
23
|
+
Get target element, create an instance and invoke `init()`.
|
|
24
|
+
|
|
25
|
+
Given you have 1 element with an attribute `data-ecl-accordion` on the page:
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
The page header component provides users the context of the page. It is always placed just below the site header.
|
|
2
|
+
|
|
3
|
+
### Anatomy
|
|
4
|
+
|
|
5
|
+
| **Components** | **Mandatory** | **Optional** |
|
|
6
|
+
| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------- | ------------ |
|
|
7
|
+
| **Page title** | yes | no |
|
|
8
|
+
| **Meta( content type, published date, modified date, reading time )** | no | yes |
|
|
9
|
+
| **Download - Bookmark actions** | no | yes |
|
|
10
|
+
| **Breadcrumb**<br />Breadcrumb component provides information on the page and its relationship to the site's hierarchy and structure.<br />It is optional if your website's navigational structure has less than 3 levels. | no | yes |
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
### Do's
|
|
14
|
+
|
|
15
|
+
- ensure the pages contain all the components and elements in the anatomy table above
|
|
16
|
+
- always use a page header when building your internal pages
|
|
17
|
+
- when choosing a background image, make sure it highlights the main object related to the content, and it is meaningful
|
|
18
|
+
|
|
19
|
+
### Don'ts
|
|
20
|
+
|
|
21
|
+
- don't use more than one page header per page
|
|
22
|
+
- do not use a background image unless there is a communication need, as it might be a distraction
|
|
23
|
+
|
|
24
|
+
### When to use
|
|
25
|
+
|
|
26
|
+
- to highlight the topic of the page, or to show important information about the page
|
|
27
|
+
|
|
28
|
+
### When not to use
|
|
29
|
+
|
|
30
|
+
- page header is not used for homepage of the website
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
## API
|
|
2
|
+
|
|
3
|
+
<MenuJSDoc />
|
|
4
|
+
|
|
5
|
+
## Force close
|
|
6
|
+
|
|
7
|
+
For javascript based pages or applications, you can use the css class `ecl-menu--forced-close` to manually close the menu on desktop view (on mobile a close function is already provided).
|
|
8
|
+
Feel free to add/remove this class when needed.
|
|
9
|
+
|
|
10
|
+
Note: for a better display, you may want to remove/add the css class `ecl-menu--transition` when manually changing the close/open status of the menu.
|
|
11
|
+
|
|
12
|
+
## Setup
|
|
13
|
+
|
|
14
|
+
There are 2 ways to initialise the component.
|
|
15
|
+
|
|
16
|
+
### Automatic
|
|
17
|
+
|
|
18
|
+
Add `data-ecl-auto-init` attribute to component's markup
|
|
19
|
+
|
|
20
|
+
```html
|
|
21
|
+
<nav class="ecl-menu" data-ecl-menu data-ecl-auto-init="Menu">...</nav>
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
Use the `ECL` library's `autoInit()` (`ECL.autoInit()`) when your page is ready or other custom event you want to hook onto.
|
|
25
|
+
|
|
26
|
+
### Manual
|
|
27
|
+
|
|
28
|
+
Get target element, create an instance and invoke `init()`.
|
|
29
|
+
|
|
30
|
+
Given you have 1 element with an attribute `data-ecl-menu` on the page:
|
|
31
|
+
|
|
32
|
+
```js
|
|
33
|
+
var elt = document.querySelector('[data-ecl-menu]');
|
|
34
|
+
var menu = new ECL.menu(elt);
|
|
35
|
+
menu.init();
|
|
36
|
+
```
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
Pagination component is the control to navigate through multiple pages.
|
|
2
|
+
|
|
3
|
+
### Do's
|
|
4
|
+
|
|
5
|
+
- place the pagination below the list of items
|
|
6
|
+
|
|
7
|
+
### Don'ts
|
|
8
|
+
|
|
9
|
+
- don't replace this component with an "infinite scrolling" feature
|
|
10
|
+
|
|
11
|
+
### When to use
|
|
12
|
+
|
|
13
|
+
- to show long lists otherwise redundant scrolling in one page
|
|
14
|
+
|
|
15
|
+
### When not to use
|
|
16
|
+
|
|
17
|
+
- don't use to break unrelated content on different pages
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
## API
|
|
2
|
+
|
|
3
|
+
<MenuJSDoc />
|
|
4
|
+
|
|
5
|
+
## Force close
|
|
6
|
+
|
|
7
|
+
For javascript based pages or applications, you can use the css class `ecl-menu--forced-close` to manually close the menu on desktop view (on mobile a close function is already provided).
|
|
8
|
+
Feel free to add/remove this class when needed.
|
|
9
|
+
|
|
10
|
+
Note: for a better display, you may want to remove/add the css class `ecl-menu--transition` when manually changing the close/open status of the menu.
|
|
11
|
+
|
|
12
|
+
## Setup
|
|
13
|
+
|
|
14
|
+
There are 2 ways to initialise the component.
|
|
15
|
+
|
|
16
|
+
### Automatic
|
|
17
|
+
|
|
18
|
+
Add `data-ecl-auto-init` attribute to component's markup
|
|
19
|
+
|
|
20
|
+
```html
|
|
21
|
+
<nav class="ecl-menu" data-ecl-menu data-ecl-auto-init="Menu">...</nav>
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
Use the `ECL` library's `autoInit()` (`ECL.autoInit()`) when your page is ready or other custom event you want to hook onto.
|
|
25
|
+
|
|
26
|
+
### Manual
|
|
27
|
+
|
|
28
|
+
Get target element, create an instance and invoke `init()`.
|
|
29
|
+
|
|
30
|
+
Given you have 1 element with an attribute `data-ecl-menu` on the page:
|
|
31
|
+
|
|
32
|
+
```js
|
|
33
|
+
var elt = document.querySelector('[data-ecl-menu]');
|
|
34
|
+
var menu = new ECL.menu(elt);
|
|
35
|
+
menu.init();
|
|
36
|
+
```
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
A popup (also known as an overlay) is a window or dialog that appears on top of the page content.
|
|
2
|
+
A popup can be classified according to two dimensions:
|
|
3
|
+
- whether the user can interact with the rest of the page, and it is called 'Modal' when the content on the page is disabled until the user explicitly interacts with the overlay or 'Nonmodal' when users can still interact with the background content (for example, by selecting links or tapping buttons) while the overlay remains visible
|
|
4
|
+
- whether the background is dimmed the popup is called a 'Lightbox'
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
### Do’s
|
|
8
|
+
- present the content in the popup when it’s contextually relevant to the user
|
|
9
|
+
- if you must present critical information (e.g., important warnings to prevent or correct errors) in a popup, be sure to show only one at a time
|
|
10
|
+
|
|
11
|
+
### Don’ts
|
|
12
|
+
- do not show a popup before the main page content loads
|
|
13
|
+
- do not display a popup right after the user logs in
|
|
14
|
+
- you should not ask for feedback before people have done anything meaningful
|
|
15
|
+
- do not show multiple popups one after another
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
## API
|
|
2
|
+
|
|
3
|
+
<MenuJSDoc />
|
|
4
|
+
|
|
5
|
+
## Force close
|
|
6
|
+
|
|
7
|
+
For javascript based pages or applications, you can use the css class `ecl-menu--forced-close` to manually close the menu on desktop view (on mobile a close function is already provided).
|
|
8
|
+
Feel free to add/remove this class when needed.
|
|
9
|
+
|
|
10
|
+
Note: for a better display, you may want to remove/add the css class `ecl-menu--transition` when manually changing the close/open status of the menu.
|
|
11
|
+
|
|
12
|
+
## Setup
|
|
13
|
+
|
|
14
|
+
There are 2 ways to initialise the component.
|
|
15
|
+
|
|
16
|
+
### Automatic
|
|
17
|
+
|
|
18
|
+
Add `data-ecl-auto-init` attribute to component's markup
|
|
19
|
+
|
|
20
|
+
```html
|
|
21
|
+
<nav class="ecl-menu" data-ecl-menu data-ecl-auto-init="Menu">...</nav>
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
Use the `ECL` library's `autoInit()` (`ECL.autoInit()`) when your page is ready or other custom event you want to hook onto.
|
|
25
|
+
|
|
26
|
+
### Manual
|
|
27
|
+
|
|
28
|
+
Get target element, create an instance and invoke `init()`.
|
|
29
|
+
|
|
30
|
+
Given you have 1 element with an attribute `data-ecl-menu` on the page:
|
|
31
|
+
|
|
32
|
+
```js
|
|
33
|
+
var elt = document.querySelector('[data-ecl-menu]');
|
|
34
|
+
var menu = new ECL.menu(elt);
|
|
35
|
+
menu.init();
|
|
36
|
+
```
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import Iframe from '../iframe_component.mdx';
|
|
2
|
+
|
|
3
|
+
## Default
|
|
4
|
+
|
|
5
|
+
<Iframe id='components-progress--default'height="120" > </Iframe>
|
|
6
|
+
|
|
7
|
+
## Progress with Value
|
|
8
|
+
|
|
9
|
+
<Iframe id='components-progress--progress-with-value' height="120"> </Iframe>
|
|
10
|
+
|
|
11
|
+
## Custom Color
|
|
12
|
+
|
|
13
|
+
<Iframe id='components-progress--custom-color'height="120" > </Iframe>
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
Progress indicators tell users that more time is needed to process the last user action (for instance, to load a file, or to install a new update), and how much time remains.
|
|
2
|
+
|
|
3
|
+
### Do’s
|
|
4
|
+
- use a progress indicator for any action that takes longer than about 1.0 second
|
|
5
|
+
- use Looped animation only for fast actions. The animated-spinner icon is an example of this common progress indicator. This indicator should be used for actions that take between 2-10 seconds
|
|
6
|
+
- percent-done animation: Use for actions that take 10 seconds or more.
|
|
7
|
+
|
|
8
|
+
### Don’ts
|
|
9
|
+
- do not use static progress indicators
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
## API
|
|
2
|
+
|
|
3
|
+
<TableJSDoc />
|
|
4
|
+
|
|
5
|
+
## Setup
|
|
6
|
+
|
|
7
|
+
Add `data-ecl-table-sort-toggle` attribute on table headings for which you want to activate sorting.
|
|
8
|
+
|
|
9
|
+
There are 2 ways to initialise the component for sort table.
|
|
10
|
+
|
|
11
|
+
### Automatic
|
|
12
|
+
|
|
13
|
+
Add `data-ecl-auto-init="Table"` attribute to component's markup:
|
|
14
|
+
|
|
15
|
+
```html
|
|
16
|
+
<table data-ecl-auto-init="Table" class="ecl-table">
|
|
17
|
+
...
|
|
18
|
+
</table>
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
Use the `ECL` library's `autoInit()` (`ECL.autoInit()`) when your page is ready or other custom event you want to hook onto.
|
|
22
|
+
|
|
23
|
+
### Manual
|
|
24
|
+
|
|
25
|
+
Get target element, create an instance and invoke `init()`.
|
|
26
|
+
|
|
27
|
+
Given you have 1 element with an attribute `data-ecl-table` on the page:
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
Quote is a key phrase, quotation, or excerpt that has been pulled from an article and used as a page layout graphic element, serving to entice readers into the article or to highlight a key topic.
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
### Dont's
|
|
5
|
+
|
|
6
|
+
- Do not use more than one quote per page
|
|
7
|
+
- Do not use long text or job title
|
|
8
|
+
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
## API
|
|
2
|
+
|
|
3
|
+
<SelectJSDoc />
|
|
4
|
+
|
|
5
|
+
## Setup
|
|
6
|
+
|
|
7
|
+
There are 2 ways to initialise the select multiple component.
|
|
8
|
+
|
|
9
|
+
### Automatic
|
|
10
|
+
|
|
11
|
+
Add `data-ecl-auto-init="Select"` attribute to component's markup:
|
|
12
|
+
|
|
13
|
+
Use the `ECL` library's `autoInit()` (`ECL.autoInit()`) when your page is ready or other custom event you want to hook onto.
|
|
14
|
+
|
|
15
|
+
### Manual
|
|
16
|
+
|
|
17
|
+
Get target element, create an instance and invoke `init()`.
|
|
18
|
+
|
|
19
|
+
Given you have 1 element with an attribute `data-ecl-select-multiple` on the page:
|
|
20
|
+
|
|
21
|
+
```js
|
|
22
|
+
var elt = document.querySelector('[data-ecl-select-multiple]');
|
|
23
|
+
var select = new ECL.Select(elt);
|
|
24
|
+
select.init();
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
It's also possible to use the `Select`'s `autoInit` method and pass specific labels for the element:
|
|
28
|
+
|
|
29
|
+
```js
|
|
30
|
+
var select = ECL.Select.autoInit(
|
|
31
|
+
document.querySelector('[data-ecl-select-multiple]'),
|
|
32
|
+
{ defaultText: 'string', searchText: 'string', selectAllText: 'string' },
|
|
33
|
+
);
|
|
34
|
+
```
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import Iframe from '../iframe_component.mdx';
|
|
2
|
+
|
|
3
|
+
## Default
|
|
4
|
+
|
|
5
|
+
<Iframe id='components-forms-radio--default' > </Iframe>
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
## Invalid
|
|
9
|
+
|
|
10
|
+
<Iframe id='components-forms-radio--invalid' height="400"> </Iframe>
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
## Binary
|
|
14
|
+
|
|
15
|
+
<Iframe id='components-forms-radio--binary' > </Iframe>
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
Radio buttons provides a selection with two or more options. Only one option can be selected.
|
|
2
|
+
|
|
3
|
+
### Do's
|
|
4
|
+
|
|
5
|
+
- use labels as click targets (clicking the label will select that option)
|
|
6
|
+
- group related fields
|
|
7
|
+
- order logically (e.g. ages 18-25, ages 25-35, ages, 35-50, over 65)
|
|
8
|
+
- indicate whether the input group is optional - _if it's mandatory, have a neutral option (e.g. other, n/a) selected by default_
|
|
9
|
+
- make use of helper text if there are further directions or hints the users may need in completing their goal
|
|
10
|
+
- write specific and clear error messages, so users understand how to address the error
|
|
11
|
+
|
|
12
|
+
### Don'ts
|
|
13
|
+
|
|
14
|
+
- don't add them without grouping first
|
|
15
|
+
- don't nest elements under radio buttons - keep all the options on the same level
|
|
16
|
+
|
|
17
|
+
### When to use
|
|
18
|
+
|
|
19
|
+
- when you have under 10 items
|
|
20
|
+
- when users need to select options or toggle settings, for example
|
|
21
|
+
- in forms with multiple non-exclusive options (e.g. search filters)
|
|
22
|
+
- only one selection can be made
|
|
23
|
+
|
|
24
|
+
### When not to use
|
|
25
|
+
|
|
26
|
+
- avoid when more than one option can be selected - use checkboxes instead
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
Search lets users assert independence from websites' attempt to direct how they use it. Therefore, many users go straight to the homepage search function.
|
|
2
|
+
|
|
3
|
+
Search is also users' escape hatch when they are stuck in navigation. When they cannot find a reasonable place to go next, they often turn to the site's search function. This is why you should make search available from every page on the site; you cannot predict where users will be when they decide they are lost.
|
|
4
|
+
|
|
5
|
+
### Do's
|
|
6
|
+
|
|
7
|
+
- **use placeholder text.** Placeholder text provides context as to what can be searched and describes the action of the input
|
|
8
|
+
|
|
9
|
+
- **use a magnifying glass icon.** The magnifying glass is universally recognized as a symbol for search and one which users can easily identify
|
|
10
|
+
|
|
11
|
+
- **provide a button to submit search queries.** Inputs should be accessible. Ensure users can return results using their keyboard as well as clicking a button or the magnifying glass icon
|
|
12
|
+
|
|
13
|
+
- **consider the search icon position.** In most cases, it is beneficial to place the Icon to the right of placeholder text. This allows the Icon to act as the submit button and makes more sense hierarchically as queries are entered first, and results returned after
|
|
14
|
+
|
|
15
|
+
- **use input widths which are appropriate for the typical query length.** The width of the Input field should be wide enough to contain the typical search query. If an Input field is too narrow, it results in scrolling and decreases usability. It is recommended to use a minimum width of 27 characters
|