From dfa3165f10c7859779edc1ec7e3a62596e2c5850 Mon Sep 17 00:00:00 2001 From: Samuel Gomez <43414022+samuel-gomez-axa@users.noreply.github.com> Date: Wed, 18 Sep 2019 12:10:38 +0200 Subject: [PATCH] Feat/design system (#379) * accordion, badge,buttontitlebar * feat(design-system): list,loader, popover, slider, pager, paging, panel, restitution * feat(design-system) : table, tabs, title * feat(design-system) : navigation * feat(design-system) : header * build(design-system): watch images gulp task * feat(design-system) : drawer,footer,footer-client * feat(design-system) : github * feat(design-system) : form text * feat(design-system) : form radioswitch, select, textarea and display code css * feat(design-system) : form checkbox, datepicker, file, pass, radio, card, filter * feat(design-system) : form filter, steps * feat(design-system) : pages layouts * feat(design-system) : style * feat(design-system) : update sassPath code display * feat(design-system): modal iframe --- scripts/tasks/assets.js | 10 +- .../design-system/gulpfile.babel.js/clean.js | 5 +- .../design-system/gulpfile.babel.js/config.js | 3 + .../design-system/gulpfile.babel.js/copy.js | 8 +- .../gulpfile.babel.js/copyiconfont.js | 8 + .../design-system/gulpfile.babel.js/index.js | 24 +- .../design-system/gulpfile.babel.js/pug.js | 13 +- .../design-system/gulpfile.babel.js/sass.js | 1 + .../design-system/gulpfile.babel.js/serve.js | 20 +- storybook/design-system/package-lock.json | 808 +++++++++---- storybook/design-system/package.json | 7 +- .../src/assets/images/browserify.png | Bin 6744 -> 0 bytes .../src/assets/images/button/button-cas1.png | Bin 0 -> 6348 bytes .../src/assets/images/button/button-cas2.png | Bin 0 -> 250973 bytes .../src/assets/images/button/button-cas3.png | Bin 0 -> 42317 bytes .../src/assets/images/button/button-cas4.png | Bin 0 -> 5202 bytes .../src/assets/images/button/button-cas5.png | Bin 0 -> 134828 bytes .../assets/images/button/button-danger.png | Bin 0 -> 8060 bytes .../assets/images/button/button-disabled.png | Bin 0 -> 4817 bytes .../assets/images/button/button-main-icon.png | Bin 0 -> 9821 bytes .../src/assets/images/button/button-main.png | Bin 0 -> 6633 bytes .../assets/images/button/button-modal-do.png | Bin 0 -> 76905 bytes .../images/button/button-modal-dont.png | Bin 0 -> 76663 bytes .../assets/images/button/button-secondary.png | Bin 0 -> 8048 bytes .../src/assets/images/button/button-small.png | Bin 0 -> 2753 bytes .../images/{ => button}/button-structure.jpg | Bin .../assets/images/button/button-success.png | Bin 0 -> 9224 bytes .../{ => button}/button-usage-danger.png | Bin .../src/assets/images/favicon.ico | Bin 3262 -> 0 bytes .../design-system/src/assets/images/pug.png | Bin 54200 -> 0 bytes .../src/assets/sprite/sprite.symbol.html | 2 +- .../design-system/src/commons/layout.pug | 17 +- .../design-system/src/commons/scss/grid.scss | 1037 +++++++++++++++++ .../design-system/src/commons/scss/main.scss | 45 +- .../src/commons/scss/markdown.scss | 72 +- .../design-system/src/commons/scss/reset.scss | 47 +- .../src/components/blocks/blocks.pug | 4 + .../src/components/code/code.pug | 24 +- .../src/components/code/code.scss | 20 +- .../src/components/colors/Color.pug | 6 + .../src/components/colors/Colors.pug | 7 + .../src/components/colors/colors.scss | 67 ++ .../design-system/src/components/demo/demo.js | 20 +- .../src/components/demo/demo.pug | 24 +- .../src/components/demo/demo.scss | 27 +- .../src/components/footer/footer.pug | 2 +- .../form/layouts/layout-form-card-group.pug | 3 + .../form/layouts/layout-form-card.pug | 3 + .../form/layouts/layout-form-field.pug | 5 + .../layouts/layout-form-filter-inline.pug | 3 + .../form/layouts/layout-form-filter.pug | 3 + .../form/layouts/layout-form-textarea.pug | 5 + .../form/mixins/mixin-form-field-card.pug | 54 + .../form/mixins/mixin-form-field-checkbox.pug | 8 + .../form/mixins/mixin-form-field-radio.pug | 6 + .../form/mixins/mixin-form-field-select.pug | 15 + .../form/mixins/mixin-form-field-text.pug | 11 + .../form/mixins/mixin-form-help.pug | 3 + .../form/mixins/mixin-form-message.pug | 7 + .../src/components/logo/logo.scss | 3 + .../src/components/menu/menu.scss | 8 +- .../page/page-content-component.pug | 15 + .../src/components/page/page-content.pug | 5 +- .../src/components/page/page-markdown.pug | 3 + .../src/components/page/page-summary.pug | 8 + .../src/components/page/page-title.pug | 8 +- .../src/components/page/page.scss | 60 +- .../smoothscrollto/smoothScrollTo.js | 54 + .../design-system/src/components/tabs/tabs.js | 48 +- .../src/components/tabs/tabs.scss | 1 + .../src/components/title/title.scss | 1 - storybook/design-system/src/data/base.json | 1 + storybook/design-system/src/data/menu.json | 17 +- storybook/design-system/src/index.js | 5 +- storybook/design-system/src/index.pug | 11 +- storybook/design-system/src/index.scss | 46 +- .../src/pages/atoms/badge/data.json | 25 + .../src/pages/atoms/badge/index.pug | 33 + .../src/pages/atoms/badge/index.scss | 16 + .../badge/markdown/guidelines.md} | 20 +- .../src/pages/atoms/badge/markdown/style.md | 18 + .../pages/atoms/badge/templates/classic.pug | 9 + .../pages/atoms/badge/templates/infoIcon.pug | 2 + .../src/pages/atoms/button/data.json | 70 ++ .../src/pages/atoms/button/index.pug | 36 + .../src/pages/atoms/button/index.scss | 19 + .../pages/atoms/button/markdown/guidelines.md | 117 ++ .../src/pages/atoms/button/markdown/style.md | 18 + .../atoms/button/templates/button-icon.pug | 24 + .../atoms/button/templates/button-reverse.pug | 14 + .../pages/atoms/button/templates/button.pug | 10 + .../pages/atoms/button/templates/circle.pug | 12 + .../pages/atoms/button/templates/ghost.pug | 30 + .../src/pages/atoms/drawer/data.json | 25 + .../src/pages/atoms/drawer/index.pug | 32 + .../src/pages/atoms/drawer/index.scss | 15 + .../pages/atoms/drawer/markdown/guidelines.md | 36 + .../src/pages/atoms/drawer/markdown/style.md | 18 + .../pages/atoms/drawer/templates/classic.pug | 4 + .../src/pages/atoms/list/data.json | 20 + .../src/pages/atoms/list/index.pug | 33 + .../src/pages/atoms/list/index.scss | 11 + .../pages/atoms/list/markdown/guidelines.md | 36 + .../list/markdown/style.md} | 15 + .../pages/atoms/list/templates/classic.pug | 8 + .../pages/atoms/list/templates/withIcon.pug | 23 + .../src/pages/atoms/loader/data.json | 25 + .../src/pages/atoms/loader/index.pug | 32 + .../pages/atoms/loader/markdown/guidelines.md | 36 + .../src/pages/atoms/loader/markdown/style.md | 18 + .../pages/atoms/loader/templates/classic.pug | 4 + .../src/pages/atoms/popover/data.json | 25 + .../src/pages/atoms/popover/index.pug | 32 + .../src/pages/atoms/popover/index.scss | 17 + .../atoms/popover/markdown/guidelines.md | 36 + .../src/pages/atoms/popover/markdown/style.md | 18 + .../pages/atoms/popover/templates/classic.pug | 12 + .../src/pages/atoms/slider/data.json | 25 + .../src/pages/atoms/slider/index.pug | 32 + .../src/pages/atoms/slider/index.scss | 300 +++++ .../pages/atoms/slider/markdown/guidelines.md | 36 + .../src/pages/atoms/slider/markdown/style.md | 18 + .../pages/atoms/slider/templates/classic.pug | 17 + .../src/pages/atoms/title/data.json | 25 + .../src/pages/atoms/title/index.pug | 32 + .../pages/atoms/title/markdown/guidelines.md | 36 + .../src/pages/atoms/title/markdown/style.md | 18 + .../pages/atoms/title/templates/classic.pug | 26 + .../src/pages/get-started/index.pug | 29 +- .../src/pages/get-started/markdown/content.md | 16 +- .../design-system/src/pages/github/index.pug | 18 + .../src/pages/github/markdown/content.md | 134 +++ .../design-system/src/pages/github/meta.json | 5 + .../design-system/src/pages/home/home.scss | 9 +- .../src/pages/molecules/alert/data.json | 70 ++ .../src/pages/molecules/alert/index.pug | 36 + .../src/pages/molecules/alert/index.scss | 9 + .../molecules/alert/markdown/guidelines.md | 36 + .../pages/molecules/alert/markdown/style.md | 19 + .../alert/templates/alertComplex.pug | 16 + .../alert/templates/alertComplexDanger.pug | 16 + .../alert/templates/alertSimpleDanger.pug | 8 + .../alert/templates/alertSimpleInfo.pug | 8 + .../alert/templates/alertSimpleSuccess.pug | 8 + .../src/pages/molecules/footer/data.json | 35 + .../src/pages/molecules/footer/index.pug | 32 + .../src/pages/molecules/footer/index.scss | 3 + .../molecules/footer/markdown/guidelines.md | 36 + .../pages/molecules/footer/markdown/style.md | 18 + .../molecules/footer/templates/classic.pug | 6 + .../pages/molecules/form-checkbox/data.json | 35 + .../pages/molecules/form-checkbox/index.pug | 40 + .../form-checkbox/markdown/guidelines.md | 36 + .../molecules/form-checkbox/markdown/style.md | 18 + .../templates/form-checkbox-custom-error.pug | 14 + .../form-checkbox-custom-success.pug | 11 + .../templates/form-checkbox-custom.pug | 11 + .../templates/form-checkbox-error.pug | 13 + .../templates/form-checkbox-inline-error.pug | 13 + .../form-checkbox-inline-success.pug | 11 + .../templates/form-checkbox-inline.pug | 11 + .../templates/form-checkbox-success.pug | 11 + .../form-checkbox/templates/form-checkbox.pug | 11 + .../pages/molecules/form-datepicker/data.json | 35 + .../pages/molecules/form-datepicker/index.pug | 32 + .../form-datepicker/markdown/guidelines.md | 36 + .../form-datepicker/markdown/style.md | 21 + .../templates/form-datepicker.pug | 13 + .../form-datepicker/templates/popper.pug | 75 ++ .../src/pages/molecules/form-file/data.json | 35 + .../src/pages/molecules/form-file/index.pug | 34 + .../form-file/markdown/guidelines.md | 36 + .../molecules/form-file/markdown/style.md | 22 + .../templates/form-file-list-error.pug | 49 + .../form-file/templates/form-file-list.pug | 42 + .../form-file/templates/form-file.pug | 15 + .../src/pages/molecules/form-pass/data.json | 35 + .../src/pages/molecules/form-pass/index.pug | 32 + .../form-pass/markdown/guidelines.md | 36 + .../molecules/form-pass/markdown/style.md | 21 + .../form-pass/templates/form-pass.pug | 17 + .../molecules/form-radio-switch/data.json | 35 + .../molecules/form-radio-switch/index.pug | 32 + .../molecules/form-radio-switch/index.scss | 7 + .../form-radio-switch/markdown/guidelines.md | 36 + .../form-radio-switch/markdown/style.md | 18 + .../templates/form-radio-switch.pug | 24 + .../src/pages/molecules/form-radio/data.json | 35 + .../src/pages/molecules/form-radio/index.pug | 40 + .../form-radio/markdown/guidelines.md | 36 + .../molecules/form-radio/markdown/style.md | 18 + .../templates/form-radio-custom-error.pug | 14 + .../templates/form-radio-custom-success.pug | 11 + .../templates/form-radio-custom.pug | 11 + .../form-radio/templates/form-radio-error.pug | 13 + .../templates/form-radio-inline-error.pug | 13 + .../templates/form-radio-inline-success.pug | 11 + .../templates/form-radio-inline.pug | 11 + .../templates/form-radio-success.pug | 11 + .../form-radio/templates/form-radio.pug | 11 + .../src/pages/molecules/form-select/data.json | 35 + .../src/pages/molecules/form-select/index.pug | 38 + .../pages/molecules/form-select/index.scss | 48 + .../form-select/markdown/guidelines.md | 36 + .../molecules/form-select/markdown/style.md | 18 + .../templates/form-select-disabled.pug | 8 + .../templates/form-select-error.pug | 8 + .../templates/form-select-inline-error.pug | 11 + .../templates/form-select-inline-success.pug | 11 + .../templates/form-select-inline.pug | 11 + .../templates/form-select-success.pug | 8 + .../form-select/templates/form-select.pug | 8 + .../src/pages/molecules/form-text/data.json | 35 + .../src/pages/molecules/form-text/index.pug | 40 + .../src/pages/molecules/form-text/index.scss | 64 + .../form-text/markdown/guidelines.md | 36 + .../molecules/form-text/markdown/style.md | 18 + .../templates/form-text-bulle-error.pug | 8 + .../templates/form-text-bulle-success.pug | 9 + .../form-text/templates/form-text-bulle.pug | 8 + .../templates/form-text-clear-error.pug | 9 + .../form-text/templates/form-text-clear.pug | 8 + .../templates/form-text-disabled.pug | 9 + .../form-text/templates/form-text-error.pug | 8 + .../form-text/templates/form-text-success.pug | 8 + .../form-text/templates/form-text.pug | 8 + .../pages/molecules/form-textarea/data.json | 35 + .../pages/molecules/form-textarea/index.pug | 34 + .../form-textarea/markdown/guidelines.md | 36 + .../molecules/form-textarea/markdown/style.md | 18 + .../templates/form-textarea-disabled.pug | 8 + .../templates/form-textarea-error.pug | 10 + .../templates/form-textarea-success.pug | 8 + .../form-textarea/templates/form-textarea.pug | 8 + .../src/pages/molecules/navigation/data.json | 25 + .../src/pages/molecules/navigation/index.pug | 32 + .../navigation/markdown/guidelines.md | 36 + .../molecules/navigation/markdown/style.md | 18 + .../navigation/templates/classic.pug | 18 + .../src/pages/molecules/pager/data.json | 70 ++ .../src/pages/molecules/pager/index.pug | 32 + .../molecules/pager/markdown/guidelines.md | 36 + .../pages/molecules/pager/markdown/style.md | 18 + .../molecules/pager/templates/classic.pug | 24 + .../src/pages/molecules/steps-new/data.json | 70 ++ .../src/pages/molecules/steps-new/index.pug | 34 + .../src/pages/molecules/steps-new/index.scss | 9 + .../steps-new/markdown/guidelines.md | 36 + .../molecules/steps-new/markdown/style.md | 18 + .../steps-new/templates/steps-new-sample2.pug | 27 + .../steps-new/templates/steps-new-sample3.pug | 27 + .../steps-new/templates/steps-new.pug | 17 + .../src/pages/molecules/steps/data.json | 70 ++ .../src/pages/molecules/steps/index.pug | 32 + .../src/pages/molecules/steps/index.scss | 9 + .../molecules/steps/markdown/guidelines.md | 36 + .../pages/molecules/steps/markdown/style.md | 18 + .../molecules/steps/templates/classic.pug | 23 + .../src/pages/molecules/table/data.json | 70 ++ .../src/pages/molecules/table/index.pug | 32 + .../src/pages/molecules/table/index.scss | 14 + .../molecules/table/markdown/guidelines.md | 36 + .../pages/molecules/table/markdown/style.md | 18 + .../molecules/table/templates/classic.pug | 11 + .../pages/molecules/table/templates/data.pug | 2 + .../molecules/table/templates/headerCell.pug | 12 + .../pages/molecules/table/templates/line.pug | 24 + .../molecules/table/templates/status.pug | 12 + .../src/pages/molecules/tabs/data.json | 70 ++ .../src/pages/molecules/tabs/index.pug | 34 + .../molecules/tabs/markdown/guidelines.md | 36 + .../pages/molecules/tabs/markdown/style.md | 18 + .../molecules/tabs/templates/tabs-complex.pug | 25 + .../tabs/templates/tabs-long-text.pug | 22 + .../pages/molecules/tabs/templates/tabs.pug | 8 + .../src/pages/molecules/title-bar/data.json | 6 +- .../pages/molecules/title-bar/index.js.old | 54 - .../src/pages/molecules/title-bar/index.pug | 62 +- .../pages/molecules/title-bar/index.pug.old | 54 - .../src/pages/molecules/title-bar/index.scss | 11 +- .../molecules/title-bar/markdown/content.md | 0 .../title-bar/markdown/guidelines.md | 36 + .../molecules/title-bar/markdown/importcss.md | 3 - .../molecules/title-bar/markdown/style.md | 19 + .../title-bar/markdown/typography.md | 7 - .../title-bar/templates/title-bar-complex.pug | 6 +- .../src/pages/organisms/accordion/data.json | 70 ++ .../src/pages/organisms/accordion/index.pug | 34 + .../src/pages/organisms/accordion/index.scss | 9 + .../accordion/markdown/guidelines.md | 36 + .../organisms/accordion/markdown/style.md | 18 + .../accordion/templates/accordion-light.pug | 13 + .../templates/accordion-right-arrow.pug | 14 + .../accordion/templates/accordion.pug | 14 + .../accordion/templates/data-sample.pug | 2 + .../pages/organisms/footer-client/data.json | 25 + .../pages/organisms/footer-client/index.pug | 34 + .../pages/organisms/footer-client/index.scss | 23 + .../footer-client/markdown/guidelines.md | 36 + .../organisms/footer-client/markdown/style.md | 18 + .../footer-client/templates/base.pug | 34 + .../footer-client/templates/bottom.pug | 10 + .../footer-client/templates/classic.pug | 3 + .../templates/footer-complex.pug | 4 + .../templates/footer-with-bottom.pug | 2 + .../footer-client/templates/social.pug | 19 + .../src/pages/organisms/form-card/data.json | 35 + .../src/pages/organisms/form-card/index.pug | 38 + .../src/pages/organisms/form-card/index.scss | 28 + .../form-card/markdown/guidelines.md | 36 + .../organisms/form-card/markdown/style.md | 23 + .../form-card/templates/form-card-active.pug | 6 + .../templates/form-card-disabled.pug | 6 + .../templates/form-card-group-four.pug | 9 + .../templates/form-card-group-three.pug | 8 + .../templates/form-card-group-two.pug | 7 + .../form-card/templates/form-card-radio.pug | 6 + .../form-card/templates/form-card.pug | 6 + .../organisms/form-filter-inline/data.json | 35 + .../organisms/form-filter-inline/index.pug | 32 + .../organisms/form-filter-inline/index.scss | 28 + .../form-filter-inline/markdown/guidelines.md | 36 + .../form-filter-inline/markdown/style.md | 25 + .../templates/form-filter-inline.pug | 51 + .../src/pages/organisms/form-filter/data.json | 35 + .../src/pages/organisms/form-filter/index.pug | 32 + .../form-filter/markdown/guidelines.md | 36 + .../organisms/form-filter/markdown/style.md | 25 + .../form-filter/templates/form-filter.pug | 31 + .../src/pages/organisms/form/data.json | 35 + .../src/pages/organisms/form/index.pug | 32 + .../organisms/form/markdown/guidelines.md | 36 + .../pages/organisms/form/markdown/style.md | 33 + .../organisms/form/templates/classic.pug | 20 + .../src/pages/organisms/header/data.json | 35 + .../src/pages/organisms/header/index.pug | 34 + .../src/pages/organisms/header/index.scss | 5 + .../organisms/header/markdown/guidelines.md | 36 + .../pages/organisms/header/markdown/style.md | 18 + .../organisms/header/templates/classic.pug | 22 + .../organisms/header/templates/header-nav.pug | 2 + .../header/templates/header-titlebar.pug | 2 + .../src/pages/organisms/modal/data.json | 70 ++ .../src/pages/organisms/modal/index.pug | 34 + .../src/pages/organisms/modal/index.scss | 13 + .../organisms/modal/markdown/guidelines.md | 36 + .../pages/organisms/modal/markdown/style.md | 18 + .../modal/templates/iframe-modal-large.pug | 13 + .../modal/templates/iframe-modal-small.pug | 17 + .../modal/templates/iframe-modal.pug | 13 + .../organisms/modal/templates/modal-large.pug | 14 + .../organisms/modal/templates/modal-small.pug | 12 + .../pages/organisms/modal/templates/modal.pug | 14 + .../src/pages/organisms/paging/data.json | 70 ++ .../src/pages/organisms/paging/index.pug | 32 + .../src/pages/organisms/paging/index.scss | 3 + .../organisms/paging/markdown/guidelines.md | 36 + .../pages/organisms/paging/markdown/style.md | 18 + .../organisms/paging/templates/classic.pug | 16 + .../src/pages/organisms/panel/data.json | 70 ++ .../src/pages/organisms/panel/index.pug | 34 + .../src/pages/organisms/panel/index.scss | 17 + .../organisms/panel/markdown/guidelines.md | 36 + .../pages/organisms/panel/markdown/style.md | 18 + .../organisms/panel/templates/panel-list.pug | 15 + .../panel/templates/panel-selection.pug | 26 + .../pages/organisms/panel/templates/panel.pug | 9 + .../src/pages/organisms/restitution/data.json | 70 ++ .../src/pages/organisms/restitution/index.pug | 34 + .../restitution/markdown/guidelines.md | 36 + .../organisms/restitution/markdown/style.md | 18 + .../templates/restitution-double.pug | 64 + .../templates/restitution-more.pug | 209 ++++ .../restitution/templates/restitution.pug | 104 ++ .../src/pages/pages/form/data.json | 35 + .../src/pages/pages/form/index.pug | 31 + .../src/pages/pages/form/index.scss | 8 + .../pages/pages/form/markdown/guidelines.md | 36 + .../src/pages/pages/form/markdown/style.md | 33 + .../pages/pages/form/templates/classic.pug | 15 + .../src/pages/pages/table/data.json | 35 + .../src/pages/pages/table/index.pug | 31 + .../src/pages/pages/table/index.scss | 18 + .../pages/pages/table/markdown/guidelines.md | 36 + .../src/pages/pages/table/markdown/style.md | 24 + .../pages/pages/table/templates/classic.pug | 13 + .../src/pages/style/colors/data.json | 8 + .../src/pages/style/colors/index.pug | 22 + .../src/pages/style/colors/index.scss | 62 + .../colors/markdown/guidelines.md} | 5 + .../src/pages/style/colors/markdown/style.md | 5 + .../pages/style/colors/templates/classic.pug | 52 + .../src/pages/style/icons/data.json | 35 + .../src/pages/style/icons/index.pug | 32 + .../src/pages/style/icons/index.scss | 41 + .../pages/style/icons/markdown/guidelines.md | 36 + .../src/pages/style/icons/markdown/style.md | 18 + .../style/icons/templates/icons-decli.pug | 7 + 398 files changed, 10746 insertions(+), 577 deletions(-) create mode 100644 storybook/design-system/gulpfile.babel.js/copyiconfont.js delete mode 100644 storybook/design-system/src/assets/images/browserify.png create mode 100644 storybook/design-system/src/assets/images/button/button-cas1.png create mode 100644 storybook/design-system/src/assets/images/button/button-cas2.png create mode 100644 storybook/design-system/src/assets/images/button/button-cas3.png create mode 100644 storybook/design-system/src/assets/images/button/button-cas4.png create mode 100644 storybook/design-system/src/assets/images/button/button-cas5.png create mode 100644 storybook/design-system/src/assets/images/button/button-danger.png create mode 100644 storybook/design-system/src/assets/images/button/button-disabled.png create mode 100644 storybook/design-system/src/assets/images/button/button-main-icon.png create mode 100644 storybook/design-system/src/assets/images/button/button-main.png create mode 100644 storybook/design-system/src/assets/images/button/button-modal-do.png create mode 100644 storybook/design-system/src/assets/images/button/button-modal-dont.png create mode 100644 storybook/design-system/src/assets/images/button/button-secondary.png create mode 100644 storybook/design-system/src/assets/images/button/button-small.png rename storybook/design-system/src/assets/images/{ => button}/button-structure.jpg (100%) create mode 100644 storybook/design-system/src/assets/images/button/button-success.png rename storybook/design-system/src/assets/images/{ => button}/button-usage-danger.png (100%) delete mode 100644 storybook/design-system/src/assets/images/favicon.ico delete mode 100644 storybook/design-system/src/assets/images/pug.png create mode 100644 storybook/design-system/src/commons/scss/grid.scss create mode 100644 storybook/design-system/src/components/blocks/blocks.pug create mode 100644 storybook/design-system/src/components/colors/Color.pug create mode 100644 storybook/design-system/src/components/colors/Colors.pug create mode 100644 storybook/design-system/src/components/colors/colors.scss create mode 100644 storybook/design-system/src/components/form/layouts/layout-form-card-group.pug create mode 100644 storybook/design-system/src/components/form/layouts/layout-form-card.pug create mode 100644 storybook/design-system/src/components/form/layouts/layout-form-field.pug create mode 100644 storybook/design-system/src/components/form/layouts/layout-form-filter-inline.pug create mode 100644 storybook/design-system/src/components/form/layouts/layout-form-filter.pug create mode 100644 storybook/design-system/src/components/form/layouts/layout-form-textarea.pug create mode 100644 storybook/design-system/src/components/form/mixins/mixin-form-field-card.pug create mode 100644 storybook/design-system/src/components/form/mixins/mixin-form-field-checkbox.pug create mode 100644 storybook/design-system/src/components/form/mixins/mixin-form-field-radio.pug create mode 100644 storybook/design-system/src/components/form/mixins/mixin-form-field-select.pug create mode 100644 storybook/design-system/src/components/form/mixins/mixin-form-field-text.pug create mode 100644 storybook/design-system/src/components/form/mixins/mixin-form-help.pug create mode 100644 storybook/design-system/src/components/form/mixins/mixin-form-message.pug create mode 100644 storybook/design-system/src/components/page/page-content-component.pug create mode 100644 storybook/design-system/src/components/page/page-markdown.pug create mode 100644 storybook/design-system/src/components/page/page-summary.pug create mode 100644 storybook/design-system/src/components/smoothscrollto/smoothScrollTo.js create mode 100644 storybook/design-system/src/pages/atoms/badge/data.json create mode 100644 storybook/design-system/src/pages/atoms/badge/index.pug create mode 100644 storybook/design-system/src/pages/atoms/badge/index.scss rename storybook/design-system/src/pages/{molecules/title-bar/markdown/usage.md => atoms/badge/markdown/guidelines.md} (68%) create mode 100644 storybook/design-system/src/pages/atoms/badge/markdown/style.md create mode 100644 storybook/design-system/src/pages/atoms/badge/templates/classic.pug create mode 100644 storybook/design-system/src/pages/atoms/badge/templates/infoIcon.pug create mode 100644 storybook/design-system/src/pages/atoms/button/data.json create mode 100644 storybook/design-system/src/pages/atoms/button/index.pug create mode 100644 storybook/design-system/src/pages/atoms/button/index.scss create mode 100644 storybook/design-system/src/pages/atoms/button/markdown/guidelines.md create mode 100644 storybook/design-system/src/pages/atoms/button/markdown/style.md create mode 100644 storybook/design-system/src/pages/atoms/button/templates/button-icon.pug create mode 100644 storybook/design-system/src/pages/atoms/button/templates/button-reverse.pug create mode 100644 storybook/design-system/src/pages/atoms/button/templates/button.pug create mode 100644 storybook/design-system/src/pages/atoms/button/templates/circle.pug create mode 100644 storybook/design-system/src/pages/atoms/button/templates/ghost.pug create mode 100644 storybook/design-system/src/pages/atoms/drawer/data.json create mode 100644 storybook/design-system/src/pages/atoms/drawer/index.pug create mode 100644 storybook/design-system/src/pages/atoms/drawer/index.scss create mode 100644 storybook/design-system/src/pages/atoms/drawer/markdown/guidelines.md create mode 100644 storybook/design-system/src/pages/atoms/drawer/markdown/style.md create mode 100644 storybook/design-system/src/pages/atoms/drawer/templates/classic.pug create mode 100644 storybook/design-system/src/pages/atoms/list/data.json create mode 100644 storybook/design-system/src/pages/atoms/list/index.pug create mode 100644 storybook/design-system/src/pages/atoms/list/index.scss create mode 100644 storybook/design-system/src/pages/atoms/list/markdown/guidelines.md rename storybook/design-system/src/pages/{molecules/title-bar/markdown/structure.md => atoms/list/markdown/style.md} (54%) create mode 100644 storybook/design-system/src/pages/atoms/list/templates/classic.pug create mode 100644 storybook/design-system/src/pages/atoms/list/templates/withIcon.pug create mode 100644 storybook/design-system/src/pages/atoms/loader/data.json create mode 100644 storybook/design-system/src/pages/atoms/loader/index.pug create mode 100644 storybook/design-system/src/pages/atoms/loader/markdown/guidelines.md create mode 100644 storybook/design-system/src/pages/atoms/loader/markdown/style.md create mode 100644 storybook/design-system/src/pages/atoms/loader/templates/classic.pug create mode 100644 storybook/design-system/src/pages/atoms/popover/data.json create mode 100644 storybook/design-system/src/pages/atoms/popover/index.pug create mode 100644 storybook/design-system/src/pages/atoms/popover/index.scss create mode 100644 storybook/design-system/src/pages/atoms/popover/markdown/guidelines.md create mode 100644 storybook/design-system/src/pages/atoms/popover/markdown/style.md create mode 100644 storybook/design-system/src/pages/atoms/popover/templates/classic.pug create mode 100644 storybook/design-system/src/pages/atoms/slider/data.json create mode 100644 storybook/design-system/src/pages/atoms/slider/index.pug create mode 100644 storybook/design-system/src/pages/atoms/slider/index.scss create mode 100644 storybook/design-system/src/pages/atoms/slider/markdown/guidelines.md create mode 100644 storybook/design-system/src/pages/atoms/slider/markdown/style.md create mode 100644 storybook/design-system/src/pages/atoms/slider/templates/classic.pug create mode 100644 storybook/design-system/src/pages/atoms/title/data.json create mode 100644 storybook/design-system/src/pages/atoms/title/index.pug create mode 100644 storybook/design-system/src/pages/atoms/title/markdown/guidelines.md create mode 100644 storybook/design-system/src/pages/atoms/title/markdown/style.md create mode 100644 storybook/design-system/src/pages/atoms/title/templates/classic.pug create mode 100644 storybook/design-system/src/pages/github/index.pug create mode 100644 storybook/design-system/src/pages/github/markdown/content.md create mode 100644 storybook/design-system/src/pages/github/meta.json create mode 100644 storybook/design-system/src/pages/molecules/alert/data.json create mode 100644 storybook/design-system/src/pages/molecules/alert/index.pug create mode 100644 storybook/design-system/src/pages/molecules/alert/index.scss create mode 100644 storybook/design-system/src/pages/molecules/alert/markdown/guidelines.md create mode 100644 storybook/design-system/src/pages/molecules/alert/markdown/style.md create mode 100644 storybook/design-system/src/pages/molecules/alert/templates/alertComplex.pug create mode 100644 storybook/design-system/src/pages/molecules/alert/templates/alertComplexDanger.pug create mode 100644 storybook/design-system/src/pages/molecules/alert/templates/alertSimpleDanger.pug create mode 100644 storybook/design-system/src/pages/molecules/alert/templates/alertSimpleInfo.pug create mode 100644 storybook/design-system/src/pages/molecules/alert/templates/alertSimpleSuccess.pug create mode 100644 storybook/design-system/src/pages/molecules/footer/data.json create mode 100644 storybook/design-system/src/pages/molecules/footer/index.pug create mode 100644 storybook/design-system/src/pages/molecules/footer/index.scss create mode 100644 storybook/design-system/src/pages/molecules/footer/markdown/guidelines.md create mode 100644 storybook/design-system/src/pages/molecules/footer/markdown/style.md create mode 100644 storybook/design-system/src/pages/molecules/footer/templates/classic.pug create mode 100644 storybook/design-system/src/pages/molecules/form-checkbox/data.json create mode 100644 storybook/design-system/src/pages/molecules/form-checkbox/index.pug create mode 100644 storybook/design-system/src/pages/molecules/form-checkbox/markdown/guidelines.md create mode 100644 storybook/design-system/src/pages/molecules/form-checkbox/markdown/style.md create mode 100644 storybook/design-system/src/pages/molecules/form-checkbox/templates/form-checkbox-custom-error.pug create mode 100644 storybook/design-system/src/pages/molecules/form-checkbox/templates/form-checkbox-custom-success.pug create mode 100644 storybook/design-system/src/pages/molecules/form-checkbox/templates/form-checkbox-custom.pug create mode 100644 storybook/design-system/src/pages/molecules/form-checkbox/templates/form-checkbox-error.pug create mode 100644 storybook/design-system/src/pages/molecules/form-checkbox/templates/form-checkbox-inline-error.pug create mode 100644 storybook/design-system/src/pages/molecules/form-checkbox/templates/form-checkbox-inline-success.pug create mode 100644 storybook/design-system/src/pages/molecules/form-checkbox/templates/form-checkbox-inline.pug create mode 100644 storybook/design-system/src/pages/molecules/form-checkbox/templates/form-checkbox-success.pug create mode 100644 storybook/design-system/src/pages/molecules/form-checkbox/templates/form-checkbox.pug create mode 100644 storybook/design-system/src/pages/molecules/form-datepicker/data.json create mode 100644 storybook/design-system/src/pages/molecules/form-datepicker/index.pug create mode 100644 storybook/design-system/src/pages/molecules/form-datepicker/markdown/guidelines.md create mode 100644 storybook/design-system/src/pages/molecules/form-datepicker/markdown/style.md create mode 100644 storybook/design-system/src/pages/molecules/form-datepicker/templates/form-datepicker.pug create mode 100644 storybook/design-system/src/pages/molecules/form-datepicker/templates/popper.pug create mode 100644 storybook/design-system/src/pages/molecules/form-file/data.json create mode 100644 storybook/design-system/src/pages/molecules/form-file/index.pug create mode 100644 storybook/design-system/src/pages/molecules/form-file/markdown/guidelines.md create mode 100644 storybook/design-system/src/pages/molecules/form-file/markdown/style.md create mode 100644 storybook/design-system/src/pages/molecules/form-file/templates/form-file-list-error.pug create mode 100644 storybook/design-system/src/pages/molecules/form-file/templates/form-file-list.pug create mode 100644 storybook/design-system/src/pages/molecules/form-file/templates/form-file.pug create mode 100644 storybook/design-system/src/pages/molecules/form-pass/data.json create mode 100644 storybook/design-system/src/pages/molecules/form-pass/index.pug create mode 100644 storybook/design-system/src/pages/molecules/form-pass/markdown/guidelines.md create mode 100644 storybook/design-system/src/pages/molecules/form-pass/markdown/style.md create mode 100644 storybook/design-system/src/pages/molecules/form-pass/templates/form-pass.pug create mode 100644 storybook/design-system/src/pages/molecules/form-radio-switch/data.json create mode 100644 storybook/design-system/src/pages/molecules/form-radio-switch/index.pug create mode 100644 storybook/design-system/src/pages/molecules/form-radio-switch/index.scss create mode 100644 storybook/design-system/src/pages/molecules/form-radio-switch/markdown/guidelines.md create mode 100644 storybook/design-system/src/pages/molecules/form-radio-switch/markdown/style.md create mode 100644 storybook/design-system/src/pages/molecules/form-radio-switch/templates/form-radio-switch.pug create mode 100644 storybook/design-system/src/pages/molecules/form-radio/data.json create mode 100644 storybook/design-system/src/pages/molecules/form-radio/index.pug create mode 100644 storybook/design-system/src/pages/molecules/form-radio/markdown/guidelines.md create mode 100644 storybook/design-system/src/pages/molecules/form-radio/markdown/style.md create mode 100644 storybook/design-system/src/pages/molecules/form-radio/templates/form-radio-custom-error.pug create mode 100644 storybook/design-system/src/pages/molecules/form-radio/templates/form-radio-custom-success.pug create mode 100644 storybook/design-system/src/pages/molecules/form-radio/templates/form-radio-custom.pug create mode 100644 storybook/design-system/src/pages/molecules/form-radio/templates/form-radio-error.pug create mode 100644 storybook/design-system/src/pages/molecules/form-radio/templates/form-radio-inline-error.pug create mode 100644 storybook/design-system/src/pages/molecules/form-radio/templates/form-radio-inline-success.pug create mode 100644 storybook/design-system/src/pages/molecules/form-radio/templates/form-radio-inline.pug create mode 100644 storybook/design-system/src/pages/molecules/form-radio/templates/form-radio-success.pug create mode 100644 storybook/design-system/src/pages/molecules/form-radio/templates/form-radio.pug create mode 100644 storybook/design-system/src/pages/molecules/form-select/data.json create mode 100644 storybook/design-system/src/pages/molecules/form-select/index.pug create mode 100644 storybook/design-system/src/pages/molecules/form-select/index.scss create mode 100644 storybook/design-system/src/pages/molecules/form-select/markdown/guidelines.md create mode 100644 storybook/design-system/src/pages/molecules/form-select/markdown/style.md create mode 100644 storybook/design-system/src/pages/molecules/form-select/templates/form-select-disabled.pug create mode 100644 storybook/design-system/src/pages/molecules/form-select/templates/form-select-error.pug create mode 100644 storybook/design-system/src/pages/molecules/form-select/templates/form-select-inline-error.pug create mode 100644 storybook/design-system/src/pages/molecules/form-select/templates/form-select-inline-success.pug create mode 100644 storybook/design-system/src/pages/molecules/form-select/templates/form-select-inline.pug create mode 100644 storybook/design-system/src/pages/molecules/form-select/templates/form-select-success.pug create mode 100644 storybook/design-system/src/pages/molecules/form-select/templates/form-select.pug create mode 100644 storybook/design-system/src/pages/molecules/form-text/data.json create mode 100644 storybook/design-system/src/pages/molecules/form-text/index.pug create mode 100644 storybook/design-system/src/pages/molecules/form-text/index.scss create mode 100644 storybook/design-system/src/pages/molecules/form-text/markdown/guidelines.md create mode 100644 storybook/design-system/src/pages/molecules/form-text/markdown/style.md create mode 100644 storybook/design-system/src/pages/molecules/form-text/templates/form-text-bulle-error.pug create mode 100644 storybook/design-system/src/pages/molecules/form-text/templates/form-text-bulle-success.pug create mode 100644 storybook/design-system/src/pages/molecules/form-text/templates/form-text-bulle.pug create mode 100644 storybook/design-system/src/pages/molecules/form-text/templates/form-text-clear-error.pug create mode 100644 storybook/design-system/src/pages/molecules/form-text/templates/form-text-clear.pug create mode 100644 storybook/design-system/src/pages/molecules/form-text/templates/form-text-disabled.pug create mode 100644 storybook/design-system/src/pages/molecules/form-text/templates/form-text-error.pug create mode 100644 storybook/design-system/src/pages/molecules/form-text/templates/form-text-success.pug create mode 100644 storybook/design-system/src/pages/molecules/form-text/templates/form-text.pug create mode 100644 storybook/design-system/src/pages/molecules/form-textarea/data.json create mode 100644 storybook/design-system/src/pages/molecules/form-textarea/index.pug create mode 100644 storybook/design-system/src/pages/molecules/form-textarea/markdown/guidelines.md create mode 100644 storybook/design-system/src/pages/molecules/form-textarea/markdown/style.md create mode 100644 storybook/design-system/src/pages/molecules/form-textarea/templates/form-textarea-disabled.pug create mode 100644 storybook/design-system/src/pages/molecules/form-textarea/templates/form-textarea-error.pug create mode 100644 storybook/design-system/src/pages/molecules/form-textarea/templates/form-textarea-success.pug create mode 100644 storybook/design-system/src/pages/molecules/form-textarea/templates/form-textarea.pug create mode 100644 storybook/design-system/src/pages/molecules/navigation/data.json create mode 100644 storybook/design-system/src/pages/molecules/navigation/index.pug create mode 100644 storybook/design-system/src/pages/molecules/navigation/markdown/guidelines.md create mode 100644 storybook/design-system/src/pages/molecules/navigation/markdown/style.md create mode 100644 storybook/design-system/src/pages/molecules/navigation/templates/classic.pug create mode 100644 storybook/design-system/src/pages/molecules/pager/data.json create mode 100644 storybook/design-system/src/pages/molecules/pager/index.pug create mode 100644 storybook/design-system/src/pages/molecules/pager/markdown/guidelines.md create mode 100644 storybook/design-system/src/pages/molecules/pager/markdown/style.md create mode 100644 storybook/design-system/src/pages/molecules/pager/templates/classic.pug create mode 100644 storybook/design-system/src/pages/molecules/steps-new/data.json create mode 100644 storybook/design-system/src/pages/molecules/steps-new/index.pug create mode 100644 storybook/design-system/src/pages/molecules/steps-new/index.scss create mode 100644 storybook/design-system/src/pages/molecules/steps-new/markdown/guidelines.md create mode 100644 storybook/design-system/src/pages/molecules/steps-new/markdown/style.md create mode 100644 storybook/design-system/src/pages/molecules/steps-new/templates/steps-new-sample2.pug create mode 100644 storybook/design-system/src/pages/molecules/steps-new/templates/steps-new-sample3.pug create mode 100644 storybook/design-system/src/pages/molecules/steps-new/templates/steps-new.pug create mode 100644 storybook/design-system/src/pages/molecules/steps/data.json create mode 100644 storybook/design-system/src/pages/molecules/steps/index.pug create mode 100644 storybook/design-system/src/pages/molecules/steps/index.scss create mode 100644 storybook/design-system/src/pages/molecules/steps/markdown/guidelines.md create mode 100644 storybook/design-system/src/pages/molecules/steps/markdown/style.md create mode 100644 storybook/design-system/src/pages/molecules/steps/templates/classic.pug create mode 100644 storybook/design-system/src/pages/molecules/table/data.json create mode 100644 storybook/design-system/src/pages/molecules/table/index.pug create mode 100644 storybook/design-system/src/pages/molecules/table/index.scss create mode 100644 storybook/design-system/src/pages/molecules/table/markdown/guidelines.md create mode 100644 storybook/design-system/src/pages/molecules/table/markdown/style.md create mode 100644 storybook/design-system/src/pages/molecules/table/templates/classic.pug create mode 100644 storybook/design-system/src/pages/molecules/table/templates/data.pug create mode 100644 storybook/design-system/src/pages/molecules/table/templates/headerCell.pug create mode 100644 storybook/design-system/src/pages/molecules/table/templates/line.pug create mode 100644 storybook/design-system/src/pages/molecules/table/templates/status.pug create mode 100644 storybook/design-system/src/pages/molecules/tabs/data.json create mode 100644 storybook/design-system/src/pages/molecules/tabs/index.pug create mode 100644 storybook/design-system/src/pages/molecules/tabs/markdown/guidelines.md create mode 100644 storybook/design-system/src/pages/molecules/tabs/markdown/style.md create mode 100644 storybook/design-system/src/pages/molecules/tabs/templates/tabs-complex.pug create mode 100644 storybook/design-system/src/pages/molecules/tabs/templates/tabs-long-text.pug create mode 100644 storybook/design-system/src/pages/molecules/tabs/templates/tabs.pug delete mode 100644 storybook/design-system/src/pages/molecules/title-bar/index.js.old delete mode 100644 storybook/design-system/src/pages/molecules/title-bar/index.pug.old delete mode 100644 storybook/design-system/src/pages/molecules/title-bar/markdown/content.md create mode 100644 storybook/design-system/src/pages/molecules/title-bar/markdown/guidelines.md delete mode 100644 storybook/design-system/src/pages/molecules/title-bar/markdown/importcss.md create mode 100644 storybook/design-system/src/pages/molecules/title-bar/markdown/style.md delete mode 100644 storybook/design-system/src/pages/molecules/title-bar/markdown/typography.md create mode 100644 storybook/design-system/src/pages/organisms/accordion/data.json create mode 100644 storybook/design-system/src/pages/organisms/accordion/index.pug create mode 100644 storybook/design-system/src/pages/organisms/accordion/index.scss create mode 100644 storybook/design-system/src/pages/organisms/accordion/markdown/guidelines.md create mode 100644 storybook/design-system/src/pages/organisms/accordion/markdown/style.md create mode 100644 storybook/design-system/src/pages/organisms/accordion/templates/accordion-light.pug create mode 100644 storybook/design-system/src/pages/organisms/accordion/templates/accordion-right-arrow.pug create mode 100644 storybook/design-system/src/pages/organisms/accordion/templates/accordion.pug create mode 100644 storybook/design-system/src/pages/organisms/accordion/templates/data-sample.pug create mode 100644 storybook/design-system/src/pages/organisms/footer-client/data.json create mode 100644 storybook/design-system/src/pages/organisms/footer-client/index.pug create mode 100644 storybook/design-system/src/pages/organisms/footer-client/index.scss create mode 100644 storybook/design-system/src/pages/organisms/footer-client/markdown/guidelines.md create mode 100644 storybook/design-system/src/pages/organisms/footer-client/markdown/style.md create mode 100644 storybook/design-system/src/pages/organisms/footer-client/templates/base.pug create mode 100644 storybook/design-system/src/pages/organisms/footer-client/templates/bottom.pug create mode 100644 storybook/design-system/src/pages/organisms/footer-client/templates/classic.pug create mode 100644 storybook/design-system/src/pages/organisms/footer-client/templates/footer-complex.pug create mode 100644 storybook/design-system/src/pages/organisms/footer-client/templates/footer-with-bottom.pug create mode 100644 storybook/design-system/src/pages/organisms/footer-client/templates/social.pug create mode 100644 storybook/design-system/src/pages/organisms/form-card/data.json create mode 100644 storybook/design-system/src/pages/organisms/form-card/index.pug create mode 100644 storybook/design-system/src/pages/organisms/form-card/index.scss create mode 100644 storybook/design-system/src/pages/organisms/form-card/markdown/guidelines.md create mode 100644 storybook/design-system/src/pages/organisms/form-card/markdown/style.md create mode 100644 storybook/design-system/src/pages/organisms/form-card/templates/form-card-active.pug create mode 100644 storybook/design-system/src/pages/organisms/form-card/templates/form-card-disabled.pug create mode 100644 storybook/design-system/src/pages/organisms/form-card/templates/form-card-group-four.pug create mode 100644 storybook/design-system/src/pages/organisms/form-card/templates/form-card-group-three.pug create mode 100644 storybook/design-system/src/pages/organisms/form-card/templates/form-card-group-two.pug create mode 100644 storybook/design-system/src/pages/organisms/form-card/templates/form-card-radio.pug create mode 100644 storybook/design-system/src/pages/organisms/form-card/templates/form-card.pug create mode 100644 storybook/design-system/src/pages/organisms/form-filter-inline/data.json create mode 100644 storybook/design-system/src/pages/organisms/form-filter-inline/index.pug create mode 100644 storybook/design-system/src/pages/organisms/form-filter-inline/index.scss create mode 100644 storybook/design-system/src/pages/organisms/form-filter-inline/markdown/guidelines.md create mode 100644 storybook/design-system/src/pages/organisms/form-filter-inline/markdown/style.md create mode 100644 storybook/design-system/src/pages/organisms/form-filter-inline/templates/form-filter-inline.pug create mode 100644 storybook/design-system/src/pages/organisms/form-filter/data.json create mode 100644 storybook/design-system/src/pages/organisms/form-filter/index.pug create mode 100644 storybook/design-system/src/pages/organisms/form-filter/markdown/guidelines.md create mode 100644 storybook/design-system/src/pages/organisms/form-filter/markdown/style.md create mode 100644 storybook/design-system/src/pages/organisms/form-filter/templates/form-filter.pug create mode 100644 storybook/design-system/src/pages/organisms/form/data.json create mode 100644 storybook/design-system/src/pages/organisms/form/index.pug create mode 100644 storybook/design-system/src/pages/organisms/form/markdown/guidelines.md create mode 100644 storybook/design-system/src/pages/organisms/form/markdown/style.md create mode 100644 storybook/design-system/src/pages/organisms/form/templates/classic.pug create mode 100644 storybook/design-system/src/pages/organisms/header/data.json create mode 100644 storybook/design-system/src/pages/organisms/header/index.pug create mode 100644 storybook/design-system/src/pages/organisms/header/index.scss create mode 100644 storybook/design-system/src/pages/organisms/header/markdown/guidelines.md create mode 100644 storybook/design-system/src/pages/organisms/header/markdown/style.md create mode 100644 storybook/design-system/src/pages/organisms/header/templates/classic.pug create mode 100644 storybook/design-system/src/pages/organisms/header/templates/header-nav.pug create mode 100644 storybook/design-system/src/pages/organisms/header/templates/header-titlebar.pug create mode 100644 storybook/design-system/src/pages/organisms/modal/data.json create mode 100644 storybook/design-system/src/pages/organisms/modal/index.pug create mode 100644 storybook/design-system/src/pages/organisms/modal/index.scss create mode 100644 storybook/design-system/src/pages/organisms/modal/markdown/guidelines.md create mode 100644 storybook/design-system/src/pages/organisms/modal/markdown/style.md create mode 100644 storybook/design-system/src/pages/organisms/modal/templates/iframe-modal-large.pug create mode 100644 storybook/design-system/src/pages/organisms/modal/templates/iframe-modal-small.pug create mode 100644 storybook/design-system/src/pages/organisms/modal/templates/iframe-modal.pug create mode 100644 storybook/design-system/src/pages/organisms/modal/templates/modal-large.pug create mode 100644 storybook/design-system/src/pages/organisms/modal/templates/modal-small.pug create mode 100644 storybook/design-system/src/pages/organisms/modal/templates/modal.pug create mode 100644 storybook/design-system/src/pages/organisms/paging/data.json create mode 100644 storybook/design-system/src/pages/organisms/paging/index.pug create mode 100644 storybook/design-system/src/pages/organisms/paging/index.scss create mode 100644 storybook/design-system/src/pages/organisms/paging/markdown/guidelines.md create mode 100644 storybook/design-system/src/pages/organisms/paging/markdown/style.md create mode 100644 storybook/design-system/src/pages/organisms/paging/templates/classic.pug create mode 100644 storybook/design-system/src/pages/organisms/panel/data.json create mode 100644 storybook/design-system/src/pages/organisms/panel/index.pug create mode 100644 storybook/design-system/src/pages/organisms/panel/index.scss create mode 100644 storybook/design-system/src/pages/organisms/panel/markdown/guidelines.md create mode 100644 storybook/design-system/src/pages/organisms/panel/markdown/style.md create mode 100644 storybook/design-system/src/pages/organisms/panel/templates/panel-list.pug create mode 100644 storybook/design-system/src/pages/organisms/panel/templates/panel-selection.pug create mode 100644 storybook/design-system/src/pages/organisms/panel/templates/panel.pug create mode 100644 storybook/design-system/src/pages/organisms/restitution/data.json create mode 100644 storybook/design-system/src/pages/organisms/restitution/index.pug create mode 100644 storybook/design-system/src/pages/organisms/restitution/markdown/guidelines.md create mode 100644 storybook/design-system/src/pages/organisms/restitution/markdown/style.md create mode 100644 storybook/design-system/src/pages/organisms/restitution/templates/restitution-double.pug create mode 100644 storybook/design-system/src/pages/organisms/restitution/templates/restitution-more.pug create mode 100644 storybook/design-system/src/pages/organisms/restitution/templates/restitution.pug create mode 100644 storybook/design-system/src/pages/pages/form/data.json create mode 100644 storybook/design-system/src/pages/pages/form/index.pug create mode 100644 storybook/design-system/src/pages/pages/form/index.scss create mode 100644 storybook/design-system/src/pages/pages/form/markdown/guidelines.md create mode 100644 storybook/design-system/src/pages/pages/form/markdown/style.md create mode 100644 storybook/design-system/src/pages/pages/form/templates/classic.pug create mode 100644 storybook/design-system/src/pages/pages/table/data.json create mode 100644 storybook/design-system/src/pages/pages/table/index.pug create mode 100644 storybook/design-system/src/pages/pages/table/index.scss create mode 100644 storybook/design-system/src/pages/pages/table/markdown/guidelines.md create mode 100644 storybook/design-system/src/pages/pages/table/markdown/style.md create mode 100644 storybook/design-system/src/pages/pages/table/templates/classic.pug create mode 100644 storybook/design-system/src/pages/style/colors/data.json create mode 100644 storybook/design-system/src/pages/style/colors/index.pug create mode 100644 storybook/design-system/src/pages/style/colors/index.scss rename storybook/design-system/src/pages/{molecules/title-bar/markdown/toneofvoice.md => style/colors/markdown/guidelines.md} (95%) create mode 100644 storybook/design-system/src/pages/style/colors/markdown/style.md create mode 100644 storybook/design-system/src/pages/style/colors/templates/classic.pug create mode 100644 storybook/design-system/src/pages/style/icons/data.json create mode 100644 storybook/design-system/src/pages/style/icons/index.pug create mode 100644 storybook/design-system/src/pages/style/icons/index.scss create mode 100644 storybook/design-system/src/pages/style/icons/markdown/guidelines.md create mode 100644 storybook/design-system/src/pages/style/icons/markdown/style.md create mode 100644 storybook/design-system/src/pages/style/icons/templates/icons-decli.pug diff --git a/scripts/tasks/assets.js b/scripts/tasks/assets.js index 220a30cbf..d31d1ae1d 100644 --- a/scripts/tasks/assets.js +++ b/scripts/tasks/assets.js @@ -116,14 +116,22 @@ gulp.task('iconfont', () => .pipe(gulp.dest(path.join(coreDist, 'fonts/icons'))) ); +gulp.task('copyiconfontcsstosass', () => + gulp + .src(path.join(coreDist, 'fonts/icons', '*.css')) + .pipe(rename({ extname: '.scss' })) + .pipe(gulp.dest(path.join(coreDist, 'fonts/icons'))) +); + gulp.task('assets', callback => { runSequence( 'copymedia', 'svgstore', + 'iconfont', 'copysvg', 'copycore', 'copyfonttypo', - 'iconfont', + 'copyiconfontcsstosass', callback ); }); diff --git a/storybook/design-system/gulpfile.babel.js/clean.js b/storybook/design-system/gulpfile.babel.js/clean.js index 1e3fcd898..33921f418 100644 --- a/storybook/design-system/gulpfile.babel.js/clean.js +++ b/storybook/design-system/gulpfile.babel.js/clean.js @@ -1,8 +1,11 @@ import del from 'del'; import config from './config'; -const { pathDest } = config; + +const { pathDest, pathImg } = config; const clean = () => del([`${pathDest}`]); export default clean; + +export const cleanImages = () => del([`${pathDest}/${pathImg}`]); diff --git a/storybook/design-system/gulpfile.babel.js/config.js b/storybook/design-system/gulpfile.babel.js/config.js index 2fbb1341e..bdfe64a91 100644 --- a/storybook/design-system/gulpfile.babel.js/config.js +++ b/storybook/design-system/gulpfile.babel.js/config.js @@ -16,4 +16,7 @@ export default { pathSvg: '/assets/icons', svgFiles: '/*.svg', pathSprite: '/assets/sprite', + pathImgFiles: '/assets/images', + imgFiles: '/*.{jpg,jpeg,svg,gif,png}', + pathFontToolkit: './node_modules/@axa-fr/react-toolkit-core/dist/assets/fonts/icons', }; diff --git a/storybook/design-system/gulpfile.babel.js/copy.js b/storybook/design-system/gulpfile.babel.js/copy.js index 697fcd872..e617e037d 100644 --- a/storybook/design-system/gulpfile.babel.js/copy.js +++ b/storybook/design-system/gulpfile.babel.js/copy.js @@ -5,8 +5,12 @@ import config from './config'; const { pathSrc, pathDest, pathImgDist } = config; -const copyImages = () => src(`${pathSrc}${pathImgDist}/**/*`) +const copyAssets = () => src(`${pathSrc}${pathImgDist}/**/*`) .pipe(chmod(777)) .pipe(dest(`${pathDest}${pathImgDist}`)); -export default copyImages; +export default copyAssets; + +export const copyImages = () => src(`${pathSrc}${pathImgDist}/images/**/*`) + .pipe(chmod(777)) + .pipe(dest(`${pathDest}${pathImgDist}/images`)); diff --git a/storybook/design-system/gulpfile.babel.js/copyiconfont.js b/storybook/design-system/gulpfile.babel.js/copyiconfont.js new file mode 100644 index 000000000..184ea73e1 --- /dev/null +++ b/storybook/design-system/gulpfile.babel.js/copyiconfont.js @@ -0,0 +1,8 @@ +import { src, dest } from 'gulp'; +import config from './config'; + +const { pathDest, pathFontToolkit } = config; + +const copyIconfont = () => src(`${pathFontToolkit}/*.{svg,eot,ttf,woff}`).pipe(dest(`${pathDest}`)); + +export default copyIconfont; diff --git a/storybook/design-system/gulpfile.babel.js/index.js b/storybook/design-system/gulpfile.babel.js/index.js index fb29f1ade..276a007ec 100644 --- a/storybook/design-system/gulpfile.babel.js/index.js +++ b/storybook/design-system/gulpfile.babel.js/index.js @@ -1,17 +1,31 @@ import { series } from 'gulp'; -import clean from './clean'; +import clean, { cleanImages } from './clean'; import jsDev, { jsProd } from './js'; import sassDev, { sassProd } from './sass'; import pugDev, { pugProd } from './pug'; -import copyImages from './copy'; +import copyAssets, { copyImages } from './copy'; import sprite from './sprite'; import serve from './serve'; +import copyIconfont from './copyiconfont'; -const build = series(clean, jsProd, sassProd, sprite, pugProd, copyImages); -const dev = series(clean, jsDev, sassDev, pugDev, copyImages, serve); +const reloadImages = series(cleanImages, copyImages); +const build = series(clean, jsProd, sassProd, sprite, pugProd, copyAssets, copyIconfont); +const dev = series(clean, jsDev, sassDev, pugDev, copyAssets, copyIconfont, serve); export default build; export { - dev, build, clean, jsDev, jsProd, sassProd, sassDev, pugDev, pugProd, copyImages, sprite, + dev, + build, + clean, + jsDev, + jsProd, + sassProd, + sassDev, + pugDev, + pugProd, + copyAssets, + sprite, + copyIconfont, + reloadImages, }; diff --git a/storybook/design-system/gulpfile.babel.js/pug.js b/storybook/design-system/gulpfile.babel.js/pug.js index 9a30f75d3..92faaa6e3 100644 --- a/storybook/design-system/gulpfile.babel.js/pug.js +++ b/storybook/design-system/gulpfile.babel.js/pug.js @@ -5,12 +5,16 @@ import pretty from 'pretty'; import pug from 'gulp-pug'; import plumber from 'gulp-plumber'; import fs from 'fs'; +import beautify from 'js-beautify'; import fetch from 'node-fetch'; import { reload } from './serve'; import config from './config'; import setClass from '../src/commons/js/setClass'; import setClassActive from '../src/commons/js/setClassActive'; +const beautifyCss = beautify.css; +const beautifyHtml = beautify.html; + global.fetch = fetch; const { pathSrc, pathDest } = config; @@ -33,12 +37,19 @@ const pugTsk = (baseurl = '') => { setClassActive, pugg, pretty, + fs, + beautifyCss, + beautifyHtml, }, require, baseurl, }; - return src([`${pathSrc}/index.pug`, `${pathSrc}/pages/**/*.pug`]) + return src([ + `${pathSrc}/index.pug`, + `${pathSrc}/pages/**/index.pug`, + `${pathSrc}/pages/**/iframe-*.pug`, + ]) .pipe(plumber()) .pipe( pug({ diff --git a/storybook/design-system/gulpfile.babel.js/sass.js b/storybook/design-system/gulpfile.babel.js/sass.js index b644446bf..65321f54e 100644 --- a/storybook/design-system/gulpfile.babel.js/sass.js +++ b/storybook/design-system/gulpfile.babel.js/sass.js @@ -20,6 +20,7 @@ export const sassProd = () => src(`${pathSrc}${sassIndex}`) includePaths: ['node_modules'], }).on('error', sass.logError), ) + .pipe( autoprefixer({ browsers: ['last 2 versions'], diff --git a/storybook/design-system/gulpfile.babel.js/serve.js b/storybook/design-system/gulpfile.babel.js/serve.js index 8b8ad5292..76eea72b0 100644 --- a/storybook/design-system/gulpfile.babel.js/serve.js +++ b/storybook/design-system/gulpfile.babel.js/serve.js @@ -4,6 +4,7 @@ import sass from './sass'; import js from './js'; import pug from './pug'; import sprite from './sprite'; +import { reloadImages } from '.'; import config from './config'; const browserSync = create(); @@ -18,17 +19,21 @@ const { jsonPageFiles, jsonFiles, svgFiles, + pathImgFiles, + imgFiles, pathSvg, } = config; +const initBrowserSync = () => browserSync.init({ + port: 5001, + server: { + watch: true, + baseDir: pathDest, + }, +}); + const serve = () => { - browserSync.init({ - port: 5001, - server: { - watch: true, - baseDir: pathDest, - }, - }); + initBrowserSync(); watch([`${pathSrc}${sassFiles}`], series(sass)); watch([`${pathSrc}${jsFiles}`], series(js)); @@ -44,6 +49,7 @@ const serve = () => { series(pug), ); watch([`${pathSrc}${pathSvg}${svgFiles}`], series(sprite)); + watch([`${pathSrc}${pathImgFiles}${imgFiles}`], series(reloadImages)); }; export default serve; diff --git a/storybook/design-system/package-lock.json b/storybook/design-system/package-lock.json index 2490aaca6..1faa5e797 100644 --- a/storybook/design-system/package-lock.json +++ b/storybook/design-system/package-lock.json @@ -1,6 +1,6 @@ { "name": "@axa-fr/design-system", - "version": "1.2.9", + "version": "1.2.13", "lockfileVersion": 1, "requires": true, "dependencies": { @@ -1058,6 +1058,14 @@ "integrity": "sha512-OtUw6JUTgxA2QoqqmrmQ7F2NYqiBPi/L2jqHyFtllhOUvXYQXf0Z1CYUinIfyT4bTCGmrA7gX9FvHA81uzCoVw==", "dev": true }, + "add-dom-event-listener": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/add-dom-event-listener/-/add-dom-event-listener-1.1.0.tgz", + "integrity": "sha512-WCxx1ixHT0GQU9hb0KI/mhgRQhnU+U3GvwY6ZvVjYq8rsihIGoaIOUbY0yMPBxLH5MDtr0kz3fisWGNcbWW7Jw==", + "requires": { + "object-assign": "4.x" + } + }, "after": { "version": "0.8.2", "resolved": "https://registry.npmjs.org/after/-/after-0.8.2.tgz", @@ -1068,7 +1076,6 @@ "version": "6.10.0", "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.0.tgz", "integrity": "sha512-nffhOpkymDECQyR0mnsUtoCE8RlX38G0rYP+wgLWFyZuUyuuojSSvi/+euOiQBIn63whYwYVIIH1TvE3tu4OEg==", - "dev": true, "requires": { "fast-deep-equal": "^2.0.1", "fast-json-stable-stringify": "^2.0.0", @@ -1087,6 +1094,11 @@ "repeat-string": "^1.5.2" } }, + "amdefine": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", + "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=" + }, "ansi-colors": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-1.1.0.tgz", @@ -1132,8 +1144,7 @@ "ansi-regex": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" }, "ansi-styles": { "version": "3.2.1", @@ -1180,12 +1191,26 @@ "buffer-equal": "^1.0.0" } }, + "aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" + }, "archy": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", "integrity": "sha1-+cjBN1fMHde8N5rHeyxipcKGjEA=", "dev": true }, + "are-we-there-yet": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", + "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==", + "requires": { + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" + } + }, "argparse": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", @@ -1255,8 +1280,7 @@ "array-find-index": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", - "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=", - "dev": true + "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=" }, "array-includes": { "version": "3.0.3", @@ -1383,7 +1407,6 @@ "version": "0.2.4", "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", - "dev": true, "requires": { "safer-buffer": "~2.1.0" } @@ -1428,8 +1451,7 @@ "assert-plus": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", - "dev": true + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" }, "assign-symbols": { "version": "1.0.0", @@ -1487,6 +1509,11 @@ "integrity": "sha1-dhfBkXQB/Yykooqtzj266Yr+tDI=", "dev": true }, + "async-foreach": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/async-foreach/-/async-foreach-0.1.3.tgz", + "integrity": "sha1-NhIfhFwFeBct5Bmpfb6x0W7DRUI=" + }, "async-limiter": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.0.tgz", @@ -1505,8 +1532,7 @@ "asynckit": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", - "dev": true + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" }, "atob": { "version": "2.1.2", @@ -1531,14 +1557,12 @@ "aws-sign2": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", - "dev": true + "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=" }, "aws4": { "version": "1.8.0", "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.8.0.tgz", - "integrity": "sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ==", - "dev": true + "integrity": "sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ==" }, "axios": { "version": "0.17.1", @@ -2222,7 +2246,6 @@ "version": "6.26.0", "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", - "dev": true, "requires": { "core-js": "^2.4.0", "regenerator-runtime": "^0.11.0" @@ -2231,14 +2254,12 @@ "core-js": { "version": "2.6.5", "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.5.tgz", - "integrity": "sha512-klh/kDpwX8hryYL14M9w/xei6vrv6sE8gTHDG7/T/+SEovB/G4ejwcfE/CBzO6Edsu+OETZMZ3wcX/EjUkrl5A==", - "dev": true + "integrity": "sha512-klh/kDpwX8hryYL14M9w/xei6vrv6sE8gTHDG7/T/+SEovB/G4ejwcfE/CBzO6Edsu+OETZMZ3wcX/EjUkrl5A==" }, "regenerator-runtime": { "version": "0.11.1", "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", - "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==", - "dev": true + "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==" } } }, @@ -2450,7 +2471,6 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", - "dev": true, "requires": { "tweetnacl": "^0.14.3" } @@ -2486,6 +2506,14 @@ "integrity": "sha512-gaqbzQPqOoamawKg0LGVd7SzLgXS+JH61oWprSLH+P+abTczqJbhTR8CmJ2u9/bUYNmHTGJx/UEmn6doAvvuig==", "dev": true }, + "block-stream": { + "version": "0.0.9", + "resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz", + "integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=", + "requires": { + "inherits": "~2.0.0" + } + }, "bn.js": { "version": "4.11.8", "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", @@ -2903,8 +2931,23 @@ "camelcase": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", - "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=", - "dev": true + "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=" + }, + "camelcase-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", + "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", + "requires": { + "camelcase": "^2.0.0", + "map-obj": "^1.0.0" + }, + "dependencies": { + "camelcase": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", + "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=" + } + } }, "caniuse-lite": { "version": "1.0.30000963", @@ -2915,8 +2958,7 @@ "caseless": { "version": "0.12.0", "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", - "dev": true + "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=" }, "ccount": { "version": "1.0.3", @@ -3054,6 +3096,11 @@ } } }, + "classnames": { + "version": "2.2.6", + "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.2.6.tgz", + "integrity": "sha512-JR/iSQOSt+LQIWwrwEzJ9uk0xfN3mTVYMwt1Ir5mUcSN6pU+V4zQFFaJsclJbPuAUQH+yfWef6tm7l1quW3C8Q==" + }, "clean-css": { "version": "4.2.1", "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.1.tgz", @@ -3082,7 +3129,6 @@ "version": "3.2.0", "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", - "dev": true, "requires": { "string-width": "^1.0.1", "strip-ansi": "^3.0.1", @@ -3148,8 +3194,7 @@ "code-point-at": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", - "dev": true + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" }, "collapse-white-space": { "version": "1.0.4", @@ -3271,7 +3316,6 @@ "version": "1.0.7", "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.7.tgz", "integrity": "sha512-brWl9y6vOB1xYPZcpZde3N9zDByXTosAeMDo4p1wzo6UMOX4vumB+TP1RZ76sfE6Md68Q0NJSrE/gbezd4Ul+w==", - "dev": true, "requires": { "delayed-stream": "~1.0.0" } @@ -3292,12 +3336,25 @@ "integrity": "sha1-AMYIq33Nk4l8AAllGx06jh5zu9E=", "dev": true }, + "component-classes": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/component-classes/-/component-classes-1.2.6.tgz", + "integrity": "sha1-xkI5TDYYpNiwuJGe/Mu9kw5c1pE=", + "requires": { + "component-indexof": "0.0.3" + } + }, "component-emitter": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz", "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=", "dev": true }, + "component-indexof": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/component-indexof/-/component-indexof-0.0.3.tgz", + "integrity": "sha1-EdCRMSI5648yyPJa6csAL/6NPCQ=" + }, "component-inherit": { "version": "0.0.3", "resolved": "https://registry.npmjs.org/component-inherit/-/component-inherit-0.0.3.tgz", @@ -3393,6 +3450,11 @@ "date-now": "^0.1.4" } }, + "console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" + }, "constantinople": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/constantinople/-/constantinople-3.1.2.tgz", @@ -3482,8 +3544,7 @@ "core-util-is": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", - "dev": true + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" }, "cosmiconfig": { "version": "5.2.0", @@ -3616,6 +3677,15 @@ "urix": "^0.1.0" } }, + "css-animation": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/css-animation/-/css-animation-1.6.1.tgz", + "integrity": "sha512-/48+/BaEaHRY6kNQ2OIPzKf9A6g8WjZYjhiNDNuIVbsm5tXCGIAsHDjB4Xu1C4vXJtUWZo26O68OQkDpNBaPog==", + "requires": { + "babel-runtime": "6.x", + "component-classes": "^1.2.5" + } + }, "css-select": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/css-select/-/css-select-2.0.2.tgz", @@ -3713,7 +3783,6 @@ "version": "0.4.1", "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", - "dev": true, "requires": { "array-find-index": "^1.0.1" } @@ -3743,7 +3812,6 @@ "version": "1.14.1", "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", - "dev": true, "requires": { "assert-plus": "^1.0.0" } @@ -3800,8 +3868,7 @@ "decamelize": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": true + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=" }, "decamelize-keys": { "version": "1.1.0", @@ -3937,8 +4004,12 @@ "delayed-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", - "dev": true + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" + }, + "delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" }, "depd": { "version": "1.1.2", @@ -4089,6 +4160,11 @@ "integrity": "sha1-6oCxBqh1OHdOijpKWv4pPeSJ4Kk=", "dev": true }, + "dom-align": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/dom-align/-/dom-align-1.10.2.tgz", + "integrity": "sha512-AYZUzLepy05E9bCY4ExoqHrrIlM49PEak9oF93JEFoibqKL0F7w5DLM70/rosLOawerWZ3MlepQcl+EmHskOyw==" + }, "dom-serializer": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.1.tgz", @@ -4192,7 +4268,6 @@ "version": "0.1.2", "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", - "dev": true, "requires": { "jsbn": "~0.1.0", "safer-buffer": "^2.1.0" @@ -4381,7 +4456,6 @@ "version": "1.3.2", "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", - "dev": true, "requires": { "is-arrayish": "^0.2.1" } @@ -4470,8 +4544,7 @@ "escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" }, "eslint": { "version": "5.16.0", @@ -5017,8 +5090,7 @@ "extend": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "dev": true + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" }, "extend-shallow": { "version": "2.0.1", @@ -5133,8 +5205,7 @@ "extsprintf": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", - "dev": true + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=" }, "fancy-log": { "version": "1.3.3", @@ -5151,8 +5222,7 @@ "fast-deep-equal": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", - "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", - "dev": true + "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=" }, "fast-glob": { "version": "2.2.6", @@ -5188,8 +5258,7 @@ "fast-json-stable-stringify": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", - "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=", - "dev": true + "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=" }, "fast-levenshtein": { "version": "2.0.6", @@ -5446,14 +5515,12 @@ "forever-agent": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", - "dev": true + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=" }, "form-data": { "version": "2.3.3", "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", - "dev": true, "requires": { "asynckit": "^0.4.0", "combined-stream": "^1.0.6", @@ -6049,6 +6116,17 @@ } } }, + "fstream": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.12.tgz", + "integrity": "sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg==", + "requires": { + "graceful-fs": "^4.1.2", + "inherits": "~2.0.0", + "mkdirp": ">=0.5 0", + "rimraf": "2" + } + }, "function-bind": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", @@ -6061,6 +6139,29 @@ "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", "dev": true }, + "gauge": { + "version": "2.7.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", + "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", + "requires": { + "aproba": "^1.0.3", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.0", + "object-assign": "^4.1.0", + "signal-exit": "^3.0.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wide-align": "^1.1.0" + } + }, + "gaze": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/gaze/-/gaze-1.1.3.tgz", + "integrity": "sha512-BRdNm8hbWzFzWHERTrejLqwHDfS4GibPoq5wjTPIoJHoBtKGPg3xAFfxmM+9ztbXelxcf2hwQcaz1PtmFeue8g==", + "requires": { + "globule": "^1.0.0" + } + }, "get-assigned-identifiers": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/get-assigned-identifiers/-/get-assigned-identifiers-1.2.0.tgz", @@ -6070,8 +6171,12 @@ "get-caller-file": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", - "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", - "dev": true + "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==" + }, + "get-stdin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", + "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=" }, "get-stream": { "version": "4.1.0", @@ -6104,7 +6209,6 @@ "version": "0.1.7", "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", - "dev": true, "requires": { "assert-plus": "^1.0.0" } @@ -6244,6 +6348,16 @@ "integrity": "sha1-L0SUrIkZ43Z8XLtpHp9GMyQoXUM=", "dev": true }, + "globule": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/globule/-/globule-1.2.1.tgz", + "integrity": "sha512-g7QtgWF4uYSL5/dn71WxubOrS7JVGCnFPEnoeChJmBnyR9Mw8nGoEwOgJL/RC2Te0WhbsEUCejfH8SZNJ+adYQ==", + "requires": { + "glob": "~7.1.1", + "lodash": "~4.17.10", + "minimatch": "~3.0.2" + } + }, "glogg": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/glogg/-/glogg-1.0.2.tgz", @@ -6273,8 +6387,7 @@ "graceful-fs": { "version": "4.1.15", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", - "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==", - "dev": true + "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==" }, "growl": { "version": "1.10.5", @@ -6731,14 +6844,12 @@ "har-schema": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", - "dev": true + "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=" }, "har-validator": { "version": "5.1.3", "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz", "integrity": "sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==", - "dev": true, "requires": { "ajv": "^6.5.5", "har-schema": "^2.0.0" @@ -6757,7 +6868,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", - "dev": true, "requires": { "ansi-regex": "^2.0.0" } @@ -6798,6 +6908,11 @@ "integrity": "sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q=", "dev": true }, + "has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=" + }, "has-value": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", @@ -6899,8 +7014,7 @@ "hosted-git-info": { "version": "2.7.1", "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.7.1.tgz", - "integrity": "sha512-7T/BxH19zbcCTa8XkMlbK5lTo1WtgkFi3GvdWEyNuc4Vex7/9Dqbnpsf4JMydcfj9HCg4zUWFTL3Za6lapg5/w==", - "dev": true + "integrity": "sha512-7T/BxH19zbcCTa8XkMlbK5lTo1WtgkFi3GvdWEyNuc4Vex7/9Dqbnpsf4JMydcfj9HCg4zUWFTL3Za6lapg5/w==" }, "html-tags": { "version": "2.0.0", @@ -6976,7 +7090,6 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", - "dev": true, "requires": { "assert-plus": "^1.0.0", "jsprim": "^1.2.2", @@ -7038,6 +7151,19 @@ "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", "dev": true }, + "in-publish": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/in-publish/-/in-publish-2.0.0.tgz", + "integrity": "sha1-4g/146KvwmkDILbcVSaCqcf631E=" + }, + "indent-string": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", + "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", + "requires": { + "repeating": "^2.0.0" + } + }, "indexes-of": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz", @@ -7204,8 +7330,7 @@ "invert-kv": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz", - "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=", - "dev": true + "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=" }, "is-absolute": { "version": "1.0.0", @@ -7251,8 +7376,7 @@ "is-arrayish": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", - "dev": true + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=" }, "is-binary-path": { "version": "1.0.1", @@ -7353,7 +7477,6 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz", "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", - "dev": true, "requires": { "number-is-nan": "^1.0.0" } @@ -7362,7 +7485,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "dev": true, "requires": { "number-is-nan": "^1.0.0" } @@ -7514,8 +7636,7 @@ "is-typedarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", - "dev": true + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=" }, "is-unc-path": { "version": "1.0.0", @@ -7529,8 +7650,7 @@ "is-utf8": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", - "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", - "dev": true + "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=" }, "is-valid-glob": { "version": "1.0.0", @@ -7585,8 +7705,7 @@ "isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", - "dev": true + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" }, "isobject": { "version": "3.0.1", @@ -7619,18 +7738,22 @@ "isstream": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", - "dev": true + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" + }, + "js-base64": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.5.1.tgz", + "integrity": "sha512-M7kLczedRMYX4L8Mdh4MzyAMM9O5osx+4FcOQuTvr3A9F2D9S5JXheN0ewNbrvK2UatkTRhL5ejGmGSjNMiZuw==" }, "js-beautify": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.9.1.tgz", - "integrity": "sha512-oxxvVZdOdUfzk8IOLBF2XUZvl2GoBEfA+b0of4u2EBY/46NlXasi8JdFvazA5lCrf9/lQhTjyVy2QCUW7iq0MQ==", + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.10.2.tgz", + "integrity": "sha512-ZtBYyNUYJIsBWERnQP0rPN9KjkrDfJcMjuVGcvXOUJrD1zmOGwhRwQ4msG+HJ+Ni/FA7+sRQEMYVzdTQDvnzvQ==", "requires": { "config-chain": "^1.1.12", - "editorconfig": "^0.15.2", + "editorconfig": "^0.15.3", "glob": "^7.1.3", - "mkdirp": "~0.5.0", + "mkdirp": "~0.5.1", "nopt": "~4.0.1" } }, @@ -7649,8 +7772,7 @@ "js-tokens": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" }, "js-yaml": { "version": "3.13.1", @@ -7665,8 +7787,7 @@ "jsbn": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", - "dev": true + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=" }, "jsesc": { "version": "2.5.2", @@ -7683,14 +7804,12 @@ "json-schema": { "version": "0.2.3", "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", - "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", - "dev": true + "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=" }, "json-schema-traverse": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" }, "json-stable-stringify": { "version": "0.0.1", @@ -7710,8 +7829,7 @@ "json-stringify-safe": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", - "dev": true + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=" }, "json5": { "version": "2.1.0", @@ -7755,7 +7873,6 @@ "version": "1.4.1", "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", - "dev": true, "requires": { "assert-plus": "1.0.0", "extsprintf": "1.3.0", @@ -7781,6 +7898,15 @@ "markdown-it": "^8.0.0" } }, + "jstransformer-scss": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/jstransformer-scss/-/jstransformer-scss-1.0.0.tgz", + "integrity": "sha1-uuOMsRL104hxIQwiyc9KFqDp9zg=", + "requires": { + "extend-shallow": "^2.0.1", + "node-sass": "^4.0.0" + } + }, "jsx-ast-utils": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-2.1.0.tgz", @@ -7882,7 +8008,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", - "dev": true, "requires": { "invert-kv": "^1.0.0" } @@ -7946,7 +8071,6 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", - "dev": true, "requires": { "graceful-fs": "^4.1.2", "parse-json": "^2.2.0", @@ -7958,8 +8082,7 @@ "pify": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" } } }, @@ -8080,8 +8203,7 @@ "lodash._getnative": { "version": "3.9.1", "resolved": "https://registry.npmjs.org/lodash._getnative/-/lodash._getnative-3.9.1.tgz", - "integrity": "sha1-VwvH3t5G1hzc3mh9ZdPuy6o6r/U=", - "dev": true + "integrity": "sha1-VwvH3t5G1hzc3mh9ZdPuy6o6r/U=" }, "lodash._topath": { "version": "3.8.1", @@ -8107,14 +8229,12 @@ "lodash.isarguments": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz", - "integrity": "sha1-L1c9hcaiQon/AGY7SRwdM4/zRYo=", - "dev": true + "integrity": "sha1-L1c9hcaiQon/AGY7SRwdM4/zRYo=" }, "lodash.isarray": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/lodash.isarray/-/lodash.isarray-3.0.4.tgz", - "integrity": "sha1-eeTriMNqgSKvhvhEqpvNhRtfu1U=", - "dev": true + "integrity": "sha1-eeTriMNqgSKvhvhEqpvNhRtfu1U=" }, "lodash.isfinite": { "version": "3.3.2", @@ -8138,7 +8258,6 @@ "version": "3.1.2", "resolved": "https://registry.npmjs.org/lodash.keys/-/lodash.keys-3.1.2.tgz", "integrity": "sha1-TbwEcrFWvlCgsoaFXRvQsMZWCYo=", - "dev": true, "requires": { "lodash._getnative": "^3.0.0", "lodash.isarguments": "^3.0.0", @@ -8229,7 +8348,6 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", - "dev": true, "requires": { "js-tokens": "^3.0.0 || ^4.0.0" } @@ -8238,7 +8356,6 @@ "version": "1.6.0", "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", - "dev": true, "requires": { "currently-unhandled": "^0.4.1", "signal-exit": "^3.0.0" @@ -8321,8 +8438,7 @@ "map-obj": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", - "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", - "dev": true + "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=" }, "map-visit": { "version": "1.0.0", @@ -8476,6 +8592,30 @@ "integrity": "sha1-htcJCzDORV1j+64S3aUaR93K+bI=", "dev": true }, + "meow": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", + "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", + "requires": { + "camelcase-keys": "^2.0.0", + "decamelize": "^1.1.2", + "loud-rejection": "^1.0.0", + "map-obj": "^1.0.1", + "minimist": "^1.1.3", + "normalize-package-data": "^2.3.4", + "object-assign": "^4.0.1", + "read-pkg-up": "^1.0.1", + "redent": "^1.0.0", + "trim-newlines": "^1.0.0" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" + } + } + }, "merge2": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.2.3.tgz", @@ -8549,14 +8689,12 @@ "mime-db": { "version": "1.40.0", "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.40.0.tgz", - "integrity": "sha512-jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA==", - "dev": true + "integrity": "sha512-jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA==" }, "mime-types": { "version": "2.1.24", "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.24.tgz", "integrity": "sha512-WaFHS3MCl5fapm3oLxU4eYDw77IQM2ACcxQ9RIxfaC3ooc6PFuBMGZZsYpvoXS5D5QTWPieo1jjLdAm3TBP3cQ==", - "dev": true, "requires": { "mime-db": "1.40.0" } @@ -8752,9 +8890,7 @@ "nan": { "version": "2.13.2", "resolved": "https://registry.npmjs.org/nan/-/nan-2.13.2.tgz", - "integrity": "sha512-TghvYc72wlMGMVMluVo9WRJc0mB8KxxF/gZ4YYFy7V2ZQX9l7rgbPg7vjS9mt6U5HXODVFVI2bOduCzwOMv/lw==", - "dev": true, - "optional": true + "integrity": "sha512-TghvYc72wlMGMVMluVo9WRJc0mB8KxxF/gZ4YYFy7V2ZQX9l7rgbPg7vjS9mt6U5HXODVFVI2bOduCzwOMv/lw==" }, "nanomatch": { "version": "1.2.13", @@ -8832,6 +8968,40 @@ "integrity": "sha512-YuZKluhWGJwCcUu4RlZstdAxr8bFfOVHakc1mplwHkk8J+tqM1Y5yraYvIUpeX8aY7+crCwiELJq7Vl0o0LWXw==", "dev": true }, + "node-gyp": { + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-3.8.0.tgz", + "integrity": "sha512-3g8lYefrRRzvGeSowdJKAKyks8oUpLEd/DyPV4eMhVlhJ0aNaZqIrNUIPuEWWTAoPqyFkfGrM67MC69baqn6vA==", + "requires": { + "fstream": "^1.0.0", + "glob": "^7.0.3", + "graceful-fs": "^4.1.2", + "mkdirp": "^0.5.0", + "nopt": "2 || 3", + "npmlog": "0 || 1 || 2 || 3 || 4", + "osenv": "0", + "request": "^2.87.0", + "rimraf": "2", + "semver": "~5.3.0", + "tar": "^2.0.0", + "which": "1" + }, + "dependencies": { + "nopt": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz", + "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=", + "requires": { + "abbrev": "1" + } + }, + "semver": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz", + "integrity": "sha1-myzl094C0XxgEq0yaqa00M9U+U8=" + } + } + }, "node-modules-regexp": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz", @@ -8846,6 +9016,63 @@ "semver": "^5.3.0" } }, + "node-sass": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/node-sass/-/node-sass-4.12.0.tgz", + "integrity": "sha512-A1Iv4oN+Iel6EPv77/HddXErL2a+gZ4uBeZUy+a8O35CFYTXhgA8MgLCWBtwpGZdCvTvQ9d+bQxX/QC36GDPpQ==", + "requires": { + "async-foreach": "^0.1.3", + "chalk": "^1.1.1", + "cross-spawn": "^3.0.0", + "gaze": "^1.0.0", + "get-stdin": "^4.0.1", + "glob": "^7.0.3", + "in-publish": "^2.0.0", + "lodash": "^4.17.11", + "meow": "^3.7.0", + "mkdirp": "^0.5.1", + "nan": "^2.13.2", + "node-gyp": "^3.8.0", + "npmlog": "^4.0.0", + "request": "^2.88.0", + "sass-graph": "^2.2.4", + "stdout-stream": "^1.4.0", + "true-case-path": "^1.0.2" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=" + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "requires": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + } + }, + "cross-spawn": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-3.0.1.tgz", + "integrity": "sha1-ElYDfsufDF9549bvE14wdwGEuYI=", + "requires": { + "lru-cache": "^4.0.1", + "which": "^1.2.9" + } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=" + } + } + }, "nopt": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/nopt/-/nopt-4.0.1.tgz", @@ -8859,7 +9086,6 @@ "version": "2.5.0", "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", - "dev": true, "requires": { "hosted-git-info": "^2.1.4", "resolve": "^1.10.0", @@ -8981,6 +9207,17 @@ "path-key": "^2.0.0" } }, + "npmlog": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", + "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", + "requires": { + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" + } + }, "nth-check": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", @@ -8999,20 +9236,17 @@ "number-is-nan": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", - "dev": true + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" }, "oauth-sign": { "version": "0.9.0", "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", - "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", - "dev": true + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==" }, "object-assign": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", - "dev": true + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" }, "object-component": { "version": "0.0.3", @@ -9235,7 +9469,6 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=", - "dev": true, "requires": { "lcid": "^1.0.0" } @@ -9375,7 +9608,6 @@ "version": "2.2.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", - "dev": true, "requires": { "error-ex": "^1.2.0" } @@ -9459,8 +9691,7 @@ "path-parse": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", - "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", - "dev": true + "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==" }, "path-platform": { "version": "0.11.15", @@ -9487,7 +9718,6 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", - "dev": true, "requires": { "graceful-fs": "^4.1.2", "pify": "^2.0.0", @@ -9497,8 +9727,7 @@ "pify": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" } } }, @@ -9524,8 +9753,7 @@ "performance-now": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", - "dev": true + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" }, "phantomjs-prebuilt": { "version": "2.1.16", @@ -9592,14 +9820,12 @@ "pinkie": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", - "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", - "dev": true + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=" }, "pinkie-promise": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", - "dev": true, "requires": { "pinkie": "^2.0.0" } @@ -9852,8 +10078,7 @@ "process-nextick-args": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", - "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==", - "dev": true + "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==" }, "progress": { "version": "2.0.3", @@ -9870,6 +10095,16 @@ "asap": "~2.0.3" } }, + "prop-types": { + "version": "15.7.2", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz", + "integrity": "sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==", + "requires": { + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "react-is": "^16.8.1" + } + }, "proto-list": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/proto-list/-/proto-list-1.2.4.tgz", @@ -9883,8 +10118,7 @@ "psl": { "version": "1.1.31", "resolved": "https://registry.npmjs.org/psl/-/psl-1.1.31.tgz", - "integrity": "sha512-/6pt4+C+T+wZUieKR620OpzN/LlnNKuWjy1iFLQ/UG35JqHlR/89MP1d96dUfkf6Dne3TuLQzOYEYshJ+Hx8mw==", - "dev": true + "integrity": "sha512-/6pt4+C+T+wZUieKR620OpzN/LlnNKuWjy1iFLQ/UG35JqHlR/89MP1d96dUfkf6Dne3TuLQzOYEYshJ+Hx8mw==" }, "public-encrypt": { "version": "4.0.3", @@ -10090,8 +10324,7 @@ "punycode": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", - "dev": true + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=" }, "q": { "version": "1.5.1", @@ -10123,6 +10356,14 @@ "integrity": "sha1-Q2CxfGETatOAeDl/8RQW4Ybc+7g=", "dev": true }, + "raf": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/raf/-/raf-3.4.1.tgz", + "integrity": "sha512-Sq4CW4QhwOHE8ucn6J34MqtZCeWFP2aQSmrlroYgqAV1PjStIhJXxYuTgUIfkEk7zTLjmIjLmU5q+fbD1NnOJA==", + "requires": { + "performance-now": "^2.1.0" + } + }, "randombytes": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", @@ -10160,6 +10401,92 @@ "unpipe": "1.0.0" } }, + "rc-align": { + "version": "2.4.5", + "resolved": "https://registry.npmjs.org/rc-align/-/rc-align-2.4.5.tgz", + "integrity": "sha512-nv9wYUYdfyfK+qskThf4BQUSIadeI/dCsfaMZfNEoxm9HwOIioQ+LyqmMK6jWHAZQgOzMLaqawhuBXlF63vgjw==", + "requires": { + "babel-runtime": "^6.26.0", + "dom-align": "^1.7.0", + "prop-types": "^15.5.8", + "rc-util": "^4.0.4" + } + }, + "rc-animate": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/rc-animate/-/rc-animate-2.10.0.tgz", + "integrity": "sha512-gZM3WteZO0e3X8B71KP0bs95EY2tAPRuiZyKnlhdLpOjTX/64SrhDZM3pT2Z8mJjKWNiiB5q2SSSf+BD8ljwVw==", + "requires": { + "babel-runtime": "6.x", + "classnames": "^2.2.6", + "css-animation": "^1.3.2", + "prop-types": "15.x", + "raf": "^3.4.0", + "rc-util": "^4.8.0", + "react-lifecycles-compat": "^3.0.4" + } + }, + "rc-slider": { + "version": "8.7.1", + "resolved": "https://registry.npmjs.org/rc-slider/-/rc-slider-8.7.1.tgz", + "integrity": "sha512-WMT5mRFUEcrLWwTxsyS8jYmlaMsTVCZIGENLikHsNv+tE8ThU2lCoPfi/xFNUfJFNFSBFP3MwPez9ZsJmNp13g==", + "requires": { + "babel-runtime": "6.x", + "classnames": "^2.2.5", + "prop-types": "^15.5.4", + "rc-tooltip": "^3.7.0", + "rc-util": "^4.0.4", + "react-lifecycles-compat": "^3.0.4", + "shallowequal": "^1.1.0", + "warning": "^4.0.3" + } + }, + "rc-tooltip": { + "version": "3.7.3", + "resolved": "https://registry.npmjs.org/rc-tooltip/-/rc-tooltip-3.7.3.tgz", + "integrity": "sha512-dE2ibukxxkrde7wH9W8ozHKUO4aQnPZ6qBHtrTH9LoO836PjDdiaWO73fgPB05VfJs9FbZdmGPVEbXCeOP99Ww==", + "requires": { + "babel-runtime": "6.x", + "prop-types": "^15.5.8", + "rc-trigger": "^2.2.2" + } + }, + "rc-trigger": { + "version": "2.6.5", + "resolved": "https://registry.npmjs.org/rc-trigger/-/rc-trigger-2.6.5.tgz", + "integrity": "sha512-m6Cts9hLeZWsTvWnuMm7oElhf+03GOjOLfTuU0QmdB9ZrW7jR2IpI5rpNM7i9MvAAlMAmTx5Zr7g3uu/aMvZAw==", + "requires": { + "babel-runtime": "6.x", + "classnames": "^2.2.6", + "prop-types": "15.x", + "rc-align": "^2.4.0", + "rc-animate": "2.x", + "rc-util": "^4.4.0", + "react-lifecycles-compat": "^3.0.4" + } + }, + "rc-util": { + "version": "4.11.0", + "resolved": "https://registry.npmjs.org/rc-util/-/rc-util-4.11.0.tgz", + "integrity": "sha512-nB29kXOXsSVjBkWfH+Z1GVh6tRg7XGZtZ0Yfie+OI0stCDixGQ1cPrS6iYxlg+AV2St6COCK5MFrCmpTgghh0w==", + "requires": { + "add-dom-event-listener": "^1.1.0", + "babel-runtime": "6.x", + "prop-types": "^15.5.10", + "react-lifecycles-compat": "^3.0.4", + "shallowequal": "^0.2.2" + }, + "dependencies": { + "shallowequal": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/shallowequal/-/shallowequal-0.2.2.tgz", + "integrity": "sha1-HjL9W8q2rWiKSBLLDMBO/HXHAU4=", + "requires": { + "lodash.keys": "^3.1.2" + } + } + } + }, "react-datepicker": { "version": "2.5.0", "resolved": "https://registry.npmjs.org/react-datepicker/-/react-datepicker-2.5.0.tgz", @@ -10209,8 +10536,12 @@ "react-is": { "version": "16.8.6", "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.8.6.tgz", - "integrity": "sha512-aUk3bHfZ2bRSVFFbbeVS4i+lNPZr3/WM5jT2J5omUVV1zzcs1nAaf3l51ctA5FFvCRbhrH0bdAsRRQddFJZPtA==", - "dev": true + "integrity": "sha512-aUk3bHfZ2bRSVFFbbeVS4i+lNPZr3/WM5jT2J5omUVV1zzcs1nAaf3l51ctA5FFvCRbhrH0bdAsRRQddFJZPtA==" + }, + "react-lifecycles-compat": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz", + "integrity": "sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==" }, "react-onclickoutside": { "version": "6.8.0", @@ -10231,7 +10562,6 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", - "dev": true, "requires": { "load-json-file": "^1.0.0", "normalize-package-data": "^2.3.2", @@ -10242,7 +10572,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", - "dev": true, "requires": { "find-up": "^1.0.0", "read-pkg": "^1.0.0" @@ -10252,7 +10581,6 @@ "version": "1.1.2", "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", - "dev": true, "requires": { "path-exists": "^2.0.0", "pinkie-promise": "^2.0.0" @@ -10262,7 +10590,6 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", - "dev": true, "requires": { "pinkie-promise": "^2.0.0" } @@ -10273,7 +10600,6 @@ "version": "2.3.6", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", - "dev": true, "requires": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -10287,8 +10613,7 @@ "isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" } } }, @@ -10312,6 +10637,15 @@ "resolve": "^1.1.6" } }, + "redent": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", + "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", + "requires": { + "indent-string": "^2.1.0", + "strip-indent": "^1.0.1" + } + }, "regenerate": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.0.tgz", @@ -10521,7 +10855,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", - "dev": true, "requires": { "is-finite": "^1.0.0" } @@ -10547,7 +10880,6 @@ "version": "2.88.0", "resolved": "https://registry.npmjs.org/request/-/request-2.88.0.tgz", "integrity": "sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==", - "dev": true, "requires": { "aws-sign2": "~0.7.0", "aws4": "^1.8.0", @@ -10574,8 +10906,7 @@ "qs": { "version": "6.5.2", "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", - "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", - "dev": true + "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==" } } }, @@ -10591,14 +10922,12 @@ "require-directory": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", - "dev": true + "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=" }, "require-main-filename": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", - "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=", - "dev": true + "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=" }, "requires-port": { "version": "1.0.0", @@ -10610,7 +10939,6 @@ "version": "1.10.1", "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.10.1.tgz", "integrity": "sha512-KuIe4mf++td/eFb6wkaPbMDnP6kObCaEtIDuHOUED6MNUo4K670KZUHuuvYPZDxNF0WVLw49n06M2m2dXphEzA==", - "dev": true, "requires": { "path-parse": "^1.0.6" } @@ -10702,7 +11030,6 @@ "version": "2.6.3", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", - "dev": true, "requires": { "glob": "^7.1.3" } @@ -10744,8 +11071,7 @@ "safe-buffer": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" }, "safe-regex": { "version": "1.1.0", @@ -10759,8 +11085,48 @@ "safer-buffer": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, + "sass-graph": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/sass-graph/-/sass-graph-2.2.4.tgz", + "integrity": "sha1-E/vWPNHK8JCLn9k0dq1DpR0eC0k=", + "requires": { + "glob": "^7.0.0", + "lodash": "^4.0.0", + "scss-tokenizer": "^0.2.3", + "yargs": "^7.0.0" + }, + "dependencies": { + "yargs": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-7.1.0.tgz", + "integrity": "sha1-a6MY6xaWFyf10oT46gA+jWFU0Mg=", + "requires": { + "camelcase": "^3.0.0", + "cliui": "^3.2.0", + "decamelize": "^1.1.1", + "get-caller-file": "^1.0.1", + "os-locale": "^1.4.0", + "read-pkg-up": "^1.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^1.0.2", + "which-module": "^1.0.0", + "y18n": "^3.2.1", + "yargs-parser": "^5.0.0" + } + }, + "yargs-parser": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-5.0.0.tgz", + "integrity": "sha1-J17PDX/+Bcd+ZOfIbkzZS/DhIoo=", + "requires": { + "camelcase": "^3.0.0" + } + } + } }, "sax": { "version": "1.2.4", @@ -10768,6 +11134,25 @@ "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", "dev": true }, + "scss-tokenizer": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz", + "integrity": "sha1-jrBtualyMzOCTT9VMGQRSYR85dE=", + "requires": { + "js-base64": "^2.1.8", + "source-map": "^0.4.2" + }, + "dependencies": { + "source-map": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz", + "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=", + "requires": { + "amdefine": ">=0.0.4" + } + } + } + }, "semver": { "version": "5.7.0", "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", @@ -10921,8 +11306,7 @@ "set-blocking": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", - "dev": true + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" }, "set-value": { "version": "2.0.0", @@ -10958,6 +11342,11 @@ "safe-buffer": "^5.0.1" } }, + "shallowequal": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/shallowequal/-/shallowequal-1.1.0.tgz", + "integrity": "sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ==" + }, "shasum": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/shasum/-/shasum-1.0.2.tgz", @@ -11057,8 +11446,7 @@ "signal-exit": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", - "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", - "dev": true + "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=" }, "simple-concat": { "version": "1.0.0", @@ -11432,7 +11820,6 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.0.tgz", "integrity": "sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q==", - "dev": true, "requires": { "spdx-expression-parse": "^3.0.0", "spdx-license-ids": "^3.0.0" @@ -11441,14 +11828,12 @@ "spdx-exceptions": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz", - "integrity": "sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==", - "dev": true + "integrity": "sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==" }, "spdx-expression-parse": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz", "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==", - "dev": true, "requires": { "spdx-exceptions": "^2.1.0", "spdx-license-ids": "^3.0.0" @@ -11457,8 +11842,7 @@ "spdx-license-ids": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.4.tgz", - "integrity": "sha512-7j8LYJLeY/Yb6ACbQ7F76qy5jHkp0U6jgBfJsk97bwWlVUnUWsAgpyaCvo17h0/RQGnQ036tVDomiwoI4pDkQA==", - "dev": true + "integrity": "sha512-7j8LYJLeY/Yb6ACbQ7F76qy5jHkp0U6jgBfJsk97bwWlVUnUWsAgpyaCvo17h0/RQGnQ036tVDomiwoI4pDkQA==" }, "specificity": { "version": "0.4.1", @@ -11505,7 +11889,6 @@ "version": "1.16.1", "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", - "dev": true, "requires": { "asn1": "~0.2.3", "assert-plus": "^1.0.0", @@ -11569,6 +11952,14 @@ "integrity": "sha1-+vUbnrdKrvOzrPStX2Gr8ky3uT4=", "dev": true }, + "stdout-stream": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/stdout-stream/-/stdout-stream-1.4.1.tgz", + "integrity": "sha512-j4emi03KXqJWcIeF8eIXkjMFN1Cmb8gUlDYGeBALLPo5qdyTfA9bOtl8m33lRoC+vFMkP3gl0WsDr6+gzxbbTA==", + "requires": { + "readable-stream": "^2.0.1" + } + }, "stream-browserify": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.2.tgz", @@ -11638,7 +12029,6 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "dev": true, "requires": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", @@ -11660,7 +12050,6 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, "requires": { "safe-buffer": "~5.1.0" } @@ -11681,7 +12070,6 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, "requires": { "ansi-regex": "^2.0.0" } @@ -11690,7 +12078,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", - "dev": true, "requires": { "is-utf8": "^0.2.0" } @@ -11707,6 +12094,14 @@ "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", "dev": true }, + "strip-indent": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz", + "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", + "requires": { + "get-stdin": "^4.0.1" + } + }, "strip-json-comments": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", @@ -12424,6 +12819,16 @@ } } }, + "tar": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/tar/-/tar-2.2.2.tgz", + "integrity": "sha512-FCEhQ/4rE1zYv9rYXJw/msRqsnmlje5jHP6huWeBZ704jUTy02c5AZyWujpMR1ax6mVw9NyJMfuK2CMDWVIfgA==", + "requires": { + "block-stream": "*", + "fstream": "^1.0.12", + "inherits": "2" + } + }, "text-hex": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/text-hex/-/text-hex-1.0.0.tgz", @@ -12644,7 +13049,6 @@ "version": "2.4.3", "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz", "integrity": "sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ==", - "dev": true, "requires": { "psl": "^1.1.24", "punycode": "^1.4.1" @@ -12656,6 +13060,11 @@ "integrity": "sha1-WFhUf2spB1fulczMZm+1AITEYN0=", "dev": true }, + "trim-newlines": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz", + "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=" + }, "trim-right": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", @@ -12680,6 +13089,14 @@ "integrity": "sha512-fwkLWH+DimvA4YCy+/nvJd61nWQQ2liO/nF/RjkTpiOGi+zxZzVkhb1mvbHIIW4b/8nDsYI8uTmAlc0nNkRMOw==", "dev": true }, + "true-case-path": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/true-case-path/-/true-case-path-1.0.3.tgz", + "integrity": "sha512-m6s2OdQe5wgpFMC+pAJ+q9djG82O2jcHPOI6RNg1yy9rCYR+WD6Nbpl32fDpfC56nirdRy+opFa/Vk7HYhqaew==", + "requires": { + "glob": "^7.1.2" + } + }, "tslib": { "version": "1.9.3", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.9.3.tgz", @@ -12696,7 +13113,6 @@ "version": "0.6.0", "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", - "dev": true, "requires": { "safe-buffer": "^5.0.1" } @@ -12704,8 +13120,7 @@ "tweetnacl": { "version": "0.14.5", "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", - "dev": true + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=" }, "type-check": { "version": "0.3.2", @@ -13078,7 +13493,6 @@ "version": "4.2.2", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", - "dev": true, "requires": { "punycode": "^2.1.0" }, @@ -13086,8 +13500,7 @@ "punycode": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" } } }, @@ -13133,8 +13546,7 @@ "util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", - "dev": true + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" }, "util.promisify": { "version": "1.0.0", @@ -13155,8 +13567,7 @@ "uuid": { "version": "3.3.2", "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", - "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==", - "dev": true + "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==" }, "v8flags": { "version": "3.1.2", @@ -13171,7 +13582,6 @@ "version": "3.0.4", "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "dev": true, "requires": { "spdx-correct": "^3.0.0", "spdx-expression-parse": "^3.0.0" @@ -13187,7 +13597,6 @@ "version": "1.10.0", "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", - "dev": true, "requires": { "assert-plus": "^1.0.0", "core-util-is": "1.0.2", @@ -13347,7 +13756,6 @@ "version": "4.0.3", "resolved": "https://registry.npmjs.org/warning/-/warning-4.0.3.tgz", "integrity": "sha512-rpJyN222KWIvHJ/F53XSZv0Zl/accqHR8et1kpaMTD/fLCRxtV8iX8czMzY7sVZupTI3zcUTg8eycS2kNF9l6w==", - "dev": true, "requires": { "loose-envify": "^1.0.0" } @@ -13377,7 +13785,6 @@ "version": "1.3.1", "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dev": true, "requires": { "isexe": "^2.0.0" } @@ -13385,8 +13792,15 @@ "which-module": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz", - "integrity": "sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8=", - "dev": true + "integrity": "sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8=" + }, + "wide-align": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", + "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", + "requires": { + "string-width": "^1.0.2 || 2" + } }, "window-size": { "version": "0.2.0", @@ -13471,7 +13885,6 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", - "dev": true, "requires": { "string-width": "^1.0.1", "strip-ansi": "^3.0.1" @@ -13533,8 +13946,7 @@ "y18n": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", - "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=", - "dev": true + "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=" }, "yallist": { "version": "2.1.2", diff --git a/storybook/design-system/package.json b/storybook/design-system/package.json index f2f6107e8..50aed43dd 100644 --- a/storybook/design-system/package.json +++ b/storybook/design-system/package.json @@ -97,6 +97,7 @@ "gulp-svg-sprite": "^1.5.0", "gulp-uglify": "^3.0.2", "gulplog": "^1.0.0", + "js-beautify": "^1.10.2", "node-fetch": "^2.4.1", "npm-run-all": "^4.1.5", "pug-lint": "^2.5.0", @@ -110,7 +111,9 @@ "dependencies": { "@babel/register": "^7.0.0", "jstransformer-markdown-it": "^2.1.0", + "jstransformer-scss": "^1.0.0", "normalize-scss": "^7.0.1", - "pretty": "^2.0.0" + "pretty": "^2.0.0", + "rc-slider": "^8.6.4" } -} +} \ No newline at end of file diff --git a/storybook/design-system/src/assets/images/browserify.png b/storybook/design-system/src/assets/images/browserify.png deleted file mode 100644 index b17dc244b082391d7f8fae704912768abc38b7ae..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6744 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 bvwvGTgDxS-Z6w70k-$+`)>bM}F#qsBCC!XT literal 0 HcmV?d00001 diff --git a/storybook/design-system/src/assets/images/button/button-cas2.png b/storybook/design-system/src/assets/images/button/button-cas2.png new file mode 100644 index 0000000000000000000000000000000000000000..4f00e219618f80d314897db5ce6885cb065c94f7 GIT binary patch literal 250973 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%0DmLL%Az65j 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 z%0A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%0AY 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∈doRtkUU1)ruT1iXHm&G#=o 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 literal 0 HcmV?d00001 diff --git a/storybook/design-system/src/assets/images/button/button-modal-dont.png b/storybook/design-system/src/assets/images/button/button-modal-dont.png new file mode 100644 index 0000000000000000000000000000000000000000..a91a3a47fa084ca2c7f522ef57621fe4169ade7f GIT binary patch literal 76663 zcmZs@2RxhI`#)}rEhsUAsL?73irTBFt=ghCRn*>U#3l%#_O4Q@)uP%OwPGYjQM7jL zz4spfJm1fHJiq_zb%(fLaqe@j>pItXzps-RJsmYFau#wtJUprg>M9TM@CZ5a@Cd{J zB)B^Z3flU(U-+I6)s*l)^|Gzt{vdNxH}=HCW4!s-3;)4Go^3ol1-u6;ijVy8*BgeD zP1WFACu<%X>_4ft6bU#LwmN4h@395EmA*|Mz$a!{FcQ=s&b_ED>_2!RA#Qy%^8!-z z`v-e`QDx4|PpSq!d;(53{1)-C0F&QmXV1I|NZUz%Qoa8E;X@_Fifm1^ZTNw*3;?nfwX_SYGet9Z*cCP+a#8!#6f5@ zb4gS%KYu1tQB#lo`t`_9W@PNEqw?h0+1bbH>R~A22-tMPBSkj`y4O37^4EWAc+gs#cQu7qA>Zmvb|g#e+k&;K20L2OK6HK3d8H zTN_cCl$zsz7dp3I43Ws(+#I^YF6l0bd=rpUOEK1(=N=V>JX>q9SPhU&G9fhqG>w|m zdK=44Ag{HOYH9=9|jpWGSYHmc@7iY2|0oaHtPd@~1H z+KG9Iz`7j9Uu6ijBqTtSPmpH^cdluj+bvaL@mHzAH{0&CilOlKkw1U_3=Ix?w%e;A zp;U4Gw8-P`bm8c)K&==hHp>W4Hg`0vO_>3(ZgbH#^wFes)&=P+2Z*h*>x z_F49^`d}0lt5O!gt{}nl0gZc-;clo+u#HWj^JM+KHZbw1QfsRGH3NLdNFaa=P$9uc zg@wAxNm8CkW`!j600`HVB}wO43qtefJ4nXey+R}BkJ~M=ZhWT2Pbz7EiuIk6BMCDz z>5^o^#i3&E)N2NQN;hV?r3O@M0O|b5?Q8~e7~46Wylx{m$81d|^m2tH`d%tF99ALrTr%g-F2z95sRSKGr%jF~XsIv1 z>2pS2=`#dx3m;WYT3Xt6L!vxXA%x3Z++_mPa&yB?@t9WVCFhT4PZ{aHonP}E3U_G% zdnjlb><27wjvqhju2R^F258Xz=?%R%N$~~ol4u}_YOu#M0{rHeNOd>1%5Yl6GA|z= z606V?ph$>n&DeHO!p$d)rE0=+0IaLuB78XW2({1`lmZevu#qVKb ziY%S1XEB5YJbc%U3o0LaTNmA8pWj#6^hE-k)SN}thL0`O@8efs;5?2gorfvtDo3@amx5N zSA=s*H5!&Pw=2r?JZ&ioSs^(BCR*CoPw88%FQN|6pe5hox1St|?lZ7~_5xo~L*zM7 zXQRHNOp&Ss7L?Jz+=I2@=*X4Yr@;kQJ-_=I+XxD|DPqDafY6BUm*d}@DGYvE%dnxa zuau%MJg)6sPJ;Uc7C=sSa>iLso!q+2q+TyR6~JJkpU7iPPj|D(@{t-$4Hjy5>xMh@ zPONJS#!anbdqy(BCZh8c*vM?Az+aJ{#591tJXXZJSrYShz>o=nUD4NKo-;iMGP$cU z-Pbx#I6Fxoi1a*}o_+NB+qZ9t@D?6$k*>~l2W1H-Fuda?&k?X~e1!J8g$!_Ilv6 zaaO6E1G?Aur$508yR^?ajVcK(323P@8a$Ur#ovB1lD~(cOoJhk2`3634;IdU^o@;@4JHs zV5w=tCx3Z7mo@{e1`r~jw-Jy+r-2~QkmR8nBwyeOBA)*dbaQlZMOS8&Je+-w4TgTH z616-{-)d3yTpPeNCrh4Fw4-C%)><0@R^u7LfU&f~upj{804f79-Y@Jh3xe<>nAt7? z(O${CD#Qk*v|?;FU~o-y^!Y2^7G&9R{OcLE7QSHp9}(*NYS$Ht3*#>?XTXhZhky48%dy7M7QfK+8w^%EuJvf7H%QePqT9qHHWf6 zyvk?<2{k3pM9^Q*xVL*%p|&;m*e=>^I{gqdSFj+Mb55(c5VNpV$3OfT1DR#X;LOz= z_-aH1Nu&aiB527dR+F!r->H$Wr3ucVk5rHmhNqvlD_}EFh5UOb*?qc{(KaylPR~*B zMcYN7+D_tx;i~Wo9|uI{SS5WTxN0Bkx&QwL9bT5-hQ2qd8NcUOee%_D7}+^eI=ATS z3p`sI_x4~o0)Ymb{FIsdN2zuq@{{FMj^4aELKf(j7M_k{o0t=($4yWQBQ zuxo2p_)VXPS9*Gj6Ytu`D*|zuR2u55HQnD`P3U_*PMkG8R=~TKU|F63o}~%Dmj(~U zPxiYn*%%PI_xAq=OTGX4>Bi{e+X}ZnoC-)>Tc930PFU{?b5b?04aiSHK*wpT zPpJ`cJvAf6Cre!Aw_A94&FZ_ta5<_mLpUAR|DK6^%5Oylf+DFd<64GmiulZlQv_rC zYn5vjq2NtxFG)9UP!xDw-zNWC+AXFScu7ny&SbR zF)?}E_cu&W8xY2o!R@+{`>FP(+-x zPfnVj?GNg1e5{`Q+$VP?2zbNlXHlsL8qYR0IXz?xO{cC0toFUqZ(PHdAfui(p-@d)+WCPLB)iuE-bI(mCLS~d` z9>?RM0n#4x2wZ&lkrDOTVXzpNs=tX4Fr=cQLT~pyb3u|2mVfwg8<{rY*(d9(6~YOB zcdV?etVmnX+})GptIAI6iITtct5KM#o}jkLqKQ{jQ&Xc=5~+xLs{qls_jYilIl45^ z+uOU_OeI$L-&XeI27UxdZkd;hwS{Fg6^e3PA=q7G50`c#9eO@XxRe{YI@wN{kJx&P zlQ3gsS8rgqidrSdKig_TpWPc88_SXj>=DN@a~1fW^hiumuKM-m$@&(FSa(3+??&D_ z)bj#w9}^~!(r{2hG<>Imj&3~f4ua8v%MLfj?Zg0`z>hcD3>ftxGVfaZWcIY|WmeEh z|E;NNbX?|Di z0ox53vwaFo-JI`Cwvun?d{pz%q?$xIy`N#oq2f7_GR;-M(I!=D@?PWlZZ|Ds6ldz! zs;WV8*GabX_L`XJ$SppdoC?pS-pI)p#TL0z-m6_>G_%h@w0C>qLIg+`B6_RMk;>N7 zv$IyVVAYqjs%%T3!9ozTx{%ECUj#EMEHSJcYs2L6Ym8KLJ|} zTu!^aQp`i9^_Qn>R&7!BGc=)UEb78jf2C3X*@>?jo9N>8q0tj662 zk$#T#S77FH^4XkVo{gvBwUoD2%(7I?8&NYth%mM#ldh8P%)C=(Q-jXrW8wpo%_I2E z1tbR0%PjSP+r@GIO2(dYE0)z~lFtjMCW~bV5_*0_p zVY`1u{*Hc%mQ;kIvCC9r(EZ}^NR>6zznz*O7rqn8I`L-VL}6_cw|a#^#oG!KNk-?m zn_3#}q-Ku^=2hQ5AZ~4*3&%g)a1E9QMPHqkU%j{>yjUE#`KZPf(sB_3V%D z6i#RN8$tP?5KtOu$+hXi2YULh15^m=nmU_2`UKPES($)`2#0` zqo|p9(8;1i6SI&}i{DbNZ`jWk&M2~|{iCLgRHiBjP!A!IHNEUvt#LwC++=)xl@gT=LP>?Bs7!MBY}D z;G?BLt6bKpfv>;=+Lujxxm!e=0P&Wqqu{HfMCt*ZXW=n(9H=`jvPl7QM^82f`{h1-sTcNz^C&DL3~He*@9aUn zAea5HLC<>c@h9Jpnj6r5tsSi)fy)KaN`2A>NzlgpfX!Mrw!&9QNq@fkMz07Hp(>Bs znJgkWJSqF^o2~F{_#u*c@Y9tFp~y)u6+Je0t~;O#(0fq&J|{TY+>rb9OiUav?VbS∋^m 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 literal 0 HcmV?d00001 diff --git a/storybook/design-system/src/assets/images/button/button-secondary.png b/storybook/design-system/src/assets/images/button/button-secondary.png new file mode 100644 index 0000000000000000000000000000000000000000..fa959e2db93c43b5e1945b3ca475bf396655d8ca GIT binary patch literal 8048 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 Hu0mjf1`=N& literal 0 HcmV?d00001 diff --git a/storybook/design-system/src/assets/images/button-structure.jpg b/storybook/design-system/src/assets/images/button/button-structure.jpg similarity index 100% rename from storybook/design-system/src/assets/images/button-structure.jpg rename to storybook/design-system/src/assets/images/button/button-structure.jpg diff --git a/storybook/design-system/src/assets/images/button/button-success.png b/storybook/design-system/src/assets/images/button/button-success.png new file mode 100644 index 0000000000000000000000000000000000000000..10f74e010f98d13631b32cddba176b0aa53b62f8 GIT binary patch literal 9224 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 diff --git a/storybook/design-system/src/assets/sprite/sprite.symbol.html b/storybook/design-system/src/assets/sprite/sprite.symbol.html index 542311e87..947b5c24f 100644 --- a/storybook/design-system/src/assets/sprite/sprite.symbol.html +++ b/storybook/design-system/src/assets/sprite/sprite.symbol.html @@ -771,7 +771,7 @@

twitter

diff --git a/storybook/design-system/src/commons/layout.pug b/storybook/design-system/src/commons/layout.pug index 49c3eff19..e630d8aea 100644 --- a/storybook/design-system/src/commons/layout.pug +++ b/storybook/design-system/src/commons/layout.pug @@ -1,3 +1,4 @@ +include ../components/blocks/blocks include ../components/icon/icon include ../components/title/title include ../components/logo/logo @@ -14,12 +15,20 @@ include ../components/pagelinks/pagelinks include ../components/tabs/tabs include ../components/tabs/tabs-nav-item include ../components/tabs/tabs-content-item +include ../components/code/code include ../components/demo/demo +include ../components/colors/colors +include ../components/colors/color +include ../components/page/page-content +include ../components/page/page-content-component +include ../components/page/page-title +include ../components/page/page-markdown +include ../components/page/page-summary block locals - - const {setClassActive, setClass, pugg, pretty} = functions + - const {setClassActive, setClass, pugg, pretty, scssTransformer, fs, beautifyCss, beautifyHtml} = functions - const {title, author, geography, copyright, email, description, keywords, lang, avatar} = general - - const {prefixjs, prefix, pathImg, pathFavicons, storybookBaseUrl, githubBaseUrl, badgeBaseUrl} = base + - const {prefixjs, prefix, pathImg, pathFavicons, storybookBaseUrl, storybookIframeUrl, githubBaseUrl, badgeBaseUrl} = base - const {main, layouts, style, components, structure, form} = menu block vars @@ -40,8 +49,8 @@ html(lang=lang id=`${prefix}-${id}-html` class=`${prefix}-html ${prefix}-html--$ link(rel="shortcut icon" href="img/favicon.ico") link(href=`${basedir}bundle.css` rel="stylesheet" type="text/css") link(rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.15.6/styles/sunburst.min.css") - style - block style + style. + block style body(id=`${prefix}-${id}-body` class=`${prefix}-body`) block menu include ../components/header/header diff --git a/storybook/design-system/src/commons/scss/grid.scss b/storybook/design-system/src/commons/scss/grid.scss new file mode 100644 index 000000000..fb606dcb0 --- /dev/null +++ b/storybook/design-system/src/commons/scss/grid.scss @@ -0,0 +1,1037 @@ +.container { + width: 100%; + padding-right: 15px; + padding-left: 15px; + margin-right: auto; + margin-left: auto +} + +@media (min-width:576px) { + .container { + max-width: 540px + } +} + +@media (min-width:768px) { + .container { + max-width: 720px + } +} + +@media (min-width:992px) { + .container { + max-width: 960px + } +} + +@media (min-width:1200px) { + .container { + max-width: 1440px + } +} + +.container-fluid { + width: 100%; + padding-right: 15px; + padding-left: 15px; + margin-right: auto; + margin-left: auto +} + +.row { + display: flex; + flex-wrap: wrap; + margin-right: -15px; + margin-left: -15px +} + +.no-gutters { + margin-right: 0; + margin-left: 0 +} + +.no-gutters>.col, +.no-gutters>[class*=col-] { + padding-right: 0; + padding-left: 0 +} + +.col, +.col-1, +.col-10, +.col-11, +.col-12, +.col-2, +.col-3, +.col-4, +.col-5, +.col-6, +.col-7, +.col-8, +.col-9, +.col-auto, +.col-lg, +.col-lg-1, +.col-lg-10, +.col-lg-11, +.col-lg-12, +.col-lg-2, +.col-lg-3, +.col-lg-4, +.col-lg-5, +.col-lg-6, +.col-lg-7, +.col-lg-8, +.col-lg-9, +.col-lg-auto, +.col-md, +.col-md-1, +.col-md-10, +.col-md-11, +.col-md-12, +.col-md-2, +.col-md-3, +.col-md-4, +.col-md-5, +.col-md-6, +.col-md-7, +.col-md-8, +.col-md-9, +.col-md-auto, +.col-sm, +.col-sm-1, +.col-sm-10, +.col-sm-11, +.col-sm-12, +.col-sm-2, +.col-sm-3, +.col-sm-4, +.col-sm-5, +.col-sm-6, +.col-sm-7, +.col-sm-8, +.col-sm-9, +.col-sm-auto, +.col-xl, +.col-xl-1, +.col-xl-10, +.col-xl-11, +.col-xl-12, +.col-xl-2, +.col-xl-3, +.col-xl-4, +.col-xl-5, +.col-xl-6, +.col-xl-7, +.col-xl-8, +.col-xl-9, +.col-xl-auto { + position: relative; + width: 100%; + padding-right: 15px; + padding-left: 15px +} + +.col { + flex-basis: 0; + flex-grow: 1; + max-width: 100% +} + +.col-auto { + flex: 0 0 auto; + width: auto; + max-width: 100% +} + +.col-1 { + flex: 0 0 8.33333%; + max-width: 8.33333% +} + +.col-2 { + flex: 0 0 16.66667%; + max-width: 16.66667% +} + +.col-3 { + flex: 0 0 25%; + max-width: 25% +} + +.col-4 { + flex: 0 0 33.33333%; + max-width: 33.33333% +} + +.col-5 { + flex: 0 0 41.66667%; + max-width: 41.66667% +} + +.col-6 { + flex: 0 0 50%; + max-width: 50% +} + +.col-7 { + flex: 0 0 58.33333%; + max-width: 58.33333% +} + +.col-8 { + flex: 0 0 66.66667%; + max-width: 66.66667% +} + +.col-9 { + flex: 0 0 75%; + max-width: 75% +} + +.col-10 { + flex: 0 0 83.33333%; + max-width: 83.33333% +} + +.col-11 { + flex: 0 0 91.66667%; + max-width: 91.66667% +} + +.col-12 { + flex: 0 0 100%; + max-width: 100% +} + +.order-first { + order: -1 +} + +.order-last { + order: 13 +} + +.order-0 { + order: 0 +} + +.order-1 { + order: 1 +} + +.order-2 { + order: 2 +} + +.order-3 { + order: 3 +} + +.order-4 { + order: 4 +} + +.order-5 { + order: 5 +} + +.order-6 { + order: 6 +} + +.order-7 { + order: 7 +} + +.order-8 { + order: 8 +} + +.order-9 { + order: 9 +} + +.order-10 { + order: 10 +} + +.order-11 { + order: 11 +} + +.order-12 { + order: 12 +} + +.offset-1 { + margin-left: 8.33333% +} + +.offset-2 { + margin-left: 16.66667% +} + +.offset-3 { + margin-left: 25% +} + +.offset-4 { + margin-left: 33.33333% +} + +.offset-5 { + margin-left: 41.66667% +} + +.offset-6 { + margin-left: 50% +} + +.offset-7 { + margin-left: 58.33333% +} + +.offset-8 { + margin-left: 66.66667% +} + +.offset-9 { + margin-left: 75% +} + +.offset-10 { + margin-left: 83.33333% +} + +.offset-11 { + margin-left: 91.66667% +} + +@media (min-width:576px) { + .col-sm { + flex-basis: 0; + flex-grow: 1; + max-width: 100% + } + + .col-sm-auto { + flex: 0 0 auto; + width: auto; + max-width: 100% + } + + .col-sm-1 { + flex: 0 0 8.33333%; + max-width: 8.33333% + } + + .col-sm-2 { + flex: 0 0 16.66667%; + max-width: 16.66667% + } + + .col-sm-3 { + flex: 0 0 25%; + max-width: 25% + } + + .col-sm-4 { + flex: 0 0 33.33333%; + max-width: 33.33333% + } + + .col-sm-5 { + flex: 0 0 41.66667%; + max-width: 41.66667% + } + + .col-sm-6 { + flex: 0 0 50%; + max-width: 50% + } + + .col-sm-7 { + flex: 0 0 58.33333%; + max-width: 58.33333% + } + + .col-sm-8 { + flex: 0 0 66.66667%; + max-width: 66.66667% + } + + .col-sm-9 { + flex: 0 0 75%; + max-width: 75% + } + + .col-sm-10 { + flex: 0 0 83.33333%; + max-width: 83.33333% + } + + .col-sm-11 { + flex: 0 0 91.66667%; + max-width: 91.66667% + } + + .col-sm-12 { + flex: 0 0 100%; + max-width: 100% + } + + .order-sm-first { + order: -1 + } + + .order-sm-last { + order: 13 + } + + .order-sm-0 { + order: 0 + } + + .order-sm-1 { + order: 1 + } + + .order-sm-2 { + order: 2 + } + + .order-sm-3 { + order: 3 + } + + .order-sm-4 { + order: 4 + } + + .order-sm-5 { + order: 5 + } + + .order-sm-6 { + order: 6 + } + + .order-sm-7 { + order: 7 + } + + .order-sm-8 { + order: 8 + } + + .order-sm-9 { + order: 9 + } + + .order-sm-10 { + order: 10 + } + + .order-sm-11 { + order: 11 + } + + .order-sm-12 { + order: 12 + } + + .offset-sm-0 { + margin-left: 0 + } + + .offset-sm-1 { + margin-left: 8.33333% + } + + .offset-sm-2 { + margin-left: 16.66667% + } + + .offset-sm-3 { + margin-left: 25% + } + + .offset-sm-4 { + margin-left: 33.33333% + } + + .offset-sm-5 { + margin-left: 41.66667% + } + + .offset-sm-6 { + margin-left: 50% + } + + .offset-sm-7 { + margin-left: 58.33333% + } + + .offset-sm-8 { + margin-left: 66.66667% + } + + .offset-sm-9 { + margin-left: 75% + } + + .offset-sm-10 { + margin-left: 83.33333% + } + + .offset-sm-11 { + margin-left: 91.66667% + } +} + +@media (min-width:768px) { + .col-md { + flex-basis: 0; + flex-grow: 1; + max-width: 100% + } + + .col-md-auto { + flex: 0 0 auto; + width: auto; + max-width: 100% + } + + .col-md-1 { + flex: 0 0 8.33333%; + max-width: 8.33333% + } + + .col-md-2 { + flex: 0 0 16.66667%; + max-width: 16.66667% + } + + .col-md-3 { + flex: 0 0 25%; + max-width: 25% + } + + .col-md-4 { + flex: 0 0 33.33333%; + max-width: 33.33333% + } + + .col-md-5 { + flex: 0 0 41.66667%; + max-width: 41.66667% + } + + .col-md-6 { + flex: 0 0 50%; + max-width: 50% + } + + .col-md-7 { + flex: 0 0 58.33333%; + max-width: 58.33333% + } + + .col-md-8 { + flex: 0 0 66.66667%; + max-width: 66.66667% + } + + .col-md-9 { + flex: 0 0 75%; + max-width: 75% + } + + .col-md-10 { + flex: 0 0 83.33333%; + max-width: 83.33333% + } + + .col-md-11 { + flex: 0 0 91.66667%; + max-width: 91.66667% + } + + .col-md-12 { + flex: 0 0 100%; + max-width: 100% + } + + .order-md-first { + order: -1 + } + + .order-md-last { + order: 13 + } + + .order-md-0 { + order: 0 + } + + .order-md-1 { + order: 1 + } + + .order-md-2 { + order: 2 + } + + .order-md-3 { + order: 3 + } + + .order-md-4 { + order: 4 + } + + .order-md-5 { + order: 5 + } + + .order-md-6 { + order: 6 + } + + .order-md-7 { + order: 7 + } + + .order-md-8 { + order: 8 + } + + .order-md-9 { + order: 9 + } + + .order-md-10 { + order: 10 + } + + .order-md-11 { + order: 11 + } + + .order-md-12 { + order: 12 + } + + .offset-md-0 { + margin-left: 0 + } + + .offset-md-1 { + margin-left: 8.33333% + } + + .offset-md-2 { + margin-left: 16.66667% + } + + .offset-md-3 { + margin-left: 25% + } + + .offset-md-4 { + margin-left: 33.33333% + } + + .offset-md-5 { + margin-left: 41.66667% + } + + .offset-md-6 { + margin-left: 50% + } + + .offset-md-7 { + margin-left: 58.33333% + } + + .offset-md-8 { + margin-left: 66.66667% + } + + .offset-md-9 { + margin-left: 75% + } + + .offset-md-10 { + margin-left: 83.33333% + } + + .offset-md-11 { + margin-left: 91.66667% + } +} + +@media (min-width:992px) { + .col-lg { + flex-basis: 0; + flex-grow: 1; + max-width: 100% + } + + .col-lg-auto { + flex: 0 0 auto; + width: auto; + max-width: 100% + } + + .col-lg-1 { + flex: 0 0 8.33333%; + max-width: 8.33333% + } + + .col-lg-2 { + flex: 0 0 16.66667%; + max-width: 16.66667% + } + + .col-lg-3 { + flex: 0 0 25%; + max-width: 25% + } + + .col-lg-4 { + flex: 0 0 33.33333%; + max-width: 33.33333% + } + + .col-lg-5 { + flex: 0 0 41.66667%; + max-width: 41.66667% + } + + .col-lg-6 { + flex: 0 0 50%; + max-width: 50% + } + + .col-lg-7 { + flex: 0 0 58.33333%; + max-width: 58.33333% + } + + .col-lg-8 { + flex: 0 0 66.66667%; + max-width: 66.66667% + } + + .col-lg-9 { + flex: 0 0 75%; + max-width: 75% + } + + .col-lg-10 { + flex: 0 0 83.33333%; + max-width: 83.33333% + } + + .col-lg-11 { + flex: 0 0 91.66667%; + max-width: 91.66667% + } + + .col-lg-12 { + flex: 0 0 100%; + max-width: 100% + } + + .order-lg-first { + order: -1 + } + + .order-lg-last { + order: 13 + } + + .order-lg-0 { + order: 0 + } + + .order-lg-1 { + order: 1 + } + + .order-lg-2 { + order: 2 + } + + .order-lg-3 { + order: 3 + } + + .order-lg-4 { + order: 4 + } + + .order-lg-5 { + order: 5 + } + + .order-lg-6 { + order: 6 + } + + .order-lg-7 { + order: 7 + } + + .order-lg-8 { + order: 8 + } + + .order-lg-9 { + order: 9 + } + + .order-lg-10 { + order: 10 + } + + .order-lg-11 { + order: 11 + } + + .order-lg-12 { + order: 12 + } + + .offset-lg-0 { + margin-left: 0 + } + + .offset-lg-1 { + margin-left: 8.33333% + } + + .offset-lg-2 { + margin-left: 16.66667% + } + + .offset-lg-3 { + margin-left: 25% + } + + .offset-lg-4 { + margin-left: 33.33333% + } + + .offset-lg-5 { + margin-left: 41.66667% + } + + .offset-lg-6 { + margin-left: 50% + } + + .offset-lg-7 { + margin-left: 58.33333% + } + + .offset-lg-8 { + margin-left: 66.66667% + } + + .offset-lg-9 { + margin-left: 75% + } + + .offset-lg-10 { + margin-left: 83.33333% + } + + .offset-lg-11 { + margin-left: 91.66667% + } +} + +@media (min-width:1200px) { + .col-xl { + flex-basis: 0; + flex-grow: 1; + max-width: 100% + } + + .col-xl-auto { + flex: 0 0 auto; + width: auto; + max-width: 100% + } + + .col-xl-1 { + flex: 0 0 8.33333%; + max-width: 8.33333% + } + + .col-xl-2 { + flex: 0 0 16.66667%; + max-width: 16.66667% + } + + .col-xl-3 { + flex: 0 0 25%; + max-width: 25% + } + + .col-xl-4 { + flex: 0 0 33.33333%; + max-width: 33.33333% + } + + .col-xl-5 { + flex: 0 0 41.66667%; + max-width: 41.66667% + } + + .col-xl-6 { + flex: 0 0 50%; + max-width: 50% + } + + .col-xl-7 { + flex: 0 0 58.33333%; + max-width: 58.33333% + } + + .col-xl-8 { + flex: 0 0 66.66667%; + max-width: 66.66667% + } + + .col-xl-9 { + flex: 0 0 75%; + max-width: 75% + } + + .col-xl-10 { + flex: 0 0 83.33333%; + max-width: 83.33333% + } + + .col-xl-11 { + flex: 0 0 91.66667%; + max-width: 91.66667% + } + + .col-xl-12 { + flex: 0 0 100%; + max-width: 100% + } + + .order-xl-first { + order: -1 + } + + .order-xl-last { + order: 13 + } + + .order-xl-0 { + order: 0 + } + + .order-xl-1 { + order: 1 + } + + .order-xl-2 { + order: 2 + } + + .order-xl-3 { + order: 3 + } + + .order-xl-4 { + order: 4 + } + + .order-xl-5 { + order: 5 + } + + .order-xl-6 { + order: 6 + } + + .order-xl-7 { + order: 7 + } + + .order-xl-8 { + order: 8 + } + + .order-xl-9 { + order: 9 + } + + .order-xl-10 { + order: 10 + } + + .order-xl-11 { + order: 11 + } + + .order-xl-12 { + order: 12 + } + + .offset-xl-0 { + margin-left: 0 + } + + .offset-xl-1 { + margin-left: 8.33333% + } + + .offset-xl-2 { + margin-left: 16.66667% + } + + .offset-xl-3 { + margin-left: 25% + } + + .offset-xl-4 { + margin-left: 33.33333% + } + + .offset-xl-5 { + margin-left: 41.66667% + } + + .offset-xl-6 { + margin-left: 50% + } + + .offset-xl-7 { + margin-left: 58.33333% + } + + .offset-xl-8 { + margin-left: 66.66667% + } + + .offset-xl-9 { + margin-left: 75% + } + + .offset-xl-10 { + margin-left: 83.33333% + } + + .offset-xl-11 { + margin-left: 91.66667% + } +} diff --git a/storybook/design-system/src/commons/scss/main.scss b/storybook/design-system/src/commons/scss/main.scss index be258e54a..761046feb 100644 --- a/storybook/design-system/src/commons/scss/main.scss +++ b/storybook/design-system/src/commons/scss/main.scss @@ -1,6 +1,15 @@ +*, +*:before, +*:after { + box-sizing: border-box; +} + +* { + font-family: $font-family-base; +} + .#{$prefix} { &-html { - font-size: 1rem; font-family: $font-family-base; color: $color-scorpion; letter-spacing: 0.01em; @@ -8,13 +17,6 @@ } } -@media screen and (min-width: 980px) { - .#{$prefix} { - &-body { - } - } -} - /* TODO A reporter sur le toolkit */ .af-container { @@ -22,3 +24,30 @@ padding: 0 2em; margin: 0 auto; } + +a { + text-decoration: none; + color: $color-axa; + + &:hover { + text-decoration: underline; + } + + &:focus { + color: $color-burnt-sienna; + } +} + +body { + margin: 0; +} + +table { + border-collapse: collapse; + border-spacing: 0; +} + +button { + font-family: $font-family-base; + font-size: 1rem; +} diff --git a/storybook/design-system/src/commons/scss/markdown.scss b/storybook/design-system/src/commons/scss/markdown.scss index e7b3cda7a..e0c871024 100644 --- a/storybook/design-system/src/commons/scss/markdown.scss +++ b/storybook/design-system/src/commons/scss/markdown.scss @@ -3,24 +3,29 @@ padding: 2em 1em 1em 0; font-size: 1rem; line-height: 1.25; + img, svg { max-width: 100%; } + a { color: $color-links; } + h1, h2, h3 { font-family: $font-family-headings; letter-spacing: -1px; - font-weight: 900; } + h1 { font-size: 2.5rem; margin: 2rem 0; + font-weight: 900; } + h2 { font-size: 1.8rem; margin: 3rem 0 1rem 0; @@ -29,53 +34,70 @@ letter-spacing: -1px; border-bottom: 1px solid $color-gray-1; padding-bottom: .7rem; + font-weight: 700; + &:first-child { margin-top: 0; } } + h3 { font-size: 1.2rem; margin-bottom: 1rem; + font-weight: 500; } + p { margin-bottom: 1rem; } + table { table-layout: fixed; background: $white; border: 1px solid $color-gray-1; margin-bottom: 1em; + thead { border-bottom: 2px solid $color-axa; + th { padding: 1rem 3rem 1rem 1rem; font-weight: 600; text-align: left; } } + tbody { tr { border-bottom: 1px solid $color-gray-1; + td { padding: 1rem 3rem 1rem 1rem; line-height: 1.25; vertical-align: top; - &:first-child { - white-space: nowrap; - font-weight: 600; - } + } } } } + + ol { + list-style: decimal; + padding-left: 1rem; + } + ul { list-style: disc inside; + padding-left: 1rem; + margin-bottom: 1rem; + li { padding: 0.5rem 0; } } + code { - background: $color-mercury; + font-size: 0.9rem; padding: 1rem 0.4rem; margin: 1rem 0; @@ -83,14 +105,50 @@ border: $color-silver 1px solid; border-radius: 5px; } + blockquote { padding: 1rem; } + strong { font-weight: bold; } - em{ + + em { font-style: italic; } + + + &__usecases { + &-container { + display: flex; + width: 100%; + flex-wrap: wrap; + } + + display: flex; + max-width: 250px; + flex-direction: column; + text-align: center; + flex-basis: 30% 30% 40%; + margin-top: 15px; + box-shadow: rgba(black, 0.19) 0 0 8px 0; + margin: 10px; + + img { + width: auto; + } + + h4 { + font-size: 1.2rem; + font-weight: 600; + margin: 1rem 0; + padding: 0 1rem; + } + + p { + padding: 0 1rem; + } + } } } diff --git a/storybook/design-system/src/commons/scss/reset.scss b/storybook/design-system/src/commons/scss/reset.scss index 9e0bb3054..c2d82bdbe 100644 --- a/storybook/design-system/src/commons/scss/reset.scss +++ b/storybook/design-system/src/commons/scss/reset.scss @@ -3,7 +3,7 @@ License: none (public domain) */ -html, +/* html, body, div, span, @@ -91,7 +91,22 @@ video { font-size: 100%; font: inherit; vertical-align: baseline; +} */ + +header, +a, +div, +img, +h2, +h3 { + margin: 0; + padding: 0; + border: 0; + font-size: 100%; + font: inherit; + vertical-align: baseline; } + /* HTML5 display-role reset for older browsers */ article, aside, @@ -107,24 +122,13 @@ nav, section { display: block; } + body { line-height: 1; } -ol, -ul { - list-style: none; -} -blockquote, -q { - quotes: none; -} -blockquote:before, -blockquote:after, -q:before, -q:after { - content: ''; - content: none; -} + + + table { border-collapse: collapse; border-spacing: 0; @@ -151,14 +155,3 @@ html { -moz-osx-font-smoothing: grayscale; -webkit-tap-highlight-color: rgba(0, 0, 0, 0); } - -a { - text-decoration: none; - color: $color-axa; - &:hover { - text-decoration: underline; - } - &:focus { - color: $color-burnt-sienna; - } -} diff --git a/storybook/design-system/src/components/blocks/blocks.pug b/storybook/design-system/src/components/blocks/blocks.pug new file mode 100644 index 000000000..b6c2e6301 --- /dev/null +++ b/storybook/design-system/src/components/blocks/blocks.pug @@ -0,0 +1,4 @@ +- blocks = {} + +mixin setBlocks(key) + - blocks[key] = this.block diff --git a/storybook/design-system/src/components/code/code.pug b/storybook/design-system/src/components/code/code.pug index a1ca6e623..206368475 100644 --- a/storybook/design-system/src/components/code/code.pug +++ b/storybook/design-system/src/components/code/code.pug @@ -1,10 +1,14 @@ -mixin Code() - div(class=`${prefix}-code__wrapper-outer`) - div(class=`${prefix}-code__wrapper-middle`) - div(class=`${prefix}-code__wrapper-inner`) - div(class=`${prefix}-code__icon`) - +Icon({id:'copy'}) - span(class=`${prefix}-code__icon-text`) Copied - pre(class="pre") - code(class="html") - block \ No newline at end of file +mixin Code({ htmlCode = '', sassCode = '' }) + div(class=`${prefix}-code__wrapper-outer`) + div(class=`${prefix}-code__wrapper-middle`) + div(class=`${prefix}-code__wrapper-inner`) + div(class=`${prefix}-code__icon`) + +Icon({id:'copy', modifier: 'copy'}) + span(class=`${prefix}-code__icon-text`) Copied + pre.pre + if htmlCode !== '' + code.html + | #{htmlCode} + if sassCode !== '' + code.css + | #{sassCode} diff --git a/storybook/design-system/src/components/code/code.scss b/storybook/design-system/src/components/code/code.scss index 0a2f088b3..e26c5ef36 100644 --- a/storybook/design-system/src/components/code/code.scss +++ b/storybook/design-system/src/components/code/code.scss @@ -5,37 +5,47 @@ position: relative; height: 300px; } + &-middle { position: absolute; width: 100%; overflow: hidden; } + &-inner { height: 300px; display: flex; overflow: auto; - background: $color-code-background; + background: $black; } } + &__icon { display: flex; flex-direction: column; + align-items: center; position: absolute; - right: 20px; - top: 10px; + right: 15px; + top: 15px; height: 39px; width: 50px; cursor: pointer; - fill: $white; + &--copied { fill: $color-btn-success; + .#{$prefix}-code__icon-text { color: $color-btn-success; } } + &-text { - color: $color-code-background; + color: $black; } } } + + &-icon--copy { + fill: $white; + } } diff --git a/storybook/design-system/src/components/colors/Color.pug b/storybook/design-system/src/components/colors/Color.pug new file mode 100644 index 000000000..dcf993c6f --- /dev/null +++ b/storybook/design-system/src/components/colors/Color.pug @@ -0,0 +1,6 @@ +mixin Color({ hex = '#ccc', name = 'name color', sass= 'SASS variable' }) + div(class=`${prefix}-color`) + div(class=`${prefix}-color__pantone` style=`background-color:${hex}`) + span(class=`${prefix}-color__name`) #{name} + span(class=`${prefix}-color__hex`) #{hex} + span(class=`${prefix}-color__sass`) #{sass} diff --git a/storybook/design-system/src/components/colors/Colors.pug b/storybook/design-system/src/components/colors/Colors.pug new file mode 100644 index 000000000..3029dba1d --- /dev/null +++ b/storybook/design-system/src/components/colors/Colors.pug @@ -0,0 +1,7 @@ + +mixin Colors({ colors }) + div(class=`${prefix}-colors`) + h2(class=`${prefix}-colors__title`) Colors + div(class=`${prefix}-colors__list`) + each color in colors + +Color({ hex: color.hex, name: color.name, sass: color.sass }) diff --git a/storybook/design-system/src/components/colors/colors.scss b/storybook/design-system/src/components/colors/colors.scss new file mode 100644 index 000000000..451936b90 --- /dev/null +++ b/storybook/design-system/src/components/colors/colors.scss @@ -0,0 +1,67 @@ +.#{$prefix} { + &-colors { + padding: 2em 1em 1em 0; + font-size: 1rem; + line-height: 1.25; + + &__list { + display: flex; + flex-wrap: wrap; + padding: 1em; + } + + &__title { + font-family: $font-family-headings; + letter-spacing: -1px; + font-size: 1.8rem; + margin: 3rem 0 1rem 0; + margin-bottom: 1.3rem; + display: block; + border-bottom: 1px solid $color-gray-1; + padding-bottom: .7rem; + + &:first-child { + margin-top: 0; + } + } + } + + &-color { + display: flex; + flex-wrap: wrap; + border: 1px solid $color-action-2; + background: $white; + text-align: center; + margin: 0 1em 1em 0; + width: 200px; + + &:hover { + box-shadow: 0 0 10px $color-action-2; + } + + &__pantone { + height: 100px; + width: 100%; + } + + &__name { + font-weight: 600; + width: 100%; + padding: .2rem; + text-transform: uppercase; + font-size: 1.2rem; + } + + &__hex { + width: 100%; + padding: .2rem; + font-weight: 600; + font-size: 1.2rem; + } + + &__sass { + width: 100%; + padding: .2rem .2rem 1rem .2rem; + } + } +} diff --git a/storybook/design-system/src/components/demo/demo.js b/storybook/design-system/src/components/demo/demo.js index cf182aa52..3a80b8cd2 100644 --- a/storybook/design-system/src/components/demo/demo.js +++ b/storybook/design-system/src/components/demo/demo.js @@ -6,15 +6,11 @@ const classJsClose = `${prefixjs}-icon--demo-close`; const activeModifier = 'fullscreen'; const classDisplay = `${prefix}-demo__display`; -const openFullScreen = e => { - e.currentTarget.closest(`.${classDisplay}`).classList.add(`${classDisplay}--${activeModifier}`); -}; +const openFullScreen = e => e.currentTarget.closest(`.${classDisplay}`).classList.add(`${classDisplay}--${activeModifier}`); -const closeFullScreen = e => { - e.currentTarget - .closest(`.${classDisplay}--${activeModifier}`) - .classList.remove(`${classDisplay}--${activeModifier}`); -}; +const closeFullScreen = e => e.currentTarget + .closest(`.${classDisplay}--${activeModifier}`) + .classList.remove(`${classDisplay}--${activeModifier}`); class Demo { constructor() { @@ -31,12 +27,8 @@ class Demo { } initEvents() { - [].forEach.call(this.openElts, elt => - elt.addEventListener('click', e => openFullScreen(e), true), - ); - [].forEach.call(this.closeElts, elt => - elt.addEventListener('click', e => closeFullScreen(e), true), - ); + [].forEach.call(this.openElts, elt => elt.addEventListener('click', e => openFullScreen(e), true)); + [].forEach.call(this.closeElts, elt => elt.addEventListener('click', e => closeFullScreen(e), true)); } isNotExitingElement() { diff --git a/storybook/design-system/src/components/demo/demo.pug b/storybook/design-system/src/components/demo/demo.pug index 1d70f13c2..91532c468 100644 --- a/storybook/design-system/src/components/demo/demo.pug +++ b/storybook/design-system/src/components/demo/demo.pug @@ -1,22 +1,32 @@ -include ../code/code -mixin Demo({modifier='', title="Set Demo Title"}) +mixin Demo({ modifier='', title="Set Demo Title", tmpl = '', storybook='', activePath, sassPath = '', absTmpl= '', iframe = false }) -const classComponent = `${setClass('demo', modifier, true)}` - div(class=classComponent) + -const tmplPath = absTmpl !== '' ? absTmpl : tmpl!== '' ? `./src/pages${activePath}/templates/${tmpl}.pug` : '' + -const htmlCode = tmplPath !== '' ? pugg.compileFile(tmplPath, { pretty: true }) : 'No HTML' + -const sassCode = sassPath !== '' ? fs.readFileSync(`node_modules/@axa-fr/${sassPath}`, 'utf8') : 'No style' + block + article(class=classComponent) +Title({level: "h2", modifier:"demo"}) | #{title} div(class=`${prefix}-demo__display`) +Icon({id:'full-screen', modifier:"demo-open", js:true}) +Icon({id:'cross-full', modifier:"demo-close", js:true}) div(class=`${prefix}-demo__template`) - block preview + if iframe + iframe(class=`${prefix}-demo__iframe` src=`${activePath}/templates/iframe-${tmpl}.html`) + else + | !{htmlCode()} +Tabs({modifier:'demo'}) +TabsNavLayout() +TabsNavItem({index:11,modifier:'active', active:true}) span HTML +TabsNavItem({index:12}) - span CSS + span SASS + +TabsNavItem({index:13}) + span REACT +TabsContentLayout() +TabsContentItem({index:11, modifier:'active' , active:true}) - block code + +Code({ htmlCode: beautifyHtml(htmlCode()) }) +TabsContentItem({index:12}) - block css + +Code({ sassCode: beautifyCss(sassCode) }) + +TabsContentItem({index:13}) + iframe(class=`${prefix}-demo__iframe` src=`${storybookIframeUrl}${storybook}`) diff --git a/storybook/design-system/src/components/demo/demo.scss b/storybook/design-system/src/components/demo/demo.scss index 3ebfb4d42..460b9f001 100644 --- a/storybook/design-system/src/components/demo/demo.scss +++ b/storybook/design-system/src/components/demo/demo.scss @@ -17,22 +17,18 @@ background-color: $white; border: 1px solid $color-mercury; background-image: - linear-gradient( - 45deg, + linear-gradient(45deg, $color-mercury 25%, transparent 25%, transparent 75%, $color-mercury 75%, - $color-mercury - ), - linear-gradient( - 45deg, + $color-mercury), + linear-gradient(45deg, $color-mercury 25%, transparent 25%, transparent 75%, $color-mercury 75%, - $color-mercury - ); + $color-mercury); background-size: 20px 20px; background-position: 0 0, 10px 10px; position: relative; @@ -56,12 +52,19 @@ &--demo-close { display: block; fill: $white; + position: fixed; } } } } } + &__iframe { + height: 300px; + border: 1px solid $color-mercury; + width: 100%; + } + &__css { height: 300px; } @@ -89,14 +92,18 @@ &--demo-open, &--demo-close { position: absolute; - width: 20px; - height: 20px; + width: 30px; + height: 30px; right: 5px; top: 5px; cursor: pointer; + z-index: 2; + background: rgba(255, 255, 255, .5); + padding: 5px; } &--demo-close { + background: rgba(0, 0, 0, .5); display: none; } } diff --git a/storybook/design-system/src/components/footer/footer.pug b/storybook/design-system/src/components/footer/footer.pug index 665d4ef69..b8c583a98 100644 --- a/storybook/design-system/src/components/footer/footer.pug +++ b/storybook/design-system/src/components/footer/footer.pug @@ -1,4 +1,4 @@ -const classComponent = `${setClass('footer', 'opened', true)}` footer(class=classComponent) span(class=`${prefix}-footer__privacy`) - | Privacy Policy © 2019 AXA All Rights Reserved \ No newline at end of file + | Privacy Policy © 2020 AXA All Rights Reserved diff --git a/storybook/design-system/src/components/form/layouts/layout-form-card-group.pug b/storybook/design-system/src/components/form/layouts/layout-form-card-group.pug new file mode 100644 index 000000000..8de5d180d --- /dev/null +++ b/storybook/design-system/src/components/form/layouts/layout-form-card-group.pug @@ -0,0 +1,3 @@ +.af-form__group.row + .col-md-8 + block input diff --git a/storybook/design-system/src/components/form/layouts/layout-form-card.pug b/storybook/design-system/src/components/form/layouts/layout-form-card.pug new file mode 100644 index 000000000..80f09a69a --- /dev/null +++ b/storybook/design-system/src/components/form/layouts/layout-form-card.pug @@ -0,0 +1,3 @@ +.af-form__group.row + .col-md-3 + block input diff --git a/storybook/design-system/src/components/form/layouts/layout-form-field.pug b/storybook/design-system/src/components/form/layouts/layout-form-field.pug new file mode 100644 index 000000000..3efbb7d21 --- /dev/null +++ b/storybook/design-system/src/components/form/layouts/layout-form-field.pug @@ -0,0 +1,5 @@ +.af-form__group.row + .col-md-2 + block label + .col-md-10 + block input diff --git a/storybook/design-system/src/components/form/layouts/layout-form-filter-inline.pug b/storybook/design-system/src/components/form/layouts/layout-form-filter-inline.pug new file mode 100644 index 000000000..45c8d16d6 --- /dev/null +++ b/storybook/design-system/src/components/form/layouts/layout-form-filter-inline.pug @@ -0,0 +1,3 @@ +.row + .col + block children \ No newline at end of file diff --git a/storybook/design-system/src/components/form/layouts/layout-form-filter.pug b/storybook/design-system/src/components/form/layouts/layout-form-filter.pug new file mode 100644 index 000000000..b258d930f --- /dev/null +++ b/storybook/design-system/src/components/form/layouts/layout-form-filter.pug @@ -0,0 +1,3 @@ +.row + .col.col-sm-12.col-md-12.col-lg-6.col-xl-4 + block children \ No newline at end of file diff --git a/storybook/design-system/src/components/form/layouts/layout-form-textarea.pug b/storybook/design-system/src/components/form/layouts/layout-form-textarea.pug new file mode 100644 index 000000000..b72c2bf5c --- /dev/null +++ b/storybook/design-system/src/components/form/layouts/layout-form-textarea.pug @@ -0,0 +1,5 @@ +.row.af-form__group.af-form__group--label-top + .col-md-2 + block label + .col-md-10 + block input diff --git a/storybook/design-system/src/components/form/mixins/mixin-form-field-card.pug b/storybook/design-system/src/components/form/mixins/mixin-form-field-card.pug new file mode 100644 index 000000000..0462ae2f7 --- /dev/null +++ b/storybook/design-system/src/components/form/mixins/mixin-form-field-card.pug @@ -0,0 +1,54 @@ +mixin formFieldCardHeaderCheckbox({ name='', modifier= '', disabled=false, forId="test", checked=false}) + header.af-rccard-header + .af-form__checkbox(class=(modifier !== '') ? ` af-form__checkbox--${modifier}` : '') + input.af-form__input-checkbox(name=name type="checkbox" value="on" id=forId disabled= disabled || null checked= checked || null) + label.af-form__label(for=forId) + span.af-form__indicator + i.glyphicon.glyphicon-ok + span.af-form__description + p.af-rccard-header__title Référence + p.af-rccard-header__subtitle 50 € / mois + +mixin formFieldCardHeaderRadio({ name='', modifier= '', disabled=false, forId, checked=false}) + header.af-rccard-header + .af-form__radio(class=(modifier !== '') ? ` af-form__radio--${modifier}` : '') + input.af-form__input-radio(name=name type="radio" value="on" id=forId disabled= disabled || null checked= checked || null) + label.af-form__label(for=forId) + span.af-form__description + p.af-rccard-header__title Référence + p.af-rccard-header__subtitle 50 € / mois + +mixin formFieldCardLabel({forId}) + label.af-rccard-content.af-rccard-group__label(for=forId) + p.af-rccard-group__text John Doe + dl + dt.af-rccard__term Statut: + dd.af-rccard__def En cours + dt.af-rccard__term Epargne atteinte: + dd.af-rccard__def 125 000€ + +mixin formFieldCardFooter({forId}) + footer.af-rccard-footer + label.af-rccard-group__label(for=forId) + button.btn.af-btn(type="submit") Valider mon action + +mixin formFieldCard({ name='cardname', modifier= '', disabled=false, id="0", checked=false, type="checkbox" }) + - const forId = `${type}card${id}` + .af-rccard(class=(modifier !== '') ? ` af-rccard--${modifier}` : '') + if type === 'checkbox' + +formFieldCardHeaderCheckbox({name, modifier, disabled, checked, forId}) + else + +formFieldCardHeaderRadio({name, modifier, disabled, checked, forId}) + +formFieldCardLabel({forId}) + +formFieldCardFooter({forId}) + +mixin formFieldCardGroup({ active=false, meta='', title= '' }) + .af-rccard-group(class=(active) ? ` af-rccard-group--active` : '') + if meta !== '' + p.af-rccard-header__meta #{meta} + if title !== '' + h1.af-rccard-group__title #{title} + .af-rccard-group__content + if block + block + \ No newline at end of file diff --git a/storybook/design-system/src/components/form/mixins/mixin-form-field-checkbox.pug b/storybook/design-system/src/components/form/mixins/mixin-form-field-checkbox.pug new file mode 100644 index 000000000..adf5d6f3e --- /dev/null +++ b/storybook/design-system/src/components/form/mixins/mixin-form-field-checkbox.pug @@ -0,0 +1,8 @@ +mixin formFieldCheckbox({ name='defaultname', modifier= '', label= 'default label', disabled=false, id="0", className= "af-form__checkbox"}) + div(class=className class=(modifier !== '') ? ` ${className}--${modifier}` : '') + input.af-form__input-checkbox(name=name type="checkbox" id=`checkbox${id}` disabled= disabled || null) + label.af-form__label(for=`checkbox${id}`) + span.af-form__indicator + i.glyphicon.glyphicon-ok + span.af-form__description + | #{label} \ No newline at end of file diff --git a/storybook/design-system/src/components/form/mixins/mixin-form-field-radio.pug b/storybook/design-system/src/components/form/mixins/mixin-form-field-radio.pug new file mode 100644 index 000000000..188493450 --- /dev/null +++ b/storybook/design-system/src/components/form/mixins/mixin-form-field-radio.pug @@ -0,0 +1,6 @@ +mixin formFieldRadio({ name='defaultname', modifier= '', label= 'default label', disabled=false, id="0", className= "af-form__radio"}) + div(class=className class=(modifier !== '') ? ` ${className}--${modifier}` : '') + input.af-form__input-radio(name=name type="radio" id=`radio${id}` disabled= disabled || null) + label.af-form__label(for=`radio${id}`) + span.af-form__description + | #{label} \ No newline at end of file diff --git a/storybook/design-system/src/components/form/mixins/mixin-form-field-select.pug b/storybook/design-system/src/components/form/mixins/mixin-form-field-select.pug new file mode 100644 index 000000000..008b00f9c --- /dev/null +++ b/storybook/design-system/src/components/form/mixins/mixin-form-field-select.pug @@ -0,0 +1,15 @@ +include ./mixin-form-message +include ./mixin-form-help +mixin formFieldSelect({ className= '', hasInfobulle= false, hasClear=false, modifier= '', textMessage= 'Aide à la saisie', modifierMessage='', iconMessage='', disabled=false}) + .af-form__select(class=(modifier !== '') ? ` af-form__select--${modifier}` : '', class=className) + .af-form__select-container + select.af-form__input-select(class=(hasInfobulle) ? ` af-form__input-select--hasinfobulle` : '' name="inputtextname" type="text" disabled= disabled || null) + option(value="0") -Sélectionner- + option(value="1") Option 1 + option(value="2") Option 2 + option(value="3") Option 3 + option(value="4") Option 4 + span.glyphicon.glyphicon-menu-down + if(hasInfobulle) + +formHelp() + +formMessage({modifierMessage, textMessage, iconMessage}) \ No newline at end of file diff --git a/storybook/design-system/src/components/form/mixins/mixin-form-field-text.pug b/storybook/design-system/src/components/form/mixins/mixin-form-field-text.pug new file mode 100644 index 000000000..e9fcb31e7 --- /dev/null +++ b/storybook/design-system/src/components/form/mixins/mixin-form-field-text.pug @@ -0,0 +1,11 @@ +include ./mixin-form-message +include ./mixin-form-help +mixin formFieldText({ hasInfobulle= false, hasClear=false, modifier= '', textMessage= 'Aide à la saisie', modifierMessage='', iconMessage='', disabled=false}) + .af-form__text(class=(modifier !== '') ? ` af-form__text--${modifier}` : '' class=(hasInfobulle) ? ` af-form__text--hasinfobulle` : '') + .af-form__text-wrapper + input.af-form__input-text(class=(hasInfobulle) ? ` af-form__input-text--hasinfobulle` : '' name="inputtextname" type="text" disabled= disabled || null) + if(hasClear) + .glyphicon.glyphicon-close.af-form__clear(role="button" tabindex="-1") + if(hasInfobulle) + +formHelp() + +formMessage({modifierMessage, textMessage, iconMessage}) diff --git a/storybook/design-system/src/components/form/mixins/mixin-form-help.pug b/storybook/design-system/src/components/form/mixins/mixin-form-help.pug new file mode 100644 index 000000000..3cae50838 --- /dev/null +++ b/storybook/design-system/src/components/form/mixins/mixin-form-help.pug @@ -0,0 +1,3 @@ +mixin formHelp() + button.btn.af-btn--circle-small(type="button") + span.af-more-help i \ No newline at end of file diff --git a/storybook/design-system/src/components/form/mixins/mixin-form-message.pug b/storybook/design-system/src/components/form/mixins/mixin-form-message.pug new file mode 100644 index 000000000..aa6e192de --- /dev/null +++ b/storybook/design-system/src/components/form/mixins/mixin-form-message.pug @@ -0,0 +1,7 @@ +mixin formMessage({modifierMessage= '', textMessage='', iconMessage= ''}) + small.af-form__message(class=(modifierMessage !== '') ? ` af-form__message--${modifierMessage}` : '') + if(!iconMessage) + | #{textMessage} + else + span.glyphicon(class=`glyphicon-${iconMessage}`) + span.af-form__error-text #{textMessage} \ No newline at end of file diff --git a/storybook/design-system/src/components/logo/logo.scss b/storybook/design-system/src/components/logo/logo.scss index 9fac99c0e..79deeb529 100644 --- a/storybook/design-system/src/components/logo/logo.scss +++ b/storybook/design-system/src/components/logo/logo.scss @@ -1,5 +1,6 @@ .#{$prefix} { &-logo { + line-height: 1; display: flex; align-items: center; border-bottom: 1px solid $color-gray-2; @@ -38,6 +39,7 @@ position: relative; display: inline-flex; letter-spacing: -1px; + margin-bottom: 0; &::after { content: '®'; @@ -57,6 +59,7 @@ font-weight: 100; color: $white; font-style: italic; + margin-bottom: 0; } } diff --git a/storybook/design-system/src/components/menu/menu.scss b/storybook/design-system/src/components/menu/menu.scss index 972095b69..2a303681f 100644 --- a/storybook/design-system/src/components/menu/menu.scss +++ b/storybook/design-system/src/components/menu/menu.scss @@ -4,7 +4,7 @@ &__nav { position: fixed; - z-index: 2; + z-index: 4; width: $menu-width; height: calc(100% - 53px); transition: all .5s ease; @@ -14,9 +14,13 @@ margin-top: 53px; overflow-x: auto; box-shadow: 0 16px 19px rgba(0, 0, 0, .4); + line-height: 1; } &__list { + margin: 0; + padding: 0; + &:not(.tk-menu__list--child) { background: $color-gray-3; } @@ -29,7 +33,7 @@ &__item { &-link { - padding: 1rem 0 1rem 2rem; + padding: .8rem 0 .8rem 2rem; display: block; transition: all .5s linear; background: $white; diff --git a/storybook/design-system/src/components/page/page-content-component.pug b/storybook/design-system/src/components/page/page-content-component.pug new file mode 100644 index 000000000..94265759e --- /dev/null +++ b/storybook/design-system/src/components/page/page-content-component.pug @@ -0,0 +1,15 @@ +mixin PageContentComponent() + +PageContent() + section#pageguidelines + +Title({ level: "h1", modifier: 'page' }) + | Generales Guidelines + block guidelines + section#pagecode + +Title({ level: "h1", modifier: 'page' }) + | Source Code + block code + section#pagestyle + +Title({ level: "h1", modifier: 'page' }) + | Style + block style + diff --git a/storybook/design-system/src/components/page/page-content.pug b/storybook/design-system/src/components/page/page-content.pug index d68435455..6e17ef523 100644 --- a/storybook/design-system/src/components/page/page-content.pug +++ b/storybook/design-system/src/components/page/page-content.pug @@ -1,2 +1,3 @@ -div(class=`${prefix}-page__content`) - block page-content \ No newline at end of file +mixin PageContent() + div(class=`${prefix}-page__content`) + block diff --git a/storybook/design-system/src/components/page/page-markdown.pug b/storybook/design-system/src/components/page/page-markdown.pug new file mode 100644 index 000000000..343e99fde --- /dev/null +++ b/storybook/design-system/src/components/page/page-markdown.pug @@ -0,0 +1,3 @@ +mixin PageMarkdown() + article(class=`${prefix}-markdown`) + block diff --git a/storybook/design-system/src/components/page/page-summary.pug b/storybook/design-system/src/components/page/page-summary.pug new file mode 100644 index 000000000..22330ef38 --- /dev/null +++ b/storybook/design-system/src/components/page/page-summary.pug @@ -0,0 +1,8 @@ +mixin PageSummary() + ul(class=`${prefix}-page__summary`) + li(class=`${prefix}-page__summary-item`) + span(class=`${prefix}-page__summary-link ${prefixjs}-smooth-links` data-target="pageguidelines") Guidelines + li(class=`${prefix}-page__summary-item`) + span(class=`${prefix}-page__summary-link ${prefixjs}-smooth-links` data-target="pagecode") Code + li(class=`${prefix}-page__summary-item`) + span(class=`${prefix}-page__summary-link ${prefixjs}-smooth-links` data-target="pagestyle") Style diff --git a/storybook/design-system/src/components/page/page-title.pug b/storybook/design-system/src/components/page/page-title.pug index b4206d51a..ff7717b15 100644 --- a/storybook/design-system/src/components/page/page-title.pug +++ b/storybook/design-system/src/components/page/page-title.pug @@ -1,2 +1,6 @@ -div(class=`${prefix}-page__header`) - block page-title \ No newline at end of file +mixin PageTitle({ title, subtitle }) + div(class=`${prefix}-page__header`) + +Title({level:"h1", modifier:""}) + | #{title} + +Title({level:"h2", modifier:""}) + | #{subtitle} diff --git a/storybook/design-system/src/components/page/page.scss b/storybook/design-system/src/components/page/page.scss index 7829a0f94..df2d5724d 100644 --- a/storybook/design-system/src/components/page/page.scss +++ b/storybook/design-system/src/components/page/page.scss @@ -1,11 +1,12 @@ .#{$prefix} { &-page { - background: $white; + background: $color-gray-3; &__header { padding: .8rem 1rem .8rem 30px; position: relative; - + line-height: 1; + background: $white; &::after { content: ''; position: absolute; @@ -18,24 +19,25 @@ h1 { color: $color-marine; - margin-top: 0; + margin: 0; font-size: 2.5rem; font-family: $font-family-headings; transform: skewX(-15deg); + letter-spacing: -2px; } h2 { color: $color-gray-dark; - margin-top: 0; + font-size: 1.2rem; + margin: 0; font-family: $font-family-base; - font-weight: 400; + font-weight: 100; font-style: italic; } } &__content { padding: 0 30px 2em 30px; - width: 85%; .hljs { padding: 1em; @@ -48,8 +50,44 @@ } &__links { + position: sticky; + z-index: 3; + top: 53px; padding: 1em 1em 1em 30px; - background: $color-mercury; + background: $color-action-2; + display: flex; + justify-content: space-between; + align-items: center; + } + + &__summary { + display: flex; + list-style: none; + padding: 0; + margin: 0; + + &-item { + margin: 0 6px; + font-size: 1.2rem; + + &:first-child { + margin-left: 0; + } + } + + &-link { + text-decoration: underline; + cursor: pointer; + + &:hover { + text-decoration: none; + } + + &:active, + &:focus { + color: red; + } + } } &__info { @@ -64,4 +102,12 @@ } } } + + &-title { + &--page { + font-size: 2.2rem; + margin: 1.5rem 0; + font-weight: 800; + } + } } diff --git a/storybook/design-system/src/components/smoothscrollto/smoothScrollTo.js b/storybook/design-system/src/components/smoothscrollto/smoothScrollTo.js new file mode 100644 index 000000000..7f1664594 --- /dev/null +++ b/storybook/design-system/src/components/smoothscrollto/smoothScrollTo.js @@ -0,0 +1,54 @@ +const noClick = (e) => { + e.preventDefault(); + e.stopPropagation(); +}; + +const ease = (t, b, c, d) => (c * t) / d + b; + +class SmoothScrollTo { + constructor(selector) { + this.smoothLinks = document.querySelectorAll(`.${selector}`); + this.delay = 1000; + this.offset = 80; + } + + init() { + if (this.isNotExitingElement()) { + return; + } + this.initEvents(); + } + + initEvents = () => { + [].forEach.call(this.smoothLinks, smoothLink => smoothLink.addEventListener('click', e => this.smoothScroll(e), true)); + }; + + isNotExitingElement() { + return !this.smoothLinks; + } + + smoothScroll(e) { + const duration = this.delay; + noClick(e); + const id = e.currentTarget.getAttribute('data-target'); + const smoothTarget = document.getElementById(id); + const targetPosition = smoothTarget.getBoundingClientRect().top; + const startPosition = window.pageYOffset; + const distance = targetPosition - 113; + let startTime = null; + + function animation(currentTime) { + if (startTime === null) { + startTime = currentTime; + } + const timeElapsed = currentTime - startTime; + const runAnimation = ease(timeElapsed, startPosition, distance, duration); + window.scrollTo(0, runAnimation); + if (timeElapsed < duration) requestAnimationFrame(animation); + } + + requestAnimationFrame(animation); + } +} + +export default SmoothScrollTo; diff --git a/storybook/design-system/src/components/tabs/tabs.js b/storybook/design-system/src/components/tabs/tabs.js index b5977c220..7a1655b26 100644 --- a/storybook/design-system/src/components/tabs/tabs.js +++ b/storybook/design-system/src/components/tabs/tabs.js @@ -1,5 +1,3 @@ -import $$ from '../../commons/js/selectorAll'; -import $ from '../../commons/js/selector'; import { prefix, prefixjs } from '../../data/base.json'; const classJsItemTabs = `${prefixjs}-tabs__nav-item`; @@ -7,9 +5,24 @@ const activeModifier = 'active'; const activeContentClassJs = `${prefix}-tabs__content-item--${activeModifier}`; const activeNavClassJs = `${prefix}-tabs__nav-item--${activeModifier}`; +const setActive = (e) => { + const target = e.currentTarget; + const targetTab = target.closest(`.${prefix}-tabs`); + targetTab.querySelector(`.${activeContentClassJs}`).classList.remove(activeContentClassJs); + targetTab.querySelector(`.${activeNavClassJs}`).classList.remove(activeNavClassJs); + target.classList.add(activeNavClassJs); + targetTab + .querySelector(`section[data-id=tabs__content-item--${target.getAttribute('data-nav-id')}]`) + .classList.add(activeContentClassJs); +}; + +const initEvents = (tabNavItems) => { + [].forEach.call(tabNavItems, tab => tab.addEventListener('click', e => setActive(e), true)); +}; + class Tabs { constructor(selector) { - this.selector = $(selector); + this.tabs = document.querySelectorAll(`.${selector}`); } init() { @@ -17,35 +30,18 @@ class Tabs { return; } this.initElements(); - this.initEvents(); } initElements() { - this.tabNav = this.selector.querySelector(`.${prefix}-tabs__nav`); - this.tabContent = this.selector.querySelector(`.${prefix}-tabs__content`); - this.tabs = $$(this.tabNav)(`.${classJsItemTabs}`); - this.contents = $$(this.tabContent)(`.${classJsItemTabs}`); - } - - initEvents() { - [].forEach.call(this.tabs, tab => tab.addEventListener('click', e => this.setActive(e), true)); - } - - setActive(e) { - this.tabContent - .querySelector(`:scope > .${activeContentClassJs}`) - .classList.remove(activeContentClassJs); - this.tabNav.querySelector(`:scope > .${activeNavClassJs}`).classList.remove(activeNavClassJs); - e.currentTarget.classList.add(activeNavClassJs); - this.tabContent - .querySelector( - `section[data-id=tabs__content-item--${e.currentTarget.getAttribute('data-nav-id')}]`, - ) - .classList.add(activeContentClassJs); + [].forEach.call(this.tabs, (tab) => { + const tabNav = tab.querySelector(`.${prefix}-tabs__nav`); + const tabNavItems = tabNav.querySelectorAll(`.${classJsItemTabs}`); + initEvents(tabNavItems); + }); } isNotExitingElement() { - return !this.selector; + return !this.tabs; } } diff --git a/storybook/design-system/src/components/tabs/tabs.scss b/storybook/design-system/src/components/tabs/tabs.scss index c620674c6..0092b2540 100644 --- a/storybook/design-system/src/components/tabs/tabs.scss +++ b/storybook/design-system/src/components/tabs/tabs.scss @@ -34,6 +34,7 @@ &--active { display: block; + box-shadow: 0 0 11px 5px rgba(0,0,0,0.2); } } } diff --git a/storybook/design-system/src/components/title/title.scss b/storybook/design-system/src/components/title/title.scss index 5a2ddb2cb..3d9b317f2 100644 --- a/storybook/design-system/src/components/title/title.scss +++ b/storybook/design-system/src/components/title/title.scss @@ -2,6 +2,5 @@ &-title { margin-top: 0; font-family: $font-family-headings; - font-weight: 900; } } diff --git a/storybook/design-system/src/data/base.json b/storybook/design-system/src/data/base.json index f27abbf3b..a8ed6f5ef 100644 --- a/storybook/design-system/src/data/base.json +++ b/storybook/design-system/src/data/base.json @@ -4,6 +4,7 @@ "pathImg": "./assets/images/", "pathFavicons": "./assets/favicons/", "storybookBaseUrl": "https://axaguildev.github.io/react-toolkit/latest/storybook/?path=/story/", + "storybookIframeUrl": "https://axaguildev.github.io/react-toolkit/latest/storybook/iframe.html?id=", "githubBaseUrl": "https://github.com/AxaGuilDEv/react-toolkit/tree/master/packages/", "badgeBaseUrl": "https://badge.fury.io/js/", "baseUrlProd": "https://axaguildev.github.io/react-toolkit/latest/design-system" diff --git a/storybook/design-system/src/data/menu.json b/storybook/design-system/src/data/menu.json index 53bcd00e4..1723dc580 100644 --- a/storybook/design-system/src/data/menu.json +++ b/storybook/design-system/src/data/menu.json @@ -10,20 +10,24 @@ { "href": "/get-started", "label": "Get started" + }, + { + "href": "/github", + "label": "Github" } ] } ], "layouts": [ { - "label": "Layouts", + "label": "Pages", "childsmenu": [ { - "href": "/layouts/form", + "href": "/pages/form", "label": "Page form" }, { - "href": "/layouts/table", + "href": "/pages/table", "label": "Page table" } ] @@ -100,7 +104,6 @@ "href": "/atoms/slider", "label": "Slider" }, - { "href": "/molecules/table", "label": "Table" @@ -125,7 +128,7 @@ "label": "Title Bar" }, { - "href": "/organisms/navigation", + "href": "/molecules/navigation", "label": "Navigation" }, { @@ -133,7 +136,7 @@ "label": "Header" }, { - "href": "/organisms/footer", + "href": "/molecules/footer", "label": "Footer" }, { @@ -214,4 +217,4 @@ ] } ] -} +} \ No newline at end of file diff --git a/storybook/design-system/src/index.js b/storybook/design-system/src/index.js index 9ef7229f2..449e96940 100644 --- a/storybook/design-system/src/index.js +++ b/storybook/design-system/src/index.js @@ -1,15 +1,16 @@ import Menu from './components/menu/menu'; import Tabs from './components/tabs/tabs'; import Demo from './components/demo/demo'; +import SmoothScrollTo from './components/smoothscrollto/smoothScrollTo'; const menu = new Menu(); -const tabs = new Tabs('js-tabs'); const tabsDemo = new Tabs('js-tabs--demo'); const demo = new Demo(); +const smoothScrollTo = new SmoothScrollTo('js-smooth-links'); document.addEventListener('DOMContentLoaded', () => { menu.init(); - tabs.init(); tabsDemo.init(); demo.init(); + smoothScrollTo.init(); }); diff --git a/storybook/design-system/src/index.pug b/storybook/design-system/src/index.pug index e691451de..94528a4dd 100644 --- a/storybook/design-system/src/index.pug +++ b/storybook/design-system/src/index.pug @@ -14,7 +14,7 @@ block content div(class=`${prefix}-home__getstarted-content`) h3(class=`${prefix}-home__getstarted-title`) Personnalized p(class=`${prefix}-home__getstarted-text`) - | With over thirty modules, personalize your tools so they best fit your needs. + | With over thirty modules, personalize your tools so they best fit your needs. | Select only the modules you needs and get quicky functionals and web normalized pages. h3(class=`${prefix}-home__getstarted-title`) Simple p(class=`${prefix}-home__getstarted-text`) @@ -24,8 +24,8 @@ block content +ButtonLink({ modifier:'has-icon-right', label: 'GET STARTED', icon:'arrowthin-right', href:'/get-started'}) section(class=`${prefix}-home__explore`) h3(class=`${prefix}-home__explore-title`) - | Explore the - span(class=`${prefix}-slash`) Slash + | Explore the + span(class=`${prefix}-slash`) Slash | Design System div(class=`${prefix}-home__encarts`) +Encart({ image:"ux.svg", title:"UX Guidelines" , text:"All rules and guidelines for all components and UX patterns."}) @@ -36,10 +36,9 @@ block content h3(class=`${prefix}-home__demo-title`) Demo p(class=`${prefix}-home__demo-text`) | Discover our sample application and start your own. - +ButtonLink({right:Boolean(true), modifier:'demo has-icon-right', label: 'See demo', icon:'arrowthin-right', target:"_blank", href:'https://axaguildev.github.io/react-toolkit/demo/latest/#/'}) - + +ButtonLink({ right:Boolean(true), modifier:'demo has-icon-right', label: 'See demo', icon:'arrowthin-right', target:"_blank", href:'https://axaguildev.github.io/react-toolkit/latest/demo/' }) article(class=`${prefix}-home__tuto`) h3(class=`${prefix}-home__tuto-title`) Tutorial p(class=`${prefix}-home__tuto-text`) | Discover our video tutorial and learn how to use. - +ButtonLink({ modifier:'tuto has-icon-right', label: 'Watch tutorial', icon:'arrowthin-right', target:"_blank", href:'https://axaguildev.github.io/react-toolkit/demo/latest/#/'}) + +ButtonLink({ modifier:'tuto has-icon-right', label: 'Watch tutorial', icon:'arrowthin-right', target:"_blank", href:'https://axaguildev.github.io/react-toolkit/latest/demo/' }) diff --git a/storybook/design-system/src/index.scss b/storybook/design-system/src/index.scss index 138dee1d4..8fa06d656 100644 --- a/storybook/design-system/src/index.scss +++ b/storybook/design-system/src/index.scss @@ -1,20 +1,22 @@ @charset "UTF-8"; -@import '@axa-fr/react-toolkit-core/dist/assets/scss/core.scss'; -@import '@axa-fr/react-toolkit-all/dist/style/af-components.scss'; +/* Import Normalize **********************************************************/ -@import './commons/scss/font-face'; -@import './commons/scss/variables'; +/* @import './commons/scss/normalize'; +@import './commons/scss/reset'; */ -/* Import Normalize ******************************/ +/* Import Toolkit styles *****************************************************/ -@import './commons/scss/normalize'; -@import './commons/scss/reset'; +@import '@axa-fr/react-toolkit-all/dist/style/af-components.scss'; +@import '@axa-fr/react-toolkit-core/dist/assets/fonts/icons/af-icons.scss'; -/* Import components *****************************/ +/* Import components *********************************************************/ /* Commons */ +@import './commons/scss/grid'; +@import './commons/scss/font-face'; +@import './commons/scss/variables'; @import './commons/scss/mixins'; @import './commons/scss/markdown'; @import './commons/scss/main.scss'; @@ -34,14 +36,42 @@ @import './components/menu/menu'; @import './components/repo/repo'; @import './components/encart/encart'; +@import './components/colors/colors.scss'; /* Organisms */ + @import './components/tabs/tabs'; @import './components/demo/demo'; +@import './components/code/code'; /* Layouts */ + @import './components/content/content'; @import './components/page/page'; /* Pages */ + @import './pages/home/home'; +@import './pages/atoms/button/index'; +@import './pages/atoms/list/index'; +@import './pages/atoms/popover/index'; +@import './pages/atoms/slider/index'; +@import './pages/atoms/drawer/index'; +@import './pages/molecules/title-bar/index'; +@import './pages/molecules/alert/index'; +@import './pages/molecules/table/index'; +@import './pages/molecules/footer/index'; +@import './pages/molecules/form-text/index'; +@import './pages/molecules/form-select/index'; +@import './pages/molecules/form-radio-switch/index'; +@import './pages/organisms/accordion/index'; +@import './pages/organisms/paging/index'; +@import './pages/organisms/panel/index'; +@import './pages/organisms/header/index'; +@import './pages/organisms/footer-client/index'; +@import './pages/organisms/form-card/index'; +@import './pages/organisms/modal/index'; +@import './pages/pages/form/index'; +@import './pages/pages/table/index'; +@import './pages/style/colors/index'; +@import './pages/style/icons/index'; diff --git a/storybook/design-system/src/pages/atoms/badge/data.json b/storybook/design-system/src/pages/atoms/badge/data.json new file mode 100644 index 000000000..78759b0c1 --- /dev/null +++ b/storybook/design-system/src/pages/atoms/badge/data.json @@ -0,0 +1,25 @@ +{ + "metatitle": "Badge Component UI - Slash Design System", + "metadescription": "UI Component Badge for design system Axa. Toolkit Axa is the design system for Axa web and product. It is a series of individual styles, components, and guidelines used for creating unified UI.", + "metakeywords": "Badge design system, ui Badge, design system axa, design system ui, design system react, design", + "github": "badge", + "storybook": "badge--simple-badge", + "badge": "%40axa-fr%2Freact-toolkit-badge", + "colors": [ + { + "name": "BLEU AXA", + "sass": "$color-axa", + "hex": "#00008f" + }, + { + "name": "Mercury", + "sass": "$color-mercury", + "hex": "#e5e5e5" + }, + { + "name": "Silver", + "sass": " $color-silver", + "hex": "#cccccc" + } + ] +} diff --git a/storybook/design-system/src/pages/atoms/badge/index.pug b/storybook/design-system/src/pages/atoms/badge/index.pug new file mode 100644 index 000000000..0ea56e130 --- /dev/null +++ b/storybook/design-system/src/pages/atoms/badge/index.pug @@ -0,0 +1,33 @@ +extends ../../../commons/layout + +block meta + -var activePath = '/atoms/badge'; + -const { metatitle, metadescription, metakeywords, github, storybook, badge, colors } = require(`../src/pages${activePath}/data.json`) + -var sassPath = 'react-toolkit-badge/dist/badge.scss' + -var metaTitle = metatitle + -var metaDescription = metadescription + -var metaKeywords = metakeywords + -var basedir='../../' + +block vars + - var id = "component" + +block menu + +Menu({ activePath }) + +block page + +PageTitle({ title: 'Badge', subtitle: 'Atom' }) + .tk-page__links + +PageSummary() + +PageLinks({github, storybook, badge}) + +PageContentComponent() + block guidelines + +PageMarkdown() + include:markdown-it(html) ./markdown/guidelines.md + block code + +Demo({ title:'Classic Badge', storybook, activePath, tmpl: `classic`, sassPath }) + +Demo({ title:'Badge With Icon', storybook, activePath, tmpl: `infoIcon`, sassPath }) + block style + +PageMarkdown() + include:markdown-it(html) ./markdown/style.md + +Colors({ colors }) diff --git a/storybook/design-system/src/pages/atoms/badge/index.scss b/storybook/design-system/src/pages/atoms/badge/index.scss new file mode 100644 index 000000000..1ef8a39e7 --- /dev/null +++ b/storybook/design-system/src/pages/atoms/badge/index.scss @@ -0,0 +1,16 @@ +/* Just for demo *****************************************************/ +.af-btn { + margin: 0 1rem 1rem 0; +} + +.tk-block-demo { + display: flex; + align-content: space-between; + flex-wrap: wrap; + padding: 1em; + background: $white; + + .af-btn--circle { + margin: 0 1rem 1rem 0; + } +} diff --git a/storybook/design-system/src/pages/molecules/title-bar/markdown/usage.md b/storybook/design-system/src/pages/atoms/badge/markdown/guidelines.md similarity index 68% rename from storybook/design-system/src/pages/molecules/title-bar/markdown/usage.md rename to storybook/design-system/src/pages/atoms/badge/markdown/guidelines.md index 980b2617f..243a5262b 100644 --- a/storybook/design-system/src/pages/molecules/title-bar/markdown/usage.md +++ b/storybook/design-system/src/pages/atoms/badge/markdown/guidelines.md @@ -1,4 +1,10 @@ -## General Guidelines +## Tone of voice + +Quapropter a natura mihi **bold** potius quam ab indigentia orta amicitia, applicatione magis animi cum quodam sensu amandi quam cogitatione quantum illa res utilitatis esset habitura. Quod quidem quale sit, [link to Google!](http://google.com) quibusdam animadverti potest, quae ex se _italic_ ita amant ad quoddam tempus et ab eis ita amantur ut facile earum sensus appareat. + +- Quapropter a natura mihi videtur potius quam ab +- sit, etiam in bestiis quibusdam animadverti potest, +- quae ex se natos ita amant ad quoddam tempus . **Component** Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. @@ -18,12 +24,12 @@ Component labels ... Inter has ruinarum varietates a Nisibi quam tuebatur accitu ## Icon usage -- Use glyphs (16px) within buttons. -- Glyphs are distinguished by their solid shape and knocked-out details. -- Glyphs should always appear to the right of the text. -- Glyphs used in buttons must be directly related to the action that the user is taking. -- Glyphs must be the same color value as the text within a button. -- Ghost buttons require a glyph icon (cannot be stand alone text because of poor affordance). +- Use glyphs (16px) within buttons. +- Glyphs are distinguished by their solid shape and knocked-out details. +- Glyphs should always appear to the right of the text. +- Glyphs used in buttons must be directly related to the action that the user is taking. +- Glyphs must be the same color value as the text within a button. +- Ghost buttons require a glyph icon (cannot be stand alone text because of poor affordance). ## Danger version usage diff --git a/storybook/design-system/src/pages/atoms/badge/markdown/style.md b/storybook/design-system/src/pages/atoms/badge/markdown/style.md new file mode 100644 index 000000000..e091c376f --- /dev/null +++ b/storybook/design-system/src/pages/atoms/badge/markdown/style.md @@ -0,0 +1,18 @@ +## Imports SASS + +``` +@import '@axa-fr/react-toolkit-core/src/common/scss/core.scss'; +@import '@axa-fr/react-toolkit-badge/dist/badge.scss'; +``` + +## Structure + +A Component Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Typography + +Component text should be set in sentence case, with only the first word in a phrase and any proper nouns capitalized. + +| Class | Font-size (px/rem) | Font-weight | Font-family | +| ------------- | ------------------ | ----------- | ----------------------- | +| **.af-badge** | 16 / 1 | 400 | Source Sans Pro Regular | diff --git a/storybook/design-system/src/pages/atoms/badge/templates/classic.pug b/storybook/design-system/src/pages/atoms/badge/templates/classic.pug new file mode 100644 index 000000000..e5ea41d00 --- /dev/null +++ b/storybook/design-system/src/pages/atoms/badge/templates/classic.pug @@ -0,0 +1,9 @@ +.tk-block-demo + .fordemo + span.af-badge.af-badge--info Info + .fordemo + span.af-badge.af-badge--error Error + .fordemo + span.af-badge.af-badge--danger Danger + .fordemo + span.af-badge.af-badge--success Success diff --git a/storybook/design-system/src/pages/atoms/badge/templates/infoIcon.pug b/storybook/design-system/src/pages/atoms/badge/templates/infoIcon.pug new file mode 100644 index 000000000..eb39e908d --- /dev/null +++ b/storybook/design-system/src/pages/atoms/badge/templates/infoIcon.pug @@ -0,0 +1,2 @@ +span.af-badge.af-badge--error + i.glyphicon.glyphicon-bell diff --git a/storybook/design-system/src/pages/atoms/button/data.json b/storybook/design-system/src/pages/atoms/button/data.json new file mode 100644 index 000000000..698cf89df --- /dev/null +++ b/storybook/design-system/src/pages/atoms/button/data.json @@ -0,0 +1,70 @@ +{ + "metatitle": "Button Component UI - Slash Design System", + "metadescription": "UI Component Button for design system Axa. Toolkit Axa is the design system for Axa web and product. It is a series of individual styles, components, and guidelines used for creating unified UI.", + "metakeywords": "Button design system, ui Button, design system axa, design system ui, design system react, design", + "github": "button", + "storybook": "button--simple-button", + "badge": "%40axa-fr%2Freact-toolkit-button", + "colors": [ + { + "name": "BLEU AXA", + "sass": "$color-axa", + "hex": "#00008f" + }, + { + "name": "BLEU Action", + "sass": "$color-azur", + "hex": "#3032c1" + }, + { + "name": "BLEU Action focus", + "sass": "$color-azur-focused", + "hex": "#aaabf9" + }, + { + "name": "Mercury", + "sass": "$color-mercury", + "hex": "#e5e5e5" + }, + { + "name": "Silver", + "sass": " $color-silver", + "hex": "#cccccc" + }, + { + "name": "Button Disabled", + "sass": " $color-btn-disabled", + "hex": "#c9c9c9" + }, + { + "name": "Button success", + "sass": " $color-btn-success", + "hex": " #1cc578" + }, + { + "name": "Button success dark", + "sass": " $color-btn-success-dark", + "hex": " #0d844e" + }, + { + "name": "Button success focuced", + "sass": " $color-btn-success-focused", + "hex": " #bdffe1" + }, + { + "name": "Button danger", + "sass": " $color-btn-danger", + "hex": " #f02849" + }, + { + "name": "Button danger dark", + "sass": " $color-btn-danger-dark", + "hex": " #8f182c" + }, + { + "name": "Button danger focuced", + "sass": " $color-btn-danger-focused", + "hex": " #ffa0af" + } + ] +} diff --git a/storybook/design-system/src/pages/atoms/button/index.pug b/storybook/design-system/src/pages/atoms/button/index.pug new file mode 100644 index 000000000..dd8bb54f0 --- /dev/null +++ b/storybook/design-system/src/pages/atoms/button/index.pug @@ -0,0 +1,36 @@ +extends ../../../commons/layout + +block meta + -var activePath = '/atoms/button'; + -const { metatitle, metadescription, metakeywords, github, storybook, badge, colors } = require(`../src/pages${activePath}/data.json`) + -var sassPath = 'react-toolkit-button/dist/button.scss' + -var metaTitle = metatitle + -var metaDescription = metadescription + -var metaKeywords = metakeywords + -var basedir='../../' + +block vars + - var id = "component" + +block menu + +Menu({ activePath }) + +block page + +PageTitle({ title: 'Button', subtitle: 'Atom' }) + .tk-page__links + +PageSummary() + +PageLinks({github, storybook, badge}) + +PageContentComponent() + block guidelines + +PageMarkdown() + include:markdown-it(html) ./markdown/guidelines.md + block code + +Demo({ title:'Classic Button', storybook, activePath, tmpl: `button`, modifier:"button", sassPath }) + +Demo({ title:'Button with icon', storybook, activePath, tmpl: `button-icon` , modifier:"button", sassPath }) + +Demo({ title:'Button reverse', storybook, activePath, tmpl: `button-reverse` , modifier:"button", sassPath }) + +Demo({ title:'Button circle', storybook, activePath, tmpl: `circle` , modifier:"button", sassPath }) + +Demo({ title:'Button ghost', storybook, activePath, tmpl: `ghost` , modifier:"button", sassPath }) + block style + +PageMarkdown() + include:markdown-it(html) ./markdown/style.md + +Colors({ colors }) diff --git a/storybook/design-system/src/pages/atoms/button/index.scss b/storybook/design-system/src/pages/atoms/button/index.scss new file mode 100644 index 000000000..84e7eb9b6 --- /dev/null +++ b/storybook/design-system/src/pages/atoms/button/index.scss @@ -0,0 +1,19 @@ +/* Just for demo *****************************************************/ + +.tk-demo--button{ + .af-btn { + margin: 0 1rem 1rem 0; + } +} + +.tk-block-demo { + display: flex; + align-content: space-between; + flex-wrap: wrap; + padding: 1em; + background: $white; + + .af-btn--circle { + margin: 0 1rem 1rem 0; + } +} diff --git a/storybook/design-system/src/pages/atoms/button/markdown/guidelines.md b/storybook/design-system/src/pages/atoms/button/markdown/guidelines.md new file mode 100644 index 000000000..c8d22853d --- /dev/null +++ b/storybook/design-system/src/pages/atoms/button/markdown/guidelines.md @@ -0,0 +1,117 @@ +Aussi nommés CTA (Call To Action), les boutons sont utilisés pour rendre les actions de navigation ou d'actions immédiatement visibles et faciles à exécuter en un clic. + +## Tone of voice + +Les boutons doivent toujours comporter un verbe qui encourage l'action. + +- Utilisez la formule {verbe} + {substantif} sur les boutons, +- Les termes utilisés doivent permettre d’anticiper ce qui va se passer. +- Le premier mot est en majuscule et le reste en minuscule (sauf si un terme est un nom propre). + +## Usage + +
+
+ Main button PNG +

Bouton principal

+

Pour mettre en évidence une action "forte" dans la page. Ne pas utiliser plus d'un bouton principal par page ou section.

+
+ +
+ Main button with icon PNG +

Bouton principal avec pictogramme

+

Un pictogramme peut être inclus dans un bouton principal, lorsqu’on souhaite mettre en avant l’action principale d’une page.Ne pas multiplier les boutons avec des pictogrammes. Point d’attention : n’utiliser un pictogramme que si celui-ci est auto-porteur (ex : téléchargement).

+
+ +
+ Secondary button PNG +

Bouton secondaire

+

Pour toutes les autres actions "moins fortes" que celle de l'action principale de la page (bouton de retour ou étape précédente). Un bouton secondaire peut être utilisé sans qu’un bouton principal ne soit présent dans la page.

+
+ +
+ Secondary button PNG +

Bouton small

+

Il est toujours associé à un champ de formulaire et positionné à droite de celui-ci.

+
+
+ +## Bests practices + +Différentes couleurs peuvent être utilisées en fonction de la gravité du résultat d’une action : + +
+
+ Main button PNG +

Bouton rouge

+

Utilisé lorsque « supprimer » des fichiers indique une gravité élevée.

+
+
+ Success button PNG +

Bouton vert

+

Utilisé pour une action de validation

+
+
+ Success button PNG +

Bouton bleu

+

Utilisé pour des actions principales.

+
+
+ Disabled button PNG +

Bouton gris

+

Utilisé pour montrer qu'une action est existante mais que celle-ci n'est pas disponible pour l'utilisateur.

+
+
+ +Prioriser les actions les plus importantes : Trop de boutons d'action sèment la confusion et rendent les utilisateurs incertains de la suite des choses. + +## Positionnement + +Les boutons sont positionnés en fonction du contexte : + +1. En bas à droite des éléments sur lesquels porte l’action : pour clore une action (par exemple, enregistrer une modification dans un formulaire, fermer la page). +2. Les boutons de navigation sont positionnés en bas de la page (ou de l’écran en cas de barre sticky) à droite pour passer à l’étape suivante ou à gauche pour revenir à l’étape précédente +3. Quand la page présente un groupe de boutons (3 et plus), présenter le même espacement. Cependant, il est possible de créer des sous-regroupements, en augmentant l’espacement (entre le bouton isolé et les sous-groupes de boutons] +4. Cas particulier : les actions portant sur le contenu d’un tableau (l’ensemble ou une sélection) sont positionnées en tête du tableau +5. Pour les formulaires de page unique et les tâches ciblées, alignez les boutons à droite et triez les CTA par ordre d'importance de droite à gauche. + +## Use cases + +### Cas 1 : + +Pour distinguer clairement deux options, utiliser un bouton principal / un bouton secondaire. Le bouton principal attirera davantage l'attention. + +![Button Case 1 PNG](../../assets/images/button/button-cas1.png) + +### Cas 2 : + +Quand l'action principale est irréversible (ex : «Remplacer» ou «Supprimer») : Privilégié la CTA "warning" en rouge. + +![Button Case 2 PNG](../../assets/images/button/button-cas2.png) + +### Cas 3 : + +Dans une modal, les CTA sont alignés à gauche + +![Button Case 3 PNG](../../assets/images/button/button-cas3.png) + +### Cas 4 : + +Pour les champs de recherche, utilisez le CTA small, il doit être collé au champ de recherche : + +![Button Case 4 PNG](../../assets/images/button/button-cas4.png) + +### Cas 5 : + +Lorsqu'une action impacte le contenu d’un tableau, la CTA principal est aligné à gauche et positionné au-dessus du tableau + +![Button Case 5 PNG](../../assets/images/button/button-cas5.png) + +## DO / DONT + +Positionnement des CTA dans une modal : + +| DO | DONT | +| ------------------------------------------------------------------ | -------------------------------------------------------------------- | +| ![Button Dont PNG](../../assets/images/button/button-modal-do.png) | ![Button Dont PNG](../../assets/images/button/button-modal-dont.png) | +| Il est préférable de ferrer les boutons à droite ou à gauche | Ne pas centrer les boutons | diff --git a/storybook/design-system/src/pages/atoms/button/markdown/style.md b/storybook/design-system/src/pages/atoms/button/markdown/style.md new file mode 100644 index 000000000..13810895d --- /dev/null +++ b/storybook/design-system/src/pages/atoms/button/markdown/style.md @@ -0,0 +1,18 @@ +## Imports SASS + +``` +@import '@axa-fr/react-toolkit-core/src/common/scss/core.scss'; +@import '@axa-fr/react-toolkit-button/dist/button.scss'; +``` + +## Structure + +A Component Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Typography + +Component text should be set in sentence case, with only the first word in a phrase and any proper nouns capitalized. + +| Class | Font-size (px/rem) | Font-weight | Font-family | +| ----------- | ------------------ | ----------- | ----------------------- | +| **.af-btn** | 16 / 1 | 400 | Source Sans Pro Regular | diff --git a/storybook/design-system/src/pages/atoms/button/templates/button-icon.pug b/storybook/design-system/src/pages/atoms/button/templates/button-icon.pug new file mode 100644 index 000000000..f9c2fafc1 --- /dev/null +++ b/storybook/design-system/src/pages/atoms/button/templates/button-icon.pug @@ -0,0 +1,24 @@ +button.btn.af-btn.af-btn--hasiconLeft + span.af-btn__text Button with left icon + i.glyphicon.glyphicon-arrowthin-left +button.btn.af-btn.af-btn--hasiconLeft.af-btn--disabled + span.af-btn__text Button disabled with left icon + i.glyphicon.glyphicon-arrowthin-left +button.btn.af-btn.af-btn--hasiconLeft.af-btn--success + span.af-btn__text Button success with left icon + i.glyphicon.glyphicon-arrowthin-left +button.btn.af-btn.af-btn--hasiconLeft.af-btn--danger + span.af-btn__text Button danger with left icon + i.glyphicon.glyphicon-arrowthin-left +button.btn.af-btn.af-btn--hasiconRight + span.af-btn__text Button with right icon + i.glyphicon.glyphicon-arrowthin-right +button.btn.af-btn.af-btn--hasiconRight.af-btn--disabled + span.af-btn__text Button disabled with right icon + i.glyphicon.glyphicon-arrowthin-right +button.btn.af-btn.af-btn--hasiconRight.af-btn--success + span.af-btn__text Button success with right icon + i.glyphicon.glyphicon-arrowthin-right +button.btn.af-btn.af-btn--hasiconRight.af-btn--danger + span.af-btn__text Button danger with right icon + i.glyphicon.glyphicon-arrowthin-right diff --git a/storybook/design-system/src/pages/atoms/button/templates/button-reverse.pug b/storybook/design-system/src/pages/atoms/button/templates/button-reverse.pug new file mode 100644 index 000000000..69a4e17b8 --- /dev/null +++ b/storybook/design-system/src/pages/atoms/button/templates/button-reverse.pug @@ -0,0 +1,14 @@ +button.btn.af-btn.af-btn--reverse(tabindex="-1") Button AF reverse +button.btn.af-btn.af-btn--reverse.af-btn--disabled(tabindex="-1") Button AF disabled reverse +button.btn.af-btn.af-btn--reverse.af-btn--hasiconLeft(tabindex="-1") + span.af-btn__text Button with left icon + i.glyphicon.glyphicon-arrowthin-left +button.btn.af-btn.af-btn--reverse.af-btn--hasiconRight(tabindex="-1") + span.af-btn__text Button with right icon + i.glyphicon.glyphicon-arrowthin-right +button.btn.af-btn.af-btn--reverse.af-btn--hasiconLeft(tabindex="-1") + span.af-btn__text Button with left icon + i.glyphicon.glyphicon-globe +button.btn.af-btn.af-btn--reverse.af-btn--disabled.af-btn--hasiconRight(tabindex="-1") + span.af-btn__text Button disabled with right icon + i.glyphicon.glyphicon-arrowthin-right \ No newline at end of file diff --git a/storybook/design-system/src/pages/atoms/button/templates/button.pug b/storybook/design-system/src/pages/atoms/button/templates/button.pug new file mode 100644 index 000000000..90d2291bb --- /dev/null +++ b/storybook/design-system/src/pages/atoms/button/templates/button.pug @@ -0,0 +1,10 @@ +button.af-btn + | Button AF +button.af-btn.af-btn--disabled + | Button AF Disabled +button.af-btn.af-btn--success + | Button AF success +button.af-btn.af-btn--danger + | Button AF danger +button.af-btn.af-btn--small + | OK diff --git a/storybook/design-system/src/pages/atoms/button/templates/circle.pug b/storybook/design-system/src/pages/atoms/button/templates/circle.pug new file mode 100644 index 000000000..2ecea00d9 --- /dev/null +++ b/storybook/design-system/src/pages/atoms/button/templates/circle.pug @@ -0,0 +1,12 @@ +-var exemples = ["pushpin", "print", "arrow-xs-down", "heart", "eye-open", "menu-hamburger", "remove", "filter", "floppy-disk", "open"]; + +.tk-block-demo + each ex in exemples + div.fordemo + a.af-btn--circle(href="#" role="button" ) + i.glyphicon(class=`glyphicon-${ex}`) +.tk-block-demo + each ex in exemples + div.fordemo + a.af-btn--circle-small(href="#" role="button" ) + i.glyphicon(class=`glyphicon-${ex}`) diff --git a/storybook/design-system/src/pages/atoms/button/templates/ghost.pug b/storybook/design-system/src/pages/atoms/button/templates/ghost.pug new file mode 100644 index 000000000..0ae82904b --- /dev/null +++ b/storybook/design-system/src/pages/atoms/button/templates/ghost.pug @@ -0,0 +1,30 @@ +.tk-block-demo + a.af-link(href="#") Simple link +.tk-block-demo + a.af-link.af-link--hasIconLeft(href="#") + i.glyphicon.glyphicon-plus + span.af-link__text Link with icon +.tk-block-demo + a.af-link.af-link--hasIconLeft(href="#") + i.glyphicon.glyphicon-arrowthin-left + span.af-link__text Back Link +.tk-block-demo + a.af-link.af-link--hasIconLeft(href="#") + i.glyphicon.glyphicon-plus-sign + span.af-link__text Link plus +.tk-block-demo + a.af-link.af-link--hasIconLeft(href="#") + i.glyphicon.glyphicon-pencil + span.af-link__text Link edition +.tk-block-demo + a.af-link.af-link--hasIconLeft(href="#") + i.glyphicon.glyphicon-print + span.af-link__text Link print +.tk-block-demo + a.af-link.af-link--hasIconLeft(href="#") + i.glyphicon.glyphicon-question-sign + span.af-link__text Link question +.tk-block-demo + a.af-link.af-link--hasIconRight(href="#") + span.af-link__text Link new window + i.glyphicon.glyphicon-new-window diff --git a/storybook/design-system/src/pages/atoms/drawer/data.json b/storybook/design-system/src/pages/atoms/drawer/data.json new file mode 100644 index 000000000..e59adde79 --- /dev/null +++ b/storybook/design-system/src/pages/atoms/drawer/data.json @@ -0,0 +1,25 @@ +{ + "metatitle": "Drawer Component UI - Slash Design System", + "metadescription": "UI Component Drawer for design system Axa. Toolkit Axa is the design system for Axa web and product. It is a series of individual styles, components, and guidelines used for creating unified UI.", + "metakeywords": "Drawer design system, ui Drawer, design system axa, design system ui, design system react, design", + "github": "", + "storybook": "get-started--introduction", + "badge": "%40axa-fr%2Freact-toolkit-all", + "colors": [ + { + "name": "BLEU AXA", + "sass": "$color-axa", + "hex": "#00008f" + }, + { + "name": "Mercury", + "sass": "$color-mercury", + "hex": "#e5e5e5" + }, + { + "name": "Silver", + "sass": " $color-silver", + "hex": "#cccccc" + } + ] +} diff --git a/storybook/design-system/src/pages/atoms/drawer/index.pug b/storybook/design-system/src/pages/atoms/drawer/index.pug new file mode 100644 index 000000000..31e6b9fbe --- /dev/null +++ b/storybook/design-system/src/pages/atoms/drawer/index.pug @@ -0,0 +1,32 @@ +extends ../../../commons/layout + +block meta + -var activePath = '/atoms/drawer'; + -const { metatitle, metadescription, metakeywords, github, storybook, badge, colors } = require(`../src/pages${activePath}/data.json`) + -var sassPath = 'react-toolkit-layout-header/dist/Drawer/drawer.scss' + -var metaTitle = metatitle + -var metaDescription = metadescription + -var metaKeywords = metakeywords + -var basedir='../../' + +block vars + - var id = "component" + +block menu + +Menu({ activePath }) + +block page + +PageTitle({ title: 'Drawer', subtitle: 'Atom' }) + .tk-page__links + +PageSummary() + +PageLinks({github, storybook, badge}) + +PageContentComponent() + block guidelines + +PageMarkdown() + include:markdown-it(html) ./markdown/guidelines.md + block code + +Demo({ title:'Classic Drawer', storybook, activePath, tmpl: `classic`, sassPath }) + block style + +PageMarkdown() + include:markdown-it(html) ./markdown/style.md + +Colors({ colors }) diff --git a/storybook/design-system/src/pages/atoms/drawer/index.scss b/storybook/design-system/src/pages/atoms/drawer/index.scss new file mode 100644 index 000000000..ac1509f94 --- /dev/null +++ b/storybook/design-system/src/pages/atoms/drawer/index.scss @@ -0,0 +1,15 @@ +/* TODO A reporter sur le toolkit */ +/* Dans le composant drawer, il faut supprimer l'appel à la fonction transition de bootstrap */ +.af-drawer { + &__part { + font-family: $font-family-headings; + background: $color-axa; + color: $white; + text-align: center; + font-size: 2rem; + padding: 2em; + width: 100%; + height: 100%; + font-weight: 900; + } +} diff --git a/storybook/design-system/src/pages/atoms/drawer/markdown/guidelines.md b/storybook/design-system/src/pages/atoms/drawer/markdown/guidelines.md new file mode 100644 index 000000000..243a5262b --- /dev/null +++ b/storybook/design-system/src/pages/atoms/drawer/markdown/guidelines.md @@ -0,0 +1,36 @@ +## Tone of voice + +Quapropter a natura mihi **bold** potius quam ab indigentia orta amicitia, applicatione magis animi cum quodam sensu amandi quam cogitatione quantum illa res utilitatis esset habitura. Quod quidem quale sit, [link to Google!](http://google.com) quibusdam animadverti potest, quae ex se _italic_ ita amant ad quoddam tempus et ab eis ita amantur ut facile earum sensus appareat. + +- Quapropter a natura mihi videtur potius quam ab +- sit, etiam in bestiis quibusdam animadverti potest, +- quae ex se natos ita amant ad quoddam tempus . + +**Component** Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Usage + +| Component type | Purpose | +| ---------------- | -------------------- | +| Primary | Use for ... when ... | +| Secondary | Use for ... when ... | +| With icon | Use for ... when ... | +| Disabled version | Use for ... when ... | +| Light version | Use for ... when ... | + +## Label + +Component labels ... Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Icon usage + +- Use glyphs (16px) within buttons. +- Glyphs are distinguished by their solid shape and knocked-out details. +- Glyphs should always appear to the right of the text. +- Glyphs used in buttons must be directly related to the action that the user is taking. +- Glyphs must be the same color value as the text within a button. +- Ghost buttons require a glyph icon (cannot be stand alone text because of poor affordance). + +## Danger version usage + +Danger ... Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. diff --git a/storybook/design-system/src/pages/atoms/drawer/markdown/style.md b/storybook/design-system/src/pages/atoms/drawer/markdown/style.md new file mode 100644 index 000000000..247c13bc8 --- /dev/null +++ b/storybook/design-system/src/pages/atoms/drawer/markdown/style.md @@ -0,0 +1,18 @@ +## Imports SASS + +``` +@import '@axa-fr/react-toolkit-core/src/common/scss/core.scss'; +@import '@axa-fr/react-toolkit-drawer/dist/drawer.scss'; +``` + +## Structure + +A Component Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Typography + +Component text should be set in sentence case, with only the first word in a phrase and any proper nouns capitalized. + +| Class | Font-size (px/rem) | Font-weight | Font-family | +| -------------- | ------------------ | ----------- | ----------------------- | +| **.af-drawer** | 16 / 1 | 400 | Source Sans Pro Regular | diff --git a/storybook/design-system/src/pages/atoms/drawer/templates/classic.pug b/storybook/design-system/src/pages/atoms/drawer/templates/classic.pug new file mode 100644 index 000000000..f12c1901f --- /dev/null +++ b/storybook/design-system/src/pages/atoms/drawer/templates/classic.pug @@ -0,0 +1,4 @@ +.af-drawer.left.fade.show + .af-drawer__part left drawer +.af-drawer.right.fade.show + .af-drawer__part right drawer diff --git a/storybook/design-system/src/pages/atoms/list/data.json b/storybook/design-system/src/pages/atoms/list/data.json new file mode 100644 index 000000000..e4da8262a --- /dev/null +++ b/storybook/design-system/src/pages/atoms/list/data.json @@ -0,0 +1,20 @@ +{ + "metatitle": "List Component UI - Slash Design System", + "metadescription": "UI Component List for design system Axa. Toolkit Axa is the design system for Axa web and product. It is a series of individual styles, components, and guidelines used for creating unified UI.", + "metakeywords": "List design system, ui List, design system axa, design system ui, design system react, design", + "github": "list", + "storybook": "get-started--introduction", + "badge": "%40axa-fr%2Freact-toolkit-list", + "colors": [ + { + "name": "Mercury", + "sass": "$color-mercury", + "hex": "#e5e5e5" + }, + { + "name": "Silver", + "sass": " $color-silver", + "hex": "#cccccc" + } + ] +} diff --git a/storybook/design-system/src/pages/atoms/list/index.pug b/storybook/design-system/src/pages/atoms/list/index.pug new file mode 100644 index 000000000..85012c0ea --- /dev/null +++ b/storybook/design-system/src/pages/atoms/list/index.pug @@ -0,0 +1,33 @@ +extends ../../../commons/layout + +block meta + -var activePath = '/atoms/list'; + -const { metatitle, metadescription, metakeywords, github, storybook, badge, colors } = require(`../src/pages${activePath}/data.json`) + -var sassPath = 'react-toolkit-list/dist/list.scss' + -var metaTitle = metatitle + -var metaDescription = metadescription + -var metaKeywords = metakeywords + -var basedir='../../' + +block vars + - var id = "component" + +block menu + +Menu({ activePath }) + +block page + +PageTitle({ title: 'List', subtitle: 'Atom' }) + .tk-page__links + +PageSummary() + +PageLinks({github, storybook, badge}) + +PageContentComponent() + block guidelines + +PageMarkdown() + include:markdown-it(html) ./markdown/guidelines.md + block code + +Demo({ title:'Classic List', storybook, activePath, tmpl: `classic`, sassPath }) + +Demo({ title:'List With Icon', storybook, activePath, tmpl: `withIcon`, sassPath }) + block style + +PageMarkdown() + include:markdown-it(html) ./markdown/style.md + +Colors({ colors }) diff --git a/storybook/design-system/src/pages/atoms/list/index.scss b/storybook/design-system/src/pages/atoms/list/index.scss new file mode 100644 index 000000000..1a37860c4 --- /dev/null +++ b/storybook/design-system/src/pages/atoms/list/index.scss @@ -0,0 +1,11 @@ +/* Correction toolkit *****************************************************/ + +.af { + &-list--check { + .af-list__item { + .glyphicon { + margin-top: 0; + } + } + } +} diff --git a/storybook/design-system/src/pages/atoms/list/markdown/guidelines.md b/storybook/design-system/src/pages/atoms/list/markdown/guidelines.md new file mode 100644 index 000000000..243a5262b --- /dev/null +++ b/storybook/design-system/src/pages/atoms/list/markdown/guidelines.md @@ -0,0 +1,36 @@ +## Tone of voice + +Quapropter a natura mihi **bold** potius quam ab indigentia orta amicitia, applicatione magis animi cum quodam sensu amandi quam cogitatione quantum illa res utilitatis esset habitura. Quod quidem quale sit, [link to Google!](http://google.com) quibusdam animadverti potest, quae ex se _italic_ ita amant ad quoddam tempus et ab eis ita amantur ut facile earum sensus appareat. + +- Quapropter a natura mihi videtur potius quam ab +- sit, etiam in bestiis quibusdam animadverti potest, +- quae ex se natos ita amant ad quoddam tempus . + +**Component** Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Usage + +| Component type | Purpose | +| ---------------- | -------------------- | +| Primary | Use for ... when ... | +| Secondary | Use for ... when ... | +| With icon | Use for ... when ... | +| Disabled version | Use for ... when ... | +| Light version | Use for ... when ... | + +## Label + +Component labels ... Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Icon usage + +- Use glyphs (16px) within buttons. +- Glyphs are distinguished by their solid shape and knocked-out details. +- Glyphs should always appear to the right of the text. +- Glyphs used in buttons must be directly related to the action that the user is taking. +- Glyphs must be the same color value as the text within a button. +- Ghost buttons require a glyph icon (cannot be stand alone text because of poor affordance). + +## Danger version usage + +Danger ... Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. diff --git a/storybook/design-system/src/pages/molecules/title-bar/markdown/structure.md b/storybook/design-system/src/pages/atoms/list/markdown/style.md similarity index 54% rename from storybook/design-system/src/pages/molecules/title-bar/markdown/structure.md rename to storybook/design-system/src/pages/atoms/list/markdown/style.md index ccc47f27d..25d0cc0fe 100644 --- a/storybook/design-system/src/pages/molecules/title-bar/markdown/structure.md +++ b/storybook/design-system/src/pages/atoms/list/markdown/style.md @@ -1,3 +1,18 @@ +## Imports SASS + +``` +@import '@axa-fr/react-toolkit-core/src/common/scss/core.scss'; +@import '@axa-fr/react-toolkit-list/dist/list.scss'; +``` + ## Structure A Component Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Typography + +Component text should be set in sentence case, with only the first word in a phrase and any proper nouns capitalized. + +| Class | Font-size (px/rem) | Font-weight | Font-family | +| ------------ | ------------------ | ----------- | ----------------------- | +| **.af-list** | 16 / 1 | 400 | Source Sans Pro Regular | diff --git a/storybook/design-system/src/pages/atoms/list/templates/classic.pug b/storybook/design-system/src/pages/atoms/list/templates/classic.pug new file mode 100644 index 000000000..a91ce6c6c --- /dev/null +++ b/storybook/design-system/src/pages/atoms/list/templates/classic.pug @@ -0,0 +1,8 @@ +.tk-block-demo + ul.af-list + li.af-list__item Olivier Youf + li.af-list__item Arnaud Bernard + li.af-list__item Guillaume Chervet + li.af-list__item Samuel Gomez + li.af-list__item Jean-Baptiste Rudant + li.af-list__item Romain Petigny diff --git a/storybook/design-system/src/pages/atoms/list/templates/withIcon.pug b/storybook/design-system/src/pages/atoms/list/templates/withIcon.pug new file mode 100644 index 000000000..23ad219b8 --- /dev/null +++ b/storybook/design-system/src/pages/atoms/list/templates/withIcon.pug @@ -0,0 +1,23 @@ +.tk-block-demo + ul.af-list.af-list--check + li.af-list__item + span.glyphicon.glyphicon-ok + | CSS et SASS + li.af-list__item + span.glyphicon.glyphicon-ok + | ReactJS + li.af-list__item + span.glyphicon.glyphicon-ok + | ES6 + li.af-list__item + span.glyphicon.glyphicon-ok + | GIT + li.af-list__item + span.glyphicon.glyphicon-ok + | Webpack + li.af-list__item + span.glyphicon.glyphicon-ok + | Typescript + li.af-list__item + span.glyphicon.glyphicon-ok + | ReasonML diff --git a/storybook/design-system/src/pages/atoms/loader/data.json b/storybook/design-system/src/pages/atoms/loader/data.json new file mode 100644 index 000000000..1bd82aec0 --- /dev/null +++ b/storybook/design-system/src/pages/atoms/loader/data.json @@ -0,0 +1,25 @@ +{ + "metatitle": "Loader Component UI - Slash Design System", + "metadescription": "UI Component Loader for design system Axa. Toolkit Axa is the design system for Axa web and product. It is a series of individual styles, components, and guidelines used for creating unified UI.", + "metakeywords": "Loader design system, ui Loader, design system axa, design system ui, design system react, design", + "github": "loader", + "storybook": "loader--default", + "badge": "%40axa-fr%2Freact-toolkit-loader", + "colors": [ + { + "name": "BLEU AXA", + "sass": "$color-axa", + "hex": "#00008f" + }, + { + "name": "Mercury", + "sass": "$color-mercury", + "hex": "#e5e5e5" + }, + { + "name": "Silver", + "sass": " $color-silver", + "hex": "#cccccc" + } + ] +} diff --git a/storybook/design-system/src/pages/atoms/loader/index.pug b/storybook/design-system/src/pages/atoms/loader/index.pug new file mode 100644 index 000000000..c09a67ba2 --- /dev/null +++ b/storybook/design-system/src/pages/atoms/loader/index.pug @@ -0,0 +1,32 @@ +extends ../../../commons/layout + +block meta + -var activePath = '/atoms/loader'; + -const { metatitle, metadescription, metakeywords, github, storybook, badge, colors } = require(`../src/pages${activePath}/data.json`) + -var sassPath = 'react-toolkit-loader/dist/spinner.scss' + -var metaTitle = metatitle + -var metaDescription = metadescription + -var metaKeywords = metakeywords + -var basedir='../../' + +block vars + - var id = "component" + +block menu + +Menu({ activePath }) + +block page + +PageTitle({ title: 'Loader', subtitle: 'Atom' }) + .tk-page__links + +PageSummary() + +PageLinks({github, storybook, badge}) + +PageContentComponent() + block guidelines + +PageMarkdown() + include:markdown-it(html) ./markdown/guidelines.md + block code + +Demo({ title:'Classic Loader', storybook, activePath, tmpl: `classic`, sassPath }) + block style + +PageMarkdown() + include:markdown-it(html) ./markdown/style.md + +Colors({ colors }) diff --git a/storybook/design-system/src/pages/atoms/loader/markdown/guidelines.md b/storybook/design-system/src/pages/atoms/loader/markdown/guidelines.md new file mode 100644 index 000000000..243a5262b --- /dev/null +++ b/storybook/design-system/src/pages/atoms/loader/markdown/guidelines.md @@ -0,0 +1,36 @@ +## Tone of voice + +Quapropter a natura mihi **bold** potius quam ab indigentia orta amicitia, applicatione magis animi cum quodam sensu amandi quam cogitatione quantum illa res utilitatis esset habitura. Quod quidem quale sit, [link to Google!](http://google.com) quibusdam animadverti potest, quae ex se _italic_ ita amant ad quoddam tempus et ab eis ita amantur ut facile earum sensus appareat. + +- Quapropter a natura mihi videtur potius quam ab +- sit, etiam in bestiis quibusdam animadverti potest, +- quae ex se natos ita amant ad quoddam tempus . + +**Component** Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Usage + +| Component type | Purpose | +| ---------------- | -------------------- | +| Primary | Use for ... when ... | +| Secondary | Use for ... when ... | +| With icon | Use for ... when ... | +| Disabled version | Use for ... when ... | +| Light version | Use for ... when ... | + +## Label + +Component labels ... Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Icon usage + +- Use glyphs (16px) within buttons. +- Glyphs are distinguished by their solid shape and knocked-out details. +- Glyphs should always appear to the right of the text. +- Glyphs used in buttons must be directly related to the action that the user is taking. +- Glyphs must be the same color value as the text within a button. +- Ghost buttons require a glyph icon (cannot be stand alone text because of poor affordance). + +## Danger version usage + +Danger ... Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. diff --git a/storybook/design-system/src/pages/atoms/loader/markdown/style.md b/storybook/design-system/src/pages/atoms/loader/markdown/style.md new file mode 100644 index 000000000..8bd8912b5 --- /dev/null +++ b/storybook/design-system/src/pages/atoms/loader/markdown/style.md @@ -0,0 +1,18 @@ +## Imports SASS + +``` +@import '@axa-fr/react-toolkit-core/src/common/scss/core.scss'; +@import '@axa-fr/react-toolkit-loader/dist/loader.scss'; +``` + +## Structure + +A Component Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Typography + +Component text should be set in sentence case, with only the first word in a phrase and any proper nouns capitalized. + +| Class | Font-size (px/rem) | Font-weight | Font-family | +| -------------- | ------------------ | ----------- | ----------------------- | +| **.af-loader** | 16 / 1 | 400 | Source Sans Pro Regular | diff --git a/storybook/design-system/src/pages/atoms/loader/templates/classic.pug b/storybook/design-system/src/pages/atoms/loader/templates/classic.pug new file mode 100644 index 000000000..b9a945257 --- /dev/null +++ b/storybook/design-system/src/pages/atoms/loader/templates/classic.pug @@ -0,0 +1,4 @@ +.af-spinner.af-spinner--active + .af-spinner__animation + .af-spinner__caption + span Loading... diff --git a/storybook/design-system/src/pages/atoms/popover/data.json b/storybook/design-system/src/pages/atoms/popover/data.json new file mode 100644 index 000000000..3a6a56624 --- /dev/null +++ b/storybook/design-system/src/pages/atoms/popover/data.json @@ -0,0 +1,25 @@ +{ + "metatitle": "Popover Component UI - Slash Design System", + "metadescription": "UI Component Popover for design system Axa. Toolkit Axa is the design system for Axa web and product. It is a series of individual styles, components, and guidelines used for creating unified UI.", + "metakeywords": "Popover design system, ui Popover, design system axa, design system ui, design system react, design", + "github": "popover", + "storybook": "popover--popover", + "badge": "%40axa-fr%2Freact-toolkit-popover", + "colors": [ + { + "name": "BLEU AXA", + "sass": "$color-axa", + "hex": "#00008f" + }, + { + "name": "Mercury", + "sass": "$color-mercury", + "hex": "#e5e5e5" + }, + { + "name": "Silver", + "sass": " $color-silver", + "hex": "#cccccc" + } + ] +} diff --git a/storybook/design-system/src/pages/atoms/popover/index.pug b/storybook/design-system/src/pages/atoms/popover/index.pug new file mode 100644 index 000000000..9aa01bece --- /dev/null +++ b/storybook/design-system/src/pages/atoms/popover/index.pug @@ -0,0 +1,32 @@ +extends ../../../commons/layout + +block meta + -var activePath = '/atoms/popover'; + -const { metatitle, metadescription, metakeywords, github, storybook, badge, colors } = require(`../src/pages${activePath}/data.json`) + -var sassPath = 'react-toolkit-popover/dist/popover.scss' + -var metaTitle = metatitle + -var metaDescription = metadescription + -var metaKeywords = metakeywords + -var basedir='../../' + +block vars + - var id = "component" + +block menu + +Menu({ activePath }) + +block page + +PageTitle({ title: 'Popover', subtitle: 'Atom' }) + .tk-page__links + +PageSummary() + +PageLinks({github, storybook, badge}) + +PageContentComponent() + block guidelines + +PageMarkdown() + include:markdown-it(html) ./markdown/guidelines.md + block code + +Demo({ title:'Classic Popover', storybook, activePath, tmpl: `classic`, modifier: 'popover', sassPath }) + block style + +PageMarkdown() + include:markdown-it(html) ./markdown/style.md + +Colors({ colors }) diff --git a/storybook/design-system/src/pages/atoms/popover/index.scss b/storybook/design-system/src/pages/atoms/popover/index.scss new file mode 100644 index 000000000..e2c919184 --- /dev/null +++ b/storybook/design-system/src/pages/atoms/popover/index.scss @@ -0,0 +1,17 @@ +/* Style just for demo */ +.#{$prefix} { + &-demo { + &--popover { + .#{$prefix}-block-demo { + display: flex; + align-content: space-between; + flex-wrap: wrap; + margin-top: 5rem; + + .af-btn--circle { + margin: 3rem; + } + } + } + } +} diff --git a/storybook/design-system/src/pages/atoms/popover/markdown/guidelines.md b/storybook/design-system/src/pages/atoms/popover/markdown/guidelines.md new file mode 100644 index 000000000..243a5262b --- /dev/null +++ b/storybook/design-system/src/pages/atoms/popover/markdown/guidelines.md @@ -0,0 +1,36 @@ +## Tone of voice + +Quapropter a natura mihi **bold** potius quam ab indigentia orta amicitia, applicatione magis animi cum quodam sensu amandi quam cogitatione quantum illa res utilitatis esset habitura. Quod quidem quale sit, [link to Google!](http://google.com) quibusdam animadverti potest, quae ex se _italic_ ita amant ad quoddam tempus et ab eis ita amantur ut facile earum sensus appareat. + +- Quapropter a natura mihi videtur potius quam ab +- sit, etiam in bestiis quibusdam animadverti potest, +- quae ex se natos ita amant ad quoddam tempus . + +**Component** Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Usage + +| Component type | Purpose | +| ---------------- | -------------------- | +| Primary | Use for ... when ... | +| Secondary | Use for ... when ... | +| With icon | Use for ... when ... | +| Disabled version | Use for ... when ... | +| Light version | Use for ... when ... | + +## Label + +Component labels ... Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Icon usage + +- Use glyphs (16px) within buttons. +- Glyphs are distinguished by their solid shape and knocked-out details. +- Glyphs should always appear to the right of the text. +- Glyphs used in buttons must be directly related to the action that the user is taking. +- Glyphs must be the same color value as the text within a button. +- Ghost buttons require a glyph icon (cannot be stand alone text because of poor affordance). + +## Danger version usage + +Danger ... Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. diff --git a/storybook/design-system/src/pages/atoms/popover/markdown/style.md b/storybook/design-system/src/pages/atoms/popover/markdown/style.md new file mode 100644 index 000000000..6bd005bf4 --- /dev/null +++ b/storybook/design-system/src/pages/atoms/popover/markdown/style.md @@ -0,0 +1,18 @@ +## Imports SASS + +``` +@import '@axa-fr/react-toolkit-core/src/common/scss/core.scss'; +@import '@axa-fr/react-toolkit-popover/dist/popover.scss'; +``` + +## Structure + +A Component Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Typography + +Component text should be set in sentence case, with only the first word in a phrase and any proper nouns capitalized. + +| Class | Font-size (px/rem) | Font-weight | Font-family | +| --------------- | ------------------ | ----------- | ----------------------- | +| **.af-popover** | 16 / 1 | 400 | Source Sans Pro Regular | diff --git a/storybook/design-system/src/pages/atoms/popover/templates/classic.pug b/storybook/design-system/src/pages/atoms/popover/templates/classic.pug new file mode 100644 index 000000000..caf9b5541 --- /dev/null +++ b/storybook/design-system/src/pages/atoms/popover/templates/classic.pug @@ -0,0 +1,12 @@ +-var exemples = ["pushpin", "print", "arrow-xs-down", "heart", "eye-open", "menu-hamburger", "remove", "filter", "floppy-disk", "open"]; +-var translate = ["32px, -7px, 0px", "44px, -7px, 0px", "9px, -7px, 0px", "42px, -7px, 0px", "27px, -7px, 0px", "0, -17px, 0px", "32px, -7px, 0px", "43px, -7px, 0px", "19px, -7px, 0px", "41px, -7px, 0px"]; + +.tk-block-demo + each ex, index in exemples + .af-popover__container + .af-popover__container-over + a.btn.af-btn--circle(href="#" role="button" ) + i.glyphicon(class=`glyphicon-${ex}`) + .af-popover__container-pop(data-placement="top" style=`text-align: center;position: absolute; transform: translate3d(${translate[index]}); top: 0px; left: 0px; will-change: transform;` ) + | #{ex} + span.af-popover__arrow diff --git a/storybook/design-system/src/pages/atoms/slider/data.json b/storybook/design-system/src/pages/atoms/slider/data.json new file mode 100644 index 000000000..cd945306d --- /dev/null +++ b/storybook/design-system/src/pages/atoms/slider/data.json @@ -0,0 +1,25 @@ +{ + "metatitle": "Slider Component UI - Slash Design System", + "metadescription": "UI Component Slider for design system Axa. Toolkit Axa is the design system for Axa web and product. It is a series of individual styles, components, and guidelines used for creating unified UI.", + "metakeywords": "Slider design system, ui Slider, design system axa, design system ui, design system react, design", + "github": "Form/Input/slider", + "storybook": "form-input-slider--sliderinput", + "badge": "%40axa-fr%2Freact-toolkit-form-input-slider", + "colors": [ + { + "name": "BLEU AXA", + "sass": "$color-axa", + "hex": "#00008f" + }, + { + "name": "Mercury", + "sass": "$color-mercury", + "hex": "#e5e5e5" + }, + { + "name": "Silver", + "sass": " $color-silver", + "hex": "#cccccc" + } + ] +} diff --git a/storybook/design-system/src/pages/atoms/slider/index.pug b/storybook/design-system/src/pages/atoms/slider/index.pug new file mode 100644 index 000000000..fdeba7797 --- /dev/null +++ b/storybook/design-system/src/pages/atoms/slider/index.pug @@ -0,0 +1,32 @@ +extends ../../../commons/layout + +block meta + -var activePath = '/atoms/slider'; + -const { metatitle, metadescription, metakeywords, github, storybook, badge, colors } = require(`../src/pages${activePath}/data.json`) + -var sassPath = 'react-toolkit-form-input-slider/dist/slider.scss' + -var metaTitle = metatitle + -var metaDescription = metadescription + -var metaKeywords = metakeywords + -var basedir='../../' + +block vars + - var id = "component" + +block menu + +Menu({ activePath }) + +block page + +PageTitle({ title: 'Slider', subtitle: 'Atom' }) + .tk-page__links + +PageSummary() + +PageLinks({github, storybook, badge}) + +PageContentComponent() + block guidelines + +PageMarkdown() + include:markdown-it(html) ./markdown/guidelines.md + block code + +Demo({ title:'Classic Slider', storybook, activePath, tmpl: `classic`, sassPath }) + block style + +PageMarkdown() + include:markdown-it(html) ./markdown/style.md + +Colors({ colors }) diff --git a/storybook/design-system/src/pages/atoms/slider/index.scss b/storybook/design-system/src/pages/atoms/slider/index.scss new file mode 100644 index 000000000..e98cdac56 --- /dev/null +++ b/storybook/design-system/src/pages/atoms/slider/index.scss @@ -0,0 +1,300 @@ +/* jut for demo */ + +.rc-slider { + position: relative; + height: 14px; + padding: 5px 0; + width: 100%; + border-radius: 6px; + -ms-touch-action: none; + touch-action: none; + box-sizing: border-box; + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); +} + +.rc-slider * { + box-sizing: border-box; + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); +} + +.rc-slider-rail { + position: absolute; + width: 100%; + background-color: #e9e9e9; + height: 4px; + border-radius: 6px; +} + +.rc-slider-track { + position: absolute; + left: 0; + height: 4px; + border-radius: 6px; + background-color: #abe2fb; +} + +.rc-slider-handle { + position: absolute; + margin-left: -7px; + margin-top: -5px; + width: 14px; + height: 14px; + cursor: pointer; + cursor: -webkit-grab; + cursor: grab; + border-radius: 50%; + border: solid 2px #96dbfa; + background-color: #fff; + -ms-touch-action: pan-x; + touch-action: pan-x; +} + +.rc-slider-handle:focus { + border-color: #57c5f7; + box-shadow: 0 0 0 5px #96dbfa; + outline: none; +} + +.rc-slider-handle-click-focused:focus { + border-color: #96dbfa; + box-shadow: unset; +} + +.rc-slider-handle:hover { + border-color: #57c5f7; +} + +.rc-slider-handle:active { + border-color: #57c5f7; + box-shadow: 0 0 5px #57c5f7; + cursor: -webkit-grabbing; + cursor: grabbing; +} + +.rc-slider-mark { + position: absolute; + top: 18px; + left: 0; + width: 100%; + font-size: 12px; +} + +.rc-slider-mark-text { + position: absolute; + display: inline-block; + vertical-align: middle; + text-align: center; + cursor: pointer; + color: #999; +} + +.rc-slider-mark-text-active { + color: #666; +} + +.rc-slider-step { + position: absolute; + width: 100%; + height: 4px; + background: transparent; +} + +.rc-slider-dot { + position: absolute; + bottom: -2px; + margin-left: -4px; + width: 8px; + height: 8px; + border: 2px solid #e9e9e9; + background-color: #fff; + cursor: pointer; + border-radius: 50%; + vertical-align: middle; +} + +.rc-slider-dot-active { + border-color: #96dbfa; +} + +.rc-slider-disabled { + background-color: #e9e9e9; +} + +.rc-slider-disabled .rc-slider-track { + background-color: #ccc; +} + +.rc-slider-disabled .rc-slider-handle, +.rc-slider-disabled .rc-slider-dot { + border-color: #ccc; + box-shadow: none; + background-color: #fff; + cursor: not-allowed; +} + +.rc-slider-disabled .rc-slider-mark-text, +.rc-slider-disabled .rc-slider-dot { + cursor: not-allowed !important; +} + +.rc-slider-vertical { + width: 14px; + height: 100%; + padding: 0 5px; +} + +.rc-slider-vertical .rc-slider-rail { + height: 100%; + width: 4px; +} + +.rc-slider-vertical .rc-slider-track { + left: 5px; + bottom: 0; + width: 4px; +} + +.rc-slider-vertical .rc-slider-handle { + margin-left: -5px; + margin-bottom: -7px; + -ms-touch-action: pan-y; + touch-action: pan-y; +} + +.rc-slider-vertical .rc-slider-mark { + top: 0; + left: 18px; + height: 100%; +} + +.rc-slider-vertical .rc-slider-step { + height: 100%; + width: 4px; +} + +.rc-slider-vertical .rc-slider-dot { + left: 2px; + margin-bottom: -4px; +} + +.rc-slider-vertical .rc-slider-dot:first-child { + margin-bottom: -4px; +} + +.rc-slider-vertical .rc-slider-dot:last-child { + margin-bottom: -4px; +} + +.rc-slider-tooltip-zoom-down-enter, +.rc-slider-tooltip-zoom-down-appear { + animation-duration: .3s; + animation-fill-mode: both; + display: block !important; + animation-play-state: paused; +} + +.rc-slider-tooltip-zoom-down-leave { + animation-duration: .3s; + animation-fill-mode: both; + display: block !important; + animation-play-state: paused; +} + +.rc-slider-tooltip-zoom-down-enter.rc-slider-tooltip-zoom-down-enter-active, +.rc-slider-tooltip-zoom-down-appear.rc-slider-tooltip-zoom-down-appear-active { + animation-name: rcSliderTooltipZoomDownIn; + animation-play-state: running; +} + +.rc-slider-tooltip-zoom-down-leave.rc-slider-tooltip-zoom-down-leave-active { + animation-name: rcSliderTooltipZoomDownOut; + animation-play-state: running; +} + +.rc-slider-tooltip-zoom-down-enter, +.rc-slider-tooltip-zoom-down-appear { + transform: scale(0, 0); + animation-timing-function: cubic-bezier(0.23, 1, 0.32, 1); +} + +.rc-slider-tooltip-zoom-down-leave { + animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06); +} + +@keyframes rcSliderTooltipZoomDownIn { + 0% { + opacity: 0; + transform-origin: 50% 100%; + transform: scale(0, 0); + } + + 100% { + transform-origin: 50% 100%; + transform: scale(1, 1); + } +} + +@keyframes rcSliderTooltipZoomDownOut { + 0% { + transform-origin: 50% 100%; + transform: scale(1, 1); + } + + 100% { + opacity: 0; + transform-origin: 50% 100%; + transform: scale(0, 0); + } +} + +.rc-slider-tooltip { + position: absolute; + left: -9999px; + top: -9999px; + visibility: visible; + box-sizing: border-box; + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); +} + +.rc-slider-tooltip * { + box-sizing: border-box; + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); +} + +.rc-slider-tooltip-hidden { + display: none; +} + +.rc-slider-tooltip-placement-top { + padding: 4px 0 8px 0; +} + +.rc-slider-tooltip-inner { + padding: 6px 2px; + min-width: 24px; + height: 24px; + font-size: 12px; + line-height: 1; + color: #fff; + text-align: center; + text-decoration: none; + background-color: #6c6c6c; + border-radius: 6px; + box-shadow: 0 0 4px #d9d9d9; +} + +.rc-slider-tooltip-arrow { + position: absolute; + width: 0; + height: 0; + border-color: transparent; + border-style: solid; +} + +.rc-slider-tooltip-placement-top .rc-slider-tooltip-arrow { + bottom: 4px; + left: 50%; + margin-left: -4px; + border-width: 4px 4px 0; + border-top-color: #6c6c6c; +} diff --git a/storybook/design-system/src/pages/atoms/slider/markdown/guidelines.md b/storybook/design-system/src/pages/atoms/slider/markdown/guidelines.md new file mode 100644 index 000000000..243a5262b --- /dev/null +++ b/storybook/design-system/src/pages/atoms/slider/markdown/guidelines.md @@ -0,0 +1,36 @@ +## Tone of voice + +Quapropter a natura mihi **bold** potius quam ab indigentia orta amicitia, applicatione magis animi cum quodam sensu amandi quam cogitatione quantum illa res utilitatis esset habitura. Quod quidem quale sit, [link to Google!](http://google.com) quibusdam animadverti potest, quae ex se _italic_ ita amant ad quoddam tempus et ab eis ita amantur ut facile earum sensus appareat. + +- Quapropter a natura mihi videtur potius quam ab +- sit, etiam in bestiis quibusdam animadverti potest, +- quae ex se natos ita amant ad quoddam tempus . + +**Component** Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Usage + +| Component type | Purpose | +| ---------------- | -------------------- | +| Primary | Use for ... when ... | +| Secondary | Use for ... when ... | +| With icon | Use for ... when ... | +| Disabled version | Use for ... when ... | +| Light version | Use for ... when ... | + +## Label + +Component labels ... Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Icon usage + +- Use glyphs (16px) within buttons. +- Glyphs are distinguished by their solid shape and knocked-out details. +- Glyphs should always appear to the right of the text. +- Glyphs used in buttons must be directly related to the action that the user is taking. +- Glyphs must be the same color value as the text within a button. +- Ghost buttons require a glyph icon (cannot be stand alone text because of poor affordance). + +## Danger version usage + +Danger ... Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. diff --git a/storybook/design-system/src/pages/atoms/slider/markdown/style.md b/storybook/design-system/src/pages/atoms/slider/markdown/style.md new file mode 100644 index 000000000..d66140849 --- /dev/null +++ b/storybook/design-system/src/pages/atoms/slider/markdown/style.md @@ -0,0 +1,18 @@ +## Imports SASS + +``` +@import '@axa-fr/react-toolkit-core/src/common/scss/core.scss'; +@import '@axa-fr/react-toolkit-form-input-slider/dist/slider.scss'; +``` + +## Structure + +A Component Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Typography + +Component text should be set in sentence case, with only the first word in a phrase and any proper nouns capitalized. + +| Class | Font-size (px/rem) | Font-weight | Font-family | +| ---------------------- | ------------------ | ----------- | ----------------------- | +| **.af-form\_\_slider** | 16 / 1 | 400 | Source Sans Pro Regular | diff --git a/storybook/design-system/src/pages/atoms/slider/templates/classic.pug b/storybook/design-system/src/pages/atoms/slider/templates/classic.pug new file mode 100644 index 000000000..16574fd12 --- /dev/null +++ b/storybook/design-system/src/pages/atoms/slider/templates/classic.pug @@ -0,0 +1,17 @@ +.af-form__slider + .md-10 + div(style="width: 100%; margin: 0px;") + .rc-slider.rc-slider-with-marks + .rc-slider-rail + .rc-slider-track(style="visibility: visible; left: 0%; width: 33.3333%;") + .rc-slider-step + span.rc-slider-dot.rc-slider-dot-active(style="left: 0%;") + span.rc-slider-dot.rc-slider-dot-active(style="left: 33.3333%;") + span.rc-slider-dot(style="left: 66.6667%;") + span.rc-slider-dot(style="left: 100%;") + .rc-slider-handle(role="slider" tabindex="0" aria-valuemin="0" aria-valuemax="3" aria-valuenow="1" aria-disabled="false" style="left: 33.3333%;") + .rc-slider-mark + span.rc-slider-mark-text.rc-slider-mark-text-active(style="width: 30%; margin-left: -15%; left: 0%;") VERY BAD + span.rc-slider-mark-text.rc-slider-mark-text-active(style="width: 30%; margin-left: -15%; left: 33.3333%;") BAD + span.rc-slider-mark-text(style="width: 30%; margin-left: -15%; left: 66.6667%;") NICE + span.rc-slider-mark-text(style="width: 30%; margin-left: -15%; left: 100%;") VERY NICE diff --git a/storybook/design-system/src/pages/atoms/title/data.json b/storybook/design-system/src/pages/atoms/title/data.json new file mode 100644 index 000000000..fbd81536f --- /dev/null +++ b/storybook/design-system/src/pages/atoms/title/data.json @@ -0,0 +1,25 @@ +{ + "metatitle": "Title Component UI - Slash Design System", + "metadescription": "UI Component Title for design system Axa. Toolkit Axa is the design system for Axa web and product. It is a series of individual styles, components, and guidelines used for creating unified UI.", + "metakeywords": "Title design system, ui Title, design system axa, design system ui, design system react, design", + "github": "title", + "storybook": "title--default", + "badge": "%40axa-fr%2Freact-toolkit-title", + "colors": [ + { + "name": "BLEU AXA", + "sass": "$color-axa", + "hex": "#00008f" + }, + { + "name": "Mercury", + "sass": "$color-mercury", + "hex": "#e5e5e5" + }, + { + "name": "Silver", + "sass": " $color-silver", + "hex": "#cccccc" + } + ] +} diff --git a/storybook/design-system/src/pages/atoms/title/index.pug b/storybook/design-system/src/pages/atoms/title/index.pug new file mode 100644 index 000000000..96261d9f3 --- /dev/null +++ b/storybook/design-system/src/pages/atoms/title/index.pug @@ -0,0 +1,32 @@ +extends ../../../commons/layout + +block meta + -var activePath = '/atoms/title'; + -const { metatitle, metadescription, metakeywords, github, storybook, badge, colors } = require(`../src/pages${activePath}/data.json`) + -var sassPath = 'react-toolkit-title/dist/title.scss' + -var metaTitle = metatitle + -var metaDescription = metadescription + -var metaKeywords = metakeywords + -var basedir='../../' + +block vars + - var id = "component" + +block menu + +Menu({ activePath }) + +block page + +PageTitle({ title: 'Title', subtitle: 'Atom' }) + .tk-page__links + +PageSummary() + +PageLinks({github, storybook, badge}) + +PageContentComponent() + block guidelines + +PageMarkdown() + include:markdown-it(html) ./markdown/guidelines.md + block code + +Demo({ title:'Classic Title', storybook, activePath, tmpl: `classic`, sassPath }) + block style + +PageMarkdown() + include:markdown-it(html) ./markdown/style.md + +Colors({ colors }) diff --git a/storybook/design-system/src/pages/atoms/title/markdown/guidelines.md b/storybook/design-system/src/pages/atoms/title/markdown/guidelines.md new file mode 100644 index 000000000..243a5262b --- /dev/null +++ b/storybook/design-system/src/pages/atoms/title/markdown/guidelines.md @@ -0,0 +1,36 @@ +## Tone of voice + +Quapropter a natura mihi **bold** potius quam ab indigentia orta amicitia, applicatione magis animi cum quodam sensu amandi quam cogitatione quantum illa res utilitatis esset habitura. Quod quidem quale sit, [link to Google!](http://google.com) quibusdam animadverti potest, quae ex se _italic_ ita amant ad quoddam tempus et ab eis ita amantur ut facile earum sensus appareat. + +- Quapropter a natura mihi videtur potius quam ab +- sit, etiam in bestiis quibusdam animadverti potest, +- quae ex se natos ita amant ad quoddam tempus . + +**Component** Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Usage + +| Component type | Purpose | +| ---------------- | -------------------- | +| Primary | Use for ... when ... | +| Secondary | Use for ... when ... | +| With icon | Use for ... when ... | +| Disabled version | Use for ... when ... | +| Light version | Use for ... when ... | + +## Label + +Component labels ... Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Icon usage + +- Use glyphs (16px) within buttons. +- Glyphs are distinguished by their solid shape and knocked-out details. +- Glyphs should always appear to the right of the text. +- Glyphs used in buttons must be directly related to the action that the user is taking. +- Glyphs must be the same color value as the text within a button. +- Ghost buttons require a glyph icon (cannot be stand alone text because of poor affordance). + +## Danger version usage + +Danger ... Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. diff --git a/storybook/design-system/src/pages/atoms/title/markdown/style.md b/storybook/design-system/src/pages/atoms/title/markdown/style.md new file mode 100644 index 000000000..5960d7d12 --- /dev/null +++ b/storybook/design-system/src/pages/atoms/title/markdown/style.md @@ -0,0 +1,18 @@ +## Imports SASS + +``` +@import '@axa-fr/react-toolkit-core/src/common/scss/core.scss'; +@import '@axa-fr/react-toolkit-title/dist/title.scss'; +``` + +## Structure + +A Component Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Typography + +Component text should be set in sentence case, with only the first word in a phrase and any proper nouns capitalized. + +| Class | Font-size (px/rem) | Font-weight | Font-family | +| ------------- | ------------------ | ----------- | ----------------------- | +| **.af-title** | 16 / 1 | 400 | Source Sans Pro Regular | diff --git a/storybook/design-system/src/pages/atoms/title/templates/classic.pug b/storybook/design-system/src/pages/atoms/title/templates/classic.pug new file mode 100644 index 000000000..56816644a --- /dev/null +++ b/storybook/design-system/src/pages/atoms/title/templates/classic.pug @@ -0,0 +1,26 @@ +div(style="background:white; padding: 2rem;") + h1.af-title.af-title--bigTitle Super titre + h1.af-title Title h1 + h2.af-title Title h2 + h3.af-title Title h3 + h4.af-title Title h4 + h5.af-title Title h5 + h6.af-title Title h6 + h1.af-title--content Header 1 + p Lorem ipsum dolor sit amet consectetur adipisicing elit. Mollitia, blanditiis alias placeat pariatur animi doloremque consequatur adipisci esse, numquam officiis soluta ipsam laboriosam? Reprehenderit iusto magni obcaecati quos, hic ab. + p Lorem ipsum dolor sit amet consectetur adipisicing elit. Mollitia, blanditiis alias placeat pariatur animi doloremque consequatur adipisci esse, numquam officiis soluta ipsam laboriosam? Reprehenderit iusto magni obcaecati quos, hic ab. + h2.af-subtitle Header 2 + p Lorem ipsum dolor sit amet consectetur adipisicing elit. Mollitia, blanditiis alias placeat pariatur animi doloremque consequatur adipisci esse, numquam officiis soluta ipsam laboriosam? Reprehenderit iusto magni obcaecati quos, hic ab. + p Lorem ipsum dolor sit amet consectetur adipisicing elit. Mollitia, blanditiis alias placeat pariatur animi doloremque consequatur adipisci esse, numquam officiis soluta ipsam laboriosam? Reprehenderit iusto magni obcaecati quos, hic ab. + h3.af-subtitle Header 3 + p Lorem ipsum dolor sit amet consectetur adipisicing elit. Mollitia, blanditiis alias placeat pariatur animi doloremque consequatur adipisci esse, numquam officiis soluta ipsam laboriosam? Reprehenderit iusto magni obcaecati quos, hic ab. + p Lorem ipsum dolor sit amet consectetur adipisicing elit. Mollitia, blanditiis alias placeat pariatur animi doloremque consequatur adipisci esse, numquam officiis soluta ipsam laboriosam? Reprehenderit iusto magni obcaecati quos, hic ab. + h4.af-subtitle Header 4 + p Lorem ipsum dolor sit amet consectetur adipisicing elit. Mollitia, blanditiis alias placeat pariatur animi doloremque consequatur adipisci esse, numquam officiis soluta ipsam laboriosam? Reprehenderit iusto magni obcaecati quos, hic ab. + p Lorem ipsum dolor sit amet consectetur adipisicing elit. Mollitia, blanditiis alias placeat pariatur animi doloremque consequatur adipisci esse, numquam officiis soluta ipsam laboriosam? Reprehenderit iusto magni obcaecati quos, hic ab. + h5.af-subtitle Header 5 + p Lorem ipsum dolor sit amet consectetur adipisicing elit. Mollitia, blanditiis alias placeat pariatur animi doloremque consequatur adipisci esse, numquam officiis soluta ipsam laboriosam? Reprehenderit iusto magni obcaecati quos, hic ab. + p Lorem ipsum dolor sit amet consectetur adipisicing elit. Mollitia, blanditiis alias placeat pariatur animi doloremque consequatur adipisci esse, numquam officiis soluta ipsam laboriosam? Reprehenderit iusto magni obcaecati quos, hic ab. + h6.af-subtitle Header 6 + p Lorem ipsum dolor sit amet consectetur adipisicing elit. Mollitia, blanditiis alias placeat pariatur animi doloremque consequatur adipisci esse, numquam officiis soluta ipsam laboriosam? Reprehenderit iusto magni obcaecati quos, hic ab. + p Lorem ipsum dolor sit amet consectetur adipisicing elit. Mollitia, blanditiis alias placeat pariatur animi doloremque consequatur adipisci esse, numquam officiis soluta ipsam laboriosam? Reprehenderit iusto magni obcaecati quos, hic ab. diff --git a/storybook/design-system/src/pages/get-started/index.pug b/storybook/design-system/src/pages/get-started/index.pug index 3547435d5..fa13472d8 100644 --- a/storybook/design-system/src/pages/get-started/index.pug +++ b/storybook/design-system/src/pages/get-started/index.pug @@ -1,21 +1,20 @@ extends ../../commons/layout -block vars - - var id = "getstarted" +block vars + - var id = "getstarted" block meta - -const { metatitle, metadescription, metakeywords } = require('../src/pages/get-started/meta.json') - -var metaTitle = metatitle - -var metaDescription = metadescription - -var metaKeywords = metakeywords - -var basedir='../' + -const { metatitle, metadescription, metakeywords } = require('../src/pages/get-started/meta.json') + -var metaTitle = metatitle + -var metaDescription = metadescription + -var metaKeywords = metakeywords + -var basedir='../' block menu - +Menu({activePath:'/get-started'}) + +Menu({activePath:'/get-started'}) block page - include ../../components/page/page-title - block page-title - include:markdown-it ./markdown/title.md - include ../../components/page/page-content - block page-content - div(class=`${prefix}-markdown`) - include:markdown-it ./markdown/content.md \ No newline at end of file + +PageTitle({ title: 'Get started', subtitle: ` + Slash Design System contain multiples packages on NPM. Use npm install @axa-fr/react-toolkit-all for all +or just component you need @axa-fr/react-toolkit-xxxxx.` }) + +PageContent() + +PageMarkdown() + include:markdown-it ./markdown/content.md diff --git a/storybook/design-system/src/pages/get-started/markdown/content.md b/storybook/design-system/src/pages/get-started/markdown/content.md index cd57af979..6c0be4a5f 100644 --- a/storybook/design-system/src/pages/get-started/markdown/content.md +++ b/storybook/design-system/src/pages/get-started/markdown/content.md @@ -6,13 +6,13 @@ Pour une utilisation simple et rapide, vous pouvez importer l'ensemble des styles des composants en important le fichier : -```scss +```javascript import '@axa-fr/react-toolkit-all/dist/style/af-components.css'; ``` Ou la version SASS -```scss +```javascript import '@axa-fr/react-toolkit-all/dist/style/af-components.scss'; ``` @@ -25,8 +25,8 @@ Vous pouvez utiliser **Slash Design System** indépendemment des [composants Rea **Component** : import du style par composant. Dans cette méthode, vous allez utiliser des fichiers sources des composants. De cette manière, importer uniquement les styles dont vous avez besoin afin de réduire votre bundles. -```scss -// @file: myheader.scss +```css +/* @file: myheader.scss */ @import '@axa-fr/react-toolkit-layout-header/dist/Header/header.scss'; @import '@axa-fr/react-toolkit-layout-header/dist/Infos/infos.scss'; @import '@axa-fr/react-toolkit-layout-header/dist/Name/name.scss'; @@ -47,7 +47,7 @@ La liste des variables est de couleurs est disponibles sur la [page des couleurs Vous pouvez importer les variables dans le fichier SASS de votre composant : -```scss +```css @import '@axa-fr/react-toolkit-core/dist/assets/scss/core.scss'; ``` @@ -74,9 +74,9 @@ Solution 2 : **sprite SVG** import sprite from '@axa-fr/react-toolkit-core/dist/assets/icons-sprite.svg'; const IconOk = () => ( - - } - + + } + ); ``` diff --git a/storybook/design-system/src/pages/github/index.pug b/storybook/design-system/src/pages/github/index.pug new file mode 100644 index 000000000..d43493035 --- /dev/null +++ b/storybook/design-system/src/pages/github/index.pug @@ -0,0 +1,18 @@ +extends ../../commons/layout + +block vars + - var id = "github" + +block meta + -const { metatitle, metadescription, metakeywords } = require('../src/pages/get-started/meta.json') + -var metaTitle = metatitle + -var metaDescription = metadescription + -var metaKeywords = metakeywords + -var basedir='../' +block menu + +Menu({activePath:'/github'}) +block page + +PageTitle({ title: 'Github' }) + +PageContent() + +PageMarkdown() + include:markdown-it ./markdown/content.md diff --git a/storybook/design-system/src/pages/github/markdown/content.md b/storybook/design-system/src/pages/github/markdown/content.md new file mode 100644 index 000000000..f3c261da8 --- /dev/null +++ b/storybook/design-system/src/pages/github/markdown/content.md @@ -0,0 +1,134 @@ +# @axa-fr/react-toolkit + +[![Build status](https://dev.azure.com/axaguildev/react-toolkit/_apis/build/status/AxaGuilDEv.react-toolkit?branch=master)](https://dev.azure.com/axaguildev/react-toolkit) +[![Quality Gate](https://sonarcloud.io/api/project_badges/measure?project=AxaGuilDEv_react-toolkit&metric=alert_status)](https://sonarcloud.io/dashboard?id=AxaGuilDEv_react-toolkit) [![Reliability](https://sonarcloud.io/api/project_badges/measure?project=AxaGuilDEv_react-toolkit&metric=reliability_rating)](https://sonarcloud.io/component_measures?id=AxaGuilDEv_react-toolkit&metric=reliability_rating) [![Security](https://sonarcloud.io/api/project_badges/measure?project=AxaGuilDEv_react-toolkit&metric=security_rating)](https://sonarcloud.io/component_measures?id=AxaGuilDEv_react-toolkit&metric=security_rating) [![Code Corevage](https://sonarcloud.io/api/project_badges/measure?project=AxaGuilDEv_react-toolkit&metric=coverage)](https://sonarcloud.io/component_measures?id=AxaGuilDEv_react-toolkit&metric=Coverage) +[![lerna](https://img.shields.io/badge/maintained%20with-lerna-cc00ff.svg)](https://lernajs.io/) [![Twitter](https://img.shields.io/twitter/follow/GuildDEvOpen?style=social)](https://twitter.com/intent/follow?screen_name=GuildDEvOpen) + +- [About](#about) +- [Getting Started](#getting-started) +- [Packages](#packages) +- [Concept](#concept) +- [How Does It Work](#how-does-it-work) +- [Contribute](#contribute) +- [Roadmap](#roadmap) +- [Demo](#demo) + +## About + +A set of independent components. Awesome library based on HTML and CSS using BEM convention with the JavaScript ReactJS implementation. Each components are autonomous and extensible. Pick and use only what you need! + +**How _React-toolkit_ does CSS isolation?** + +Only by using [BEM (Block Element Modifier)](http://getbem.com) CSS convention. No need of the intricate technologies, just pragatism. + +Components are simple to use (just drag and drog it), simple to customize (by using CSS modifier) to your own need. Each component may evaluate internally (HTML, CSS, JS) and minimize an impact on your application. + +You can easily build a new app from scratch or integrate some component into existing application. + +[html+css documentation website](https://axaguildev.github.io?target=react_toolkit_storybook) +[react storybook website](https://axaguildev.github.io?target=react_toolkit_design) + +## Getting Started + +Install what you need + +```sh +npm install @axa-fr/react-toolkit-alert --save +``` + +Use only what you need + +```javascript +import React from 'react'; +import Alert from '@axa-fr/react-toolkit-alert'; +import '@axa-fr/react-toolkit-alert/dist/alert.scss'; + +const MyAlertComponent => () => ( + +) +``` + +## Packages + +- [@axa-fr/react-toolkit-all](https://github.com/AxaGuilDEv/react-toolkit/blob/master/packages/all/README.md) [![npm version](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-all.svg)](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-all) +- [@axa-fr/react-toolkit-form-input-text](https://github.com/AxaGuilDEv/react-toolkit/blob/master/packages/Form/Input/text/README.md) [![npm version](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-form-input-text.svg)](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-form-input-text) +- [@axa-fr/react-toolkit-form-input-date](https://github.com/AxaGuilDEv/react-toolkit/blob/master/packages/Form/Input/date/README.md) [![npm version](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-form-input-date.svg)](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-form-input-date) +- [@axa-fr/react-toolkit-form-input-choice](https://github.com/AxaGuilDEv/react-toolkit/blob/master/packages/Form/Input/choice/README.md) [![npm version](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-form-input-choice.svg)](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-form-input-choice) +- [@axa-fr/react-toolkit-form-input-select](https://github.com/AxaGuilDEv/react-toolkit/blob/master/packages/Form/Input/select/README.md) [![npm version](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-form-input-select.svg)](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-form-input-select) +- [@axa-fr/react-toolkit-form-input-select-multi](https://github.com/AxaGuilDEv/react-toolkit/blob/master/packages/Form/Input/select-multi/README.md) [![npm version](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-form-input-select-multi.svg)](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-form-input-select-multi) +- [@axa-fr/react-toolkit-form-input-file](https://github.com/AxaGuilDEv/react-toolkit/blob/master/packages/Form/Input/file/README.md) [![npm version](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-form-input-file.svg)](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-form-input-file) +- [@axa-fr/react-toolkit-form-input-slider](https://github.com/AxaGuilDEv/react-toolkit/blob/master/packages/Form/Input/slider/README.md) [![npm version](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-form-input-slider.svg)](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-form-input-slider) +- [@axa-fr/react-toolkit-form-input-checkbox](https://github.com/AxaGuilDEv/react-toolkit/blob/master/packages/Form/Input/checkbox/README.md) [![npm version](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-form-input-checkbox.svg)](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-form-input-checkbox) +- [@axa-fr/react-toolkit-form-input-textarea](https://github.com/AxaGuilDEv/react-toolkit/blob/master/packages/Form/Input/textarea/README.md) [![npm version](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-form-input-textarea.svg)](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-form-input-textarea) +- [@axa-fr/react-toolkit-form-input-radio](https://github.com/AxaGuilDEv/react-toolkit/blob/master/packages/Form/Input/radio/README.md) [![npm version](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-form-input-radio.svg)](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-form-input-radio) +- [@axa-fr/react-toolkit-form-summary](https://github.com/AxaGuilDEv/react-toolkit/blob/master/packages/Form/summary/README.md) [![npm version](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-form-summary.svg)](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-form-summary) +- [@axa-fr/react-toolkit-form-steps](https://github.com/AxaGuilDEv/react-toolkit/blob/master/packages/Form/steps/README.md) [![npm version](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-form-steps.svg)](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-form-steps) +- [@axa-fr/react-toolkit-form-core](https://github.com/AxaGuilDEv/react-toolkit/blob/master/packages/Form/core/README.md) [![npm version](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-form-core.svg)](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-form-core) +- [@axa-fr/react-toolkit-form-input-number](https://github.com/AxaGuilDEv/react-toolkit/blob/master/packages/Form/Input/number/README.md) [![npm version](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-form-input-number.svg)](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-form-input-number) +- [@axa-fr/react-toolkit-form-input-card](https://github.com/AxaGuilDEv/react-toolkit/blob/master/packages/Form/Input/card/README.md) [![npm version](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-form-input-card.svg)](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-form-input-card) +- [@axa-fr/react-toolkit-form-input-select](https://github.com/AxaGuilDEv/react-toolkit/blob/master/packages/Form/Input/select/README.md) [![npm version](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-form-input-select.svg)](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-form-input-select) +- [@axa-fr/react-toolkit-form-input-switch](https://github.com/AxaGuilDEv/react-toolkit/blob/master/packages/Form/Input/switch/README.md) [![npm version](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-form-input-switch.svg)](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-form-input-switch) +- [@axa-fr/react-toolkit-layout-footer](https://github.com/AxaGuilDEv/react-toolkit/blob/master/packages/Layout/footer/README.md) [![npm version](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-layout-footer.svg)](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-layout-footer) +- [@axa-fr/react-toolkit-layout-footer-client](https://github.com/AxaGuilDEv/react-toolkit/blob/master/packages/Layout/footer-client/README.md) [![npm version](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-layout-footer-client.svg)](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-layout-footer-client) +- [@axa-fr/react-toolkit-layout-header](https://github.com/AxaGuilDEv/react-toolkit/blob/master/packages/Layout/header/README.md) [![npm version](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-layout-header.svg)](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-layout-header) +- [@axa-fr/react-toolkit-table](https://github.com/AxaGuilDEv/react-toolkit/blob/master/packages/table/README.md) [![npm version](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-table.svg)](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-table) +- [@axa-fr/react-toolkit-collapse](https://github.com/AxaGuilDEv/react-toolkit/blob/master/packages/collapse/README.md) [![npm version](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-collapse.svg)](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-collapse) +- [@axa-fr/react-toolkit-loader](https://github.com/AxaGuilDEv/react-toolkit/blob/master/packages/loader/README.md) [![npm version](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-loader.svg)](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-loader) +- [@axa-fr/react-toolkit-help](https://github.com/AxaGuilDEv/react-toolkit/blob/master/packages/help/README.md) [![npm version](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-help.svg)](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-help) +- [@axa-fr/react-toolkit-popover](https://github.com/AxaGuilDEv/react-toolkit/blob/master/packages/popover/README.md) [![npm version](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-popover.svg)](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-popover) +- [@axa-fr/react-toolkit-modal](https://github.com/AxaGuilDEv/react-toolkit/blob/master/packages/modal/default/README.md) [![npm version](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-modal-default.svg)](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-modal-default) +- [@axa-fr/react-toolkit-modal](https://github.com/AxaGuilDEv/react-toolkit/blob/master/packages/modal/boolean/README.md) [![npm version](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-modal-boolean.svg)](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-modal-boolean) +- [@axa-fr/react-toolkit-action](https://github.com/AxaGuilDEv/react-toolkit/blob/master/packages/action/README.md) [![npm version](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-action.svg)](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-action) +- [@axa-fr/react-toolkit-alert](https://github.com/AxaGuilDEv/react-toolkit/blob/master/packages/alert/README.md) [![npm version](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-alert.svg)](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-alert) +- [@axa-fr/react-toolkit-tabs](https://github.com/AxaGuilDEv/react-toolkit/blob/master/packages/tabs/README.md) [![npm version](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-tabs.svg)](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-tabs) +- [@axa-fr/react-toolkit-badge](https://github.com/AxaGuilDEv/react-toolkit/blob/master/packages/badge/README.md) [![npm version](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-badge.svg)](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-badge) +- [@axa-fr/react-toolkit-button](https://github.com/AxaGuilDEv/react-toolkit/blob/master/packages/button/README.md) [![npm version](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-button.svg)](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-button) +- [@axa-fr/react-toolkit-icon](https://github.com/AxaGuilDEv/react-toolkit/blob/master/packages/icon/README.md) [![npm version](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-icon.svg)](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-icon) +- [@axa-fr/react-toolkit-core](https://github.com/AxaGuilDEv/react-toolkit/blob/master/packages/core/README.md) [![npm version](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-core.svg)](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-core) +- [@axa-fr/react-toolkit-title](https://github.com/AxaGuilDEv/react-toolkit/blob/master/packages/title/README.md) [![npm version](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-title.svg)](https://badge.fury.io/js/%40axa-fr%2F/react-toolkit-title) +- [@axa-fr/react-toolkit-link](https://github.com/AxaGuilDEv/react-toolkit/blob/master/packages/link/README.md) [![npm version](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-link.svg)](https://badge.fury.io/js/%40axa-fr%2F/react-toolkit-link) +- [@axa-fr/react-toolkit-list](https://github.com/AxaGuilDEv/react-toolkit/blob/master/packages/list/README.md) [![npm version](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-list.svg)](https://badge.fury.io/js/%40axa-fr%2F/react-toolkit-list) +- [@axa-fr/react-toolkit-panel](https://github.com/AxaGuilDEv/react-toolkit/blob/master/packages/panel/README.md) [![npm version](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-panel.svg)](https://badge.fury.io/js/%40axa-fr%2F/react-toolkit-panel) +- [@axa-fr/react-toolkit-restitution](https://github.com/AxaGuilDEv/react-toolkit/blob/master/packages/restitution/README.md) [![npm version](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-restitution.svg)](https://badge.fury.io/js/%40axa-fr%2F/react-toolkit-restitution) +- [@axa-fr/react-toolkit-form-filter-inline](https://github.com/AxaGuilDEv/react-toolkit/blob/master/packages/Form/filter-inline/README.md) [![npm version](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-form-filter-inline.svg)](https://badge.fury.io/js/%40axa-fr%2F/react-toolkit-form-filter-inline) +- [@axa-fr/react-toolkit-form-filter](https://github.com/AxaGuilDEv/react-toolkit/blob/master/packages/Form/filter/README.md) [![npm version](https://badge.fury.io/js/%40axa-fr%2Freact-toolkit-form-filter.svg)](https://badge.fury.io/js/%40axa-fr%2F/react-toolkit-form-filter) + +## Concept + +Each component should be autonomous (HTML + CSS + JS) and extensible. + +## How Does It Work + +### HTML/CSS : + +- BEM convention is used in order to break CSS cascading problem +- SCSS and CSS files are avalaible for every component and can be overrided or extended +- [HTML/CSS Documentation](https://axaguildev.github.io?target=react_toolkit_storybook) + +### React : + +- Components are stateless by default +- Some Higher Order Components (HOC) are stateful but feel free to use the stateless one if it fits your use case +- [React documentation](https://axaguildev.github.io?target=react_toolkit_design) + +## Contribute + +- [How to run the solution and to contribute](https://github.com/AxaGuilDEv/react-toolkit/blob/master/CONTRIBUTING.md) +- [Please respect our code of conduct](https://github.com/AxaGuilDEv/react-toolkit/blob/master/CODE_OF_CONDUCT.md) + +## Roadmap + +- Update general documentation +- Migrating to TypeScript all components +- Fix the issues and clean code. Make it simpler, faster, lighter + +## Demo + +- [Online](https://axaguildev.github.io/react-toolkit/latest/demo/index.html) +- [Guideline](https://github.com/AxaGuilDEv/react-toolkit/blob/master/examples/README.md) +- [Source code](https://github.com/AxaGuilDEv/react-toolkit/blob/master/examples/demo) + +![sample demo](https://raw.githubusercontent.com/AxaGuilDEv/react-toolkit/master/examples/demo.png) diff --git a/storybook/design-system/src/pages/github/meta.json b/storybook/design-system/src/pages/github/meta.json new file mode 100644 index 000000000..f7a2c47f3 --- /dev/null +++ b/storybook/design-system/src/pages/github/meta.json @@ -0,0 +1,5 @@ +{ + "title": "Github Slash Design System - Axa UI/UX Design System for software applications", + "description": "Github Slash Design System. Toolkit Axa is the design system for Axa web and product. It is a series of individual styles, components, and guidelines used for creating unified UI.", + "keywords": "Github Axa design system, slash design system, design system axa, design system ui, design system react, design system ux, Github axa france" +} diff --git a/storybook/design-system/src/pages/home/home.scss b/storybook/design-system/src/pages/home/home.scss index 4cb7acfb7..8e81450a6 100644 --- a/storybook/design-system/src/pages/home/home.scss +++ b/storybook/design-system/src/pages/home/home.scss @@ -121,13 +121,14 @@ font-size: 4rem; font-weight: 200; color: $white; - margin-bottom: 2rem; + margin: 0 0 2rem auto; } &-text { color: $white; - font-size: 2.5rem; + font-size: 2rem; font-weight: 200; + margin: 0; } } @@ -157,12 +158,14 @@ font-weight: 200; color: $white; margin-bottom: 2rem; + margin: 0 0 2rem auto; } &-text { color: $white; - font-size: 2.5rem; + font-size: 2rem; font-weight: 200; + margin: 0; } } } diff --git a/storybook/design-system/src/pages/molecules/alert/data.json b/storybook/design-system/src/pages/molecules/alert/data.json new file mode 100644 index 000000000..1a397aae7 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/alert/data.json @@ -0,0 +1,70 @@ +{ + "metatitle": "Alert Component UI - Slash Design System", + "metadescription": "UI Component Alert for design system Axa. Toolkit Axa is the design system for Axa web and product. It is a series of individual styles, components, and guidelines used for creating unified UI.", + "metakeywords": "Alert design system, ui Alert, design system axa, design system ui, design system react, design", + "github": "alert", + "storybook": "alert-alert--default", + "badge": "%40axa-fr%2Freact-toolkit-alert", + "colors": [ + { + "name": "BLEU AXA", + "sass": "$color-axa", + "hex": "#00008f" + }, + { + "name": "BLEU Action", + "sass": "$color-azur", + "hex": "#3032c1" + }, + { + "name": "BLEU Action focus", + "sass": "$color-azur-focused", + "hex": "#aaabf9" + }, + { + "name": "Mercury", + "sass": "$color-mercury", + "hex": "#e5e5e5" + }, + { + "name": "Silver", + "sass": " $color-silver", + "hex": "#cccccc" + }, + { + "name": "Button Disabled", + "sass": " $color-btn-disabled", + "hex": "#c9c9c9" + }, + { + "name": "Button success", + "sass": " $color-btn-success", + "hex": " #1cc578" + }, + { + "name": "Button success dark", + "sass": " $color-btn-success-dark", + "hex": " #0d844e" + }, + { + "name": "Button success focuced", + "sass": " $color-btn-success-focused", + "hex": " #bdffe1" + }, + { + "name": "Button danger", + "sass": " $color-btn-danger", + "hex": " #f02849" + }, + { + "name": "Button danger dark", + "sass": " $color-btn-danger-dark", + "hex": " #8f182c" + }, + { + "name": "Button danger focuced", + "sass": " $color-btn-danger-focused", + "hex": " #ffa0af" + } + ] +} diff --git a/storybook/design-system/src/pages/molecules/alert/index.pug b/storybook/design-system/src/pages/molecules/alert/index.pug new file mode 100644 index 000000000..cab73a2e7 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/alert/index.pug @@ -0,0 +1,36 @@ +extends ../../../commons/layout + +block meta + -var activePath = '/molecules/alert'; + -const { metatitle, metadescription, metakeywords, github, storybook, badge, colors } = require(`../src/pages${activePath}/data.json`) + -var sassPath = 'react-toolkit-alert/dist/alert.scss' + -var metaTitle = metatitle + -var metaDescription = metadescription + -var metaKeywords = metakeywords + -var basedir='../../' + +block vars + - var id = "component" + +block menu + +Menu({ activePath }) + +block page + +PageTitle({ title: 'Alert', subtitle: 'Molecule' }) + .tk-page__links + +PageSummary() + +PageLinks({github, storybook, badge}) + +PageContentComponent() + block guidelines + +PageMarkdown() + include:markdown-it ./markdown/guidelines.md + block code + +Demo({ title:'Alert Info', storybook, activePath, tmpl: 'alertSimpleInfo', sassPath }) + +Demo({ title:'Alert Success', storybook, activePath, tmpl: 'alertSimpleDanger', sassPath }) + +Demo({ title:'Alert Danger', storybook, activePath, tmpl: 'alertSimpleSuccess', sassPath }) + +Demo({ title:'Alert Info Complex', storybook: 'alert-alert--with-child-and-custom-icon', activePath, tmpl: 'alertComplex', sassPath }) + +Demo({ title:'Alert Success', storybook: 'alert-alert--with-child-and-custom-icon', activePath, tmpl: 'alertComplexDanger', sassPath }) + block style + +Colors({ colors }) + +PageMarkdown() + include:markdown-it ./markdown/style.md diff --git a/storybook/design-system/src/pages/molecules/alert/index.scss b/storybook/design-system/src/pages/molecules/alert/index.scss new file mode 100644 index 000000000..968b6fa9c --- /dev/null +++ b/storybook/design-system/src/pages/molecules/alert/index.scss @@ -0,0 +1,9 @@ +/* Correction Toolkit */ + +@include media-breakpoint-up(md) { + .af-title-bar { + &__mobile-menu { + display: none; + } + } +} diff --git a/storybook/design-system/src/pages/molecules/alert/markdown/guidelines.md b/storybook/design-system/src/pages/molecules/alert/markdown/guidelines.md new file mode 100644 index 000000000..243a5262b --- /dev/null +++ b/storybook/design-system/src/pages/molecules/alert/markdown/guidelines.md @@ -0,0 +1,36 @@ +## Tone of voice + +Quapropter a natura mihi **bold** potius quam ab indigentia orta amicitia, applicatione magis animi cum quodam sensu amandi quam cogitatione quantum illa res utilitatis esset habitura. Quod quidem quale sit, [link to Google!](http://google.com) quibusdam animadverti potest, quae ex se _italic_ ita amant ad quoddam tempus et ab eis ita amantur ut facile earum sensus appareat. + +- Quapropter a natura mihi videtur potius quam ab +- sit, etiam in bestiis quibusdam animadverti potest, +- quae ex se natos ita amant ad quoddam tempus . + +**Component** Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Usage + +| Component type | Purpose | +| ---------------- | -------------------- | +| Primary | Use for ... when ... | +| Secondary | Use for ... when ... | +| With icon | Use for ... when ... | +| Disabled version | Use for ... when ... | +| Light version | Use for ... when ... | + +## Label + +Component labels ... Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Icon usage + +- Use glyphs (16px) within buttons. +- Glyphs are distinguished by their solid shape and knocked-out details. +- Glyphs should always appear to the right of the text. +- Glyphs used in buttons must be directly related to the action that the user is taking. +- Glyphs must be the same color value as the text within a button. +- Ghost buttons require a glyph icon (cannot be stand alone text because of poor affordance). + +## Danger version usage + +Danger ... Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. diff --git a/storybook/design-system/src/pages/molecules/alert/markdown/style.md b/storybook/design-system/src/pages/molecules/alert/markdown/style.md new file mode 100644 index 000000000..4d234bd75 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/alert/markdown/style.md @@ -0,0 +1,19 @@ +## Imports SASS + +``` +@import '@axa-fr/react-toolkit-core/src/common/scss/core.scss'; +@import '@axa-fr/react-toolkit-button/dist/button.scss'; +@import '@axa-fr/react-toolkit-layout-header/dist/Title/title-bar.scss'; +``` + +## Structure + +A Component Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Typography + +Component text should be set in sentence case, with only the first word in a phrase and any proper nouns capitalized. + +| Class | Font-size (px/rem) | Font-weight | Font-family | +| ------------------- | ------------------ | ----------- | ----------------------- | +| **.classComponent** | 16 / 1 | 400 | Source Sans Pro Regular | diff --git a/storybook/design-system/src/pages/molecules/alert/templates/alertComplex.pug b/storybook/design-system/src/pages/molecules/alert/templates/alertComplex.pug new file mode 100644 index 000000000..0f5d50db5 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/alert/templates/alertComplex.pug @@ -0,0 +1,16 @@ +.af-alert.af-alert--success + button.af-alert__icon-close + i.glyphicon.glyphicon-close + h3.af-alert__title + .af-alert__title-icon + i.glyphicon.glyphicon-ok + .af-alert__title-text + | Les caves et les garages situés dans le même corps de bâtiment que le logement assuré sont garantis d'office + .af-alert__content + .af-alert__content__left + .af-alert__content__right + ul + li L'adresse du risque ou le capital total déclaré ont été modifiés. + li Vous devez relancer la vérification des équipements de protection contre le vol. + li Lorem ipsum + li Lorem ipsum diff --git a/storybook/design-system/src/pages/molecules/alert/templates/alertComplexDanger.pug b/storybook/design-system/src/pages/molecules/alert/templates/alertComplexDanger.pug new file mode 100644 index 000000000..d60beb121 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/alert/templates/alertComplexDanger.pug @@ -0,0 +1,16 @@ +.af-alert.af-alert--error + button.af-alert__icon-close + i.glyphicon.glyphicon-close + h3.af-alert__title + .af-alert__title-icon + i.glyphicon.glyphicon-exclamation-sign + .af-alert__title-text + | Les caves et les garages situés dans le même corps de bâtiment que le logement assuré sont garantis d'office + .af-alert__content + .af-alert__content__left + .af-alert__content__right + ul + li L'adresse du risque ou le capital total déclaré ont été modifiés. + li Vous devez relancer la vérification des équipements de protection contre le vol. + li Lorem ipsum + li Lorem ipsum diff --git a/storybook/design-system/src/pages/molecules/alert/templates/alertSimpleDanger.pug b/storybook/design-system/src/pages/molecules/alert/templates/alertSimpleDanger.pug new file mode 100644 index 000000000..de90f18a2 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/alert/templates/alertSimpleDanger.pug @@ -0,0 +1,8 @@ +.af-alert.af-alert--danger + button.af-alert__icon-close + i.glyphicon.glyphicon-close + h3.af-alert__title + .af-alert__title-icon + i.glyphicon.glyphicon-alert + .af-alert__title-text + | Les caves et les garages situés dans le même corps de bâtiment que le logement assuré sont garantis d'office diff --git a/storybook/design-system/src/pages/molecules/alert/templates/alertSimpleInfo.pug b/storybook/design-system/src/pages/molecules/alert/templates/alertSimpleInfo.pug new file mode 100644 index 000000000..b80aeda47 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/alert/templates/alertSimpleInfo.pug @@ -0,0 +1,8 @@ +.af-alert.af-alert--info + button.af-alert__icon-close + i.glyphicon.glyphicon-close + h3.af-alert__title + .af-alert__title-icon + i.glyphicon.glyphicon-info-sign + .af-alert__title-text + | Les caves et les garages situés dans le même corps de bâtiment que le logement assuré sont garantis d'office diff --git a/storybook/design-system/src/pages/molecules/alert/templates/alertSimpleSuccess.pug b/storybook/design-system/src/pages/molecules/alert/templates/alertSimpleSuccess.pug new file mode 100644 index 000000000..98a04b258 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/alert/templates/alertSimpleSuccess.pug @@ -0,0 +1,8 @@ +.af-alert.af-alert--success + button.af-alert__icon-close + i.glyphicon.glyphicon-close + h3.af-alert__title + .af-alert__title-icon + i.glyphicon.glyphicon-ok + .af-alert__title-text + | Les caves et les garages situés dans le même corps de bâtiment que le logement assuré sont garantis d'office diff --git a/storybook/design-system/src/pages/molecules/footer/data.json b/storybook/design-system/src/pages/molecules/footer/data.json new file mode 100644 index 000000000..ff620f6b1 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/footer/data.json @@ -0,0 +1,35 @@ +{ + "metatitle": "Footer Component UI - Slash Design System", + "metadescription": "UI Component Footer for design system Axa. Toolkit Axa is the design system for Axa web and product. It is a series of individual styles, components, and guidelines used for creating unified UI.", + "metakeywords": "Footer design system, ui Footer, design system axa, design system ui, design system react, design", + "github": "Layout/footer", + "storybook": "layout-footer--default", + "badge": "%40axa-fr%2Freact-toolkit-layout-footer", + "colors": [ + { + "name": "BLEU AXA", + "sass": "$color-axa", + "hex": "#00008f" + }, + { + "name": "BLEU Action", + "sass": "$color-azur", + "hex": "#3032c1" + }, + { + "name": "BLEU Action focus", + "sass": "$color-azur-focused", + "hex": "#aaabf9" + }, + { + "name": "Mercury", + "sass": "$color-mercury", + "hex": "#e5e5e5" + }, + { + "name": "Silver", + "sass": " $color-silver", + "hex": "#cccccc" + } + ] +} diff --git a/storybook/design-system/src/pages/molecules/footer/index.pug b/storybook/design-system/src/pages/molecules/footer/index.pug new file mode 100644 index 000000000..78065433b --- /dev/null +++ b/storybook/design-system/src/pages/molecules/footer/index.pug @@ -0,0 +1,32 @@ +extends ../../../commons/layout + +block meta + -var activePath = '/molecules/footer'; + -const { metatitle, metadescription, metakeywords, github, storybook, badge, colors } = require(`../src/pages${activePath}/data.json`) + -var sassPath = 'react-toolkit-layout-footer/dist/footer.scss' + -var metaTitle = metatitle + -var metaDescription = metadescription + -var metaKeywords = metakeywords + -var basedir='../../' + +block vars + - var id = "component" + +block menu + +Menu({ activePath }) + +block page + +PageTitle({ title: 'Footer', subtitle: 'Molecule' }) + .tk-page__links + +PageSummary() + +PageLinks({github, storybook, badge}) + +PageContentComponent() + block guidelines + +PageMarkdown() + include:markdown-it ./markdown/guidelines.md + block code + +Demo({ title:'Classic Footer', storybook, activePath, tmpl: 'classic', sassPath }) + block style + +Colors({ colors }) + +PageMarkdown() + include:markdown-it ./markdown/style.md diff --git a/storybook/design-system/src/pages/molecules/footer/index.scss b/storybook/design-system/src/pages/molecules/footer/index.scss new file mode 100644 index 000000000..30003e2a7 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/footer/index.scss @@ -0,0 +1,3 @@ +.af-footer { + background: $white; +} diff --git a/storybook/design-system/src/pages/molecules/footer/markdown/guidelines.md b/storybook/design-system/src/pages/molecules/footer/markdown/guidelines.md new file mode 100644 index 000000000..243a5262b --- /dev/null +++ b/storybook/design-system/src/pages/molecules/footer/markdown/guidelines.md @@ -0,0 +1,36 @@ +## Tone of voice + +Quapropter a natura mihi **bold** potius quam ab indigentia orta amicitia, applicatione magis animi cum quodam sensu amandi quam cogitatione quantum illa res utilitatis esset habitura. Quod quidem quale sit, [link to Google!](http://google.com) quibusdam animadverti potest, quae ex se _italic_ ita amant ad quoddam tempus et ab eis ita amantur ut facile earum sensus appareat. + +- Quapropter a natura mihi videtur potius quam ab +- sit, etiam in bestiis quibusdam animadverti potest, +- quae ex se natos ita amant ad quoddam tempus . + +**Component** Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Usage + +| Component type | Purpose | +| ---------------- | -------------------- | +| Primary | Use for ... when ... | +| Secondary | Use for ... when ... | +| With icon | Use for ... when ... | +| Disabled version | Use for ... when ... | +| Light version | Use for ... when ... | + +## Label + +Component labels ... Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Icon usage + +- Use glyphs (16px) within buttons. +- Glyphs are distinguished by their solid shape and knocked-out details. +- Glyphs should always appear to the right of the text. +- Glyphs used in buttons must be directly related to the action that the user is taking. +- Glyphs must be the same color value as the text within a button. +- Ghost buttons require a glyph icon (cannot be stand alone text because of poor affordance). + +## Danger version usage + +Danger ... Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. diff --git a/storybook/design-system/src/pages/molecules/footer/markdown/style.md b/storybook/design-system/src/pages/molecules/footer/markdown/style.md new file mode 100644 index 000000000..9a8f9fb05 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/footer/markdown/style.md @@ -0,0 +1,18 @@ +## Imports SASS + +``` +@import '@axa-fr/react-toolkit-core/src/common/scss/core.scss'; +@import '@axa-fr/react-toolkit-footer/dist/footer.scss'; +``` + +## Structure + +A Component Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Typography + +Component text should be set in sentence case, with only the first word in a phrase and any proper nouns capitalized. + +| Class | Font-size (px/rem) | Font-weight | Font-family | +| -------------- | ------------------ | ----------- | ----------------------- | +| **.af-footer** | 16 / 1 | 400 | Source Sans Pro Regular | diff --git a/storybook/design-system/src/pages/molecules/footer/templates/classic.pug b/storybook/design-system/src/pages/molecules/footer/templates/classic.pug new file mode 100644 index 000000000..c0333ab59 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/footer/templates/classic.pug @@ -0,0 +1,6 @@ +footer.af-footer + .af-container + a.af-logo(href="https://www.axa.fr/" title="Site Axa France" target="blank" ) + img.af-logo__brand(src="../../assets/images/slash-logo.svg" alt="Logo Slash Design System") + .af-footer-content + | @ 2020 AXA Tous droits réservés diff --git a/storybook/design-system/src/pages/molecules/form-checkbox/data.json b/storybook/design-system/src/pages/molecules/form-checkbox/data.json new file mode 100644 index 000000000..4cea8fc8d --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-checkbox/data.json @@ -0,0 +1,35 @@ +{ + "metatitle": "Form Input Checkbox Component UI - Slash Design System", + "metadescription": "UI Component Form Input Checkbox for design system Axa. Toolkit Axa is the design system for Axa web and product. It is a series of individual styles, components, and guidelines used for creating unified UI.", + "metakeywords": "Form Input Checkbox design system, ui Form Input Checkbox, design system axa, design system ui, design system react, design", + "github": "Form/Input/checkbox", + "storybook": "form-input-checkbox--checkboxinput", + "badge": "%40axa-fr%2Freact-toolkit-form-input-checkbox", + "colors": [ + { + "name": "BLEU AXA", + "sass": "$color-axa", + "hex": "#00008f" + }, + { + "name": "BLEU Action", + "sass": "$color-azur", + "hex": "#3032c1" + }, + { + "name": "BLEU Action focus", + "sass": "$color-azur-focused", + "hex": "#aaabf9" + }, + { + "name": "Mercury", + "sass": "$color-mercury", + "hex": "#e5e5e5" + }, + { + "name": "Silver", + "sass": " $color-silver", + "hex": "#cccccc" + } + ] +} \ No newline at end of file diff --git a/storybook/design-system/src/pages/molecules/form-checkbox/index.pug b/storybook/design-system/src/pages/molecules/form-checkbox/index.pug new file mode 100644 index 000000000..f45f57359 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-checkbox/index.pug @@ -0,0 +1,40 @@ +extends ../../../commons/layout + +block meta + -var activePath = '/molecules/form-checkbox'; + -const { metatitle, metadescription, metakeywords, github, storybook, badge, colors } = require(`../src/pages${activePath}/data.json`) + -var sassPath = 'react-toolkit-form-input-checkbox/dist/checkbox.scss' + -var metaTitle = metatitle + -var metaDescription = metadescription + -var metaKeywords = metakeywords + -var basedir='../../' + +block vars + - var id = "component" + +block menu + +Menu({ activePath }) + +block page + +PageTitle({ title: 'Form Checkbox', subtitle: 'Molecule' }) + .tk-page__links + +PageSummary() + +PageLinks({github, storybook, badge}) + +PageContentComponent() + block guidelines + +PageMarkdown() + include:markdown-it ./markdown/guidelines.md + block code + +Demo({ title:'Classic Input Checkbox', storybook, activePath, tmpl: 'form-checkbox', modifier: 'forminputtext', sassPath }) + +Demo({ title:'Input Checkbox Success', storybook, activePath, tmpl: 'form-checkbox-success', modifier: 'forminputtext', sassPath }) + +Demo({ title:'Input Checkbox Error', storybook, activePath, tmpl: 'form-checkbox-error', modifier: 'forminputtext', sassPath }) + +Demo({ title:'Classic Input Checkbox Inline', storybook, activePath, tmpl: 'form-checkbox-inline', modifier: 'forminputtext', sassPath }) + +Demo({ title:'Input Checkbox Success Inline', storybook, activePath, tmpl: 'form-checkbox-inline-success', modifier: 'forminputtext', sassPath }) + +Demo({ title:'Input Checkbox Error Inline', storybook, activePath, tmpl: 'form-checkbox-inline-error', modifier: 'forminputtext', sassPath }) + +Demo({ title:'Classic Input Checkbox Custom', storybook, activePath, tmpl: 'form-checkbox-custom', modifier: 'forminputtext', sassPath }) + +Demo({ title:'Input Checkbox Success Custom', storybook, activePath, tmpl: 'form-checkbox-custom-success', modifier: 'forminputtext', sassPath }) + +Demo({ title:'Input Checkbox Error Custom', storybook, activePath, tmpl: 'form-checkbox-custom-error', modifier: 'forminputtext', sassPath }) + block style + +Colors({ colors }) + +PageMarkdown() + include:markdown-it ./markdown/style.md diff --git a/storybook/design-system/src/pages/molecules/form-checkbox/markdown/guidelines.md b/storybook/design-system/src/pages/molecules/form-checkbox/markdown/guidelines.md new file mode 100644 index 000000000..243a5262b --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-checkbox/markdown/guidelines.md @@ -0,0 +1,36 @@ +## Tone of voice + +Quapropter a natura mihi **bold** potius quam ab indigentia orta amicitia, applicatione magis animi cum quodam sensu amandi quam cogitatione quantum illa res utilitatis esset habitura. Quod quidem quale sit, [link to Google!](http://google.com) quibusdam animadverti potest, quae ex se _italic_ ita amant ad quoddam tempus et ab eis ita amantur ut facile earum sensus appareat. + +- Quapropter a natura mihi videtur potius quam ab +- sit, etiam in bestiis quibusdam animadverti potest, +- quae ex se natos ita amant ad quoddam tempus . + +**Component** Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Usage + +| Component type | Purpose | +| ---------------- | -------------------- | +| Primary | Use for ... when ... | +| Secondary | Use for ... when ... | +| With icon | Use for ... when ... | +| Disabled version | Use for ... when ... | +| Light version | Use for ... when ... | + +## Label + +Component labels ... Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Icon usage + +- Use glyphs (16px) within buttons. +- Glyphs are distinguished by their solid shape and knocked-out details. +- Glyphs should always appear to the right of the text. +- Glyphs used in buttons must be directly related to the action that the user is taking. +- Glyphs must be the same color value as the text within a button. +- Ghost buttons require a glyph icon (cannot be stand alone text because of poor affordance). + +## Danger version usage + +Danger ... Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. diff --git a/storybook/design-system/src/pages/molecules/form-checkbox/markdown/style.md b/storybook/design-system/src/pages/molecules/form-checkbox/markdown/style.md new file mode 100644 index 000000000..804647c2c --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-checkbox/markdown/style.md @@ -0,0 +1,18 @@ +## Imports SASS + +``` +@import '@axa-fr/react-toolkit-core/src/common/scss/core.scss'; +@import '@axa-fr/react-toolkit-form-input-checkbox/dist/checkbox.scss'; +``` + +## Structure + +A Component Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Typography + +Component text should be set in sentence case, with only the first word in a phrase and any proper nouns capitalized. + +| Class | Font-size (px/rem) | Font-weight | Font-family | +| --------------------- | ------------------ | ----------- | ----------------------- | +| **.af-form-checkbox** | 16 / 1 | 400 | Source Sans Pro Regular | diff --git a/storybook/design-system/src/pages/molecules/form-checkbox/templates/form-checkbox-custom-error.pug b/storybook/design-system/src/pages/molecules/form-checkbox/templates/form-checkbox-custom-error.pug new file mode 100644 index 000000000..228d062e9 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-checkbox/templates/form-checkbox-custom-error.pug @@ -0,0 +1,14 @@ +extends ../../../../components/form/layouts/layout-form-textarea +include ../../../../components/form/mixins/mixin-form-field-checkbox +include ../../../../components/form/mixins/mixin-form-message + +block label + label.af-form__group-label Classic checkbox + +block input + +formFieldCheckbox({className:'af-form__checkbox-custom', id:"21", name:"classic", label: "Check 1", modifier:'error'}) + +formFieldCheckbox({className:'af-form__checkbox-custom', id:"22", name:"classic", label: "Check 2", modifier:'error'}) + +formFieldCheckbox({className:'af-form__checkbox-custom', id:"23", name:"classic", label: "Check 3", modifier:'error'}) + +formFieldCheckbox({className:'af-form__checkbox-custom', id:"24", name:"classic", label: "Check 4", modifier:'error'}) + +formMessage({modifierMessage: 'error', textMessage:"Message d'erreur", iconMessage: 'exclamation-sign'}) + diff --git a/storybook/design-system/src/pages/molecules/form-checkbox/templates/form-checkbox-custom-success.pug b/storybook/design-system/src/pages/molecules/form-checkbox/templates/form-checkbox-custom-success.pug new file mode 100644 index 000000000..f5ea96955 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-checkbox/templates/form-checkbox-custom-success.pug @@ -0,0 +1,11 @@ +extends ../../../../components/form/layouts/layout-form-textarea +include ../../../../components/form/mixins/mixin-form-field-checkbox + +block label + label.af-form__group-label Classic checkbox + +block input + +formFieldCheckbox({className:'af-form__checkbox-custom', id:"17", name:"classic", label: "Check 1", modifier:'success'}) + +formFieldCheckbox({className:'af-form__checkbox-custom', id:"18", name:"classic", label: "Check 2", modifier:'success'}) + +formFieldCheckbox({className:'af-form__checkbox-custom', id:"19", name:"classic", label: "Check 3", modifier:'success'}) + +formFieldCheckbox({className:'af-form__checkbox-custom', id:"20", name:"classic", label: "Disabled", disabled: true, modifier:'disabled'}) diff --git a/storybook/design-system/src/pages/molecules/form-checkbox/templates/form-checkbox-custom.pug b/storybook/design-system/src/pages/molecules/form-checkbox/templates/form-checkbox-custom.pug new file mode 100644 index 000000000..a87dff1a3 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-checkbox/templates/form-checkbox-custom.pug @@ -0,0 +1,11 @@ +extends ../../../../components/form/layouts/layout-form-textarea +include ../../../../components/form/mixins/mixin-form-field-checkbox + +block label + label.af-form__group-label Classic checkbox + +block input + +formFieldCheckbox({className:'af-form__checkbox-custom', id:"13", name:"classic", label: "Check 1"}) + +formFieldCheckbox({className:'af-form__checkbox-custom', id:"14", name:"classic", label: "Check 2"}) + +formFieldCheckbox({className:'af-form__checkbox-custom', id:"15", name:"classic", label: "Check 3"}) + +formFieldCheckbox({className:'af-form__checkbox-custom', id:"16", name:"classic", label: "Disabled", disabled: true, modifier:'disabled'}) diff --git a/storybook/design-system/src/pages/molecules/form-checkbox/templates/form-checkbox-error.pug b/storybook/design-system/src/pages/molecules/form-checkbox/templates/form-checkbox-error.pug new file mode 100644 index 000000000..733edf5c6 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-checkbox/templates/form-checkbox-error.pug @@ -0,0 +1,13 @@ +extends ../../../../components/form/layouts/layout-form-textarea +include ../../../../components/form/mixins/mixin-form-field-checkbox +include ../../../../components/form/mixins/mixin-form-message + +block label + label.af-form__group-label Classic checkbox + +block input + +formFieldCheckbox({id:"9", name:"classic", label: "lorem ipsum dolor sit amet", modifier:'error'}) + +formFieldCheckbox({id:"10", name:"classic", label: "Nam sem nisi, auctor sit amet massa sit amet", modifier:'error'}) + +formFieldCheckbox({id:"11", name:"classic", label: "Ut sollicitudin eleifend tincidunt", modifier:'error'}) + +formFieldCheckbox({id:"12", name:"classic", label: "eleifend", modifier:'error'}) + +formMessage({modifierMessage: 'error', textMessage:"Message d'erreur", iconMessage: 'exclamation-sign'}) diff --git a/storybook/design-system/src/pages/molecules/form-checkbox/templates/form-checkbox-inline-error.pug b/storybook/design-system/src/pages/molecules/form-checkbox/templates/form-checkbox-inline-error.pug new file mode 100644 index 000000000..838c02be2 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-checkbox/templates/form-checkbox-inline-error.pug @@ -0,0 +1,13 @@ +extends ../../../../components/form/layouts/layout-form-textarea +include ../../../../components/form/mixins/mixin-form-field-checkbox +include ../../../../components/form/mixins/mixin-form-message + +block label + label.af-form__group-label Inline checkbox + +block input + +formFieldCheckbox({className:'af-form__checkbox-inline', id:"33", name:"classic", label: "Check 1", modifier:'error'}) + +formFieldCheckbox({className:'af-form__checkbox-inline', id:"34", name:"classic", label: "Check 2", modifier:'error'}) + +formFieldCheckbox({className:'af-form__checkbox-inline', id:"35", name:"classic", label: "Check 3", modifier:'error'}) + +formFieldCheckbox({className:'af-form__checkbox-inline', id:"36", name:"classic", label: "Check 4", modifier:'error'}) + +formMessage({modifierMessage: 'error', textMessage:"Message d'erreur", iconMessage: 'exclamation-sign'}) diff --git a/storybook/design-system/src/pages/molecules/form-checkbox/templates/form-checkbox-inline-success.pug b/storybook/design-system/src/pages/molecules/form-checkbox/templates/form-checkbox-inline-success.pug new file mode 100644 index 000000000..a1decf409 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-checkbox/templates/form-checkbox-inline-success.pug @@ -0,0 +1,11 @@ +extends ../../../../components/form/layouts/layout-form-textarea +include ../../../../components/form/mixins/mixin-form-field-checkbox + +block label + label.af-form__group-label Inline checkbox + +block input + +formFieldCheckbox({className:'af-form__checkbox-inline', id:"29", name:"classic", label: "Check 1", modifier:'success'}) + +formFieldCheckbox({className:'af-form__checkbox-inline', id:"30", name:"classic", label: "Check 2", modifier:'success'}) + +formFieldCheckbox({className:'af-form__checkbox-inline', id:"31", name:"classic", label: "Check 3", modifier:'success'}) + +formFieldCheckbox({className:'af-form__checkbox-inline', id:"32", name:"classic", label: "Disabled", disabled: true, modifier:'disabled'}) diff --git a/storybook/design-system/src/pages/molecules/form-checkbox/templates/form-checkbox-inline.pug b/storybook/design-system/src/pages/molecules/form-checkbox/templates/form-checkbox-inline.pug new file mode 100644 index 000000000..63b5fa4be --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-checkbox/templates/form-checkbox-inline.pug @@ -0,0 +1,11 @@ +extends ../../../../components/form/layouts/layout-form-textarea +include ../../../../components/form/mixins/mixin-form-field-checkbox + +block label + label.af-form__group-label Inline checkbox + +block input + +formFieldCheckbox({className:'af-form__checkbox-inline', id:"25", name:"classic", label: "Check 1"}) + +formFieldCheckbox({className:'af-form__checkbox-inline', id:"26", name:"classic", label: "Check 2"}) + +formFieldCheckbox({className:'af-form__checkbox-inline', id:"27", name:"classic", label: "Check 3"}) + +formFieldCheckbox({className:'af-form__checkbox-inline', id:"28", name:"classic", label: "Disabled", disabled: true, modifier:'disabled'}) diff --git a/storybook/design-system/src/pages/molecules/form-checkbox/templates/form-checkbox-success.pug b/storybook/design-system/src/pages/molecules/form-checkbox/templates/form-checkbox-success.pug new file mode 100644 index 000000000..7d6d4c08e --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-checkbox/templates/form-checkbox-success.pug @@ -0,0 +1,11 @@ +extends ../../../../components/form/layouts/layout-form-textarea +include ../../../../components/form/mixins/mixin-form-field-checkbox + +block label + label.af-form__group-label Classic checkbox + +block input + +formFieldCheckbox({id:"5", name:"classic", label: "lorem ipsum dolor sit amet", modifier:'success'}) + +formFieldCheckbox({id:"6", name:"classic", label: "Nam sem nisi, auctor sit amet massa sit amet", modifier:'success'}) + +formFieldCheckbox({id:"7", name:"classic", label: "Ut sollicitudin eleifend tincidunt", modifier:'success'}) + +formFieldCheckbox({id:"8", name:"classic", label: "disabled", disabled: true, modifier:'disabled'}) diff --git a/storybook/design-system/src/pages/molecules/form-checkbox/templates/form-checkbox.pug b/storybook/design-system/src/pages/molecules/form-checkbox/templates/form-checkbox.pug new file mode 100644 index 000000000..6e0faffb5 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-checkbox/templates/form-checkbox.pug @@ -0,0 +1,11 @@ +extends ../../../../components/form/layouts/layout-form-textarea +include ../../../../components/form/mixins/mixin-form-field-checkbox + +block label + label.af-form__group-label Classic checkbox + +block input + +formFieldCheckbox({id:"1", name:"classic", label: "lorem ipsum dolor sit amet"}) + +formFieldCheckbox({id:"2", name:"classic", label: "Nam sem nisi, auctor sit amet massa sit amet"}) + +formFieldCheckbox({id:"3", name:"classic", label: "Ut sollicitudin eleifend tincidunt"}) + +formFieldCheckbox({id:"4", name:"classic", label: "disabled", disabled: true, modifier:'disabled'}) diff --git a/storybook/design-system/src/pages/molecules/form-datepicker/data.json b/storybook/design-system/src/pages/molecules/form-datepicker/data.json new file mode 100644 index 000000000..110f9edf6 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-datepicker/data.json @@ -0,0 +1,35 @@ +{ + "metatitle": "Form Input Datepicker Component UI - Slash Design System", + "metadescription": "UI Component Form Input Datepicker for design system Axa. Toolkit Axa is the design system for Axa web and product. It is a series of individual styles, components, and guidelines used for creating unified UI.", + "metakeywords": "Form Input Datepicker design system, ui Form Input Datepicker, design system axa, design system ui, design system react, design", + "github": "Form/Input/date", + "storybook": "form-input-date--dateinput", + "badge": "%40axa-fr%2Freact-toolkit-form-input-date", + "colors": [ + { + "name": "BLEU AXA", + "sass": "$color-axa", + "hex": "#00008f" + }, + { + "name": "BLEU Action", + "sass": "$color-azur", + "hex": "#3032c1" + }, + { + "name": "BLEU Action focus", + "sass": "$color-azur-focused", + "hex": "#aaabf9" + }, + { + "name": "Mercury", + "sass": "$color-mercury", + "hex": "#e5e5e5" + }, + { + "name": "Silver", + "sass": " $color-silver", + "hex": "#cccccc" + } + ] +} \ No newline at end of file diff --git a/storybook/design-system/src/pages/molecules/form-datepicker/index.pug b/storybook/design-system/src/pages/molecules/form-datepicker/index.pug new file mode 100644 index 000000000..aa4350d87 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-datepicker/index.pug @@ -0,0 +1,32 @@ +extends ../../../commons/layout + +block meta + -var activePath = '/molecules/form-datepicker'; + -const { metatitle, metadescription, metakeywords, github, storybook, badge, colors } = require(`../src/pages${activePath}/data.json`) + -var sassPath = 'react-toolkit-form-input-date/dist/datepicker.scss' + -var metaTitle = metatitle + -var metaDescription = metadescription + -var metaKeywords = metakeywords + -var basedir='../../' + +block vars + - var id = "component" + +block menu + +Menu({ activePath }) + +block page + +PageTitle({ title: 'Form Datepicker', subtitle: 'Molecule' }) + .tk-page__links + +PageSummary() + +PageLinks({github, storybook, badge}) + +PageContentComponent() + block guidelines + +PageMarkdown() + include:markdown-it ./markdown/guidelines.md + block code + +Demo({ title:'Classic Input Datepicker', storybook, activePath, tmpl: 'form-datepicker', modifier: 'forminputtext', sassPath }) + block style + +Colors({ colors }) + +PageMarkdown() + include:markdown-it ./markdown/style.md diff --git a/storybook/design-system/src/pages/molecules/form-datepicker/markdown/guidelines.md b/storybook/design-system/src/pages/molecules/form-datepicker/markdown/guidelines.md new file mode 100644 index 000000000..243a5262b --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-datepicker/markdown/guidelines.md @@ -0,0 +1,36 @@ +## Tone of voice + +Quapropter a natura mihi **bold** potius quam ab indigentia orta amicitia, applicatione magis animi cum quodam sensu amandi quam cogitatione quantum illa res utilitatis esset habitura. Quod quidem quale sit, [link to Google!](http://google.com) quibusdam animadverti potest, quae ex se _italic_ ita amant ad quoddam tempus et ab eis ita amantur ut facile earum sensus appareat. + +- Quapropter a natura mihi videtur potius quam ab +- sit, etiam in bestiis quibusdam animadverti potest, +- quae ex se natos ita amant ad quoddam tempus . + +**Component** Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Usage + +| Component type | Purpose | +| ---------------- | -------------------- | +| Primary | Use for ... when ... | +| Secondary | Use for ... when ... | +| With icon | Use for ... when ... | +| Disabled version | Use for ... when ... | +| Light version | Use for ... when ... | + +## Label + +Component labels ... Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Icon usage + +- Use glyphs (16px) within buttons. +- Glyphs are distinguished by their solid shape and knocked-out details. +- Glyphs should always appear to the right of the text. +- Glyphs used in buttons must be directly related to the action that the user is taking. +- Glyphs must be the same color value as the text within a button. +- Ghost buttons require a glyph icon (cannot be stand alone text because of poor affordance). + +## Danger version usage + +Danger ... Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. diff --git a/storybook/design-system/src/pages/molecules/form-datepicker/markdown/style.md b/storybook/design-system/src/pages/molecules/form-datepicker/markdown/style.md new file mode 100644 index 000000000..43c26a3aa --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-datepicker/markdown/style.md @@ -0,0 +1,21 @@ +## Imports SASS + +``` +@import '@axa-fr/react-toolkit-core/src/common/scss/core.scss'; +@import '~@axa-fr/react-toolkit-all/dist/style/bootstrap/grid.css'; +@import '@axa-fr/react-toolkit-form-core/dist/form.scss'; +@import '@axa-fr/react-toolkit-form-input-text/dist/inputtext.scss'; +@import '@axa-fr/react-toolkit-form-input-pass/dist/pass.scss'; +``` + +## Structure + +A Component Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Typography + +Component text should be set in sentence case, with only the first word in a phrase and any proper nouns capitalized. + +| Class | Font-size (px/rem) | Font-weight | Font-family | +| ----------------- | ------------------ | ----------- | ----------------------- | +| **.af-form-pass** | 16 / 1 | 400 | Source Sans Pro Regular | diff --git a/storybook/design-system/src/pages/molecules/form-datepicker/templates/form-datepicker.pug b/storybook/design-system/src/pages/molecules/form-datepicker/templates/form-datepicker.pug new file mode 100644 index 000000000..a3c34c781 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-datepicker/templates/form-datepicker.pug @@ -0,0 +1,13 @@ +extends ../../../../components/form/layouts/layout-form-field +include ../../../../components/form/mixins/mixin-form-field-select + +block label + label.af-form__group-label(for="datepicker") Input DatePicker * + +block input + .af-datepicker__container + .react-datepicker-wrapper + .react-datepicker__input-container + input#uniqueid.af-datepicker.react-datepicker-ignore-onclickoutside(type='text', name='placeName', value='11/26/2017') + include ./popper + span.glyphicon.glyphicon-calendar \ No newline at end of file diff --git a/storybook/design-system/src/pages/molecules/form-datepicker/templates/popper.pug b/storybook/design-system/src/pages/molecules/form-datepicker/templates/popper.pug new file mode 100644 index 000000000..e24d5de58 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-datepicker/templates/popper.pug @@ -0,0 +1,75 @@ +.react-datepicker-popper(style='position: absolute; will-change: transform; top: 0px; left: 0px; transform: translate3d(155px, 0px, 0px);', data-placement='right-start') + .react-datepicker + .react-datepicker__triangle + button.react-datepicker__navigation.react-datepicker__navigation--previous(type='button') Previous Month + button.react-datepicker__navigation.react-datepicker__navigation--next.react-datepicker__navigation--next--with-today-button(type='button') Next month + .react-datepicker__month-container + .react-datepicker__header + .react-datepicker__current-month.react-datepicker__current-month--hasYearDropdown.react-datepicker__current-month--hasMonthDropdown novembre 2017 + .react-datepicker__header__dropdown.react-datepicker__header__dropdown--scroll + .react-datepicker__month-dropdown-container.react-datepicker__month-dropdown-container--scroll + .react-datepicker__month-read-view(style='visibility: visible;') + span.react-datepicker__month-read-view--down-arrow + span.react-datepicker__month-read-view--selected-month novembre + .react-datepicker__year-dropdown-container.react-datepicker__year-dropdown-container--scroll + .react-datepicker__year-read-view(style='visibility: visible;') + span.react-datepicker__year-read-view--down-arrow + span.react-datepicker__year-read-view--selected-year 2017 + .react-datepicker__day-names + .react-datepicker__day-name lu + .react-datepicker__day-name ma + .react-datepicker__day-name me + .react-datepicker__day-name je + .react-datepicker__day-name ve + .react-datepicker__day-name sa + .react-datepicker__day-name di + .react-datepicker__month(role='listbox', aria-label='month-2017-11') + .react-datepicker__week + .react-datepicker__day.react-datepicker__day--mon.react-datepicker__day--outside-month(aria-label='day-30', role='option') 30 + .react-datepicker__day.react-datepicker__day--tue.react-datepicker__day--outside-month(aria-label='day-31', role='option') 31 + .react-datepicker__day.react-datepicker__day--wed(aria-label='day-1', role='option') 1 + .react-datepicker__day.react-datepicker__day--thu(aria-label='day-2', role='option') 2 + .react-datepicker__day.react-datepicker__day--fri(aria-label='day-3', role='option') 3 + .react-datepicker__day.react-datepicker__day--sat.react-datepicker__day--weekend(aria-label='day-4', role='option') 4 + .react-datepicker__day.react-datepicker__day--sun.react-datepicker__day--weekend(aria-label='day-5', role='option') 5 + .react-datepicker__week + .react-datepicker__day.react-datepicker__day--mon(aria-label='day-6', role='option') 6 + .react-datepicker__day.react-datepicker__day--tue(aria-label='day-7', role='option') 7 + .react-datepicker__day.react-datepicker__day--wed(aria-label='day-8', role='option') 8 + .react-datepicker__day.react-datepicker__day--thu(aria-label='day-9', role='option') 9 + .react-datepicker__day.react-datepicker__day--fri(aria-label='day-10', role='option') 10 + .react-datepicker__day.react-datepicker__day--sat.react-datepicker__day--weekend(aria-label='day-11', role='option') 11 + .react-datepicker__day.react-datepicker__day--sun.react-datepicker__day--weekend(aria-label='day-12', role='option') 12 + .react-datepicker__week + .react-datepicker__day.react-datepicker__day--mon(aria-label='day-13', role='option') 13 + .react-datepicker__day.react-datepicker__day--tue(aria-label='day-14', role='option') 14 + .react-datepicker__day.react-datepicker__day--wed(aria-label='day-15', role='option') 15 + .react-datepicker__day.react-datepicker__day--thu(aria-label='day-16', role='option') 16 + .react-datepicker__day.react-datepicker__day--fri(aria-label='day-17', role='option') 17 + .react-datepicker__day.react-datepicker__day--sat.react-datepicker__day--weekend(aria-label='day-18', role='option') 18 + .react-datepicker__day.react-datepicker__day--sun.react-datepicker__day--weekend(aria-label='day-19', role='option') 19 + .react-datepicker__week + .react-datepicker__day.react-datepicker__day--mon(aria-label='day-20', role='option') 20 + .react-datepicker__day.react-datepicker__day--tue(aria-label='day-21', role='option') 21 + .react-datepicker__day.react-datepicker__day--wed(aria-label='day-22', role='option') 22 + .react-datepicker__day.react-datepicker__day--thu(aria-label='day-23', role='option') 23 + .react-datepicker__day.react-datepicker__day--fri(aria-label='day-24', role='option') 24 + .react-datepicker__day.react-datepicker__day--sat.react-datepicker__day--weekend(aria-label='day-25', role='option') 25 + .react-datepicker__day.react-datepicker__day--sun.react-datepicker__day--selected.react-datepicker__day--weekend(aria-label='day-26', role='option') 26 + .react-datepicker__week + .react-datepicker__day.react-datepicker__day--mon(aria-label='day-27', role='option') 27 + .react-datepicker__day.react-datepicker__day--tue(aria-label='day-28', role='option') 28 + .react-datepicker__day.react-datepicker__day--wed(aria-label='day-29', role='option') 29 + .react-datepicker__day.react-datepicker__day--thu(aria-label='day-30', role='option') 30 + .react-datepicker__day.react-datepicker__day--fri.react-datepicker__day--outside-month(aria-label='day-1', role='option') 1 + .react-datepicker__day.react-datepicker__day--sat.react-datepicker__day--weekend.react-datepicker__day--outside-month(aria-label='day-2', role='option') 2 + .react-datepicker__day.react-datepicker__day--sun.react-datepicker__day--weekend.react-datepicker__day--outside-month(aria-label='day-3', role='option') 3 + .react-datepicker__week + .react-datepicker__day.react-datepicker__day--mon.react-datepicker__day--outside-month(aria-label='day-4', role='option') 4 + .react-datepicker__day.react-datepicker__day--tue.react-datepicker__day--outside-month(aria-label='day-5', role='option') 5 + .react-datepicker__day.react-datepicker__day--wed.react-datepicker__day--outside-month(aria-label='day-6', role='option') 6 + .react-datepicker__day.react-datepicker__day--thu.react-datepicker__day--outside-month(aria-label='day-7', role='option') 7 + .react-datepicker__day.react-datepicker__day--fri.react-datepicker__day--outside-month(aria-label='day-8', role='option') 8 + .react-datepicker__day.react-datepicker__day--sat.react-datepicker__day--weekend.react-datepicker__day--outside-month(aria-label='day-9', role='option') 9 + .react-datepicker__day.react-datepicker__day--sun.react-datepicker__day--weekend.react-datepicker__day--outside-month(aria-label='day-10', role='option') 10 + .react-datepicker__today-button Aujourd'hui \ No newline at end of file diff --git a/storybook/design-system/src/pages/molecules/form-file/data.json b/storybook/design-system/src/pages/molecules/form-file/data.json new file mode 100644 index 000000000..c0c1e5304 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-file/data.json @@ -0,0 +1,35 @@ +{ + "metatitle": "Form Input File Component UI - Slash Design System", + "metadescription": "UI Component Form Input File for design system Axa. Toolkit Axa is the design system for Axa web and product. It is a series of individual styles, components, and guidelines used for creating unified UI.", + "metakeywords": "Form Input File design system, ui Form Input File, design system axa, design system ui, design system react, design", + "github": "Form/Input/file", + "storybook": "form-input-file--fileinput", + "badge": "%40axa-fr%2Freact-toolkit-form-input-file", + "colors": [ + { + "name": "BLEU AXA", + "sass": "$color-axa", + "hex": "#00008f" + }, + { + "name": "BLEU Action", + "sass": "$color-azur", + "hex": "#3032c1" + }, + { + "name": "BLEU Action focus", + "sass": "$color-azur-focused", + "hex": "#aaabf9" + }, + { + "name": "Mercury", + "sass": "$color-mercury", + "hex": "#e5e5e5" + }, + { + "name": "Silver", + "sass": " $color-silver", + "hex": "#cccccc" + } + ] +} \ No newline at end of file diff --git a/storybook/design-system/src/pages/molecules/form-file/index.pug b/storybook/design-system/src/pages/molecules/form-file/index.pug new file mode 100644 index 000000000..e548bce96 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-file/index.pug @@ -0,0 +1,34 @@ +extends ../../../commons/layout + +block meta + -var activePath = '/molecules/form-file'; + -const { metatitle, metadescription, metakeywords, github, storybook, badge, colors } = require(`../src/pages${activePath}/data.json`) + -var sassPath = 'react-toolkit-form-input-file/dist/file.scss' + -var metaTitle = metatitle + -var metaDescription = metadescription + -var metaKeywords = metakeywords + -var basedir='../../' + +block vars + - var id = "component" + +block menu + +Menu({ activePath }) + +block page + +PageTitle({ title: 'Form File', subtitle: 'Molecule' }) + .tk-page__links + +PageSummary() + +PageLinks({github, storybook, badge}) + +PageContentComponent() + block guidelines + +PageMarkdown() + include:markdown-it ./markdown/guidelines.md + block code + +Demo({ title:'Classic Input File', storybook, activePath, tmpl: 'form-file', modifier: 'forminputtext', sassPath }) + +Demo({ title:'Classic Input File with list files', storybook: "form-input-file--file-with-values", activePath, tmpl: 'form-file-list', modifier: 'forminputtext', sassPath }) + +Demo({ title:'Classic Input File with errors', storybook: "form-input-file--file-with-errors", activePath, tmpl: 'form-file-list-error', modifier: 'forminputtext', sassPath }) + block style + +Colors({ colors }) + +PageMarkdown() + include:markdown-it ./markdown/style.md diff --git a/storybook/design-system/src/pages/molecules/form-file/markdown/guidelines.md b/storybook/design-system/src/pages/molecules/form-file/markdown/guidelines.md new file mode 100644 index 000000000..243a5262b --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-file/markdown/guidelines.md @@ -0,0 +1,36 @@ +## Tone of voice + +Quapropter a natura mihi **bold** potius quam ab indigentia orta amicitia, applicatione magis animi cum quodam sensu amandi quam cogitatione quantum illa res utilitatis esset habitura. Quod quidem quale sit, [link to Google!](http://google.com) quibusdam animadverti potest, quae ex se _italic_ ita amant ad quoddam tempus et ab eis ita amantur ut facile earum sensus appareat. + +- Quapropter a natura mihi videtur potius quam ab +- sit, etiam in bestiis quibusdam animadverti potest, +- quae ex se natos ita amant ad quoddam tempus . + +**Component** Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Usage + +| Component type | Purpose | +| ---------------- | -------------------- | +| Primary | Use for ... when ... | +| Secondary | Use for ... when ... | +| With icon | Use for ... when ... | +| Disabled version | Use for ... when ... | +| Light version | Use for ... when ... | + +## Label + +Component labels ... Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Icon usage + +- Use glyphs (16px) within buttons. +- Glyphs are distinguished by their solid shape and knocked-out details. +- Glyphs should always appear to the right of the text. +- Glyphs used in buttons must be directly related to the action that the user is taking. +- Glyphs must be the same color value as the text within a button. +- Ghost buttons require a glyph icon (cannot be stand alone text because of poor affordance). + +## Danger version usage + +Danger ... Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. diff --git a/storybook/design-system/src/pages/molecules/form-file/markdown/style.md b/storybook/design-system/src/pages/molecules/form-file/markdown/style.md new file mode 100644 index 000000000..e7436967e --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-file/markdown/style.md @@ -0,0 +1,22 @@ +## Imports SASS + +``` +@import '@axa-fr/react-toolkit-core/src/common/scss/core.scss'; +@import '~@axa-fr/react-toolkit-all/dist/style/bootstrap/grid.css'; +@import '@axa-fr/react-toolkit-button/dist/button.scss'; +@import '@axa-fr/react-toolkit-form-core/dist/form.scss'; +@import '@axa-fr/react-toolkit-form-input-text/dist/inputtext.scss'; +@import '@axa-fr/react-toolkit-form-input-file/dist/file.scss'; +``` + +## Structure + +A Component Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Typography + +Component text should be set in sentence case, with only the first word in a phrase and any proper nouns capitalized. + +| Class | Font-size (px/rem) | Font-weight | Font-family | +| ----------------- | ------------------ | ----------- | ----------------------- | +| **.af-form-file** | 16 / 1 | 400 | Source Sans Pro Regular | diff --git a/storybook/design-system/src/pages/molecules/form-file/templates/form-file-list-error.pug b/storybook/design-system/src/pages/molecules/form-file/templates/form-file-list-error.pug new file mode 100644 index 000000000..1faf5e57e --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-file/templates/form-file-list-error.pug @@ -0,0 +1,49 @@ +extends ../../../../components/form/layouts/layout-form-textarea +include ../../../../components/form/mixins/mixin-form-field-text + +block label + label.af-form__group-label(for="inputtext1") Input File * + +block input + .af-form__file-input + #uniqueid.drop-box.hidden-mobile(style='position: relative;' aria-disabled='false') + div Glissez/déposez vos fichiers + input(accept='image/jpeg, image/png, application/*' type='file' style='position: absolute; inset: 0px; opacity: 0.00001; pointer-events: none;' autocomplete='off' name='placeImage') + button.af-btn.af-btn--file.af-btn--hasiconLeft(type='button') + i.glyphicon.glyphicon-open + | Parcourir + small.af-form__help Enter the place name, ex : Webcenter + .custom-table-file.af-file-table + .af-form__file-errors + span Le chargement de certains fichiers a échoué : + ul.af-form__file-errors-list + li refused-extension-file.svg (100ko) + li too-big-file.jpg (100Mo) + li error-file.jpg (100Mo) + ul.af-form__file-list + li.af-form__file-line + span + .af-popover__container + .af-popover__container-over(role='presentation') + i.glyphicon.glyphicon-picture + span error-file.jpg + span 100Mo + button.af-link.af-link--delete-file(type='button') + span.af-link__text Supprimer + li.af-form__file-line + span + .af-popover__container + .af-popover__container-over(role='presentation') + i.glyphicon.glyphicon-picture + span fichier.png + span 100Mo + button.af-link.af-link--delete-file(type='button') + span.af-link__text Supprimer + li.af-form__file-line + i.glyphicon.glyphicon-file + span fichier.csv + span 100ko + button.af-link.af-link--delete-file(type='button') + span.af-link__text Supprimer + + diff --git a/storybook/design-system/src/pages/molecules/form-file/templates/form-file-list.pug b/storybook/design-system/src/pages/molecules/form-file/templates/form-file-list.pug new file mode 100644 index 000000000..6b1b1c6f8 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-file/templates/form-file-list.pug @@ -0,0 +1,42 @@ +extends ../../../../components/form/layouts/layout-form-textarea +include ../../../../components/form/mixins/mixin-form-field-text + +block label + label.af-form__group-label(for="inputtext1") Input File * + +block input + .af-form__file-input + #uniqueid.drop-box.hidden-mobile(style='position: relative;' aria-disabled='false') + div Glissez/déposez vos fichiers + input(accept='image/jpeg, image/png, application/*' type='file' style='position: absolute; inset: 0px; opacity: 0.00001; pointer-events: none;' autocomplete='off' name='placeImage') + button.af-btn.af-btn--file.af-btn--hasiconLeft(type='button') + i.glyphicon.glyphicon-open + | Parcourir + small.af-form__help Enter the place name, ex : Webcenter + .custom-table-file.af-file-table + ul.af-form__file-list + li.af-form__file-line + span + .af-popover__container + .af-popover__container-over(role='presentation') + i.glyphicon.glyphicon-picture + span error-file.jpg + span 100Mo + button.af-link.af-link--delete-file(type='button') + span.af-link__text Supprimer + li.af-form__file-line + span + .af-popover__container + .af-popover__container-over(role='presentation') + i.glyphicon.glyphicon-picture + span fichier.png + span 100Mo + button.af-link.af-link--delete-file(type='button') + span.af-link__text Supprimer + li.af-form__file-line + i.glyphicon.glyphicon-file + span fichier.csv + span 100ko + button.af-link.af-link--delete-file(type='button') + span.af-link__text Supprimer + diff --git a/storybook/design-system/src/pages/molecules/form-file/templates/form-file.pug b/storybook/design-system/src/pages/molecules/form-file/templates/form-file.pug new file mode 100644 index 000000000..cc222a9dc --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-file/templates/form-file.pug @@ -0,0 +1,15 @@ +extends ../../../../components/form/layouts/layout-form-field +include ../../../../components/form/mixins/mixin-form-field-text + +block label + label.af-form__group-label(for="inputtext1") Input File * + +block input + .af-form__file + .af-form__file-input + #uniqueid.drop-box.hidden-mobile(style='position: relative;' aria-disabled='false') + div Glissez/déposez vos fichiers + input(accept='image/jpeg, image/png, application/*' type='file' style='position: absolute; inset: 0px; opacity: 0.00001; pointer-events: none;' multiple='' autocomplete='off' name='placeImage') + button.af-btn.af-btn--file.af-btn--hasiconLeft(type='button') + i.glyphicon.glyphicon-open + | Parcourir diff --git a/storybook/design-system/src/pages/molecules/form-pass/data.json b/storybook/design-system/src/pages/molecules/form-pass/data.json new file mode 100644 index 000000000..fa2a75910 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-pass/data.json @@ -0,0 +1,35 @@ +{ + "metatitle": "Form Input Pass Component UI - Slash Design System", + "metadescription": "UI Component Form Input Pass for design system Axa. Toolkit Axa is the design system for Axa web and product. It is a series of individual styles, components, and guidelines used for creating unified UI.", + "metakeywords": "Form Input Pass design system, ui Form Input Pass, design system axa, design system ui, design system react, design", + "github": "Form/Input/pass", + "storybook": "form-input-pass--passinput", + "badge": "%40axa-fr%2Freact-toolkit-form-input-pass", + "colors": [ + { + "name": "BLEU AXA", + "sass": "$color-axa", + "hex": "#00008f" + }, + { + "name": "BLEU Action", + "sass": "$color-azur", + "hex": "#3032c1" + }, + { + "name": "BLEU Action focus", + "sass": "$color-azur-focused", + "hex": "#aaabf9" + }, + { + "name": "Mercury", + "sass": "$color-mercury", + "hex": "#e5e5e5" + }, + { + "name": "Silver", + "sass": " $color-silver", + "hex": "#cccccc" + } + ] +} \ No newline at end of file diff --git a/storybook/design-system/src/pages/molecules/form-pass/index.pug b/storybook/design-system/src/pages/molecules/form-pass/index.pug new file mode 100644 index 000000000..4aaf6ce3d --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-pass/index.pug @@ -0,0 +1,32 @@ +extends ../../../commons/layout + +block meta + -var activePath = '/molecules/form-pass'; + -const { metatitle, metadescription, metakeywords, github, storybook, badge, colors } = require(`../src/pages${activePath}/data.json`) + -var sassPath = 'react-toolkit-form-input-pass/dist/pass.scss' + -var metaTitle = metatitle + -var metaDescription = metadescription + -var metaKeywords = metakeywords + -var basedir='../../' + +block vars + - var id = "component" + +block menu + +Menu({ activePath }) + +block page + +PageTitle({ title: 'Form Pass', subtitle: 'Molecule' }) + .tk-page__links + +PageSummary() + +PageLinks({github, storybook, badge}) + +PageContentComponent() + block guidelines + +PageMarkdown() + include:markdown-it ./markdown/guidelines.md + block code + +Demo({ title:'Classic Input Pass', storybook, activePath, tmpl: 'form-pass', modifier: 'forminputtext', sassPath }) + block style + +Colors({ colors }) + +PageMarkdown() + include:markdown-it ./markdown/style.md diff --git a/storybook/design-system/src/pages/molecules/form-pass/markdown/guidelines.md b/storybook/design-system/src/pages/molecules/form-pass/markdown/guidelines.md new file mode 100644 index 000000000..243a5262b --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-pass/markdown/guidelines.md @@ -0,0 +1,36 @@ +## Tone of voice + +Quapropter a natura mihi **bold** potius quam ab indigentia orta amicitia, applicatione magis animi cum quodam sensu amandi quam cogitatione quantum illa res utilitatis esset habitura. Quod quidem quale sit, [link to Google!](http://google.com) quibusdam animadverti potest, quae ex se _italic_ ita amant ad quoddam tempus et ab eis ita amantur ut facile earum sensus appareat. + +- Quapropter a natura mihi videtur potius quam ab +- sit, etiam in bestiis quibusdam animadverti potest, +- quae ex se natos ita amant ad quoddam tempus . + +**Component** Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Usage + +| Component type | Purpose | +| ---------------- | -------------------- | +| Primary | Use for ... when ... | +| Secondary | Use for ... when ... | +| With icon | Use for ... when ... | +| Disabled version | Use for ... when ... | +| Light version | Use for ... when ... | + +## Label + +Component labels ... Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Icon usage + +- Use glyphs (16px) within buttons. +- Glyphs are distinguished by their solid shape and knocked-out details. +- Glyphs should always appear to the right of the text. +- Glyphs used in buttons must be directly related to the action that the user is taking. +- Glyphs must be the same color value as the text within a button. +- Ghost buttons require a glyph icon (cannot be stand alone text because of poor affordance). + +## Danger version usage + +Danger ... Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. diff --git a/storybook/design-system/src/pages/molecules/form-pass/markdown/style.md b/storybook/design-system/src/pages/molecules/form-pass/markdown/style.md new file mode 100644 index 000000000..43c26a3aa --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-pass/markdown/style.md @@ -0,0 +1,21 @@ +## Imports SASS + +``` +@import '@axa-fr/react-toolkit-core/src/common/scss/core.scss'; +@import '~@axa-fr/react-toolkit-all/dist/style/bootstrap/grid.css'; +@import '@axa-fr/react-toolkit-form-core/dist/form.scss'; +@import '@axa-fr/react-toolkit-form-input-text/dist/inputtext.scss'; +@import '@axa-fr/react-toolkit-form-input-pass/dist/pass.scss'; +``` + +## Structure + +A Component Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Typography + +Component text should be set in sentence case, with only the first word in a phrase and any proper nouns capitalized. + +| Class | Font-size (px/rem) | Font-weight | Font-family | +| ----------------- | ------------------ | ----------- | ----------------------- | +| **.af-form-pass** | 16 / 1 | 400 | Source Sans Pro Regular | diff --git a/storybook/design-system/src/pages/molecules/form-pass/templates/form-pass.pug b/storybook/design-system/src/pages/molecules/form-pass/templates/form-pass.pug new file mode 100644 index 000000000..fcb4a98b4 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-pass/templates/form-pass.pug @@ -0,0 +1,17 @@ +-const levels = ["","bad", "okay", "good", "verygood", "excellent"] +each level in levels + .af-form__group.row(class=(level !== "") ? `af-form__group--${level}` : "") + .col-md-2 + label.af-form__group-label(for="inputpassword") Input password * + .col-md-10 + .af-form__pass-container + .af-form__pass.af-form__pass--hasinfobulle(class=(level !== "") ? `af-form__pass--${level}` : "") + .af-form__pass-strength + input#uniqueid.af-form__input-text(name="inputpassword" value="" tabindex="" type="password") + button.af-form__pass-btn(type="button") + i.glyphicon.glyphicon-eye-open + .af-popover__container + .af-popover__container-over + button.af-btn--circle-small + span.af-more-help i + small.af-form__help 8 caractères minimum \ No newline at end of file diff --git a/storybook/design-system/src/pages/molecules/form-radio-switch/data.json b/storybook/design-system/src/pages/molecules/form-radio-switch/data.json new file mode 100644 index 000000000..a26aeec88 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-radio-switch/data.json @@ -0,0 +1,35 @@ +{ + "metatitle": "Form Input Switch Component UI - Slash Design System", + "metadescription": "UI Component Form Input Switch for design system Axa. Toolkit Axa is the design system for Axa web and product. It is a series of individual styles, components, and guidelines used for creating unified UI.", + "metakeywords": "Form Input Switch design system, ui Form Input Switch, design system axa, design system ui, design system react, design", + "github": "Form/Input/switch", + "storybook": "form-input-switch--switchinput", + "badge": "%40axa-fr%2Freact-toolkit-form-input-switch", + "colors": [ + { + "name": "BLEU AXA", + "sass": "$color-axa", + "hex": "#00008f" + }, + { + "name": "BLEU Action", + "sass": "$color-azur", + "hex": "#3032c1" + }, + { + "name": "BLEU Action focus", + "sass": "$color-azur-focused", + "hex": "#aaabf9" + }, + { + "name": "Mercury", + "sass": "$color-mercury", + "hex": "#e5e5e5" + }, + { + "name": "Silver", + "sass": " $color-silver", + "hex": "#cccccc" + } + ] +} diff --git a/storybook/design-system/src/pages/molecules/form-radio-switch/index.pug b/storybook/design-system/src/pages/molecules/form-radio-switch/index.pug new file mode 100644 index 000000000..508ebb45c --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-radio-switch/index.pug @@ -0,0 +1,32 @@ +extends ../../../commons/layout + +block meta + -var activePath = '/molecules/form-radio-switch'; + -const { metatitle, metadescription, metakeywords, github, storybook, badge, colors } = require(`../src/pages${activePath}/data.json`) + -var sassPath = 'react-toolkit-form-input-switch/dist/switch.scss' + -var metaTitle = metatitle + -var metaDescription = metadescription + -var metaKeywords = metakeywords + -var basedir='../../' + +block vars + - var id = "component" + +block menu + +Menu({ activePath }) + +block page + +PageTitle({ title: 'Form Radio Switch', subtitle: 'Molecule' }) + .tk-page__links + +PageSummary() + +PageLinks({github, storybook, badge}) + +PageContentComponent() + block guidelines + +PageMarkdown() + include:markdown-it ./markdown/guidelines.md + block code + +Demo({ title:'Classic Radio Switch', storybook, activePath, tmpl: 'form-radio-switch', modifier: 'forminputtext', sassPath }) + block style + +Colors({ colors }) + +PageMarkdown() + include:markdown-it ./markdown/style.md diff --git a/storybook/design-system/src/pages/molecules/form-radio-switch/index.scss b/storybook/design-system/src/pages/molecules/form-radio-switch/index.scss new file mode 100644 index 000000000..65209a614 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-radio-switch/index.scss @@ -0,0 +1,7 @@ +/* fix toolkit */ + +.af-form-switch .af-form__radio-custom { + display: inline-flex; + align-items: center; + padding: 0 11px; +} diff --git a/storybook/design-system/src/pages/molecules/form-radio-switch/markdown/guidelines.md b/storybook/design-system/src/pages/molecules/form-radio-switch/markdown/guidelines.md new file mode 100644 index 000000000..243a5262b --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-radio-switch/markdown/guidelines.md @@ -0,0 +1,36 @@ +## Tone of voice + +Quapropter a natura mihi **bold** potius quam ab indigentia orta amicitia, applicatione magis animi cum quodam sensu amandi quam cogitatione quantum illa res utilitatis esset habitura. Quod quidem quale sit, [link to Google!](http://google.com) quibusdam animadverti potest, quae ex se _italic_ ita amant ad quoddam tempus et ab eis ita amantur ut facile earum sensus appareat. + +- Quapropter a natura mihi videtur potius quam ab +- sit, etiam in bestiis quibusdam animadverti potest, +- quae ex se natos ita amant ad quoddam tempus . + +**Component** Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Usage + +| Component type | Purpose | +| ---------------- | -------------------- | +| Primary | Use for ... when ... | +| Secondary | Use for ... when ... | +| With icon | Use for ... when ... | +| Disabled version | Use for ... when ... | +| Light version | Use for ... when ... | + +## Label + +Component labels ... Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Icon usage + +- Use glyphs (16px) within buttons. +- Glyphs are distinguished by their solid shape and knocked-out details. +- Glyphs should always appear to the right of the text. +- Glyphs used in buttons must be directly related to the action that the user is taking. +- Glyphs must be the same color value as the text within a button. +- Ghost buttons require a glyph icon (cannot be stand alone text because of poor affordance). + +## Danger version usage + +Danger ... Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. diff --git a/storybook/design-system/src/pages/molecules/form-radio-switch/markdown/style.md b/storybook/design-system/src/pages/molecules/form-radio-switch/markdown/style.md new file mode 100644 index 000000000..576495ee5 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-radio-switch/markdown/style.md @@ -0,0 +1,18 @@ +## Imports SASS + +``` +@import '@axa-fr/react-toolkit-core/src/common/scss/core.scss'; +@import '@axa-fr/react-toolkit-form-input-switch/dist/switch.scss'; +``` + +## Structure + +A Component Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Typography + +Component text should be set in sentence case, with only the first word in a phrase and any proper nouns capitalized. + +| Class | Font-size (px/rem) | Font-weight | Font-family | +| ------------------- | ------------------ | ----------- | ----------------------- | +| **.af-form-switch** | 16 / 1 | 400 | Source Sans Pro Regular | diff --git a/storybook/design-system/src/pages/molecules/form-radio-switch/templates/form-radio-switch.pug b/storybook/design-system/src/pages/molecules/form-radio-switch/templates/form-radio-switch.pug new file mode 100644 index 000000000..4218b239b --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-radio-switch/templates/form-radio-switch.pug @@ -0,0 +1,24 @@ +extends ../../../../components/form/layouts/layout-form-field + +block label + label.af-form__group-label(for="radioswitch") Switch radios * + +block input + .af-form-switch + .af-form__radio-custom + input#check0.af-form__input-radio(name="placeName" value="0" type="radio") + label.af-form__label(for="check0") + span.af-form__description Choix 1 + .af-form__radio-custom + input#check1.af-form__input-radio(name="placeName" value="1" type="radio" checked="checked") + label.af-form__label(for="check1") + span.af-form__description Choix 2 + .af-form__radio-custom + input#check2.af-form__input-radio(name="placeName" value="2" type="radio") + label.af-form__label(for="check2") + span.af-form__description Choix 3 + .af-form__radio-custom + input#check3.af-form__input-radio(name="placeName" value="3" type="radio") + label.af-form__label(for="check3") + span.af-form__description Choix 44444444444444 + span.af-btn-switch-slider(style="left:64px;width:64px;") diff --git a/storybook/design-system/src/pages/molecules/form-radio/data.json b/storybook/design-system/src/pages/molecules/form-radio/data.json new file mode 100644 index 000000000..f2adf5d34 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-radio/data.json @@ -0,0 +1,35 @@ +{ + "metatitle": "Form Input Radio Component UI - Slash Design System", + "metadescription": "UI Component Form Input Radio for design system Axa. Toolkit Axa is the design system for Axa web and product. It is a series of individual styles, components, and guidelines used for creating unified UI.", + "metakeywords": "Form Input Radio design system, ui Form Input Radio, design system axa, design system ui, design system react, design", + "github": "Form/Input/radio", + "storybook": "form-input-radio--radioinput", + "badge": "%40axa-fr%2Freact-toolkit-form-input-radio", + "colors": [ + { + "name": "BLEU AXA", + "sass": "$color-axa", + "hex": "#00008f" + }, + { + "name": "BLEU Action", + "sass": "$color-azur", + "hex": "#3032c1" + }, + { + "name": "BLEU Action focus", + "sass": "$color-azur-focused", + "hex": "#aaabf9" + }, + { + "name": "Mercury", + "sass": "$color-mercury", + "hex": "#e5e5e5" + }, + { + "name": "Silver", + "sass": " $color-silver", + "hex": "#cccccc" + } + ] +} \ No newline at end of file diff --git a/storybook/design-system/src/pages/molecules/form-radio/index.pug b/storybook/design-system/src/pages/molecules/form-radio/index.pug new file mode 100644 index 000000000..a024cfb55 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-radio/index.pug @@ -0,0 +1,40 @@ +extends ../../../commons/layout + +block meta + -var activePath = '/molecules/form-radio'; + -const { metatitle, metadescription, metakeywords, github, storybook, badge, colors } = require(`../src/pages${activePath}/data.json`) + -var sassPath = 'react-toolkit-form-input-radio/dist/radio.scss' + -var metaTitle = metatitle + -var metaDescription = metadescription + -var metaKeywords = metakeywords + -var basedir='../../' + +block vars + - var id = "component" + +block menu + +Menu({ activePath }) + +block page + +PageTitle({ title: 'Form Radio', subtitle: 'Molecule' }) + .tk-page__links + +PageSummary() + +PageLinks({github, storybook, badge}) + +PageContentComponent() + block guidelines + +PageMarkdown() + include:markdown-it ./markdown/guidelines.md + block code + +Demo({ title:'Classic Input Radio', storybook, activePath, tmpl: 'form-radio', modifier: 'forminputtext', sassPath }) + +Demo({ title:'Input Radio Success', storybook, activePath, tmpl: 'form-radio-success', modifier: 'forminputtext', sassPath }) + +Demo({ title:'Input Radio Error', storybook, activePath, tmpl: 'form-radio-error', modifier: 'forminputtext', sassPath }) + +Demo({ title:'Classic Input Radio Inline', storybook, activePath, tmpl: 'form-radio-inline', modifier: 'forminputtext', sassPath }) + +Demo({ title:'Input Radio Success Inline', storybook, activePath, tmpl: 'form-radio-inline-success', modifier: 'forminputtext', sassPath }) + +Demo({ title:'Input Radio Error Inline', storybook, activePath, tmpl: 'form-radio-inline-error', modifier: 'forminputtext', sassPath }) + +Demo({ title:'Classic Input Radio Custom', storybook, activePath, tmpl: 'form-radio-custom', modifier: 'forminputtext', sassPath }) + +Demo({ title:'Input Radio Success Custom', storybook, activePath, tmpl: 'form-radio-custom-success', modifier: 'forminputtext', sassPath }) + +Demo({ title:'Input Radio Error Custom', storybook, activePath, tmpl: 'form-radio-custom-error', modifier: 'forminputtext', sassPath }) + block style + +Colors({ colors }) + +PageMarkdown() + include:markdown-it ./markdown/style.md diff --git a/storybook/design-system/src/pages/molecules/form-radio/markdown/guidelines.md b/storybook/design-system/src/pages/molecules/form-radio/markdown/guidelines.md new file mode 100644 index 000000000..243a5262b --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-radio/markdown/guidelines.md @@ -0,0 +1,36 @@ +## Tone of voice + +Quapropter a natura mihi **bold** potius quam ab indigentia orta amicitia, applicatione magis animi cum quodam sensu amandi quam cogitatione quantum illa res utilitatis esset habitura. Quod quidem quale sit, [link to Google!](http://google.com) quibusdam animadverti potest, quae ex se _italic_ ita amant ad quoddam tempus et ab eis ita amantur ut facile earum sensus appareat. + +- Quapropter a natura mihi videtur potius quam ab +- sit, etiam in bestiis quibusdam animadverti potest, +- quae ex se natos ita amant ad quoddam tempus . + +**Component** Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Usage + +| Component type | Purpose | +| ---------------- | -------------------- | +| Primary | Use for ... when ... | +| Secondary | Use for ... when ... | +| With icon | Use for ... when ... | +| Disabled version | Use for ... when ... | +| Light version | Use for ... when ... | + +## Label + +Component labels ... Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Icon usage + +- Use glyphs (16px) within buttons. +- Glyphs are distinguished by their solid shape and knocked-out details. +- Glyphs should always appear to the right of the text. +- Glyphs used in buttons must be directly related to the action that the user is taking. +- Glyphs must be the same color value as the text within a button. +- Ghost buttons require a glyph icon (cannot be stand alone text because of poor affordance). + +## Danger version usage + +Danger ... Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. diff --git a/storybook/design-system/src/pages/molecules/form-radio/markdown/style.md b/storybook/design-system/src/pages/molecules/form-radio/markdown/style.md new file mode 100644 index 000000000..ffeed3a42 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-radio/markdown/style.md @@ -0,0 +1,18 @@ +## Imports SASS + +``` +@import '@axa-fr/react-toolkit-core/src/common/scss/core.scss'; +@import '@axa-fr/react-toolkit-form-input-radio/dist/radio.scss'; +``` + +## Structure + +A Component Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Typography + +Component text should be set in sentence case, with only the first word in a phrase and any proper nouns capitalized. + +| Class | Font-size (px/rem) | Font-weight | Font-family | +| --------------------- | ------------------ | ----------- | ----------------------- | +| **.af-form-radio** | 16 / 1 | 400 | Source Sans Pro Regular | diff --git a/storybook/design-system/src/pages/molecules/form-radio/templates/form-radio-custom-error.pug b/storybook/design-system/src/pages/molecules/form-radio/templates/form-radio-custom-error.pug new file mode 100644 index 000000000..0e32dad8c --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-radio/templates/form-radio-custom-error.pug @@ -0,0 +1,14 @@ +extends ../../../../components/form/layouts/layout-form-textarea +include ../../../../components/form/mixins/mixin-form-field-radio +include ../../../../components/form/mixins/mixin-form-message + +block label + label.af-form__group-label Custom radio + +block input + +formFieldRadio({className:'af-form__radio-custom', id:"21", name:"classic-custom-error", label: "Radio 1", modifier:'error'}) + +formFieldRadio({className:'af-form__radio-custom', id:"22", name:"classic-custom-error", label: "Radio 2", modifier:'error'}) + +formFieldRadio({className:'af-form__radio-custom', id:"23", name:"classic-custom-error", label: "Radio 3", modifier:'error'}) + +formFieldRadio({className:'af-form__radio-custom', id:"24", name:"classic-custom-error", label: "Radio 4", modifier:'error'}) + +formMessage({modifierMessage: 'error', textMessage:"Message d'erreur", iconMessage: 'exclamation-sign'}) + diff --git a/storybook/design-system/src/pages/molecules/form-radio/templates/form-radio-custom-success.pug b/storybook/design-system/src/pages/molecules/form-radio/templates/form-radio-custom-success.pug new file mode 100644 index 000000000..af198ac3b --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-radio/templates/form-radio-custom-success.pug @@ -0,0 +1,11 @@ +extends ../../../../components/form/layouts/layout-form-textarea +include ../../../../components/form/mixins/mixin-form-field-radio + +block label + label.af-form__group-label Custom Radio + +block input + +formFieldRadio({className:'af-form__radio-custom', id:"17", name:"classic-custom-success", label: "Radio 1", modifier:'success'}) + +formFieldRadio({className:'af-form__radio-custom', id:"18", name:"classic-custom-success", label: "Radio 2", modifier:'success'}) + +formFieldRadio({className:'af-form__radio-custom', id:"19", name:"classic-custom-success", label: "Radio 3", modifier:'success'}) + +formFieldRadio({className:'af-form__radio-custom', id:"20", name:"classic-custom-success", label: "Disabled", disabled: true, modifier:'disabled'}) diff --git a/storybook/design-system/src/pages/molecules/form-radio/templates/form-radio-custom.pug b/storybook/design-system/src/pages/molecules/form-radio/templates/form-radio-custom.pug new file mode 100644 index 000000000..c67d0b51f --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-radio/templates/form-radio-custom.pug @@ -0,0 +1,11 @@ +extends ../../../../components/form/layouts/layout-form-textarea +include ../../../../components/form/mixins/mixin-form-field-radio + +block label + label.af-form__group-label Custom Radio + +block input + +formFieldRadio({className:'af-form__radio-custom', id:"13", name:"classic-custom", label: "Radio 1"}) + +formFieldRadio({className:'af-form__radio-custom', id:"14", name:"classic-custom", label: "Radio 2"}) + +formFieldRadio({className:'af-form__radio-custom', id:"15", name:"classic-custom", label: "Radio 3"}) + +formFieldRadio({className:'af-form__radio-custom', id:"16", name:"classic-custom", label: "Disabled", disabled: true, modifier:'disabled'}) diff --git a/storybook/design-system/src/pages/molecules/form-radio/templates/form-radio-error.pug b/storybook/design-system/src/pages/molecules/form-radio/templates/form-radio-error.pug new file mode 100644 index 000000000..01520da6d --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-radio/templates/form-radio-error.pug @@ -0,0 +1,13 @@ +extends ../../../../components/form/layouts/layout-form-textarea +include ../../../../components/form/mixins/mixin-form-field-radio +include ../../../../components/form/mixins/mixin-form-message + +block label + label.af-form__group-label Classic radio + +block input + +formFieldRadio({id:"9", name:"classic-error", label: "lorem ipsum dolor sit amet", modifier:'error'}) + +formFieldRadio({id:"10", name:"classic-error", label: "Nam sem nisi, auctor sit amet massa sit amet", modifier:'error'}) + +formFieldRadio({id:"11", name:"classic-error", label: "Ut sollicitudin eleifend tincidunt", modifier:'error'}) + +formFieldRadio({id:"12", name:"classic-error", label: "error", modifier:'error'}) + +formMessage({modifierMessage: 'error', textMessage:"Message d'erreur", iconMessage: 'exclamation-sign'}) diff --git a/storybook/design-system/src/pages/molecules/form-radio/templates/form-radio-inline-error.pug b/storybook/design-system/src/pages/molecules/form-radio/templates/form-radio-inline-error.pug new file mode 100644 index 000000000..bbbe4fa06 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-radio/templates/form-radio-inline-error.pug @@ -0,0 +1,13 @@ +extends ../../../../components/form/layouts/layout-form-textarea +include ../../../../components/form/mixins/mixin-form-field-radio +include ../../../../components/form/mixins/mixin-form-message + +block label + label.af-form__group-label Inline radio + +block input + +formFieldRadio({className:'af-form__radio-inline', id:"33", name:"classic-inline-error", label: "Radio 1", modifier:'error'}) + +formFieldRadio({className:'af-form__radio-inline', id:"34", name:"classic-inline-error", label: "Radio 2", modifier:'error'}) + +formFieldRadio({className:'af-form__radio-inline', id:"35", name:"classic-inline-error", label: "Radio 3", modifier:'error'}) + +formFieldRadio({className:'af-form__radio-inline', id:"36", name:"classic-inline-error", label: "Radio 4", modifier:'error'}) + +formMessage({modifierMessage: 'error', textMessage:"Message d'erreur", iconMessage: 'exclamation-sign'}) \ No newline at end of file diff --git a/storybook/design-system/src/pages/molecules/form-radio/templates/form-radio-inline-success.pug b/storybook/design-system/src/pages/molecules/form-radio/templates/form-radio-inline-success.pug new file mode 100644 index 000000000..e1ac9f51a --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-radio/templates/form-radio-inline-success.pug @@ -0,0 +1,11 @@ +extends ../../../../components/form/layouts/layout-form-textarea +include ../../../../components/form/mixins/mixin-form-field-radio + +block label + label.af-form__group-label Inline radio + +block input + +formFieldRadio({className:'af-form__radio-inline', id:"29", name:"classic-inline-success", label: "Radio 1", modifier:'success'}) + +formFieldRadio({className:'af-form__radio-inline', id:"30", name:"classic-inline-success", label: "Radio 2", modifier:'success'}) + +formFieldRadio({className:'af-form__radio-inline', id:"31", name:"classic-inline-success", label: "Radio 3", modifier:'success'}) + +formFieldRadio({className:'af-form__radio-inline', id:"32", name:"classic-inline-success", label: "Disabled", disabled: true, modifier:'disabled'}) diff --git a/storybook/design-system/src/pages/molecules/form-radio/templates/form-radio-inline.pug b/storybook/design-system/src/pages/molecules/form-radio/templates/form-radio-inline.pug new file mode 100644 index 000000000..4cd055eb8 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-radio/templates/form-radio-inline.pug @@ -0,0 +1,11 @@ +extends ../../../../components/form/layouts/layout-form-textarea +include ../../../../components/form/mixins/mixin-form-field-radio + +block label + label.af-form__group-label Inline radio + +block input + +formFieldRadio({className:'af-form__radio-inline', id:"25", name:"classic-inline", label: "Radio 1"}) + +formFieldRadio({className:'af-form__radio-inline', id:"26", name:"classic-inline", label: "Radio 2"}) + +formFieldRadio({className:'af-form__radio-inline', id:"27", name:"classic-inline", label: "Radio 3"}) + +formFieldRadio({className:'af-form__radio-inline', id:"28", name:"classic-inline", label: "Disabled", disabled: true, modifier:'disabled'}) diff --git a/storybook/design-system/src/pages/molecules/form-radio/templates/form-radio-success.pug b/storybook/design-system/src/pages/molecules/form-radio/templates/form-radio-success.pug new file mode 100644 index 000000000..d4794d62f --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-radio/templates/form-radio-success.pug @@ -0,0 +1,11 @@ +extends ../../../../components/form/layouts/layout-form-textarea +include ../../../../components/form/mixins/mixin-form-field-radio + +block label + label.af-form__group-label Classic radio + +block input + +formFieldRadio({id:"5", name:"classic-success", label: "lorem ipsum dolor sit amet", modifier:'success'}) + +formFieldRadio({id:"6", name:"classic-success", label: "Nam sem nisi, auctor sit amet massa sit amet", modifier:'success'}) + +formFieldRadio({id:"7", name:"classic-success", label: "Ut sollicitudin eleifend tincidunt", modifier:'success'}) + +formFieldRadio({id:"8", name:"classic-success", label: "disabled", disabled: true, modifier:'disabled'}) diff --git a/storybook/design-system/src/pages/molecules/form-radio/templates/form-radio.pug b/storybook/design-system/src/pages/molecules/form-radio/templates/form-radio.pug new file mode 100644 index 000000000..ec4a29f42 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-radio/templates/form-radio.pug @@ -0,0 +1,11 @@ +extends ../../../../components/form/layouts/layout-form-textarea +include ../../../../components/form/mixins/mixin-form-field-radio + +block label + label.af-form__group-label Classic radio + +block input + +formFieldRadio({id:"1", name:"classic", label: "lorem ipsum dolor sit amet"}) + +formFieldRadio({id:"2", name:"classic", label: "Nam sem nisi, auctor sit amet massa sit amet"}) + +formFieldRadio({id:"3", name:"classic", label: "Ut sollicitudin eleifend tincidunt"}) + +formFieldRadio({id:"4", name:"classic", label: "disabled", disabled: true, modifier:'disabled'}) diff --git a/storybook/design-system/src/pages/molecules/form-select/data.json b/storybook/design-system/src/pages/molecules/form-select/data.json new file mode 100644 index 000000000..6fd62756b --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-select/data.json @@ -0,0 +1,35 @@ +{ + "metatitle": "Form Input Text Component UI - Slash Design System", + "metadescription": "UI Component Form Input Text for design system Axa. Toolkit Axa is the design system for Axa web and product. It is a series of individual styles, components, and guidelines used for creating unified UI.", + "metakeywords": "Form Input Text design system, ui Form Input Text, design system axa, design system ui, design system react, design", + "github": "Form/Input/text", + "storybook": "form-input-text--textinput", + "badge": "%40axa-fr%2Freact-toolkit-form-input-text", + "colors": [ + { + "name": "BLEU AXA", + "sass": "$color-axa", + "hex": "#00008f" + }, + { + "name": "BLEU Action", + "sass": "$color-azur", + "hex": "#3032c1" + }, + { + "name": "BLEU Action focus", + "sass": "$color-azur-focused", + "hex": "#aaabf9" + }, + { + "name": "Mercury", + "sass": "$color-mercury", + "hex": "#e5e5e5" + }, + { + "name": "Silver", + "sass": " $color-silver", + "hex": "#cccccc" + } + ] +} diff --git a/storybook/design-system/src/pages/molecules/form-select/index.pug b/storybook/design-system/src/pages/molecules/form-select/index.pug new file mode 100644 index 000000000..92ea8b952 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-select/index.pug @@ -0,0 +1,38 @@ +extends ../../../commons/layout + +block meta + -var activePath = '/molecules/form-select'; + -const { metatitle, metadescription, metakeywords, github, storybook, badge, colors } = require(`../src/pages${activePath}/data.json`) + -var sassPath = 'react-toolkit-form-input-select/dist/select.scss' + -var metaTitle = metatitle + -var metaDescription = metadescription + -var metaKeywords = metakeywords + -var basedir='../../' + +block vars + - var id = "component" + +block menu + +Menu({ activePath }) + +block page + +PageTitle({ title: 'Form Select', subtitle: 'Molecule' }) + .tk-page__links + +PageSummary() + +PageLinks({github, storybook, badge}) + +PageContentComponent() + block guidelines + +PageMarkdown() + include:markdown-it ./markdown/guidelines.md + block code + +Demo({ title:'Classic Input Select', storybook, activePath, tmpl: 'form-select', modifier: 'forminputtext', sassPath }) + +Demo({ title:'Input Select Success', storybook, activePath, tmpl: 'form-select-success', modifier: 'forminputtext', sassPath }) + +Demo({ title:'Input Select Error', storybook, activePath, tmpl: 'form-select-error', modifier: 'forminputtext', sassPath }) + +Demo({ title:'Input Select Disabled', storybook, activePath, tmpl: 'form-select-disabled', modifier: 'forminputtext', sassPath }) + +Demo({ title:'Input Select inline', storybook, activePath, tmpl: 'form-select-inline', modifier: 'forminputtext', sassPath }) + +Demo({ title:'Input Select inline Error', storybook, activePath, tmpl: 'form-select-inline-error', modifier: 'forminputtext', sassPath }) + +Demo({ title:'Input Select inline Success', storybook, activePath, tmpl: 'form-select-inline-success', modifier: 'forminputtext', sassPath }) + block style + +Colors({ colors }) + +PageMarkdown() + include:markdown-it ./markdown/style.md diff --git a/storybook/design-system/src/pages/molecules/form-select/index.scss b/storybook/design-system/src/pages/molecules/form-select/index.scss new file mode 100644 index 000000000..d63332718 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-select/index.scss @@ -0,0 +1,48 @@ +/* Corrections à reporter sur le toolkit */ + +.af-form { + &__error-text { + font-size: .8rem; + } + + &__input-inline { + .af-form { + &__select { + &-container { + min-width: 200px; + } + } + } + } + + &__select { + &-container { + border: none; + min-width: 200px; + } + + &--error { + .af-form { + &__select-container { + border: none; + } + + &__input-select { + box-shadow: 0 0 0 1px $color-red-axa; + } + } + } + } + + &__input-select { + padding: 0 1.8rem 0 .5rem; + height: 38px; + box-shadow: 0 0 0 1px $color-gray-1; + border-radius: 0; + + &:focus { + box-shadow: 0 0 0 1px $color-axa; + outline: none; + } + } +} diff --git a/storybook/design-system/src/pages/molecules/form-select/markdown/guidelines.md b/storybook/design-system/src/pages/molecules/form-select/markdown/guidelines.md new file mode 100644 index 000000000..243a5262b --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-select/markdown/guidelines.md @@ -0,0 +1,36 @@ +## Tone of voice + +Quapropter a natura mihi **bold** potius quam ab indigentia orta amicitia, applicatione magis animi cum quodam sensu amandi quam cogitatione quantum illa res utilitatis esset habitura. Quod quidem quale sit, [link to Google!](http://google.com) quibusdam animadverti potest, quae ex se _italic_ ita amant ad quoddam tempus et ab eis ita amantur ut facile earum sensus appareat. + +- Quapropter a natura mihi videtur potius quam ab +- sit, etiam in bestiis quibusdam animadverti potest, +- quae ex se natos ita amant ad quoddam tempus . + +**Component** Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Usage + +| Component type | Purpose | +| ---------------- | -------------------- | +| Primary | Use for ... when ... | +| Secondary | Use for ... when ... | +| With icon | Use for ... when ... | +| Disabled version | Use for ... when ... | +| Light version | Use for ... when ... | + +## Label + +Component labels ... Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Icon usage + +- Use glyphs (16px) within buttons. +- Glyphs are distinguished by their solid shape and knocked-out details. +- Glyphs should always appear to the right of the text. +- Glyphs used in buttons must be directly related to the action that the user is taking. +- Glyphs must be the same color value as the text within a button. +- Ghost buttons require a glyph icon (cannot be stand alone text because of poor affordance). + +## Danger version usage + +Danger ... Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. diff --git a/storybook/design-system/src/pages/molecules/form-select/markdown/style.md b/storybook/design-system/src/pages/molecules/form-select/markdown/style.md new file mode 100644 index 000000000..c8dcbe3dc --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-select/markdown/style.md @@ -0,0 +1,18 @@ +## Imports SASS + +``` +@import '@axa-fr/react-toolkit-core/src/common/scss/core.scss'; +@import '@axa-fr/react-toolkit-form-input-select/dist/select.scss'; +``` + +## Structure + +A Component Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Typography + +Component text should be set in sentence case, with only the first word in a phrase and any proper nouns capitalized. + +| Class | Font-size (px/rem) | Font-weight | Font-family | +| ------------------- | ------------------ | ----------- | ----------------------- | +| **.af-form-select** | 16 / 1 | 400 | Source Sans Pro Regular | diff --git a/storybook/design-system/src/pages/molecules/form-select/templates/form-select-disabled.pug b/storybook/design-system/src/pages/molecules/form-select/templates/form-select-disabled.pug new file mode 100644 index 000000000..64bfa358a --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-select/templates/form-select-disabled.pug @@ -0,0 +1,8 @@ +extends ../../../../components/form/layouts/layout-form-field +include ../../../../components/form/mixins/mixin-form-field-select + +block label + label.af-form__group-label(for="select1") Input Select * + +block input + +formFieldSelect({modifier: 'disabled', disabled: true}) diff --git a/storybook/design-system/src/pages/molecules/form-select/templates/form-select-error.pug b/storybook/design-system/src/pages/molecules/form-select/templates/form-select-error.pug new file mode 100644 index 000000000..1881a5813 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-select/templates/form-select-error.pug @@ -0,0 +1,8 @@ +extends ../../../../components/form/layouts/layout-form-field +include ../../../../components/form/mixins/mixin-form-field-select + +block label + label.af-form__group-label(for="select1") Input Select * + +block input + +formFieldSelect({modifier:'error',modifierMessage:'error', iconMessage:'exclamation-sign', textMessage:"Message d'erreur"}) diff --git a/storybook/design-system/src/pages/molecules/form-select/templates/form-select-inline-error.pug b/storybook/design-system/src/pages/molecules/form-select/templates/form-select-inline-error.pug new file mode 100644 index 000000000..3cca4aa27 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-select/templates/form-select-inline-error.pug @@ -0,0 +1,11 @@ +extends ../../../../components/form/layouts/layout-form-field +include ../../../../components/form/mixins/mixin-form-field-select +include ../../../../components/form/mixins/mixin-form-field-text + +block label + label.af-form__group-label(for="select1") Inline fields * + +block input + .af-form__fields-inline + +formFieldSelect({className:'af-form__input-inline',modifier:'error',modifierMessage:'error', iconMessage:'exclamation-sign', textMessage:"Message d'erreur"}) + +formFieldText({hasInfobulle: true, modifier:'error',modifierMessage:'error', iconMessage:'exclamation-sign', textMessage:"Message d'erreur"}) diff --git a/storybook/design-system/src/pages/molecules/form-select/templates/form-select-inline-success.pug b/storybook/design-system/src/pages/molecules/form-select/templates/form-select-inline-success.pug new file mode 100644 index 000000000..508bf3493 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-select/templates/form-select-inline-success.pug @@ -0,0 +1,11 @@ +extends ../../../../components/form/layouts/layout-form-field +include ../../../../components/form/mixins/mixin-form-field-select +include ../../../../components/form/mixins/mixin-form-field-text + +block label + label.af-form__group-label(for="select1") Inline fields * + +block input + .af-form__fields-inline + +formFieldSelect({className:'af-form__input-inline',modifier: 'success'}) + +formFieldText({hasInfobulle: true, modifier: 'success'}) diff --git a/storybook/design-system/src/pages/molecules/form-select/templates/form-select-inline.pug b/storybook/design-system/src/pages/molecules/form-select/templates/form-select-inline.pug new file mode 100644 index 000000000..d7adef3f7 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-select/templates/form-select-inline.pug @@ -0,0 +1,11 @@ +extends ../../../../components/form/layouts/layout-form-field +include ../../../../components/form/mixins/mixin-form-field-select +include ../../../../components/form/mixins/mixin-form-field-text + +block label + label.af-form__group-label(for="select1") Inline fields * + +block input + .af-form__fields-inline + +formFieldSelect({className:'af-form__input-inline'}) + +formFieldText({hasInfobulle: true}) diff --git a/storybook/design-system/src/pages/molecules/form-select/templates/form-select-success.pug b/storybook/design-system/src/pages/molecules/form-select/templates/form-select-success.pug new file mode 100644 index 000000000..3b449a4f4 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-select/templates/form-select-success.pug @@ -0,0 +1,8 @@ +extends ../../../../components/form/layouts/layout-form-field +include ../../../../components/form/mixins/mixin-form-field-select + +block label + label.af-form__group-label(for="select1") Input Select * + +block input + +formFieldSelect({modifier: 'success'}) diff --git a/storybook/design-system/src/pages/molecules/form-select/templates/form-select.pug b/storybook/design-system/src/pages/molecules/form-select/templates/form-select.pug new file mode 100644 index 000000000..27f9be96e --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-select/templates/form-select.pug @@ -0,0 +1,8 @@ +extends ../../../../components/form/layouts/layout-form-field +include ../../../../components/form/mixins/mixin-form-field-select + +block label + label.af-form__group-label(for="select1") Input Select * + +block input + +formFieldSelect({}) diff --git a/storybook/design-system/src/pages/molecules/form-text/data.json b/storybook/design-system/src/pages/molecules/form-text/data.json new file mode 100644 index 000000000..ce676b2d8 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-text/data.json @@ -0,0 +1,35 @@ +{ + "metatitle": "Form Input Select Component UI - Slash Design System", + "metadescription": "UI Component Form Input Select for design system Axa. Toolkit Axa is the design system for Axa web and product. It is a series of individual styles, components, and guidelines used for creating unified UI.", + "metakeywords": "Form Input Select design system, ui Form Input Select, design system axa, design system ui, design system react, design", + "github": "Form/Input/select", + "storybook": "form-input-select--selectinput", + "badge": "%40axa-fr%2Freact-toolkit-form-input-select", + "colors": [ + { + "name": "BLEU AXA", + "sass": "$color-axa", + "hex": "#00008f" + }, + { + "name": "BLEU Action", + "sass": "$color-azur", + "hex": "#3032c1" + }, + { + "name": "BLEU Action focus", + "sass": "$color-azur-focused", + "hex": "#aaabf9" + }, + { + "name": "Mercury", + "sass": "$color-mercury", + "hex": "#e5e5e5" + }, + { + "name": "Silver", + "sass": " $color-silver", + "hex": "#cccccc" + } + ] +} diff --git a/storybook/design-system/src/pages/molecules/form-text/index.pug b/storybook/design-system/src/pages/molecules/form-text/index.pug new file mode 100644 index 000000000..fe0702744 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-text/index.pug @@ -0,0 +1,40 @@ +extends ../../../commons/layout + +block meta + -var activePath = '/molecules/form-text'; + -const { metatitle, metadescription, metakeywords, github, storybook, badge, colors } = require(`../src/pages${activePath}/data.json`) + -var sassPath = 'react-toolkit-form-input-text/dist/inputtext.scss' + -var metaTitle = metatitle + -var metaDescription = metadescription + -var metaKeywords = metakeywords + -var basedir='../../' + +block vars + - var id = "component" + +block menu + +Menu({ activePath }) + +block page + +PageTitle({ title: 'Form Text', subtitle: 'Molecule' }) + .tk-page__links + +PageSummary() + +PageLinks({github, storybook, badge}) + +PageContentComponent() + block guidelines + +PageMarkdown() + include:markdown-it ./markdown/guidelines.md + block code + +Demo({ title:'Classic Input Text', storybook, activePath, tmpl: 'form-text', modifier: 'forminputtext', sassPath }) + +Demo({ title:'Input Text Success', storybook, activePath, tmpl: 'form-text-success', modifier: 'forminputtext', sassPath }) + +Demo({ title:'Input Text Error', storybook, activePath, tmpl: 'form-text-error', modifier: 'forminputtext', sassPath }) + +Demo({ title:'Input Text Disabled', storybook, activePath, tmpl: 'form-text-disabled', modifier: 'forminputtext', sassPath }) + +Demo({ title:'Input Text with Clear', storybook, activePath, tmpl: 'form-text-clear', modifier: 'forminputtext', sassPath }) + +Demo({ title:'Input Text with Clear Error', storybook, activePath, tmpl: 'form-text-clear-error', modifier: 'forminputtext', sassPath }) + +Demo({ title:'Input Text with Info Bulle', storybook, activePath, tmpl: 'form-text-bulle', modifier: 'forminputtext', sassPath }) + +Demo({ title:'Input Text with Info Bulle Success', storybook, activePath, tmpl: 'form-text-bulle-success', modifier: 'forminputtext', sassPath }) + +Demo({ title:'Input Text with Info Bulle Error', storybook, activePath, tmpl: 'form-text-bulle-error', modifier: 'forminputtext', sassPath }) + block style + +Colors({ colors }) + +PageMarkdown() + include:markdown-it ./markdown/style.md diff --git a/storybook/design-system/src/pages/molecules/form-text/index.scss b/storybook/design-system/src/pages/molecules/form-text/index.scss new file mode 100644 index 000000000..42218c397 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-text/index.scss @@ -0,0 +1,64 @@ +/* Style just for demo */ + +.#{$prefix}-demo { + &--forminputtext { + .#{$prefix}-demo { + &__display { + &--fullscreen { + .#{$prefix}-demo { + &__template { + margin: 2em; + } + } + } + } + + &__template { + background: $white; + padding: 1em; + } + } + } +} + +/* Corrections à reporter sur le toolkit */ + +.af-form { + &__clear { + &.glyphicon { + position: absolute; + top: .75rem; + } + } + + &__fields-inline { + align-items: flex-start; + justify-content: flex-start; + } + + &__text { + &-wrapper { + display: inline-flex; + align-items: center; + } + + &--success { + position: relative; + display: inline-block; + + &.af-form__text--hasinfobulle { + &::after { + position: absolute; + right: -30px; + } + } + + &::after { + position: absolute; + top: 10px; + right: -5px; + } + } + } + +} diff --git a/storybook/design-system/src/pages/molecules/form-text/markdown/guidelines.md b/storybook/design-system/src/pages/molecules/form-text/markdown/guidelines.md new file mode 100644 index 000000000..243a5262b --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-text/markdown/guidelines.md @@ -0,0 +1,36 @@ +## Tone of voice + +Quapropter a natura mihi **bold** potius quam ab indigentia orta amicitia, applicatione magis animi cum quodam sensu amandi quam cogitatione quantum illa res utilitatis esset habitura. Quod quidem quale sit, [link to Google!](http://google.com) quibusdam animadverti potest, quae ex se _italic_ ita amant ad quoddam tempus et ab eis ita amantur ut facile earum sensus appareat. + +- Quapropter a natura mihi videtur potius quam ab +- sit, etiam in bestiis quibusdam animadverti potest, +- quae ex se natos ita amant ad quoddam tempus . + +**Component** Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Usage + +| Component type | Purpose | +| ---------------- | -------------------- | +| Primary | Use for ... when ... | +| Secondary | Use for ... when ... | +| With icon | Use for ... when ... | +| Disabled version | Use for ... when ... | +| Light version | Use for ... when ... | + +## Label + +Component labels ... Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Icon usage + +- Use glyphs (16px) within buttons. +- Glyphs are distinguished by their solid shape and knocked-out details. +- Glyphs should always appear to the right of the text. +- Glyphs used in buttons must be directly related to the action that the user is taking. +- Glyphs must be the same color value as the text within a button. +- Ghost buttons require a glyph icon (cannot be stand alone text because of poor affordance). + +## Danger version usage + +Danger ... Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. diff --git a/storybook/design-system/src/pages/molecules/form-text/markdown/style.md b/storybook/design-system/src/pages/molecules/form-text/markdown/style.md new file mode 100644 index 000000000..a26bbdb68 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-text/markdown/style.md @@ -0,0 +1,18 @@ +## Imports SASS + +``` +@import '@axa-fr/react-toolkit-core/src/common/scss/core.scss'; +@import '@axa-fr/react-toolkit-form-input-text/dist/inputtext.scss'; +``` + +## Structure + +A Component Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Typography + +Component text should be set in sentence case, with only the first word in a phrase and any proper nouns capitalized. + +| Class | Font-size (px/rem) | Font-weight | Font-family | +| ----------------- | ------------------ | ----------- | ----------------------- | +| **.af-form-text** | 16 / 1 | 400 | Source Sans Pro Regular | diff --git a/storybook/design-system/src/pages/molecules/form-text/templates/form-text-bulle-error.pug b/storybook/design-system/src/pages/molecules/form-text/templates/form-text-bulle-error.pug new file mode 100644 index 000000000..829e0229c --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-text/templates/form-text-bulle-error.pug @@ -0,0 +1,8 @@ +extends ../../../../components/form/layouts/layout-form-field +include ../../../../components/form/mixins/mixin-form-field-text + +block label + label.af-form__group-label(for="inputtext1") Input text * + +block input + +formFieldText({hasInfobulle: true, modifier: 'error', modifierMessage:'error'}) diff --git a/storybook/design-system/src/pages/molecules/form-text/templates/form-text-bulle-success.pug b/storybook/design-system/src/pages/molecules/form-text/templates/form-text-bulle-success.pug new file mode 100644 index 000000000..f9be2596c --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-text/templates/form-text-bulle-success.pug @@ -0,0 +1,9 @@ +extends ../../../../components/form/layouts/layout-form-field +include ../../../../components/form/mixins/mixin-form-field-text + +block label + label.af-form__group-label(for="inputtext1") Input text * + +block input + +formFieldText({hasInfobulle: true, modifier: 'success'}) + diff --git a/storybook/design-system/src/pages/molecules/form-text/templates/form-text-bulle.pug b/storybook/design-system/src/pages/molecules/form-text/templates/form-text-bulle.pug new file mode 100644 index 000000000..7824332bc --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-text/templates/form-text-bulle.pug @@ -0,0 +1,8 @@ +extends ../../../../components/form/layouts/layout-form-field +include ../../../../components/form/mixins/mixin-form-field-text + +block label + label.af-form__group-label(for="inputtext1") Input text * + +block input + +formFieldText({hasInfobulle: true}) diff --git a/storybook/design-system/src/pages/molecules/form-text/templates/form-text-clear-error.pug b/storybook/design-system/src/pages/molecules/form-text/templates/form-text-clear-error.pug new file mode 100644 index 000000000..ada51fdc2 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-text/templates/form-text-clear-error.pug @@ -0,0 +1,9 @@ +extends ../../../../components/form/layouts/layout-form-field +include ../../../../components/form/mixins/mixin-form-field-text + +block label + label.af-form__group-label(for="inputtext1") Input text * + +block input + +formFieldText({hasInfobulle: true, hasClear: true, modifier: 'error', modifierMessage:'error'}) + diff --git a/storybook/design-system/src/pages/molecules/form-text/templates/form-text-clear.pug b/storybook/design-system/src/pages/molecules/form-text/templates/form-text-clear.pug new file mode 100644 index 000000000..435076c84 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-text/templates/form-text-clear.pug @@ -0,0 +1,8 @@ +extends ../../../../components/form/layouts/layout-form-field +include ../../../../components/form/mixins/mixin-form-field-text + +block label + label.af-form__group-label(for="inputtext1") Input text * + +block input + +formFieldText({hasInfobulle: true, hasClear: true}) diff --git a/storybook/design-system/src/pages/molecules/form-text/templates/form-text-disabled.pug b/storybook/design-system/src/pages/molecules/form-text/templates/form-text-disabled.pug new file mode 100644 index 000000000..eb1ddaad1 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-text/templates/form-text-disabled.pug @@ -0,0 +1,9 @@ + +extends ../../../../components/form/layouts/layout-form-field +include ../../../../components/form/mixins/mixin-form-field-text + +block label + label.af-form__group-label(for="inputtext1") Input text * + +block input + +formFieldText({modifier: 'disabled', disabled: true }) diff --git a/storybook/design-system/src/pages/molecules/form-text/templates/form-text-error.pug b/storybook/design-system/src/pages/molecules/form-text/templates/form-text-error.pug new file mode 100644 index 000000000..d0f3b6d44 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-text/templates/form-text-error.pug @@ -0,0 +1,8 @@ +extends ../../../../components/form/layouts/layout-form-field +include ../../../../components/form/mixins/mixin-form-field-text + +block label + label.af-form__group-label(for="inputtext1") Input text * + +block input + +formFieldText({modifier:'error',modifierMessage:'error', iconMessage:'exclamation-sign', textMessage:"Message d'erreur"}) diff --git a/storybook/design-system/src/pages/molecules/form-text/templates/form-text-success.pug b/storybook/design-system/src/pages/molecules/form-text/templates/form-text-success.pug new file mode 100644 index 000000000..d1d3e4bca --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-text/templates/form-text-success.pug @@ -0,0 +1,8 @@ +extends ../../../../components/form/layouts/layout-form-field +include ../../../../components/form/mixins/mixin-form-field-text + +block label + label.af-form__group-label(for="inputtext1") Input text * + +block input + +formFieldText({modifier: 'success'}) diff --git a/storybook/design-system/src/pages/molecules/form-text/templates/form-text.pug b/storybook/design-system/src/pages/molecules/form-text/templates/form-text.pug new file mode 100644 index 000000000..c0bfe8c4f --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-text/templates/form-text.pug @@ -0,0 +1,8 @@ +extends ../../../../components/form/layouts/layout-form-field +include ../../../../components/form/mixins/mixin-form-field-text + +block label + label.af-form__group-label(for="inputtext1") Input text * + +block input + +formFieldText({}) diff --git a/storybook/design-system/src/pages/molecules/form-textarea/data.json b/storybook/design-system/src/pages/molecules/form-textarea/data.json new file mode 100644 index 000000000..7bf1f3e5e --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-textarea/data.json @@ -0,0 +1,35 @@ +{ + "metatitle": "Form Input Textarea Component UI - Slash Design System", + "metadescription": "UI Component Form Input Textarea for design system Axa. Toolkit Axa is the design system for Axa web and product. It is a series of individual styles, components, and guidelines used for creating unified UI.", + "metakeywords": "Form Input Textarea design system, ui Form Input Textarea, design system axa, design system ui, design system react, design", + "github": "Form/Input/textarea", + "storybook": "form-input-textarea--textareainput", + "badge": "%40axa-fr%2Freact-toolkit-form-input-textarea", + "colors": [ + { + "name": "BLEU AXA", + "sass": "$color-axa", + "hex": "#00008f" + }, + { + "name": "BLEU Action", + "sass": "$color-azur", + "hex": "#3032c1" + }, + { + "name": "BLEU Action focus", + "sass": "$color-azur-focused", + "hex": "#aaabf9" + }, + { + "name": "Mercury", + "sass": "$color-mercury", + "hex": "#e5e5e5" + }, + { + "name": "Silver", + "sass": " $color-silver", + "hex": "#cccccc" + } + ] +} diff --git a/storybook/design-system/src/pages/molecules/form-textarea/index.pug b/storybook/design-system/src/pages/molecules/form-textarea/index.pug new file mode 100644 index 000000000..ce342297c --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-textarea/index.pug @@ -0,0 +1,34 @@ +extends ../../../commons/layout + +block meta + -var activePath = '/molecules/form-textarea'; + -const { metatitle, metadescription, metakeywords, github, storybook, badge, colors } = require(`../src/pages${activePath}/data.json`) + -var sassPath = 'react-toolkit-form-input-textarea/dist/textarea.scss' + -var metaTitle = metatitle + -var metaDescription = metadescription + -var metaKeywords = metakeywords + -var basedir='../../' + +block vars + - var id = "component" + +block menu + +Menu({ activePath }) + +block page + +PageTitle({ title: 'Form Textarea', subtitle: 'Molecule' }) + .tk-page__links + +PageSummary() + +PageLinks({github, storybook, badge}) + +PageContentComponent() + block guidelines + +PageMarkdown() + include:markdown-it ./markdown/guidelines.md + block code + +Demo({ title:'Classic Input Textarea', storybook, activePath, tmpl: 'form-textarea', modifier: 'forminputtext', sassPath }) + +Demo({ title:'Input Textarea Success', storybook, activePath, tmpl: 'form-textarea-success', modifier: 'forminputtext', sassPath }) + +Demo({ title:'Input Textarea Error', storybook, activePath, tmpl: 'form-textarea-error', modifier: 'forminputtext', sassPath }) + block style + +Colors({ colors }) + +PageMarkdown() + include:markdown-it ./markdown/style.md diff --git a/storybook/design-system/src/pages/molecules/form-textarea/markdown/guidelines.md b/storybook/design-system/src/pages/molecules/form-textarea/markdown/guidelines.md new file mode 100644 index 000000000..243a5262b --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-textarea/markdown/guidelines.md @@ -0,0 +1,36 @@ +## Tone of voice + +Quapropter a natura mihi **bold** potius quam ab indigentia orta amicitia, applicatione magis animi cum quodam sensu amandi quam cogitatione quantum illa res utilitatis esset habitura. Quod quidem quale sit, [link to Google!](http://google.com) quibusdam animadverti potest, quae ex se _italic_ ita amant ad quoddam tempus et ab eis ita amantur ut facile earum sensus appareat. + +- Quapropter a natura mihi videtur potius quam ab +- sit, etiam in bestiis quibusdam animadverti potest, +- quae ex se natos ita amant ad quoddam tempus . + +**Component** Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Usage + +| Component type | Purpose | +| ---------------- | -------------------- | +| Primary | Use for ... when ... | +| Secondary | Use for ... when ... | +| With icon | Use for ... when ... | +| Disabled version | Use for ... when ... | +| Light version | Use for ... when ... | + +## Label + +Component labels ... Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Icon usage + +- Use glyphs (16px) within buttons. +- Glyphs are distinguished by their solid shape and knocked-out details. +- Glyphs should always appear to the right of the text. +- Glyphs used in buttons must be directly related to the action that the user is taking. +- Glyphs must be the same color value as the text within a button. +- Ghost buttons require a glyph icon (cannot be stand alone text because of poor affordance). + +## Danger version usage + +Danger ... Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. diff --git a/storybook/design-system/src/pages/molecules/form-textarea/markdown/style.md b/storybook/design-system/src/pages/molecules/form-textarea/markdown/style.md new file mode 100644 index 000000000..b6cd72e44 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-textarea/markdown/style.md @@ -0,0 +1,18 @@ +## Imports SASS + +``` +@import '@axa-fr/react-toolkit-core/src/common/scss/core.scss'; +@import '@axa-fr/react-toolkit-form-input-textarea/dist/textarea.scss'; +``` + +## Structure + +A Component Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Typography + +Component text should be set in sentence case, with only the first word in a phrase and any proper nouns capitalized. + +| Class | Font-size (px/rem) | Font-weight | Font-family | +| --------------------- | ------------------ | ----------- | ----------------------- | +| **.af-form-textarea** | 16 / 1 | 400 | Source Sans Pro Regular | diff --git a/storybook/design-system/src/pages/molecules/form-textarea/templates/form-textarea-disabled.pug b/storybook/design-system/src/pages/molecules/form-textarea/templates/form-textarea-disabled.pug new file mode 100644 index 000000000..57a6f8063 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-textarea/templates/form-textarea-disabled.pug @@ -0,0 +1,8 @@ +extends ../../../../components/form/layouts/layout-form-textarea + +block label + label.af-form__group-label(for="textarea1") Input Textarea * + +block input + .af-form__textarea.af-form__textarea--disabled + textarea.af-form__input-textarea(name="textarea1" rows="5" cols="50" placeholder="Texte long long long" disabled) diff --git a/storybook/design-system/src/pages/molecules/form-textarea/templates/form-textarea-error.pug b/storybook/design-system/src/pages/molecules/form-textarea/templates/form-textarea-error.pug new file mode 100644 index 000000000..eb926a79c --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-textarea/templates/form-textarea-error.pug @@ -0,0 +1,10 @@ +extends ../../../../components/form/layouts/layout-form-textarea +include ../../../../components/form/mixins/mixin-form-message + +block label + label.af-form__group-label(for="textarea1") Input Textarea * + +block input + .af-form__textarea.af-form__textarea--error + textarea.af-form__input-textarea(name="textarea1" rows="5" cols="50" placeholder="Texte long long long") + +formMessage({modifierMessage: 'error', textMessage:"Message d'erreur", iconMessage: 'exclamation-sign'}) diff --git a/storybook/design-system/src/pages/molecules/form-textarea/templates/form-textarea-success.pug b/storybook/design-system/src/pages/molecules/form-textarea/templates/form-textarea-success.pug new file mode 100644 index 000000000..45fd1f913 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-textarea/templates/form-textarea-success.pug @@ -0,0 +1,8 @@ +extends ../../../../components/form/layouts/layout-form-textarea + +block label + label.af-form__group-label(for="textarea1") Input Textarea * + +block input + .af-form__textarea.af-form__textarea--success + textarea.af-form__input-textarea(name="textarea1" rows="5" cols="50" placeholder="Texte long long long") diff --git a/storybook/design-system/src/pages/molecules/form-textarea/templates/form-textarea.pug b/storybook/design-system/src/pages/molecules/form-textarea/templates/form-textarea.pug new file mode 100644 index 000000000..2b996bf24 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/form-textarea/templates/form-textarea.pug @@ -0,0 +1,8 @@ +extends ../../../../components/form/layouts/layout-form-textarea + +block label + label.af-form__group-label(for="textarea1") Input Textarea * + +block input + .af-form__textarea + textarea.af-form__input-textarea(name="textarea1" rows="5" cols="50" placeholder="Texte long long long") diff --git a/storybook/design-system/src/pages/molecules/navigation/data.json b/storybook/design-system/src/pages/molecules/navigation/data.json new file mode 100644 index 000000000..2181a9b07 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/navigation/data.json @@ -0,0 +1,25 @@ +{ + "metatitle": "Navigation Component UI - Slash Design System", + "metadescription": "UI Component Navigation for design system Axa. Toolkit Axa is the design system for Axa web and product. It is a series of individual styles, components, and guidelines used for creating unified UI.", + "metakeywords": "Navigation design system, ui Navigation, design system axa, design system ui, design system react, design", + "github": "Layout/header/src/NavBar", + "storybook": "layout-header-navbar--navbarbase", + "badge": "%40axa-fr%2Freact-toolkit-layout-header", + "colors": [ + { + "name": "BLEU AXA", + "sass": "$color-axa", + "hex": "#00008f" + }, + { + "name": "BLEU Action", + "sass": "$color-azur", + "hex": "#3032c1" + }, + { + "name": "BLEU Action focus", + "sass": "$color-azur-focused", + "hex": "#aaabf9" + } + ] +} diff --git a/storybook/design-system/src/pages/molecules/navigation/index.pug b/storybook/design-system/src/pages/molecules/navigation/index.pug new file mode 100644 index 000000000..a6bee1901 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/navigation/index.pug @@ -0,0 +1,32 @@ +extends ../../../commons/layout + +block meta + -var activePath = '/molecules/navigation'; + -const { metatitle, metadescription, metakeywords, github, storybook, badge, colors } = require(`../src/pages${activePath}/data.json`) + -var sassPath = 'react-toolkit-layout-header/dist/NavBar/nav.scss' + -var metaTitle = metatitle + -var metaDescription = metadescription + -var metaKeywords = metakeywords + -var basedir='../../' + +block vars + - var id = "component" + +block menu + +Menu({ activePath }) + +block page + +PageTitle({ title: 'Navigation', subtitle: 'Molecule' }) + .tk-page__links + +PageSummary() + +PageLinks({github, storybook, badge}) + +PageContentComponent() + block guidelines + +PageMarkdown() + include:markdown-it ./markdown/guidelines.md + block code + +Demo({ title:'Classic Navigation', storybook, activePath, tmpl: 'classic', sassPath }) + block style + +Colors({ colors }) + +PageMarkdown() + include:markdown-it ./markdown/style.md diff --git a/storybook/design-system/src/pages/molecules/navigation/markdown/guidelines.md b/storybook/design-system/src/pages/molecules/navigation/markdown/guidelines.md new file mode 100644 index 000000000..243a5262b --- /dev/null +++ b/storybook/design-system/src/pages/molecules/navigation/markdown/guidelines.md @@ -0,0 +1,36 @@ +## Tone of voice + +Quapropter a natura mihi **bold** potius quam ab indigentia orta amicitia, applicatione magis animi cum quodam sensu amandi quam cogitatione quantum illa res utilitatis esset habitura. Quod quidem quale sit, [link to Google!](http://google.com) quibusdam animadverti potest, quae ex se _italic_ ita amant ad quoddam tempus et ab eis ita amantur ut facile earum sensus appareat. + +- Quapropter a natura mihi videtur potius quam ab +- sit, etiam in bestiis quibusdam animadverti potest, +- quae ex se natos ita amant ad quoddam tempus . + +**Component** Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Usage + +| Component type | Purpose | +| ---------------- | -------------------- | +| Primary | Use for ... when ... | +| Secondary | Use for ... when ... | +| With icon | Use for ... when ... | +| Disabled version | Use for ... when ... | +| Light version | Use for ... when ... | + +## Label + +Component labels ... Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Icon usage + +- Use glyphs (16px) within buttons. +- Glyphs are distinguished by their solid shape and knocked-out details. +- Glyphs should always appear to the right of the text. +- Glyphs used in buttons must be directly related to the action that the user is taking. +- Glyphs must be the same color value as the text within a button. +- Ghost buttons require a glyph icon (cannot be stand alone text because of poor affordance). + +## Danger version usage + +Danger ... Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. diff --git a/storybook/design-system/src/pages/molecules/navigation/markdown/style.md b/storybook/design-system/src/pages/molecules/navigation/markdown/style.md new file mode 100644 index 000000000..8cfeb1141 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/navigation/markdown/style.md @@ -0,0 +1,18 @@ +## Imports SASS + +``` +@import '@axa-fr/react-toolkit-core/src/common/scss/core.scss'; +@import '@axa-fr/react-toolkit-layout-header/dist/NavBar/nav.scss'; +``` + +## Structure + +A Component Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Typography + +Component text should be set in sentence case, with only the first word in a phrase and any proper nouns capitalized. + +| Class | Font-size (px/rem) | Font-weight | Font-family | +| ----------- | ------------------ | ----------- | ----------------------- | +| **.af-nav** | 16 / 1 | 400 | Source Sans Pro Regular | diff --git a/storybook/design-system/src/pages/molecules/navigation/templates/classic.pug b/storybook/design-system/src/pages/molecules/navigation/templates/classic.pug new file mode 100644 index 000000000..8afb6305a --- /dev/null +++ b/storybook/design-system/src/pages/molecules/navigation/templates/classic.pug @@ -0,0 +1,18 @@ +-const menu = [{ "label":"Home", "href":"/home", "active": true }, { "label":"Forms", "href":"/form" }, { "label":"Fileupload", "href":"/fileupload" }, { "label":"Table", "href":"/table" }, { "label":"Accordions", "href":"/collapse" }, { "label":" Drag n drop", "href":"/table" }, { "label":"Alerts", "href":"/alert" }, { "label":"Validation", "href":"/contributing" }, { "label":"Doc", "href":"/doc", "children": [ { "label":"Sous lien", "href":"/doc/sous-lien" }, { "label":"Sous lien 2", "href":"/doc/sous-lien2" }, { "label":"Sous lien 3", "href":"/doc/sous-lien3" }, { "label":"Sous lien 4", "href":"/doc/sous-lien4" }] } ] +.af-nav-container + button.mask.fade.show(type="button") + nav.af-nav.af-drawer.left.show(role="navigation" aria-label="Menu principal") + .af-container.af-nav__wrapper + .af-nav__aside-header + h4.af-nav__aside-title Menu + a.af-nav__aside-close(href="#" role="button" aria-haspopup="true" aria-controls="idmenu" id="menubutton") × + ul.af-nav__list(role="menubar" aria-labelledby="menubutton" id="idmenu") + each item, index in menu + li.af-nav__item(role="none" class=(item.active) ? "af-nav__item--active" : "" class=(item.children) ? "af-nav__item--haschild" : "") + a.af-nav__link(role="menuitem" href=item.href tabindex=(index === 0) ? "0" : "-1" aria-haspopup=(item.children) ? true : false aria-expanded=(item.children) ? true : false) #{item.label} + if item.children + i.glyphicon.glyphicon-arrow-xs-down + ul.af-nav__list.af-nav__list--children(role="menu" aria-label=item.label) + each child in item.children + li.af-nav__item(role="none" class=(child.active) ? "af-nav__item--active" : "") + a.af-nav__link(role="menuitem" href=child.href tabindex="-1") #{child.label} diff --git a/storybook/design-system/src/pages/molecules/pager/data.json b/storybook/design-system/src/pages/molecules/pager/data.json new file mode 100644 index 000000000..2e4fbed58 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/pager/data.json @@ -0,0 +1,70 @@ +{ + "metatitle": "Pager Component UI - Slash Design System", + "metadescription": "UI Component Pager for design system Axa. Toolkit Axa is the design system for Axa web and product. It is a series of individual styles, components, and guidelines used for creating unified UI.", + "metakeywords": "Pager design system, ui Pager, design system axa, design system ui, design system react, design", + "github": "table/src/Pager", + "storybook": "table-pager--default", + "badge": "%40axa-fr%2Freact-toolkit-table", + "colors": [ + { + "name": "BLEU AXA", + "sass": "$color-axa", + "hex": "#00008f" + }, + { + "name": "BLEU Action", + "sass": "$color-azur", + "hex": "#3032c1" + }, + { + "name": "BLEU Action focus", + "sass": "$color-azur-focused", + "hex": "#aaabf9" + }, + { + "name": "Mercury", + "sass": "$color-mercury", + "hex": "#e5e5e5" + }, + { + "name": "Silver", + "sass": " $color-silver", + "hex": "#cccccc" + }, + { + "name": "Button Disabled", + "sass": " $color-btn-disabled", + "hex": "#c9c9c9" + }, + { + "name": "Button success", + "sass": " $color-btn-success", + "hex": " #1cc578" + }, + { + "name": "Button success dark", + "sass": " $color-btn-success-dark", + "hex": " #0d844e" + }, + { + "name": "Button success focuced", + "sass": " $color-btn-success-focused", + "hex": " #bdffe1" + }, + { + "name": "Button danger", + "sass": " $color-btn-danger", + "hex": " #f02849" + }, + { + "name": "Button danger dark", + "sass": " $color-btn-danger-dark", + "hex": " #8f182c" + }, + { + "name": "Button danger focuced", + "sass": " $color-btn-danger-focused", + "hex": " #ffa0af" + } + ] +} diff --git a/storybook/design-system/src/pages/molecules/pager/index.pug b/storybook/design-system/src/pages/molecules/pager/index.pug new file mode 100644 index 000000000..387bd10ba --- /dev/null +++ b/storybook/design-system/src/pages/molecules/pager/index.pug @@ -0,0 +1,32 @@ +extends ../../../commons/layout + +block meta + -var activePath = '/molecules/pager'; + -const { metatitle, metadescription, metakeywords, github, storybook, badge, colors } = require(`../src/pages${activePath}/data.json`) + -var sassPath = 'react-toolkit-table/dist/Pager/pager.scss' + -var metaTitle = metatitle + -var metaDescription = metadescription + -var metaKeywords = metakeywords + -var basedir='../../' + +block vars + - var id = "component" + +block menu + +Menu({ activePath }) + +block page + +PageTitle({ title: 'Pager', subtitle: 'Molecule' }) + .tk-page__links + +PageSummary() + +PageLinks({github, storybook, badge}) + +PageContentComponent() + block guidelines + +PageMarkdown() + include:markdown-it ./markdown/guidelines.md + block code + +Demo({ title:'Classic TitleBar', storybook, activePath, tmpl: 'classic', sassPath }) + block style + +Colors({ colors }) + +PageMarkdown() + include:markdown-it ./markdown/style.md diff --git a/storybook/design-system/src/pages/molecules/pager/markdown/guidelines.md b/storybook/design-system/src/pages/molecules/pager/markdown/guidelines.md new file mode 100644 index 000000000..243a5262b --- /dev/null +++ b/storybook/design-system/src/pages/molecules/pager/markdown/guidelines.md @@ -0,0 +1,36 @@ +## Tone of voice + +Quapropter a natura mihi **bold** potius quam ab indigentia orta amicitia, applicatione magis animi cum quodam sensu amandi quam cogitatione quantum illa res utilitatis esset habitura. Quod quidem quale sit, [link to Google!](http://google.com) quibusdam animadverti potest, quae ex se _italic_ ita amant ad quoddam tempus et ab eis ita amantur ut facile earum sensus appareat. + +- Quapropter a natura mihi videtur potius quam ab +- sit, etiam in bestiis quibusdam animadverti potest, +- quae ex se natos ita amant ad quoddam tempus . + +**Component** Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Usage + +| Component type | Purpose | +| ---------------- | -------------------- | +| Primary | Use for ... when ... | +| Secondary | Use for ... when ... | +| With icon | Use for ... when ... | +| Disabled version | Use for ... when ... | +| Light version | Use for ... when ... | + +## Label + +Component labels ... Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Icon usage + +- Use glyphs (16px) within buttons. +- Glyphs are distinguished by their solid shape and knocked-out details. +- Glyphs should always appear to the right of the text. +- Glyphs used in buttons must be directly related to the action that the user is taking. +- Glyphs must be the same color value as the text within a button. +- Ghost buttons require a glyph icon (cannot be stand alone text because of poor affordance). + +## Danger version usage + +Danger ... Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. diff --git a/storybook/design-system/src/pages/molecules/pager/markdown/style.md b/storybook/design-system/src/pages/molecules/pager/markdown/style.md new file mode 100644 index 000000000..41b2ace6b --- /dev/null +++ b/storybook/design-system/src/pages/molecules/pager/markdown/style.md @@ -0,0 +1,18 @@ +## Imports SASS + +``` +@import '@axa-fr/react-toolkit-core/src/common/scss/core.scss'; +@import '@axa-fr/react-toolkit-table/dist/Pager/pager.scss'; +``` + +## Structure + +A Component Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Typography + +Component text should be set in sentence case, with only the first word in a phrase and any proper nouns capitalized. + +| Class | Font-size (px/rem) | Font-weight | Font-family | +| ------------- | ------------------ | ----------- | ----------------------- | +| **.af-pager** | 16 / 1 | 400 | Source Sans Pro Regular | diff --git a/storybook/design-system/src/pages/molecules/pager/templates/classic.pug b/storybook/design-system/src/pages/molecules/pager/templates/classic.pug new file mode 100644 index 000000000..4e28c9a57 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/pager/templates/classic.pug @@ -0,0 +1,24 @@ + +nav.af-pager + ul.af-pager__pagination + li.af-pager__item + a.af-pager__item-link(href="#") + span.af-pager__item-icon « + span.af-pager__item-text Précédent + li.af-pager__item + a.af-pager__item-link(href="#") 1 + li.af-pager__item.af-pager__item--disabled + span.af-pager__item-link ... + li.af-pager__item + a.af-pager__item-link(href="#") 4 + li.af-pager__item.af-pager__item--active + a.af-pager__item-link(href="#") 5 + li.af-pager__item + a.af-pager__item-link(href="#") 6 + li.af-pager__item.af-pager__item--disabled ... + li.af-pager__item + a.af-pager__item-link(href="#") 23 + li.af-pager__item + a.af-pager__item-link(href="#") + span.af-pager__item-text Suivant + span.af-pager__item-icon » diff --git a/storybook/design-system/src/pages/molecules/steps-new/data.json b/storybook/design-system/src/pages/molecules/steps-new/data.json new file mode 100644 index 000000000..aba030810 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/steps-new/data.json @@ -0,0 +1,70 @@ +{ + "metatitle": "Steps Component UI - Slash Design System", + "metadescription": "UI Component Steps for design system Axa. Toolkit Axa is the design system for Axa web and product. It is a series of individual styles, components, and guidelines used for creating unified UI.", + "metakeywords": "Steps design system, ui Steps, design system axa, design system ui, design system react, design", + "github": "Form/steps", + "storybook": "form-steps--new", + "badge": "%40axa-fr%2Freact-toolkit-form-steps", + "colors": [ + { + "name": "BLEU AXA", + "sass": "$color-axa", + "hex": "#00008f" + }, + { + "name": "BLEU Action", + "sass": "$color-azur", + "hex": "#3032c1" + }, + { + "name": "BLEU Action focus", + "sass": "$color-azur-focused", + "hex": "#aaabf9" + }, + { + "name": "Mercury", + "sass": "$color-mercury", + "hex": "#e5e5e5" + }, + { + "name": "Silver", + "sass": " $color-silver", + "hex": "#cccccc" + }, + { + "name": "Button Disabled", + "sass": " $color-btn-disabled", + "hex": "#c9c9c9" + }, + { + "name": "Button success", + "sass": " $color-btn-success", + "hex": " #1cc578" + }, + { + "name": "Button success dark", + "sass": " $color-btn-success-dark", + "hex": " #0d844e" + }, + { + "name": "Button success focuced", + "sass": " $color-btn-success-focused", + "hex": " #bdffe1" + }, + { + "name": "Button danger", + "sass": " $color-btn-danger", + "hex": " #f02849" + }, + { + "name": "Button danger dark", + "sass": " $color-btn-danger-dark", + "hex": " #8f182c" + }, + { + "name": "Button danger focuced", + "sass": " $color-btn-danger-focused", + "hex": " #ffa0af" + } + ] +} \ No newline at end of file diff --git a/storybook/design-system/src/pages/molecules/steps-new/index.pug b/storybook/design-system/src/pages/molecules/steps-new/index.pug new file mode 100644 index 000000000..621b38c48 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/steps-new/index.pug @@ -0,0 +1,34 @@ +extends ../../../commons/layout + +block meta + -var activePath = '/molecules/steps-new'; + -const { metatitle, metadescription, metakeywords, github, storybook, badge, colors } = require(`../src/pages${activePath}/data.json`) + -var sassPath = 'react-toolkit-form-steps/dist/step-form-new.scss' + -var metaTitle = metatitle + -var metaDescription = metadescription + -var metaKeywords = metakeywords + -var basedir='../../' + +block vars + - var id = "component" + +block menu + +Menu({ activePath }) + +block page + +PageTitle({ title: 'New Steps', subtitle: 'Molecule' }) + .tk-page__links + +PageSummary() + +PageLinks({github, storybook, badge}) + +PageContentComponent() + block guidelines + +PageMarkdown() + include:markdown-it ./markdown/guidelines.md + block code + +Demo({ title:'Classic New Steps', storybook, activePath, tmpl: 'steps-new', sassPath }) + +Demo({ title:'New Steps with more steps', storybook, activePath, tmpl: 'steps-new-sample2', sassPath }) + +Demo({ title:'New Steps with icon', storybook, activePath, tmpl: 'steps-new-sample3', sassPath }) + block style + +Colors({ colors }) + +PageMarkdown() + include:markdown-it ./markdown/style.md diff --git a/storybook/design-system/src/pages/molecules/steps-new/index.scss b/storybook/design-system/src/pages/molecules/steps-new/index.scss new file mode 100644 index 000000000..968b6fa9c --- /dev/null +++ b/storybook/design-system/src/pages/molecules/steps-new/index.scss @@ -0,0 +1,9 @@ +/* Correction Toolkit */ + +@include media-breakpoint-up(md) { + .af-title-bar { + &__mobile-menu { + display: none; + } + } +} diff --git a/storybook/design-system/src/pages/molecules/steps-new/markdown/guidelines.md b/storybook/design-system/src/pages/molecules/steps-new/markdown/guidelines.md new file mode 100644 index 000000000..243a5262b --- /dev/null +++ b/storybook/design-system/src/pages/molecules/steps-new/markdown/guidelines.md @@ -0,0 +1,36 @@ +## Tone of voice + +Quapropter a natura mihi **bold** potius quam ab indigentia orta amicitia, applicatione magis animi cum quodam sensu amandi quam cogitatione quantum illa res utilitatis esset habitura. Quod quidem quale sit, [link to Google!](http://google.com) quibusdam animadverti potest, quae ex se _italic_ ita amant ad quoddam tempus et ab eis ita amantur ut facile earum sensus appareat. + +- Quapropter a natura mihi videtur potius quam ab +- sit, etiam in bestiis quibusdam animadverti potest, +- quae ex se natos ita amant ad quoddam tempus . + +**Component** Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Usage + +| Component type | Purpose | +| ---------------- | -------------------- | +| Primary | Use for ... when ... | +| Secondary | Use for ... when ... | +| With icon | Use for ... when ... | +| Disabled version | Use for ... when ... | +| Light version | Use for ... when ... | + +## Label + +Component labels ... Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Icon usage + +- Use glyphs (16px) within buttons. +- Glyphs are distinguished by their solid shape and knocked-out details. +- Glyphs should always appear to the right of the text. +- Glyphs used in buttons must be directly related to the action that the user is taking. +- Glyphs must be the same color value as the text within a button. +- Ghost buttons require a glyph icon (cannot be stand alone text because of poor affordance). + +## Danger version usage + +Danger ... Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. diff --git a/storybook/design-system/src/pages/molecules/steps-new/markdown/style.md b/storybook/design-system/src/pages/molecules/steps-new/markdown/style.md new file mode 100644 index 000000000..6a392384d --- /dev/null +++ b/storybook/design-system/src/pages/molecules/steps-new/markdown/style.md @@ -0,0 +1,18 @@ +## Imports SASS + +``` +@import '@axa-fr/react-toolkit-core/src/common/scss/core.scss'; +@import '@axa-fr/react-toolkit-form-steps/dist/step-form-new.scss'; +``` + +## Structure + +A Component Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Typography + +Component text should be set in sentence case, with only the first word in a phrase and any proper nouns capitalized. + +| Class | Font-size (px/rem) | Font-weight | Font-family | +| ----------------- | ------------------ | ----------- | ----------------------- | +| **.af-steps-new** | 16 / 1 | 400 | Source Sans Pro Regular | diff --git a/storybook/design-system/src/pages/molecules/steps-new/templates/steps-new-sample2.pug b/storybook/design-system/src/pages/molecules/steps-new/templates/steps-new-sample2.pug new file mode 100644 index 000000000..83d5df2bc --- /dev/null +++ b/storybook/design-system/src/pages/molecules/steps-new/templates/steps-new-sample2.pug @@ -0,0 +1,27 @@ +.af-steps-new + ol.af-steps-list + li.af-steps-list-step.past(title="Etape 1") + .af-steps-list-stepLabel + .af-steps-list-stepNumber 1 + .af-steps-list-stepTitle Previous step + i.glyphicon.glyphicon-arrow-rounded-right + li.af-steps-list-step.past(title="Etape 2") + .af-steps-list-stepLabel + .af-steps-list-stepNumber 2 + .af-steps-list-stepTitle Previous step + i.glyphicon.glyphicon-arrow-rounded-right + li.af-steps-list-step.on(title="Etape 3") + .af-steps-list-stepLabel + .af-steps-list-stepNumber 3 + .af-steps-list-stepTitle Current step + i.glyphicon.glyphicon-arrow-rounded-right + li.af-steps-list-step.disabled(title="Etape 3") + .af-steps-list-stepLabel + .af-steps-list-stepNumber 4 + .af-steps-list-stepTitle Next step + i.glyphicon.glyphicon-arrow-rounded-right + li.af-steps-list-step.disabled(title="Etape finale") + .af-steps-list-stepLabel + .af-steps-list-stepNumber   + i.glyphicon.glyphicon-ok + .af-steps-list-stepTitle Confirmation \ No newline at end of file diff --git a/storybook/design-system/src/pages/molecules/steps-new/templates/steps-new-sample3.pug b/storybook/design-system/src/pages/molecules/steps-new/templates/steps-new-sample3.pug new file mode 100644 index 000000000..26888ff4b --- /dev/null +++ b/storybook/design-system/src/pages/molecules/steps-new/templates/steps-new-sample3.pug @@ -0,0 +1,27 @@ +.af-steps-new + ol.af-steps-list + li.af-steps-list-step.past(title="Etape 1") + .af-steps-list-stepLabel + .af-steps-list-stepNumber 1 + .af-steps-list-stepTitle Previous step + i.glyphicon.glyphicon-arrow-rounded-right + li.af-steps-list-step.past(title="Etape 2") + .af-steps-list-stepLabel + .af-steps-list-stepNumber 2 + .af-steps-list-stepTitle Previous step + i.glyphicon.glyphicon-arrow-rounded-right + li.af-steps-list-step.past(title="Etape 3") + .af-steps-list-stepLabel + .af-steps-list-stepNumber 3 + .af-steps-list-stepTitle Previous step + i.glyphicon.glyphicon-arrow-rounded-right + li.af-steps-list-step.past(title="Etape 3") + .af-steps-list-stepLabel + .af-steps-list-stepNumber 4 + .af-steps-list-stepTitle Previous step + i.glyphicon.glyphicon-arrow-rounded-right + li.af-steps-list-step.on(title="Etape finale") + .af-steps-list-stepLabel + .af-steps-list-stepNumber   + i.glyphicon.glyphicon-ok.glyphicon-success + .af-steps-list-stepTitle Confirmation \ No newline at end of file diff --git a/storybook/design-system/src/pages/molecules/steps-new/templates/steps-new.pug b/storybook/design-system/src/pages/molecules/steps-new/templates/steps-new.pug new file mode 100644 index 000000000..d10fffb53 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/steps-new/templates/steps-new.pug @@ -0,0 +1,17 @@ +.af-steps-new + ol.af-steps-list + li.af-steps-list-step.on(title="Etape 1") + .af-steps-list-stepLabel + .af-steps-list-stepNumber 1 + .af-steps-list-stepTitle Current step + i.glyphicon.glyphicon-arrow-rounded-right + li.af-steps-list-step.disabled(title="Etape 2") + .af-steps-list-stepLabel + .af-steps-list-stepNumber 2 + .af-steps-list-stepTitle Next step + i.glyphicon.glyphicon-arrow-rounded-right + li.af-steps-list-step.disabled(title="Etape finale") + .af-steps-list-stepLabel + .af-steps-list-stepNumber   + i.glyphicon.glyphicon-ok + .af-steps-list-stepTitle Confirmation diff --git a/storybook/design-system/src/pages/molecules/steps/data.json b/storybook/design-system/src/pages/molecules/steps/data.json new file mode 100644 index 000000000..bfd6c7e7b --- /dev/null +++ b/storybook/design-system/src/pages/molecules/steps/data.json @@ -0,0 +1,70 @@ +{ + "metatitle": "Steps Component UI - Slash Design System", + "metadescription": "UI Component Steps for design system Axa. Toolkit Axa is the design system for Axa web and product. It is a series of individual styles, components, and guidelines used for creating unified UI.", + "metakeywords": "Steps design system, ui Steps, design system axa, design system ui, design system react, design", + "github": "Form/steps", + "storybook": "form-steps--default", + "badge": "%40axa-fr%2Freact-toolkit-form-steps", + "colors": [ + { + "name": "BLEU AXA", + "sass": "$color-axa", + "hex": "#00008f" + }, + { + "name": "BLEU Action", + "sass": "$color-azur", + "hex": "#3032c1" + }, + { + "name": "BLEU Action focus", + "sass": "$color-azur-focused", + "hex": "#aaabf9" + }, + { + "name": "Mercury", + "sass": "$color-mercury", + "hex": "#e5e5e5" + }, + { + "name": "Silver", + "sass": " $color-silver", + "hex": "#cccccc" + }, + { + "name": "Button Disabled", + "sass": " $color-btn-disabled", + "hex": "#c9c9c9" + }, + { + "name": "Button success", + "sass": " $color-btn-success", + "hex": " #1cc578" + }, + { + "name": "Button success dark", + "sass": " $color-btn-success-dark", + "hex": " #0d844e" + }, + { + "name": "Button success focuced", + "sass": " $color-btn-success-focused", + "hex": " #bdffe1" + }, + { + "name": "Button danger", + "sass": " $color-btn-danger", + "hex": " #f02849" + }, + { + "name": "Button danger dark", + "sass": " $color-btn-danger-dark", + "hex": " #8f182c" + }, + { + "name": "Button danger focuced", + "sass": " $color-btn-danger-focused", + "hex": " #ffa0af" + } + ] +} \ No newline at end of file diff --git a/storybook/design-system/src/pages/molecules/steps/index.pug b/storybook/design-system/src/pages/molecules/steps/index.pug new file mode 100644 index 000000000..c07645a58 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/steps/index.pug @@ -0,0 +1,32 @@ +extends ../../../commons/layout + +block meta + -var activePath = '/molecules/steps'; + -const { metatitle, metadescription, metakeywords, github, storybook, badge, colors } = require(`../src/pages${activePath}/data.json`) + -var sassPath = 'react-toolkit-form-steps/dist/step-form.scss' + -var metaTitle = metatitle + -var metaDescription = metadescription + -var metaKeywords = metakeywords + -var basedir='../../' + +block vars + - var id = "component" + +block menu + +Menu({ activePath }) + +block page + +PageTitle({ title: 'Steps', subtitle: 'Molecule' }) + .tk-page__links + +PageSummary() + +PageLinks({github, storybook, badge}) + +PageContentComponent() + block guidelines + +PageMarkdown() + include:markdown-it ./markdown/guidelines.md + block code + +Demo({ title:'Classic Steps', storybook, activePath, tmpl: 'classic', sassPath }) + block style + +Colors({ colors }) + +PageMarkdown() + include:markdown-it ./markdown/style.md diff --git a/storybook/design-system/src/pages/molecules/steps/index.scss b/storybook/design-system/src/pages/molecules/steps/index.scss new file mode 100644 index 000000000..968b6fa9c --- /dev/null +++ b/storybook/design-system/src/pages/molecules/steps/index.scss @@ -0,0 +1,9 @@ +/* Correction Toolkit */ + +@include media-breakpoint-up(md) { + .af-title-bar { + &__mobile-menu { + display: none; + } + } +} diff --git a/storybook/design-system/src/pages/molecules/steps/markdown/guidelines.md b/storybook/design-system/src/pages/molecules/steps/markdown/guidelines.md new file mode 100644 index 000000000..243a5262b --- /dev/null +++ b/storybook/design-system/src/pages/molecules/steps/markdown/guidelines.md @@ -0,0 +1,36 @@ +## Tone of voice + +Quapropter a natura mihi **bold** potius quam ab indigentia orta amicitia, applicatione magis animi cum quodam sensu amandi quam cogitatione quantum illa res utilitatis esset habitura. Quod quidem quale sit, [link to Google!](http://google.com) quibusdam animadverti potest, quae ex se _italic_ ita amant ad quoddam tempus et ab eis ita amantur ut facile earum sensus appareat. + +- Quapropter a natura mihi videtur potius quam ab +- sit, etiam in bestiis quibusdam animadverti potest, +- quae ex se natos ita amant ad quoddam tempus . + +**Component** Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Usage + +| Component type | Purpose | +| ---------------- | -------------------- | +| Primary | Use for ... when ... | +| Secondary | Use for ... when ... | +| With icon | Use for ... when ... | +| Disabled version | Use for ... when ... | +| Light version | Use for ... when ... | + +## Label + +Component labels ... Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Icon usage + +- Use glyphs (16px) within buttons. +- Glyphs are distinguished by their solid shape and knocked-out details. +- Glyphs should always appear to the right of the text. +- Glyphs used in buttons must be directly related to the action that the user is taking. +- Glyphs must be the same color value as the text within a button. +- Ghost buttons require a glyph icon (cannot be stand alone text because of poor affordance). + +## Danger version usage + +Danger ... Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. diff --git a/storybook/design-system/src/pages/molecules/steps/markdown/style.md b/storybook/design-system/src/pages/molecules/steps/markdown/style.md new file mode 100644 index 000000000..5fd5471ed --- /dev/null +++ b/storybook/design-system/src/pages/molecules/steps/markdown/style.md @@ -0,0 +1,18 @@ +## Imports SASS + +``` +@import '@axa-fr/react-toolkit-core/src/common/scss/core.scss'; +@import '@axa-fr/react-toolkit-form-steps/dist/step-form.scss'; +``` + +## Structure + +A Component Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Typography + +Component text should be set in sentence case, with only the first word in a phrase and any proper nouns capitalized. + +| Class | Font-size (px/rem) | Font-weight | Font-family | +| ----------------- | ------------------ | ----------- | ----------------------- | +| **.af-steps** | 16 / 1 | 400 | Source Sans Pro Regular | diff --git a/storybook/design-system/src/pages/molecules/steps/templates/classic.pug b/storybook/design-system/src/pages/molecules/steps/templates/classic.pug new file mode 100644 index 000000000..44f490bce --- /dev/null +++ b/storybook/design-system/src/pages/molecules/steps/templates/classic.pug @@ -0,0 +1,23 @@ +.af-steps + ol.af-steps-list + li.af-steps-list-step.past(title="Etape 1") + .af-steps-list-stepLabel + .af-steps-list-stepNumber 1 + .af-steps-list-stepTitle Previous step + li.af-steps-list-step.past(title="Etape 2") + .af-steps-list-stepLabel + .af-steps-list-stepNumber 2 + .af-steps-list-stepTitle Previous step + li.af-steps-list-step.on(title="Etape 3") + .af-steps-list-stepLabel + .af-steps-list-stepNumber 3 + .af-steps-list-stepTitle Current step + li.af-steps-list-step(title="Etape 3") + .af-steps-list-stepLabel + .af-steps-list-stepNumber 4 + .af-steps-list-stepTitle Next step + li.af-steps-list-step(title="Etape finale") + .af-steps-list-stepLabel + .af-steps-list-stepNumber + i.glyphicon.glyphicon-ok + .af-steps-list-stepTitle Confirmation diff --git a/storybook/design-system/src/pages/molecules/table/data.json b/storybook/design-system/src/pages/molecules/table/data.json new file mode 100644 index 000000000..18c139ac2 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/table/data.json @@ -0,0 +1,70 @@ +{ + "metatitle": "Table Component UI - Slash Design System", + "metadescription": "UI Component Table for design system Axa. Toolkit Axa is the design system for Axa web and product. It is a series of individual styles, components, and guidelines used for creating unified UI.", + "metakeywords": "Table design system, ui Table, design system axa, design system ui, design system react, design", + "github": "table", + "storybook": "table-table--table", + "badge": "%40axa-fr%2Freact-toolkit-table", + "colors": [ + { + "name": "BLEU AXA", + "sass": "$color-axa", + "hex": "#00008f" + }, + { + "name": "BLEU Action", + "sass": "$color-azur", + "hex": "#3032c1" + }, + { + "name": "BLEU Action focus", + "sass": "$color-azur-focused", + "hex": "#aaabf9" + }, + { + "name": "Mercury", + "sass": "$color-mercury", + "hex": "#e5e5e5" + }, + { + "name": "Silver", + "sass": " $color-silver", + "hex": "#cccccc" + }, + { + "name": "Button Disabled", + "sass": " $color-btn-disabled", + "hex": "#c9c9c9" + }, + { + "name": "Button success", + "sass": " $color-btn-success", + "hex": " #1cc578" + }, + { + "name": "Button success dark", + "sass": " $color-btn-success-dark", + "hex": " #0d844e" + }, + { + "name": "Button success focuced", + "sass": " $color-btn-success-focused", + "hex": " #bdffe1" + }, + { + "name": "Button danger", + "sass": " $color-btn-danger", + "hex": " #f02849" + }, + { + "name": "Button danger dark", + "sass": " $color-btn-danger-dark", + "hex": " #8f182c" + }, + { + "name": "Button danger focuced", + "sass": " $color-btn-danger-focused", + "hex": " #ffa0af" + } + ] +} diff --git a/storybook/design-system/src/pages/molecules/table/index.pug b/storybook/design-system/src/pages/molecules/table/index.pug new file mode 100644 index 000000000..da44812d8 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/table/index.pug @@ -0,0 +1,32 @@ +extends ../../../commons/layout + +block meta + -var activePath = '/molecules/table'; + -const { metatitle, metadescription, metakeywords, github, storybook, badge, colors } = require(`../src/pages${activePath}/data.json`) + -var sassPath = 'react-toolkit-table/dist/table.scss' + -var metaTitle = metatitle + -var metaDescription = metadescription + -var metaKeywords = metakeywords + -var basedir='../../' + +block vars + - var id = "component" + +block menu + +Menu({ activePath }) + +block page + +PageTitle({ title: 'Table', subtitle: 'Molecule' }) + .tk-page__links + +PageSummary() + +PageLinks({github, storybook, badge}) + +PageContentComponent() + block guidelines + +PageMarkdown() + include:markdown-it ./markdown/guidelines.md + block code + +Demo({ title:'Classic Table', storybook, activePath, tmpl: 'classic', modifier: "table", sassPath }) + block style + +Colors({ colors }) + +PageMarkdown() + include:markdown-it ./markdown/style.md diff --git a/storybook/design-system/src/pages/molecules/table/index.scss b/storybook/design-system/src/pages/molecules/table/index.scss new file mode 100644 index 000000000..ab1dd0684 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/table/index.scss @@ -0,0 +1,14 @@ +/* Just for demo */ +.#{$prefix} { + &-demo { + &--table { + .#{$prefix}-demo__display { + height: 600px; + + &--fullscreen { + height: 100%; + } + } + } + } +} diff --git a/storybook/design-system/src/pages/molecules/table/markdown/guidelines.md b/storybook/design-system/src/pages/molecules/table/markdown/guidelines.md new file mode 100644 index 000000000..243a5262b --- /dev/null +++ b/storybook/design-system/src/pages/molecules/table/markdown/guidelines.md @@ -0,0 +1,36 @@ +## Tone of voice + +Quapropter a natura mihi **bold** potius quam ab indigentia orta amicitia, applicatione magis animi cum quodam sensu amandi quam cogitatione quantum illa res utilitatis esset habitura. Quod quidem quale sit, [link to Google!](http://google.com) quibusdam animadverti potest, quae ex se _italic_ ita amant ad quoddam tempus et ab eis ita amantur ut facile earum sensus appareat. + +- Quapropter a natura mihi videtur potius quam ab +- sit, etiam in bestiis quibusdam animadverti potest, +- quae ex se natos ita amant ad quoddam tempus . + +**Component** Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Usage + +| Component type | Purpose | +| ---------------- | -------------------- | +| Primary | Use for ... when ... | +| Secondary | Use for ... when ... | +| With icon | Use for ... when ... | +| Disabled version | Use for ... when ... | +| Light version | Use for ... when ... | + +## Label + +Component labels ... Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Icon usage + +- Use glyphs (16px) within buttons. +- Glyphs are distinguished by their solid shape and knocked-out details. +- Glyphs should always appear to the right of the text. +- Glyphs used in buttons must be directly related to the action that the user is taking. +- Glyphs must be the same color value as the text within a button. +- Ghost buttons require a glyph icon (cannot be stand alone text because of poor affordance). + +## Danger version usage + +Danger ... Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. diff --git a/storybook/design-system/src/pages/molecules/table/markdown/style.md b/storybook/design-system/src/pages/molecules/table/markdown/style.md new file mode 100644 index 000000000..2ce72a56e --- /dev/null +++ b/storybook/design-system/src/pages/molecules/table/markdown/style.md @@ -0,0 +1,18 @@ +## Imports SASS + +``` +@import '@axa-fr/react-toolkit-core/src/common/scss/core.scss'; +@import '@axa-fr/react-toolkit-table/dist/table.scss'; +``` + +## Structure + +A Component Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Typography + +Component text should be set in sentence case, with only the first word in a phrase and any proper nouns capitalized. + +| Class | Font-size (px/rem) | Font-weight | Font-family | +| ------------- | ------------------ | ----------- | ----------------------- | +| **.af-table** | 16 / 1 | 400 | Source Sans Pro Regular | diff --git a/storybook/design-system/src/pages/molecules/table/templates/classic.pug b/storybook/design-system/src/pages/molecules/table/templates/classic.pug new file mode 100644 index 000000000..ffdbcf69a --- /dev/null +++ b/storybook/design-system/src/pages/molecules/table/templates/classic.pug @@ -0,0 +1,11 @@ +include headerCell.pug +include line.pug +include data.pug +table.af-table + thead.af-table__thead + tr.af-table__tr + each headElt in headers + +headerCell(headElt) + tbody.af-table__body + each lineElt in lines + +line(lineElt) diff --git a/storybook/design-system/src/pages/molecules/table/templates/data.pug b/storybook/design-system/src/pages/molecules/table/templates/data.pug new file mode 100644 index 000000000..58064d2af --- /dev/null +++ b/storybook/design-system/src/pages/molecules/table/templates/data.pug @@ -0,0 +1,2 @@ +-const headers = [{"isSortable":true,"isActive":true,"label":"N° de contrat"},{"isSortable":true,"label":"N° de dossier"},{"isSortable":true,"label":"N° de demande"},{"isSortable":true,"label":"Site"},{"isSortable":true,"label":"Date de mise à jour"},{"isSortable":true,"label":"Décision"},{"isSortable":true,"label":"Statut du dossier"},{"label":"Action"}]; +-const lines = [{"contractId":25487696,"folderId":1594458644,"request":7359,"site":"BellBoeuf","update":"01/03/2017","decision":"Acceptation totale","status":1},{"contractId":25487296,"folderId":1594458044,"request":7059,"site":"Toulouse","update":"01/06/2007","decision":"Acceptation partielle","status":2},{"contractId":22487296,"folderId":1594428044,"request":7052,"site":"NA","update":"11/06/2000","decision":"Refus","status":3},{"contractId":25487696,"folderId":1594458644,"request":7359,"site":"BellBoeuf","update":"01/03/2017","decision":"Acceptation totale","status":1},{"contractId":25487296,"folderId":1594458044,"request":7059,"site":"Toulouse","update":"01/06/2007","decision":"Acceptation partielle","status":2},{"contractId":22487296,"folderId":1594428044,"request":7052,"site":"NA","update":"11/06/2000","decision":"Refus","status":3},{"contractId":25487696,"folderId":1594458644,"request":7359,"site":"BellBoeuf","update":"01/03/2017","decision":"Acceptation totale","status":1},{"contractId":25487296,"folderId":1594458044,"request":7059,"site":"Toulouse","update":"01/06/2007","decision":"Acceptation partielle","status":2},{"contractId":22487296,"folderId":1594428044,"request":7052,"site":"NA","update":"11/06/2000","decision":"Refus","status":3},{"contractId":25487296,"folderId":1594458044,"request":7059,"site":"Toulouse","update":"01/06/2007","decision":"Acceptation partielle","status":2}]; diff --git a/storybook/design-system/src/pages/molecules/table/templates/headerCell.pug b/storybook/design-system/src/pages/molecules/table/templates/headerCell.pug new file mode 100644 index 000000000..f4d718007 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/table/templates/headerCell.pug @@ -0,0 +1,12 @@ +mixin headerCell(item) + th.af-table__th(class=item.isSortable ? 'af-table__th--sortable' : '') + span.af-table__th-content + if item.isSortable + button.af-btn.af-btn--table-sorting(class=item.isActive ? "af-btn--table-sorting--active" : "" role="button") + | #{item.label} + if item.isActive + span.glyphicon.glyphicon-arrow-xs-down + else + span.glyphicon.glyphicon-sorting + else + | #{item.label} diff --git a/storybook/design-system/src/pages/molecules/table/templates/line.pug b/storybook/design-system/src/pages/molecules/table/templates/line.pug new file mode 100644 index 000000000..f00ee4f7d --- /dev/null +++ b/storybook/design-system/src/pages/molecules/table/templates/line.pug @@ -0,0 +1,24 @@ +include status.pug +mixin line(item) + tr.af-table__tr + td.af-table__cell + a.af-link(href="") + | #{item.contractId} + td.af-table__cell + a.af-link(href="") + | #{item.folderId} + td.af-table__cell + | #{item.request} + td.af-table__cell + | #{item.site} + td.af-table__cell + | #{item.update} + td.af-table__cell + | #{item.decision} + td.af-table__cell + +status(item.status) + td.af-table__cell + a.af-link.af-link--hasIconLeft(href="#") + span.glyphicon.glyphicon-pencil + span.af-link__text + | Consulter diff --git a/storybook/design-system/src/pages/molecules/table/templates/status.pug b/storybook/design-system/src/pages/molecules/table/templates/status.pug new file mode 100644 index 000000000..18183ec23 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/table/templates/status.pug @@ -0,0 +1,12 @@ +mixin status(code) + .af-status + case code + when 1 + span.glyphicon.glyphicon--ring.glyphicon--banque.glyphicon-option-horizontal + | En cours + when 2 + span.glyphicon.glyphicon--ring.glyphicon--warning.glyphicon-arrowthin-right + | Transmis + default + span.glyphicon.glyphicon--ring.glyphicon--success.glyphicon-ok + | Clos diff --git a/storybook/design-system/src/pages/molecules/tabs/data.json b/storybook/design-system/src/pages/molecules/tabs/data.json new file mode 100644 index 000000000..1a82d235a --- /dev/null +++ b/storybook/design-system/src/pages/molecules/tabs/data.json @@ -0,0 +1,70 @@ +{ + "metatitle": "Tabs Component UI - Slash Design System", + "metadescription": "UI Component Tabs for design system Axa. Toolkit Axa is the design system for Axa web and product. It is a series of individual styles, components, and guidelines used for creating unified UI.", + "metakeywords": "Tabs design system, ui Tabs, design system axa, design system ui, design system react, design", + "github": "tabs", + "storybook": "tabs--default", + "badge": "%40axa-fr%2Freact-toolkit-tabs", + "colors": [ + { + "name": "BLEU AXA", + "sass": "$color-axa", + "hex": "#00008f" + }, + { + "name": "BLEU Action", + "sass": "$color-azur", + "hex": "#3032c1" + }, + { + "name": "BLEU Action focus", + "sass": "$color-azur-focused", + "hex": "#aaabf9" + }, + { + "name": "Mercury", + "sass": "$color-mercury", + "hex": "#e5e5e5" + }, + { + "name": "Silver", + "sass": " $color-silver", + "hex": "#cccccc" + }, + { + "name": "Button Disabled", + "sass": " $color-btn-disabled", + "hex": "#c9c9c9" + }, + { + "name": "Button success", + "sass": " $color-btn-success", + "hex": " #1cc578" + }, + { + "name": "Button success dark", + "sass": " $color-btn-success-dark", + "hex": " #0d844e" + }, + { + "name": "Button success focuced", + "sass": " $color-btn-success-focused", + "hex": " #bdffe1" + }, + { + "name": "Button danger", + "sass": " $color-btn-danger", + "hex": " #f02849" + }, + { + "name": "Button danger dark", + "sass": " $color-btn-danger-dark", + "hex": " #8f182c" + }, + { + "name": "Button danger focuced", + "sass": " $color-btn-danger-focused", + "hex": " #ffa0af" + } + ] +} diff --git a/storybook/design-system/src/pages/molecules/tabs/index.pug b/storybook/design-system/src/pages/molecules/tabs/index.pug new file mode 100644 index 000000000..ce95d1837 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/tabs/index.pug @@ -0,0 +1,34 @@ +extends ../../../commons/layout + +block meta + -var activePath = '/molecules/tabs'; + -const { metatitle, metadescription, metakeywords, github, storybook, badge, colors } = require(`../src/pages${activePath}/data.json`) + -var sassPath = 'react-toolkit-tabs/dist/tabs.scss' + -var metaTitle = metatitle + -var metaDescription = metadescription + -var metaKeywords = metakeywords + -var basedir='../../' + +block vars + - var id = "component" + +block menu + +Menu({ activePath }) + +block page + +PageTitle({ title: 'Tabs', subtitle: 'Molecule' }) + .tk-page__links + +PageSummary() + +PageLinks({github, storybook, badge}) + +PageContentComponent() + block guidelines + +PageMarkdown() + include:markdown-it ./markdown/guidelines.md + block code + +Demo({ title:'Classic Tabs', storybook, activePath, tmpl: 'tabs', sassPath }) + +Demo({ title:'Complex Tabs', storybook, activePath, tmpl: 'tabs-complex', sassPath }) + +Demo({ title:'Tabs with long text', storybook, activePath, tmpl: 'tabs-long-text', sassPath }) + block style + +Colors({ colors }) + +PageMarkdown() + include:markdown-it ./markdown/style.md diff --git a/storybook/design-system/src/pages/molecules/tabs/markdown/guidelines.md b/storybook/design-system/src/pages/molecules/tabs/markdown/guidelines.md new file mode 100644 index 000000000..243a5262b --- /dev/null +++ b/storybook/design-system/src/pages/molecules/tabs/markdown/guidelines.md @@ -0,0 +1,36 @@ +## Tone of voice + +Quapropter a natura mihi **bold** potius quam ab indigentia orta amicitia, applicatione magis animi cum quodam sensu amandi quam cogitatione quantum illa res utilitatis esset habitura. Quod quidem quale sit, [link to Google!](http://google.com) quibusdam animadverti potest, quae ex se _italic_ ita amant ad quoddam tempus et ab eis ita amantur ut facile earum sensus appareat. + +- Quapropter a natura mihi videtur potius quam ab +- sit, etiam in bestiis quibusdam animadverti potest, +- quae ex se natos ita amant ad quoddam tempus . + +**Component** Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Usage + +| Component type | Purpose | +| ---------------- | -------------------- | +| Primary | Use for ... when ... | +| Secondary | Use for ... when ... | +| With icon | Use for ... when ... | +| Disabled version | Use for ... when ... | +| Light version | Use for ... when ... | + +## Label + +Component labels ... Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Icon usage + +- Use glyphs (16px) within buttons. +- Glyphs are distinguished by their solid shape and knocked-out details. +- Glyphs should always appear to the right of the text. +- Glyphs used in buttons must be directly related to the action that the user is taking. +- Glyphs must be the same color value as the text within a button. +- Ghost buttons require a glyph icon (cannot be stand alone text because of poor affordance). + +## Danger version usage + +Danger ... Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. diff --git a/storybook/design-system/src/pages/molecules/tabs/markdown/style.md b/storybook/design-system/src/pages/molecules/tabs/markdown/style.md new file mode 100644 index 000000000..1b024ae3f --- /dev/null +++ b/storybook/design-system/src/pages/molecules/tabs/markdown/style.md @@ -0,0 +1,18 @@ +## Imports SASS + +``` +@import '@axa-fr/react-toolkit-core/src/common/scss/core.scss'; +@import '@axa-fr/react-toolkit-tabs/dist/tabs.scss'; +``` + +## Structure + +A Component Inter has ruinarum varietates a Nisibi quam tuebatur accitus Vrsicinus, cui nos obsecuturos iunxerat imperiale praeceptum, dispicere litis exitialis certamina cogebatur abnuens et reclamans, adulatorum oblatrantibus turmis, bellicosus sane milesque semper et militum ductor sed forensibus iurgiis longe discretus, qui metu sui discriminis anxius cum accusatores quaesitoresque subditivos sibi consociatos ex isdem foveis cerneret emergentes, quae clam palamve agitabantur, occultis Constantium litteris edocebat inplorans subsidia, quorum metu tumor notissimus Caesaris exhalaret. + +## Typography + +Component text should be set in sentence case, with only the first word in a phrase and any proper nouns capitalized. + +| Class | Font-size (px/rem) | Font-weight | Font-family | +| ------------ | ------------------ | ----------- | ----------------------- | +| **.af-tabs** | 16 / 1 | 400 | Source Sans Pro Regular | diff --git a/storybook/design-system/src/pages/molecules/tabs/templates/tabs-complex.pug b/storybook/design-system/src/pages/molecules/tabs/templates/tabs-complex.pug new file mode 100644 index 000000000..19e903c85 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/tabs/templates/tabs-complex.pug @@ -0,0 +1,25 @@ +.af-tabs + ul.af-tabs__control + li.af-tabs__item.af-tabs__item--has-icon-left.af-tabs__item--active + button.af-tabs__link + span + i.glyphicon.glyphicon-ok + | Title with left icon + li.af-tabs__item.af-tabs__item--has-icon-right + button.af-tabs__link + span + | Title with right icon + i.glyphicon.glyphicon-facetime-video + li.af-tabs__item + button.af-tabs__link + span + | Title with badge + span.af-badge.af-badge--danger 42 + li.af-tabs__item.af-tabs__item--has-icon-left + button.af-tabs__link + span + | Title with badge and left icon + span.af-badge.af-badge--error Lorem ipsum + i.glyphicon.glyphicon-facetime-video + .af-tabs__content + .af-tabs__pane Content of my first tab diff --git a/storybook/design-system/src/pages/molecules/tabs/templates/tabs-long-text.pug b/storybook/design-system/src/pages/molecules/tabs/templates/tabs-long-text.pug new file mode 100644 index 000000000..9e693cc07 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/tabs/templates/tabs-long-text.pug @@ -0,0 +1,22 @@ +.af-tabs + ul.af-tabs__control + li.af-tabs__item.af-tabs__item--active.af-tabs__item--has-icon-left + button.af-tabs__link + span + i.glyphicon.glyphicon-ok + | Title with left icon + li.af-tabs__item.af-tabs__item--has-icon-right + button.af-tabs__link + span + | Title with right icon + i.glyphicon.glyphicon-facetime-video + li.af-tabs__item + button.af-tabs__link + span + | Title with badge + span.af-badge.af-badge--danger 42 + li.af-tabs__item + button.af-tabs__link + | I try to write a very long title without any sense just to see what is the behavior of my title component in this case + .af-tabs__content + .af-tabs__pane Content of my first tab diff --git a/storybook/design-system/src/pages/molecules/tabs/templates/tabs.pug b/storybook/design-system/src/pages/molecules/tabs/templates/tabs.pug new file mode 100644 index 000000000..bb4f30044 --- /dev/null +++ b/storybook/design-system/src/pages/molecules/tabs/templates/tabs.pug @@ -0,0 +1,8 @@ +.af-tabs + ul.af-tabs__control + li.af-tabs__item.af-tabs__item--active + button.af-tabs__link My first title + li.af-tabs__item + button.af-tabs__link My second title + .af-tabs__content + .af-tabs__pane Content of my first tab diff --git a/storybook/design-system/src/pages/molecules/title-bar/data.json b/storybook/design-system/src/pages/molecules/title-bar/data.json index 29b350181..51fcc9dff 100644 --- a/storybook/design-system/src/pages/molecules/title-bar/data.json +++ b/storybook/design-system/src/pages/molecules/title-bar/data.json @@ -1,7 +1,7 @@ { - "title": "TitleBar Component UI - Axa Toolkit App Design System", - "description": "UI Component TitleBar for design system Axa. Toolkit Axa is the design system for Axa web and product. It is a series of individual styles, components, and guidelines used for creating unified UI.", - "keywords": "TitleBar design system, ui TitleBar, design system axa, design system ui, design system react, design", + "metatitle": "TitleBar Component UI - Slash Design System", + "metadescription": "UI Component TitleBar for design system Axa. Toolkit Axa is the design system for Axa web and product. It is a series of individual styles, components, and guidelines used for creating unified UI.", + "metakeywords": "TitleBar design system, ui TitleBar, design system axa, design system ui, design system react, design", "github": "Layout/header/src/Title", "storybook": "layout-header-title--default", "badge": "%40axa-fr%2Freact-toolkit-layout-header", diff --git a/storybook/design-system/src/pages/molecules/title-bar/index.js.old b/storybook/design-system/src/pages/molecules/title-bar/index.js.old deleted file mode 100644 index 6810a7124..000000000 --- a/storybook/design-system/src/pages/molecules/title-bar/index.js.old +++ /dev/null @@ -1,54 +0,0 @@ -import Markdown from 'components/Markdown'; -import Layout from 'components/Layout/ComponentPage'; -import Head from 'components/Layout/Head'; -import Demo from 'components/Demo'; -import Style from 'components/Style'; -import getInitialProps from 'shared/getInitialProps'; -import template from './templates/title-bar.pug'; -import templateComplex from './templates/title-bar-complex.pug'; -import './index.scss'; -import 'node_modules/@axa-fr/react-toolkit-core/dist/assets/fonts/icons/af-icons.css'; - -const TitleBar = ({ - title, - content, - meta, - importcss, - usage, - typography, - headerLinks, - colors, - structure, - type -}) => ( - - - - - } - usage={} - style={ -

qg&Wxz$ub2G!1Xb-qQ^rlc$y!n`dSMvUNDy3?7a&DkvxQb58 zMv{{KEl9*KGw<1aIFFMT%d96uLB%c>!`KN;$#@rQ{VY{{y}9=|%Rm)$S4Frz{qxGO z&G#QaiO3(KNddcuYJ)hwUQ!IZqS*|;51;OXQ1}#dYF=unv2U`QgU3Lp5C36!3}N)B zx_ZL7CR@zUk5YdN3r$y=eA1~KPu!|pqw|E{3YrvVysnEC(q1yo=3FHT^4Hpc<2u{~ zT&;f>7TON1_aS+3m_Cr`FY_u|_ZUwiZ+m#*H!EclO*H zflbq*y&)pEcX!%;enkeI{*z4zmG^Hx57~IM!wR9Xp)!eeYU;m!ebp#6BHmSGz%?qb zs%jWlr5_s`CoIjul)bV}IOcjMX=)m^^&3YhnDH#B726Uso|K)jnfD7-e*UfK8$lu- zlAao+L^|Mb2S8Jz-d4;H8&Y1csHn&x2Q$Ie)D@@*b}kSLdKvq@y~TO<=v~N-4$Y`( z(J;8W7M+XKk48GrdP+l_oOE9r<3*kZuC{lEK^)raDTN~sr&Eb{#BGdt9A?n6jk zd&pH$kvP%vl}&lYdY76#Yxd6&b2i+38K_`4XSO7M$#@FHGfgw&Dv5w>jr^WcHBNGD z7dFsHgpvxA>mhWLoL8>%nb?zL(Bo?~OSYBEbne=eSrQG@YuwPc^uvU8)Q0Nil&U^fkI+DeK8Jae9*B*&0-nA{@W{k4WutD?TKEJQc-uwU7G2P>9+7 zs~j9IvvXz#RZa&++WDvUK=Jp6$#2nVd-$`IkE=V%gvTexrvty6K?mvGjgV;GriVZw z-$!LLiwU}&2|q8Up-`-cEBL|@jy%&%0r%?^YXb~Y)d5pg%m;X_lva}_EMaxZc*-cg zq4J`>FI4P=2zoNZW?{TS3Hb)r5uBFvec8y1q8#eR$6-x0QIE(lw%O zFmn}ZZxTo(tu42gp3#Va(m*PQhE44>HXnOhA*!X=NmQ9>zm$b|!V#HJk z<|6N6CC5amh1sbQMUrm`EFrF|@Bd_Q?nyqnHWZ0905L!Mn{Q>qj};baa!fMO{R>So z5!+d`b|>0tqR$)y*l05wd%9kN9@S&PFXfvAVP`0AOV1S*j`>gwew6(t=7KvZ!QpKQ zjFz;hP%pC=T4TWlS=#XKgv4?RSVIeW7uP%ClK8T6FN3aiR$3G5{3?u6mWs)Vq4so~ z)({}j>ERcrJtG2jX(hYv4HR3hpr$DeDjuC9Gnlo|og#tOUH-jctUlilGQ(`mws4ls zqE>n1uX3>i57hLSiuEaIsHs&!X<1ga>z)o=nZ=D>IM`#reDT0aP($Pdvei8({2bAu zVKv$675&8P^7ymClv^Q?KpCI&wP-kgg-B<_K~C0k&V=2Z+_yOLbG)p)CIKVoYJ0#% z7Y;7oKf~{a-*V9g66);EQV59lCpd)0mn{c}2*Og=J1sDN}Sow1O- z%y25Jey7%IT>t=#9>a0Osoapv6whzxDKx8tN-PngQc|r==c`BJ0blo?%9HDz)W&X; ztCTwgPC=jt?d2=t^)7}j(LNTO-RB)q83*XdU1=I#zP_tE-f(VtZQQ2fhlAssf}G@GT4QqsA>3Sid&qcSC@P8x zoiT6-Ea4Liih3}eG4atoqRF@@Q1Vn z@Ks+}x`bVa5T2#N*km9-Uq5MA(;zQNbzoc00Yd!If~}TDm(ox{WfWpYJ@G8N=98RX z1d9w+5Bcr(Tfczc{i#lwc~KxHzfA7^J$IS0nZ<=x?$s4rS^g!n)h%&XN;#VbK$Lj?(% zu)IzBKJssvxbu7rNSNKA02VRu{gsbrz2l&!#j`kY!eWSWX^08kCZV}#G07mnV&49v z{d@BV32wk^fS%=THaO7N{&&#E*pbRPcFMoM`M1fAaVFOF>cj&3n#i`3*MGVGazV_n zN$ls?R(oF(3xTKQYQ22<&~%gTii3j`Pso6+#D_ zZlxY}iVUr-*-jLF0^v_6{AmOPo$CbbthD`~ofH;DWjyxwh;=M1kN|cXgcIMSMwQVb zA1b9>Uh$>(do|&nqpXyP1*XjX-K~U17OA4&Vli@neqg~*7D8Ms94KyX$wBmaMTV;M zBm@v>stEy{Oyax&MK!C!f zt+)YqGgue`{afw&WdVMDZ9Fo4)(w*|o2Ky<%xF4c{U~G$$aI>r$J{_4I5oF?1Q4Pw ztIBnX4NKA3ukOzaHQkIJhSmO1$JE zRu>u^I%ubj`n^2-Yrp8&5f_!FR2N&)_OUYm4LLui$JEAsF?m4Lbp(m;CbqO7nKlJN ztGIJ<{1I0Nl=ju{7iX(7HR3w``hAnG`o)>KCZXU`@{viKYQbyTGmY+1niPQt7-9}r#+MuS5UpEp+mut``AUU3GE&kUbWJ~D$ zg%ztDUZ{7N!4mLzCn~k9B4-k*OBIo=SK-*Y*o{X=EjuV^lr0ig5Trb)A9XA1{rU11 z?)uxQvv&V{0f*q~rX&erdS9~<=TsXp*g{=XbDU$Xf|a@IDWOny2|kM2(D6|uw@;of zA7r2~X3NHiHi`i}k0TOd_7^%$`8GzV)(MApo_+~JXI%_v^`|gTpZ={@hE2b4EQs51 zEFq{H`q6hHf0qqev}>!CPBG|+@8CdWmSzwSQ>jpHWc3o$YZXCUP%#L-RHP}*=`qq# z;ZqW+EDIOZnTAR{-n*V*t5lm6T94Hk@(}doKr7&D_U{ksS}h`++#mW`WRz+`$n|#z zpKt4sKndMsnAR;BQ6Spd;q~(EVXvveRq!**4;`D#Law2|L;B^Kl}>{0+r>AkK@5*O z2!#$YK!M#}dM*5zsL;(SU3|T2A=?(=vWHfn)mT>-tEIh?Dr!^Sd-?MFsnHB`n0fn^ zebNTygWSGPe!`=_6eu6PmQO`H3%YKdjuwXVja*1#C>9dt8Ic3U|8=xEUNJoqb^o-o z!R*?4LRVM*q853XE|wtXFFAe$l8FY!Xxf+WtmYwj#PJW#yUHUa-~*zLg!6l+pgH{xAQ2u5j7r9h346HILFxe4qImTIJH( zeRIE}Xf2LUdX9kxK!m}<&@2=Gu307ELBC2#bs?1%-7QQe9nr%nD7cL)`e!^Ux+F^5 zc-tn@b6_q~d9^U|w0+|#jyfr)LJ6s4K}qP^nlLdnAVQGPuf7i>cu;aEH1ZQ1hu=r1 zXAZiSngNxG6d7F>#v#reY%&yXwOmu)B>^Zp2hoOtGdckaJkCm|^nLFfZ=8H$+nRcP zcx-qV^&XzU-`lvySNr7%(57xrTU9) zkWYtQj*J{r=xdHvjxyTep6D) zLbW$l2oYN4){;|ND6iuPN(&<8iX9>Z>n4uf`0HhA z&D71HpA307!oT*s!yu0H9eFX3@qeM>w;0J6fzPzq;u|B)g}C1@XEY(=aLF z3)aZq^2pBzb1|KY(pa2xzvHPo+=x^C@T~J_Kc3sy zywiod-q3Yh{K$T3d`H8rey*1K;cvawMzUh3Yl|DAOG#7#7L1VZa#Ky`h5AKtft?Z& zaGH1B4ZSS|5%hy)`8`qz^fave|mmS4q zmvN5`g2TlLP4yQD(!Z1 z!~JjE+y*ukNfTWhc3qk#+)(&*OnY{>v;AW1#)P2=FbH+p`m}cEhbW>fs>1it6>j@z zsY7(?m5chW!U{q2mYrV&{}6gt6*WVZ3KFTMSXD4&T+Jkbl%xtFR09>I^ryH5cu`+w zeHr!!mndLMB_*>{;6j?H7*(wf=zk)ephS%`(^0oPz;{;EpsbwdV0LL(={pCWM$OPG z$yVtHBO@P|qJEBT#&M**wfxLpL}s<7{YLJVfdyWBaZ%f;uq1~(a=#ekx|-sI^cJYI zveg}84>e0Lo8jh|nV8P%g=FxX;Arg%ODhZ0MpKbNwfG@qnFbviE`*%qp(7nrFsJgG zneNxon2=EoAoYgG#q*khvl_=szO_iD0@$~M|Gj;-9hUyaDoowk#3)`S1j&mez-0gf z^2_UR%k)~rK3;aOj1TZUI>hi-$ds@OTsbg_Ge8xTDQ7FqMsN2_D z8-m!no={MNC!E>DIQD+idc@ARc^Va4_`i%aFMoB%NJZVOjPk7bbK`d%CJa zNRM|%fbZN%-q9u0WlX^dr~8Ig=wrG~puJezzQDxp@fj6Cg_e?*IazH!4vr1?k9_b3 z(}LqI)aU3>L8LD~?rGgp-LWpG$Pub%7{smBlKa93(m&%6Yvc=4fSeT5d;oXbg&8|! zo)>GbLnHuyFk@3iKxr}Zgv~=f{jA7VsGXlKT|B@Q5X|fsO+#7yPQi(dCQ*};5p!&@ zrrwYnjgG(~;S{dLHNF%|iJUWURmH@lBoS9Tva=O@u`r6IOo1fwxi*Jgmkn==3l0v9 z6eeM^;%S_R)wpKr)d|zbCHO_ZLL;rsOG|uOTT&_Wb5&IjLoKVyXJ2b9i*)&?=NvS! zn>o#et--K=n2rX5UZ^j2QLO-43Sk-<`L0JFq9g&6{>}8@-*lrkr1)Q&8)DO^w|O-`8jrmZma_r#n>snOJOC18q$L@+!7V`g$b*u+k3P_8i$(!4o%<0)+vY=zoX)4J) zLhXdejT~LC^WnK;iBrold*BnnWKI{6SHI5ltB1dw3#PwiS-9oAQ1US2rELk}=1BYn zDJA+|4`G5CzHkH|xFEZ=riWaaBJ?JW_cgvnZ84_^v`dhY!8@_a%$W`1B%@U#r7@&H z1Iz#@U+~ii7+XO`*6XvU9>%@82n{QpKIsiDbv@`Nuu!pb31`t?90(tO@rr5UPrv};;zuCBbl0sO87EY@!0ibwugFzv~fj+ zMwoBt9(>buTdF++6w<}!M2q~a0NE6#P$|aiQ1gB3EPEhT&+k+F!KNbL{Or0AZE0~9 zUUt+?lrI8a0fN-pUI#%ea=Wd8CH}75|WTuEGsO|_# z+=j7~E4Gh{*(5z|!g&9rcHi0*j5xWggFG6f~>&gUB_!OW+G=S>cs z$&=Lx&3{+1wT#as?^A@CNE8!cEQMa84`>JK>xejP=nn~M5-?6m=4j^b?on@WszvpK| zvlHSk1!XQAQG@;?C2I$t2T@8>XNW|e;IUqU{KQ5(Ju`~}dkhz~B5&S-u@*JDjjsPo zA#zqX-!}z-7B}!_T8Z4gy2jz%TN=l;Cpq|jpX1% zncO1by>Vr1b^9U;DE$4{Ns7o@@OUzg@2}=l`~FPh1$b*mLKn*4e!@roEZl7V zQNt*rY}Z?ll}2KlWTH=;A{lQnRK0XMQ7(1tZ(491uMVK%jToPgV0zx}#7pnIXIe0f zD7j|*Hzc*#DY%~4mM*{Un%33~wq?)|Eho7a-?|yG%MArTA1s|{IlIRMJT?*C!SxSV)~@yQuK$(``|ws{D`Cubzu_^ZhP$ux=yxULsp#J|L37Q* zytB4aK0J7FlH*G0OWkZ^d4AUEW2o2RYT*tRRZ`jN@|+%T|J#(htE25->2LJ2Ke~&h z>mWy_Xn9DZK;8>OaLm_M7eL04th355EI*S)TIT^D^9(HE_* z@3c%)>Fv+2?kw@1x7T*X6g#=-ULy9WfIq3w^?Ypu0SY8g|5ZVg(VuV+S0P(H*SR}# zd1Me03st=55D}Z!E!+B6HQU=J97C|N&;EWze_Ib#=rVruejW%II}wL)L56s9@2>wp z?ehl#TD$125fk7dx(6Fo{PWN=Blk1XNgK>8oC_80Gmx9)Kfu@1^F)Bz|2;YsNf1+5 zV40KMZ|SGlD-3PipeFmu20Qn6l>hdX|8uI4FYo<_DBG*Mx_E^Dp9SLh&jF?a9XgNG z*14Tenp{KvjGWPw3tzTxO?smHZJu2`?r&Jabc#739iZHbzgPM)Kwn}*s4Se)Cd|FRlrw81VQN)o#)&4W#f z&Xh6|S+@@8^|Scs^u9;BD*nuY^ru`HwJhwzvWC3&#!N--66n63{d60oKQk=z4xELf z$HUIoQme4fciKEE_KkR})E6)}lhf0@x(8Z{Z?~4{BL`XmH&$z2m;TB(lO3Z&KJ-KR zzJ8lH{>y~$6G!PCnG$dQK2mR~=}o>S6B(CJgX1Qr`#sQyT$?u;Qp(p^j4?ZtzaU4g z*Xh0ASdr=ZZ)I!)z;$drks;yDz7#y!DXR*DFn@Mc@3(sY4}J9;Jz<+IYc4)tX<489 zd|j|6f96_Z@Rht^%5Td@&AsfSp5Z??jV2&DZ}h*7-Xmk21L3xo?dmsFDbgYI*8Kil zNGn`u1*5vh-#(lRS-9V6sP#YzdoX^ThSu-}-!p28M*sa7lAQo7WlmKcN5h9Ywd|fu}8Cr4S{+JSZuotqX`pSOb;g zP8S@*!UTOP=~fYqXk ziEX95a>ijbxA9M0Xw&J>rBSmIZnng_=*6LhJ>dORBxbZUjK}$PMr@q<>EBVz%4+z3 zd$w5M`Mi1xxaiZ(E^g)iV= zyma3!=uxAYFS*EUq9dU9@dgHLEemmbsB)Uajk#D;4jIc zhl|UciMFchHtX&A)3BqAvE_5!puk7Y9>Vb9RDgvT9sW}Rrj`@8kO@8=&FFb|)8o#E zwN(2D4Z}}vW<5GLgZFcgH}k?liHfqR#OXdvs%Rq!MJ9%$=mNvYS7vB}XQ6twb6#HO4f7~DVRrH_s7PY`r zPy1i3Kt)SmpRE_!02!`N#an1+r2DSF(8dzalSl&D_I zZal6?c)On`J2{ur@vJfBy^FKApZ9nWTg8mzJ2_WcUh*1ZHp-cCfCY}FCr}gDZuoJX z!ryNdg|^29vvYCT<`~Rh_e}hAprd#2$VV=EDQr!oufqyC`Ae=K^=ix$iX7BO^b3 zWNH+1$8ScI$Ug=K2IkrSj&cD|#~`m!lk*-mot1u&bv?MVGNnVUV?cvB`w^==B_=c4 z!_!nlPkdM4=fkX~nVugT?i2?R7lE*xO}LCb&qJ{Us2|#lmd%bE9+OOrjM&{k(%f0g z)YMdhT;lX&iXoPr)T`Tigy)mP!`j?jVl5nBe_I7k|Ez{V{7Ye_@H{1sGf zD3~w8qn};@Se;1XKfADC0WoKt8x))j$CI?9*^35Jv-pV_QD_SRuLu4k@kwM;*VS#K zNWpeJbuiJye0QH6%=gIO_%teC�iSu*Wd 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⁡hIcRum&58z|unl@;u_dG<}`Ahr{3p#-fZsyhAAzk^tAkdhWQk^^mXQjNU|D zXJ|yR+@j`2xKUELsyb&FWns6nQK*&mq0ozpm;&YI@dRxFL---fXx;w^QwsJ0>S zvww6qX#nKxxd}y)9Iy+>N|+H6PI6?KDj5OtPiCHLCf#rb87_DkmGqQC*D;4I^ihp!CZ1IMS7w{f;xri z%(=T<+O$NUsE5$&-)`I8aEK9A*Qze~7k-@Dk7k zkcbHKUw5&Oe&z=W!>WZrBymSnkS406xj>j6;KyQ@Kvq(WvZ$eJ;AfC0laKZb$Y-Ps zBFbf@X6@OxbFw^Q)pi_kI^Yn z-%b#%h<|@xdiI`K@nl?kel!hK2H!-vjI0ci$$`KLom#eEG_FyP*#O@Q_|4lRIS5nw zkH55B;~x_^!bL<|>b#0rVYA1P5ME;rRHA0nMy6x-hzP{OpB{!bU|eSmh*3JA*jK372W7xelQqyj~f3xjkEC>aCXJHSKzR^@PgAB zBzp1f!LBuE>U{$Ll4DUs2~?=s(|afr9FK!oCAVS6$0aX(vYxFa8b~T9$LVKlBz6KB zrbpWw7h7l!jl@Yc`y;=}B)DnFrkVbFY1&L>(9k6h&)2r~ZPpO0r3^rIjyQ5E9>PA@ zv`U(5AVGmAz(T`Pqts^n^Uy`Z7^cM`V+^sS!RUgMTn~R?Gk&Sl1jlpbS$Zr~%Wwknrj308U4dKM zMf#`oYH1vdm|T=Ot1??*P4>ASDz;G>jY=7(V^TKf0slo?Qd3kmKgq9+z0h(Lp{f!;V zuR)}GVKOh6WL$3+HmdI_FyQ`|Z!`=n0+$jhA_XF2B*d+((>sEg=mUT1mih_nd-|ns z>aGbdrDlZx?t2450E}<~!PKIdZP#(ak>~@^&{GggJ7Pr12pD*W+)S{sTd>HeN7zIC zfp0gXipoKXP?cmL41*t42*gbhbHOSQlu$$v0&I^$Z`Wef(ETWXO}oUVuXgVdnO7(K^_Iwxb z83GYP-G!q>w8eM3gSE+a+Lv$w#}Y9b!hHWV&h?-BNRW~?^lu46Vr%Z(iSx`-U zsG$%Fi%D6PtsJ7ND)vRfpR+23yCun}n?7FYBiUXqQ-OtLz(5 z?<1=tiJI?{%0roAw(fy(FPz7YM@TO(;25P#UiSkrQHP|A5^=LAq#-sMp_HzYqX6>y zK`aBbo@Wx2TUVs{q{Y8^8S?ECM;jn%z6?nUAR4LIUo2SrF5-Q<(AkW-S4CP}wRu2- zPsYgPW)I8_*+ul9a@@=6=DW-zI9Sx{XVB#Y}_%*>fU4+&bJl=Z~Guf}u z<{+wR^)jK2Deput#YCK@&@**a(fIMs5ILt_^Z}s(x@3;z84dKOLJA`hivD6$*t(iN zBqi{cbqZqDFD;vlzMm4q=%LNwKo!{FpiOmUBUDVI_=RBMxCW6Nz}Uf{Ry!O_I4>GW z-6@NT$!@X2=H{wQ((o?;H;YDweGkj@1B=A~%79$Ux?&1)-Q~%NvlguXUN>w8C415ff~8LmJr`Z7c`oQ#&E> z3vWwuB^`1m7qV^=caCDbwe)9tLR`{#qg}SfPIG_B<%AONl3dZbBbz$(1Gt{FoPC zd*(%G=RjdwaR>`d<{Ij?sgjN{4hao%fVr+|@_2sqFW@bdNDIQ|5@wrdp#J?7R)PYD4yqS5Z8_ufEikj$Fd(wp$m{7PZam# z&Yr9=lg)-Kxi_$l;LpA*XO(lw*-qMex6Hg;+{zy@|B^kKaSm?Du#BADj$hC&0bmxQ z*7R4|H+TcmhhaE})7!p<0LZzFKKdf`BBQ~CXJ6F%iEM~rp!_BWFZ~eEkla67dWnBr zKGfzxO#;D>jjTU#fx%?`?Rp1HaA3p%vvD#5#UhQHmgM(XqMUN;`gsQHt4UdEa%vAL z1*2?xv0m=mI?%3Ns01es#pMznmZqj)pez|P*%@SA`#vSK_}^&iU%J>N8n)rGN4rQf z8sNuSy$PwCdWbCiNmxv${LGvCY5O~&(8A_9+LAXo#?o|QxP||3gc%$k5osg~84Ufl zot9u$8nP2`kr0j%hk^3GV2_p@H(eem6(V%`+R&f3b+w5ToHRMIw0DI$$Sq*JT#W2y zJ~*A%9adL9mte}^vZ3EVlx$fGsY^Qut&6X|b8e(Ni$csQ%1BStsv%spJNHJ?K;|uQ zBBJ#hh5nmw!TqO?BcZ#zmw6D@Pu&S5J|a2!#1~vm{@Mi{pHoq$weR6gABJPwIt^51 z=7GSsGpkPR3lP_dWkUQR>k0W3kI^iOu3dTf9m1aP-{6E2&exD!U8X)l(hV%ZTA4pC zVv$gB@!Gc=Sf`sliRwZ>Ow!qxBR_A_Y_V^^LpU+;+jO#TkhN|xgAcuMr%WAQ zXpxUx(3K%P6}a;o=$+OYhYZNo>7VKk&TxM^*ZH)fNSx+xY{oC-r@0s;-`R@qY zzv=U9BJe2M3&ehe@%uLy{_kDL$PkhEVV*8e1O1=>M<`7)abU&ekR-Nx%=D^0SOkrR z4?5!RcR&pN-c5qLCx&n(27V4V7yFX!{=ljjZNON1X%-fo#2fPefqr=sYSk2T79SSu&*}T#8^ja|4 z3oI^Ox%L<~YdlR9*94j`MlS6%m8wl>8ERTtT2i)^T)VDoYiinkajEp`nh~TMYL#0T z*Nd^W#&Kj)t7R+Y_0-Tz*X1!V8!ySP_P3Gt_02jy?8IH9T5&`DwGxVxd*k$d3-Nk^ zAEgdjM}=xkUq7hXQ_abdQ1ta}^hZ`MhR3pj<6G zpm9NEOiWF(2ffKNplIADV0nZpMJdR>0;Rtu!ae{(m+T=(*989)1ANk`cKl@5xBdFP zj`a$E{K@fWeK67*I&*L^=k*-)^Wfl@R|Th?pfug-#!zNLJXLKirNc#Tb>nhp>iUJg z$3aXpb#<RDUreou)8P|wSyOwE=x6dfTFNI))A%BEzx%O^*y zkK4uPp-iK3%u;%uoXHkz$X8p7%*%|x3yliRmS?3ed%TBBSrxtMq~is;tVylAdBziH zmbk+bM}OqcM&3vp|GEE%-y|^}4gK)kr&Yy8(0~4Y9S&j(Z>#e@(=Xhf-&d+=6Mx1u zMA{`k4rwpKA-6mf7vq=;t5==bPI+5&-F@A^~eBy{GxNf_*?+z3xfI z!DpDG)}lgN-Sx&G>l4xsc_We&+PkdJ>pNkSHcSZUfDHq@CSnbZ<>x02n>xR*=uNKg zP_0gu#5dJ@(LWcmA{%y@&v1$4BevG3NNZxiFb zoZNJC32=hpLVKBql$J7mLH^%y^QZHx+@g+vu{E>2?L>=T)+zw;wWqqSuZ(!mP=jGh zLXRFRcJ^ZT3h+bU0Aa>~LgsmnX!r!_5Two{w+<`k!m+vo}%1V+8?{+v04S+J8DuG|n(M(pd@yWe*r^3|f zR3t7_4LXIWm1QcCdSrOM_0yMr3VrT`5!VyDO%irOCC`}ORV1LEK1vgfL1(!&TLMRy z_P1%<4-TZ{<#Dreb5llXO)b&E&f0zsR#qcrWo5Nsb8bF9J`W*AXcsM@#FC!AzC%!u z(V=_#j9{v*@NcIfa`N<;(b~$+@xKZ0ZER#-J1pksHNE!6&~ozgy{1J&ZEbDS)NtCq zhmxA+G%d7YRfDsFHu2b0TKvMp$FJ>uO;(qHM>?GJ=r)fTPaWc|1R0_^YH4YW&0)7L zFZ0ftX3ZlENsuw^2PoyDZj+Yu@Rk3V{Hdg`Y1s<4ZjR|Za66b3SkKUn`+&ndlFmVt zU6N}};K=l(lhZJ3p+bKz1iAvq@<-}=Y#Da78cgp5+k-S zT2ZX?PaZv_Nb$rzdU`s^^44o5Fi4dsL6+Dyw9U3pNl*}4cX)7+rwX}7J{vPR^)pVI z*+!|NH9Olb0a~~45PL5zaqK~(aV0(C;WGBY_s5;G&a^!9SIeLPxsJ(L=V*$a zd0j`xgk8eU{li0Zwkko_7Ni0!d)=>ErHprmS0?Q+VVvb8O%J6SJ}8|%%d z1*>X#?-rRt*C*sr1ut7EdM*E-s8$;?1ru$G-*o`YzP1XSIJyGWXi9 zK^*iXm8XH&A35_q`AW(|p}U=lIK-%En)Bs_n>7oanWlLG9NS>FaF8VeSV)qYWNTV! z!8jn!(6FhF2TRQVu6nrz%c~i8ZxVRzXL~(U*qIG;*b$cnr6=;(*oysgEDY+@48N+= zPRNK3x~%^K=!W0C?SR_yjqbr7r+dzu3qxK{1XLfX?5Qd%sKO0S7ITiRTojc`&u%8% z6ImJuxfh~y&0LOkA_c#Qg$*RRg^c7X)bW_*0E)gNO%+sn#Y&Z~*$tV~mMa?fa#HV; zIeeY71!Me6DX@(KNnb4TK<_JFv}!MY&qRUvLqBqRP_D{VYaHC`cUJ}VdWdH;uhak> zJ7MAEv;+~aEtUwM;Ox%ZFaE}cL)wYaw7>3uy5odHX|6NSr8ynkv?{mW|Khg=#ns5` zf4LP}gDC6&beomA8w50d&qis@aF3Sj#2rjGVv-H zb~GdoKQ!OIH?UMWLVd}X%LKcdcV-@^Lh(a=j}3@8tZlXJ-u-?TZoeNZ=y&_0@8y`D zx}*pdjQ6gC<+*(OyK~dR*weC0rg_eh^}U=Q`u0WR*;jhzyvR8efFUlgBS`+Fd7^U)ZgaED`jVG^AeQf`H5Iqcu01oe_v&N`J#%C zLy&4p?U+O))DkqyTipAtXAqntcK^8GYf*7!=d#h5i`(7GA|8LKpH{da+J(>CX{Vsi z67{x)R8)!=EtxLmkv<7+jJ)$P_fz=g&V)7-KN0-qIWbQ1c9|%=-f!HPCeKtI<4y7B z<6o4LSS_D3FrZba{FGupSqo}jk|GjXPN@f8CgA35ug07&?#kZ>Pmc2uBd-Rl&)Epq z)HJ$(f#)a1OG|~rjvNWrwa2E`)39YRwaTEINca)RmaUrcKCue?Y;A`YDt7n$dMJ)tjkq1PgkfzbHGMoueFYvRs%Yn)I6B5-~_= zjB>@qatxW(+G}+b0CSDJ54l^E2C!}u3p8i#8h~sK9i`%yW$(>OFDG{J(&fZ}B{pW` zHw6m71a<~DBzE>(wq{u?rJXdtX`ij_EIsqR=FAcW^8h12c?BzD%c3L9*$4* zUDFa_t!=ss8x5&FvfFqml00|`v8rjy&D7I1@4o$-+FIj!3l2BvgI4=#dhxQhs+(Jk zzO1){f$*Oz!E6>4+|I)R`Uur({pFp5-e`R-@HB^qJ#fwP6r52^LWcn!5a zuz&+EBN|>v@^y-=HQbvqSO02&nZFc~$cSwF;9xQ*(dhY!NLIDm%GkJ@snlYIHp0A^ zTuG(Z`=Spc>X}F=MO$J7#jxLFKQ>+(g>q}efEWuI#(z#t%12@8&CAxPNR#rOxip|h z+sL*RzLP8^3}y6!?!tJ%4*B=vCiB!${?D$p(5tV>W|tZ_>nW)b*Rd7F-cLK#^4g~< zLW|A@8NblH<%V+~CKFD$Pl5CHc<$nO`g2~2ufBh-F=_X`*9ZbY=Y)s2!F9YlQ|tb0 zN=Pf^1%Y6R#hRN`Uk})3D=wsT)keZp0kfIF4*4XLEyL|%=lb{Rx8|-%`me$Xp^RTPl-QFL~(NFmIulu_w zn+l`RTEij8s|$M`r{2g=l;jr12&O~^`RELWN9>mXPzLKvY;>HdN@ccckB|9I0beQ@ zoFj}ZEhcN!mgbAvxTtx`f2nx^Ho`u9Q6-1H5F6KtWd=T}oQpAB4*s71%_~n=WW)-$ zLc{mT`x1jo&1rpIuxU_3#+BcJI)NuyT0$cDD_MLAdCPXuy}!Dtep zcPzZAqtF@PBNC$Q5)ype08p5Y6n}yoOA=}`eSzvKtOIc4%I$l0Ya8j^pUQzt4m)0x z!hIWIgW^nsbzdx)00sBNC$FQY+>26g{y``Tv?--e!2g?djjq#F2+xuhR5c>~yzoZP3_e zW$7f7y&Q>u3UT?#I$PFULA`tb=dfV>=w=X{i@0TlLVMOCI;0dhsTJfa) z8bQpe6vNN~DpYQ9JSTcW+P4gH`tI9HRFN-w2ePE4iOX)^)@%m^vT$+HJ((ozOC{*F zm-?s6J{R0EFEa~gHBFZU#823}YBkLlyoi1s?4!?J8yWgCd=#Du_%e{J0Eiu1+UQpy z$7QPV{`yH-$|`=8n9f;OO3h+qj+&0pNt|4EvS6_CPhT+5%sFO5#cWUOJPz7i-(@L8fA_>12Z{4Ddl)7fvyXnuaM5L|~ zZo5eTSkY@85set{O0ruQ@7X#vkosz?XKHH7AKa$*6Y`p&=f~b4gmX;_BfKrit*wS@ z<+3L!Ge>9!ziCmK-c?PFvT4|80{3^lb)73(>4E4o&nq*e-8#!|Df=#^E98G?B{Vp=wI zt*Yv3lopYX#luM46wvjhvi2qvYulAW-KxdOtLMzg;&TqSd4 z02~|*Aw^G#NjP_j0X*kP9|X~3Qx6dB9yiVGqwq(4a9*F{^GTfou}ZTYQXHAfcs6iM zOD$YQn*{e)xPPMlQJpl#hGs1v{|{#!YE6Z4Q*r?ve0D~H?7h#4z>3htIs;NMq=Y*y zQlqf)Y|c-u^Q}9NuobdrOt|j$XU8Q2oMQ+GNmP`OQ6@`4>Z~J9_%h6zsiZqIDUaf}JE=Pac-Rw4U18tj zAF`29rG_$03xCaabk8y@5CzT#;iLC^%}8?jJb%%?-eQi3^hDxR!KNuyD&ykQTt%#G z>n71V#5GOWt_H@~=?XD4g)zK6$A&{WgAY=6X&PTlwrjDjMv=3;VU-&3q#W z^w_eV0t%a9K>Y2X0nlC&FjcLY9)O*kDml%D_peAZfR)F~AqnV_uxuv6{$si$UwZB* z#zv8Y)`)Pd9tmnb7#jbaLaB=q_EVZh$WygWN4-rN`C(N&6QMfpvl>}Qk*aPGCTM5v|WHPf|7EmgeUqQVchbLdzI zLODA75-EVnMvnR>0t=0RtxO_t z*ovS|`}2FhBgglc1adqI0md<#k7x7qi+ua$CMIJCB^>ecSp(u6v_lX^Ggb+PSQ6%w z!#ST*2Jnyp=`o0e4tAj?^EBeHFes_r%>6xk0wwei{YKlGvES%9o=qXf#D_(oq*5ldNj6WS(UtR8z?YP$@qM zO8qImwwPgLPeD5Ie3h~8T*!+$OCG%boX$&%g3z6b{>_-Wn8WmGeZ|&O&Iku_fMB{qJ&pTZRS2_UYO&xBMJ0v?J8#hWS2WJe5gL|oJ? z5QZC_DAJvyhONX7$p+Ch_XZ{5{?c@Ko}RfSTf6vhfPu$)rhp$o-N&<6USfp_!us{o znMpgg7&t!-Ljr!720H@NtQ8cUSE1SV$}G8|mjNmAmQM{R6Q`u+6GWA6*hn;SU}48E zY$aN-m2SFc-v}IPM})s$A|Jy3us1UwDI_Y2?YC~9?J$gNT4Q>9A$UcdjpU(d6n=T+ zxJDS5=TbnFhIEp7I*o*UHp8+nf|UVtXf~l!S82;Yrh9EU^rr`Wym)E3Rk)5z42IMh z%!L};;c0fbP+N)fV6TsSMJnmZRM~ih#an3K2EXYqoD*2YZ+zHhGO!}a7(1Tdf#QT} z^QQPoSpuakqr>BVU(>eHNAjj|2*r&R_)9sG=dB$D3nvX|zE;#Q0aqT8$LFh;e^dcT z3}Re!PB+mnQ&}<{W!I;e+4(L|>@vkli@@0QlUNOB`*N%Sf&F`-E7*3=SEBK^)DLeg ziwY6AQOMzMHyh@?iEpZd{{D%&?)J@%b%>Uc*1W^w=AqAUAdL)wX4u=-ymae9-I+?x zZt09eTExsn0EpkI*NB2azRt&{`azJ?e#_q=K!~asC2(eWgS03iCaht%eX?4hqQl0Y zunDaVX|P&!dw57KEVyL&&=kpUEvV z1I_AY#Ups;rxEd9Kc{gZwrw4O_KPne?Uw6awKvE9S&?MFR|ppL5XABZ@w!Q^C8S{V zbAS|^glTJ0jhUW(H3+0@RYq*2`SFyIij6wC5u(|Se#@z$oc$51jr3Ufh=i(yd)}2o zWP)}b#-O4xf?t9)j4%^Qz8X5a6Yl0}F@A}uCjq)WGTYziwBsu!esn1YE!(@K|V*+%V%#{Ix)V zkNKofz|w}VA7hXLXKm;S4fA)W*UHLMb?0GUt#A*0e(~wx6$AU)O7rqC6v}8WP8k)u zZ^|Ve8p6+#?|Wg|HmX{OC0s}*)T9mO_G$~WCTC{Y3{NGQ7&vT1ZJQ{19(3`aGwRar zaF_{Rf!UN1JgI#VVk|myBE(x){t3GKtPhu9NvaUPA`XI%b3+LW5y0x$0ttOPvj&Yk zz)r77^Peq!WngiB2K{7XGG_>>5fNnj0;&J``-*wwi-y zsn2LHRcn0kQG_Lhc!rseb{R?Z!{M#CASs=^#lJZ?U5k&Xt3VXf!=??OvtStVOALj0 z+o-tXjMy3wzAPNHzuajw=~p8XMwcVEqP3^Nw$F!NBuwwQ=~qTNNmP5@%wDNgx>@ndM}3$}9o*Z|dk?LL68f4) zKhYA?HFyi+)WocL8=tig3JvYahahB29V>dGxT8 zvv0i3SG-O)nOUulSo=`FhM2VN&2#D2Z~%cDYpBRw)~bnXuSpWVkSEZv0$07v{7g|n z>rI6S?C@TM)*hup?Oa@QRrzig2eDi%x&c7kUX?Wo|25X5L`-52-So@r*nbrSNPxI* z3uU}LJk$92SOyP6_I<{ZCnd~1(LLJUWy)K{>P!$n&lyB?KGEOe4o%@xZa@&eyQRl; zZ|_>Fkc^$m+;;)?+cqlSpS%?{-Ri*=^|E(PiJPQzq(cyg%8x6-66K~dpyQuCNDsUN zPUDZyxY5#_%lNgPXY?G-HybQ30+V;y)=I-Kt#4k_5%gSg<3vKped`nd zKteS+mwB@H>(+$0Z#PxDOW$s27ik1sTo9BYQi2HRMjM(LCyM@+;Mm})Y zZh4+hyWgk?*J3Z=Q#3O|Ao=co+78cH;QQL{TKn|mG!e1KHZ$m~-90|$=R$XIc3rb_ zI+jBam-)rXOR|6j2@hQoOx#?79NeQiEfKM%hVu?<7kfLsQMdV7*^5tJ4+dWnYhNZwifIxA6!`X~jAU^!_1W{;v z{0B0(RW0?U8+4J~zKu_e-YLOr`D7}E z@UU%=1^?ks4Pb(3ja_}Or#m@S&=7v9g8tL2r(JZ`P@@$$gJN$eQ!YTZFIg90kpLID zI_kfEtxdGu8}#dZ!MG59>^yAC{yzfJ4aBe#ttL-8ww-r&i`-uO6rE>!+K#ouXOAZ3 zGlO~tuUxhj$$34{ebMy4oaeBn#J{zJmb^mE)2+rmj`Nq2@c-X`R!A~3gi6SZ(?{I_U_w}TYAPbi(0iO4#eMLs#ea?Zh zuy-F^m7^i(#Z14UHW;J-<@B&WV=1+ZRbC<@74=m}t%#QBdmJDYB1{BvCbTTtHr>+x z$^TT6fT>OwSQ3Q8Aow$AcpxN1$HyfCe`qKGn6LdW2l~HC0~#!-MQ?|2Z}^JTYW*@um>e5G?#ZIM9EFq6iV`7G|=*G2$lRfA1O)l?I#Nf9j2X zef}Q;g#Ra5xrY6#dr-B0DEp7v{I$ME=7TW$$a^Gsx;g#7o0KdK=20n<_=dQL|MxDJ znZLZL=!NNf(Eq8vfEc(QzQ1w%X#dYHaLcqsko{1eLH}_s{H^338n_G1Ub8>9O+E>_V2|}kF-mZ( z6=x)AP<*w0>0iy?fC1NWnF@%2fWXDeYx_mUB8T(z)zQZ$Jw3e!91!m6>Vg;3UGdj= z!4QCm3>5)Wu#jNSYy!EZpAI7_S(tHA@->a57KVAM{58rHYR7=DgFfV&a{twn7HB+R z&5{_8Q7nmpUAq95kH{q*2M0$_4L|W`J2SIEU%Tr@$38`(P%$ZzEk^$V}|<$sqqt zT@UxtB@>uut6qFnw|Cu1N^pcmwOA{X}fD&)aY=aI!{keB^NwG z!d7q=O&&`qWjITHeSKps;vW4=LW8kdc5V~{wygM@j>25h%vx=(j?rL$C@;v+*4y#S zD6B`8x3~BE^ZiaBdGD@|`Ny5aFAbf1STsutxo&KUx(X?hYL!3@wPvuo zP2eo8PDZmAk&boTNbXyHoR!JP)k1zB|Lca8MpP6i;cbV(mgjpSy{_`(n0D-b!uGBL{;t^Dj8mzuyGyR z0l)-3Dt>l+`$wx|-L&e(zRCr)%I+ch>UV@lQP0Dv^(Nan72STP{cqPlrVT1zf0BbA zo4lh|L7ay<(+B*!3oGsIc$3P+vr$iBzM1{ii1Pb*4r-%bd84K8~8hFrjxXay90yV<`k_~e{!$GoP!aMCqeH>6T#%OHN0_$47))iPEpID=J zZF*nH-@HH8IL_vK<7Bv|YnWKjVK^1YrCAriX}HV=b>cKR`?)UnYwM{#m-<6L=kKT1 z_Q#hY6yehqHT-R>kJ9+6H@PZwKTEB7=coxw>I?yqazH z&>ktFdsh%eo)yo1&f)Vs=^H631o-(1CxFdQ0wt~<21h9ex2;^r6QHPzLri=DfQp3* zj^+7ou^2u$1C=`8!o3;LOu+9|gCPAN^A1jDoQK{N{QjmSdy#az$`5d}#qeSRCcB~9 zrINxcU&OAqvtqx?K7qkWqxR;T1$}2vIc;YLOK)983zrIEa+{Nd+Pqn*t?PEk9rj&? zWttB_g+}sZxJSrO$R4IwyUd30AuaQt!_MnL9Und*UCBy_YDjeu^LbR9u5~ukkCYb# zto15odiOt@M zBc1j9&SJOjx_s(rc>C=m>BqQ7xY|>;I9YnZ{zU(;w;G2_w&X%WK-F| zD0j*bmj)Ys+8Op-Ze`T1Brmr*cH~w?|2mgE1nrOLqHz|Bb(>phRu!`iQHt!g9z^!_@Zz;+MJ&OTS+4Q!ig z)wTjIa`(~h`Y)zUPi-=-8sRbVdm}RQplq4+nKGEHto$-CGir1xW@OB_K{<=N0$+l< zga#gdY>`sOoWDyu%Znjol%zsMkD|8%(Zj!*o$>_81E}dG8qs~eG z+wGSD7(P8H%u-7<(JFQF9&qYh5K@2{ZlCy=~y-f!{1RUnb6 z+~>jYu(ALl_0xbu8qbGTmsCar8iRVf^Z z<5&c@im#1lK}Y3G=F>b2paf$n$#%9rs}B5&R0Cl7o4o2gh_-YGI28D5n1AiExvO`8 z<9eE`qL=oaz#`zYxx(1QgN-jjdosUoSNbmSHV|P~ROJ5qkF#YqL*n*tm)whiRm|8- z)2UzQU3@e3wTXk>Oak59+VBj-J#(j=12Q*P2o^U=*PlE0TdjN~ms|Sk%;(*HDl8gC zRL|{~)>cm>+A%z0)=&3m9(!4NUFaAdcKdrC4l}vO3BL26FZI1Wovgns9~j@Hc>T_Q zX~}}dG-Y+Z`Qmm=e!%^*?ru8m(}?lYmi$#T0CbD*UdV+t9q1-TY{PGG!56Enc>98zJxPDj%R2nvgJbK)!rxjH8kpdlJmN3L1Ye*{cBMWnGpB#?=2yCexm z7Ds-WGRtG@fED+}aEqY&C`ao{P;CoUcD-_^dLN_|m>T|JMB)vq_j>8f#*;E4ZGIUQ zh9Hr!0^82Yj!W>N`t%lcaX+R_qK*$+01@C;09 z8h>z{TAIH&b2wgnB8Bt?r`K4|oNZ5ld(8@~-jp{MFpuqjtKDSx`QZo(JIEk1qC)n9a;N?ldoe6uTPcsYw=5sEsVHxJk7?SK32weI`Sl|Q6I^5=ZR z1Ihd0sFqEYI0J8!-$3im7XW;*VA$Pr&l&xR={|aSTC)xxy?2r1XuDAv6(ikj0i1DF zvZ#7;rN@4Jr{uBSTr~2p&51knp^57RcHe7a?Q>9@JA9GEofJM0KeL;fk2>Iw6J|2i zE0}R!`Ec91v7>SWUfuDWcq1JC`3=pB{A~QX&_p5{- z^zRgpE~!mc_({dk8U&p)!Y|#D+(c0@6KA}r*mD~ zFkF3wz35tby}>O>TorFnn(8aA+=^Y}%hNph8>vYT7v%D;>Ju^KAddOb@kDL?pZ@qy zNkYd30G-%Mp{n}W#iwRgF;`Bdc-6qQz?+bu>C3{B6*$&Jo*>6VO`RwyeD3p!=1J}Y z2w?5?y}AYWZ$tPb$@QvkLi(z0QAf}w@$=|H>e<~@Wp6!VMsay`m-x~7JgKIZc4@G< z<}J3{U|zNG;q%0MpApxBVKP29!C-zZL(t7yj2mwEq)8J-VdBeV7LVB?@O^l=((U@T z*3JFeX<3`Nd4;>LFSj~LkCj78s_K`qw;1xGG*F0FKsD+_H%&1ohJfLq*qR!l1|qQAA9QQ+NtUEm$$TBPlE1g3IMizK>lOtH|fD_!9k>7U`X1>0Xb ztAlg)mHy6Y0*oQ1heVsi>y3i$WM|yZ)p6 z!ctJev7H>Sykg14sbl5CSqS+vE$FMiOajKjFE#2Kt71^ynXQ8HpU&B`GX8 zF?L)#c2-{4!7Xp-a{ef? z)>bt&y+$T{6YlcMvf;sr!M9*@zS-d}4c0-VVA+_M$p@oToN1rtq7%-hzA3b!E6_11;P4^XZf8Wn0SCwV4 zQn>Bd^zv7Hx0;=~a~f?p&j@99fa7 z<^G_a=qb80KD4y&K-fKdI@b?@I-%q5bq_XlRNh1q6NnH~Gn%vfRW5p;1j2uvd#X)$g)O=nr*7tj|#-Dhqd>&Ni=*35Pp{-d906pT9AE3PU;ga;VcZy|l z3B^OkHn>~gB&eGziUt)OU%YQOUprqIg5=xsHg&*%1XR}zaf~dvUE5xce^@;3WJ@O> zpUdQ3za30VPi(&Jq&0c|Rw_w7@QzMWNSDtj=il8Po}{06TU^wpeCGBR`N1JwfiI=g z$}2|rlkkPU%r1A0anw#12Zx||gj}cnWEsU$UmK|m^Ujww$-?)={_uXA&FEdk)#stx z*9%U-=ldvflyp_lf9FVXe{zZkiWw2`2X6DIsY? z0C>4pw;iq|%CU~cHMovkhL!+Iy`Fr4Cu|~iNvsa8CCGGd``FWwvvJY6vf!}VSY91B zN4;H3IH=dM`P-7tZCNzr;zUb^yz|n1CwJ0@kD-_^T&N{UA@fPM*0}%kV}P!@nEs~s zrX2s`%hUP=l6h|HrQseg^EoInhqt}EKK_%i<+F8gPicUkRaI`^){A82`?D%>+*ALb za}-$X~V< z1C8H@7p`}?pWm@nC**qwSG5=2Z9svkJEoSluFt*owfwmKn$sl$4g62gCodO=?GFNs zF#q4_dVYGZmh28 zR8aY!ARGriX#);`)u(i|QE0WCeDxjV+RWXhJMW|M#lBQ5ldnX%7!5W=V*`4JCrf{(a0r$c>ifygn&LwdU; zAQX){3;ch^Eh>aOB`TyvB@~A6-ww-X`8Xouj>7+AeehpB2;Qaz5$EsoV9OW?#Qggm zND&gL(GMJMRXG2AlGy6*SLPQ@sjGKR#1d|OeBh=|lL+C#?|Nlk*pC4r49n$Hgu`JXGDDwgQ Okd;)Ds1q{@`~Lu*zQ&0F literal 0 HcmV?d00001 diff --git a/storybook/design-system/src/assets/images/button/button-danger.png b/storybook/design-system/src/assets/images/button/button-danger.png new file mode 100644 index 0000000000000000000000000000000000000000..15546c5987cc338fe81472509ad21ebec0644a4c GIT binary patch literal 8060 zcmV-?AA{hDP)Px#32;bRa{vGqB>(^xB>_oNB=7(LA0bIZK~#7F?VSglT}AcB&(`d2cC(vKO-P|b z5Ro7tAPCY0r3gr|p(qL>e=vxG_(%UJVEO<3gQy@VA_^!Xh@udYF1!>%bfkZy=BTdbK0DlJNHi6tXZ=D=#n4PguuQXJ@C?*48?l>&R9#Y1OJ#HgDcMD=RB2nqKN=Wo4y}7%`$$ za>@JR&D^C;BhH*DB28!%viH@-!S7MbMegHL>EXlSs; z#zt>^t*xz2XMFIfeKj>THgxDvZ+z|T?M{Y1_=H3{y~!q40~?3~rF#0b)dxdQ%ehc4aNu3!z{-^? zH)!p_&^IVMLuG*j8-@d=#^-5k4~CwWbD><|KsRtelX99ot*)+4HQ5`J=r?s2mkP(g zfxv-o;edMfIE-JPUcOQuBMBtUSE??R_o>4tZy`=GBu)7=WrRD%m!^DL;R%;7KIKn~ zPwh;DPvz1=8hpNGV%lOE#@9)Y>x(Z<`7|;t3AJRPYUA=m>rFrHnT*B!K znz57@^ksPw~~KtmqUzpY;rJd)nICOwXEq@#%T5em>=d zv%7Uhyjihgg*TmQR~nsB8>KVC>kDagrVK=hF*P?g+tQ^=y%Z&0G||-5iYtEcG-sNOCn{K+PcR3XhKH>EN@l^PH7flGq{Q2`ui&1=xUHG)n zCe5?m<;$1bf&~k_Itbybudlbkg9rPt#pRU))It=W_NkzFsl`jaAoH0$d$w;e=TIa= zUk4~eYM-304|tE!%Ldh1r_V|*7|}VI&N(Ww<&P4(7^*GvrZTPl|V)UM9Pf&L{i zba_h;D%aouU#F*`(+yas=gO!oLbY!I?eyenXUYW}oddzwPR~{0G4HGPrC5QfHg+lk z^wk*^Ovz92F^$g1z*RPt&NS3nS@Tj+of!NKy}Zl@UHEIOT(|@T$w-vPtE#FpV(`R7 z#TlzGfFYjYl<>LX1--g2l+%+4pD##UWio_hEXk|Bk>1rKsB&dp8->qfNpXy{VZ}(Fov48b{o3NZy2Taxo9PY!>&xBGvbZwSyMPOLSh?&4AVfQGrmgGY4roE zZSkbz%sLVWyuW#O5~lxvQASD85cUU*6G`Uyn|i&Vlrl^R*7w*U*ch5BCBG0tfs!&=J|7U!h>F zp8N{g0|)vf2ST^pC&dDuSKbFlTtv}=o90(lPpd5%^HP(w;UMu7DHd7MN8%0A$47Wy)DF!cT-%g~a*fsz~u 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�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 literal 0 HcmV?d00001 diff --git a/storybook/design-system/src/assets/images/button/button-main.png b/storybook/design-system/src/assets/images/button/button-main.png new file mode 100644 index 0000000000000000000000000000000000000000..074b8974539ca46299f269e5e06df947aa29ef47 GIT binary patch literal 6633 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