@swisspost/design-system-components 9.0.0-next.7 → 9.0.0-next.9
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/dist/cjs/check-url-3ffdd2fb.js +14 -0
- package/dist/cjs/debounce-1151afe3.js +12 -0
- package/dist/cjs/{index-e1f32cce.js → index-010dc207.js} +24 -27
- package/dist/cjs/{index-824d2b71.js → index-5d4e0aed.js} +2 -12
- package/dist/cjs/index.cjs.js +47 -42
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/{package-bc44930e.js → package-8e810a59.js} +1 -1
- package/dist/cjs/{post-accordion-c55fef06.js → post-accordion-b9df8522.js} +3 -3
- package/dist/cjs/post-accordion-item-ecc6749f.js +63 -0
- package/dist/cjs/post-accordion-item.cjs.entry.js +5 -4
- package/dist/cjs/post-accordion.cjs.entry.js +3 -3
- package/dist/cjs/{post-avatar-10d7b5c0.js → post-avatar-f7236084.js} +2 -2
- package/dist/cjs/post-avatar.cjs.entry.js +3 -3
- package/dist/cjs/post-back-to-top-60762f8e.js +75 -0
- package/dist/cjs/post-back-to-top.cjs.entry.js +15 -0
- package/dist/cjs/{post-banner-b286d37f.js → post-banner-9662f22c.js} +6 -6
- package/dist/cjs/post-banner.cjs.entry.js +5 -4
- package/dist/cjs/post-breadcrumb-b40732fc.js +111 -0
- package/dist/cjs/post-breadcrumb-item_2.cjs.entry.js +17 -0
- package/dist/cjs/post-breadcrumb.cjs.entry.js +13 -0
- package/dist/cjs/post-card-control-039c9a4b.js +272 -0
- package/dist/cjs/post-card-control.cjs.entry.js +3 -3
- package/dist/cjs/post-closebutton_15.cjs.entry.js +33 -0
- package/dist/cjs/{post-collapsible-trigger-c8b3e767.js → post-collapsible-trigger-143cf84a.js} +6 -14
- package/dist/cjs/post-collapsible_2.cjs.entry.js +6 -4
- package/dist/cjs/post-components.cjs.js +2 -2
- package/dist/cjs/post-footer-5f7fdf96.js +84 -0
- package/dist/cjs/post-footer.cjs.entry.js +11 -0
- package/dist/cjs/post-menu-item-bb0b0b9e.js +74 -0
- package/dist/cjs/{post-popover-91a83e9d.js → post-popover-d0ce9dc6.js} +3 -3
- package/dist/cjs/post-popover.cjs.entry.js +3 -3
- package/dist/cjs/{post-rating-57fcf949.js → post-rating-1082197c.js} +3 -3
- package/dist/cjs/post-rating.cjs.entry.js +3 -3
- package/dist/cjs/{post-tab-header-ce56b760.js → post-tab-header-4b6d8d54.js} +3 -3
- package/dist/cjs/post-tab-header.cjs.entry.js +3 -3
- package/dist/cjs/{post-tab-panel-70e49260.js → post-tab-panel-60f211a5.js} +3 -3
- package/dist/cjs/post-tab-panel.cjs.entry.js +3 -3
- package/dist/cjs/{post-tabs-39262e55.js → post-tabs-1f797ce4.js} +8 -6
- package/dist/cjs/post-tabs.cjs.entry.js +3 -3
- package/dist/cjs/{post-tag-b6bc5785.js → post-tag-ddaaaedc.js} +3 -3
- package/dist/cjs/post-tag.cjs.entry.js +3 -3
- package/dist/cjs/{post-megadropdown-trigger-9b9f1036.js → post-togglebutton-0984a694.js} +1789 -1234
- package/dist/cjs/{post-tooltip-8be3b2aa.js → post-tooltip-38c839a4.js} +4 -4
- package/dist/cjs/post-tooltip.cjs.entry.js +5 -4
- package/dist/cjs/slide-5d51abe8.js +28 -0
- package/dist/collection/animations/slide.js +23 -0
- package/dist/collection/collection-manifest.json +13 -9
- package/dist/collection/components/post-accordion/post-accordion.css +1 -1
- package/dist/collection/components/post-accordion-item/post-accordion-item.css +1 -1
- package/dist/collection/components/post-accordion-item/post-accordion-item.js +22 -7
- package/dist/collection/components/post-back-to-top/post-back-to-top.css +1 -0
- package/dist/collection/components/post-back-to-top/post-back-to-top.js +107 -0
- package/dist/collection/components/post-banner/post-banner.js +3 -3
- package/dist/collection/components/post-breadcrumb/post-breadcrumb.css +3 -0
- package/dist/collection/components/post-breadcrumb/post-breadcrumb.js +161 -0
- package/dist/collection/components/post-breadcrumb-item/post-breadcrumb-item.css +1 -1
- package/dist/collection/components/post-breadcrumb-item/post-breadcrumb-item.js +11 -1
- package/dist/collection/components/post-card-control/post-card-control.css +1 -1
- package/dist/collection/components/post-card-control/post-card-control.js +2 -2
- package/dist/collection/components/post-closebutton/post-closebutton.js +1 -1
- package/dist/collection/components/post-collapsible/post-collapsible.js +1 -1
- package/dist/collection/components/post-footer/post-footer.css +1 -0
- package/dist/collection/components/post-footer/post-footer.js +75 -0
- package/dist/collection/components/post-header/post-header.css +1 -1
- package/dist/collection/components/post-header/post-header.js +74 -17
- package/dist/collection/components/post-icon/post-icon.js +1 -1
- package/dist/collection/components/post-language-option/post-language-option.css +1 -1
- package/dist/collection/components/post-language-option/post-language-option.js +25 -1
- package/dist/collection/components/post-language-switch/post-language-switch.css +1 -0
- package/dist/collection/components/post-language-switch/post-language-switch.js +163 -0
- package/dist/collection/components/post-language-switch/switch-variants.js +1 -0
- package/dist/collection/components/post-list/post-list.css +1 -1
- package/dist/collection/components/post-list/post-list.js +3 -3
- package/dist/collection/components/post-list-item/post-list-item.js +1 -1
- package/dist/collection/components/post-logo/post-logo.js +1 -1
- package/dist/collection/components/post-mainnavigation/post-mainnavigation.css +1 -1
- package/dist/collection/components/post-mainnavigation/post-mainnavigation.js +15 -24
- package/dist/collection/components/post-megadropdown/post-megadropdown.css +1 -1
- package/dist/collection/components/post-megadropdown/post-megadropdown.js +82 -68
- package/dist/collection/components/post-megadropdown-trigger/post-megadropdown-trigger.css +1 -1
- package/dist/collection/components/post-megadropdown-trigger/post-megadropdown-trigger.js +80 -24
- package/dist/collection/components/post-menu/post-menu.js +6 -4
- package/dist/collection/components/post-menu-item/post-menu-item.js +1 -1
- package/dist/collection/components/post-menu-trigger/post-menu-trigger.js +11 -1
- package/dist/collection/components/post-popover/post-popover.js +1 -1
- package/dist/collection/components/post-popovercontainer/post-popovercontainer.js +2 -2
- package/dist/collection/components/post-rating/post-rating.js +1 -1
- package/dist/collection/components/post-tab-header/post-tab-header.js +1 -1
- package/dist/collection/components/post-tab-panel/post-tab-panel.js +1 -1
- package/dist/collection/components/post-tabs/post-tabs.js +6 -4
- package/dist/collection/components/post-tag/post-tag.js +1 -1
- package/dist/collection/components/post-togglebutton/post-togglebutton.css +1 -1
- package/dist/collection/components/post-togglebutton/post-togglebutton.js +24 -6
- package/dist/collection/components/post-tooltip/post-tooltip.js +1 -1
- package/dist/collection/index.js +13 -9
- package/dist/collection/utils/breakpoints.js +46 -0
- package/dist/components/debounce.js +10 -0
- package/dist/components/index.js +13 -9
- package/dist/components/index2.js +1 -1
- package/dist/components/package.js +1 -1
- package/dist/components/post-accordion-item2.js +29 -11
- package/dist/components/post-accordion2.js +1 -1
- package/dist/components/post-back-to-top.d.ts +11 -0
- package/dist/components/post-back-to-top.js +6 -0
- package/dist/components/post-back-to-top2.js +100 -0
- package/dist/components/post-banner2.js +3 -3
- package/dist/components/post-breadcrumb-item2.js +13 -3
- package/dist/components/post-breadcrumb.d.ts +11 -0
- package/dist/components/post-breadcrumb.js +6 -0
- package/dist/components/post-breadcrumb2.js +168 -0
- package/dist/components/post-card-control2.js +3 -3
- package/dist/components/post-closebutton2.js +1 -1
- package/dist/components/post-collapsible-trigger2.js +1 -9
- package/dist/components/post-collapsible2.js +2 -2
- package/dist/components/post-footer.d.ts +11 -0
- package/dist/components/post-footer.js +6 -0
- package/dist/components/post-footer2.js +124 -0
- package/dist/components/post-header2.js +55 -14
- package/dist/components/post-icon2.js +2 -2
- package/dist/components/post-language-option2.js +5 -3
- package/dist/components/post-language-switch.d.ts +11 -0
- package/dist/components/post-language-switch.js +6 -0
- package/dist/components/post-language-switch2.js +146 -0
- package/dist/components/post-list-item2.js +1 -1
- package/dist/components/post-list2.js +4 -4
- package/dist/components/post-logo2.js +2 -2
- package/dist/components/post-mainnavigation2.js +17 -17
- package/dist/components/post-megadropdown-trigger2.js +63 -11
- package/dist/components/post-megadropdown2.js +48 -22
- package/dist/components/post-menu-item2.js +1 -1
- package/dist/components/post-menu-trigger2.js +11 -1
- package/dist/components/post-menu2.js +6 -4
- package/dist/components/post-popover2.js +1 -1
- package/dist/components/post-popovercontainer2.js +2 -2
- package/dist/components/post-rating2.js +1 -1
- package/dist/components/post-tab-header2.js +1 -1
- package/dist/components/post-tab-panel2.js +1 -1
- package/dist/components/post-tabs2.js +6 -4
- package/dist/components/post-tag2.js +1 -1
- package/dist/components/post-togglebutton2.js +23 -5
- package/dist/components/post-tooltip2.js +2 -2
- package/dist/components/slide.js +25 -0
- package/dist/docs.json +565 -123
- package/dist/esm/check-url-a974431e.js +12 -0
- package/dist/esm/debounce-abe98cc2.js +10 -0
- package/dist/esm/{index-f8a00dc0.js → index-b49c9904.js} +1 -11
- package/dist/esm/{index-e1b64755.js → index-fb8d6be7.js} +24 -27
- package/dist/esm/index.js +25 -24
- package/dist/esm/loader.js +3 -3
- package/dist/esm/package-4d81f3c2.js +3 -0
- package/dist/esm/{post-accordion-7268e29b.js → post-accordion-ee54a3ef.js} +3 -3
- package/dist/esm/post-accordion-item-e10452dc.js +61 -0
- package/dist/esm/post-accordion-item.entry.js +5 -4
- package/dist/esm/post-accordion.entry.js +3 -3
- package/dist/esm/{post-avatar-19162f90.js → post-avatar-5572fa73.js} +2 -2
- package/dist/esm/post-avatar.entry.js +3 -3
- package/dist/esm/post-back-to-top-1d823c43.js +73 -0
- package/dist/esm/post-back-to-top.entry.js +7 -0
- package/dist/esm/{post-banner-132709ad.js → post-banner-78480475.js} +6 -6
- package/dist/esm/post-banner.entry.js +5 -4
- package/dist/esm/post-breadcrumb-aaa77f74.js +109 -0
- package/dist/esm/post-breadcrumb-item_2.entry.js +8 -0
- package/dist/esm/post-breadcrumb.entry.js +5 -0
- package/dist/esm/post-card-control-862aa961.js +270 -0
- package/dist/esm/post-card-control.entry.js +3 -3
- package/dist/esm/post-closebutton_15.entry.js +11 -0
- package/dist/esm/{post-collapsible-trigger-43fbbf03.js → post-collapsible-trigger-1c7833f8.js} +5 -13
- package/dist/esm/post-collapsible_2.entry.js +6 -4
- package/dist/esm/post-components.js +3 -3
- package/dist/esm/post-footer-b18875e7.js +82 -0
- package/dist/esm/post-footer.entry.js +3 -0
- package/dist/esm/post-menu-item-2906384b.js +71 -0
- package/dist/esm/{post-popover-abae1f3a.js → post-popover-2432bb3f.js} +3 -3
- package/dist/esm/post-popover.entry.js +3 -3
- package/dist/esm/{post-rating-b963d4f2.js → post-rating-95cbdbb8.js} +3 -3
- package/dist/esm/post-rating.entry.js +3 -3
- package/dist/esm/{post-tab-header-c16feb72.js → post-tab-header-dfea00ea.js} +3 -3
- package/dist/esm/post-tab-header.entry.js +3 -3
- package/dist/esm/{post-tab-panel-cb02df49.js → post-tab-panel-cafd9e04.js} +3 -3
- package/dist/esm/post-tab-panel.entry.js +3 -3
- package/dist/esm/{post-tabs-81085d7b.js → post-tabs-beef8eae.js} +8 -6
- package/dist/esm/post-tabs.entry.js +3 -3
- package/dist/esm/{post-tag-103bfff5.js → post-tag-a77e7af6.js} +3 -3
- package/dist/esm/post-tag.entry.js +3 -3
- package/dist/esm/{post-megadropdown-trigger-813b5140.js → post-togglebutton-395bf3f0.js} +1785 -1235
- package/dist/esm/{post-tooltip-2c5ff736.js → post-tooltip-b298039a.js} +4 -4
- package/dist/esm/post-tooltip.entry.js +5 -4
- package/dist/esm/slide-3422b8a3.js +25 -0
- package/dist/post-components/index.esm.js +1 -1
- package/dist/post-components/p-0711f76d.entry.js +1 -0
- package/dist/post-components/p-095a06f6.entry.js +1 -0
- package/dist/post-components/p-0b5a5f32.js +1 -0
- package/dist/post-components/p-135fa60f.js +1 -0
- package/dist/post-components/p-18e38d8a.js +1 -0
- package/dist/post-components/p-2e1ec074.entry.js +1 -0
- package/dist/post-components/p-4202b433.entry.js +1 -0
- package/dist/post-components/p-45773f59.js +1 -0
- package/dist/post-components/{p-bb103905.js → p-4953de7e.js} +1 -1
- package/dist/post-components/p-4f67c5f5.entry.js +1 -0
- package/dist/post-components/{p-6f56a13d.js → p-4f9746f6.js} +2 -2
- package/dist/post-components/p-5075c672.entry.js +1 -0
- package/dist/post-components/p-515e0f96.js +1 -0
- package/dist/post-components/p-5467b223.js +1 -0
- package/dist/post-components/p-67036798.entry.js +1 -0
- package/dist/post-components/{p-c819933c.js → p-6d953fb2.js} +1 -1
- package/dist/post-components/p-6edb0ac5.js +1 -0
- package/dist/post-components/{p-fa7af203.js → p-6f8f39ca.js} +1 -1
- package/dist/post-components/p-7503a623.js +1 -0
- package/dist/post-components/p-761b24c7.entry.js +1 -0
- package/dist/post-components/{p-0f699dbc.js → p-77c4c1d2.js} +1 -1
- package/dist/post-components/p-7cf0c2ad.js +1 -0
- package/dist/post-components/p-856c14d6.entry.js +1 -0
- package/dist/post-components/p-866bf50a.entry.js +1 -0
- package/dist/post-components/p-8d621781.js +1 -0
- package/dist/post-components/p-8fe2d72c.entry.js +1 -0
- package/dist/post-components/p-9ad5088f.entry.js +1 -0
- package/dist/post-components/{p-8b6f7f04.js → p-a1d2b90e.js} +1 -1
- package/dist/post-components/p-a521419d.entry.js +1 -0
- package/dist/post-components/p-aa538648.js +1 -0
- package/dist/post-components/p-afdbee2f.js +1 -0
- package/dist/post-components/p-b02817f2.entry.js +1 -0
- package/dist/post-components/p-b157dcba.entry.js +1 -0
- package/dist/post-components/p-b22656b1.js +1 -0
- package/dist/post-components/{p-ed834dde.js → p-bdbd11cb.js} +1 -1
- package/dist/post-components/{p-3eab790d.js → p-c0ae9886.js} +1 -1
- package/dist/post-components/p-c537e196.entry.js +1 -0
- package/dist/post-components/p-d4f93f2b.js +1 -0
- package/dist/post-components/p-dca4246a.entry.js +1 -0
- package/dist/post-components/p-f319b026.js +1 -0
- package/dist/post-components/p-f4b7b379.js +1 -0
- package/dist/post-components/p-fac66087.entry.js +1 -0
- package/dist/post-components/post-components.esm.js +1 -1
- package/dist/types/animations/slide.d.ts +2 -0
- package/dist/types/components/post-accordion-item/post-accordion-item.d.ts +7 -1
- package/dist/types/components/post-back-to-top/post-back-to-top.d.ts +19 -0
- package/dist/types/components/post-breadcrumb/post-breadcrumb.d.ts +30 -0
- package/dist/types/components/post-breadcrumb-item/post-breadcrumb-item.d.ts +1 -0
- package/dist/types/components/post-footer/post-footer.d.ts +23 -0
- package/dist/types/components/post-header/post-header.d.ts +13 -5
- package/dist/types/components/post-language-option/post-language-option.d.ts +5 -0
- package/dist/types/components/post-language-switch/post-language-switch.d.ts +31 -0
- package/dist/types/components/post-language-switch/switch-variants.d.ts +2 -0
- package/dist/types/components/post-mainnavigation/post-mainnavigation.d.ts +10 -1
- package/dist/types/components/post-megadropdown/post-megadropdown.d.ts +24 -12
- package/dist/types/components/post-megadropdown-trigger/post-megadropdown-trigger.d.ts +20 -5
- package/dist/types/components/post-menu/post-menu.d.ts +1 -0
- package/dist/types/components/post-togglebutton/post-togglebutton.d.ts +4 -2
- package/dist/types/components.d.ts +150 -29
- package/dist/types/index.d.ts +13 -9
- package/dist/types/utils/breakpoints.d.ts +11 -0
- package/loaders/debounce.js +10 -0
- package/loaders/index.d.ts +8 -0
- package/loaders/index.js +4 -0
- package/loaders/index2.js +1 -1
- package/loaders/package.js +1 -1
- package/loaders/post-accordion-item.js +1 -82
- package/loaders/post-accordion-item2.js +102 -0
- package/loaders/post-accordion.js +1 -1
- package/loaders/post-back-to-top.d.ts +11 -0
- package/loaders/post-back-to-top.js +103 -0
- package/loaders/post-banner.js +4 -4
- package/loaders/post-breadcrumb-item.js +1 -70
- package/loaders/post-breadcrumb-item2.js +82 -0
- package/loaders/post-breadcrumb.d.ts +11 -0
- package/loaders/post-breadcrumb.js +171 -0
- package/loaders/post-card-control.js +3 -3
- package/loaders/post-closebutton.js +1 -1
- package/loaders/post-collapsible-trigger2.js +1 -9
- package/loaders/post-collapsible2.js +1 -1
- package/loaders/post-footer.d.ts +11 -0
- package/loaders/post-footer.js +127 -0
- package/loaders/post-header.js +55 -14
- package/loaders/post-icon2.js +2 -2
- package/loaders/post-language-option.js +4 -2
- package/loaders/post-language-switch.d.ts +11 -0
- package/loaders/post-language-switch.js +149 -0
- package/loaders/post-list-item.js +1 -1
- package/loaders/post-list.js +4 -4
- package/loaders/post-logo.js +2 -2
- package/loaders/post-mainnavigation.js +17 -17
- package/loaders/post-megadropdown-trigger.js +63 -11
- package/loaders/post-megadropdown.js +48 -22
- package/loaders/post-menu-item.js +1 -31
- package/loaders/post-menu-item2.js +33 -0
- package/loaders/post-menu-trigger.js +1 -90
- package/{dist/esm/post-menu-trigger-b84f728d.js → loaders/post-menu-trigger2.js} +41 -12
- package/loaders/post-menu.js +1 -199
- package/{dist/esm/post-menu-62c3e49a.js → loaders/post-menu2.js} +42 -13
- package/loaders/post-popover.js +1 -1
- package/loaders/post-popovercontainer2.js +2 -2
- package/loaders/post-rating.js +1 -1
- package/loaders/post-tab-header.js +1 -1
- package/loaders/post-tab-panel.js +1 -1
- package/loaders/post-tabs.js +6 -4
- package/loaders/post-tag.js +1 -1
- package/loaders/post-togglebutton.js +23 -5
- package/loaders/post-tooltip.js +1 -1
- package/loaders/slide.js +25 -0
- package/package.json +6 -4
- package/dist/cjs/post-accordion-item-641f0b42.js +0 -52
- package/dist/cjs/post-breadcrumb-item-8cdc59a8.js +0 -49
- package/dist/cjs/post-breadcrumb-item.cjs.entry.js +0 -15
- package/dist/cjs/post-card-control-fc4aca2a.js +0 -272
- package/dist/cjs/post-closebutton_10.cjs.entry.js +0 -25
- package/dist/cjs/post-language-option-8c1ec4fd.js +0 -68
- package/dist/cjs/post-language-option.cjs.entry.js +0 -15
- package/dist/cjs/post-menu-5a71a6fe.js +0 -176
- package/dist/cjs/post-menu-item-5c5c1aaf.js +0 -20
- package/dist/cjs/post-menu-item.cjs.entry.js +0 -11
- package/dist/cjs/post-menu-trigger-02d128c4.js +0 -75
- package/dist/cjs/post-menu-trigger.cjs.entry.js +0 -13
- package/dist/cjs/post-menu.cjs.entry.js +0 -11
- package/dist/cjs/post-togglebutton-2f39442e.js +0 -28
- package/dist/cjs/post-togglebutton.cjs.entry.js +0 -11
- package/dist/esm/package-180da9f3.js +0 -3
- package/dist/esm/post-accordion-item-a5a76abb.js +0 -50
- package/dist/esm/post-breadcrumb-item-5a77f988.js +0 -47
- package/dist/esm/post-breadcrumb-item.entry.js +0 -7
- package/dist/esm/post-card-control-5be9c80a.js +0 -270
- package/dist/esm/post-closebutton_10.entry.js +0 -8
- package/dist/esm/post-language-option-f41240c3.js +0 -66
- package/dist/esm/post-language-option.entry.js +0 -7
- package/dist/esm/post-menu-item-f63a1521.js +0 -18
- package/dist/esm/post-menu-item.entry.js +0 -3
- package/dist/esm/post-menu-trigger.entry.js +0 -5
- package/dist/esm/post-menu.entry.js +0 -3
- package/dist/esm/post-togglebutton-0e714838.js +0 -26
- package/dist/esm/post-togglebutton.entry.js +0 -3
- package/dist/post-components/p-0338f9da.js +0 -1
- package/dist/post-components/p-06980a04.js +0 -1
- package/dist/post-components/p-0af7dfbb.js +0 -1
- package/dist/post-components/p-12262945.entry.js +0 -1
- package/dist/post-components/p-2504dace.entry.js +0 -1
- package/dist/post-components/p-27343d32.entry.js +0 -1
- package/dist/post-components/p-2a456317.js +0 -1
- package/dist/post-components/p-2c3980d2.js +0 -1
- package/dist/post-components/p-31d38040.js +0 -1
- package/dist/post-components/p-339e000e.entry.js +0 -1
- package/dist/post-components/p-3b325360.entry.js +0 -1
- package/dist/post-components/p-3e65ba47.js +0 -1
- package/dist/post-components/p-3f417208.entry.js +0 -1
- package/dist/post-components/p-4922deaf.entry.js +0 -1
- package/dist/post-components/p-6c7546b8.entry.js +0 -1
- package/dist/post-components/p-7eee2b6a.js +0 -1
- package/dist/post-components/p-816623f0.entry.js +0 -1
- package/dist/post-components/p-83cd3885.entry.js +0 -1
- package/dist/post-components/p-9abe554b.js +0 -1
- package/dist/post-components/p-9ea6103e.entry.js +0 -1
- package/dist/post-components/p-a0a7c2c1.entry.js +0 -1
- package/dist/post-components/p-abf9ffdc.entry.js +0 -1
- package/dist/post-components/p-b4a2c7b7.entry.js +0 -1
- package/dist/post-components/p-b7ef401f.js +0 -1
- package/dist/post-components/p-b8a9cf2d.js +0 -1
- package/dist/post-components/p-ccd8a221.entry.js +0 -1
- package/dist/post-components/p-cfc1727f.entry.js +0 -1
- package/dist/post-components/p-d4465c2b.js +0 -1
- package/dist/post-components/p-d4cef624.js +0 -1
- package/dist/post-components/p-da449573.js +0 -1
- package/dist/post-components/p-df5bdda5.entry.js +0 -1
- package/dist/post-components/p-f1416918.entry.js +0 -1
- package/dist/post-components/p-f171b18b.entry.js +0 -1
- package/dist/post-components/p-f4dbd35f.entry.js +0 -1
- package/dist/post-components/p-f6b44820.js +0 -1
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
import { Host, h } from "@stencil/core";
|
|
2
|
+
import { checkEmptyOrOneOf, checkType } from "../../utils/index";
|
|
3
|
+
import { version } from "../../../../package";
|
|
4
|
+
import { SWITCH_VARIANTS } from "./switch-variants";
|
|
5
|
+
import { nanoid } from "nanoid";
|
|
6
|
+
export class PostLanguageSwitch {
|
|
7
|
+
constructor() {
|
|
8
|
+
this.menuId = `p${nanoid(11)}`;
|
|
9
|
+
this.caption = undefined;
|
|
10
|
+
this.description = undefined;
|
|
11
|
+
this.variant = 'list';
|
|
12
|
+
this.activeLang = undefined;
|
|
13
|
+
}
|
|
14
|
+
validateCaption(value = this.caption) {
|
|
15
|
+
checkType(value, 'string', 'The "caption" property of the post-language-switch component must be a string.');
|
|
16
|
+
}
|
|
17
|
+
validateDescription(value = this.description) {
|
|
18
|
+
checkType(value, 'string', 'The "description" property of the post-language-switch component must be a string.');
|
|
19
|
+
}
|
|
20
|
+
validateVariant(value = this.variant) {
|
|
21
|
+
checkEmptyOrOneOf(value, SWITCH_VARIANTS, `The "variant" property of the post-language-switch component must be: ${SWITCH_VARIANTS.join(', ')}`);
|
|
22
|
+
}
|
|
23
|
+
connectedCallback() {
|
|
24
|
+
this.updateChildrenVariant();
|
|
25
|
+
// Get the active language based on children's active state
|
|
26
|
+
this.activeLang = Array.from(this.host.querySelectorAll('post-language-option'))
|
|
27
|
+
.find(el => el.getAttribute('active') == 'true')
|
|
28
|
+
.getAttribute('code');
|
|
29
|
+
}
|
|
30
|
+
// Update post-language-option variant to have the correct style
|
|
31
|
+
updateChildrenVariant() {
|
|
32
|
+
this.host.querySelectorAll('post-language-option').forEach(el => {
|
|
33
|
+
el.setAttribute('variant', this.variant);
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
componentShouldUpdate() {
|
|
37
|
+
this.updateChildrenVariant();
|
|
38
|
+
}
|
|
39
|
+
componentDidLoad() {
|
|
40
|
+
this.validateCaption();
|
|
41
|
+
this.validateDescription();
|
|
42
|
+
this.validateVariant();
|
|
43
|
+
// Detects a change in the active language
|
|
44
|
+
this.host.addEventListener('postChange', (el) => {
|
|
45
|
+
this.activeLang = el.detail;
|
|
46
|
+
// Update the active state in the children post-language-option components
|
|
47
|
+
this.host.querySelectorAll('post-language-option').forEach(lang => {
|
|
48
|
+
if (lang.code && lang.code === this.activeLang) {
|
|
49
|
+
lang.setAttribute('active', 'true');
|
|
50
|
+
}
|
|
51
|
+
else {
|
|
52
|
+
lang.setAttribute('active', 'false');
|
|
53
|
+
}
|
|
54
|
+
});
|
|
55
|
+
// Hides the dropdown when an option has been clicked
|
|
56
|
+
if (this.variant === 'dropdown') {
|
|
57
|
+
const menu = this.host.shadowRoot.querySelector('post-menu');
|
|
58
|
+
menu.toggle(menu);
|
|
59
|
+
}
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
renderList() {
|
|
63
|
+
return (h(Host, { "data-version": version, "aria-label": `${this.caption}, ${this.description}`, "aria-role": "list" }, h("slot", null)));
|
|
64
|
+
}
|
|
65
|
+
renderDropdown() {
|
|
66
|
+
return (h(Host, { "data-version": version }, h("post-menu-trigger", { for: this.menuId }, h("button", { class: "post-language-switch-trigger", "aria-label": `${this.caption}, ${this.description}` }, this.activeLang.toUpperCase(), h("post-icon", { "aria-hidden": "true", name: "chevrondown" }))), h("post-menu", { id: this.menuId }, h("div", { class: "post-language-switch-dropdown-container" }, h("slot", null)))));
|
|
67
|
+
}
|
|
68
|
+
render() {
|
|
69
|
+
return this.variant === 'list' ? this.renderList() : this.renderDropdown();
|
|
70
|
+
}
|
|
71
|
+
static get is() { return "post-language-switch"; }
|
|
72
|
+
static get encapsulation() { return "shadow"; }
|
|
73
|
+
static get originalStyleUrls() {
|
|
74
|
+
return {
|
|
75
|
+
"$": ["post-language-switch.scss"]
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
static get styleUrls() {
|
|
79
|
+
return {
|
|
80
|
+
"$": ["post-language-switch.css"]
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
static get properties() {
|
|
84
|
+
return {
|
|
85
|
+
"caption": {
|
|
86
|
+
"type": "string",
|
|
87
|
+
"mutable": false,
|
|
88
|
+
"complexType": {
|
|
89
|
+
"original": "string",
|
|
90
|
+
"resolved": "string",
|
|
91
|
+
"references": {}
|
|
92
|
+
},
|
|
93
|
+
"required": false,
|
|
94
|
+
"optional": false,
|
|
95
|
+
"docs": {
|
|
96
|
+
"tags": [],
|
|
97
|
+
"text": "A title for the list of language options"
|
|
98
|
+
},
|
|
99
|
+
"attribute": "caption",
|
|
100
|
+
"reflect": false
|
|
101
|
+
},
|
|
102
|
+
"description": {
|
|
103
|
+
"type": "string",
|
|
104
|
+
"mutable": false,
|
|
105
|
+
"complexType": {
|
|
106
|
+
"original": "string",
|
|
107
|
+
"resolved": "string",
|
|
108
|
+
"references": {}
|
|
109
|
+
},
|
|
110
|
+
"required": false,
|
|
111
|
+
"optional": false,
|
|
112
|
+
"docs": {
|
|
113
|
+
"tags": [],
|
|
114
|
+
"text": "A descriptive text for the list of language options"
|
|
115
|
+
},
|
|
116
|
+
"attribute": "description",
|
|
117
|
+
"reflect": false
|
|
118
|
+
},
|
|
119
|
+
"variant": {
|
|
120
|
+
"type": "string",
|
|
121
|
+
"mutable": false,
|
|
122
|
+
"complexType": {
|
|
123
|
+
"original": "SwitchVariant",
|
|
124
|
+
"resolved": "\"dropdown\" | \"list\"",
|
|
125
|
+
"references": {
|
|
126
|
+
"SwitchVariant": {
|
|
127
|
+
"location": "import",
|
|
128
|
+
"path": "./switch-variants",
|
|
129
|
+
"id": "src/components/post-language-switch/switch-variants.ts::SwitchVariant"
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
},
|
|
133
|
+
"required": false,
|
|
134
|
+
"optional": false,
|
|
135
|
+
"docs": {
|
|
136
|
+
"tags": [],
|
|
137
|
+
"text": "Variant that determines the rendering of the language switch either as a list (used on mobile in the header) or a dropdown (used on desktop in the header)"
|
|
138
|
+
},
|
|
139
|
+
"attribute": "variant",
|
|
140
|
+
"reflect": false,
|
|
141
|
+
"defaultValue": "'list'"
|
|
142
|
+
}
|
|
143
|
+
};
|
|
144
|
+
}
|
|
145
|
+
static get states() {
|
|
146
|
+
return {
|
|
147
|
+
"activeLang": {}
|
|
148
|
+
};
|
|
149
|
+
}
|
|
150
|
+
static get elementRef() { return "host"; }
|
|
151
|
+
static get watchers() {
|
|
152
|
+
return [{
|
|
153
|
+
"propName": "caption",
|
|
154
|
+
"methodName": "validateCaption"
|
|
155
|
+
}, {
|
|
156
|
+
"propName": "description",
|
|
157
|
+
"methodName": "validateDescription"
|
|
158
|
+
}, {
|
|
159
|
+
"propName": "variant",
|
|
160
|
+
"methodName": "validateVariant"
|
|
161
|
+
}];
|
|
162
|
+
}
|
|
163
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export const SWITCH_VARIANTS = ['list', 'dropdown'];
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Copyright 2021 by Swiss Post, Information Technology
|
|
3
|
-
*/post-list{display:flex;gap:var(--post-list-title-gap)
|
|
3
|
+
*/post-list{display:flex;flex-direction:column;gap:var(--post-list-title-gap, 0)}post-list>[role=list]{display:flex;flex-direction:column;gap:var(--post-list-item-gap, 0)}post-list:where([horizontal]:not([horizontal=false])){flex-direction:row;align-items:center}post-list:where([horizontal]:not([horizontal=false]))>[role=list]{flex-direction:row;align-items:center}post-list>.list-title.visually-hidden{width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border:0 !important}post-list>.list-title.visually-hidden:not(caption){position:absolute !important}
|
|
@@ -14,7 +14,7 @@ export class PostList {
|
|
|
14
14
|
/**
|
|
15
15
|
* Get the id set on the host element or use a random id by default
|
|
16
16
|
*/
|
|
17
|
-
this.titleId = `
|
|
17
|
+
this.titleId = `title-${this.host.id || crypto.randomUUID()}`;
|
|
18
18
|
}
|
|
19
19
|
componentDidLoad() {
|
|
20
20
|
this.checkTitle();
|
|
@@ -25,7 +25,7 @@ export class PostList {
|
|
|
25
25
|
}
|
|
26
26
|
}
|
|
27
27
|
render() {
|
|
28
|
-
return (h(Host, { key: '
|
|
28
|
+
return (h(Host, { key: '4f982e717530514589c5528553b70463d678b676', "data-version": version }, h("div", { key: 'cc65ed208f48e7a22482af96fd069d05363f2617', ref: el => (this.titleEl = el), id: this.titleId, class: `list-title${this.titleHidden ? ' visually-hidden' : ''}` }, h("slot", { key: '0f8bbeade50b59e53767ce2169dd57bb79644705' })), h("div", { key: '7fa5de37a169e6f76928c2088c46ee747427887e', role: "list", "aria-labelledby": this.titleId }, h("slot", { key: '86b4d71b83671babb61dd12e842710d67350a09e', name: "post-list-item" }))));
|
|
29
29
|
}
|
|
30
30
|
static get is() { return "post-list"; }
|
|
31
31
|
static get originalStyleUrls() {
|
|
@@ -73,7 +73,7 @@ export class PostList {
|
|
|
73
73
|
"text": "The list can become horizontal by setting `horizontal=\"true\"` or just `horizontal`"
|
|
74
74
|
},
|
|
75
75
|
"attribute": "horizontal",
|
|
76
|
-
"reflect":
|
|
76
|
+
"reflect": true,
|
|
77
77
|
"defaultValue": "false"
|
|
78
78
|
}
|
|
79
79
|
};
|
|
@@ -7,7 +7,7 @@ export class PostListItem {
|
|
|
7
7
|
this.host.setAttribute('slot', 'post-list-item');
|
|
8
8
|
}
|
|
9
9
|
render() {
|
|
10
|
-
return (h(Host, { key: '
|
|
10
|
+
return (h(Host, { key: 'aa9a31c64e3e8ba5dcac1d03b54ab3c886149c1f', role: "listitem", slot: "post-list-item" }, h("slot", { key: '06353140f8917fc5373de6d56708467af2ef52b2' })));
|
|
11
11
|
}
|
|
12
12
|
static get is() { return "post-list-item"; }
|
|
13
13
|
static get encapsulation() { return "shadow"; }
|
|
@@ -23,7 +23,7 @@ export class PostLogo {
|
|
|
23
23
|
render() {
|
|
24
24
|
const logoLink = this.url && (typeof this.url === 'string' ? this.url : this.url.href);
|
|
25
25
|
const LogoTag = logoLink ? 'a' : 'span';
|
|
26
|
-
return (h(Host, { key: '
|
|
26
|
+
return (h(Host, { key: 'b8d47e2530eb39f7b05370b4cea0b728cb00a1fb', "data-version": version, slot: "post-logo" }, h(LogoTag, Object.assign({ key: '47a4d88622aab30e652a08827e221dacda36cb48', class: "logo" }, (logoLink ? { href: logoLink } : {})), h("span", { key: '4eb6ad1bc6c165197b6bcce8fe1146eb9d48fb21', class: "description" }, h("slot", { key: 'c66a4385f19711daab6f4ba87d5f78f59ad8b263', onSlotchange: () => this.checkDescription() })), h("svg", { key: '824643e64a3fb0914082f8f78a11753d66c98842', xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 72 72", "aria-hidden": "true" }, h("g", { key: 'e4f63d237c1fe1128005f29ea604c865f6b50943', id: "Logo" }, h("rect", { key: '34fec89177fb5461318d3e8fcc725f32dd97057a', fill: "#ffcc00", x: "0", y: "0", width: "72", height: "72" }), h("polygon", { key: '5600de7c21a8e363fffa35710a3f41e4295b76c7', fill: "#ff0000", points: "34,32.3 34,19 19.7,19 19.7,29.1 10,29.1 10,42.9 19.7,42.9 19.7,53 34,53 34,39.7 30.6,39.7 30.6,49.8 23.1,49.8 23.1,39.7 13.4,39.7 13.4,32.3 23.1,32.3 23.1,22.2 30.6,22.2 30.6,32.3" }), h("path", { key: '719be82825355704c4eac3c60fb461f6303734f7', d: "M53.56234,31.10526c0,2.41272-1.99154,4.29475-4.51723,4.29475H45.2v-8.3h3.84511C51.66802,27.1,53.56234,28.78889,53.56234,31.10526z M50.69666,19H36v34h9.2V42.9h5.49666c6.75131,0,11.9971-5.15137,11.9971-11.8057C62.69376,24.39136,57.35099,19,50.69666,19z" }))))));
|
|
27
27
|
}
|
|
28
28
|
static get is() { return "post-logo"; }
|
|
29
29
|
static get encapsulation() { return "shadow"; }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
post-mainnavigation post-list-item>a{text-decoration:none;border-radius:0}post-mainnavigation post-list-item post-megadropdown-trigger button{padding:0;overflow:visible;border:0;background:none;color:inherit;font:inherit;-webkit-user-select:none;user-select:none;appearance:button;text-align:start}post-mainnavigation post-list-item post-megadropdown-trigger button{outline-offset:var(--post-device-spacing-padding-2) !important;outline:var(--post-scheme-color-interactive-focus-stroke) none var(--post-device-border-width-focus) !important}post-mainnavigation post-list-item post-megadropdown-trigger button:is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-style:var(--post-core-border-style-solid) !important}@media(forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){post-mainnavigation post-list-item post-megadropdown-trigger button:is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-color:Highlight !important}}@supports not selector(:has(:focus-visible)){post-mainnavigation post-list-item post-megadropdown-trigger button:is(:focus-visible,:focus-within,.pretend-focus){outline-style:var(--post-core-border-style-solid) !important}@media(forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){post-mainnavigation post-list-item post-megadropdown-trigger button:is(:focus-visible,:focus-within,.pretend-focus){outline-color:Highlight !important}}}post-mainnavigation post-list-item>a,post-mainnavigation post-list-item>button,post-mainnavigation post-list-item post-megadropdown-trigger button{display:flex;align-items:center;justify-content:space-between}post-mainnavigation post-list-item>a:hover,post-mainnavigation post-list-item>button:hover,post-mainnavigation post-list-item post-megadropdown-trigger button:hover{color:var(--post-scheme-color-interactive-primary-hover-fg1)}post-mainnavigation post-list-item>a:focus-visible,post-mainnavigation post-list-item>button:focus-visible,post-mainnavigation post-list-item post-megadropdown-trigger button:focus-visible{border-radius:var(--post-core-dimension-4);z-index:1}@media screen and (min-width: 1024px){post-mainnavigation nav{position:relative;max-width:100vw;max-height:var(--post-core-dimension-56);user-select:none}post-mainnavigation post-list{margin-inline:var(--post-core-dimension-4)}post-mainnavigation post-list>[role=list]{flex-direction:row;max-width:100vw;transition:transform 250ms cubic-bezier(0.4, 0, 0.2, 1)}post-mainnavigation post-list-item>a,post-mainnavigation post-list-item>button,post-mainnavigation post-list-item post-megadropdown-trigger button{padding-inline:var(--post-core-dimension-12);height:var(--post-core-dimension-56);gap:var(--post-core-dimension-4);font-size:var(--post-core-font-size-16);border-block:0 solid rgba(0,0,0,0);border-block-end-color:currentColor}post-mainnavigation post-list-item>a:hover,post-mainnavigation post-list-item>button:hover,post-mainnavigation post-list-item post-megadropdown-trigger button:hover{border-block-width:var(--post-core-dimension-2)}post-mainnavigation post-list-item>a.selected,post-mainnavigation post-list-item>a[aria-expanded=true],post-mainnavigation post-list-item>button.selected,post-mainnavigation post-list-item>button[aria-expanded=true],post-mainnavigation post-list-item post-megadropdown-trigger button.selected,post-mainnavigation post-list-item post-megadropdown-trigger button[aria-expanded=true]{border-block-width:var(--post-core-dimension-4);font-weight:var(--post-core-font-weight-700)}post-mainnavigation post-list-item>button,post-mainnavigation post-list-item post-megadropdown-trigger button{padding-inline-end:var(--post-core-dimension-12);transition:border-block-end-color 250ms cubic-bezier(0.4, 0, 0.2, 1)}post-mainnavigation post-list-item>button::after,post-mainnavigation post-list-item post-megadropdown-trigger button::after{content:"";-webkit-mask-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m23.6 13.2-7.5 7.6-7.6-7.6.9-.9 6.6 6.6 6.6-6.6z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m23.6 13.2-7.5 7.6-7.6-7.6.9-.9 6.6 6.6 6.6-6.6z'/%3E%3C/svg%3E");background-color:currentColor;color:currentColor;forced-color-adjust:preserve-parent-color;height:var(--post-core-dimension-24);width:var(--post-core-dimension-24);transition:transform 250ms cubic-bezier(0.4, 0, 0.2, 1)}post-mainnavigation post-list-item>button.selected::after,post-mainnavigation post-list-item>button[aria-expanded=true]::after,post-mainnavigation post-list-item post-megadropdown-trigger button.selected::after,post-mainnavigation post-list-item post-megadropdown-trigger button[aria-expanded=true]::after{transform:rotate(180deg)}post-mainnavigation [slot=back-button]{display:none}}@media screen and (max-width: 1023.99px){post-mainnavigation post-list>[role=list]{transform:none !important}post-mainnavigation post-list-item>a,post-mainnavigation post-list-item>button,post-mainnavigation post-list-item post-megadropdown-trigger button{width:100%;height:var(--post-core-dimension-48);padding-inline-end:var(--post-core-dimension-6);gap:var(--post-core-dimension-16);border-block:var(--post-core-dimension-1) solid rgba(0,0,0,0);border-block-end-color:currentColor;font-weight:var(--post-core-font-weight-700)}post-mainnavigation post-list-item>a:hover,post-mainnavigation post-list-item>a.selected,post-mainnavigation post-list-item>button:hover,post-mainnavigation post-list-item>button.selected,post-mainnavigation post-list-item post-megadropdown-trigger button:hover,post-mainnavigation post-list-item post-megadropdown-trigger button.selected{border-block-width:var(--post-core-dimension-3)}post-mainnavigation post-list-item>a:hover::after,post-mainnavigation post-list-item>button:hover::after,post-mainnavigation post-list-item post-megadropdown-trigger button:hover::after{content:"";display:block;-webkit-mask-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20.667 5.333H18.8L29.467 16H0v1.333h29.467L18.8 28h1.867L32 16.667z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20.667 5.333H18.8L29.467 16H0v1.333h29.467L18.8 28h1.867L32 16.667z'/%3E%3C/svg%3E");background-color:currentColor;color:currentColor;forced-color-adjust:preserve-parent-color;width:var(--post-core-dimension-24);height:var(--post-core-dimension-24)}}
|
|
@@ -1,24 +1,23 @@
|
|
|
1
1
|
import { Host, h } from "@stencil/core";
|
|
2
2
|
export class PostMainnavigation {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
if (megalodon)
|
|
15
|
-
megalodon.toggle(event.target);
|
|
3
|
+
/**
|
|
4
|
+
* Retrieves a reference to the closest 'post-header' element when the main navigation is added to the DOM.
|
|
5
|
+
*/
|
|
6
|
+
connectedCallback() {
|
|
7
|
+
this.header = this.host.closest('post-header');
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Cleans up references and disconnects the MutationObserver when the main navigation is removed from the DOM.
|
|
11
|
+
*/
|
|
12
|
+
disconnectedCallback() {
|
|
13
|
+
this.header = null;
|
|
16
14
|
}
|
|
17
15
|
handleBackButtonClick() {
|
|
18
|
-
this.
|
|
16
|
+
if (this.header)
|
|
17
|
+
this.header.toggleMobileMenu();
|
|
19
18
|
}
|
|
20
19
|
render() {
|
|
21
|
-
return (h(Host, { key: '
|
|
20
|
+
return (h(Host, { key: 'f21c438ac0bbcb08e08fd419589bf92b7d8b3a61', slot: "post-mainnavigation" }, h("div", { key: '1925f47932d7e842e8b9f059d7ade955c577fa50', onClick: () => this.handleBackButtonClick(), class: "back-button" }, h("slot", { key: 'fe18f6859a6d79c7ae701b65a31be1eab9c8b2ac', name: "back-button" })), h("nav", { key: 'ad2b0a52bc0bcf78a3c3340ba163ee6167be2c73' }, h("slot", { key: '8fc7b01cc0f3729cd2c12c4967ec87891fe0dcf5' }))));
|
|
22
21
|
}
|
|
23
22
|
static get is() { return "post-mainnavigation"; }
|
|
24
23
|
static get originalStyleUrls() {
|
|
@@ -49,13 +48,5 @@ export class PostMainnavigation {
|
|
|
49
48
|
}
|
|
50
49
|
}];
|
|
51
50
|
}
|
|
52
|
-
static get
|
|
53
|
-
return [{
|
|
54
|
-
"name": "postToggle",
|
|
55
|
-
"method": "handleMegadropdownToggled",
|
|
56
|
-
"target": undefined,
|
|
57
|
-
"capture": false,
|
|
58
|
-
"passive": false
|
|
59
|
-
}];
|
|
60
|
-
}
|
|
51
|
+
static get elementRef() { return "host"; }
|
|
61
52
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
*,::before,::after{box-sizing:border-box}post-popovercontainer{background-color:#fafafa;width:100%;border-
|
|
1
|
+
@keyframes slide-in{0%{transform:translateX(100%)}100%{transform:translateX(0%)}}@keyframes slide-out{from{transform:translateX(0%)}to{transform:translateX(100%)}}*,::before,::after{box-sizing:border-box}post-popovercontainer{--post-global-header-height: 72px;--post-main-header-height: 56px;--post-header-height: calc(var(--post-global-header-height) + var(--post-main-header-height));background-color:#fafafa;border:none;border-top:1px solid #e1e0dc;width:100%;border-radius:0;box-shadow:0 8px 6px rgba(0,0,0,.16)}@media screen and (max-width: 1023.99px){post-popovercontainer{--post-global-header-height: 64px;position:absolute;top:var(--post-header-height) !important;bottom:0;left:0;width:100%;height:auto}post-popovercontainer.slide-in{animation:slide-in;animation-duration:350ms;animation-fill-mode:forwards}post-popovercontainer.slide-out{animation:slide-out;animation-duration:350ms;animation-fill-mode:forwards}}.megadropdown{padding:31px 40px 40px}@media screen and (max-width: 1023.99px){.megadropdown{padding:16px 32px 24px}}.megadropdown .megadropdown-content{gap:1.5rem;display:grid;grid-template-columns:repeat(auto-fit, minmax(min(15vw, 100%), 1fr));grid-auto-rows:1fr auto;grid-auto-flow:dense}@media screen and (max-width: 1023.99px){.megadropdown .megadropdown-content{grid-template-columns:repeat(auto-fit, minmax(min(35vw, 100%), 1fr))}}@media screen and (max-width: 599.99px){.megadropdown .megadropdown-content{grid-template-columns:1fr}}.megadropdown h2{display:none;margin-top:0;margin-bottom:8px;font-weight:900}.megadropdown h2 a{text-decoration:none;font-weight:inherit;border-bottom:0;border-top:0}@media screen and (max-width: 1023.99px){.megadropdown h2{display:block;font-size:20px}}.megadropdown a:hover{border-block-width:0}.megadropdown a:hover::after{content:unset}.megadropdown post-list{display:grid;grid-row:span 2;grid-template-rows:subgrid;row-gap:0px}.megadropdown post-list>[role=list]{flex-direction:unset;display:unset}.megadropdown post-list>*{width:100%}.megadropdown post-list .list-title{display:flex;flex-direction:column-reverse;height:100%}.megadropdown post-list .list-title h3{font-size:20px;border-bottom:1px solid #050400;padding:15px 12px 14px 0;display:block;font-weight:900}.megadropdown post-list .list-title h3 a{text-decoration:none;width:100%;font-size:inherit;display:inline-block;font-weight:inherit;height:unset;padding:0;border:0}@media screen and (max-width: 1023.99px){.megadropdown post-list .list-title h3{font-size:16px;padding:12px 12px 11px 0}}.megadropdown post-list-item{border-bottom:1px solid #050400}.megadropdown post-list-item>a{padding:13px 12px 12px 0;display:block;text-decoration:none;width:100%;border-bottom:0;height:auto;border-top:0}@media screen and (max-width: 1023.99px){.megadropdown post-list-item>a{padding:12px 12px 11px 0}}.megadropdown .back-button{display:none;margin-bottom:2rem}.megadropdown .back-button .btn{width:auto}.megadropdown .back-button post-icon{transform:rotate(180deg)}@media screen and (max-width: 1023.99px){.megadropdown .back-button{display:block}}.megadropdown .close-button{position:absolute;top:1rem;right:1rem}@media screen and (max-width: 1023.99px){.megadropdown .close-button{display:none}}
|
|
@@ -1,39 +1,64 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { h, Host } from "@stencil/core";
|
|
2
2
|
export class PostMegadropdown {
|
|
3
|
+
constructor() {
|
|
4
|
+
this.isVisible = false;
|
|
5
|
+
this.animationClass = null;
|
|
6
|
+
}
|
|
7
|
+
componentDidLoad() {
|
|
8
|
+
this.popoverRef.addEventListener('postToggle', (event) => {
|
|
9
|
+
this.isVisible = event.detail;
|
|
10
|
+
this.postToggleMegadropdown.emit(this.isVisible);
|
|
11
|
+
});
|
|
12
|
+
this.popoverRef.addEventListener('animationend', () => {
|
|
13
|
+
if (this.animationClass === 'slide-out') {
|
|
14
|
+
this.hide();
|
|
15
|
+
}
|
|
16
|
+
});
|
|
17
|
+
}
|
|
3
18
|
/**
|
|
4
|
-
*
|
|
5
|
-
* @param element HTMLElement
|
|
6
|
-
* @returns boolean
|
|
19
|
+
* Toggles the dropdown visibility based on its current state.
|
|
7
20
|
*/
|
|
8
|
-
async
|
|
9
|
-
|
|
21
|
+
async toggle(target) {
|
|
22
|
+
this.isVisible ? this.hide() : await this.show(target);
|
|
10
23
|
}
|
|
11
24
|
/**
|
|
12
|
-
*
|
|
13
|
-
*
|
|
25
|
+
* Displays the popover dropdown
|
|
26
|
+
*
|
|
27
|
+
* @param target - The HTML element relative to which the popover dropdown should be displayed.
|
|
14
28
|
*/
|
|
15
|
-
async
|
|
16
|
-
|
|
29
|
+
async show(target) {
|
|
30
|
+
if (this.popoverRef) {
|
|
31
|
+
await this.popoverRef.show(target);
|
|
32
|
+
this.animationClass = 'slide-in';
|
|
33
|
+
}
|
|
34
|
+
else {
|
|
35
|
+
console.error('show: popoverRef is null or undefined');
|
|
36
|
+
}
|
|
17
37
|
}
|
|
18
38
|
/**
|
|
19
|
-
*
|
|
20
|
-
* @param element HTMLElement
|
|
21
|
-
* @param force boolean
|
|
22
|
-
* @returns boolean
|
|
39
|
+
* Hides the popover dropdown
|
|
23
40
|
*/
|
|
24
|
-
|
|
25
|
-
|
|
41
|
+
hide() {
|
|
42
|
+
if (this.popoverRef) {
|
|
43
|
+
this.popoverRef.hide();
|
|
44
|
+
}
|
|
45
|
+
else {
|
|
46
|
+
console.error('hide: popoverRef is null or undefined');
|
|
47
|
+
}
|
|
26
48
|
}
|
|
27
49
|
handleBackButtonClick() {
|
|
28
|
-
this.
|
|
50
|
+
this.animationClass = 'slide-out';
|
|
51
|
+
}
|
|
52
|
+
handleCloseButtonClick() {
|
|
53
|
+
this.popoverRef.hide();
|
|
29
54
|
}
|
|
30
55
|
render() {
|
|
31
|
-
return (h(Host, { key: '
|
|
56
|
+
return (h(Host, { key: 'cfd4e6c7bb87c50e471d304a4b4f086266e1c2fe' }, h("post-popovercontainer", { key: '31dc3a5e98a5c60a4db8d47375491a6f3957af0b', class: this.animationClass, placement: "bottom", "edge-gap": "0", ref: el => (this.popoverRef = el) }, h("div", { key: '7001d0e108544a0244af088be0bde49f90a3dea3', class: "megadropdown" }, h("div", { key: '513b0710163e8f58677b6b50d2ba2d241cf9ff35', onClick: () => this.handleBackButtonClick(), class: "back-button" }, h("slot", { key: '5457c0b9bfff045f39f470e600b5aa31036c0807', name: "back-button" })), h("div", { key: 'c3314a4ae4f386224a2db7fe32203f72f6a1b284', onClick: () => this.handleCloseButtonClick(), class: "close-button" }, h("slot", { key: '8feeec24fe5f2522ba1a54ab0b7c682d3a152086', name: "close-button" })), h("slot", { key: '6d9426756a809ed26045c9cd56cacf0f36aa9400', name: "megadropdown-title" }), h("div", { key: 'fd3b0ac7998eec76700ccc6668d8b2e3fcc4c63a', class: "megadropdown-content" }, h("slot", { key: '23638936fdffa224de9631bfd599c0872202a30d' }))))));
|
|
32
57
|
}
|
|
33
58
|
static get is() { return "post-megadropdown"; }
|
|
34
59
|
static get originalStyleUrls() {
|
|
35
60
|
return {
|
|
36
|
-
"$": ["
|
|
61
|
+
"$": ["post-megadropdown.scss"]
|
|
37
62
|
};
|
|
38
63
|
}
|
|
39
64
|
static get styleUrls() {
|
|
@@ -41,15 +66,39 @@ export class PostMegadropdown {
|
|
|
41
66
|
"$": ["post-megadropdown.css"]
|
|
42
67
|
};
|
|
43
68
|
}
|
|
69
|
+
static get states() {
|
|
70
|
+
return {
|
|
71
|
+
"isVisible": {},
|
|
72
|
+
"animationClass": {}
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
static get events() {
|
|
76
|
+
return [{
|
|
77
|
+
"method": "postToggleMegadropdown",
|
|
78
|
+
"name": "postToggleMegadropdown",
|
|
79
|
+
"bubbles": true,
|
|
80
|
+
"cancelable": true,
|
|
81
|
+
"composed": true,
|
|
82
|
+
"docs": {
|
|
83
|
+
"tags": [],
|
|
84
|
+
"text": "Emits when the dropdown is shown or hidden.\nThe event payload is a boolean: `true` when the dropdown was opened, `false` when it was closed."
|
|
85
|
+
},
|
|
86
|
+
"complexType": {
|
|
87
|
+
"original": "boolean",
|
|
88
|
+
"resolved": "boolean",
|
|
89
|
+
"references": {}
|
|
90
|
+
}
|
|
91
|
+
}];
|
|
92
|
+
}
|
|
44
93
|
static get methods() {
|
|
45
94
|
return {
|
|
46
|
-
"
|
|
95
|
+
"toggle": {
|
|
47
96
|
"complexType": {
|
|
48
|
-
"signature": "(
|
|
97
|
+
"signature": "(target: HTMLElement) => Promise<void>",
|
|
49
98
|
"parameters": [{
|
|
50
|
-
"name": "
|
|
99
|
+
"name": "target",
|
|
51
100
|
"type": "HTMLElement",
|
|
52
|
-
"docs": "
|
|
101
|
+
"docs": ""
|
|
53
102
|
}],
|
|
54
103
|
"references": {
|
|
55
104
|
"Promise": {
|
|
@@ -64,47 +113,17 @@ export class PostMegadropdown {
|
|
|
64
113
|
"return": "Promise<void>"
|
|
65
114
|
},
|
|
66
115
|
"docs": {
|
|
67
|
-
"text": "
|
|
68
|
-
"tags": [
|
|
69
|
-
"name": "param",
|
|
70
|
-
"text": "element HTMLElement"
|
|
71
|
-
}, {
|
|
72
|
-
"name": "returns",
|
|
73
|
-
"text": "boolean"
|
|
74
|
-
}]
|
|
116
|
+
"text": "Toggles the dropdown visibility based on its current state.",
|
|
117
|
+
"tags": []
|
|
75
118
|
}
|
|
76
119
|
},
|
|
77
|
-
"
|
|
78
|
-
"complexType": {
|
|
79
|
-
"signature": "() => Promise<void>",
|
|
80
|
-
"parameters": [],
|
|
81
|
-
"references": {
|
|
82
|
-
"Promise": {
|
|
83
|
-
"location": "global",
|
|
84
|
-
"id": "global::Promise"
|
|
85
|
-
}
|
|
86
|
-
},
|
|
87
|
-
"return": "Promise<void>"
|
|
88
|
-
},
|
|
89
|
-
"docs": {
|
|
90
|
-
"text": "Hide megadropdown",
|
|
91
|
-
"tags": [{
|
|
92
|
-
"name": "returns",
|
|
93
|
-
"text": "boolean"
|
|
94
|
-
}]
|
|
95
|
-
}
|
|
96
|
-
},
|
|
97
|
-
"toggle": {
|
|
120
|
+
"show": {
|
|
98
121
|
"complexType": {
|
|
99
|
-
"signature": "(
|
|
122
|
+
"signature": "(target: HTMLElement) => Promise<void>",
|
|
100
123
|
"parameters": [{
|
|
101
|
-
"name": "
|
|
124
|
+
"name": "target",
|
|
102
125
|
"type": "HTMLElement",
|
|
103
|
-
"docs": "
|
|
104
|
-
}, {
|
|
105
|
-
"name": "force",
|
|
106
|
-
"type": "boolean",
|
|
107
|
-
"docs": "boolean"
|
|
126
|
+
"docs": "- The HTML element relative to which the popover dropdown should be displayed."
|
|
108
127
|
}],
|
|
109
128
|
"references": {
|
|
110
129
|
"Promise": {
|
|
@@ -116,22 +135,17 @@ export class PostMegadropdown {
|
|
|
116
135
|
"id": "global::HTMLElement"
|
|
117
136
|
}
|
|
118
137
|
},
|
|
119
|
-
"return": "Promise<
|
|
138
|
+
"return": "Promise<void>"
|
|
120
139
|
},
|
|
121
140
|
"docs": {
|
|
122
|
-
"text": "
|
|
141
|
+
"text": "Displays the popover dropdown",
|
|
123
142
|
"tags": [{
|
|
124
143
|
"name": "param",
|
|
125
|
-
"text": "element
|
|
126
|
-
}, {
|
|
127
|
-
"name": "param",
|
|
128
|
-
"text": "force boolean"
|
|
129
|
-
}, {
|
|
130
|
-
"name": "returns",
|
|
131
|
-
"text": "boolean"
|
|
144
|
+
"text": "target - The HTML element relative to which the popover dropdown should be displayed."
|
|
132
145
|
}]
|
|
133
146
|
}
|
|
134
147
|
}
|
|
135
148
|
};
|
|
136
149
|
}
|
|
150
|
+
static get elementRef() { return "host"; }
|
|
137
151
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
post-megadropdown-trigger{width:100%}
|