@orangesk/orange-design-system 2.0.0-beta.2 → 2.0.0-beta.21
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/README.md +346 -19
- package/build/components/Accordion/style.css +2 -0
- package/build/components/Accordion/style.css.map +1 -0
- package/build/components/Alert/style.css +2 -0
- package/build/components/Alert/style.css.map +1 -0
- package/build/components/AnchorNavigation/style.css +1 -1
- package/build/components/AnchorNavigation/style.css.map +1 -1
- package/build/components/Bar/style.css +2 -0
- package/build/components/Bar/style.css.map +1 -0
- package/build/components/BlockAction/style.css +2 -0
- package/build/components/BlockAction/style.css.map +1 -0
- package/build/components/BodyBanner/style.css +1 -1
- package/build/components/BodyBanner/style.css.map +1 -1
- package/build/components/Breadcrumbs/style.css +2 -0
- package/build/components/Breadcrumbs/style.css.map +1 -0
- package/build/components/Button/style.css +2 -0
- package/build/components/Button/style.css.map +1 -0
- package/build/components/Buttons/style.css +2 -0
- package/build/components/Buttons/style.css.map +1 -0
- package/build/components/Card/style.css +2 -0
- package/build/components/Card/style.css.map +1 -0
- package/build/components/Carousel/style.css +1 -1
- package/build/components/Carousel/style.css.map +1 -1
- package/build/components/CarouselHero/style.css +2 -0
- package/build/components/CarouselHero/style.css.map +1 -0
- package/build/components/CarouselPromotions/style.css +2 -0
- package/build/components/CarouselPromotions/style.css.map +1 -0
- package/build/components/CartTable/style.css +1 -1
- package/build/components/CartTable/style.css.map +1 -1
- package/build/components/Container/style.css +2 -0
- package/build/components/Container/style.css.map +1 -0
- package/build/components/Controls/style.css +2 -0
- package/build/components/Controls/style.css.map +1 -0
- package/build/components/Cover/style.css +2 -0
- package/build/components/Cover/style.css.map +1 -0
- package/build/components/Divider/style.css +2 -0
- package/build/components/Divider/style.css.map +1 -0
- package/build/components/DocumentationSidebar/style.css +1 -1
- package/build/components/DocumentationSidebar/style.css.map +1 -1
- package/build/components/Dropdown/style.css +1 -1
- package/build/components/Dropdown/style.css.map +1 -1
- package/build/components/Expander/style.css +2 -0
- package/build/components/Expander/style.css.map +1 -0
- package/build/components/FeatureAccordion/style.css +1 -1
- package/build/components/FeatureAccordion/style.css.map +1 -1
- package/build/components/Footer/style.css +1 -1
- package/build/components/Footer/style.css.map +1 -1
- package/build/components/Gauge/style.css +2 -0
- package/build/components/Gauge/style.css.map +1 -0
- package/build/components/Grid/style.css +1 -1
- package/build/components/Grid/style.css.map +1 -1
- package/build/components/Hero/style.css +1 -1
- package/build/components/Hero/style.css.map +1 -1
- package/build/components/Icon/style.css +2 -0
- package/build/components/Icon/style.css.map +1 -0
- package/build/components/IconList/style.css +1 -1
- package/build/components/IconList/style.css.map +1 -1
- package/build/components/Image/style.css +2 -0
- package/build/components/Image/style.css.map +1 -0
- package/build/components/Link/style.css +2 -0
- package/build/components/Link/style.css.map +1 -0
- package/build/components/List/style.css +2 -0
- package/build/components/List/style.css.map +1 -0
- package/build/components/Loader/style.css +2 -0
- package/build/components/Loader/style.css.map +1 -0
- package/build/components/Megamenu/style.css +2 -0
- package/build/components/Megamenu/style.css.map +1 -0
- package/build/components/Modal/style.css +2 -0
- package/build/components/Modal/style.css.map +1 -0
- package/build/components/Pagination/style.css +2 -0
- package/build/components/Pagination/style.css.map +1 -0
- package/build/components/Pill/style.css +2 -0
- package/build/components/Pill/style.css.map +1 -0
- package/build/components/Preview/style.css +1 -1
- package/build/components/Preview/style.css.map +1 -1
- package/build/components/Progress/style.css +2 -0
- package/build/components/Progress/style.css.map +1 -0
- package/build/components/PromoBanner/style.css +1 -1
- package/build/components/PromoBanner/style.css.map +1 -1
- package/build/components/PromotionCard/style.css +2 -0
- package/build/components/PromotionCard/style.css.map +1 -0
- package/build/components/Section/style.css +2 -0
- package/build/components/Section/style.css.map +1 -0
- package/build/components/Skeleton/style.css +2 -0
- package/build/components/Skeleton/style.css.map +1 -0
- package/build/components/SkipLink/style.css +2 -0
- package/build/components/SkipLink/style.css.map +1 -0
- package/build/components/SocialButton/style.css +2 -0
- package/build/components/SocialButton/style.css.map +1 -0
- package/build/components/Stepbar/style.css +2 -0
- package/build/components/Stepbar/style.css.map +1 -0
- package/build/components/Sticker/style.css +2 -0
- package/build/components/Sticker/style.css.map +1 -0
- package/build/components/Table/style.css +2 -0
- package/build/components/Table/style.css.map +1 -0
- package/build/components/Tabs/style.css +2 -0
- package/build/components/Tabs/style.css.map +1 -0
- package/build/components/Tag/style.css +2 -0
- package/build/components/Tag/style.css.map +1 -0
- package/build/components/Testimonial/style.css +2 -0
- package/build/components/Testimonial/style.css.map +1 -0
- package/build/components/Tile/style.css +2 -0
- package/build/components/Tile/style.css.map +1 -0
- package/build/components/Tooltip/style.css +1 -1
- package/build/components/Tooltip/style.css.map +1 -1
- package/build/components/index.js +1 -23
- package/build/components/index.js.map +1 -1
- package/build/components/tsconfig.tsbuildinfo +1 -1
- package/build/components/types/index.d.ts +1497 -0
- package/build/components/types/src/components/Accordion/Accordion.d.ts +2 -2
- package/build/components/types/src/components/Accordion/Accordion.static.d.ts +1 -0
- package/build/components/types/src/components/Alert/Alert.d.ts +0 -2
- package/build/components/types/src/components/AnchorNavigation/AnchorNavigation.d.ts +1 -2
- package/build/components/types/src/components/AnchorNavigation/AnchorNavigation.static.d.ts +20 -17
- package/build/components/types/src/components/BlockAction/BlockAction.d.ts +2 -0
- package/build/components/types/src/components/BlockAction/Context.d.ts +2 -0
- package/build/components/types/src/components/BodyBanner/BodyBanner.d.ts +10 -10
- package/build/components/types/src/components/Breadcrumbs/Breadcrumbs.d.ts +0 -2
- package/build/components/types/src/components/Button/Button.d.ts +1 -1
- package/build/components/types/src/components/Button/index.d.ts +3 -4
- package/build/components/types/src/components/Card/Card.d.ts +2 -1
- package/build/components/types/src/components/Card/CardSection.d.ts +2 -2
- package/build/components/types/src/components/Card/index.d.ts +1 -0
- package/build/components/types/src/components/Carousel/Carousel.d.ts +4 -2
- package/build/components/types/src/components/Carousel/Carousel.static.d.ts +61 -7
- package/build/components/types/src/components/Carousel/constants.d.ts +2 -0
- package/build/components/types/src/components/CarouselHero/CarouselHero.d.ts +17 -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/CarouselPromotions/CarouselPromotions.d.ts +0 -1
- package/build/components/types/src/components/Controls/Controls.d.ts +0 -1
- package/build/components/types/src/components/Cover/Cover.d.ts +3 -3
- package/build/components/types/src/components/Divider/Divider.d.ts +0 -4
- package/build/components/types/src/components/DocumentationSidebar/DocumentationSidebar.d.ts +1 -0
- package/build/components/types/src/components/Expander/Expander.d.ts +2 -5
- package/build/components/types/src/components/FeatureAccordion/FeatureAccordion.d.ts +1 -3
- package/build/components/types/src/components/Footer/Footer.d.ts +1 -5
- package/build/components/types/src/components/Footer/PlanObnovy.d.ts +1 -0
- package/build/components/types/src/components/Footer/constants.d.ts +10 -0
- package/build/components/types/src/components/Footer/data.d.ts +6 -0
- package/build/components/types/src/components/Forms/InputStepper/InputStepper.d.ts +0 -1
- package/build/components/types/src/components/Forms/Select/index.d.ts +1 -1
- package/build/components/types/src/components/Grid/Grid.d.ts +1 -1
- package/build/components/types/src/components/Grid/GridCol.d.ts +1 -1
- package/build/components/types/src/components/Hero/Hero.d.ts +0 -3
- package/build/components/types/src/components/Icon/IconSearch.d.ts +2 -2
- package/build/components/types/src/components/Icon/IconSearchWrapper.d.ts +1 -1
- package/build/components/types/src/components/Icon/iconSearchTags.d.ts +259 -252
- package/build/components/types/src/components/Link/Link.d.ts +2 -2
- package/build/components/types/src/components/Megamenu/Megamenu.d.ts +6 -1
- package/build/components/types/src/components/Megamenu/MegamenuBlog.d.ts +2 -1
- package/build/components/types/src/components/Megamenu/constants.d.ts +4 -0
- package/build/components/types/src/components/Megamenu/static.d.ts +2 -3
- package/build/components/types/src/components/Modal/Modal.d.ts +0 -4
- package/build/components/types/src/components/Modal/ModalBody.d.ts +3 -3
- package/build/components/types/src/components/Modal/ModalProductHeader.d.ts +2 -0
- package/build/components/types/src/components/Modal/index.d.ts +0 -1
- package/build/components/types/src/components/Pagination/Pagination.d.ts +2 -5
- package/build/components/types/src/components/Pagination/Separator.d.ts +2 -2
- package/build/components/types/src/components/Pill/Pill.d.ts +3 -1
- package/build/components/types/src/components/Preview/Preview.d.ts +1 -1
- package/build/components/types/src/components/Preview/PreviewGenerator.d.ts +1 -0
- package/build/components/types/src/components/Preview/index.d.ts +1 -1
- package/build/components/types/src/components/Progress/Progress.d.ts +0 -1
- package/build/components/types/src/components/PromoBanner/PromoBanner.d.ts +9 -6
- package/build/components/types/src/components/PromotionCard/PromotionCard.d.ts +3 -3
- package/build/components/types/src/components/Section/Section.d.ts +4 -1
- package/build/components/types/src/components/SocialButton/SocialButton.d.ts +13 -0
- package/build/components/types/src/components/SocialButton/index.d.ts +1 -0
- package/build/components/types/src/components/Stepbar/Stepbar.d.ts +0 -2
- package/build/components/types/src/components/Table/Row.d.ts +1 -2
- package/build/components/types/src/components/Table/Table.d.ts +2 -2
- package/build/components/types/src/components/Table/docsData.d.ts +2 -0
- package/build/components/types/src/components/Table/types.d.ts +1 -0
- package/build/components/types/src/components/Tabs/Tabs.d.ts +0 -2
- package/build/components/types/src/components/Tag/Tag.d.ts +0 -2
- package/build/components/types/src/components/Tile/Tile.d.ts +2 -1
- package/build/components/types/src/components/Tooltip/Tooltip.d.ts +0 -1
- package/build/components/types/src/components/Tooltip/tests/BaseWrapper.d.ts +1 -1
- package/build/components/types/src/components/index.d.ts +5 -5
- package/build/components/types/src/docs/utils/SpacePreview.d.ts +1 -2
- package/build/components/types/src/scripts/index.d.ts +12 -3
- package/build/components/types/src/scripts/modules/SameHeight.d.ts +3 -0
- package/build/components/types/src/styles/export/color.d.ts +105 -0
- package/build/fonts/HelveticaNeue-Bold.woff2 +0 -0
- package/build/fonts/HelveticaNeue-Light.woff2 +0 -0
- package/build/fonts/HelveticaNeue-Roman.woff2 +0 -0
- package/build/lib/base.css +3 -0
- package/build/lib/base.css.map +1 -0
- 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 +1 -1
- package/build/lib/megamenu.css.map +1 -1
- package/build/lib/megamenu.js +1 -1
- package/build/lib/megamenu.js.map +1 -1
- package/build/lib/scripts.js +1 -9
- 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/lib/utilities.css +2 -0
- package/build/lib/utilities.css.map +1 -0
- package/build/plan-obnovy.svg +53 -0
- package/build/sprite.svg +1 -1
- package/package.json +46 -38
- package/public/fonts/HelveticaNeue-Bold.woff2 +0 -0
- package/public/fonts/HelveticaNeue-Light.woff2 +0 -0
- package/public/fonts/HelveticaNeue-Roman.woff2 +0 -0
- package/src/assets/icons/ai.svg +6 -0
- package/src/assets/icons/article.svg +7 -0
- package/src/assets/icons/instagram.svg +5 -1
- package/src/assets/icons/linkedin-2.svg +3 -1
- 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/assets/icons/pinterest.svg +4 -0
- package/src/assets/icons/play.svg +4 -1
- package/src/assets/icons/quote.svg +4 -0
- package/src/assets/icons/snapchat.svg +4 -0
- package/src/assets/icons/tiktok.svg +4 -0
- package/src/assets/icons/whatsapp.svg +4 -0
- package/src/components/Accordion/Accordion.static.ts +36 -30
- package/src/components/Accordion/Accordion.tsx +4 -4
- package/src/components/Accordion/AccordionHeader.tsx +0 -10
- package/src/components/Accordion/AccordionItem.tsx +1 -0
- package/src/components/Accordion/styles/config.scss +5 -4
- package/src/components/Accordion/styles/mixins.scss +12 -11
- package/src/components/Accordion/styles/style.scss +2 -2
- package/src/components/Accordion/tests/Accordion.unit.test.js +12 -26
- package/src/components/Alert/Alert.tsx +0 -6
- package/src/components/Alert/styles/config.scss +1 -1
- package/src/components/Alert/styles/mixins.scss +3 -1
- package/src/components/Alert/tests/Alert.test.js +0 -14
- package/src/components/AnchorNavigation/AnchorNavigation.static.ts +296 -72
- package/src/components/AnchorNavigation/AnchorNavigation.tsx +21 -26
- package/src/components/AnchorNavigation/styles/mixins.scss +23 -32
- package/src/components/AnchorNavigation/tests/AnchorNavigation.conformance.test.js +58 -0
- package/src/components/AnchorNavigation/tests/AnchorNavigation.unit.test.js +163 -0
- package/src/components/Bar/styles/config.scss +4 -5
- package/src/components/Bar/styles/mixins.scss +11 -11
- package/src/components/BlockAction/BlockAction.tsx +10 -3
- package/src/components/BlockAction/Context.tsx +4 -0
- package/src/components/BlockAction/styles/mixins.scss +6 -6
- package/src/components/BlockAction/styles/style.scss +5 -0
- package/src/components/BodyBanner/BodyBanner.tsx +52 -73
- package/src/components/BodyBanner/styles/mixins.scss +39 -33
- package/src/components/BodyBanner/styles/style.scss +4 -18
- package/src/components/BodyBanner/tests/BodyBanner.conformance.test.js +67 -0
- package/src/components/BodyBanner/tests/BodyBanner.unit.test.js +194 -0
- package/src/components/Breadcrumbs/BreadcrumbItem.tsx +16 -7
- package/src/components/Breadcrumbs/Breadcrumbs.tsx +4 -12
- package/src/components/Breadcrumbs/styles/mixins.scss +2 -4
- package/src/components/Breadcrumbs/tests/BreadcrumbItem.unit.test.js +14 -8
- package/src/components/Breadcrumbs/tests/Breadcrumbs.integration.test.js +14 -37
- package/src/components/Breadcrumbs/tests/Breadcrumbs.unit.test.js +19 -23
- package/src/components/Button/Button.tsx +2 -6
- package/src/components/Button/styles/config.scss +5 -5
- package/src/components/Button/styles/mixins.scss +6 -1
- package/src/components/Button/styles/style.scss +4 -0
- package/src/components/Button/tests/Button.test.js +0 -10
- package/src/components/Buttons/styles/mixins.scss +1 -1
- package/src/components/Card/Card.tsx +20 -3
- package/src/components/Card/CardSection.tsx +7 -11
- package/src/components/Card/index.ts +1 -0
- package/src/components/Card/styles/config.scss +2 -2
- 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 -6
- package/src/components/Card/tests/CardSection.unit.test.js +36 -3
- package/src/components/Carousel/Carousel.static.ts +371 -10
- package/src/components/Carousel/Carousel.tsx +41 -24
- package/src/components/Carousel/constants.ts +2 -0
- package/src/components/Carousel/styles/config.scss +1 -2
- package/src/components/Carousel/styles/mixins.scss +42 -3
- package/src/components/Carousel/styles/style.scss +8 -0
- package/src/components/Carousel/tests/Carousel.static.test.js +616 -0
- package/src/components/Carousel/tests/Carousel.unit.test.js +117 -12
- package/src/components/CarouselHero/CarouselHero.static.ts +528 -0
- package/src/components/CarouselHero/CarouselHero.tsx +139 -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 +129 -0
- package/src/components/CarouselHero/tests/CarouselHero.unit.test.js +332 -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/CarouselPromotions.tsx +1 -6
- package/src/components/CarouselPromotions/styles/mixins.scss +8 -5
- package/src/components/CarouselPromotions/tests/CarouselPromotions.unit.test.js +0 -17
- package/src/components/CartTable/FooterPriceColumn.tsx +5 -3
- package/src/components/CartTable/Price.tsx +1 -1
- package/src/components/Code/styles/style.scss +6 -5
- package/src/components/Controls/Controls.tsx +2 -7
- package/src/components/Controls/styles/config.scss +2 -2
- package/src/components/Controls/tests/Controls.test.js +0 -32
- package/src/components/Cover/Cover.tsx +22 -20
- package/src/components/Cover/styles/config.scss +23 -12
- package/src/components/Cover/styles/mixins.scss +6 -5
- package/src/components/Cover/tests/Cover.unit.test.js +52 -52
- 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/DocumentationSidebar/DocumentationSidebar.tsx +188 -2
- package/src/components/DocumentationSidebar/styles/style.scss +76 -3
- package/src/components/Dropdown/styles/mixins.scss +1 -1
- package/src/components/Expander/Expander.static.ts +11 -12
- package/src/components/Expander/Expander.tsx +4 -8
- package/src/components/Expander/styles/style.scss +12 -3
- package/src/components/Expander/tests/Expander.conformance.test.js +8 -12
- package/src/components/Expander/tests/Expander.unit.test.js +37 -47
- package/src/components/FeatureAccordion/FeatureAccordion.tsx +3 -13
- package/src/components/FeatureAccordion/styles/mixins.scss +6 -14
- package/src/components/FeatureAccordion/styles/style.scss +2 -4
- package/src/components/FeatureAccordion/tests/FeatureAccordion.conformance.test.js +2 -0
- package/src/components/FeatureAccordion/tests/FeatureAccordion.unit.test.js +0 -5
- package/src/components/Footer/Footer.tsx +110 -71
- package/src/components/Footer/PlanObnovy.tsx +211 -0
- package/src/components/Footer/constants.ts +11 -0
- package/src/components/Footer/data.ts +27 -0
- package/src/components/Footer/styles/config.scss +1 -0
- package/src/components/Footer/styles/mixins.scss +182 -0
- package/src/components/Footer/styles/style.scss +54 -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/Field/styles/config.scss +8 -8
- package/src/components/Forms/Field/tests/Autocomplete.Field.conformance.test.js +1 -1
- package/src/components/Forms/Field/tests/Checkbox.Field.conformance.test.js +1 -0
- package/src/components/Forms/Field/tests/File.Field.conformance.test.js +1 -0
- package/src/components/Forms/Field/tests/Group.Field.conformance.test.js +1 -0
- package/src/components/Forms/Field/tests/Radio.Field.conformance.test.js +1 -0
- package/src/components/Forms/Field/tests/Rangeslider.Field.test.js +1 -0
- package/src/components/Forms/Field/tests/Select.Field.conformance.test.js +1 -0
- package/src/components/Forms/Field/tests/Text.Field.conformance.test.js +1 -0
- package/src/components/Forms/Field/tests/Textarea.Field.conformance.test.js +1 -0
- package/src/components/Forms/Fieldset/styles/mixins.scss +3 -3
- package/src/components/Forms/File/styles/mixins.scss +1 -1
- package/src/components/Forms/Group/styles/mixins.scss +14 -0
- package/src/components/Forms/InputStepper/InputStepper.tsx +0 -4
- package/src/components/Forms/InputStepper/styles/style.scss +0 -66
- package/src/components/Forms/Label/styles/config.scss +3 -0
- package/src/components/Forms/RangeSlider/styles/mixins.scss +1 -1
- package/src/components/Forms/TextArea/styles/mixins.scss +10 -9
- package/src/components/Forms/TextInput/styles/config.scss +1 -1
- package/src/components/Forms/styles/config.scss +5 -4
- package/src/components/Gauge/styles/style.scss +1 -1
- package/src/components/Grid/Grid.tsx +1 -1
- package/src/components/Grid/styles/config.scss +5 -3
- package/src/components/Grid/styles/mixins.scss +29 -19
- package/src/components/Grid/tests/Grid.unit.test.js +11 -0
- package/src/components/Hero/Hero.tsx +2 -16
- package/src/components/Hero/styles/style.scss +0 -14
- package/src/components/Hero/tests/Hero.unit.test.js +109 -119
- package/src/components/Icon/iconSearchTags.ts +440 -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/styles/mixins.scss +5 -5
- package/src/components/Image/styles/mixins.scss +2 -2
- package/src/components/Link/Link.tsx +4 -5
- package/src/components/Link/styles/mixins.scss +9 -3
- package/src/components/Link/styles/style.scss +4 -2
- package/src/components/Link/tests/Link.conformance.test.js +6 -27
- package/src/components/Link/tests/Link.unit.test.js +1 -30
- package/src/components/List/styles/config.scss +12 -12
- package/src/components/List/styles/mixins.scss +16 -9
- 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/Megamenu.static.ts +2 -0
- package/src/components/Megamenu/Megamenu.tsx +730 -650
- package/src/components/Megamenu/MegamenuBlog.tsx +201 -183
- package/src/components/Megamenu/constants.ts +4 -0
- package/src/components/Megamenu/static.ts +5 -11
- package/src/components/Megamenu/styles/mixins.scss +50 -3
- package/src/components/Megamenu/styles/style.scss +10 -0
- package/src/components/Modal/Modal.tsx +1 -14
- package/src/components/Modal/ModalBody.tsx +26 -14
- package/src/components/Modal/ModalProductHeader.tsx +6 -2
- package/src/components/Modal/index.ts +0 -1
- package/src/components/Modal/styles/config.scss +4 -4
- package/src/components/Modal/styles/mixins.scss +18 -57
- package/src/components/Modal/styles/style.scss +1 -16
- package/src/components/Modal/tests/Modal.unit.test.js +0 -59
- package/src/components/Modal/tests/ModalBody.unit.test.js +21 -12
- package/src/components/Modal/tests/ModalProductHeader.unit.test.js +12 -0
- package/src/components/Pagination/Pagination.tsx +3 -13
- package/src/components/Pagination/styles/mixins.scss +1 -1
- package/src/components/Pill/Pill.tsx +17 -5
- package/src/components/Pill/styles/config.scss +2 -1
- package/src/components/Pill/styles/style.scss +17 -1
- package/src/components/Pill/tests/Pill.conformance.test.js +9 -3
- package/src/components/Pill/tests/Pill.unit.test.js +87 -9
- package/src/components/Preview/PreviewGenerator.tsx +50 -29
- package/src/components/Progress/Progress.tsx +1 -13
- package/src/components/Progress/styles/config.scss +4 -4
- package/src/components/Progress/styles/mixins.scss +9 -7
- package/src/components/PromoBanner/PromoBanner.tsx +70 -43
- package/src/components/PromoBanner/styles/mixins.scss +39 -17
- package/src/components/PromoBanner/styles/style.scss +5 -7
- package/src/components/PromoBanner/tests/PromoBanner.conformance.test.js +783 -0
- package/src/components/PromoBanner/tests/PromoBanner.unit.test.js +549 -0
- package/src/components/PromotionCard/PromotionCard.tsx +12 -13
- package/src/components/PromotionCard/styles/mixins.scss +2 -1
- package/src/components/PromotionCard/tests/PromotionCard.conformance.test.js +566 -0
- package/src/components/PromotionCard/tests/PromotionCard.unit.test.js +438 -0
- package/src/components/Section/Section.tsx +20 -10
- 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 +23 -12
- package/src/components/Section/tests/Section.unit.test.js +53 -32
- package/src/components/SocialButton/SocialButton.tsx +67 -0
- package/src/components/SocialButton/index.ts +1 -0
- package/src/components/SocialButton/styles/config.scss +172 -0
- package/src/components/SocialButton/styles/mixins.scss +42 -0
- package/src/components/SocialButton/styles/style.scss +16 -0
- package/src/components/SocialButton/tests/SocialButton.unit.test.js +162 -0
- package/src/components/Stepbar/Stepbar.tsx +0 -5
- package/src/components/Stepbar/styles/mixins.scss +1 -1
- package/src/components/Table/Row.tsx +9 -3
- package/src/components/Table/Table.tsx +11 -6
- package/src/components/Table/TableContext.ts +1 -0
- package/src/components/Table/docsData.ts +25 -0
- package/src/components/Table/styles/mixins.scss +41 -5
- package/src/components/Table/styles/style.scss +6 -0
- package/src/components/Table/tests/Table.conformance.test.js +5 -1
- package/src/components/Table/tests/Table.unit.test.js +0 -31
- package/src/components/Table/types.ts +1 -0
- package/src/components/Tabs/Tabs.tsx +0 -5
- package/src/components/Tabs/styles/mixins.scss +1 -1
- package/src/components/Tabs/tests/Tabs.unit.test.js +0 -8
- package/src/components/Tag/Tag.tsx +0 -4
- package/src/components/Tag/styles/config.scss +19 -23
- package/src/components/Tag/styles/style.scss +33 -0
- package/src/components/Tile/CHANGELOG.md +15 -1
- package/src/components/Tile/Tile.tsx +11 -3
- package/src/components/Tile/styles/config.scss +0 -11
- package/src/components/Tile/styles/mixins.scss +1 -0
- package/src/components/Tile/styles/style.scss +1 -5
- package/src/components/Tile/tests/Tile.unit.test.js +10 -3
- package/src/components/Tooltip/InfoTooltip.tsx +1 -5
- package/src/components/Tooltip/Tooltip.tsx +1 -10
- package/src/components/Tooltip/tests/Tooltip.conformance.test.js +5 -1
- package/src/components/Tooltip/tests/Tooltip.unit.test.js +0 -29
- package/src/components/index.ts +9 -4
- package/src/styles/base/globals-forms.scss +8 -0
- package/src/styles/base/globals.scss +26 -22
- package/src/styles/base/styleguide.scss +22 -17
- package/src/styles/export/base.js +1 -1
- package/src/styles/export/color.js +102 -20
- package/src/styles/export/color.scss +10 -20
- package/src/styles/shame.scss +1 -0
- package/src/styles/tokens/color-vars.scss +39 -0
- package/src/styles/tokens/color.scss +14 -14
- package/src/styles/tokens/tag-colors.scss +20 -0
- package/src/styles/typography/config.scss +83 -37
- package/src/styles/typography/mixins.scss +29 -15
- package/src/styles/typography/style.scss +6 -3
- package/src/styles/utilities/border.scss +1 -1
- package/src/styles/utilities/color.scss +99 -20
- package/src/styles/utilities/horizontal-scroll.scss +1 -1
- package/src/styles/utilities/index.scss +1 -0
- package/src/styles/utilities/layout.scss +27 -0
- package/src/styles/utilities/ordering.scss +44 -0
- package/src/styles/utilities/text.scss +44 -2
- package/src/styles/utilities/visibility.scss +2 -4
- 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/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/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/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/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/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/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/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/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/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/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/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/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/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/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/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/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 -16
- package/build/components/Megamenu/index.js.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/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/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/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/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/tsconfig.tsbuildinfo +0 -1
- package/build/components/index.css +0 -3
- package/build/components/index.css.map +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/Modal/ModalProductBody.d.ts +0 -10
- package/build/lib/after-components.css +0 -2
- package/build/lib/after-components.css.map +0 -1
- package/build/lib/before-components.css +0 -3
- package/build/lib/before-components.css.map +0 -1
- package/build/lib/scripts.css +0 -2
- package/build/lib/scripts.css.map +0 -1
- package/src/components/Accordion/Accordion.mdx +0 -240
- 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 -238
- package/src/components/List/List.mdx +0 -216
- package/src/components/Loader/Loader.mdx +0 -148
- package/src/components/Modal/Modal.mdx +0 -565
- package/src/components/Modal/ModalProductBody.tsx +0 -52
- package/src/components/Pagination/Pagination.mdx +0 -45
- package/src/components/Pagination/tests/utils.js +0 -12
- 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
- package/src/styles/after-components.scss +0 -2
- package/src/styles/before-components.scss +0 -18
- /package/build/lib/{after-components.js → base.js} +0 -0
- /package/build/lib/{before-components.js → utilities.js} +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../node_modules/classnames/index.js","../../../src/utils/constants.js","../../../src/utils/keyboard.js","../../../src/scripts/modules/toggleUtil.ts","../../../src/scripts/modules/Toggle.ts","../../../src/components/Accordion/Accordion.static.ts","../../../src/components/Accordion/HeadingContext.tsx","../../../src/utils/hooks.ts","../../../node_modules/react/cjs/react-jsx-runtime.development.js","../../../node_modules/react/jsx-runtime.js","../../../node_modules/react/cjs/react-jsx-runtime.production.js","../../../src/components/Accordion/Accordion.tsx","../../../src/utils/classes.js","../../../node_modules/wnumb/wNumb.js","../../../src/components/Grid/Grid.tsx","../../../src/components/Grid/GridCol.tsx","../../../src/styles/export/breakpoint.js","../../../src/components/Image/Image.tsx","../../../src/components/FeatureAccordion/FeatureAccordion.static.ts","../../../src/components/FeatureAccordion/FeatureAccordion.tsx","../../../src/components/Icon/SpritePathContext.tsx","../../../src/components/Icon/Icon.tsx","../../../src/components/Accordion/AccordionHeader.tsx","../../../src/components/Accordion/AccordionItem.tsx","../../../src/components/FeatureAccordion/FeatureAccordionItem.tsx"],"sourcesContent":["/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = '';\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (arg) {\n\t\t\t\tclasses = appendClass(classes, parseValue(arg));\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction parseValue (arg) {\n\t\tif (typeof arg === 'string' || typeof arg === 'number') {\n\t\t\treturn arg;\n\t\t}\n\n\t\tif (typeof arg !== 'object') {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (Array.isArray(arg)) {\n\t\t\treturn classNames.apply(null, arg);\n\t\t}\n\n\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\treturn arg.toString();\n\t\t}\n\n\t\tvar classes = '';\n\n\t\tfor (var key in arg) {\n\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\tclasses = appendClass(classes, key);\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction appendClass (value, newClass) {\n\t\tif (!newClass) {\n\t\t\treturn value;\n\t\t}\n\t\n\t\tif (value) {\n\t\t\treturn value + ' ' + newClass;\n\t\t}\n\t\n\t\treturn value + newClass;\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","export const breakpoints = {\n xs: 0,\n sm: 480,\n md: 768,\n lg: 992,\n xl: 1240,\n xxl: 1380,\n};\n\n// we use array to include old browser key names like IE11\n// ie. navigation keys https://developer.mozilla.org/en-US/docs/Web/API/UI_Events/Keyboard_event_key_values#navigation_keys\nexport const keys = {\n TAB: ['Tab'],\n ENTER: ['Enter'],\n ESC: ['Esc', 'Escape'],\n SPACE: ['Spacebar', ' '],\n ARROWLEFT: ['Left', 'ArrowLeft'],\n ARROWUP: ['Up', 'ArrowUp'],\n ARROWRIGHT: ['Right', 'ArrowRight'],\n ARROWDOWN: ['Down', 'ArrowDown'],\n};\n","import { keys } from './constants';\n\n \nexport class RovingTabindex {\n constructor(\n elems,\n config = {\n direction: 'horizontal',\n }\n ) {\n this.elems = elems;\n this.config = config;\n\n this.isActive = false;\n\n this.onKeydown = this.onKeydown.bind(this);\n }\n\n init() {\n document.addEventListener('keydown', this.onKeydown);\n this.isActive = true;\n }\n\n destroy() {\n document.removeEventListener('keydown', this.onKeydown);\n this.isActive = false;\n }\n\n update(elems) {\n this.elems = elems;\n }\n\n onKeydown(e) {\n const activeElemIndex = this.elems.indexOf(document.activeElement);\n\n if (\n (keys.ARROWUP.includes(e.key) || keys.ARROWDOWN.includes(e.key)) &&\n this.config.direction === 'horizontal'\n ) {\n return;\n }\n\n if (\n (keys.ARROWLEFT.includes(e.key) || keys.ARROWRIGHT.includes(e.key)) &&\n this.config.direction === 'vertical'\n ) {\n return;\n }\n\n if (keys.ARROWDOWN.includes(e.key) || keys.ARROWRIGHT.includes(e.key)) {\n e.preventDefault();\n if (activeElemIndex >= 0 && activeElemIndex < this.elems.length - 1) {\n this.elems[activeElemIndex + 1].focus();\n } else {\n this.elems[0].focus();\n }\n }\n\n if (keys.ARROWUP.includes(e.key) || keys.ARROWLEFT.includes(e.key)) {\n e.preventDefault();\n if (activeElemIndex >= 1) {\n this.elems[activeElemIndex - 1].focus();\n } else {\n this.elems[this.elems.length - 1].focus();\n }\n }\n\n if (keys.TAB.includes(e.key)) {\n this.destroy();\n }\n }\n}\n","import { TOGGLE_EVT } from \"./Toggle\";\n\ninterface ToggleProps {\n element: Element | null;\n attribute: string;\n action?: string;\n value?: string | boolean;\n dispatchEvent?: boolean;\n eventDetail?: {\n trigger: Element;\n element: Element;\n };\n}\n\nexport default function toggle(props: ToggleProps): string | boolean | null {\n const {\n element,\n attribute,\n action,\n value,\n dispatchEvent = true,\n eventDetail,\n } = props;\n let returnValue: string | boolean | null = null;\n\n if (!element || !(element instanceof Element)) {\n return returnValue;\n }\n\n if (action === \"focus\") {\n setTimeout(() => (element as HTMLElement).focus(), 20);\n }\n\n if (action === \"click\") {\n (element as HTMLElement).click();\n }\n\n if (attribute === \"class\" && typeof value === \"string\") {\n element.classList.toggle(value);\n returnValue = value;\n }\n\n if (attribute === \"text\") {\n const oldText = element.textContent;\n element.textContent = value?.toString() || \"\";\n returnValue = oldText;\n }\n\n if (\n attribute !== \"class\" &&\n attribute !== \"text\" &&\n typeof action === \"undefined\"\n ) {\n returnValue = element.getAttribute(attribute);\n\n if (attribute === \"hidden\") {\n if (element.hasAttribute(attribute)) {\n element.removeAttribute(attribute);\n } else {\n element.setAttribute(attribute, \"\");\n }\n } else if (!value) {\n element.setAttribute(attribute, String(!(returnValue === \"true\")));\n } else {\n element.setAttribute(attribute, String(value));\n }\n }\n\n if (dispatchEvent) {\n element.dispatchEvent(\n new CustomEvent(TOGGLE_EVT, {\n detail: eventDetail,\n bubbles: true,\n }),\n );\n }\n\n return returnValue;\n}\n","// ---------------------------------------------------\n// Toggle\n// module for handling toggle actions\n\nimport toggle from \"./toggleUtil\";\n\nexport const TRIGGER_EVT = \"toggleTrigger\";\nexport const TOGGLE_EVT = \"toggle\";\n\ninterface ToggleConfig {\n activeClass: string;\n settingsAttr: string;\n}\n\ninterface ToggleSetting {\n target: string;\n attribute: string;\n action?: string;\n value?: string | boolean;\n clickOutside?: boolean;\n}\n\ninterface ToggleTarget extends Omit<ToggleSetting, \"target\"> {\n element: Element;\n value?: string | boolean;\n dispatchEvent?: boolean;\n}\n\nconst defaultConfig: ToggleConfig = {\n activeClass: \"is-active\",\n settingsAttr: \"data-toggle\",\n};\n\nclass Toggle {\n private element: HTMLElement;\n private config: ToggleConfig;\n private settings: ToggleSetting[];\n private targets: ToggleTarget[];\n private hasClickOutside: boolean;\n\n constructor(element: HTMLElement, config?: Partial<ToggleConfig>) {\n this.element = element;\n this.config = { ...defaultConfig, ...config };\n\n this.settings = [];\n this.targets = [];\n this.hasClickOutside = false;\n\n this.handleClick = this.handleClick.bind(this);\n this.handleClickOutside = this.handleClickOutside.bind(this);\n\n (this.element as any).ODS_Toggle = this;\n\n this.init();\n\n return this;\n }\n\n doToggle(props: ToggleTarget): ToggleTarget {\n const { dispatchEvent = true } = props;\n const { element, attribute, value: initialValue, action } = props;\n\n const returnProps = { ...props };\n const eventDetail = { trigger: this.element, element };\n\n let attributeToUse = attribute;\n let elementToUse = element;\n let value = initialValue;\n\n if (attributeToUse === \"icon\") {\n attributeToUse = \"xlink:href\";\n elementToUse = element.querySelector(\"use\") as Element;\n }\n\n if (attributeToUse === \"text\") {\n elementToUse = (element.querySelector(\"[data-toggle-text-target]\") ||\n element) as Element;\n }\n\n if (typeof value === \"undefined\") {\n value = false;\n }\n\n const toggleResult = toggle({\n element: elementToUse,\n attribute: attributeToUse,\n action,\n value,\n dispatchEvent,\n eventDetail,\n });\n\n if (toggleResult !== null) {\n returnProps.value = toggleResult as string | boolean;\n }\n\n return returnProps;\n }\n\n init(): ToggleTarget[] {\n this.settings = this.parseSettings();\n this.targets = this.setupTargets();\n \n // Zistí či nejaké nastavenie má clickOutside: true\n this.hasClickOutside = this.settings.some(setting => setting.clickOutside === true);\n \n this.element.addEventListener(\"click\", this.handleClick);\n \n // Pridá click outside listener iba ak je potrebný\n if (this.hasClickOutside) {\n document.addEventListener(\"click\", this.handleClickOutside);\n }\n \n return this.targets;\n }\n\n handleClick(): void {\n this.targets = this.targets.map((target) => this.doToggle(target));\n this.element.dispatchEvent(new CustomEvent(TRIGGER_EVT, { bubbles: true }));\n }\n\n handleClickOutside(event: Event): void {\n const target = event.target as Element;\n \n // Ak klik nie je na trigger elemente ani na žiadnom z target elementov\n if (!this.element.contains(target) && \n !this.targets.some(toggleTarget => toggleTarget.element.contains(target))) {\n \n // Zatvorí iba ak sú nejaké elementy otvorené (majú active class alebo nie sú hidden)\n const hasOpenTargets = this.targets.some(toggleTarget => {\n if (toggleTarget.attribute === 'class' && typeof toggleTarget.value === 'string') {\n return toggleTarget.element.classList.contains(toggleTarget.value);\n }\n if (toggleTarget.attribute === 'hidden') {\n return !toggleTarget.element.hasAttribute('hidden');\n }\n return false;\n });\n\n if (hasOpenTargets) {\n this.targets = this.targets.map((toggleTarget) => this.doToggle(toggleTarget));\n this.element.dispatchEvent(new CustomEvent(TRIGGER_EVT, { bubbles: true }));\n }\n }\n }\n\n destroy(): void {\n this.element.removeEventListener(\"click\", this.handleClick);\n \n // Odstráni click outside listener ak bol pridaný\n if (this.hasClickOutside) {\n document.removeEventListener(\"click\", this.handleClickOutside);\n }\n \n this.settings = [];\n this.targets = [];\n this.hasClickOutside = false;\n }\n\n update(): void {\n this.removeNonExistentTargets();\n this.addNewTargets();\n \n // Aktualizuje clickOutside nastavenie\n const wasClickOutside = this.hasClickOutside;\n this.hasClickOutside = this.settings.some(setting => setting.clickOutside === true);\n \n // Pridá alebo odstráni click outside listener podľa potreby\n if (!wasClickOutside && this.hasClickOutside) {\n document.addEventListener(\"click\", this.handleClickOutside);\n } else if (wasClickOutside && !this.hasClickOutside) {\n document.removeEventListener(\"click\", this.handleClickOutside);\n }\n }\n\n static getTargetElementsFromString({\n target,\n trigger,\n }: {\n target: string;\n trigger: HTMLElement;\n }): Element[] {\n const selector = target.trim();\n\n if (selector === \"self\") {\n return [trigger];\n }\n\n if (selector === \"parent\") {\n return [trigger.parentNode as Element];\n }\n\n if (selector === \"previous\") {\n return [trigger.previousElementSibling as Element];\n }\n\n if (selector === \"next\") {\n return [trigger.nextElementSibling as Element];\n }\n\n if (typeof selector === \"string\") {\n // don't be tempted to remove this querySelectorAll\n // selector like '.target-elements' whould not work as expected\n return Array.from(document.querySelectorAll(selector));\n }\n\n // add log why we endup here\n return [];\n }\n\n parseSettings(): ToggleSetting[] {\n const jsonSettings = this.element.getAttribute(this.config.settingsAttr);\n const ariaControls = this.element.getAttribute(\"aria-controls\");\n\n let settings: ToggleSetting[] = [];\n\n try {\n if (jsonSettings) {\n settings = JSON.parse(jsonSettings);\n }\n } catch (e) {\n console.warn(\"Invalid JSON in data-toggle attribute\", e);\n }\n\n if (ariaControls) {\n const ariaExpanded = this.element.getAttribute(\"aria-expanded\");\n\n settings = [\n ...(ariaExpanded\n ? [\n {\n target: \"self\",\n attribute: \"aria-expanded\",\n },\n ]\n : []),\n {\n target: ariaControls\n .split(\" \")\n .map((a) => `#${a}`)\n .join(\",\"),\n attribute: \"hidden\",\n },\n ...(Array.isArray(settings) ? settings : []),\n ];\n }\n\n return settings;\n }\n\n setupTargets(): ToggleTarget[] {\n const trigger = this.element;\n\n return this.settings.reduce<ToggleTarget[]>((allSettings, setting) => {\n if (!setting || !setting.target) {\n return allSettings;\n }\n\n return [\n ...allSettings,\n ...setting.target.split(\",\").reduce<ToggleTarget[]>(\n (targetSettings, target) => [\n ...targetSettings,\n ...Toggle.getTargetElementsFromString({\n target,\n trigger,\n }).map((element) => ({\n ...setting,\n element,\n })),\n ],\n [],\n ),\n ];\n }, []);\n }\n\n removeNonExistentTargets(): void {\n this.targets = this.targets.filter((target) =>\n document.contains(target.element),\n );\n }\n\n addNewTargets(): void {\n const allTargets = this.setupTargets();\n const newTargets = allTargets.filter(\n (newTarget) =>\n !this.targets.find(\n (target) =>\n target.element === newTarget.element &&\n target.action === newTarget.action,\n ),\n );\n\n this.targets = [...this.targets, ...newTargets];\n }\n\n static getInstance(el: HTMLElement): Toggle | null {\n return el && (el as any).ODS_Toggle ? (el as any).ODS_Toggle : null;\n }\n}\n\nexport default Toggle;\n","import { RovingTabindex } from '../../utils/keyboard';\nimport toggle from '../../scripts/modules/toggleUtil';\n\ninterface AccordionConfig {\n buttonSelector: string;\n}\n\nconst defaultConfig: AccordionConfig = {\n buttonSelector: '[data-accordion-toggle]',\n};\n\nexport default class Accordion {\n private element: HTMLElement;\n private config: AccordionConfig;\n private rovingTabindex!: RovingTabindex;\n private buttons!: HTMLElement[];\n\n constructor(element: HTMLElement, config?: Partial<AccordionConfig>) {\n this.element = element;\n this.config = { ...defaultConfig, ...config };\n\n this.onFocus = this.onFocus.bind(this);\n this.onClick = this.onClick.bind(this);\n\n (this.element as any).ODS_Accordion = this;\n\n this.init();\n\n return this;\n }\n\n private onFocus(e: FocusEvent): void {\n if (!this.rovingTabindex.isActive) {\n this.rovingTabindex.init();\n }\n\n const button = e.currentTarget as HTMLElement;\n\n if (\n window.location.hash.substring(1) === button.getAttribute('id') &&\n button.getAttribute('aria-expanded') === 'false'\n ) {\n button.click();\n }\n }\n\n private init(): void {\n this.buttons = Array.from(\n this.element.querySelectorAll(this.config.buttonSelector)\n );\n\n if (!this.rovingTabindex) {\n this.rovingTabindex = new RovingTabindex(this.buttons, {\n direction: 'vertical',\n });\n } else {\n this.rovingTabindex.update(this.buttons);\n }\n\n this.buttons.forEach(button => {\n button.addEventListener('focus', this.onFocus);\n\n // only add click events when there are no toggle actions defined\n if (!button.getAttribute('data-toggle')) {\n button.addEventListener('click', this.onClick);\n }\n });\n }\n\n private onClick(e: Event): void {\n const button = e.currentTarget as HTMLElement;\n const accordionSection = this.element.querySelector(\n `#${button.getAttribute('aria-controls')}`\n );\n\n toggle({\n element: button,\n attribute: 'aria-expanded',\n });\n\n toggle({\n element: accordionSection,\n attribute: 'hidden',\n });\n }\n\n destroy(): void {\n this.rovingTabindex.destroy();\n\n this.buttons.forEach(button => {\n button.removeEventListener('focus', this.onFocus);\n button.removeEventListener('click', this.onClick);\n });\n }\n\n update(): void {\n this.destroy();\n this.init();\n }\n\n static getInstance(el: HTMLElement): Accordion | null {\n return el && (el as any).ODS_Accordion ? (el as any).ODS_Accordion : null;\n }\n}\n","\"use client\";\n\nimport { createContext } from 'react';\n\nexport default createContext<number | null>(null);\n","\"use client\";\n\nimport {\n useEffect,\n useCallback,\n useRef,\n useMemo,\n RefCallback,\n type RefObject,\n useState,\n} from \"react\";\n\nimport generateId from \"./generateId\";\n\n// Generic type for any class constructor\ntype StaticClassType<T = any> = new (element: HTMLElement, config?: any) => T;\n\n// Define a generic interface for static class instances\ninterface StaticInstance {\n update?: (config: any) => void;\n destroy?: () => void;\n}\n\n/**\n * A hook to create and manage an instance of a \"static\" class\n * @param StaticClass The class to instantiate\n * @param config Configuration options for the class\n * @returns [ref callback, instance reference]\n */\nconst useStatic = <T extends StaticInstance>(\n StaticClass: StaticClassType<T>,\n config: Record<string, any> = {},\n): [RefCallback<HTMLElement>, RefObject<T | null>] => {\n const instance = useRef<T | null>(null);\n const configRef = useRef(config);\n const elementRef = useRef<HTMLElement | null>(null);\n\n // Update config ref when config changes\n useEffect(() => {\n configRef.current = config ?? {};\n }, [config]);\n\n const ref = useCallback(\n (node: HTMLElement | null) => {\n // Clean up previous instance if element changes\n if (\n elementRef.current &&\n elementRef.current !== node &&\n instance.current\n ) {\n instance.current.destroy?.();\n instance.current = null;\n }\n\n elementRef.current = node;\n\n if (node) {\n // Only create new instance if we don't have one yet\n if (instance.current === null) {\n instance.current = new StaticClass(node, configRef.current);\n } else {\n // Update existing instance with new config\n instance.current.update?.(configRef.current);\n }\n }\n },\n [StaticClass],\n );\n\n // Cleanup on unmount or when StaticClass changes\n useEffect(() => {\n return () => {\n if (instance.current) {\n instance.current.destroy?.();\n instance.current = null;\n }\n elementRef.current = null;\n };\n }, [StaticClass]);\n\n return [ref, instance];\n};\n\n/**\n * A hook for creating React portals\n * From https://www.jayfreestone.com/writing/react-portals-with-hooks/\n * @param id The id of the target DOM element\n * @returns A DOM element that can be used as a portal container\n */\nfunction usePortal(id: string): HTMLDivElement {\n const rootElemRef = useRef<HTMLDivElement | null>(null);\n\n useEffect(\n function setupElement() {\n if (typeof document === \"undefined\") return;\n\n // Create element if it doesn't exist\n if (!rootElemRef.current) {\n rootElemRef.current = document.createElement(\"div\");\n }\n\n // Look for existing target dom element to append to\n const parentElem = document.querySelector(`#${id}`);\n\n // Add the detached element to the parent\n if (parentElem && rootElemRef.current) {\n parentElem.appendChild(rootElemRef.current);\n }\n\n // This function is run on unmount\n return function removeElement() {\n rootElemRef.current?.remove();\n };\n },\n [id],\n );\n\n function getRootElem(): HTMLDivElement {\n if (typeof document === \"undefined\") {\n throw new Error(\"usePortal must be used in a browser environment\");\n }\n\n if (!rootElemRef.current) {\n rootElemRef.current = document.createElement(\"div\");\n }\n return rootElemRef.current;\n }\n\n return getRootElem();\n}\n\n/**\n * Returns unique string for the `id` attribute.\n *\n * @param id Provided id\n * @param name Optional prefix\n * @returns A unique ID string\n */\nconst useUniqueId = (id?: string, name?: string): string =>\n useMemo(() => id ?? generateId(name), [id, name]);\n\n/**\n * Hydration-safe hook for generating a unique, numeric ID for tooltips and similar components.\n * Ensures IDs are consistent between SSR and client, and match test expectations.\n * @param providedId Optional externally provided ID\n * @returns Hydration-safe unique ID string (e.g., \"id-1\")\n */\nconst idCounter = { current: 0 };\n\nfunction useHydrationSafeId(providedId?: string): string {\n const [hydratedId, setHydratedId] = useState<string | undefined>(providedId);\n const idRef = useRef<string | undefined>(providedId);\n\n useEffect(() => {\n if (!providedId) {\n idCounter.current += 1;\n const newId = `id-${idCounter.current}`;\n idRef.current = newId;\n setHydratedId(newId);\n }\n }, [providedId]);\n\n return hydratedId || idRef.current || providedId || \"id-0\";\n}\n\nexport { useStatic, usePortal, useUniqueId, useHydrationSafeId };\n","/**\n * @license React\n * react-jsx-runtime.development.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\n\"production\" !== process.env.NODE_ENV &&\n (function () {\n function getComponentNameFromType(type) {\n if (null == type) return null;\n if (\"function\" === typeof type)\n return type.$$typeof === REACT_CLIENT_REFERENCE\n ? null\n : type.displayName || type.name || null;\n if (\"string\" === typeof type) return type;\n switch (type) {\n case REACT_FRAGMENT_TYPE:\n return \"Fragment\";\n case REACT_PROFILER_TYPE:\n return \"Profiler\";\n case REACT_STRICT_MODE_TYPE:\n return \"StrictMode\";\n case REACT_SUSPENSE_TYPE:\n return \"Suspense\";\n case REACT_SUSPENSE_LIST_TYPE:\n return \"SuspenseList\";\n case REACT_ACTIVITY_TYPE:\n return \"Activity\";\n }\n if (\"object\" === typeof type)\n switch (\n (\"number\" === typeof type.tag &&\n console.error(\n \"Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue.\"\n ),\n type.$$typeof)\n ) {\n case REACT_PORTAL_TYPE:\n return \"Portal\";\n case REACT_CONTEXT_TYPE:\n return (type.displayName || \"Context\") + \".Provider\";\n case REACT_CONSUMER_TYPE:\n return (type._context.displayName || \"Context\") + \".Consumer\";\n case REACT_FORWARD_REF_TYPE:\n var innerType = type.render;\n type = type.displayName;\n type ||\n ((type = innerType.displayName || innerType.name || \"\"),\n (type = \"\" !== type ? \"ForwardRef(\" + type + \")\" : \"ForwardRef\"));\n return type;\n case REACT_MEMO_TYPE:\n return (\n (innerType = type.displayName || null),\n null !== innerType\n ? innerType\n : getComponentNameFromType(type.type) || \"Memo\"\n );\n case REACT_LAZY_TYPE:\n innerType = type._payload;\n type = type._init;\n try {\n return getComponentNameFromType(type(innerType));\n } catch (x) {}\n }\n return null;\n }\n function testStringCoercion(value) {\n return \"\" + value;\n }\n function checkKeyStringCoercion(value) {\n try {\n testStringCoercion(value);\n var JSCompiler_inline_result = !1;\n } catch (e) {\n JSCompiler_inline_result = !0;\n }\n if (JSCompiler_inline_result) {\n JSCompiler_inline_result = console;\n var JSCompiler_temp_const = JSCompiler_inline_result.error;\n var JSCompiler_inline_result$jscomp$0 =\n (\"function\" === typeof Symbol &&\n Symbol.toStringTag &&\n value[Symbol.toStringTag]) ||\n value.constructor.name ||\n \"Object\";\n JSCompiler_temp_const.call(\n JSCompiler_inline_result,\n \"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.\",\n JSCompiler_inline_result$jscomp$0\n );\n return testStringCoercion(value);\n }\n }\n function getTaskName(type) {\n if (type === REACT_FRAGMENT_TYPE) return \"<>\";\n if (\n \"object\" === typeof type &&\n null !== type &&\n type.$$typeof === REACT_LAZY_TYPE\n )\n return \"<...>\";\n try {\n var name = getComponentNameFromType(type);\n return name ? \"<\" + name + \">\" : \"<...>\";\n } catch (x) {\n return \"<...>\";\n }\n }\n function getOwner() {\n var dispatcher = ReactSharedInternals.A;\n return null === dispatcher ? null : dispatcher.getOwner();\n }\n function UnknownOwner() {\n return Error(\"react-stack-top-frame\");\n }\n function hasValidKey(config) {\n if (hasOwnProperty.call(config, \"key\")) {\n var getter = Object.getOwnPropertyDescriptor(config, \"key\").get;\n if (getter && getter.isReactWarning) return !1;\n }\n return void 0 !== config.key;\n }\n function defineKeyPropWarningGetter(props, displayName) {\n function warnAboutAccessingKey() {\n specialPropKeyWarningShown ||\n ((specialPropKeyWarningShown = !0),\n console.error(\n \"%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)\",\n displayName\n ));\n }\n warnAboutAccessingKey.isReactWarning = !0;\n Object.defineProperty(props, \"key\", {\n get: warnAboutAccessingKey,\n configurable: !0\n });\n }\n function elementRefGetterWithDeprecationWarning() {\n var componentName = getComponentNameFromType(this.type);\n didWarnAboutElementRef[componentName] ||\n ((didWarnAboutElementRef[componentName] = !0),\n console.error(\n \"Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.\"\n ));\n componentName = this.props.ref;\n return void 0 !== componentName ? componentName : null;\n }\n function ReactElement(\n type,\n key,\n self,\n source,\n owner,\n props,\n debugStack,\n debugTask\n ) {\n self = props.ref;\n type = {\n $$typeof: REACT_ELEMENT_TYPE,\n type: type,\n key: key,\n props: props,\n _owner: owner\n };\n null !== (void 0 !== self ? self : null)\n ? Object.defineProperty(type, \"ref\", {\n enumerable: !1,\n get: elementRefGetterWithDeprecationWarning\n })\n : Object.defineProperty(type, \"ref\", { enumerable: !1, value: null });\n type._store = {};\n Object.defineProperty(type._store, \"validated\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: 0\n });\n Object.defineProperty(type, \"_debugInfo\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: null\n });\n Object.defineProperty(type, \"_debugStack\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: debugStack\n });\n Object.defineProperty(type, \"_debugTask\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: debugTask\n });\n Object.freeze && (Object.freeze(type.props), Object.freeze(type));\n return type;\n }\n function jsxDEVImpl(\n type,\n config,\n maybeKey,\n isStaticChildren,\n source,\n self,\n debugStack,\n debugTask\n ) {\n var children = config.children;\n if (void 0 !== children)\n if (isStaticChildren)\n if (isArrayImpl(children)) {\n for (\n isStaticChildren = 0;\n isStaticChildren < children.length;\n isStaticChildren++\n )\n validateChildKeys(children[isStaticChildren]);\n Object.freeze && Object.freeze(children);\n } else\n console.error(\n \"React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.\"\n );\n else validateChildKeys(children);\n if (hasOwnProperty.call(config, \"key\")) {\n children = getComponentNameFromType(type);\n var keys = Object.keys(config).filter(function (k) {\n return \"key\" !== k;\n });\n isStaticChildren =\n 0 < keys.length\n ? \"{key: someKey, \" + keys.join(\": ..., \") + \": ...}\"\n : \"{key: someKey}\";\n didWarnAboutKeySpread[children + isStaticChildren] ||\n ((keys =\n 0 < keys.length ? \"{\" + keys.join(\": ..., \") + \": ...}\" : \"{}\"),\n console.error(\n 'A props object containing a \"key\" prop is being spread into JSX:\\n let props = %s;\\n <%s {...props} />\\nReact keys must be passed directly to JSX without using spread:\\n let props = %s;\\n <%s key={someKey} {...props} />',\n isStaticChildren,\n children,\n keys,\n children\n ),\n (didWarnAboutKeySpread[children + isStaticChildren] = !0));\n }\n children = null;\n void 0 !== maybeKey &&\n (checkKeyStringCoercion(maybeKey), (children = \"\" + maybeKey));\n hasValidKey(config) &&\n (checkKeyStringCoercion(config.key), (children = \"\" + config.key));\n if (\"key\" in config) {\n maybeKey = {};\n for (var propName in config)\n \"key\" !== propName && (maybeKey[propName] = config[propName]);\n } else maybeKey = config;\n children &&\n defineKeyPropWarningGetter(\n maybeKey,\n \"function\" === typeof type\n ? type.displayName || type.name || \"Unknown\"\n : type\n );\n return ReactElement(\n type,\n children,\n self,\n source,\n getOwner(),\n maybeKey,\n debugStack,\n debugTask\n );\n }\n function validateChildKeys(node) {\n \"object\" === typeof node &&\n null !== node &&\n node.$$typeof === REACT_ELEMENT_TYPE &&\n node._store &&\n (node._store.validated = 1);\n }\n var React = require(\"react\"),\n REACT_ELEMENT_TYPE = Symbol.for(\"react.transitional.element\"),\n REACT_PORTAL_TYPE = Symbol.for(\"react.portal\"),\n REACT_FRAGMENT_TYPE = Symbol.for(\"react.fragment\"),\n REACT_STRICT_MODE_TYPE = Symbol.for(\"react.strict_mode\"),\n REACT_PROFILER_TYPE = Symbol.for(\"react.profiler\");\n Symbol.for(\"react.provider\");\n var REACT_CONSUMER_TYPE = Symbol.for(\"react.consumer\"),\n REACT_CONTEXT_TYPE = Symbol.for(\"react.context\"),\n REACT_FORWARD_REF_TYPE = Symbol.for(\"react.forward_ref\"),\n REACT_SUSPENSE_TYPE = Symbol.for(\"react.suspense\"),\n REACT_SUSPENSE_LIST_TYPE = Symbol.for(\"react.suspense_list\"),\n REACT_MEMO_TYPE = Symbol.for(\"react.memo\"),\n REACT_LAZY_TYPE = Symbol.for(\"react.lazy\"),\n REACT_ACTIVITY_TYPE = Symbol.for(\"react.activity\"),\n REACT_CLIENT_REFERENCE = Symbol.for(\"react.client.reference\"),\n ReactSharedInternals =\n React.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,\n hasOwnProperty = Object.prototype.hasOwnProperty,\n isArrayImpl = Array.isArray,\n createTask = console.createTask\n ? console.createTask\n : function () {\n return null;\n };\n React = {\n react_stack_bottom_frame: function (callStackForError) {\n return callStackForError();\n }\n };\n var specialPropKeyWarningShown;\n var didWarnAboutElementRef = {};\n var unknownOwnerDebugStack = React.react_stack_bottom_frame.bind(\n React,\n UnknownOwner\n )();\n var unknownOwnerDebugTask = createTask(getTaskName(UnknownOwner));\n var didWarnAboutKeySpread = {};\n exports.Fragment = REACT_FRAGMENT_TYPE;\n exports.jsx = function (type, config, maybeKey, source, self) {\n var trackActualOwner =\n 1e4 > ReactSharedInternals.recentlyCreatedOwnerStacks++;\n return jsxDEVImpl(\n type,\n config,\n maybeKey,\n !1,\n source,\n self,\n trackActualOwner\n ? Error(\"react-stack-top-frame\")\n : unknownOwnerDebugStack,\n trackActualOwner ? createTask(getTaskName(type)) : unknownOwnerDebugTask\n );\n };\n exports.jsxs = function (type, config, maybeKey, source, self) {\n var trackActualOwner =\n 1e4 > ReactSharedInternals.recentlyCreatedOwnerStacks++;\n return jsxDEVImpl(\n type,\n config,\n maybeKey,\n !0,\n source,\n self,\n trackActualOwner\n ? Error(\"react-stack-top-frame\")\n : unknownOwnerDebugStack,\n trackActualOwner ? createTask(getTaskName(type)) : unknownOwnerDebugTask\n );\n };\n })();\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-jsx-runtime.production.js');\n} else {\n module.exports = require('./cjs/react-jsx-runtime.development.js');\n}\n","/**\n * @license React\n * react-jsx-runtime.production.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\nvar REACT_ELEMENT_TYPE = Symbol.for(\"react.transitional.element\"),\n REACT_FRAGMENT_TYPE = Symbol.for(\"react.fragment\");\nfunction jsxProd(type, config, maybeKey) {\n var key = null;\n void 0 !== maybeKey && (key = \"\" + maybeKey);\n void 0 !== config.key && (key = \"\" + config.key);\n if (\"key\" in config) {\n maybeKey = {};\n for (var propName in config)\n \"key\" !== propName && (maybeKey[propName] = config[propName]);\n } else maybeKey = config;\n config = maybeKey.ref;\n return {\n $$typeof: REACT_ELEMENT_TYPE,\n type: type,\n key: key,\n ref: void 0 !== config ? config : null,\n props: maybeKey\n };\n}\nexports.Fragment = REACT_FRAGMENT_TYPE;\nexports.jsx = jsxProd;\nexports.jsxs = jsxProd;\n","\"use client\";\n\nimport React, { ReactNode } from \"react\";\nimport cx from \"classnames\";\n\nimport AccordionStatic from \"./Accordion.static\";\nimport HeadingContext from \"./HeadingContext\";\nimport { useStatic } from \"@/utils/hooks\";\n\nconst CLASS_ROOT = \"accordion\";\n\ninterface AccordionProps {\n /** Heading level from 1 to 6 */\n headingLevel?: number;\n /** Accordion is enclosed in another component */\n isEnclosed?: boolean;\n /** If true, the last item will not have a bottom border */\n lastItemNoBottomBorder?: boolean;\n /** Adjustable spacing */\n size?: \"large\";\n /** Additional CSS classes */\n className?: string;\n /** Accordion content */\n children: ReactNode;\n /** Additional HTML attributes */\n [key: string]: any;\n}\n\nconst Accordion: React.FC<AccordionProps> = ({\n className,\n children,\n headingLevel = 3,\n size,\n isEnclosed,\n lastItemNoBottomBorder,\n ...other\n}) => {\n const [accordionRef] = useStatic(AccordionStatic);\n\n const classes = cx(\n CLASS_ROOT,\n {\n [`${CLASS_ROOT}--${size}`]: size,\n [`${CLASS_ROOT}--enclosed`]: isEnclosed,\n [`${CLASS_ROOT}--last-item-no-bottom-border`]: lastItemNoBottomBorder,\n },\n className,\n );\n\n return (\n <HeadingContext.Provider value={headingLevel}>\n <ul\n className={classes}\n ref={accordionRef}\n data-accordion=\"true\"\n {...other}\n >\n {children}\n </ul>\n </HeadingContext.Provider>\n );\n};\n\nAccordion.displayName = \"Accordion\";\n\nexport { Accordion };\n","function prefixClass(className, prefix = '-') {\n return className ? `${`${prefix}${className}`}` : '';\n}\n\nexport function genClassModsFromString(prefix, mod) {\n return mod\n .split(' ')\n .map(item => `${prefix}-${item}`)\n .join(' ');\n}\n\nexport function getClassModsFromObject(prefix, mod, postfix) {\n return Object.keys(mod)\n .map(key => {\n switch (typeof mod[key]) {\n case 'boolean':\n // prettier inserts new lines and fucks up output\n // prettier-ignore\n return `${prefix}${key !== 'xs' ? `--${key}` : '-'}${prefixClass(postfix)}`;\n case 'string':\n case 'number':\n // prettier inserts new lines and fucks up output\n // prettier-ignore\n return `${prefix}${key !== 'xs' ? `--${key}` : '-'}${prefixClass(mod[key])}${prefixClass(postfix)}`;\n default:\n return null;\n }\n })\n .join(' ');\n}\n\nexport function genResponsiveClasses(prefix, mod, postfix) {\n return [\n typeof mod === 'boolean' ? `${prefix}${prefixClass(postfix, '--')}` : null,\n mod !== null && typeof mod === 'object'\n ? getClassModsFromObject(prefix, mod, postfix)\n : null,\n {\n [`${prefix}--${mod}${prefixClass(postfix)}`]:\n typeof mod === 'string' || typeof mod === 'number',\n },\n ];\n}\n","(function(factory) {\r\n if (typeof define === \"function\" && define.amd) {\r\n // AMD. Register as an anonymous module.\r\n define([], factory);\r\n } else if (typeof exports === \"object\") {\r\n // Node/CommonJS\r\n module.exports = factory();\r\n } else {\r\n // Browser globals\r\n window.wNumb = factory();\r\n }\r\n})(function() {\r\n \"use strict\";\r\n\r\n var FormatOptions = [\r\n \"decimals\",\r\n \"thousand\",\r\n \"mark\",\r\n \"prefix\",\r\n \"suffix\",\r\n \"encoder\",\r\n \"decoder\",\r\n \"negativeBefore\",\r\n \"negative\",\r\n \"edit\",\r\n \"undo\"\r\n ];\r\n\r\n // General\r\n\r\n // Reverse a string\r\n function strReverse(a) {\r\n return a\r\n .split(\"\")\r\n .reverse()\r\n .join(\"\");\r\n }\r\n\r\n // Check if a string starts with a specified prefix.\r\n function strStartsWith(input, match) {\r\n return input.substring(0, match.length) === match;\r\n }\r\n\r\n // Check is a string ends in a specified suffix.\r\n function strEndsWith(input, match) {\r\n return input.slice(-1 * match.length) === match;\r\n }\r\n\r\n // Throw an error if formatting options are incompatible.\r\n function throwEqualError(F, a, b) {\r\n if ((F[a] || F[b]) && F[a] === F[b]) {\r\n throw new Error(a);\r\n }\r\n }\r\n\r\n // Check if a number is finite and not NaN\r\n function isValidNumber(input) {\r\n return typeof input === \"number\" && isFinite(input);\r\n }\r\n\r\n // Provide rounding-accurate toFixed method.\r\n // Borrowed: http://stackoverflow.com/a/21323330/775265\r\n function toFixed(value, exp) {\r\n value = value.toString().split(\"e\");\r\n value = Math.round(+(value[0] + \"e\" + (value[1] ? +value[1] + exp : exp)));\r\n value = value.toString().split(\"e\");\r\n return (+(value[0] + \"e\" + (value[1] ? +value[1] - exp : -exp))).toFixed(exp);\r\n }\r\n\r\n // Formatting\r\n\r\n // Accept a number as input, output formatted string.\r\n function formatTo(\r\n decimals,\r\n thousand,\r\n mark,\r\n prefix,\r\n suffix,\r\n encoder,\r\n decoder,\r\n negativeBefore,\r\n negative,\r\n edit,\r\n undo,\r\n input\r\n ) {\r\n var originalInput = input,\r\n inputIsNegative,\r\n inputPieces,\r\n inputBase,\r\n inputDecimals = \"\",\r\n output = \"\";\r\n\r\n // Apply user encoder to the input.\r\n // Expected outcome: number.\r\n if (encoder) {\r\n input = encoder(input);\r\n }\r\n\r\n // Stop if no valid number was provided, the number is infinite or NaN.\r\n if (!isValidNumber(input)) {\r\n return false;\r\n }\r\n\r\n // Rounding away decimals might cause a value of -0\r\n // when using very small ranges. Remove those cases.\r\n if (decimals !== false && parseFloat(input.toFixed(decimals)) === 0) {\r\n input = 0;\r\n }\r\n\r\n // Formatting is done on absolute numbers,\r\n // decorated by an optional negative symbol.\r\n if (input < 0) {\r\n inputIsNegative = true;\r\n input = Math.abs(input);\r\n }\r\n\r\n // Reduce the number of decimals to the specified option.\r\n if (decimals !== false) {\r\n input = toFixed(input, decimals);\r\n }\r\n\r\n // Transform the number into a string, so it can be split.\r\n input = input.toString();\r\n\r\n // Break the number on the decimal separator.\r\n if (input.indexOf(\".\") !== -1) {\r\n inputPieces = input.split(\".\");\r\n\r\n inputBase = inputPieces[0];\r\n\r\n if (mark) {\r\n inputDecimals = mark + inputPieces[1];\r\n }\r\n } else {\r\n // If it isn't split, the entire number will do.\r\n inputBase = input;\r\n }\r\n\r\n // Group numbers in sets of three.\r\n if (thousand) {\r\n inputBase = strReverse(inputBase).match(/.{1,3}/g);\r\n inputBase = strReverse(inputBase.join(strReverse(thousand)));\r\n }\r\n\r\n // If the number is negative, prefix with negation symbol.\r\n if (inputIsNegative && negativeBefore) {\r\n output += negativeBefore;\r\n }\r\n\r\n // Prefix the number\r\n if (prefix) {\r\n output += prefix;\r\n }\r\n\r\n // Normal negative option comes after the prefix. Defaults to '-'.\r\n if (inputIsNegative && negative) {\r\n output += negative;\r\n }\r\n\r\n // Append the actual number.\r\n output += inputBase;\r\n output += inputDecimals;\r\n\r\n // Apply the suffix.\r\n if (suffix) {\r\n output += suffix;\r\n }\r\n\r\n // Run the output through a user-specified post-formatter.\r\n if (edit) {\r\n output = edit(output, originalInput);\r\n }\r\n\r\n // All done.\r\n return output;\r\n }\r\n\r\n // Accept a sting as input, output decoded number.\r\n function formatFrom(\r\n decimals,\r\n thousand,\r\n mark,\r\n prefix,\r\n suffix,\r\n encoder,\r\n decoder,\r\n negativeBefore,\r\n negative,\r\n edit,\r\n undo,\r\n input\r\n ) {\r\n var originalInput = input,\r\n inputIsNegative,\r\n output = \"\";\r\n\r\n // User defined pre-decoder. Result must be a non empty string.\r\n if (undo) {\r\n input = undo(input);\r\n }\r\n\r\n // Test the input. Can't be empty.\r\n if (!input || typeof input !== \"string\") {\r\n return false;\r\n }\r\n\r\n // If the string starts with the negativeBefore value: remove it.\r\n // Remember is was there, the number is negative.\r\n if (negativeBefore && strStartsWith(input, negativeBefore)) {\r\n input = input.replace(negativeBefore, \"\");\r\n inputIsNegative = true;\r\n }\r\n\r\n // Repeat the same procedure for the prefix.\r\n if (prefix && strStartsWith(input, prefix)) {\r\n input = input.replace(prefix, \"\");\r\n }\r\n\r\n // And again for negative.\r\n if (negative && strStartsWith(input, negative)) {\r\n input = input.replace(negative, \"\");\r\n inputIsNegative = true;\r\n }\r\n\r\n // Remove the suffix.\r\n // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/slice\r\n if (suffix && strEndsWith(input, suffix)) {\r\n input = input.slice(0, -1 * suffix.length);\r\n }\r\n\r\n // Remove the thousand grouping.\r\n if (thousand) {\r\n input = input.split(thousand).join(\"\");\r\n }\r\n\r\n // Set the decimal separator back to period.\r\n if (mark) {\r\n input = input.replace(mark, \".\");\r\n }\r\n\r\n // Prepend the negative symbol.\r\n if (inputIsNegative) {\r\n output += \"-\";\r\n }\r\n\r\n // Add the number\r\n output += input;\r\n\r\n // Trim all non-numeric characters (allow '.' and '-');\r\n output = output.replace(/[^0-9\\.\\-.]/g, \"\");\r\n\r\n // The value contains no parse-able number.\r\n if (output === \"\") {\r\n return false;\r\n }\r\n\r\n // Covert to number.\r\n output = Number(output);\r\n\r\n // Run the user-specified post-decoder.\r\n if (decoder) {\r\n output = decoder(output);\r\n }\r\n\r\n // Check is the output is valid, otherwise: return false.\r\n if (!isValidNumber(output)) {\r\n return false;\r\n }\r\n\r\n return output;\r\n }\r\n\r\n // Framework\r\n\r\n // Validate formatting options\r\n function validate(inputOptions) {\r\n var i,\r\n optionName,\r\n optionValue,\r\n filteredOptions = {};\r\n\r\n if (inputOptions[\"suffix\"] === undefined) {\r\n inputOptions[\"suffix\"] = inputOptions[\"postfix\"];\r\n }\r\n\r\n for (i = 0; i < FormatOptions.length; i += 1) {\r\n optionName = FormatOptions[i];\r\n optionValue = inputOptions[optionName];\r\n\r\n if (optionValue === undefined) {\r\n // Only default if negativeBefore isn't set.\r\n if (optionName === \"negative\" && !filteredOptions.negativeBefore) {\r\n filteredOptions[optionName] = \"-\";\r\n // Don't set a default for mark when 'thousand' is set.\r\n } else if (optionName === \"mark\" && filteredOptions.thousand !== \".\") {\r\n filteredOptions[optionName] = \".\";\r\n } else {\r\n filteredOptions[optionName] = false;\r\n }\r\n\r\n // Floating points in JS are stable up to 7 decimals.\r\n } else if (optionName === \"decimals\") {\r\n if (optionValue >= 0 && optionValue < 8) {\r\n filteredOptions[optionName] = optionValue;\r\n } else {\r\n throw new Error(optionName);\r\n }\r\n\r\n // These options, when provided, must be functions.\r\n } else if (\r\n optionName === \"encoder\" ||\r\n optionName === \"decoder\" ||\r\n optionName === \"edit\" ||\r\n optionName === \"undo\"\r\n ) {\r\n if (typeof optionValue === \"function\") {\r\n filteredOptions[optionName] = optionValue;\r\n } else {\r\n throw new Error(optionName);\r\n }\r\n\r\n // Other options are strings.\r\n } else {\r\n if (typeof optionValue === \"string\") {\r\n filteredOptions[optionName] = optionValue;\r\n } else {\r\n throw new Error(optionName);\r\n }\r\n }\r\n }\r\n\r\n // Some values can't be extracted from a\r\n // string if certain combinations are present.\r\n throwEqualError(filteredOptions, \"mark\", \"thousand\");\r\n throwEqualError(filteredOptions, \"prefix\", \"negative\");\r\n throwEqualError(filteredOptions, \"prefix\", \"negativeBefore\");\r\n\r\n return filteredOptions;\r\n }\r\n\r\n // Pass all options as function arguments\r\n function passAll(options, method, input) {\r\n var i,\r\n args = [];\r\n\r\n // Add all options in order of FormatOptions\r\n for (i = 0; i < FormatOptions.length; i += 1) {\r\n args.push(options[FormatOptions[i]]);\r\n }\r\n\r\n // Append the input, then call the method, presenting all\r\n // options as arguments.\r\n args.push(input);\r\n return method.apply(\"\", args);\r\n }\r\n\r\n function wNumb(options) {\r\n if (!(this instanceof wNumb)) {\r\n return new wNumb(options);\r\n }\r\n\r\n if (typeof options !== \"object\") {\r\n return;\r\n }\r\n\r\n options = validate(options);\r\n\r\n // Call 'formatTo' with proper arguments.\r\n this.to = function(input) {\r\n return passAll(options, formatTo, input);\r\n };\r\n\r\n // Call 'formatFrom' with proper arguments.\r\n this.from = function(input) {\r\n return passAll(options, formatFrom, input);\r\n };\r\n }\r\n\r\n return wNumb;\r\n});\r\n","import React from \"react\";\nimport cx from \"classnames\";\nimport { genResponsiveClasses } from \"../../utils\";\n\nexport type GridVAlign = \"stretch\" | \"start\" | \"end\" | \"center\";\nexport type GridHAlign = \"end\" | \"center\" | \"space-around\" | \"space-between\";\nexport type GridRowGapSize =\n | \"medium\"\n | \"large\"\n | \"xlarge\"\n | Record<string, \"medium\" | \"large\" | \"xlarge\">;\nexport type GridColumnGapSize = \"none\";\n\nexport interface GridProps extends React.HTMLAttributes<HTMLElement> {\n vAlign?: GridVAlign;\n hAlign?: GridHAlign;\n tag?: React.ElementType;\n justifyHeight?: boolean;\n rowGapSize?: GridRowGapSize;\n columnGapSize?: GridColumnGapSize;\n}\n\nconst CLASS_ROOT = \"grid\";\n\nexport const Grid = React.forwardRef<HTMLElement, GridProps>(\n (\n {\n className,\n hAlign,\n vAlign,\n tag = \"div\",\n justifyHeight,\n rowGapSize,\n columnGapSize,\n ...other\n },\n ref,\n ) => {\n const classes = cx(\n CLASS_ROOT,\n {\n [`align-items-${vAlign}`]: vAlign,\n [`justify-content-${hAlign}`]: hAlign,\n [`${CLASS_ROOT}--justify-height`]: justifyHeight,\n [`${CLASS_ROOT}--column-gap-${columnGapSize}`]: columnGapSize,\n },\n ...genResponsiveClasses(`${CLASS_ROOT}-row-gap`, rowGapSize),\n className,\n );\n const TagName = tag;\n\n return <TagName className={classes} ref={ref} {...other} />;\n },\n);\n\nGrid.displayName = \"Grid\";\n","import React from 'react';\nimport cx from 'classnames';\nimport { genResponsiveClasses } from '../../utils';\n\nexport type GridColAlign = 'top' | 'middle' | 'bottom' | 'stretch';\nexport type GridColSize = number | 'shrink' | 'fill' | 'auto' | Record<string, number | 'shrink' | 'fill' | 'auto'>;\n\nexport interface GridColProps extends React.HTMLAttributes<HTMLElement> {\n align?: GridColAlign;\n tag?: React.ElementType;\n size?: GridColSize;\n}\n\nconst CLASS_ROOT = 'grid__col';\n\nexport const GridCol = ({ className, align, tag = \"div\", size, ...other }: GridColProps) => {\n const responsiveClasses = genResponsiveClasses(CLASS_ROOT, size);\n \n const classes = cx(\n CLASS_ROOT, // Always apply base class\n ...responsiveClasses.filter(Boolean), // Filter out null/undefined values\n {\n [`align-self-${align}`]: align,\n },\n className\n );\n\n const TagName = tag;\n\n return <TagName className={classes} {...other} />;\n};\n\nGridCol.displayName = 'GridCol';\n","// Auto-generated from src/styles/export/breakpoint.scss\n// Do not edit this file directly - edit the SCSS source instead\n\nexport const exports = {\n \"xs\": \"0\",\n \"sm\": \"480px\",\n \"md\": \"768px\",\n \"lg\": \"992px\",\n \"xl\": \"1240px\",\n \"xxl\": \"1380px\"\n};\n\nexport default exports;\n","import React from \"react\";\nimport cx from \"classnames\";\n\nimport breakpoints from \"../../styles/export/breakpoint\";\n\nconst overlayBreakpoints: { [key: string]: string } = {\n ...breakpoints,\n xxxl: \"1920px\",\n};\n\ninterface ImageSrcObject {\n default: string;\n xxxl?: string;\n xxl?: string;\n xl?: string;\n lg?: string;\n md?: string;\n sm?: string;\n xs?: string;\n [key: string]: string | undefined;\n}\n\ninterface ImageProps {\n alt: string;\n src: string | ImageSrcObject;\n className?: string;\n [key: string]: any;\n}\n\nconst CLASS_ROOT = \"img\";\n\nconst Image: React.FC<ImageProps> = ({ className, src, alt, ...other }) => {\n const classes = cx(CLASS_ROOT, className);\n\n if (typeof src === \"object\") {\n // autocorrect to descending keys\n const descendingSrcKeys = Object.keys(src).sort(\n (a, b) =>\n parseInt(overlayBreakpoints[b]) - parseInt(overlayBreakpoints[a]),\n );\n // this could be done via conditional rendering, but that breaks <ComponentDocs /> ¯\\_(ツ)_/¯\n return (\n <picture className={classes}>\n {descendingSrcKeys.map(\n (breakpoint) =>\n breakpoint !== \"default\" && (\n <source\n key={breakpoint}\n srcSet={src[breakpoint]}\n media={`(min-width: ${overlayBreakpoints[breakpoint]})`}\n />\n ),\n )}\n <img src={src.default} alt={alt} {...other} />\n </picture>\n );\n }\n\n return <img className={classes} src={src} alt={alt} {...other} />;\n};\n\nImage.displayName = \"Image\";\n\nexport { Image };\n","import toggle from \"../../scripts/modules/toggleUtil\";\n\ninterface FeatureAccordionConfig {\n itemSelector: string;\n bodiesSelector: string;\n buttonSelector: string;\n imageSelector: string;\n}\n\nconst defaultConfig: FeatureAccordionConfig = {\n itemSelector: \"[data-feature-accordion-item]\",\n bodiesSelector: \".accordion__body\",\n buttonSelector: \"[data-feature-accordion-toggle]\",\n imageSelector: \"[data-feature-accordion-image]\",\n};\n\nexport default class FeatureAccordion {\n private element: HTMLElement;\n private config: FeatureAccordionConfig;\n private items: HTMLElement[] = [];\n private bodies: HTMLElement[] = [];\n private buttons: HTMLElement[] = [];\n private images: HTMLElement[] = [];\n private activeId: string | null = null;\n\n constructor(element: HTMLElement, config?: Partial<FeatureAccordionConfig>) {\n this.element = element;\n this.config = { ...defaultConfig, ...config };\n (this.element as any).ODS_FeatureAccordion = this;\n this.init();\n return this;\n }\n\n private init(): void {\n this.items = Array.from(\n this.element.querySelectorAll(this.config.itemSelector),\n );\n this.bodies = Array.from(\n this.element.querySelectorAll(this.config.bodiesSelector),\n );\n this.buttons = Array.from(\n this.element.querySelectorAll(this.config.buttonSelector),\n );\n this.images = Array.from(\n this.element.querySelectorAll(this.config.imageSelector),\n );\n\n // Only set the initial active item, let setActive handle open/close\n const initialButton = this.buttons[0] || null;\n const initialId = initialButton?.getAttribute(\"id\") || null;\n this.setActive(initialId);\n\n this.buttons.forEach((button) => {\n button.addEventListener(\"click\", this.onClick);\n });\n }\n\n private onClick = (e: Event): void => {\n const button = e.currentTarget as HTMLElement;\n const buttonId = button.getAttribute(\"id\");\n // Only allow one open at a time: close all, open this\n this.setActive(buttonId);\n };\n\n private setActive(buttonId: string | null): void {\n if (!buttonId) return;\n this.activeId = buttonId;\n\n // First, close all items\n this.bodies.forEach((body) => {\n body.setAttribute(\"hidden\", \"\");\n body.classList.remove(\"is-active\");\n });\n\n this.buttons.forEach((btn) => {\n const item = btn.closest(\".feature-accordion__item\");\n item?.classList.remove(\"is-active\");\n\n toggle({\n element: btn,\n attribute: \"aria-expanded\",\n value: \"false\",\n });\n });\n\n // Then open the active item\n const activeBtn = this.buttons.find(\n (btn) => btn.getAttribute(\"id\") === buttonId,\n );\n\n if (activeBtn) {\n const activeControls = activeBtn.getAttribute(\"aria-controls\");\n const activeBody = activeControls\n ? document.getElementById(activeControls)\n : null;\n const activeItem = activeBtn.closest(\".feature-accordion__item\");\n\n if (activeBody) {\n activeBody.removeAttribute(\"hidden\");\n activeBody.classList.add(\"is-active\");\n }\n\n if (activeItem) {\n activeItem.classList.add(\"is-active\");\n }\n\n toggle({\n element: activeBtn,\n attribute: \"aria-expanded\",\n value: \"true\",\n });\n }\n\n // Image switching: only show image paired with active item\n this.images.forEach((img) => {\n const imgFor = img.getAttribute(\"data-feature-accordion-image-for\");\n img.classList.toggle(\"hide\", imgFor !== buttonId);\n });\n }\n\n destroy(): void {\n this.buttons.forEach((button) => {\n button.removeEventListener(\"click\", this.onClick);\n });\n }\n\n update(): void {\n this.destroy();\n this.init();\n }\n\n static getInstance(el: HTMLElement): FeatureAccordion | null {\n return el && (el as any).ODS_FeatureAccordion\n ? (el as any).ODS_FeatureAccordion\n : null;\n }\n}\n","\"use client\";\n\nimport React, { RefCallback, useMemo } from \"react\";\nimport { Accordion } from \"../Accordion/Accordion\";\nimport { Grid } from \"../Grid/Grid\";\nimport { GridCol } from \"../Grid/GridCol\";\nimport { Image } from \"../Image\";\nimport cx from \"classnames\";\nimport { useStatic } from \"../../utils/hooks\";\nimport FeatureAccordionStatic from \"./FeatureAccordion.static\";\n\nconst CLASS_ROOT = \"feature-accordion\";\n\ninterface AccordionProps {\n /** Color scheme for whole FeatureAccordion */\n colorScheme?: \"light\" | \"dark\" | \"white\";\n /** Additional CSS classes */\n className?: string;\n}\n\nconst FeatureAccordion = (\n props: AccordionProps & { children: React.ReactNode },\n) => {\n const { className, children, colorScheme, ...other } = props;\n const [featureAccordionRef] = useStatic(FeatureAccordionStatic);\n\n const classes = cx(\n CLASS_ROOT,\n {\n \"is-dark\": colorScheme === \"dark\",\n \"is-light\": colorScheme === \"light\",\n \"is-white\": colorScheme === \"white\",\n },\n className,\n );\n\n const childrenArray = useMemo(\n () => React.Children.toArray(children) as React.ReactElement<any>[],\n [children],\n );\n\n return (\n <Grid\n className={classes}\n data-feature-accordion\n ref={featureAccordionRef as RefCallback<HTMLDivElement>}\n {...other}\n >\n <GridCol\n size={{\n xs: 12,\n md: 6,\n }}\n className={`${CLASS_ROOT}__accordion`}\n >\n <Accordion>\n {childrenArray.map((child) => {\n const id = child.props.id;\n const imageUrl =\n child.props[\"data-image-url\"] || child.props.imageUrl;\n const imageAlt =\n child.props[\"data-image-alt\"] || child.props.imageAlt;\n if (!imageUrl) return null;\n return React.cloneElement(child, {\n children: (\n <>\n <div className={`${CLASS_ROOT}__content`}>\n {child.props.children}\n </div>\n <div className={cx(`${CLASS_ROOT}__preview`, \"hide-md\")}>\n <Image\n key={id}\n data-feature-accordion-image\n data-feature-accordion-image-for={id}\n src={imageUrl}\n alt={imageAlt}\n className={`${CLASS_ROOT}__image--mobile`}\n />\n </div>\n </>\n ),\n });\n })}\n </Accordion>\n </GridCol>\n <GridCol\n size={{\n xs: 12,\n md: 6,\n }}\n className={cx(`${CLASS_ROOT}__preview`, \"hide\", \"show-md\")}\n >\n {childrenArray.map((child) => {\n const id = child.props.id;\n const imageUrl =\n child.props[\"data-image-url\"] || child.props.imageUrl;\n const imageAlt =\n child.props[\"data-image-alt\"] || child.props.imageAlt;\n if (!imageUrl) return null;\n return (\n <Image\n key={id}\n data-feature-accordion-image\n data-feature-accordion-image-for={id}\n src={imageUrl}\n alt={imageAlt}\n className=\"hide\"\n />\n );\n })}\n </GridCol>\n </Grid>\n );\n};\n\nexport { FeatureAccordion };\n","\"use client\";\n\nimport React, { ReactNode } from \"react\";\n\nexport const SpritePathContext = React.createContext(\"/sprite.svg\");\n\ninterface SpritePathProviderProps {\n children: ReactNode;\n value?: string;\n}\n\nexport const SpritePathProvider: React.FC<SpritePathProviderProps> = ({\n children,\n value = \"/sprite.svg\",\n ...other\n}) => {\n return (\n <SpritePathContext.Provider value={value} {...other}>\n {React.Children.only(children)}\n </SpritePathContext.Provider>\n );\n};\n","\"use client\";\n\nimport React, { useContext } from \"react\";\nimport cx from \"classnames\";\nimport { SpritePathContext } from \"./SpritePathContext\";\n\nexport type IconColor = \"info\" | \"success\" | \"warning\" | \"danger\" | \"orange\";\nexport type IconSize =\n | \"small\"\n | \"medium\"\n | \"large\"\n | \"xlarge\"\n | \"xxlarge\"\n | \"huge\";\nexport type IconType = \"icon\" | \"pictogram\";\n\nexport interface IconProps extends React.SVGAttributes<SVGSVGElement> {\n /** Accessible label for the icon. */\n alt?: string;\n /** Icon color. */\n color?: IconColor;\n /** Icon name (required). */\n name: string;\n /** Icon size. */\n size?: IconSize;\n /** Path to the SVG sprite. */\n spritePath?: string;\n /**\n * Icon type. When set to \"pictogram\", the component will automatically\n * switch between light and dark versions based on theme classes (.is-light/.is-dark).\n */\n type?: IconType;\n /**\n * @deprecated Use type=\"pictogram\" instead.\n * Whether this icon should adapt to theme (light/dark).\n * When true, the component will automatically switch between\n * light and dark versions based on theme classes (.is-light/.is-dark).\n */\n className?: string;\n}\n\nconst CLASS_ROOT = \"icon\";\n\nconst Icon: React.FC<IconProps> = ({\n className,\n alt,\n color,\n name,\n size,\n spritePath = \"/sprite.svg\",\n type = \"icon\",\n ...other\n}) => {\n const contextPath = useContext(SpritePathContext);\n\n const isPictogram = type === \"pictogram\";\n\n const classes = cx(\n CLASS_ROOT,\n {\n [`${CLASS_ROOT}--${size}`]: size,\n [`${CLASS_ROOT}--${color}`]: color,\n [`${CLASS_ROOT}--pictogram`]: isPictogram,\n },\n className,\n );\n\n // For theme-aware icons, we need to render both light and dark versions\n if (isPictogram) {\n const finalSpritePath =\n spritePath !== \"/sprite.svg\" || typeof contextPath === \"undefined\"\n ? spritePath\n : contextPath;\n\n return (\n <svg\n className={classes}\n aria-hidden={alt !== undefined ? undefined : \"true\"}\n role={alt !== undefined ? \"img\" : undefined}\n {...other}\n >\n {alt !== undefined && alt.length > 0 && <title>{alt}</title>}\n {/* Light theme version (default) */}\n <use\n className={`${CLASS_ROOT}__use ${CLASS_ROOT}__use--light`}\n xlinkHref={`${finalSpritePath}#${name}`}\n />\n {/* Dark theme version */}\n <use\n className={`${CLASS_ROOT}__use ${CLASS_ROOT}__use--dark`}\n xlinkHref={`${finalSpritePath}#${name}--dark`}\n />\n </svg>\n );\n }\n\n // Regular icon rendering (existing behavior)\n return (\n <svg\n className={classes}\n aria-hidden={alt !== undefined ? undefined : \"true\"}\n role={alt !== undefined ? \"img\" : undefined}\n {...other}\n >\n {alt !== undefined && alt.length > 0 && <title>{alt}</title>}\n <use\n xlinkHref={\n spritePath !== \"/sprite.svg\" || typeof contextPath === \"undefined\"\n ? `${spritePath}#${name}`\n : `${contextPath}#${name}`\n }\n />\n </svg>\n );\n};\n\nIcon.displayName = \"Icon\";\n\nexport { Icon };\n","\"use client\";\n\nimport React from \"react\";\nimport cx from \"classnames\";\n\nimport { Icon } from \"../Icon\";\n\nimport HeadingContext from \"./HeadingContext\";\n\nconst CLASS_ROOT = \"accordion\";\n\nexport interface AccordionHeaderProps {\n /** Header id */\n id: string;\n /** Active state */\n isActive?: boolean;\n /** Header title */\n title: string;\n renderTitle?: (title: string) => React.ReactNode;\n /** Additional CSS classes */\n className?: string;\n /** Custom toggle attribute for specialized accordions (defaults to 'data-accordion-toggle') */\n toggleAttribute?: string;\n\n /** Additional HTML attributes */\n [key: string]: any;\n}\n\nconst AccordionHeader: React.FC<AccordionHeaderProps> = ({\n className,\n title,\n renderTitle,\n id,\n isActive,\n toggleAttribute = \"data-accordion-toggle\",\n ...other\n}) => {\n const headingLevel = React.useContext(HeadingContext);\n const Heading = `h${headingLevel || 3}` as\n | \"h1\"\n | \"h2\"\n | \"h3\"\n | \"h4\"\n | \"h5\"\n | \"h6\";\n\n // Only add data-toggle for regular accordions, not for feature accordions\n const shouldIncludeDataToggle = toggleAttribute === \"data-accordion-toggle\";\n const buttonProps = {\n type: \"button\" as const,\n \"aria-expanded\": isActive,\n className: `${CLASS_ROOT}__button`,\n \"aria-controls\": `${id}-section`,\n id,\n [toggleAttribute]: true,\n ...(shouldIncludeDataToggle && {\n \"data-toggle\": JSON.stringify([\n {\n target: \"self\",\n attribute: \"aria-expanded\",\n },\n ]),\n }),\n ...other,\n };\n\n return (\n <Heading className={cx(`${CLASS_ROOT}__header`, className)}>\n <button {...buttonProps}>\n {renderTitle ? (\n renderTitle(title)\n ) : (\n <span className=\"accordion__title\">{title}</span>\n )}\n <Icon\n className={`${CLASS_ROOT}__icon`}\n name=\"chevron-down\"\n size=\"medium\"\n />\n </button>\n </Heading>\n );\n};\n\nAccordionHeader.displayName = \"AccordionHeader\";\n\nexport default AccordionHeader;\n","\"use client\";\n\nimport React, { ReactNode } from \"react\";\nimport cx from \"classnames\";\n\nimport { useHydrationSafeId } from \"../../utils/hooks\";\n\nimport AccordionHeader, { type AccordionHeaderProps } from \"./AccordionHeader\";\n\nconst CLASS_ROOT = \"accordion__item\";\n\nexport interface AccordionItemProps\n extends Pick<AccordionHeaderProps, \"renderTitle\"> {\n /** Accordion item id (automatically generated by default) */\n id?: string;\n /** Open state indication */\n isActive?: boolean;\n /** Custom header renderer. Receives title, id and isActive props as function parameters. */\n renderHeader?: (title: string, id: string, isActive: boolean) => ReactNode;\n /** Title of accordion item */\n title: string;\n /** Additional CSS classes */\n className?: string;\n /** Accordion item content */\n children: ReactNode;\n /** Additional HTML attributes */\n [key: string]: any;\n}\n\nconst AccordionItem: React.FC<AccordionItemProps> = ({\n id,\n isActive,\n title,\n renderTitle,\n renderHeader,\n children,\n className,\n ...other\n}) => {\n const classes = cx(CLASS_ROOT, className);\n const currentId = useHydrationSafeId(id);\n\n return (\n <li className={classes}>\n {renderHeader ? (\n renderHeader(title, currentId, isActive || false)\n ) : (\n <AccordionHeader\n id={currentId}\n isActive={isActive}\n title={title}\n renderTitle={renderTitle}\n {...other}\n />\n )}\n <div\n id={`${currentId}-section`}\n aria-labelledby={currentId}\n className={cx(\"accordion__body\", { \"is-active\": isActive })}\n {...(isActive ? {} : { hidden: true })}\n >\n {children}\n </div>\n </li>\n );\n};\n\nAccordionItem.displayName = \"AccordionItem\";\nexport { AccordionItem };\n","\"use client\";\n\nimport React from \"react\";\nimport cx from \"classnames\";\nimport { AccordionItem, AccordionItemProps } from \"../Accordion/AccordionItem\";\n\nconst CLASS_ROOT = \"feature-accordion__item\";\n\ninterface FeatureAccordionItemProps extends AccordionItemProps {\n imageUrl?: string;\n imageAlt?: string;\n [key: string]: any;\n}\n\nconst FeatureAccordionItem: React.FC<\n FeatureAccordionItemProps & { defaultOpen?: boolean }\n> = ({ imageUrl, imageAlt, className, defaultOpen, ...props }) => {\n return (\n <AccordionItem\n className={cx(CLASS_ROOT, className)}\n data-feature-accordion-item\n data-image-url={imageUrl}\n data-image-alt={imageAlt}\n isActive={defaultOpen}\n toggleAttribute=\"data-feature-accordion-toggle\"\n {...props}\n />\n );\n};\n\nFeatureAccordionItem.displayName = \"FeatureAccordionItem\";\nexport { FeatureAccordionItem };\n"],"names":["hasOwn","hasOwnProperty","classNames","classes","i","arguments","length","arg","appendClass","parseValue","Array","isArray","apply","toString","Object","prototype","includes","key","call","value","newClass","module","exports","default","window","keys","TAB","ARROWLEFT","ARROWUP","ARROWRIGHT","ARROWDOWN","RovingTabindex","_createClass","elems","config","undefined","direction","_classCallCheck","this","isActive","onKeydown","bind","document","addEventListener","removeEventListener","e","activeElemIndex","indexOf","activeElement","preventDefault","focus","destroy","toggle","props","element","attribute","action","_props$dispatchEvent","dispatchEvent","eventDetail","returnValue","Element","setTimeout","click","classList","oldText","textContent","getAttribute","hasAttribute","removeAttribute","setAttribute","String","CustomEvent","detail","bubbles","defaultConfig","buttonSelector","Accordion","_objectSpread","onFocus","onClick","ODS_Accordion","init","rovingTabindex","button","currentTarget","location","hash","substring","_this","buttons","from","querySelectorAll","update","forEach","accordionSection","querySelector","concat","_this2","el","HeadingContext","createContext","useStatic","StaticClass","instance","useRef","configRef","elementRef","useEffect","current","ref","useCallback","node","_instance$current$des","_instance$current","_instance$current$upd","_instance$current2","_instance$current$des2","_instance$current3","idCounter","process","env","NODE_ENV","getComponentNameFromType","type","$$typeof","REACT_CLIENT_REFERENCE","displayName","name","REACT_FRAGMENT_TYPE","REACT_PROFILER_TYPE","REACT_STRICT_MODE_TYPE","REACT_SUSPENSE_TYPE","REACT_SUSPENSE_LIST_TYPE","REACT_ACTIVITY_TYPE","tag","console","error","REACT_PORTAL_TYPE","REACT_CONTEXT_TYPE","REACT_CONSUMER_TYPE","_context","REACT_FORWARD_REF_TYPE","innerType","render","REACT_MEMO_TYPE","REACT_LAZY_TYPE","_payload","_init","x","testStringCoercion","checkKeyStringCoercion","JSCompiler_inline_result","JSCompiler_temp_const","JSCompiler_inline_result$jscomp$0","Symbol","toStringTag","constructor","getTaskName","UnknownOwner","Error","elementRefGetterWithDeprecationWarning","componentName","didWarnAboutElementRef","jsxDEVImpl","maybeKey","isStaticChildren","source","self","debugStack","debugTask","dispatcher","children","isArrayImpl","validateChildKeys","freeze","filter","k","join","didWarnAboutKeySpread","getter","getOwnPropertyDescriptor","get","isReactWarning","hasValidKey","propName","warnAboutAccessingKey","specialPropKeyWarningShown","defineProperty","configurable","defineKeyPropWarningGetter","owner","REACT_ELEMENT_TYPE","_owner","enumerable","_store","writable","ReactElement","ReactSharedInternals","A","getOwner","validated","React","require$$0","for","__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE","createTask","unknownOwnerDebugStack","react_stack_bottom_frame","callStackForError","unknownOwnerDebugTask","reactJsxRuntime_development","Fragment","jsx","trackActualOwner","recentlyCreatedOwnerStacks","jsxs","jsxRuntimeModule","jsxProd","reactJsxRuntime_production","require$$1","_excluded","CLASS_ROOT","_ref","className","_ref$headingLevel","headingLevel","size","isEnclosed","lastItemNoBottomBorder","other","_objectWithoutProperties","accordionRef","_slicedToArray","AccordionStatic","cx","_defineProperty","_jsx","Provider","prefixClass","getClassModsFromObject","prefix","mod","postfix","map","_typeof","genResponsiveClasses","FormatOptions","strReverse","a","split","reverse","strStartsWith","input","match","strEndsWith","slice","throwEqualError","F","b","isValidNumber","isFinite","toFixed","exp","Math","round","formatTo","decimals","thousand","mark","suffix","encoder","decoder","negativeBefore","negative","edit","undo","inputIsNegative","inputPieces","inputBase","originalInput","inputDecimals","output","parseFloat","abs","formatFrom","replace","Number","validate","inputOptions","optionName","optionValue","filteredOptions","passAll","options","method","args","push","wNumb","to","factory","Grid","forwardRef","hAlign","vAlign","_ref$tag","justifyHeight","rowGapSize","columnGapSize","_toConsumableArray","TagName","GridCol","align","responsiveClasses","Boolean","overlayBreakpoints","xs","sm","md","lg","xl","xxl","xxxl","Image","src","alt","descendingSrcKeys","sort","parseInt","_jsxs","breakpoint","srcSet","media","itemSelector","bodiesSelector","imageSelector","FeatureAccordion","buttonId","setActive","ODS_FeatureAccordion","items","bodies","images","initialButton","initialId","activeId","body","remove","btn","item","closest","activeBtn","find","activeControls","activeBody","getElementById","activeItem","add","img","imgFor","_this3","colorScheme","featureAccordionRef","FeatureAccordionStatic","childrenArray","useMemo","Children","toArray","child","id","imageUrl","imageAlt","cloneElement","_Fragment","SpritePathContext","Icon","color","_ref$spritePath","spritePath","_ref$type","contextPath","useContext","isPictogram","finalSpritePath","role","xlinkHref","AccordionHeader","title","renderTitle","_ref$toggleAttribute","toggleAttribute","Heading","shouldIncludeDataToggle","buttonProps","JSON","stringify","target","AccordionItem","providedId","_useState2","hydratedId","setHydratedId","idRef","renderHeader","currentId","useState","newId","hidden","FeatureAccordionItem","defaultOpen"],"mappings":"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","x_google_ignoreList":[0,8,9,10,13]}
|