@orangesk/orange-design-system 2.0.0-beta.0 → 2.0.0-beta.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/components/index.css +1 -2
- package/build/components/index.css.map +1 -1
- package/build/components/index.js +7 -7
- package/build/components/index.js.map +1 -1
- package/build/components/tsconfig.tsbuildinfo +1 -1
- package/build/components/types/index.d.ts +1508 -0
- package/build/components/types/src/components/Accordion/Accordion.d.ts +2 -0
- package/build/components/types/src/components/Accordion/AccordionHeader.d.ts +2 -1
- package/build/components/types/src/components/Accordion/AccordionItem.d.ts +2 -1
- package/build/components/types/src/components/AnchorNavigation/AnchorNavigation.d.ts +1 -1
- package/build/components/types/src/components/AnchorNavigation/AnchorNavigation.static.d.ts +19 -17
- package/build/components/types/src/components/AnchorNavigation/index.d.ts +0 -1
- package/build/components/types/src/components/BlockAction/index.d.ts +0 -1
- package/build/components/types/src/components/BodyBanner/index.d.ts +0 -1
- package/build/components/types/src/components/Button/Button.d.ts +1 -0
- package/build/components/types/src/components/Button/index.d.ts +0 -1
- package/build/components/types/src/components/Card/Card.d.ts +2 -4
- package/build/components/types/src/components/Card/CardSection.d.ts +2 -2
- package/build/components/types/src/components/Carousel/Carousel.d.ts +4 -0
- package/build/components/types/src/components/Carousel/Carousel.static.d.ts +1 -0
- package/build/components/types/src/components/Carousel/constants.d.ts +2 -0
- package/build/components/types/src/components/CarouselHero/CarouselHero.d.ts +18 -0
- package/build/components/types/src/components/CarouselHero/CarouselHero.static.d.ts +47 -0
- package/build/components/types/src/components/CarouselHero/CarouselHeroItem.d.ts +8 -0
- package/build/components/types/src/components/CarouselHero/constants.d.ts +33 -0
- package/build/components/types/src/components/CarouselHero/index.d.ts +2 -0
- package/build/components/types/src/components/Cover/index.d.ts +1 -2
- package/build/components/types/src/components/Divider/Divider.d.ts +0 -4
- package/build/components/types/src/components/Expander/Expander.d.ts +2 -2
- package/build/components/types/src/components/Footer/Footer.d.ts +1 -5
- package/build/components/types/src/components/Footer/constants.d.ts +9 -0
- package/build/components/types/src/components/Forms/Select/index.d.ts +0 -1
- package/build/components/types/src/components/Icon/iconSearchTags.d.ts +253 -251
- package/build/components/types/src/components/IconList/index.d.ts +2 -3
- package/build/components/types/src/components/List/index.d.ts +2 -3
- package/build/components/types/src/components/Megamenu/MegaMenuIcon.d.ts +13 -0
- package/build/components/types/src/components/Megamenu/Megamenu.d.ts +1 -9
- package/build/components/types/src/components/Megamenu/Megamenu.static.d.ts +47 -0
- package/build/components/types/src/components/Megamenu/MegamenuBlog.d.ts +1 -0
- package/build/components/types/src/components/Megamenu/constants.d.ts +48 -0
- package/build/components/types/src/components/Megamenu/index.d.ts +2 -3
- package/build/components/types/src/components/Megamenu/static.d.ts +22 -0
- package/build/components/types/src/components/Modal/Modal.d.ts +6 -0
- package/build/components/types/src/components/Modal/ModalBody.d.ts +4 -3
- package/build/components/types/src/components/Modal/ModalProductBody.d.ts +10 -0
- package/build/components/types/src/components/Modal/ModalProductFooter.d.ts +10 -0
- package/build/components/types/src/components/Modal/index.d.ts +2 -0
- package/build/components/types/src/components/Pagination/Pagination.d.ts +2 -3
- package/build/components/types/src/components/Pill/Pill.d.ts +4 -1
- package/build/components/types/src/components/Preview/PreviewGenerator.d.ts +1 -1
- package/build/components/types/src/components/PromoBanner/PromoBanner.d.ts +9 -5
- package/build/components/types/src/components/PromotionCard/PromotionCard.d.ts +2 -2
- package/build/components/types/src/components/Section/Section.d.ts +4 -1
- package/build/components/types/src/components/Tag/Tag.d.ts +9 -2
- package/build/components/types/src/components/index.d.ts +3 -5
- package/build/components/types/src/scripts/index.d.ts +10 -0
- package/build/lib/after-components.css +1 -1
- package/build/lib/after-components.css.map +1 -1
- package/build/lib/before-components.css +1 -1
- package/build/lib/before-components.css.map +1 -1
- package/build/lib/components.css +1 -1
- package/build/lib/components.css.map +1 -1
- package/build/lib/footer.css +2 -0
- package/build/lib/footer.css.map +1 -0
- package/build/lib/megamenu.css +2 -0
- package/build/lib/megamenu.css.map +1 -0
- package/build/lib/megamenu.js +2 -0
- package/build/lib/megamenu.js.map +1 -0
- package/build/lib/scripts.css +1 -1
- package/build/lib/scripts.css.map +1 -1
- package/build/lib/scripts.js +5 -5
- package/build/lib/scripts.js.map +1 -1
- package/build/lib/style.css +1 -1
- package/build/lib/style.css.map +1 -1
- package/build/lib/tsconfig.tsbuildinfo +1 -1
- package/build/logo-line.svg +5 -0
- package/build/sprite.svg +1 -1
- package/package.json +35 -29
- package/src/assets/icons/ai.svg +6 -0
- package/src/assets/icons/article.svg +7 -0
- package/src/assets/icons/pictogram-activation--dark.svg +10 -11
- package/src/assets/icons/pictogram-activation-free--dark.svg +4 -5
- package/src/assets/icons/pictogram-activation-free.svg +4 -5
- package/src/assets/icons/pictogram-activation.svg +10 -11
- package/src/assets/icons/pictogram-archive--dark.svg +3 -4
- package/src/assets/icons/pictogram-archive.svg +3 -4
- package/src/assets/icons/pictogram-calling-minutes--dark.svg +3 -4
- package/src/assets/icons/pictogram-calling-minutes.svg +3 -4
- package/src/assets/icons/pictogram-canal-plus--dark.svg +3 -4
- package/src/assets/icons/pictogram-canal-plus.svg +3 -4
- package/src/assets/icons/pictogram-competition-tickets--dark.svg +11 -12
- package/src/assets/icons/pictogram-competition-tickets.svg +11 -12
- package/src/assets/icons/pictogram-device-discount--dark.svg +7 -6
- package/src/assets/icons/pictogram-device-discount.svg +5 -6
- package/src/assets/icons/pictogram-discount-general--dark.svg +5 -6
- package/src/assets/icons/pictogram-discount-general.svg +5 -6
- package/src/assets/icons/pictogram-discount-price--dark.svg +5 -6
- package/src/assets/icons/pictogram-discount-price.svg +5 -6
- package/src/assets/icons/pictogram-extra-data--dark.svg +6 -7
- package/src/assets/icons/pictogram-extra-data.svg +6 -7
- package/src/assets/icons/pictogram-free-payment--dark.svg +5 -6
- package/src/assets/icons/pictogram-free-payment.svg +3 -6
- package/src/assets/icons/pictogram-gift--dark.svg +12 -13
- package/src/assets/icons/pictogram-gift-one-benefit--dark.svg +7 -8
- package/src/assets/icons/pictogram-gift-one-benefit.svg +7 -8
- package/src/assets/icons/pictogram-gift-two-benefits--dark.svg +8 -9
- package/src/assets/icons/pictogram-gift-two-benefits.svg +8 -9
- package/src/assets/icons/pictogram-gift.svg +3 -4
- package/src/assets/icons/pictogram-hbo-max--dark.svg +5 -6
- package/src/assets/icons/pictogram-hbo-max.svg +5 -6
- package/src/assets/icons/pictogram-infinite-sms--dark.svg +3 -4
- package/src/assets/icons/pictogram-infinite-sms.svg +3 -4
- package/src/assets/icons/pictogram-installation--dark.svg +4 -5
- package/src/assets/icons/pictogram-installation-free--dark.svg +4 -5
- package/src/assets/icons/pictogram-installation-free.svg +4 -5
- package/src/assets/icons/pictogram-installation.svg +4 -5
- package/src/assets/icons/pictogram-max--dark.svg +3 -4
- package/src/assets/icons/pictogram-max-canal-plus--dark.svg +5 -6
- package/src/assets/icons/pictogram-max-canal-plus.svg +5 -6
- package/src/assets/icons/pictogram-max.svg +3 -4
- package/src/assets/icons/pictogram-moj-orange-app--dark.svg +3 -4
- package/src/assets/icons/pictogram-moj-orange-app.svg +3 -4
- package/src/assets/icons/pictogram-movie-storage--dark.svg +4 -5
- package/src/assets/icons/pictogram-movie-storage.svg +4 -5
- package/src/assets/icons/pictogram-online-protection--dark.svg +3 -4
- package/src/assets/icons/pictogram-online-protection.svg +3 -4
- package/src/assets/icons/pictogram-random-damage--dark.svg +4 -8
- package/src/assets/icons/pictogram-random-damage.svg +4 -8
- package/src/assets/icons/pictogram-recycling--dark.svg +7 -8
- package/src/assets/icons/pictogram-recycling.svg +14 -15
- package/src/assets/icons/pictogram-repair--dark.svg +12 -13
- package/src/assets/icons/pictogram-repair.svg +12 -13
- package/src/assets/icons/pictogram-roaming--dark.svg +3 -4
- package/src/assets/icons/pictogram-roaming-discount--dark.svg +3 -16
- package/src/assets/icons/pictogram-roaming-discount.svg +15 -16
- package/src/assets/icons/pictogram-roaming.svg +3 -4
- package/src/assets/icons/pictogram-skylink--dark.svg +10 -11
- package/src/assets/icons/pictogram-skylink-live-tv--dark.svg +7 -8
- package/src/assets/icons/pictogram-skylink-live-tv.svg +7 -8
- package/src/assets/icons/pictogram-skylink.svg +10 -11
- package/src/assets/icons/pictogram-sms--dark.svg +5 -6
- package/src/assets/icons/pictogram-sms.svg +5 -6
- package/src/assets/icons/pictogram-theft--dark.svg +3 -7
- package/src/assets/icons/pictogram-theft.svg +3 -7
- package/src/assets/icons/pictogram-three-devices--dark.svg +4 -8
- package/src/assets/icons/pictogram-three-devices.svg +4 -8
- package/src/assets/icons/pictogram-trust--dark.svg +3 -4
- package/src/assets/icons/pictogram-trust.svg +3 -4
- package/src/assets/icons/pictogram-water-damage--dark.svg +5 -6
- package/src/assets/icons/pictogram-water-damage.svg +5 -6
- package/src/components/Accordion/Accordion.tsx +4 -0
- package/src/components/Accordion/AccordionHeader.tsx +9 -2
- package/src/components/Accordion/AccordionItem.tsx +5 -2
- package/src/components/Accordion/styles/config.scss +4 -4
- package/src/components/Accordion/styles/mixins.scss +9 -3
- package/src/components/Accordion/styles/style.scss +4 -0
- package/src/components/Accordion/tests/Accordion.unit.test.js +11 -0
- package/src/components/AnchorNavigation/AnchorNavigation.static.ts +253 -73
- package/src/components/AnchorNavigation/AnchorNavigation.tsx +20 -16
- package/src/components/AnchorNavigation/index.tsx +0 -2
- package/src/components/AnchorNavigation/styles/mixins.scss +14 -27
- package/src/components/AnchorNavigation/tests/AnchorNavigation.conformance.test.js +67 -0
- package/src/components/AnchorNavigation/tests/AnchorNavigation.unit.test.js +163 -0
- package/src/components/Bar/styles/config.scss +4 -5
- package/src/components/BlockAction/index.tsx +0 -2
- package/src/components/BlockAction/styles/mixins.scss +0 -6
- package/src/components/BodyBanner/index.tsx +0 -2
- package/src/components/Breadcrumbs/styles/mixins.scss +2 -4
- package/src/components/Button/Button.tsx +2 -2
- package/src/components/Button/index.tsx +0 -2
- package/src/components/Button/styles/config.scss +1 -1
- package/src/components/Button/styles/mixins.scss +5 -0
- package/src/components/Button/styles/style.scss +4 -0
- package/src/components/Card/Card.tsx +20 -8
- package/src/components/Card/CardSection.tsx +7 -11
- package/src/components/Card/styles/config.scss +1 -1
- package/src/components/Card/styles/mixins.scss +8 -6
- package/src/components/Card/styles/style.scss +4 -0
- package/src/components/Card/tests/Card.unit.test.js +45 -11
- package/src/components/Card/tests/CardSection.unit.test.js +36 -3
- package/src/components/Carousel/Carousel.static.ts +67 -1
- package/src/components/Carousel/Carousel.tsx +41 -19
- package/src/components/Carousel/constants.ts +2 -0
- package/src/components/Carousel/styles/config.scss +1 -2
- package/src/components/Carousel/styles/mixins.scss +35 -2
- package/src/components/Carousel/styles/style.scss +8 -0
- package/src/components/CarouselHero/CarouselHero.static.ts +528 -0
- package/src/components/CarouselHero/CarouselHero.tsx +147 -0
- package/src/components/CarouselHero/CarouselHeroItem.tsx +40 -0
- package/src/components/CarouselHero/constants.ts +36 -0
- package/src/components/CarouselHero/index.ts +2 -0
- package/src/components/CarouselHero/styles/config.scss +54 -0
- package/src/components/CarouselHero/styles/mixins.scss +278 -0
- package/src/components/CarouselHero/styles/style.scss +63 -0
- package/src/components/CarouselHero/tests/CarouselHero.conformance.test.js +130 -0
- package/src/components/CarouselHero/tests/CarouselHero.unit.test.js +346 -0
- package/src/components/CarouselHero/tests/CarouselHeroItem.conformance.test.js +135 -0
- package/src/components/CarouselHero/tests/CarouselHeroItem.unit.test.js +143 -0
- package/src/components/CarouselPromotions/styles/mixins.scss +10 -3
- package/src/components/CartTable/FooterPriceColumn.tsx +5 -3
- package/src/components/CartTable/Price.tsx +1 -1
- package/src/components/Controls/styles/config.scss +2 -2
- package/src/components/Controls/tests/Controls.test.js +0 -9
- package/src/components/Cover/index.ts +1 -2
- package/src/components/Divider/Divider.tsx +2 -16
- package/src/components/Divider/styles/config.scss +0 -17
- package/src/components/Divider/styles/mixins.scss +8 -10
- package/src/components/Divider/styles/style.scss +2 -16
- package/src/components/Divider/tests/Divider.conformance.test.js +1 -1
- package/src/components/Divider/tests/Divider.unit.test.js +0 -17
- package/src/components/Dropdown/styles/mixins.scss +1 -1
- package/src/components/Expander/Expander.tsx +4 -2
- package/src/components/Expander/styles/style.scss +7 -0
- package/src/components/Footer/Footer.tsx +86 -70
- package/src/components/Footer/constants.ts +10 -0
- package/src/components/Footer/styles/config.scss +1 -0
- package/src/components/Footer/styles/mixins.scss +172 -0
- package/src/components/Footer/styles/style.scss +48 -0
- package/src/components/Footer/tests/Footer.conformance.test.js +133 -8
- package/src/components/Footer/tests/Footer.unit.test.js +71 -6
- package/src/components/Forms/DatePicker/styles/style.scss +1 -1
- package/src/components/Forms/File/styles/mixins.scss +1 -1
- package/src/components/Forms/InputStepper/styles/style.scss +0 -66
- package/src/components/Forms/RangeSlider/styles/mixins.scss +1 -1
- package/src/components/Forms/Select/index.tsx +0 -2
- package/src/components/Forms/TextInput/styles/config.scss +1 -1
- package/src/components/Forms/styles/config.scss +3 -3
- package/src/components/Icon/iconSearchTags.ts +434 -432
- package/src/components/Icon/styles/style.scss +15 -0
- package/src/components/Icon/tests/Pictogram.unit.test.js +38 -0
- package/src/components/IconList/index.ts +2 -3
- package/src/components/Link/styles/style.scss +6 -2
- package/src/components/Link/tests/Link.conformance.test.js +5 -20
- package/src/components/Link/tests/Link.unit.test.js +1 -10
- package/src/components/List/index.ts +2 -3
- package/src/components/Loader/Loader.tsx +2 -10
- package/src/components/Loader/styles/mixins.scss +1 -1
- package/src/components/Loader/styles/style.scss +6 -4
- package/src/components/Megamenu/MegaMenuIcon.tsx +48 -0
- package/src/components/Megamenu/Megamenu.static.ts +600 -0
- package/src/components/Megamenu/Megamenu.tsx +799 -356
- package/src/components/Megamenu/MegamenuBlog.tsx +309 -0
- package/src/components/Megamenu/constants.ts +56 -0
- package/src/components/Megamenu/index.ts +2 -5
- package/src/components/Megamenu/static.ts +73 -0
- package/src/components/Megamenu/styles/config.scss +2 -13
- package/src/components/Megamenu/styles/mixins.scss +647 -208
- package/src/components/Megamenu/styles/style.scss +173 -61
- package/src/components/Modal/Modal.tsx +17 -2
- package/src/components/Modal/ModalBody.tsx +29 -14
- package/src/components/Modal/ModalProductBody.tsx +52 -0
- package/src/components/Modal/ModalProductFooter.tsx +38 -0
- package/src/components/Modal/index.ts +2 -0
- package/src/components/Modal/styles/config.scss +7 -0
- package/src/components/Modal/styles/mixins.scss +121 -14
- package/src/components/Modal/styles/style.scss +28 -0
- package/src/components/Modal/tests/Modal.unit.test.js +73 -0
- package/src/components/Modal/tests/ModalBody.unit.test.js +28 -12
- package/src/components/Pagination/Pagination.tsx +2 -2
- package/src/components/Pill/Pill.tsx +8 -3
- package/src/components/Pill/styles/config.scss +22 -2
- package/src/components/Pill/styles/style.scss +7 -3
- package/src/components/Pill/tests/Pill.conformance.test.js +7 -3
- package/src/components/Pill/tests/Pill.unit.test.js +45 -7
- package/src/components/Preview/PreviewGenerator.tsx +78 -34
- package/src/components/PromoBanner/PromoBanner.tsx +52 -34
- package/src/components/PromoBanner/styles/mixins.scss +37 -20
- package/src/components/PromoBanner/styles/style.scss +5 -11
- package/src/components/PromoBanner/tests/PromoBanner.conformance.test.js +781 -0
- package/src/components/PromoBanner/tests/PromoBanner.unit.test.js +529 -0
- package/src/components/PromotionCard/PromotionCard.tsx +13 -12
- package/src/components/PromotionCard/tests/PromotionCard.conformance.test.js +567 -0
- package/src/components/PromotionCard/tests/PromotionCard.unit.test.js +500 -0
- package/src/components/Section/Section.tsx +20 -4
- package/src/components/Section/styles/config.scss +18 -16
- package/src/components/Section/styles/mixins.scss +16 -13
- package/src/components/Section/styles/style.scss +1 -0
- package/src/components/Section/tests/Section.conformance.test.js +27 -10
- package/src/components/Section/tests/Section.unit.test.js +73 -25
- package/src/components/Tag/Tag.tsx +27 -3
- package/src/components/Tag/styles/config.scss +31 -0
- package/src/components/Tag/styles/mixins.scss +39 -3
- package/src/components/Tag/styles/style.scss +28 -2
- package/src/components/Tag/tests/Tag.conformance.test.js +19 -1
- package/src/components/Tag/tests/Tag.unit.test.js +93 -0
- package/src/components/Tile/styles/style.scss +1 -1
- package/src/components/index.ts +5 -6
- package/src/styles/base/globals.scss +19 -0
- package/src/styles/base/styleguide.scss +17 -17
- package/src/styles/export/base.js +2 -2
- package/src/styles/export/color.js +2 -2
- package/src/styles/shame.scss +2 -1
- package/src/styles/tokens/base.scss +1 -1
- package/src/styles/tokens/color.scss +12 -8
- package/src/styles/typography/mixins.scss +3 -2
- package/src/styles/utilities/border.scss +1 -1
- package/src/styles/utilities/color.scss +113 -20
- package/src/styles/utilities/index.scss +1 -0
- package/src/styles/utilities/layout.scss +9 -0
- package/src/styles/utilities/ordering.scss +44 -0
- package/build/components/Accordion/index.js +0 -16
- package/build/components/Accordion/index.js.map +0 -1
- package/build/components/Accordion/tsconfig.tsbuildinfo +0 -1
- package/build/components/Alert/index.js +0 -16
- package/build/components/Alert/index.js.map +0 -1
- package/build/components/Alert/tsconfig.tsbuildinfo +0 -1
- package/build/components/AnchorNavigation/index.js +0 -16
- package/build/components/AnchorNavigation/index.js.map +0 -1
- package/build/components/AnchorNavigation/style.css +0 -2
- package/build/components/AnchorNavigation/style.css.map +0 -1
- package/build/components/AnchorNavigation/tsconfig.tsbuildinfo +0 -1
- package/build/components/Bar/index.js +0 -16
- package/build/components/Bar/index.js.map +0 -1
- package/build/components/Bar/tsconfig.tsbuildinfo +0 -1
- package/build/components/BlockAction/index.js +0 -16
- package/build/components/BlockAction/index.js.map +0 -1
- package/build/components/BlockAction/style.css +0 -2
- package/build/components/BlockAction/style.css.map +0 -1
- package/build/components/BlockAction/tsconfig.tsbuildinfo +0 -1
- package/build/components/BodyBanner/index.js +0 -16
- package/build/components/BodyBanner/index.js.map +0 -1
- package/build/components/BodyBanner/style.css +0 -2
- package/build/components/BodyBanner/style.css.map +0 -1
- package/build/components/BodyBanner/tsconfig.tsbuildinfo +0 -1
- package/build/components/Breadcrumbs/index.js +0 -16
- package/build/components/Breadcrumbs/index.js.map +0 -1
- package/build/components/Breadcrumbs/tsconfig.tsbuildinfo +0 -1
- package/build/components/Button/index.js +0 -16
- package/build/components/Button/index.js.map +0 -1
- package/build/components/Button/style.css +0 -2
- package/build/components/Button/style.css.map +0 -1
- package/build/components/Button/tsconfig.tsbuildinfo +0 -1
- package/build/components/Buttons/index.js +0 -16
- package/build/components/Buttons/index.js.map +0 -1
- package/build/components/Buttons/tsconfig.tsbuildinfo +0 -1
- package/build/components/Card/index.js +0 -16
- package/build/components/Card/index.js.map +0 -1
- package/build/components/Card/tsconfig.tsbuildinfo +0 -1
- package/build/components/Carousel/index.js +0 -16
- package/build/components/Carousel/index.js.map +0 -1
- package/build/components/Carousel/style.css +0 -2
- package/build/components/Carousel/style.css.map +0 -1
- package/build/components/Carousel/tsconfig.tsbuildinfo +0 -1
- package/build/components/CarouselPromotions/index.js +0 -16
- package/build/components/CarouselPromotions/index.js.map +0 -1
- package/build/components/CarouselPromotions/tsconfig.tsbuildinfo +0 -1
- package/build/components/CartTable/index.js +0 -16
- package/build/components/CartTable/index.js.map +0 -1
- package/build/components/CartTable/style.css +0 -2
- package/build/components/CartTable/style.css.map +0 -1
- package/build/components/CartTable/tsconfig.tsbuildinfo +0 -1
- package/build/components/Code/index.js +0 -11
- package/build/components/Code/index.js.map +0 -1
- package/build/components/Code/style.css +0 -2
- package/build/components/Code/style.css.map +0 -1
- package/build/components/Code/tsconfig.tsbuildinfo +0 -1
- package/build/components/Container/index.js +0 -16
- package/build/components/Container/index.js.map +0 -1
- package/build/components/Container/tsconfig.tsbuildinfo +0 -1
- package/build/components/Controls/index.js +0 -16
- package/build/components/Controls/index.js.map +0 -1
- package/build/components/Controls/tsconfig.tsbuildinfo +0 -1
- package/build/components/Cover/index.js +0 -16
- package/build/components/Cover/index.js.map +0 -1
- package/build/components/Cover/style.css +0 -2
- package/build/components/Cover/style.css.map +0 -1
- package/build/components/Cover/tsconfig.tsbuildinfo +0 -1
- package/build/components/Divider/index.js +0 -16
- package/build/components/Divider/index.js.map +0 -1
- package/build/components/Divider/tsconfig.tsbuildinfo +0 -1
- package/build/components/DocumentationSidebar/index.js +0 -16
- package/build/components/DocumentationSidebar/index.js.map +0 -1
- package/build/components/DocumentationSidebar/style.css +0 -2
- package/build/components/DocumentationSidebar/style.css.map +0 -1
- package/build/components/DocumentationSidebar/tsconfig.tsbuildinfo +0 -1
- package/build/components/Dropdown/index.js +0 -16
- package/build/components/Dropdown/index.js.map +0 -1
- package/build/components/Dropdown/style.css +0 -2
- package/build/components/Dropdown/style.css.map +0 -1
- package/build/components/Dropdown/tsconfig.tsbuildinfo +0 -1
- package/build/components/Expander/index.js +0 -16
- package/build/components/Expander/index.js.map +0 -1
- package/build/components/Expander/tsconfig.tsbuildinfo +0 -1
- package/build/components/FeatureAccordion/index.js +0 -16
- package/build/components/FeatureAccordion/index.js.map +0 -1
- package/build/components/FeatureAccordion/style.css +0 -2
- package/build/components/FeatureAccordion/style.css.map +0 -1
- package/build/components/FeatureAccordion/tsconfig.tsbuildinfo +0 -1
- package/build/components/Footer/index.js +0 -16
- package/build/components/Footer/index.js.map +0 -1
- package/build/components/Footer/style.css +0 -2
- package/build/components/Footer/style.css.map +0 -1
- package/build/components/Footer/tsconfig.tsbuildinfo +0 -1
- package/build/components/Forms/index.js +0 -20
- package/build/components/Forms/index.js.map +0 -1
- package/build/components/Forms/style.css +0 -2
- package/build/components/Forms/style.css.map +0 -1
- package/build/components/Forms/tsconfig.tsbuildinfo +0 -1
- package/build/components/Gauge/index.js +0 -16
- package/build/components/Gauge/index.js.map +0 -1
- package/build/components/Gauge/tsconfig.tsbuildinfo +0 -1
- package/build/components/Grid/index.js +0 -16
- package/build/components/Grid/index.js.map +0 -1
- package/build/components/Grid/style.css +0 -2
- package/build/components/Grid/style.css.map +0 -1
- package/build/components/Grid/tsconfig.tsbuildinfo +0 -1
- package/build/components/Hero/index.js +0 -16
- package/build/components/Hero/index.js.map +0 -1
- package/build/components/Hero/style.css +0 -2
- package/build/components/Hero/style.css.map +0 -1
- package/build/components/Hero/tsconfig.tsbuildinfo +0 -1
- package/build/components/Icon/index.js +0 -11
- package/build/components/Icon/index.js.map +0 -1
- package/build/components/Icon/tsconfig.tsbuildinfo +0 -1
- package/build/components/IconList/index.js +0 -16
- package/build/components/IconList/index.js.map +0 -1
- package/build/components/IconList/style.css +0 -2
- package/build/components/IconList/style.css.map +0 -1
- package/build/components/IconList/tsconfig.tsbuildinfo +0 -1
- package/build/components/Image/index.js +0 -16
- package/build/components/Image/index.js.map +0 -1
- package/build/components/Image/tsconfig.tsbuildinfo +0 -1
- package/build/components/Link/index.js +0 -7
- package/build/components/Link/index.js.map +0 -1
- package/build/components/Link/tsconfig.tsbuildinfo +0 -1
- package/build/components/List/index.js +0 -16
- package/build/components/List/index.js.map +0 -1
- package/build/components/List/style.css +0 -2
- package/build/components/List/style.css.map +0 -1
- package/build/components/List/tsconfig.tsbuildinfo +0 -1
- package/build/components/Loader/index.js +0 -16
- package/build/components/Loader/index.js.map +0 -1
- package/build/components/Loader/tsconfig.tsbuildinfo +0 -1
- package/build/components/Megamenu/index.js +0 -20
- package/build/components/Megamenu/index.js.map +0 -1
- package/build/components/Megamenu/style.css +0 -2
- package/build/components/Megamenu/style.css.map +0 -1
- package/build/components/Megamenu/tsconfig.tsbuildinfo +0 -1
- package/build/components/Modal/index.js +0 -20
- package/build/components/Modal/index.js.map +0 -1
- package/build/components/Modal/style.css +0 -2
- package/build/components/Modal/style.css.map +0 -1
- package/build/components/Modal/tsconfig.tsbuildinfo +0 -1
- package/build/components/Pagination/index.js +0 -16
- package/build/components/Pagination/index.js.map +0 -1
- package/build/components/Pagination/tsconfig.tsbuildinfo +0 -1
- package/build/components/Pill/index.js +0 -16
- package/build/components/Pill/index.js.map +0 -1
- package/build/components/Pill/tsconfig.tsbuildinfo +0 -1
- package/build/components/Preview/index.js +0 -77
- package/build/components/Preview/index.js.map +0 -1
- package/build/components/Preview/style.css +0 -2
- package/build/components/Preview/style.css.map +0 -1
- package/build/components/Preview/tsconfig.tsbuildinfo +0 -1
- package/build/components/Progress/index.js +0 -16
- package/build/components/Progress/index.js.map +0 -1
- package/build/components/Progress/tsconfig.tsbuildinfo +0 -1
- package/build/components/PromoBanner/index.js +0 -16
- package/build/components/PromoBanner/index.js.map +0 -1
- package/build/components/PromoBanner/style.css +0 -2
- package/build/components/PromoBanner/style.css.map +0 -1
- package/build/components/PromoBanner/tsconfig.tsbuildinfo +0 -1
- package/build/components/PromotionCard/index.js +0 -16
- package/build/components/PromotionCard/index.js.map +0 -1
- package/build/components/PromotionCard/tsconfig.tsbuildinfo +0 -1
- package/build/components/Section/index.js +0 -16
- package/build/components/Section/index.js.map +0 -1
- package/build/components/Section/tsconfig.tsbuildinfo +0 -1
- package/build/components/Skeleton/index.js +0 -16
- package/build/components/Skeleton/index.js.map +0 -1
- package/build/components/Skeleton/tsconfig.tsbuildinfo +0 -1
- package/build/components/SkipLink/index.js +0 -16
- package/build/components/SkipLink/index.js.map +0 -1
- package/build/components/SkipLink/tsconfig.tsbuildinfo +0 -1
- package/build/components/Stepbar/index.js +0 -16
- package/build/components/Stepbar/index.js.map +0 -1
- package/build/components/Stepbar/tsconfig.tsbuildinfo +0 -1
- package/build/components/Sticker/index.js +0 -16
- package/build/components/Sticker/index.js.map +0 -1
- package/build/components/Sticker/tsconfig.tsbuildinfo +0 -1
- package/build/components/Table/index.js +0 -16
- package/build/components/Table/index.js.map +0 -1
- package/build/components/Table/style.css +0 -2
- package/build/components/Table/style.css.map +0 -1
- package/build/components/Table/tsconfig.tsbuildinfo +0 -1
- package/build/components/Tabs/index.js +0 -16
- package/build/components/Tabs/index.js.map +0 -1
- package/build/components/Tabs/tsconfig.tsbuildinfo +0 -1
- package/build/components/Tag/index.js +0 -16
- package/build/components/Tag/index.js.map +0 -1
- package/build/components/Tag/tsconfig.tsbuildinfo +0 -1
- package/build/components/Testimonial/index.js +0 -16
- package/build/components/Testimonial/index.js.map +0 -1
- package/build/components/Testimonial/tsconfig.tsbuildinfo +0 -1
- package/build/components/Tile/index.js +0 -16
- package/build/components/Tile/index.js.map +0 -1
- package/build/components/Tile/tsconfig.tsbuildinfo +0 -1
- package/build/components/Tooltip/index.js +0 -16
- package/build/components/Tooltip/index.js.map +0 -1
- package/build/components/Tooltip/style.css +0 -2
- package/build/components/Tooltip/style.css.map +0 -1
- package/build/components/Tooltip/tsconfig.tsbuildinfo +0 -1
- package/build/components/static.css +0 -2
- package/build/components/static.css.map +0 -1
- package/build/components/static.js +0 -10
- package/build/components/static.js.map +0 -1
- package/build/components/types/src/components/Hero/HeroPlayground.d.ts +0 -2
- package/build/components/types/src/components/Megamenu/MegamenuDropdown.d.ts +0 -17
- package/src/components/Accordion/Accordion.mdx +0 -222
- package/src/components/Alert/Alert.mdx +0 -141
- package/src/components/Bar/Bar.mdx +0 -203
- package/src/components/BlockAction/BlockAction.mdx +0 -244
- package/src/components/BodyBanner/BodyBanner.mdx +0 -268
- package/src/components/Breadcrumbs/Breadcrumbs.mdx +0 -84
- package/src/components/Button/Button.mdx +0 -273
- package/src/components/Buttons/Buttons.mdx +0 -39
- package/src/components/Card/Card.mdx +0 -334
- package/src/components/Carousel/Carousel.mdx +0 -159
- package/src/components/CarouselPromotions/CarouselPromotions.mdx +0 -246
- package/src/components/CartTable/CartTable.mdx +0 -129
- package/src/components/Container/Container.mdx +0 -73
- package/src/components/Controls/Controls.mdx +0 -469
- package/src/components/Cover/Cover.mdx +0 -87
- package/src/components/Divider/Divider.mdx +0 -65
- package/src/components/Dropdown/Dropdown.mdx +0 -260
- package/src/components/Expander/Expander.mdx +0 -153
- package/src/components/FeatureAccordion/FeatureAccordion.mdx +0 -33
- package/src/components/Forms/Autocomplete/Autocomplete.mdx +0 -198
- package/src/components/Forms/Checkbox/Checkbox.mdx +0 -139
- package/src/components/Forms/DatePicker/DatePicker.mdx +0 -149
- package/src/components/Forms/Field/Field.mdx +0 -383
- package/src/components/Forms/Fieldset/Fieldset.mdx +0 -178
- package/src/components/Forms/File/File.mdx +0 -88
- package/src/components/Forms/FormTooltip.mdx +0 -51
- package/src/components/Forms/Forms.mdx +0 -48
- package/src/components/Forms/Group/Group.mdx +0 -146
- package/src/components/Forms/Hint/Hint.mdx +0 -40
- package/src/components/Forms/InputStepper/InputStepper.mdx +0 -147
- package/src/components/Forms/Label/Label.mdx +0 -95
- package/src/components/Forms/Message/Message.mdx +0 -40
- package/src/components/Forms/Radio/Radio.mdx +0 -98
- package/src/components/Forms/RangeSlider/RangeSlider.mdx +0 -304
- package/src/components/Forms/Select/Select.mdx +0 -106
- package/src/components/Forms/TextArea/TextArea.mdx +0 -109
- package/src/components/Forms/TextInput/TextInput.mdx +0 -153
- package/src/components/Gauge/Gauge.mdx +0 -35
- package/src/components/Grid/Grid.mdx +0 -320
- package/src/components/Hero/Hero.mdx +0 -168
- package/src/components/Hero/HeroPlayground.tsx +0 -369
- package/src/components/Icon/Icon.mdx +0 -172
- package/src/components/IconList/IconList.mdx +0 -53
- package/src/components/Image/Image.mdx +0 -175
- package/src/components/Link/Link.mdx +0 -224
- package/src/components/List/List.mdx +0 -216
- package/src/components/Loader/Loader.mdx +0 -148
- package/src/components/Megamenu/MegamenuDropdown.tsx +0 -64
- package/src/components/Modal/Modal.mdx +0 -565
- package/src/components/Pagination/Pagination.mdx +0 -45
- package/src/components/Pill/Pill.mdx +0 -41
- package/src/components/Progress/Progress.mdx +0 -119
- package/src/components/PromotionCard/PromotionCard.mdx +0 -191
- package/src/components/Section/Section.mdx +0 -397
- package/src/components/Skeleton/Skeleton.mdx +0 -90
- package/src/components/SkipLink/SkipLink.mdx +0 -23
- package/src/components/Stepbar/Stepbar.mdx +0 -137
- package/src/components/Sticker/Sticker.mdx +0 -50
- package/src/components/Table/Table.mdx +0 -199
- package/src/components/Tabs/Tabs.mdx +0 -373
- package/src/components/Tag/Tag.mdx +0 -52
- package/src/components/Testimonial/Testimonial.mdx +0 -41
- package/src/components/Tile/Tile.mdx +0 -163
- package/src/components/Tooltip/Tooltip.mdx +0 -227
|
@@ -1,244 +0,0 @@
|
|
|
1
|
-
import { useRef, useEffect } from 'react';
|
|
2
|
-
import { ComponentDocs, DocsTable } from '@lighting-beetle/lighter-styleguide';
|
|
3
|
-
import { Preview } from '../../styleguide/';
|
|
4
|
-
|
|
5
|
-
import { useStatic } from '../../utils/hooks';
|
|
6
|
-
import Toggle from '../../scripts/modules/Toggle';
|
|
7
|
-
import Accordion, { AccordionItem } from '../Accordion';
|
|
8
|
-
import Bar, { BarItem } from '../Bar';
|
|
9
|
-
import Button from '../Button';
|
|
10
|
-
import Card, { CardSection } from '../Card';
|
|
11
|
-
import Icon from '../Icon';
|
|
12
|
-
import Link from '../Link';
|
|
13
|
-
import BlockAction, {
|
|
14
|
-
BlockActionControl,
|
|
15
|
-
BlockActionOverride,
|
|
16
|
-
BlockActionIndicator,
|
|
17
|
-
} from './';
|
|
18
|
-
|
|
19
|
-
export const ToggleButton = props => {
|
|
20
|
-
let [buttonRef] = useStatic(Toggle);
|
|
21
|
-
return <button ref={buttonRef} {...props} />;
|
|
22
|
-
};
|
|
23
|
-
|
|
24
|
-
# BlockAction
|
|
25
|
-
|
|
26
|
-
Utility component that makes whole blocks clickable.
|
|
27
|
-
|
|
28
|
-
Although it is possible to wrap even complex layouts in an `<a />` and even use flexbox layout in `<button />`s, this results in verbose screenreader output. BlockAction solves this issue and even allows for an override - a separate clickable element inside a clickable block, and an indicator - a non-interactive element that can indicate the block action is being hovered.
|
|
29
|
-
|
|
30
|
-
## Anatomy
|
|
31
|
-
|
|
32
|
-
BlockAction is a utility component. It does not render any elements. It's sole purpose is to assign classNames to it's children components/elements.
|
|
33
|
-
|
|
34
|
-
- **BlockAction** / `.block-action`<br />
|
|
35
|
-
Wrapper around the whole clickable block. Enables positioning.
|
|
36
|
-
- **BlockActionControl** / `.block-action__control`<br />
|
|
37
|
-
Interactive element (button or anchor) that receives a click event fired anywhere inside BlockAction. It has a pseudo element that spans the whole BlockAction wrapper. **Only one** control element allowed per BlockAction.
|
|
38
|
-
- **BlockActionOverride** / `.block-action__override`<br />
|
|
39
|
-
Another interactive element that can be clicked without firing a click event on BlockActionControl. This is achieved by it's own stacking context. BlockAction can contain multiple overrides (max. 2 recommended).
|
|
40
|
-
- **BlockActionIndicator** / `.block-action__indicator`<br />
|
|
41
|
-
Shows basic hover styles, indicates that the control element is heing hovered. Usually an [Icon](/components/icon).
|
|
42
|
-
|
|
43
|
-
## Examples
|
|
44
|
-
|
|
45
|
-
### Card
|
|
46
|
-
|
|
47
|
-
The following example shows a BlockAction [Card](/components/card). It's Control element is a [Link](/components/link) inside a heading. When hovering over the Card, the cursor changes to pointer and the Link element enters it's hover state. This is done via a pseudo element that spans the whole BlockAction wrapper. The Override element can be interated with separately as it has it's own staciking context. Clicking it does not activate the Control element.
|
|
48
|
-
|
|
49
|
-
<Preview>
|
|
50
|
-
<BlockAction>
|
|
51
|
-
<Card hasBorder>
|
|
52
|
-
<CardSection>
|
|
53
|
-
<h2 hasMdxLink={false}>
|
|
54
|
-
<Bar tag="span">
|
|
55
|
-
<BarItem isFilling tag="span">
|
|
56
|
-
<BlockActionControl>
|
|
57
|
-
<Link href="#">Control anchor</Link>
|
|
58
|
-
</BlockActionControl>
|
|
59
|
-
</BarItem>
|
|
60
|
-
<BarItem tag="span">
|
|
61
|
-
<BlockActionIndicator>
|
|
62
|
-
<Icon name="chevron-right" size="medium" />
|
|
63
|
-
</BlockActionIndicator>
|
|
64
|
-
</BarItem>
|
|
65
|
-
</Bar>
|
|
66
|
-
</h2>
|
|
67
|
-
<p>Aenean lacinia bibendum nulla sed consectetur.</p>
|
|
68
|
-
<BlockActionOverride>
|
|
69
|
-
<Button>Override button</Button>
|
|
70
|
-
</BlockActionOverride>
|
|
71
|
-
</CardSection>
|
|
72
|
-
</Card>
|
|
73
|
-
</BlockAction>
|
|
74
|
-
</Preview>
|
|
75
|
-
|
|
76
|
-
### Accordion
|
|
77
|
-
|
|
78
|
-
The following example shows an [Accordion](/components/accordion) with a [Button](/components/button) performing a separate action. It's Control element is an accordion button, which serves for opening and closing the accordion item and is placed inside a [Bar](/components/bar) layout. Since the accordion icon sits outsite the accordion button to make room for the override button, it's active class must be manually controlled using [Toggle](/js-modules/toggle) via `[data-toggle]` attribute. The icon is also being used as an Indicator element which changes the icon color when the Control element is being hovered.
|
|
79
|
-
|
|
80
|
-
<Preview>
|
|
81
|
-
<Accordion>
|
|
82
|
-
{[1, 2, 3].map(item => (
|
|
83
|
-
<AccordionItem
|
|
84
|
-
key={item.toString()}
|
|
85
|
-
title={`Block action accordion ${item}`}
|
|
86
|
-
renderHeader={(title, id) => (
|
|
87
|
-
<BlockAction>
|
|
88
|
-
<Bar canWrap={false} className="accordion__header">
|
|
89
|
-
<BarItem isFilling>
|
|
90
|
-
<h3 className="accordion__header" hasMdxLink={false}>
|
|
91
|
-
<BlockActionControl>
|
|
92
|
-
<ToggleButton
|
|
93
|
-
type="button"
|
|
94
|
-
aria-expanded="false"
|
|
95
|
-
className={`accordion__button`}
|
|
96
|
-
aria-controls={`${id}-section`}
|
|
97
|
-
id={id}
|
|
98
|
-
data-accordion-toggle
|
|
99
|
-
data-toggle={JSON.stringify([
|
|
100
|
-
{
|
|
101
|
-
target: `#manual-accordion-icon-${item}`,
|
|
102
|
-
attribute: 'class',
|
|
103
|
-
value: 'is-active',
|
|
104
|
-
},
|
|
105
|
-
])}
|
|
106
|
-
>
|
|
107
|
-
<span className="accordion__title">{title}</span>
|
|
108
|
-
</ToggleButton>
|
|
109
|
-
</BlockActionControl>
|
|
110
|
-
</h3>
|
|
111
|
-
</BarItem>
|
|
112
|
-
<BarItem>
|
|
113
|
-
<BlockActionOverride>
|
|
114
|
-
<Button size="small">Override {item}</Button>
|
|
115
|
-
</BlockActionOverride>
|
|
116
|
-
</BarItem>
|
|
117
|
-
<BarItem>
|
|
118
|
-
<BlockActionIndicator>
|
|
119
|
-
<Icon
|
|
120
|
-
id={`manual-accordion-icon-${item}`}
|
|
121
|
-
className={`accordion__icon`}
|
|
122
|
-
name="chevron-down"
|
|
123
|
-
size="medium"
|
|
124
|
-
/>
|
|
125
|
-
</BlockActionIndicator>
|
|
126
|
-
</BarItem>
|
|
127
|
-
</Bar>
|
|
128
|
-
</BlockAction>
|
|
129
|
-
)}
|
|
130
|
-
>
|
|
131
|
-
<p>
|
|
132
|
-
Cum sociis natoque penatibus et magnis dis parturient montes, nascetur
|
|
133
|
-
ridiculus mus. Curabitur blandit tempus porttitor.
|
|
134
|
-
</p>
|
|
135
|
-
</AccordionItem>
|
|
136
|
-
))}
|
|
137
|
-
</Accordion>
|
|
138
|
-
</Preview>
|
|
139
|
-
|
|
140
|
-
### Color reset
|
|
141
|
-
|
|
142
|
-
Use class `.block-action__indicator--color-reset` if you don't want text color change when BlockAction is being hovered.
|
|
143
|
-
|
|
144
|
-
<Preview>
|
|
145
|
-
<BlockAction>
|
|
146
|
-
<BlockActionIndicator className="block-action__indicator--color-reset">
|
|
147
|
-
<div className="card border border--gray border-radius--medium">
|
|
148
|
-
<div className="card__section">
|
|
149
|
-
<BlockActionControl>
|
|
150
|
-
<Button>Control</Button>
|
|
151
|
-
</BlockActionControl>
|
|
152
|
-
<p>With class .block-action__indicator--color-reset</p>
|
|
153
|
-
</div>
|
|
154
|
-
</div>
|
|
155
|
-
</BlockActionIndicator>
|
|
156
|
-
</BlockAction>
|
|
157
|
-
</Preview>
|
|
158
|
-
|
|
159
|
-
## JS module reference
|
|
160
|
-
|
|
161
|
-
Javascript is required when using an Indicator element.
|
|
162
|
-
|
|
163
|
-
All elements with `[data-block-action]` attribute are initialized automatically.
|
|
164
|
-
|
|
165
|
-
When a Block action contains a control and at least one indicator, the JS module adds mouseenter and mouseleave listeners to the control element and manages toggling a classname on the indicator elements.
|
|
166
|
-
|
|
167
|
-
### Custom init
|
|
168
|
-
|
|
169
|
-
```js
|
|
170
|
-
const instance = new window.ODS.modules.BlockAction(
|
|
171
|
-
document.getElementByUd('my-block-action'),
|
|
172
|
-
config
|
|
173
|
-
);
|
|
174
|
-
```
|
|
175
|
-
|
|
176
|
-
### Config
|
|
177
|
-
|
|
178
|
-
<DocsTable
|
|
179
|
-
data={[
|
|
180
|
-
{
|
|
181
|
-
prop: 'controlSelector',
|
|
182
|
-
type: 'string',
|
|
183
|
-
default: '.block-action__control',
|
|
184
|
-
description: 'Selector for looking up the control element',
|
|
185
|
-
},
|
|
186
|
-
{
|
|
187
|
-
prop: 'indicatorSelector',
|
|
188
|
-
type: 'string',
|
|
189
|
-
default: '.block-action__indicator',
|
|
190
|
-
description: 'Selector for looking up indicator element(s).',
|
|
191
|
-
},
|
|
192
|
-
{
|
|
193
|
-
prop: 'activeClass',
|
|
194
|
-
type: 'string',
|
|
195
|
-
default: 'is-indicating',
|
|
196
|
-
description:
|
|
197
|
-
'CSS class name toggled on indicator elements(s) when the control element is being hovered.',
|
|
198
|
-
},
|
|
199
|
-
]}
|
|
200
|
-
/>
|
|
201
|
-
|
|
202
|
-
### Methods
|
|
203
|
-
|
|
204
|
-
```js
|
|
205
|
-
const instance = document.querySelector(elementSelector).ODS_BlockAction;
|
|
206
|
-
instance.method();
|
|
207
|
-
```
|
|
208
|
-
|
|
209
|
-
<DocsTable
|
|
210
|
-
data={[
|
|
211
|
-
{
|
|
212
|
-
prop: 'init',
|
|
213
|
-
type: 'func',
|
|
214
|
-
default: '() => {}',
|
|
215
|
-
description:
|
|
216
|
-
'Initialize an instance. Called automatically on `new BlockAction(el, config)`',
|
|
217
|
-
},
|
|
218
|
-
{
|
|
219
|
-
prop: 'destroy',
|
|
220
|
-
type: 'func',
|
|
221
|
-
default: '() => {}',
|
|
222
|
-
description: 'Destroy the instance - removes all listeners',
|
|
223
|
-
},
|
|
224
|
-
{
|
|
225
|
-
prop: 'update',
|
|
226
|
-
type: 'func',
|
|
227
|
-
default: '() => {}',
|
|
228
|
-
description: 'Destroys the instance and calls a fresh init().',
|
|
229
|
-
},
|
|
230
|
-
]}
|
|
231
|
-
/>
|
|
232
|
-
|
|
233
|
-
## Props
|
|
234
|
-
|
|
235
|
-
All components clone their children and assign them the required classNames.
|
|
236
|
-
|
|
237
|
-
<ComponentDocs component={BlockAction} />
|
|
238
|
-
<ComponentDocs component={BlockActionControl} />
|
|
239
|
-
<ComponentDocs component={BlockActionIndicator} />
|
|
240
|
-
<ComponentDocs component={BlockActionOverride} />
|
|
241
|
-
|
|
242
|
-
## Notes
|
|
243
|
-
|
|
244
|
-
Based on [Inclusive Components - Cards](https://inclusive-components.design/cards/)
|
|
@@ -1,268 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
title: BodyBanner
|
|
3
|
-
description: A versatile banner component for displaying content with images and call-to-action buttons
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
import { BodyBanner } from './BodyBanner';
|
|
7
|
-
import { BodyBannerClientWrapper } from '../../app/components/body-banner/BodyBannerClientWrapper';
|
|
8
|
-
|
|
9
|
-
# BodyBanner
|
|
10
|
-
|
|
11
|
-
The BodyBanner component is a flexible banner that displays content with optional images and call-to-action buttons. It supports different sizes, color schemes, and layouts.
|
|
12
|
-
|
|
13
|
-
## Props
|
|
14
|
-
|
|
15
|
-
| Prop | Type | Required | Default | Description |
|
|
16
|
-
|------|------|----------|---------|-------------|
|
|
17
|
-
| `size` | `"small" \| "large"` | Yes | - | Size variant of the banner |
|
|
18
|
-
| `colorScheme` | `"light" \| "dark"` | Yes | - | Color scheme for the entire banner |
|
|
19
|
-
| `color` | `"gray" \| "orange"` | No | - | Background color variant |
|
|
20
|
-
| `className` | `string` | No | - | Additional CSS classes |
|
|
21
|
-
| `imageUrl` | `string` | No | - | URL of the banner image |
|
|
22
|
-
| `title` | `string` | No | - | Banner title |
|
|
23
|
-
| `description` | `string` | No | - | Banner description text |
|
|
24
|
-
| `buttonText` | `string` | No | - | Text for the call-to-action button |
|
|
25
|
-
|
|
26
|
-
## Size Variants
|
|
27
|
-
|
|
28
|
-
### Small Banner
|
|
29
|
-
|
|
30
|
-
The small banner displays content in a compact layout with the image positioned above the text content.
|
|
31
|
-
|
|
32
|
-
<BodyBannerClientWrapper>
|
|
33
|
-
<BodyBanner
|
|
34
|
-
size="small"
|
|
35
|
-
title="Small Banner Example"
|
|
36
|
-
description="This is a small banner with compact layout and image positioned above the content."
|
|
37
|
-
buttonText="Learn More"
|
|
38
|
-
imageUrl="/images/hero/example-lg.jpg"
|
|
39
|
-
/>
|
|
40
|
-
</BodyBannerClientWrapper>
|
|
41
|
-
|
|
42
|
-
```jsx
|
|
43
|
-
<BodyBanner
|
|
44
|
-
size="small"
|
|
45
|
-
title="Small Banner Example"
|
|
46
|
-
description="This is a small banner with compact layout and image positioned above the content."
|
|
47
|
-
buttonText="Learn More"
|
|
48
|
-
imageUrl="/images/hero/example-lg.jpg"
|
|
49
|
-
/>
|
|
50
|
-
```
|
|
51
|
-
|
|
52
|
-
### Large Banner
|
|
53
|
-
|
|
54
|
-
The large banner displays content in a two-column layout with the image positioned beside the text content.
|
|
55
|
-
|
|
56
|
-
<BodyBannerClientWrapper>
|
|
57
|
-
<BodyBanner
|
|
58
|
-
size="large"
|
|
59
|
-
title="Large Banner Example"
|
|
60
|
-
description="This is a large banner with two-column layout and image positioned beside the content."
|
|
61
|
-
buttonText="Get Started"
|
|
62
|
-
imageUrl="/images/hero/example-lg.jpg"
|
|
63
|
-
/>
|
|
64
|
-
</BodyBannerClientWrapper>
|
|
65
|
-
|
|
66
|
-
```jsx
|
|
67
|
-
<BodyBanner
|
|
68
|
-
size="large"
|
|
69
|
-
title="Large Banner Example"
|
|
70
|
-
description="This is a large banner with two-column layout and image positioned beside the content."
|
|
71
|
-
buttonText="Get Started"
|
|
72
|
-
imageUrl="/images/hero/example-lg.jpg"
|
|
73
|
-
/>
|
|
74
|
-
```
|
|
75
|
-
|
|
76
|
-
## Color Schemes
|
|
77
|
-
|
|
78
|
-
### Light Color Scheme
|
|
79
|
-
|
|
80
|
-
<BodyBannerClientWrapper>
|
|
81
|
-
<BodyBanner
|
|
82
|
-
size="small"
|
|
83
|
-
colorScheme="light"
|
|
84
|
-
title="Light Banner"
|
|
85
|
-
description="This banner uses a light color scheme."
|
|
86
|
-
buttonText="Learn More"
|
|
87
|
-
imageUrl="/images/hero/example-lg.jpg"
|
|
88
|
-
/>
|
|
89
|
-
</BodyBannerClientWrapper>
|
|
90
|
-
|
|
91
|
-
```jsx
|
|
92
|
-
<BodyBanner
|
|
93
|
-
size="small"
|
|
94
|
-
colorScheme="light"
|
|
95
|
-
title="Light Banner"
|
|
96
|
-
description="This banner uses a light color scheme."
|
|
97
|
-
buttonText="Learn More"
|
|
98
|
-
imageUrl="/images/hero/example-lg.jpg"
|
|
99
|
-
/>
|
|
100
|
-
```
|
|
101
|
-
|
|
102
|
-
### Dark Color Scheme
|
|
103
|
-
|
|
104
|
-
<BodyBannerClientWrapper>
|
|
105
|
-
<BodyBanner
|
|
106
|
-
size="small"
|
|
107
|
-
colorScheme="dark"
|
|
108
|
-
title="Dark Banner"
|
|
109
|
-
description="This banner uses a dark color scheme."
|
|
110
|
-
buttonText="Learn More"
|
|
111
|
-
imageUrl="/images/hero/example-lg.jpg"
|
|
112
|
-
/>
|
|
113
|
-
</BodyBannerClientWrapper>
|
|
114
|
-
|
|
115
|
-
```jsx
|
|
116
|
-
<BodyBanner
|
|
117
|
-
size="small"
|
|
118
|
-
colorScheme="dark"
|
|
119
|
-
title="Dark Banner"
|
|
120
|
-
description="This banner uses a dark color scheme."
|
|
121
|
-
buttonText="Learn More"
|
|
122
|
-
imageUrl="/images/hero/example-lg.jpg"
|
|
123
|
-
/>
|
|
124
|
-
```
|
|
125
|
-
|
|
126
|
-
## Color Variants
|
|
127
|
-
|
|
128
|
-
### Gray Background
|
|
129
|
-
|
|
130
|
-
<BodyBannerClientWrapper>
|
|
131
|
-
<BodyBanner
|
|
132
|
-
size="small"
|
|
133
|
-
colorScheme="light"
|
|
134
|
-
color="gray"
|
|
135
|
-
title="Gray Banner"
|
|
136
|
-
description="This banner has a gray background color."
|
|
137
|
-
buttonText="Learn More"
|
|
138
|
-
imageUrl="/images/hero/example-lg.jpg"
|
|
139
|
-
/>
|
|
140
|
-
</BodyBannerClientWrapper>
|
|
141
|
-
|
|
142
|
-
```jsx
|
|
143
|
-
<BodyBanner
|
|
144
|
-
size="small"
|
|
145
|
-
colorScheme="light"
|
|
146
|
-
color="gray"
|
|
147
|
-
title="Gray Banner"
|
|
148
|
-
description="This banner has a gray background color."
|
|
149
|
-
buttonText="Learn More"
|
|
150
|
-
imageUrl="/images/hero/example-lg.jpg"
|
|
151
|
-
/>
|
|
152
|
-
```
|
|
153
|
-
|
|
154
|
-
### Orange Background
|
|
155
|
-
|
|
156
|
-
<BodyBannerClientWrapper>
|
|
157
|
-
<BodyBanner
|
|
158
|
-
size="small"
|
|
159
|
-
colorScheme="light"
|
|
160
|
-
color="orange"
|
|
161
|
-
title="Orange Banner"
|
|
162
|
-
description="This banner has an orange background color."
|
|
163
|
-
buttonText="Learn More"
|
|
164
|
-
imageUrl="/images/hero/example-lg.jpg"
|
|
165
|
-
/>
|
|
166
|
-
</BodyBannerClientWrapper>
|
|
167
|
-
|
|
168
|
-
```jsx
|
|
169
|
-
<BodyBanner
|
|
170
|
-
size="small"
|
|
171
|
-
colorScheme="light"
|
|
172
|
-
color="orange"
|
|
173
|
-
title="Orange Banner"
|
|
174
|
-
description="This banner has an orange background color."
|
|
175
|
-
buttonText="Learn More"
|
|
176
|
-
imageUrl="/images/hero/example-lg.jpg"
|
|
177
|
-
/>
|
|
178
|
-
```
|
|
179
|
-
|
|
180
|
-
## Combined Examples
|
|
181
|
-
|
|
182
|
-
### Large Dark Banner with Orange Background
|
|
183
|
-
|
|
184
|
-
<BodyBannerClientWrapper>
|
|
185
|
-
<BodyBanner
|
|
186
|
-
size="large"
|
|
187
|
-
colorScheme="dark"
|
|
188
|
-
color="orange"
|
|
189
|
-
title="Large Dark Orange Banner"
|
|
190
|
-
description="This is a large banner with dark color scheme and orange background."
|
|
191
|
-
buttonText="Get Started"
|
|
192
|
-
imageUrl="/images/hero/example-lg.jpg"
|
|
193
|
-
/>
|
|
194
|
-
</BodyBannerClientWrapper>
|
|
195
|
-
|
|
196
|
-
```jsx
|
|
197
|
-
<BodyBanner
|
|
198
|
-
size="large"
|
|
199
|
-
colorScheme="dark"
|
|
200
|
-
color="orange"
|
|
201
|
-
title="Large Dark Orange Banner"
|
|
202
|
-
description="This is a large banner with dark color scheme and orange background."
|
|
203
|
-
buttonText="Get Started"
|
|
204
|
-
imageUrl="/images/hero/example-lg.jpg"
|
|
205
|
-
/>
|
|
206
|
-
```
|
|
207
|
-
|
|
208
|
-
### Small Light Banner with Gray Background
|
|
209
|
-
|
|
210
|
-
<BodyBannerClientWrapper>
|
|
211
|
-
<BodyBanner
|
|
212
|
-
size="small"
|
|
213
|
-
colorScheme="light"
|
|
214
|
-
color="gray"
|
|
215
|
-
title="Small Light Gray Banner"
|
|
216
|
-
description="This is a small banner with light color scheme and gray background."
|
|
217
|
-
buttonText="Learn More"
|
|
218
|
-
imageUrl="/images/hero/example-lg.jpg"
|
|
219
|
-
/>
|
|
220
|
-
</BodyBannerClientWrapper>
|
|
221
|
-
|
|
222
|
-
```jsx
|
|
223
|
-
<BodyBanner
|
|
224
|
-
size="small"
|
|
225
|
-
colorScheme="light"
|
|
226
|
-
color="gray"
|
|
227
|
-
title="Small Light Gray Banner"
|
|
228
|
-
description="This is a small banner with light color scheme and gray background."
|
|
229
|
-
buttonText="Learn More"
|
|
230
|
-
imageUrl="/images/hero/example-lg.jpg"
|
|
231
|
-
/>
|
|
232
|
-
```
|
|
233
|
-
|
|
234
|
-
## Banner Without Image
|
|
235
|
-
|
|
236
|
-
You can also use the BodyBanner without an image:
|
|
237
|
-
|
|
238
|
-
<BodyBannerClientWrapper>
|
|
239
|
-
<BodyBanner
|
|
240
|
-
size="small"
|
|
241
|
-
colorScheme="light"
|
|
242
|
-
title="Banner Without Image"
|
|
243
|
-
description="This banner doesn't include an image, focusing purely on the text content and call-to-action."
|
|
244
|
-
buttonText="Learn More"
|
|
245
|
-
/>
|
|
246
|
-
</BodyBannerClientWrapper>
|
|
247
|
-
|
|
248
|
-
```jsx
|
|
249
|
-
<BodyBanner
|
|
250
|
-
size="small"
|
|
251
|
-
colorScheme="light"
|
|
252
|
-
title="Banner Without Image"
|
|
253
|
-
description="This banner doesn't include an image, focusing purely on the text content and call-to-action."
|
|
254
|
-
buttonText="Learn More"
|
|
255
|
-
/>
|
|
256
|
-
```
|
|
257
|
-
|
|
258
|
-
## Usage Guidelines
|
|
259
|
-
|
|
260
|
-
- Use **small** banners for compact content displays or when space is limited
|
|
261
|
-
- Use **large** banners for prominent content that needs more visual impact
|
|
262
|
-
- The **colorScheme** prop is required and determines the overall color scheme (light/dark)
|
|
263
|
-
- Choose **light** color scheme for better readability on light backgrounds
|
|
264
|
-
- Choose **dark** color scheme for better contrast on dark backgrounds
|
|
265
|
-
- The **color** prop provides additional background color options (gray, orange)
|
|
266
|
-
- Always provide meaningful `alt` text for images through the Image component
|
|
267
|
-
- Ensure button text is clear and actionable
|
|
268
|
-
- Consider the content hierarchy when choosing between title and description text
|
|
@@ -1,84 +0,0 @@
|
|
|
1
|
-
import { ComponentDocs, md, Dos, Donts } from '@lighting-beetle/lighter-styleguide';
|
|
2
|
-
import { Preview } from '../../styleguide/';
|
|
3
|
-
|
|
4
|
-
import Breadcrumbs from './index';
|
|
5
|
-
import Grid, { GridCol } from '../Grid';
|
|
6
|
-
|
|
7
|
-
export const breadcrumbsItems = [
|
|
8
|
-
{
|
|
9
|
-
text: 'Home',
|
|
10
|
-
url: '/styleguide',
|
|
11
|
-
},
|
|
12
|
-
{
|
|
13
|
-
text: 'Components',
|
|
14
|
-
url: '/components',
|
|
15
|
-
},
|
|
16
|
-
{
|
|
17
|
-
text: 'Breadcrumbs',
|
|
18
|
-
url: '#main',
|
|
19
|
-
},
|
|
20
|
-
];
|
|
21
|
-
|
|
22
|
-
# Breadcrumbs
|
|
23
|
-
|
|
24
|
-
Help users understand where they are within a website’s structure and move between levels.
|
|
25
|
-
|
|
26
|
-
<Preview>
|
|
27
|
-
<Breadcrumbs label="Breadcrumbs" items={breadcrumbsItems} />
|
|
28
|
-
</Preview>
|
|
29
|
-
|
|
30
|
-
<Grid>
|
|
31
|
-
<GridCol size={{ md: 6 }}>
|
|
32
|
-
<Dos>
|
|
33
|
-
<p>
|
|
34
|
-
Use the breadcrumbs component on every page, where you need to help
|
|
35
|
-
users understand and move between the multiple levels of a website.
|
|
36
|
-
That means virtually every page except the homepage and checkout.
|
|
37
|
-
</p>
|
|
38
|
-
<p>Include the current page to indicate current location.</p>
|
|
39
|
-
</Dos>
|
|
40
|
-
</GridCol>
|
|
41
|
-
<GridCol size={{ md: 6 }}>
|
|
42
|
-
<Donts>
|
|
43
|
-
<p>
|
|
44
|
-
Don’t use the breadcrumbs to show progress through a linear journey or
|
|
45
|
-
transaction.
|
|
46
|
-
</p>
|
|
47
|
-
</Donts>
|
|
48
|
-
</GridCol>
|
|
49
|
-
</Grid>
|
|
50
|
-
|
|
51
|
-
## Higlighting current page to screen readers
|
|
52
|
-
|
|
53
|
-
If your application implements HTML5 landmarks (it should if possible), breadcrumbs should not be a part of the main region, current page hyperlink should point to the main region and be identified with `aria-current="page"` attribute. Otherwise, current page should not be a hyperlink and the `aria-current="page"` is applied to its wrapping `<li />`.
|
|
54
|
-
|
|
55
|
-
### Current page item as hyperlink
|
|
56
|
-
|
|
57
|
-
<Preview>
|
|
58
|
-
<Breadcrumbs label="Breadcrumbs" items={breadcrumbsItems} />
|
|
59
|
-
</Preview>
|
|
60
|
-
|
|
61
|
-
### Current page item without hyperlink
|
|
62
|
-
|
|
63
|
-
<Preview>
|
|
64
|
-
<Breadcrumbs label="Breadcrumbs" items={[ breadcrumbsItems[0], breadcrumbsItems[1], { text: 'Breadcrumbs'} ]} />
|
|
65
|
-
</Preview>
|
|
66
|
-
|
|
67
|
-
## Dark mode
|
|
68
|
-
|
|
69
|
-
<Preview>
|
|
70
|
-
<Breadcrumbs darkMode label="Breadcrumbs" items={breadcrumbsItems} />
|
|
71
|
-
</Preview>
|
|
72
|
-
|
|
73
|
-
## Props
|
|
74
|
-
|
|
75
|
-
<ComponentDocs title="<Breadcrumbs />" component={Breadcrumbs} />
|
|
76
|
-
|
|
77
|
-
## Accessibility
|
|
78
|
-
|
|
79
|
-
The breadcrumb component is built according to [WAI-ARIA authoring practices 1.1](https://www.w3.org/TR/wai-aria-practices-1.1/#breadcrumb).
|
|
80
|
-
|
|
81
|
-
## Notes
|
|
82
|
-
|
|
83
|
-
* On small screens, breadcrumbs collapse and show only the parent page of the current location to provide a simple back button.
|
|
84
|
-
* This component can be used as a separate package. The only asset required for proper use is a stylesheet, located in `lib/breadcrumbs.css`.
|