@swisspost/design-system-components 9.0.0-next.13 → 9.0.0-next.14
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/{index-f1b08cdb.js → index-0ee3ab4a.js} +334 -152
- package/dist/cjs/index.cjs.js +22 -20
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/{package-60e57542.js → package-7d11b6ea.js} +1 -1
- package/dist/cjs/{post-accordion-1e495c23.js → post-accordion-29861d97.js} +11 -5
- package/dist/cjs/{post-accordion-item-86b6950a.js → post-accordion-item-0da0f7aa.js} +15 -8
- package/dist/cjs/post-accordion-item.cjs.entry.js +3 -3
- package/dist/cjs/post-accordion.cjs.entry.js +3 -3
- package/dist/cjs/{post-avatar-067c033b.js → post-avatar-01b9cd6d.js} +23 -11
- package/dist/cjs/post-avatar.cjs.entry.js +3 -3
- package/dist/cjs/post-back-to-top-9a5647f7.js +80 -0
- package/dist/cjs/post-back-to-top.cjs.entry.js +3 -3
- package/dist/cjs/post-banner-33929088.js +110 -0
- package/dist/cjs/post-banner.cjs.entry.js +3 -3
- package/dist/cjs/{post-breadcrumb-b33abf67.js → post-breadcrumb-1384018e.js} +15 -9
- package/dist/cjs/post-breadcrumb-item_2.cjs.entry.js +3 -3
- package/dist/cjs/post-breadcrumb.cjs.entry.js +3 -3
- package/dist/cjs/{post-card-control-7867a104.js → post-card-control-4c85eda3.js} +45 -14
- package/dist/cjs/post-card-control.cjs.entry.js +3 -3
- package/dist/cjs/post-closebutton_15.cjs.entry.js +3 -3
- package/dist/cjs/{post-collapsible-trigger-6affdc02.js → post-collapsible-trigger-0fb2596a.js} +11 -5
- package/dist/cjs/post-collapsible_2.cjs.entry.js +3 -3
- package/dist/cjs/post-components.cjs.js +3 -3
- package/dist/cjs/{post-footer-330e8999.js → post-footer-f621a563.js} +8 -5
- package/dist/cjs/post-footer.cjs.entry.js +3 -3
- package/dist/cjs/post-linkarea-865079c1.js +32 -0
- package/dist/cjs/post-linkarea.cjs.entry.js +11 -0
- package/dist/cjs/{post-menu-item-48191dfd.js → post-menu-item-ab3e2e7e.js} +8 -5
- package/dist/cjs/{post-popover-27f3e9aa.js → post-popover-a2ba9226.js} +18 -6
- package/dist/cjs/post-popover.cjs.entry.js +3 -3
- package/dist/cjs/{post-rating-28904e91.js → post-rating-c402c294.js} +21 -8
- package/dist/cjs/post-rating.cjs.entry.js +3 -3
- package/dist/cjs/{post-tab-header-86b129ab.js → post-tab-header-c819517d.js} +8 -5
- package/dist/cjs/post-tab-header.cjs.entry.js +3 -3
- package/dist/cjs/{post-tab-panel-94333a7e.js → post-tab-panel-3cb207f3.js} +8 -5
- package/dist/cjs/post-tab-panel.cjs.entry.js +3 -3
- package/dist/cjs/{post-tabs-f8581050.js → post-tabs-b6fa39c3.js} +10 -4
- package/dist/cjs/post-tabs.cjs.entry.js +3 -3
- package/dist/cjs/{post-tag-3a24c574.js → post-tag-9c366519.js} +18 -7
- package/dist/cjs/post-tag.cjs.entry.js +3 -3
- package/dist/cjs/{post-togglebutton-e7d697bf.js → post-togglebutton-d49bec2c.js} +515 -132
- package/dist/cjs/{post-tooltip-8c87dfe3.js → post-tooltip-425c01ba.js} +17 -6
- package/dist/cjs/post-tooltip.cjs.entry.js +3 -3
- package/dist/collection/collection-manifest.json +4 -3
- package/dist/collection/components/post-accordion/post-accordion.js +13 -5
- package/dist/collection/components/post-accordion-item/post-accordion-item.js +17 -8
- package/dist/collection/components/post-avatar/post-avatar.js +29 -11
- package/dist/collection/components/post-back-to-top/post-back-to-top.css +1 -1
- package/dist/collection/components/post-back-to-top/post-back-to-top.js +9 -5
- package/dist/collection/components/post-banner/post-banner.css +1 -1
- package/dist/collection/components/post-banner/post-banner.js +34 -14
- package/dist/collection/components/post-breadcrumb/post-breadcrumb.js +17 -9
- package/dist/collection/components/post-breadcrumb-item/post-breadcrumb-item.js +7 -4
- package/dist/collection/components/post-card-control/post-card-control.js +61 -12
- package/dist/collection/components/post-closebutton/post-closebutton.js +1 -1
- package/dist/collection/components/post-collapsible/post-collapsible.js +7 -4
- package/dist/collection/components/post-collapsible-trigger/post-collapsible-trigger.js +6 -3
- package/dist/collection/components/post-footer/post-footer.js +8 -5
- package/dist/collection/components/post-header/post-header.css +1 -1
- package/dist/collection/components/post-header/post-header.js +82 -8
- package/dist/collection/components/post-icon/post-icon.js +43 -10
- package/dist/collection/components/post-language-option/post-language-option.js +32 -8
- package/dist/collection/components/post-language-switch/post-language-switch.css +1 -1
- package/dist/collection/components/post-language-switch/post-language-switch.js +22 -6
- package/dist/collection/components/post-linkarea/post-linkarea.css +1 -0
- package/dist/collection/components/post-linkarea/post-linkarea.js +32 -0
- package/dist/collection/components/post-list/post-list.js +17 -6
- package/dist/collection/components/post-list-item/post-list-item.js +1 -1
- package/dist/collection/components/post-logo/post-logo.js +7 -4
- package/dist/collection/components/post-mainnavigation/post-mainnavigation.css +1 -1
- package/dist/collection/components/post-mainnavigation/post-mainnavigation.js +193 -19
- package/dist/collection/components/post-megadropdown/post-megadropdown.css +1 -1
- package/dist/collection/components/post-megadropdown/post-megadropdown.js +124 -66
- package/dist/collection/components/post-megadropdown-trigger/post-megadropdown-trigger.css +1 -1
- package/dist/collection/components/post-megadropdown-trigger/post-megadropdown-trigger.js +12 -6
- package/dist/collection/components/post-menu/post-menu.js +15 -5
- 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 -5
- package/dist/collection/components/post-popover/post-popover.js +22 -4
- package/dist/collection/components/post-popovercontainer/post-popovercontainer.css +1 -1
- package/dist/collection/components/post-popovercontainer/post-popovercontainer.js +46 -8
- package/dist/collection/components/post-rating/post-rating.js +27 -6
- package/dist/collection/components/post-tab-header/post-tab-header.js +8 -5
- package/dist/collection/components/post-tab-panel/post-tab-panel.js +8 -5
- package/dist/collection/components/post-tabs/post-tabs.js +10 -4
- package/dist/collection/components/post-tag/post-tag.js +22 -5
- package/dist/collection/components/post-togglebutton/post-togglebutton.js +7 -4
- package/dist/collection/components/post-tooltip/post-tooltip.js +21 -6
- package/dist/collection/index.js +1 -0
- package/dist/components/index.js +36 -35
- package/dist/components/{post-collapsible-trigger2.js → p-05590ac0.js} +11 -8
- package/dist/components/{post-breadcrumb2.js → p-146677d1.js} +26 -20
- package/dist/components/p-1ee1742f.js +237 -0
- package/dist/components/p-2083ae2c.js +3 -0
- package/dist/components/{post-megadropdown-trigger2.js → p-27edc023.js} +15 -9
- package/dist/components/{post-tooltip2.js → p-2d9b46b4.js} +21 -10
- package/dist/components/{post-card-control2.js → p-38778a14.js} +49 -18
- package/dist/components/p-3aba7629.js +29 -0
- package/dist/components/{post-togglebutton2.js → p-3cee636a.js} +9 -6
- package/dist/components/p-3e8554e7.js +1646 -0
- package/dist/components/p-424d5ea9.js +199 -0
- package/dist/components/p-46a6c5ec.js +168 -0
- package/dist/components/p-4965cfe1.js +145 -0
- package/dist/components/{post-list2.js → p-536eba02.js} +17 -8
- package/dist/components/p-5653923a.js +44 -0
- package/dist/components/{post-footer2.js → p-58878996.js} +13 -10
- package/dist/components/{post-logo2.js → p-5f51ec58.js} +9 -6
- package/{loaders/post-popovercontainer2.js → dist/components/p-60cf53cc.js} +25 -10
- package/{loaders/post-accordion-item2.js → dist/components/p-68ecd276.js} +22 -15
- package/dist/components/{post-tab-header2.js → p-75b8b652.js} +11 -8
- package/dist/components/{post-tab-panel2.js → p-78e1d893.js} +10 -7
- package/dist/components/{post-menu-trigger2.js → p-8b053fd5.js} +14 -8
- package/dist/components/{post-icon2.js → p-91031e3b.js} +35 -14
- package/{loaders/post-menu2.js → dist/components/p-91882483.js} +19 -36
- package/dist/components/{post-list-item2.js → p-9e4b1f10.js} +3 -3
- package/dist/components/{post-accordion2.js → p-a3a004e6.js} +14 -8
- package/dist/components/{post-popover2.js → p-af23f7de.js} +21 -9
- package/dist/components/{post-collapsible2.js → p-b018d864.js} +9 -6
- package/dist/components/{check-non-empty.js → p-b095519d.js} +1 -1
- package/dist/components/{post-closebutton2.js → p-bf14d264.js} +5 -5
- package/dist/components/{post-breadcrumb-item2.js → p-c7c1d466.js} +10 -7
- package/dist/components/{post-tag2.js → p-cab43cee.js} +20 -9
- package/{loaders/post-menu-item2.js → dist/components/p-ccccf0c3.js} +4 -4
- package/dist/components/{post-tabs2.js → p-ce854a7d.js} +12 -6
- package/dist/components/{post-avatar2.js → p-d3fb70af.js} +25 -13
- package/dist/components/{post-language-option2.js → p-d47bb5bf.js} +27 -11
- package/dist/components/{post-back-to-top2.js → p-e20366a6.js} +15 -11
- package/dist/components/{index2.js → p-eabb09ad.js} +3 -3
- package/dist/components/{post-language-switch2.js → p-f6d80d76.js} +27 -15
- package/dist/components/p-f7b9f90a.js +135 -0
- package/dist/components/{post-rating2.js → p-fc59de7c.js} +23 -10
- package/dist/components/post-accordion-item.js +1 -1
- package/dist/components/post-accordion.js +1 -1
- package/dist/components/post-avatar.js +1 -1
- package/dist/components/post-back-to-top.js +1 -1
- package/dist/components/post-banner.js +1 -1
- package/dist/components/post-breadcrumb-item.js +1 -1
- package/dist/components/post-breadcrumb.js +1 -1
- package/dist/components/post-card-control.js +1 -1
- package/dist/components/post-closebutton.js +1 -1
- package/dist/components/post-collapsible-trigger.js +1 -1
- package/dist/components/post-collapsible.js +1 -1
- package/dist/components/post-footer.js +1 -1
- package/dist/components/post-header.js +1 -1
- package/dist/components/post-icon.js +1 -1
- package/dist/components/post-language-option.js +1 -1
- package/dist/components/post-language-switch.js +1 -1
- package/dist/components/post-linkarea.d.ts +11 -0
- package/dist/components/post-linkarea.js +6 -0
- package/dist/components/post-list-item.js +1 -1
- package/dist/components/post-list.js +1 -1
- package/dist/components/post-logo.js +1 -1
- package/dist/components/post-mainnavigation.js +1 -1
- package/dist/components/post-megadropdown-trigger.js +1 -1
- package/dist/components/post-megadropdown.js +1 -1
- package/dist/components/post-menu-item.js +1 -1
- package/dist/components/post-menu-trigger.js +1 -1
- package/dist/components/post-menu.js +1 -1
- package/dist/components/post-popover.js +1 -1
- package/dist/components/post-popovercontainer.js +1 -1
- package/dist/components/post-rating.js +1 -1
- package/dist/components/post-tab-header.js +1 -1
- package/dist/components/post-tab-panel.js +1 -1
- package/dist/components/post-tabs.js +1 -1
- package/dist/components/post-tag.js +1 -1
- package/dist/components/post-togglebutton.js +1 -1
- package/dist/components/post-tooltip.js +1 -1
- package/dist/docs.d.ts +8 -0
- package/dist/docs.json +333 -149
- package/dist/esm/{index-6bfe6554.js → index-2c232bf2.js} +334 -152
- package/dist/esm/index.js +21 -20
- package/dist/esm/loader.js +3 -3
- package/dist/esm/package-8c98af5e.js +3 -0
- package/dist/esm/{post-accordion-48eb17c3.js → post-accordion-49fba403.js} +11 -5
- package/dist/esm/{post-accordion-item-e0893bb3.js → post-accordion-item-c516517a.js} +15 -8
- package/dist/esm/post-accordion-item.entry.js +3 -3
- package/dist/esm/post-accordion.entry.js +3 -3
- package/dist/esm/{post-avatar-20cde806.js → post-avatar-b527ac63.js} +23 -11
- package/dist/esm/post-avatar.entry.js +3 -3
- package/dist/esm/post-back-to-top-f514c1f0.js +78 -0
- package/dist/esm/post-back-to-top.entry.js +3 -3
- package/dist/esm/post-banner-0ad7758b.js +108 -0
- package/dist/esm/post-banner.entry.js +3 -3
- package/dist/esm/{post-breadcrumb-39203792.js → post-breadcrumb-57bca9dd.js} +15 -9
- package/dist/esm/post-breadcrumb-item_2.entry.js +3 -3
- package/dist/esm/post-breadcrumb.entry.js +3 -3
- package/dist/esm/{post-card-control-d2c25c96.js → post-card-control-ea741f60.js} +45 -14
- package/dist/esm/post-card-control.entry.js +3 -3
- package/dist/esm/post-closebutton_15.entry.js +3 -3
- package/dist/esm/{post-collapsible-trigger-2f9ad9a5.js → post-collapsible-trigger-31155750.js} +11 -5
- package/dist/esm/post-collapsible_2.entry.js +3 -3
- package/dist/esm/post-components.js +4 -4
- package/dist/esm/{post-footer-e804a967.js → post-footer-cdde2086.js} +8 -5
- package/dist/esm/post-footer.entry.js +3 -3
- package/dist/esm/post-linkarea-cad95623.js +30 -0
- package/dist/esm/post-linkarea.entry.js +3 -0
- package/dist/esm/{post-menu-item-f9793958.js → post-menu-item-db732728.js} +8 -5
- package/dist/esm/{post-popover-8205412a.js → post-popover-00f427ac.js} +18 -6
- package/dist/esm/post-popover.entry.js +3 -3
- package/dist/esm/{post-rating-95ecb434.js → post-rating-cdcb2a1d.js} +21 -8
- package/dist/esm/post-rating.entry.js +3 -3
- package/dist/esm/{post-tab-header-d520b99a.js → post-tab-header-1d4113cb.js} +8 -5
- package/dist/esm/post-tab-header.entry.js +3 -3
- package/dist/esm/{post-tab-panel-8c8d2332.js → post-tab-panel-7a5c03ef.js} +8 -5
- package/dist/esm/post-tab-panel.entry.js +3 -3
- package/dist/esm/{post-tabs-dd6dfe43.js → post-tabs-308190c0.js} +10 -4
- package/dist/esm/post-tabs.entry.js +3 -3
- package/dist/esm/{post-tag-593813a4.js → post-tag-aebbda10.js} +18 -7
- package/dist/esm/post-tag.entry.js +3 -3
- package/dist/esm/{post-togglebutton-120df903.js → post-togglebutton-95ba85d2.js} +515 -132
- package/dist/esm/{post-tooltip-a13d6fbb.js → post-tooltip-918d3a54.js} +17 -6
- package/dist/esm/post-tooltip.entry.js +3 -3
- package/dist/post-components/index.esm.js +1 -1
- package/dist/post-components/p-037d6ef2.entry.js +1 -0
- package/dist/post-components/p-1e69a72f.js +1 -0
- package/dist/post-components/p-2083ae2c.js +1 -0
- package/dist/post-components/p-24297444.js +1 -0
- package/dist/post-components/{p-4fc83a1c.js → p-267f52a9.js} +3 -3
- package/dist/post-components/p-2e6c5b60.js +1 -0
- package/dist/post-components/p-3591d4e3.entry.js +1 -0
- package/dist/post-components/p-3dec4425.entry.js +1 -0
- package/dist/post-components/p-423aecd4.js +1 -0
- package/dist/post-components/p-43221de8.entry.js +1 -0
- package/dist/post-components/p-48fd00e7.entry.js +1 -0
- package/dist/post-components/p-4ca79b52.js +1 -0
- package/dist/post-components/p-4d2dee9f.entry.js +1 -0
- package/dist/post-components/p-4fedef65.js +1 -0
- package/dist/post-components/p-59109b3b.entry.js +1 -0
- package/dist/post-components/p-675352c3.entry.js +1 -0
- package/dist/post-components/p-6e4527d9.entry.js +1 -0
- package/dist/post-components/p-726bfda2.js +1 -0
- package/dist/post-components/p-767c0bf3.js +1 -0
- package/dist/post-components/p-796968bd.entry.js +1 -0
- package/dist/post-components/{p-a72cb18c.js → p-7c9758fa.js} +1 -1
- package/dist/post-components/p-8a452260.js +1 -0
- package/dist/post-components/p-8a50b900.js +1 -0
- package/dist/post-components/p-8de4f677.entry.js +1 -0
- package/dist/post-components/p-93632808.js +1 -0
- package/dist/post-components/p-9aca3d07.entry.js +1 -0
- package/dist/post-components/p-9f0c5164.js +1 -0
- package/dist/post-components/p-a6436e7f.js +1 -0
- package/dist/post-components/p-ad246c0d.js +1 -0
- package/dist/post-components/p-b015efcb.entry.js +1 -0
- package/dist/post-components/{p-92f8803c.entry.js → p-b0afc087.entry.js} +1 -1
- package/dist/post-components/p-b1adc221.js +1 -0
- package/dist/post-components/p-b2c0d21a.js +1 -0
- package/dist/post-components/p-b5a566f1.js +1 -0
- package/dist/post-components/p-c0961047.entry.js +1 -0
- package/dist/post-components/p-c388b7bb.entry.js +1 -0
- package/dist/post-components/{p-d6449a93.entry.js → p-ca41b899.entry.js} +1 -1
- package/dist/post-components/p-d2395ae9.entry.js +1 -0
- package/dist/post-components/p-d9833667.js +2 -0
- package/dist/post-components/p-da261c46.entry.js +1 -0
- package/dist/post-components/post-components.esm.js +1 -1
- package/dist/types/components/post-header/post-header.d.ts +11 -2
- package/dist/types/components/post-language-switch/post-language-switch.d.ts +1 -1
- package/dist/types/components/post-linkarea/post-linkarea.d.ts +5 -0
- package/dist/types/components/post-mainnavigation/post-mainnavigation.d.ts +57 -3
- package/dist/types/components/post-megadropdown/post-megadropdown.d.ts +26 -12
- package/dist/types/components/post-popovercontainer/post-popovercontainer.d.ts +4 -0
- package/dist/types/components.d.ts +49 -23
- package/dist/types/index.d.ts +3 -2
- package/dist/types/stencil-public-runtime.d.ts +6 -0
- package/loaders/index.d.ts +2 -0
- package/loaders/index.js +3 -2
- package/loaders/{post-collapsible-trigger2.js → p-05590ac0.js} +11 -8
- package/loaders/{post-breadcrumb-item2.js → p-1beacb73.js} +10 -7
- package/loaders/p-2083ae2c.js +3 -0
- package/loaders/p-3aba7629.js +29 -0
- package/loaders/p-3e8554e7.js +1646 -0
- package/loaders/{index2.js → p-56ad4838.js} +3 -3
- package/{dist/components/post-popovercontainer2.js → loaders/p-60cf53cc.js} +25 -10
- package/{dist/components/post-accordion-item2.js → loaders/p-83baa315.js} +22 -15
- package/loaders/{post-menu-trigger2.js → p-8b053fd5.js} +14 -8
- package/{dist/components/post-menu2.js → loaders/p-91882483.js} +19 -36
- package/loaders/{post-collapsible2.js → p-9fac5d7d.js} +9 -6
- package/loaders/{check-non-empty.js → p-b095519d.js} +1 -1
- package/{dist/components/post-menu-item2.js → loaders/p-ccccf0c3.js} +4 -4
- package/loaders/{post-icon2.js → p-f7177e26.js} +35 -14
- package/loaders/p-f7b9f90a.js +135 -0
- package/loaders/post-accordion-item.js +1 -1
- package/loaders/post-accordion.js +14 -8
- package/loaders/post-avatar.js +25 -13
- package/loaders/post-back-to-top.js +15 -11
- package/loaders/post-banner.js +36 -22
- package/loaders/post-breadcrumb-item.js +1 -1
- package/loaders/post-breadcrumb.js +26 -20
- package/loaders/post-card-control.js +49 -18
- package/loaders/post-closebutton.js +5 -5
- package/loaders/post-collapsible-trigger.js +1 -1
- package/loaders/post-collapsible.js +1 -1
- package/loaders/post-footer.js +13 -10
- package/loaders/post-header.js +65 -145
- package/loaders/post-icon.js +1 -1
- package/loaders/post-language-option.js +27 -11
- package/loaders/post-language-switch.js +27 -15
- package/loaders/post-linkarea.d.ts +11 -0
- package/loaders/post-linkarea.js +47 -0
- package/loaders/post-list-item.js +3 -3
- package/loaders/post-list.js +17 -8
- package/loaders/post-logo.js +9 -6
- package/loaders/post-mainnavigation.js +193 -9
- package/loaders/post-megadropdown-trigger.js +15 -9
- package/loaders/post-megadropdown.js +108 -51
- package/loaders/post-menu-item.js +1 -1
- package/loaders/post-menu-trigger.js +1 -1
- package/loaders/post-menu.js +1 -1
- package/loaders/post-popover.js +21 -9
- package/loaders/post-popovercontainer.js +1 -1
- package/loaders/post-rating.js +23 -10
- package/loaders/post-tab-header.js +11 -8
- package/loaders/post-tab-panel.js +10 -7
- package/loaders/post-tabs.js +12 -6
- package/loaders/post-tag.js +20 -9
- package/loaders/post-togglebutton.js +9 -6
- package/loaders/post-tooltip.js +21 -10
- package/package.json +10 -11
- package/dist/cjs/post-back-to-top-7efd1066.js +0 -76
- package/dist/cjs/post-banner-a6808d7d.js +0 -96
- package/dist/components/package.js +0 -3
- package/dist/components/post-banner2.js +0 -131
- package/dist/components/post-header2.js +0 -279
- package/dist/components/post-mainnavigation2.js +0 -53
- package/dist/components/post-megadropdown2.js +0 -111
- package/dist/esm/package-495dba42.js +0 -3
- package/dist/esm/post-back-to-top-e422c426.js +0 -74
- package/dist/esm/post-banner-7385397e.js +0 -94
- package/dist/post-components/p-0b613350.js +0 -1
- package/dist/post-components/p-0e216cc4.js +0 -2
- package/dist/post-components/p-20e1b680.js +0 -1
- package/dist/post-components/p-29bc8ddc.entry.js +0 -1
- package/dist/post-components/p-2b4c7ec7.entry.js +0 -1
- package/dist/post-components/p-2f327006.entry.js +0 -1
- package/dist/post-components/p-3632ace7.js +0 -1
- package/dist/post-components/p-3a978ea9.entry.js +0 -1
- package/dist/post-components/p-3d4fdde0.js +0 -1
- package/dist/post-components/p-427132e3.entry.js +0 -1
- package/dist/post-components/p-445dfa96.js +0 -1
- package/dist/post-components/p-4c0c13a9.js +0 -1
- package/dist/post-components/p-5384e6f4.js +0 -1
- package/dist/post-components/p-5630677a.entry.js +0 -1
- package/dist/post-components/p-5e5ee06d.entry.js +0 -1
- package/dist/post-components/p-68c43ef0.entry.js +0 -1
- package/dist/post-components/p-6e39bb59.entry.js +0 -1
- package/dist/post-components/p-6fede961.js +0 -1
- package/dist/post-components/p-72a5ee9b.js +0 -1
- package/dist/post-components/p-72d9d594.entry.js +0 -1
- package/dist/post-components/p-85bf673e.entry.js +0 -1
- package/dist/post-components/p-8decb072.entry.js +0 -1
- package/dist/post-components/p-9596c7d6.js +0 -1
- package/dist/post-components/p-975b30f5.js +0 -1
- package/dist/post-components/p-9a50697e.entry.js +0 -1
- package/dist/post-components/p-aaca7ca7.js +0 -1
- package/dist/post-components/p-ac2189b7.js +0 -1
- package/dist/post-components/p-afe3b28e.js +0 -1
- package/dist/post-components/p-b129c166.js +0 -1
- package/dist/post-components/p-bd49bb7e.entry.js +0 -1
- package/dist/post-components/p-c043686c.entry.js +0 -1
- package/dist/post-components/p-c8544b65.js +0 -1
- package/dist/post-components/p-c9f65844.entry.js +0 -1
- package/dist/post-components/p-f7c5b0c2.js +0 -1
- package/loaders/package.js +0 -3
- /package/dist/components/{heading-levels.js → p-247a1668.js} +0 -0
- /package/dist/components/{constants.js → p-440193f4.js} +0 -0
- /package/dist/components/{slide.js → p-4af6dbed.js} +0 -0
- /package/dist/components/{index.browser.js → p-5959f2bd.js} +0 -0
- /package/dist/components/{fade.js → p-64e3de38.js} +0 -0
- /package/dist/components/{check-type.js → p-8562c7dc.js} +0 -0
- /package/dist/components/{attribute-observer.js → p-9748a355.js} +0 -0
- /package/dist/components/{check-one-of.js → p-bacd3e2c.js} +0 -0
- /package/dist/components/{debounce.js → p-e1baac59.js} +0 -0
- /package/dist/components/{get-root.js → p-fc91cbc2.js} +0 -0
- /package/loaders/{heading-levels.js → p-247a1668.js} +0 -0
- /package/loaders/{constants.js → p-440193f4.js} +0 -0
- /package/loaders/{slide.js → p-4af6dbed.js} +0 -0
- /package/loaders/{index.browser.js → p-5959f2bd.js} +0 -0
- /package/loaders/{fade.js → p-64e3de38.js} +0 -0
- /package/loaders/{check-type.js → p-8562c7dc.js} +0 -0
- /package/loaders/{attribute-observer.js → p-9748a355.js} +0 -0
- /package/loaders/{check-one-of.js → p-bacd3e2c.js} +0 -0
- /package/loaders/{debounce.js → p-e1baac59.js} +0 -0
- /package/loaders/{get-root.js → p-fc91cbc2.js} +0 -0
|
@@ -33,7 +33,48 @@ export class PostCardControl {
|
|
|
33
33
|
initialChecked;
|
|
34
34
|
hasIcon;
|
|
35
35
|
host;
|
|
36
|
+
focused = false;
|
|
36
37
|
internals;
|
|
38
|
+
/**
|
|
39
|
+
* Defines the text in the control-label.
|
|
40
|
+
*/
|
|
41
|
+
label;
|
|
42
|
+
/**
|
|
43
|
+
* Defines the description in the control-label.
|
|
44
|
+
*/
|
|
45
|
+
description = null;
|
|
46
|
+
/**
|
|
47
|
+
* Defines the `type` attribute of the control.
|
|
48
|
+
*/
|
|
49
|
+
type;
|
|
50
|
+
/**
|
|
51
|
+
* Defines the `name` attribute of the control.
|
|
52
|
+
* <span className="banner banner-sm banner-info">This is a required property, when the control should participate in a native `form`. If not specified, a native `form` will never contain this controls value.</span>
|
|
53
|
+
* <span className="banner banner-sm banner-info">This is a required property, when the control is used with type `radio`.</span>
|
|
54
|
+
*/
|
|
55
|
+
name = null;
|
|
56
|
+
/**
|
|
57
|
+
* Defines the `value` attribute of the control. <span className="banner banner-sm banner-info">This is a required property, when the control is used with type `radio`.</span>
|
|
58
|
+
*/
|
|
59
|
+
value = null;
|
|
60
|
+
/**
|
|
61
|
+
* Defines the `checked` attribute of the control. If `true`, the control is selected at its value will be included in the forms' data.
|
|
62
|
+
*/
|
|
63
|
+
checked = false;
|
|
64
|
+
/**
|
|
65
|
+
* Defines the `disabled` attribute of the control. If `true`, the user can not interact with the control and the controls value will not be included in the forms' data.
|
|
66
|
+
*/
|
|
67
|
+
disabled = false;
|
|
68
|
+
/**
|
|
69
|
+
* Defines the validation `validity` of the control.
|
|
70
|
+
* To reset validity to an undefined state, simply remove the attribute from the control.
|
|
71
|
+
*/
|
|
72
|
+
validity = null;
|
|
73
|
+
/**
|
|
74
|
+
* Defines the icon `name` inside the card.
|
|
75
|
+
* <span className="banner banner-sm banner-info">If not set the icon will not show up.</span>
|
|
76
|
+
*/
|
|
77
|
+
icon = null;
|
|
37
78
|
/**
|
|
38
79
|
* An event emitted whenever the components checked state is toggled.
|
|
39
80
|
* The event payload (emitted under `event.detail.state`) is a boolean: `true` if the component is checked, `false` if it is unchecked.
|
|
@@ -74,16 +115,6 @@ export class PostCardControl {
|
|
|
74
115
|
this.controlSetChecked(this.checked);
|
|
75
116
|
}
|
|
76
117
|
constructor() {
|
|
77
|
-
this.focused = false;
|
|
78
|
-
this.label = undefined;
|
|
79
|
-
this.description = null;
|
|
80
|
-
this.type = undefined;
|
|
81
|
-
this.name = null;
|
|
82
|
-
this.value = null;
|
|
83
|
-
this.checked = false;
|
|
84
|
-
this.disabled = false;
|
|
85
|
-
this.validity = null;
|
|
86
|
-
this.icon = null;
|
|
87
118
|
this.cardClickHandler = this.cardClickHandler.bind(this);
|
|
88
119
|
this.controlClickHandler = this.controlClickHandler.bind(this);
|
|
89
120
|
this.controlChangeHandler = this.controlChangeHandler.bind(this);
|
|
@@ -232,14 +263,14 @@ export class PostCardControl {
|
|
|
232
263
|
this.hasIcon = Boolean(this.host.querySelector('[slot="icon"]') || this.icon);
|
|
233
264
|
}
|
|
234
265
|
render() {
|
|
235
|
-
return (h(Host, { key: '
|
|
266
|
+
return (h(Host, { key: 'a62b814d2579038654a8fef11c6d136e03381320', "data-version": version, onClick: this.cardClickHandler }, h("div", { key: '34e5f1092cd886bd5dc69542728a3c406e11cd51', class: {
|
|
236
267
|
'card-control': true,
|
|
237
268
|
'is-checked': this.checked,
|
|
238
269
|
'is-disabled': this.disabled,
|
|
239
270
|
'is-focused': this.focused,
|
|
240
271
|
'is-valid': this.validity !== null && this.validity !== 'false',
|
|
241
272
|
'is-invalid': this.validity === 'false',
|
|
242
|
-
} }, h("input", { key: '
|
|
273
|
+
} }, h("input", { key: 'ca21d9eba6b998b26615ae7d92f105b6fe0c2f9f', ref: el => (this.control = el), id: this.controlId, class: "card-control--input", type: this.type, name: this.name, value: this.value, checked: this.checked, "aria-describedby": `${this.controlId}_content`, "aria-disabled": this.disabled, "aria-invalid": this.validity === 'false', onClick: this.controlClickHandler, onInput: this.controlChangeHandler, onChange: this.controlChangeHandler, onFocus: this.controlFocusHandler, onBlur: this.controlFocusHandler, onKeyDown: this.controlKeyDownHandler }), h("label", { key: 'f9b336f63f5f83143bdf2b3b8b2d85a57723b036', id: `${this.controlId}_label`, htmlFor: this.controlId, class: "card-control--label" }, this.label, this.description ? (h("div", { class: "card-control--description" }, this.description)) : null), this.hasIcon ? (h("div", { class: "card-control--icon" }, h("slot", { name: "icon" }, this.icon ? h("post-icon", { name: this.icon }) : null))) : null, h("div", { key: '813f81b01385aa7721d35c7edbd1494fc178dc4d', id: `${this.controlId}_content`, class: "card-control--content" }, h("slot", { key: '95658d0b41b293a8fafbef79b3f2c6fa50c95534' })))));
|
|
243
274
|
}
|
|
244
275
|
componentDidRender() {
|
|
245
276
|
this.setHostContext();
|
|
@@ -290,6 +321,8 @@ export class PostCardControl {
|
|
|
290
321
|
"tags": [],
|
|
291
322
|
"text": "Defines the text in the control-label."
|
|
292
323
|
},
|
|
324
|
+
"getter": false,
|
|
325
|
+
"setter": false,
|
|
293
326
|
"attribute": "label",
|
|
294
327
|
"reflect": false
|
|
295
328
|
},
|
|
@@ -307,6 +340,8 @@ export class PostCardControl {
|
|
|
307
340
|
"tags": [],
|
|
308
341
|
"text": "Defines the description in the control-label."
|
|
309
342
|
},
|
|
343
|
+
"getter": false,
|
|
344
|
+
"setter": false,
|
|
310
345
|
"attribute": "description",
|
|
311
346
|
"reflect": false,
|
|
312
347
|
"defaultValue": "null"
|
|
@@ -325,6 +360,8 @@ export class PostCardControl {
|
|
|
325
360
|
"tags": [],
|
|
326
361
|
"text": "Defines the `type` attribute of the control."
|
|
327
362
|
},
|
|
363
|
+
"getter": false,
|
|
364
|
+
"setter": false,
|
|
328
365
|
"attribute": "type",
|
|
329
366
|
"reflect": false
|
|
330
367
|
},
|
|
@@ -342,6 +379,8 @@ export class PostCardControl {
|
|
|
342
379
|
"tags": [],
|
|
343
380
|
"text": "Defines the `name` attribute of the control.\n<span className=\"banner banner-sm banner-info\">This is a required property, when the control should participate in a native `form`. If not specified, a native `form` will never contain this controls value.</span>\n<span className=\"banner banner-sm banner-info\">This is a required property, when the control is used with type `radio`.</span>"
|
|
344
381
|
},
|
|
382
|
+
"getter": false,
|
|
383
|
+
"setter": false,
|
|
345
384
|
"attribute": "name",
|
|
346
385
|
"reflect": false,
|
|
347
386
|
"defaultValue": "null"
|
|
@@ -360,6 +399,8 @@ export class PostCardControl {
|
|
|
360
399
|
"tags": [],
|
|
361
400
|
"text": "Defines the `value` attribute of the control. <span className=\"banner banner-sm banner-info\">This is a required property, when the control is used with type `radio`.</span>"
|
|
362
401
|
},
|
|
402
|
+
"getter": false,
|
|
403
|
+
"setter": false,
|
|
363
404
|
"attribute": "value",
|
|
364
405
|
"reflect": false,
|
|
365
406
|
"defaultValue": "null"
|
|
@@ -378,6 +419,8 @@ export class PostCardControl {
|
|
|
378
419
|
"tags": [],
|
|
379
420
|
"text": "Defines the `checked` attribute of the control. If `true`, the control is selected at its value will be included in the forms' data."
|
|
380
421
|
},
|
|
422
|
+
"getter": false,
|
|
423
|
+
"setter": false,
|
|
381
424
|
"attribute": "checked",
|
|
382
425
|
"reflect": false,
|
|
383
426
|
"defaultValue": "false"
|
|
@@ -396,6 +439,8 @@ export class PostCardControl {
|
|
|
396
439
|
"tags": [],
|
|
397
440
|
"text": "Defines the `disabled` attribute of the control. If `true`, the user can not interact with the control and the controls value will not be included in the forms' data."
|
|
398
441
|
},
|
|
442
|
+
"getter": false,
|
|
443
|
+
"setter": false,
|
|
399
444
|
"attribute": "disabled",
|
|
400
445
|
"reflect": false,
|
|
401
446
|
"defaultValue": "false"
|
|
@@ -414,6 +459,8 @@ export class PostCardControl {
|
|
|
414
459
|
"tags": [],
|
|
415
460
|
"text": "Defines the validation `validity` of the control.\nTo reset validity to an undefined state, simply remove the attribute from the control."
|
|
416
461
|
},
|
|
462
|
+
"getter": false,
|
|
463
|
+
"setter": false,
|
|
417
464
|
"attribute": "validity",
|
|
418
465
|
"reflect": false,
|
|
419
466
|
"defaultValue": "null"
|
|
@@ -432,6 +479,8 @@ export class PostCardControl {
|
|
|
432
479
|
"tags": [],
|
|
433
480
|
"text": "Defines the icon `name` inside the card.\n<span className=\"banner banner-sm banner-info\">If not set the icon will not show up.</span>"
|
|
434
481
|
},
|
|
482
|
+
"getter": false,
|
|
483
|
+
"setter": false,
|
|
435
484
|
"attribute": "icon",
|
|
436
485
|
"reflect": false,
|
|
437
486
|
"defaultValue": "null"
|
|
@@ -6,7 +6,7 @@ import { version } from "../../../../package";
|
|
|
6
6
|
export class PostClosebutton {
|
|
7
7
|
host;
|
|
8
8
|
render() {
|
|
9
|
-
return (h(Host, { key: '
|
|
9
|
+
return (h(Host, { key: 'c03f50379252ba13992bc3d021989ac07dba9f79', "data-version": version }, h("button", { key: 'e97a86bb6e1eace89a1a3a78fb231047f065dd5e', class: "btn btn-icon-close", type: "button" }, h("post-icon", { key: 'aca522d4c251a8183c91c2bd4d810d0716a2fe13', "aria-hidden": "true", name: "closex" }), h("span", { key: '6873522961b1683d1261163b07ee022f93eed836', class: "visually-hidden" }, h("slot", { key: 'bf4b13356c9a0164f1481d1fedc3a78a53e5f8e0' })))));
|
|
10
10
|
}
|
|
11
11
|
static get is() { return "post-closebutton"; }
|
|
12
12
|
static get elementRef() { return "host"; }
|
|
@@ -6,12 +6,13 @@ import { checkEmptyOrType, isMotionReduced } from "../../utils/index";
|
|
|
6
6
|
* @slot default - Slot for placing content within the collapsible element.
|
|
7
7
|
*/
|
|
8
8
|
export class PostCollapsible {
|
|
9
|
-
constructor() {
|
|
10
|
-
this.collapsed = false;
|
|
11
|
-
}
|
|
12
9
|
isLoaded = false;
|
|
13
10
|
isOpen = true;
|
|
14
11
|
host;
|
|
12
|
+
/**
|
|
13
|
+
* If `true`, the element is collapsed otherwise it is displayed.
|
|
14
|
+
*/
|
|
15
|
+
collapsed = false;
|
|
15
16
|
collapsedChange() {
|
|
16
17
|
checkEmptyOrType(this.collapsed, 'boolean', 'The `collapsed` property of the `post-collapsible` must be a boolean.');
|
|
17
18
|
void this.toggle(!this.collapsed);
|
|
@@ -56,7 +57,7 @@ export class PostCollapsible {
|
|
|
56
57
|
triggers.forEach(trigger => trigger.update());
|
|
57
58
|
}
|
|
58
59
|
render() {
|
|
59
|
-
return (h(Host, { key: '
|
|
60
|
+
return (h(Host, { key: '3ba9983562f5fabec602f23d8698bacb3ff0dbdc', "data-version": version, tabindex: this.collapsed ? -1 : undefined }, h("slot", { key: '010369b851198dab8eed76a2ab26627d480c97d4' })));
|
|
60
61
|
}
|
|
61
62
|
static get is() { return "post-collapsible"; }
|
|
62
63
|
static get encapsulation() { return "shadow"; }
|
|
@@ -86,6 +87,8 @@ export class PostCollapsible {
|
|
|
86
87
|
"tags": [],
|
|
87
88
|
"text": "If `true`, the element is collapsed otherwise it is displayed."
|
|
88
89
|
},
|
|
90
|
+
"getter": false,
|
|
91
|
+
"setter": false,
|
|
89
92
|
"attribute": "collapsed",
|
|
90
93
|
"reflect": false,
|
|
91
94
|
"defaultValue": "false"
|
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
import { version } from "../../../../package";
|
|
2
2
|
import { checkNonEmpty, checkType, debounce, getRoot } from "../../utils/index";
|
|
3
3
|
export class PostCollapsibleTrigger {
|
|
4
|
-
constructor() {
|
|
5
|
-
this.for = undefined;
|
|
6
|
-
}
|
|
7
4
|
trigger;
|
|
8
5
|
observer = new MutationObserver(() => this.setTrigger());
|
|
9
6
|
root;
|
|
10
7
|
host;
|
|
8
|
+
/**
|
|
9
|
+
* Link the trigger to a post-collapsible with this id
|
|
10
|
+
*/
|
|
11
|
+
for;
|
|
11
12
|
/**
|
|
12
13
|
* Set the "aria-controls" and "aria-expanded" attributes on the trigger to match the state of the controlled post-collapsible
|
|
13
14
|
*/
|
|
@@ -113,6 +114,8 @@ export class PostCollapsibleTrigger {
|
|
|
113
114
|
"tags": [],
|
|
114
115
|
"text": "Link the trigger to a post-collapsible with this id"
|
|
115
116
|
},
|
|
117
|
+
"getter": false,
|
|
118
|
+
"setter": false,
|
|
116
119
|
"attribute": "for",
|
|
117
120
|
"reflect": false
|
|
118
121
|
}
|
|
@@ -11,11 +11,12 @@ import { breakpoint } from "../../utils/breakpoints";
|
|
|
11
11
|
* @slot copyright - Slot for the copyright text.
|
|
12
12
|
*/
|
|
13
13
|
export class PostFooter {
|
|
14
|
-
constructor() {
|
|
15
|
-
this.label = undefined;
|
|
16
|
-
this.isMobile = breakpoint.get('name') === 'mobile';
|
|
17
|
-
}
|
|
18
14
|
host;
|
|
15
|
+
/**
|
|
16
|
+
* The label to add to the footer (visually hidden).
|
|
17
|
+
*/
|
|
18
|
+
label;
|
|
19
|
+
isMobile = breakpoint.get('name') === 'mobile';
|
|
19
20
|
connectedCallback() {
|
|
20
21
|
window.addEventListener('postBreakpoint:name', this.breakpointChange.bind(this));
|
|
21
22
|
}
|
|
@@ -29,7 +30,7 @@ export class PostFooter {
|
|
|
29
30
|
return (h("div", { class: "footer-grid" }, h("div", null, h("slot", { name: "grid-1" })), h("div", null, h("slot", { name: "grid-2" })), h("div", null, h("slot", { name: "grid-3" })), h("div", null, h("slot", { name: "grid-4" }))));
|
|
30
31
|
}
|
|
31
32
|
render() {
|
|
32
|
-
return (h(Host, { key: '
|
|
33
|
+
return (h(Host, { key: '14370a1cfd730a0b0353c88c95f265aefb57c480', "data-version": version }, h("footer", { key: '7208e9d465eb0b469887e7cfae66674db2092dbd' }, h("h2", { key: 'b392c866326374ae27704baaba0dd28c3001ee62', class: "visually-hidden" }, this.label), h("div", { key: '13411ad6e0b55ee17cf9bf77b155aa1c2810f057', class: "footer-container" }, this.isMobile ? this.renderAccordion() : this.renderGrid(), h("div", { key: '4815ae94cd43eca92482ad3c93f107243b26890e', class: "footer-column" }, h("div", { key: 'edc787dc5fc96169c323f15254b6088024a6f19d', class: "footer-socialmedia" }, h("slot", { key: '0971e342ac6f3913c408a535ce0746080e3f57af', name: "socialmedia" })), h("div", { key: 'da583c9ed819181bf2732277f4e6ee22df2e3022', class: "footer-app" }, h("slot", { key: 'b6dab5cfa1f4dc9c049f24d3e08416ef5a27e0aa', name: "app" }))), h("div", { key: '53a5c04129d24dfb64eedd46e95b5c78142a3fd7', class: "footer-businesssectors" }, h("slot", { key: '470f4294778b8978bf6eb168e2b47ff29ef43d07', name: "businesssectors" })), h("div", { key: '45d734ded794352b951f2891bbdba081e05a99d5', class: "footer-meta" }, h("slot", { key: '4d0da53c2eb79e111f0f05278a0972f046eebfa9', name: "meta" })), h("div", { key: 'f95fb7ed3cc09218a3d4a554c619b6f379d5135d', class: "footer-copyright" }, h("slot", { key: '9cdcec805152413693dced0f0d55ac1b1121c70e', name: "copyright" }))))));
|
|
33
34
|
}
|
|
34
35
|
disconnectedCallback() {
|
|
35
36
|
window.removeEventListener('postBreakpoint:name', this.breakpointChange.bind(this));
|
|
@@ -62,6 +63,8 @@ export class PostFooter {
|
|
|
62
63
|
"tags": [],
|
|
63
64
|
"text": "The label to add to the footer (visually hidden)."
|
|
64
65
|
},
|
|
66
|
+
"getter": false,
|
|
67
|
+
"setter": false,
|
|
65
68
|
"attribute": "label",
|
|
66
69
|
"reflect": false
|
|
67
70
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
*,::before,::after{box-sizing:border-box}:host{
|
|
1
|
+
*,::before,::after{box-sizing:border-box}:host{z-index:1090;--global-header-height: 72px;--global-header-minimal-height: 24px;--local-header-height: 112px;--local-header-min-height: 56px;--header-height: calc(var(--global-header-height) + var(--local-header-height));z-index:1020;position:relative}@media screen and (min-width: 1024px){:host{--global-header-reduced-height: 24px;--main-navigation-height: 56px}}@media screen and (max-width: 1023.98px){:host{--global-header-height: 64px;--local-header-height: 48px;--local-header-min-height: 48px;--main-navigation-height: 0px}}:host(:not(:has([slot=title]))){--local-header-height: var(--main-navigation-height)}:host(:not(:has([slot=title]))) .local-header{padding-block-start:0}:host(:not(:has([slot=title]))) .local-sub{display:none}.d-flex{display:flex}.space-between{justify-content:space-between}.global-header{background-color:#fc0;display:flex;justify-content:space-between;align-items:center;position:sticky;padding-inline:var(--post-core-dimension-4);height:var(--global-header-height)}@media screen and (max-width: 1023.98px){.global-header{z-index:3;inset-block-start:0}}@media screen and (min-width: 1024px){.global-header{z-index:5;padding-inline-end:var(--post-core-dimension-12);inset-block-start:calc((var(--global-header-height) - var(--global-header-reduced-height))*-1)}}slot[name=post-logo]{align-self:flex-end}.global-sub{display:flex;align-items:center;gap:var(--post-core-dimension-24)}.align-end{align-items:flex-end}.logo{flex:1 0 auto;height:var(--global-header-height);width:var(--global-header-height);min-height:var(--global-header-reduced-height);align-self:flex-end}@media screen and (min-width: 1024px){.logo{height:calc(var(--global-header-height) - var(--header-scroll-top))}}::slotted(ul){margin-block:0 !important;list-style:none;display:flex;padding-left:0;gap:1rem;flex-shrink:0 !important}.local-header{display:flex;position:sticky;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--post-core-dimension-8);min-height:var(--local-header-min-height);background:var(--post-core-color-brand-white);transition:box-shadow .2s ease-in-out}@media screen and (min-width: 1024px){.local-header{z-index:3;inset-block-start:calc(-1*(var(--local-header-height) - var(--main-navigation-height)) + var(--global-header-reduced-height));padding-block-start:var(--post-core-dimension-18);box-shadow:var(--post-core-elevation-3)}}@media screen and (max-width: 1023.98px){.local-header{z-index:2;inset-block-start:var(--global-header-height);padding-block:var(--post-core-dimension-9);flex-wrap:wrap}.local-header.local-header-mobile-extended{border-bottom:1px solid var(--post-core-color-sandgrey-012)}.local-header:not(.title-header-mobile-extended){box-shadow:var(--post-core-elevation-3)}}.local-sub{margin-inline-end:var(--post-core-dimension-16)}::slotted(.list-inline){margin:-8px 0 !important;z-index:3 !important;position:relative !important}::slotted(h1){margin:0 !important;flex-shrink:10;z-index:3}@media screen and (min-width: 600px){::slotted(h1){margin-inline-start:var(--post-core-dimension-12) !important}}@media screen and (max-width: 599.98px){::slotted(h1){margin-inline-start:var(--post-core-dimension-8) !important}}@media screen and (min-width: 1024px){::slotted(h1){font-size:var(--post-core-font-size-28) !important}}@media screen and (max-width: 1023.98px){::slotted(h1){font-size:var(--post-core-font-size-20) !important;max-width:calc(100vw - var(--post-core-dimension-8) - var(--post-core-dimension-16))}}@media screen and (min-width: 1024px){.mobile-toggle{display:none}}.navigation{width:100%}@media screen and (min-width: 1024px){.navigation{inset-block-start:var(--global-header-minimal-height)}.navigation::before{display:block;content:"";position:absolute;inset:0;z-index:2;background:var(--post-core-color-brand-white)}}@media screen and (max-width: 1023.98px){.navigation{position:fixed;z-index:1;inset-inline:0;background:var(--post-core-color-brand-white);inset-block-end:calc(100vh - var(--header-height))}::slotted(post-mainnavigation),.navigation-footer{display:none;flex-direction:column;padding-block:var(--post-core-dimension-16) var(--post-core-dimension-24);padding-inline:var(--post-core-dimension-32)}.navigation.extended ::slotted(post-mainnavigation),.navigation.extended .navigation-footer{display:flex}.navigation.extended{height:calc(100vh - var(--header-height));display:flex;flex-direction:column}.navigation.extended ::slotted(post-mainnavigation){flex-grow:1 !important}::slotted(post-mainnavigation){background-color:var(--post-core-color-sandgrey-002);gap:var(--post-core-dimension-32)}.navigation-footer{background-color:var(--post-core-color-sandgrey-006);gap:var(--post-core-dimension-24)}}@media screen and (max-width: 599.98px){::slotted(post-mainnavigation),.navigation-footer{padding-inline:var(--post-core-dimension-16)}}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import { h, Host } from "@stencil/core";
|
|
1
|
+
import { h, Host, } from "@stencil/core";
|
|
2
2
|
import { throttle } from "throttle-debounce";
|
|
3
3
|
import { version } from "../../../../package";
|
|
4
4
|
import { slideDown, slideUp } from "../../animations/slide";
|
|
5
|
+
import { getFocusableChildren } from "../../utils/get-focusable-children";
|
|
5
6
|
/**
|
|
6
7
|
* @slot post-logo - Should be used together with the `<post-logo>` component.
|
|
7
8
|
* @slot meta-navigation - Holds an `<ul>` with meta navigation links.
|
|
@@ -12,10 +13,8 @@ import { slideDown, slideUp } from "../../animations/slide";
|
|
|
12
13
|
* @slot post-mainnavigation - Has a default slot because it's only meant to be used in the `<post-header>`.
|
|
13
14
|
*/
|
|
14
15
|
export class PostHeader {
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
this.mobileMenuExtended = false;
|
|
18
|
-
}
|
|
16
|
+
firstFocusableEl;
|
|
17
|
+
lastFocusableEl;
|
|
19
18
|
scrollParent = null;
|
|
20
19
|
mobileMenu;
|
|
21
20
|
mobileMenuAnimation;
|
|
@@ -27,11 +26,28 @@ export class PostHeader {
|
|
|
27
26
|
window.addEventListener('resize', this.throttledResize, { passive: true });
|
|
28
27
|
this.handleResize();
|
|
29
28
|
this.handleScrollEvent();
|
|
29
|
+
this.getFocusableElements();
|
|
30
30
|
}
|
|
31
31
|
host;
|
|
32
|
+
device = null;
|
|
33
|
+
mobileMenuExtended = false;
|
|
32
34
|
frozeBody(isMobileMenuExtended) {
|
|
33
35
|
document.body.style.overflow = isMobileMenuExtended ? 'hidden' : '';
|
|
36
|
+
if (isMobileMenuExtended) {
|
|
37
|
+
this.host.addEventListener('keydown', e => {
|
|
38
|
+
this.keyboardHandler(e);
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
else {
|
|
42
|
+
this.host.removeEventListener('keydown', e => {
|
|
43
|
+
this.keyboardHandler(e);
|
|
44
|
+
});
|
|
45
|
+
}
|
|
34
46
|
}
|
|
47
|
+
/**
|
|
48
|
+
* An event emitted when the device has changed
|
|
49
|
+
*/
|
|
50
|
+
postUpdateDevice;
|
|
35
51
|
/**
|
|
36
52
|
* Toggles the mobile navigation.
|
|
37
53
|
*/
|
|
@@ -51,6 +67,36 @@ export class PostHeader {
|
|
|
51
67
|
if (!this.mobileMenuExtended)
|
|
52
68
|
await this.mobileMenuAnimation.finished;
|
|
53
69
|
}
|
|
70
|
+
// Get all the focusable elements in the post-header mobile menu
|
|
71
|
+
getFocusableElements() {
|
|
72
|
+
// Get elements in the correct order (different as the DOM order)
|
|
73
|
+
const focusableEls = [
|
|
74
|
+
...Array.from(this.host.querySelectorAll('.list-inline:not([slot="meta-navigation"]) > li')),
|
|
75
|
+
...Array.from(this.host.querySelectorAll('nav > post-list > div > post-list-item, post-mainnavigation > .back-button, post-megadropdown-trigger')),
|
|
76
|
+
...Array.from(this.host.querySelectorAll('.list-inline[slot="meta-navigation"] > li, post-language-option')),
|
|
77
|
+
];
|
|
78
|
+
// Add the main toggle menu button to the list of focusable children
|
|
79
|
+
const focusableChildren = [
|
|
80
|
+
this.host.querySelector('post-togglebutton'),
|
|
81
|
+
...focusableEls.flatMap(el => Array.from(getFocusableChildren(el))),
|
|
82
|
+
];
|
|
83
|
+
this.firstFocusableEl = focusableChildren[0];
|
|
84
|
+
this.lastFocusableEl = focusableChildren[focusableChildren.length - 1];
|
|
85
|
+
}
|
|
86
|
+
keyboardHandler(e) {
|
|
87
|
+
if (e.key === 'Tab' && this.mobileMenuExtended) {
|
|
88
|
+
if (e.shiftKey && document.activeElement === this.firstFocusableEl) {
|
|
89
|
+
// If back tab (Tab + Shift) and first element is focused, focus goes to the last element of the megadropdown
|
|
90
|
+
e.preventDefault();
|
|
91
|
+
this.lastFocusableEl.focus();
|
|
92
|
+
}
|
|
93
|
+
else if (!e.shiftKey && document.activeElement === this.lastFocusableEl) {
|
|
94
|
+
// If Tab and last element is focused, focus goes back to the first element of the megadropdown
|
|
95
|
+
e.preventDefault();
|
|
96
|
+
this.firstFocusableEl.focus();
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
}
|
|
54
100
|
handleScrollEvent() {
|
|
55
101
|
// Credits: "https://github.com/qeremy/so/blob/master/so.dom.js#L426"
|
|
56
102
|
const st = Math.max(0, this.scrollParent instanceof Document
|
|
@@ -99,11 +145,12 @@ export class PostHeader {
|
|
|
99
145
|
this.toggleMobileMenu();
|
|
100
146
|
this.mobileMenuAnimation.finish(); // no animation
|
|
101
147
|
}
|
|
102
|
-
const mhh = this.host.shadowRoot.querySelector('.
|
|
148
|
+
const mhh = this.host.shadowRoot.querySelector('.local-header')?.clientHeight;
|
|
103
149
|
this.host.style.setProperty('--main-header-height', `${mhh}px`);
|
|
104
150
|
// Apply only on change for doing work only when necessary
|
|
105
151
|
if (newDevice !== previousDevice) {
|
|
106
152
|
this.device = newDevice;
|
|
153
|
+
this.postUpdateDevice.emit(this.device);
|
|
107
154
|
window.requestAnimationFrame(() => {
|
|
108
155
|
this.switchLanguageSwitchMode();
|
|
109
156
|
});
|
|
@@ -113,12 +160,15 @@ export class PostHeader {
|
|
|
113
160
|
const variant = this.device === 'desktop' ? 'menu' : 'list';
|
|
114
161
|
this.host.querySelector('post-language-switch')?.setAttribute('variant', variant);
|
|
115
162
|
}
|
|
116
|
-
|
|
163
|
+
renderNavigation() {
|
|
117
164
|
const navigationClasses = ['navigation'];
|
|
118
165
|
if (this.mobileMenuExtended) {
|
|
119
166
|
navigationClasses.push('extended');
|
|
120
167
|
}
|
|
121
|
-
return (h(
|
|
168
|
+
return (h("div", { ref: el => (this.mobileMenu = el), class: navigationClasses.join(' ') }, h("slot", { name: "post-mainnavigation" }), (this.device === 'mobile' || this.device === 'tablet') && (h("div", { class: "navigation-footer" }, h("slot", { name: "meta-navigation" }), h("slot", { name: "post-language-switch" })))));
|
|
169
|
+
}
|
|
170
|
+
render() {
|
|
171
|
+
return (h(Host, { key: 'efbf8028f2abf376f497081996dba759f5885630', version: version }, h("div", { key: 'ecaaea274045453ce869f36e8a1155626b1818ba', class: "global-header" }, h("div", { key: '2fda0d65321ad1cbbc47b731f095e0d9b6694d99', class: "global-sub" }, h("div", { key: '24864d5f18c9d923717cc2e996395cff3bd6ce8b', class: "logo" }, h("slot", { key: 'ba82d7f62bb845732fe6066bcdc7eef15913c9e6', name: "post-logo" }))), h("div", { key: 'a0ddea4e564fca1e286998c73fea75eb8c228428', class: "global-sub" }, this.device === 'desktop' && h("slot", { key: '0d7aa11452eb69fe28914ff7787c6dc206fd4009', name: "meta-navigation" }), h("slot", { key: 'e92b7b9db6e16e8fcecb1ca74efa63942dd542c5', name: "global-controls" }), this.device === 'desktop' && h("slot", { key: 'c68984037a71d5ac54828f6cf2367c3b07e428fc', name: "post-language-switch" }), h("div", { key: '70fb5040dc2f000c2afa286bb673ae9cf88521cf', onClick: () => this.toggleMobileMenu(), class: "mobile-toggle" }, h("slot", { key: '509fb81812262cd9efdb3a562e48f72b0d29e376', name: "post-togglebutton" })))), h("div", { key: '393d1040bad2f85caced5b4a8ff02e30fa5fd5f1', class: 'local-header ' + (this.mobileMenuExtended ? 'local-header-mobile-extended' : '') }, h("slot", { key: '786cc114aae985a0612d3cb044684290e3026462', name: "title" }), h("div", { key: 'd4f68653a09bbf0b222873ed5d23fec6ba9d8f6f', class: "local-sub" }, h("slot", { key: '0ad7dda5490964e9a8eae5e0bf66a117882f7a06', name: "local-controls" }), h("slot", { key: 'bddc01c7696f456c38c200b330767a0f1b353d88' })), this.device === 'desktop' && this.renderNavigation()), this.device !== 'desktop' && this.renderNavigation()));
|
|
122
172
|
}
|
|
123
173
|
static get is() { return "post-header"; }
|
|
124
174
|
static get encapsulation() { return "shadow"; }
|
|
@@ -138,6 +188,30 @@ export class PostHeader {
|
|
|
138
188
|
"mobileMenuExtended": {}
|
|
139
189
|
};
|
|
140
190
|
}
|
|
191
|
+
static get events() {
|
|
192
|
+
return [{
|
|
193
|
+
"method": "postUpdateDevice",
|
|
194
|
+
"name": "postUpdateDevice",
|
|
195
|
+
"bubbles": true,
|
|
196
|
+
"cancelable": true,
|
|
197
|
+
"composed": true,
|
|
198
|
+
"docs": {
|
|
199
|
+
"tags": [],
|
|
200
|
+
"text": "An event emitted when the device has changed"
|
|
201
|
+
},
|
|
202
|
+
"complexType": {
|
|
203
|
+
"original": "DEVICE_SIZE",
|
|
204
|
+
"resolved": "\"desktop\" | \"mobile\" | \"tablet\"",
|
|
205
|
+
"references": {
|
|
206
|
+
"DEVICE_SIZE": {
|
|
207
|
+
"location": "local",
|
|
208
|
+
"path": "/home/runner/work/design-system/design-system/packages/components/src/components/post-header/post-header.tsx",
|
|
209
|
+
"id": "src/components/post-header/post-header.tsx::DEVICE_SIZE"
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
}];
|
|
214
|
+
}
|
|
141
215
|
static get methods() {
|
|
142
216
|
return {
|
|
143
217
|
"toggleMobileMenu": {
|
|
@@ -15,36 +15,55 @@ const ANIMATION_KEYS = [...ANIMATION_NAMES];
|
|
|
15
15
|
* @class PostIcon - representing a stencil component
|
|
16
16
|
*/
|
|
17
17
|
export class PostIcon {
|
|
18
|
-
constructor() {
|
|
19
|
-
this.animation = null;
|
|
20
|
-
this.base = null;
|
|
21
|
-
this.flipH = false;
|
|
22
|
-
this.flipV = false;
|
|
23
|
-
this.name = undefined;
|
|
24
|
-
this.rotate = null;
|
|
25
|
-
this.scale = null;
|
|
26
|
-
}
|
|
27
18
|
host;
|
|
19
|
+
/**
|
|
20
|
+
* The name of the animation.
|
|
21
|
+
*/
|
|
22
|
+
animation = null;
|
|
28
23
|
validateAnimation(newValue = this.animation) {
|
|
29
24
|
if (newValue !== undefined)
|
|
30
25
|
checkEmptyOrOneOf(newValue, ANIMATION_KEYS, `The post-icon "animation" prop requires one of the following values: ${ANIMATION_KEYS.join(', ')}.`);
|
|
31
26
|
}
|
|
27
|
+
/**
|
|
28
|
+
* The base path, where the icons are located (must be a public url).<br/>Leave this field empty to use the default cdn url.
|
|
29
|
+
*/
|
|
30
|
+
base = null;
|
|
32
31
|
validateBase(newValue = this.base) {
|
|
33
32
|
checkEmptyOrType(newValue, 'string', 'The post-icon "base" prop should be a string.');
|
|
34
33
|
}
|
|
34
|
+
/**
|
|
35
|
+
* When set to `true`, the icon will be flipped horizontally.
|
|
36
|
+
*/
|
|
37
|
+
flipH = false;
|
|
35
38
|
validateFlipH(newValue = this.flipH) {
|
|
36
39
|
checkEmptyOrType(newValue, 'boolean', 'The post-icon "flipH" prop should be a boolean.');
|
|
37
40
|
}
|
|
41
|
+
/**
|
|
42
|
+
* When set to `true`, the icon will be flipped vertically.
|
|
43
|
+
*/
|
|
44
|
+
flipV = false;
|
|
38
45
|
validateFlipV(newValue = this.flipV) {
|
|
39
46
|
checkEmptyOrType(newValue, 'boolean', 'The post-icon "flipV" prop should be a boolean.');
|
|
40
47
|
}
|
|
48
|
+
/**
|
|
49
|
+
* The name/id of the icon (e.g. 1000, 1001, ...).
|
|
50
|
+
*/
|
|
51
|
+
name;
|
|
41
52
|
validateName(newValue = this.name) {
|
|
42
53
|
checkNonEmpty(newValue, 'The post-icon "name" prop is required!.');
|
|
43
54
|
checkType(newValue, 'string', 'The post-icon "name" prop should be a string.');
|
|
44
55
|
}
|
|
56
|
+
/**
|
|
57
|
+
* The number of degree for the css rotate transformation.
|
|
58
|
+
*/
|
|
59
|
+
rotate = null;
|
|
45
60
|
validateRotate(newValue = this.rotate) {
|
|
46
61
|
checkEmptyOrType(newValue, 'number', 'The post-icon "rotate" prop should be a number.');
|
|
47
62
|
}
|
|
63
|
+
/**
|
|
64
|
+
* The number for the css scale transformation.
|
|
65
|
+
*/
|
|
66
|
+
scale = null;
|
|
48
67
|
validateScale(newValue = this.scale) {
|
|
49
68
|
checkEmptyOrType(newValue, 'number', 'The post-icon "scale" prop should be a number.');
|
|
50
69
|
}
|
|
@@ -116,7 +135,7 @@ export class PostIcon {
|
|
|
116
135
|
this.validateAnimation();
|
|
117
136
|
}
|
|
118
137
|
render() {
|
|
119
|
-
return (h(Host, { key: '
|
|
138
|
+
return (h(Host, { key: '6c494ba3cdd2ee173fa99a8ce8ff0e8ab5cf2979', "data-version": version }, h("span", { key: 'd9e0192a2788541b97bf3e25468129ac335d44b5', style: this.getStyles() })));
|
|
120
139
|
}
|
|
121
140
|
static get is() { return "post-icon"; }
|
|
122
141
|
static get encapsulation() { return "shadow"; }
|
|
@@ -151,6 +170,8 @@ export class PostIcon {
|
|
|
151
170
|
"tags": [],
|
|
152
171
|
"text": "The name of the animation."
|
|
153
172
|
},
|
|
173
|
+
"getter": false,
|
|
174
|
+
"setter": false,
|
|
154
175
|
"attribute": "animation",
|
|
155
176
|
"reflect": false,
|
|
156
177
|
"defaultValue": "null"
|
|
@@ -169,6 +190,8 @@ export class PostIcon {
|
|
|
169
190
|
"tags": [],
|
|
170
191
|
"text": "The base path, where the icons are located (must be a public url).<br/>Leave this field empty to use the default cdn url."
|
|
171
192
|
},
|
|
193
|
+
"getter": false,
|
|
194
|
+
"setter": false,
|
|
172
195
|
"attribute": "base",
|
|
173
196
|
"reflect": false,
|
|
174
197
|
"defaultValue": "null"
|
|
@@ -187,6 +210,8 @@ export class PostIcon {
|
|
|
187
210
|
"tags": [],
|
|
188
211
|
"text": "When set to `true`, the icon will be flipped horizontally."
|
|
189
212
|
},
|
|
213
|
+
"getter": false,
|
|
214
|
+
"setter": false,
|
|
190
215
|
"attribute": "flip-h",
|
|
191
216
|
"reflect": false,
|
|
192
217
|
"defaultValue": "false"
|
|
@@ -205,6 +230,8 @@ export class PostIcon {
|
|
|
205
230
|
"tags": [],
|
|
206
231
|
"text": "When set to `true`, the icon will be flipped vertically."
|
|
207
232
|
},
|
|
233
|
+
"getter": false,
|
|
234
|
+
"setter": false,
|
|
208
235
|
"attribute": "flip-v",
|
|
209
236
|
"reflect": false,
|
|
210
237
|
"defaultValue": "false"
|
|
@@ -223,6 +250,8 @@ export class PostIcon {
|
|
|
223
250
|
"tags": [],
|
|
224
251
|
"text": "The name/id of the icon (e.g. 1000, 1001, ...)."
|
|
225
252
|
},
|
|
253
|
+
"getter": false,
|
|
254
|
+
"setter": false,
|
|
226
255
|
"attribute": "name",
|
|
227
256
|
"reflect": false
|
|
228
257
|
},
|
|
@@ -240,6 +269,8 @@ export class PostIcon {
|
|
|
240
269
|
"tags": [],
|
|
241
270
|
"text": "The number of degree for the css rotate transformation."
|
|
242
271
|
},
|
|
272
|
+
"getter": false,
|
|
273
|
+
"setter": false,
|
|
243
274
|
"attribute": "rotate",
|
|
244
275
|
"reflect": false,
|
|
245
276
|
"defaultValue": "null"
|
|
@@ -258,6 +289,8 @@ export class PostIcon {
|
|
|
258
289
|
"tags": [],
|
|
259
290
|
"text": "The number for the css scale transformation."
|
|
260
291
|
},
|
|
292
|
+
"getter": false,
|
|
293
|
+
"setter": false,
|
|
261
294
|
"attribute": "scale",
|
|
262
295
|
"reflect": false,
|
|
263
296
|
"defaultValue": "null"
|