@swisspost/design-system-components 9.0.0-next.33 → 9.0.0-next.34
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/{attribute-observer-6d8b886b.js → attribute-observer-c3a805b2.js} +3 -1
- package/dist/cjs/{breakpoints-c6247c71.js → breakpoints-cdf1b747.js} +12 -7
- package/dist/cjs/get-root-8102fecd.js +17 -0
- package/dist/cjs/{index-d6bf2c66.js → index-b60129c4.js} +2 -2
- package/dist/cjs/index.cjs.js +24 -25
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/long-press-event-6e62d113.js +266 -0
- package/dist/cjs/{package-3562c265.js → package-3426e8f7.js} +1 -1
- package/dist/cjs/{post-accordion-6c5681ba.js → post-accordion-3ac8dca8.js} +5 -5
- package/dist/cjs/{post-accordion-item-05a78451.js → post-accordion-item-aace6bc2.js} +5 -5
- package/dist/cjs/post-accordion-item.cjs.entry.js +5 -4
- package/dist/cjs/post-accordion.cjs.entry.js +4 -3
- package/dist/cjs/{post-avatar-6710a77a.js → post-avatar-53abd22f.js} +5 -4
- package/dist/cjs/post-avatar.cjs.entry.js +4 -3
- package/dist/cjs/{post-back-to-top-d0662842.js → post-back-to-top-b231fc1c.js} +9 -9
- package/dist/cjs/post-back-to-top.cjs.entry.js +4 -3
- package/dist/cjs/{post-banner-bd97db9c.js → post-banner-e6d14bf1.js} +4 -8
- package/dist/cjs/post-banner.cjs.entry.js +4 -3
- package/dist/cjs/{post-breadcrumb-36ab841c.js → post-breadcrumb-a929f2a6.js} +30 -22
- package/dist/cjs/post-breadcrumb-item_2.cjs.entry.js +4 -3
- package/dist/cjs/post-breadcrumb.cjs.entry.js +4 -4
- package/dist/cjs/{post-card-control-155fb433.js → post-card-control-cbee7b86.js} +26 -40
- package/dist/cjs/post-card-control.cjs.entry.js +4 -3
- package/dist/cjs/post-closebutton_15.cjs.entry.js +5 -5
- package/dist/cjs/{post-collapsible-trigger-6601c554.js → post-collapsible-trigger-d1cb592a.js} +24 -41
- package/dist/cjs/post-collapsible_2.cjs.entry.js +5 -5
- package/dist/cjs/post-components.cjs.js +2 -2
- package/dist/cjs/{post-footer-23699aef.js → post-footer-4290dafc.js} +11 -11
- package/dist/cjs/post-footer.cjs.entry.js +4 -4
- package/dist/cjs/{post-linkarea-8e5e1a9f.js → post-linkarea-f22f4f92.js} +5 -5
- package/dist/cjs/post-linkarea.cjs.entry.js +3 -3
- package/dist/cjs/{post-menu-item-8dd94792.js → post-menu-item-afabaa61.js} +4 -4
- package/dist/cjs/{post-popover-858cbd12.js → post-popover-a4c72d38.js} +16 -14
- package/dist/cjs/post-popover.cjs.entry.js +5 -4
- package/dist/cjs/{post-rating-ef592484.js → post-rating-b87616fc.js} +4 -14
- package/dist/cjs/post-rating.cjs.entry.js +3 -3
- package/dist/cjs/{post-tab-header-d785e7fc.js → post-tab-header-45cb6bb4.js} +5 -4
- package/dist/cjs/post-tab-header.cjs.entry.js +4 -3
- package/dist/cjs/{post-tab-panel-41ea371e.js → post-tab-panel-00d16ba7.js} +4 -4
- package/dist/cjs/post-tab-panel.cjs.entry.js +3 -3
- package/dist/cjs/{post-tabs-c6f00130.js → post-tabs-2c3a89d0.js} +5 -12
- package/dist/cjs/post-tabs.cjs.entry.js +4 -3
- package/dist/cjs/{post-tag-d1a1176c.js → post-tag-370a2f4d.js} +3 -3
- package/dist/cjs/post-tag.cjs.entry.js +3 -3
- package/dist/cjs/{post-togglebutton-02c56b7b.js → post-togglebutton-2c9552e3.js} +935 -460
- package/dist/cjs/{post-tooltip-3176e280.js → post-tooltip-4d4d2ea9.js} +39 -296
- package/dist/cjs/post-tooltip.cjs.entry.js +5 -4
- package/dist/collection/animations/collapse.js +3 -1
- package/dist/collection/components/post-accordion/post-accordion.js +1 -3
- package/dist/collection/components/post-accordion-item/post-accordion-item.js +0 -2
- package/dist/collection/components/post-avatar/post-avatar.js +3 -4
- package/dist/collection/components/post-back-to-top/post-back-to-top.js +6 -8
- package/dist/collection/components/post-banner/post-banner.js +0 -6
- package/dist/collection/components/post-breadcrumb/post-breadcrumb.js +16 -19
- package/dist/collection/components/post-breadcrumb-item/post-breadcrumb-item.js +0 -2
- package/dist/collection/components/post-card-control/post-card-control.js +24 -40
- package/dist/collection/components/post-closebutton/post-closebutton.css +1 -0
- package/dist/collection/components/post-closebutton/post-closebutton.js +12 -2
- package/dist/collection/components/post-collapsible/post-collapsible.js +4 -10
- package/dist/collection/components/post-collapsible-trigger/post-collapsible-trigger.js +15 -28
- package/dist/collection/components/post-footer/post-footer.js +8 -9
- package/dist/collection/components/post-header/post-header.css +1 -1
- package/dist/collection/components/post-header/post-header.js +13 -22
- package/dist/collection/components/post-icon/post-icon.js +4 -6
- package/dist/collection/components/post-language-option/post-language-option.js +1 -10
- package/dist/collection/components/post-language-switch/post-language-switch.js +7 -19
- package/dist/collection/components/post-linkarea/post-linkarea.css +1 -1
- package/dist/collection/components/post-linkarea/post-linkarea.js +2 -2
- package/dist/collection/components/post-list/post-list.js +1 -3
- package/dist/collection/components/post-list-item/post-list-item.js +1 -2
- package/dist/collection/components/post-logo/post-logo.js +1 -2
- package/dist/collection/components/post-mainnavigation/post-mainnavigation.css +1 -1
- package/dist/collection/components/post-mainnavigation/post-mainnavigation.js +98 -182
- package/dist/collection/components/post-megadropdown/post-megadropdown.js +20 -30
- package/dist/collection/components/post-megadropdown-trigger/post-megadropdown-trigger.js +36 -37
- package/dist/collection/components/post-menu/post-menu.js +45 -53
- package/dist/collection/components/post-menu-trigger/post-menu-trigger.js +13 -15
- package/dist/collection/components/post-popover/post-popover.js +12 -12
- package/dist/collection/components/post-popovercontainer/post-popovercontainer.js +30 -33
- package/dist/collection/components/post-rating/post-rating.js +1 -12
- package/dist/collection/components/post-tab-header/post-tab-header.js +2 -3
- package/dist/collection/components/post-tab-panel/post-tab-panel.js +2 -3
- package/dist/collection/components/post-tabs/post-tabs.js +1 -10
- package/dist/collection/components/post-tag/post-tag.js +0 -1
- package/dist/collection/components/post-togglebutton/post-togglebutton.js +10 -11
- package/dist/collection/components/post-tooltip/post-tooltip.js +36 -32
- package/dist/collection/utils/attribute-observer.js +2 -1
- package/dist/collection/utils/breakpoints.js +9 -7
- package/dist/collection/utils/environment.js +2 -0
- package/dist/collection/utils/get-root.js +6 -1
- package/dist/collection/utils/index.js +5 -0
- package/dist/collection/utils/is-motion-reduced.js +2 -1
- package/dist/components/attribute-observer.js +3 -1
- package/dist/components/breakpoints.js +12 -8
- package/dist/components/get-root.js +7 -1
- package/dist/components/long-press-event.js +264 -0
- package/dist/components/package.js +1 -1
- package/dist/components/post-accordion-item2.js +3 -3
- package/dist/components/post-accordion2.js +3 -3
- package/dist/components/post-avatar2.js +4 -3
- package/dist/components/post-back-to-top2.js +8 -8
- package/dist/components/post-banner2.js +2 -6
- package/dist/components/post-breadcrumb-item2.js +2 -2
- package/dist/components/post-breadcrumb2.js +28 -20
- package/dist/components/post-card-control2.js +25 -39
- package/dist/components/post-closebutton2.js +8 -3
- package/dist/components/post-collapsible-trigger2.js +19 -31
- package/dist/components/post-collapsible2.js +9 -12
- package/dist/components/post-footer2.js +8 -8
- package/dist/components/post-header2.js +15 -23
- package/dist/components/post-icon2.js +5 -5
- package/dist/components/post-language-option2.js +3 -10
- package/dist/components/post-language-switch2.js +9 -18
- package/dist/components/post-linkarea2.js +5 -4
- package/dist/components/post-list-item2.js +2 -2
- package/dist/components/post-list2.js +2 -3
- package/dist/components/post-logo2.js +3 -2
- package/dist/components/post-mainnavigation2.js +94 -182
- package/dist/components/post-megadropdown-trigger2.js +38 -37
- package/dist/components/post-megadropdown2.js +21 -30
- package/dist/components/post-menu-trigger2.js +15 -15
- package/dist/components/post-menu2.js +48 -54
- package/dist/components/post-popover2.js +14 -12
- package/dist/components/post-popovercontainer2.js +638 -36
- package/dist/components/post-rating2.js +2 -12
- package/dist/components/post-tab-header2.js +4 -3
- package/dist/components/post-tab-panel2.js +3 -3
- package/dist/components/post-tabs2.js +3 -10
- package/dist/components/post-tag2.js +1 -1
- package/dist/components/post-togglebutton2.js +12 -11
- package/dist/components/post-tooltip2.js +37 -294
- package/dist/docs.json +21 -15
- package/dist/esm/{attribute-observer-2f203993.js → attribute-observer-009deee5.js} +3 -1
- package/dist/esm/{breakpoints-bbe0c54e.js → breakpoints-7812702e.js} +12 -8
- package/dist/esm/get-root-1b1af46f.js +15 -0
- package/dist/esm/{index-3419e46d.js → index-f4d19816.js} +2 -2
- package/dist/esm/index.js +24 -25
- package/dist/esm/loader.js +3 -3
- package/dist/esm/long-press-event-04d24397.js +264 -0
- package/dist/esm/package-8986a24c.js +3 -0
- package/dist/esm/{post-accordion-024451fa.js → post-accordion-577b52a0.js} +5 -5
- package/dist/esm/{post-accordion-item-19b996d1.js → post-accordion-item-99053b41.js} +5 -5
- package/dist/esm/post-accordion-item.entry.js +5 -4
- package/dist/esm/post-accordion.entry.js +4 -3
- package/dist/esm/{post-avatar-33aed045.js → post-avatar-2914706c.js} +5 -4
- package/dist/esm/post-avatar.entry.js +4 -3
- package/dist/esm/{post-back-to-top-7dd43c3b.js → post-back-to-top-4c7b1b47.js} +9 -9
- package/dist/esm/post-back-to-top.entry.js +4 -3
- package/dist/esm/{post-banner-28d18721.js → post-banner-295fd0f5.js} +4 -8
- package/dist/esm/post-banner.entry.js +4 -3
- package/dist/esm/{post-breadcrumb-d86fae7b.js → post-breadcrumb-1abfb312.js} +30 -22
- package/dist/esm/post-breadcrumb-item_2.entry.js +4 -3
- package/dist/esm/post-breadcrumb.entry.js +4 -4
- package/dist/esm/{post-card-control-aa043898.js → post-card-control-ad72d4f8.js} +26 -40
- package/dist/esm/post-card-control.entry.js +4 -3
- package/dist/esm/post-closebutton_15.entry.js +5 -5
- package/dist/esm/{post-collapsible-trigger-b1612866.js → post-collapsible-trigger-6b4ece20.js} +24 -41
- package/dist/esm/post-collapsible_2.entry.js +5 -5
- package/dist/esm/post-components.js +3 -3
- package/dist/esm/{post-footer-2ed5e520.js → post-footer-a5105e66.js} +11 -11
- package/dist/esm/post-footer.entry.js +4 -4
- package/dist/esm/{post-linkarea-802bf774.js → post-linkarea-22f97a88.js} +5 -5
- package/dist/esm/post-linkarea.entry.js +3 -3
- package/dist/esm/{post-menu-item-d97611d8.js → post-menu-item-9465a1f3.js} +4 -4
- package/dist/esm/{post-popover-e51a7a18.js → post-popover-e9b4569c.js} +16 -14
- package/dist/esm/post-popover.entry.js +5 -4
- package/dist/esm/{post-rating-e1ac47ce.js → post-rating-ae16e3c9.js} +4 -14
- package/dist/esm/post-rating.entry.js +3 -3
- package/dist/esm/{post-tab-header-06dcbf7f.js → post-tab-header-11f23150.js} +5 -4
- package/dist/esm/post-tab-header.entry.js +4 -3
- package/dist/esm/{post-tab-panel-75932601.js → post-tab-panel-0f3a952e.js} +4 -4
- package/dist/esm/post-tab-panel.entry.js +3 -3
- package/dist/esm/{post-tabs-3ef2ea23.js → post-tabs-1192509c.js} +5 -12
- package/dist/esm/post-tabs.entry.js +4 -3
- package/dist/esm/{post-tag-a3b989e0.js → post-tag-8be0a71c.js} +3 -3
- package/dist/esm/post-tag.entry.js +3 -3
- package/dist/esm/{post-togglebutton-db251030.js → post-togglebutton-b634fc7c.js} +935 -460
- package/dist/esm/{post-tooltip-c256d714.js → post-tooltip-f64bd0cc.js} +39 -296
- package/dist/esm/post-tooltip.entry.js +5 -4
- package/dist/post-components/index.esm.js +1 -1
- package/dist/post-components/p-0f398677.js +1 -0
- package/dist/post-components/p-1038fc25.js +1 -0
- package/dist/post-components/p-30f94eca.entry.js +1 -0
- package/dist/post-components/p-31bb6dc5.entry.js +1 -0
- package/dist/post-components/p-32173742.js +1 -0
- package/dist/post-components/p-338a2507.js +1 -0
- package/dist/post-components/p-36540dd6.entry.js +1 -0
- package/dist/post-components/p-3aa766a6.js +1 -0
- package/dist/post-components/p-3b0158b3.js +1 -0
- package/dist/post-components/p-40db8cd5.js +1 -0
- package/dist/post-components/p-44f13ce4.entry.js +1 -0
- package/dist/post-components/p-46a9324f.entry.js +1 -0
- package/dist/post-components/p-49c5aa99.js +1 -0
- package/dist/post-components/p-4cd4a936.entry.js +1 -0
- package/dist/post-components/p-548ef2f5.entry.js +1 -0
- package/dist/post-components/p-58f453dd.js +1 -0
- package/dist/post-components/p-5f54b77f.js +1 -0
- package/dist/post-components/p-60bb7f26.js +1 -0
- package/dist/post-components/p-60bfa4be.entry.js +1 -0
- package/dist/post-components/p-6b31a76a.js +1 -0
- package/dist/post-components/p-6ee81c5d.js +1 -0
- package/dist/post-components/p-6faad212.entry.js +1 -0
- package/dist/post-components/p-722ffaae.js +1 -0
- package/dist/post-components/p-74a0b44c.entry.js +1 -0
- package/dist/post-components/{p-dbe31632.js → p-78b4c699.js} +1 -1
- package/dist/post-components/p-7aa0468b.entry.js +1 -0
- package/dist/post-components/p-7afc495e.entry.js +1 -0
- package/dist/post-components/p-8db32dab.js +8 -0
- package/dist/post-components/p-96034ba4.entry.js +1 -0
- package/dist/post-components/p-9aaf9f54.js +1 -0
- package/dist/post-components/{p-5c758f41.js → p-9e461613.js} +1 -1
- package/dist/post-components/p-ab4073be.js +1 -0
- package/dist/post-components/p-abd7eb91.js +8 -0
- package/dist/post-components/p-afb8a487.entry.js +1 -0
- package/dist/post-components/p-b003b381.js +1 -0
- package/dist/post-components/p-b97dea1e.entry.js +1 -0
- package/dist/post-components/p-be37cf2a.js +1 -0
- package/dist/post-components/p-c31b56ed.js +1 -0
- package/dist/post-components/p-ccbb51fe.js +1 -0
- package/dist/post-components/p-d3900385.entry.js +1 -0
- package/dist/post-components/p-ef49153c.entry.js +1 -0
- package/dist/post-components/p-f27e5691.js +1 -0
- package/dist/post-components/p-f553019f.entry.js +1 -0
- package/dist/post-components/p-ffc1db17.entry.js +1 -0
- package/dist/post-components/post-components.esm.js +1 -1
- package/dist/types/components/post-avatar/post-avatar.d.ts +1 -1
- package/dist/types/components/post-card-control/post-card-control.d.ts +1 -1
- package/dist/types/components/post-collapsible-trigger/post-collapsible-trigger.d.ts +4 -14
- package/dist/types/components/post-footer/post-footer.d.ts +2 -2
- package/dist/types/components/post-header/post-header.d.ts +1 -0
- package/dist/types/components/post-icon/post-icon.d.ts +0 -1
- package/dist/types/components/post-language-switch/post-language-switch.d.ts +2 -5
- package/dist/types/components/post-mainnavigation/post-mainnavigation.d.ts +14 -39
- package/dist/types/components/post-menu-trigger/post-menu-trigger.d.ts +1 -1
- package/dist/types/components/post-popover/post-popover.d.ts +3 -1
- package/dist/types/components/post-popovercontainer/post-popovercontainer.d.ts +1 -1
- package/dist/types/components/post-tooltip/post-tooltip.d.ts +6 -1
- package/dist/types/components.d.ts +4 -4
- package/dist/types/popover-fn.d.ts +11 -0
- package/dist/types/utils/environment.d.ts +2 -0
- package/dist/types/utils/get-root.d.ts +4 -0
- package/dist/types/utils/index.d.ts +5 -0
- package/loaders/attribute-observer.js +3 -1
- package/loaders/breakpoints.js +12 -8
- package/loaders/get-root.js +7 -1
- package/loaders/index.js +3 -3
- package/loaders/long-press-event.js +264 -0
- package/loaders/package.js +1 -1
- package/loaders/post-accordion-item2.js +3 -3
- package/loaders/post-accordion.js +3 -3
- package/loaders/post-avatar.js +4 -3
- package/loaders/post-back-to-top.js +8 -8
- package/loaders/post-banner.js +2 -6
- package/loaders/post-breadcrumb-item2.js +2 -2
- package/loaders/post-breadcrumb.js +28 -20
- package/loaders/post-card-control.js +25 -39
- package/loaders/post-closebutton.js +8 -3
- package/loaders/post-collapsible-trigger2.js +19 -31
- package/loaders/post-collapsible2.js +9 -12
- package/loaders/post-footer.js +8 -8
- package/loaders/post-header.js +15 -23
- package/loaders/post-icon2.js +5 -5
- package/loaders/post-language-option.js +3 -10
- package/loaders/post-language-switch.js +9 -18
- package/loaders/post-linkarea.js +5 -4
- package/loaders/post-list-item.js +2 -2
- package/loaders/post-list.js +2 -3
- package/loaders/post-logo.js +3 -2
- package/loaders/post-mainnavigation.js +94 -182
- package/loaders/post-megadropdown-trigger.js +38 -37
- package/loaders/post-megadropdown.js +21 -30
- package/loaders/post-menu-trigger2.js +15 -15
- package/loaders/post-menu2.js +48 -54
- package/loaders/post-popover.js +14 -12
- package/loaders/post-popovercontainer2.js +638 -36
- package/loaders/post-rating.js +2 -12
- package/loaders/post-tab-header.js +4 -3
- package/loaders/post-tab-panel.js +3 -3
- package/loaders/post-tabs.js +3 -10
- package/loaders/post-tag.js +1 -1
- package/loaders/post-togglebutton.js +12 -11
- package/loaders/post-tooltip.js +37 -294
- package/package.json +5 -5
- package/dist/cjs/debounce-158fd76f.js +0 -13
- package/dist/cjs/get-root-7a3498ef.js +0 -11
- package/dist/components/debounce.js +0 -11
- package/dist/esm/debounce-e54c7131.js +0 -11
- package/dist/esm/get-root-7af2e0d1.js +0 -9
- package/dist/esm/package-da68ab5a.js +0 -3
- package/dist/post-components/p-1376c653.js +0 -1
- package/dist/post-components/p-13835969.js +0 -1
- package/dist/post-components/p-13fdbaf6.entry.js +0 -1
- package/dist/post-components/p-1e2169ae.entry.js +0 -1
- package/dist/post-components/p-23e4c270.entry.js +0 -1
- package/dist/post-components/p-2641e06b.js +0 -1
- package/dist/post-components/p-2d3b16c7.js +0 -1
- package/dist/post-components/p-33c35e15.js +0 -1
- package/dist/post-components/p-3b247d71.entry.js +0 -1
- package/dist/post-components/p-42a5fdf8.js +0 -1
- package/dist/post-components/p-4ed7bab6.js +0 -1
- package/dist/post-components/p-5aeb3656.js +0 -1
- package/dist/post-components/p-5c518421.js +0 -1
- package/dist/post-components/p-6db1a2e0.entry.js +0 -1
- package/dist/post-components/p-6fe98184.entry.js +0 -1
- package/dist/post-components/p-7d731077.entry.js +0 -1
- package/dist/post-components/p-7ee47334.entry.js +0 -1
- package/dist/post-components/p-8223e97b.js +0 -1
- package/dist/post-components/p-8a8376d0.js +0 -1
- package/dist/post-components/p-8bb828cf.entry.js +0 -1
- package/dist/post-components/p-8e55ddd2.js +0 -1
- package/dist/post-components/p-9681efce.js +0 -1
- package/dist/post-components/p-96a59372.entry.js +0 -1
- package/dist/post-components/p-9748a355.js +0 -1
- package/dist/post-components/p-99c8fd43.entry.js +0 -1
- package/dist/post-components/p-ac042f7a.entry.js +0 -1
- package/dist/post-components/p-c34cacb7.js +0 -1
- package/dist/post-components/p-c3a970c5.js +0 -1
- package/dist/post-components/p-c4651d32.entry.js +0 -1
- package/dist/post-components/p-c9b61d31.entry.js +0 -1
- package/dist/post-components/p-d16dd7f9.js +0 -1
- package/dist/post-components/p-d81c5908.entry.js +0 -1
- package/dist/post-components/p-e1baac59.js +0 -1
- package/dist/post-components/p-e2294014.js +0 -15
- package/dist/post-components/p-e8ff8122.js +0 -1
- package/dist/post-components/p-ed78d04a.entry.js +0 -1
- package/dist/post-components/p-f1c0924a.js +0 -1
- package/dist/post-components/p-f1db96d0.entry.js +0 -1
- package/dist/post-components/p-f7aa917f.entry.js +0 -1
- package/dist/post-components/p-f96b80cc.entry.js +0 -1
- package/dist/post-components/p-fc91cbc2.js +0 -1
- package/dist/post-components/p-fd78716d.js +0 -1
- package/loaders/debounce.js +0 -11
|
@@ -9,42 +9,6 @@ let cardControlIds = 0;
|
|
|
9
9
|
* @slot icon - To insert a custom icon into the named `icon` slot.<p>Markup accepted: <a href="https://developer.mozilla.org/en-US/docs/Glossary/Inline-level_content">inline content</a>.<p className="banner banner-sm banner-info">It is only meant for <code>img</code> or <code>svg</code> elements and overrides the `icon` property.</p>
|
|
10
10
|
*/
|
|
11
11
|
export class PostCardControl {
|
|
12
|
-
EVENT_MAP = {
|
|
13
|
-
input: 'postInput',
|
|
14
|
-
change: 'postChange',
|
|
15
|
-
};
|
|
16
|
-
KEYCODES = {
|
|
17
|
-
SPACE: 'Space',
|
|
18
|
-
LEFT: 'ArrowLeft',
|
|
19
|
-
UP: 'ArrowUp',
|
|
20
|
-
RIGHT: 'ArrowRight',
|
|
21
|
-
DOWN: 'ArrowDown',
|
|
22
|
-
};
|
|
23
|
-
group = {
|
|
24
|
-
hosts: [],
|
|
25
|
-
members: [],
|
|
26
|
-
first: null,
|
|
27
|
-
last: null,
|
|
28
|
-
checked: null,
|
|
29
|
-
focused: null,
|
|
30
|
-
};
|
|
31
|
-
control;
|
|
32
|
-
controlId = `PostCardControl_${cardControlIds++}`;
|
|
33
|
-
initialChecked;
|
|
34
|
-
hasIcon;
|
|
35
|
-
host;
|
|
36
|
-
internals;
|
|
37
|
-
/**
|
|
38
|
-
* An event emitted whenever the components checked state is toggled.
|
|
39
|
-
* The event payload (emitted under `event.detail.state`) is a boolean: `true` if the component is checked, `false` if it is unchecked.
|
|
40
|
-
*/
|
|
41
|
-
postInput;
|
|
42
|
-
/**
|
|
43
|
-
* An event emitted whenever the components checked state is toggled.
|
|
44
|
-
* The event payload (emitted under `event.detail.state`) is a boolean: `true` if the component is checked, `false` if it is unchecked.
|
|
45
|
-
* <span className="banner banner-sm banner-info">If the component is used with type `radio`, it will only emit this event, when the checked state is changing to `true`.</span>
|
|
46
|
-
*/
|
|
47
|
-
postChange;
|
|
48
12
|
/**
|
|
49
13
|
* A public method to reset the controls `checked` and `validity` state.
|
|
50
14
|
* The validity state is set to `null`, so it's neither valid nor invalid.
|
|
@@ -74,6 +38,26 @@ export class PostCardControl {
|
|
|
74
38
|
this.controlSetChecked(this.checked);
|
|
75
39
|
}
|
|
76
40
|
constructor() {
|
|
41
|
+
this.EVENT_MAP = {
|
|
42
|
+
input: 'postInput',
|
|
43
|
+
change: 'postChange',
|
|
44
|
+
};
|
|
45
|
+
this.KEYCODES = {
|
|
46
|
+
SPACE: 'Space',
|
|
47
|
+
LEFT: 'ArrowLeft',
|
|
48
|
+
UP: 'ArrowUp',
|
|
49
|
+
RIGHT: 'ArrowRight',
|
|
50
|
+
DOWN: 'ArrowDown',
|
|
51
|
+
};
|
|
52
|
+
this.group = {
|
|
53
|
+
hosts: [],
|
|
54
|
+
members: [],
|
|
55
|
+
first: null,
|
|
56
|
+
last: null,
|
|
57
|
+
checked: null,
|
|
58
|
+
focused: null,
|
|
59
|
+
};
|
|
60
|
+
this.controlId = `PostCardControl_${cardControlIds++}`;
|
|
77
61
|
this.focused = false;
|
|
78
62
|
this.label = undefined;
|
|
79
63
|
this.description = null;
|
|
@@ -232,14 +216,14 @@ export class PostCardControl {
|
|
|
232
216
|
this.hasIcon = Boolean(this.host.querySelector('[slot="icon"]') || this.icon);
|
|
233
217
|
}
|
|
234
218
|
render() {
|
|
235
|
-
return (h(Host, { key: '
|
|
219
|
+
return (h(Host, { key: '9172642a4424a3393c0738feba3a3ef8dcea43e8', "data-version": version, onClick: this.cardClickHandler }, h("div", { key: 'd6e47613dfe9d33647fd2379010275d70cbcbdcb', class: {
|
|
236
220
|
'card-control': true,
|
|
237
221
|
'is-checked': this.checked,
|
|
238
222
|
'is-disabled': this.disabled,
|
|
239
223
|
'is-focused': this.focused,
|
|
240
224
|
'is-valid': this.validity !== null && this.validity !== 'false',
|
|
241
225
|
'is-invalid': this.validity === 'false',
|
|
242
|
-
} }, h("input", { key: '
|
|
226
|
+
} }, h("input", { key: '44b0e5d5c2c6a759300979a5c33c2a65afaaa27d', 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: 'fd3106562bfcb5ca0e7e5704272f927bfb201af5', 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: 'ebfa245a0e2b6e45384586408614ce85494fbc58', id: `${this.controlId}_content`, class: "card-control--content" }, h("slot", { key: '99b406bc58fbfcd054f1b551a453a7ac1f4276f6' })))));
|
|
243
227
|
}
|
|
244
228
|
componentDidRender() {
|
|
245
229
|
this.setHostContext();
|
|
@@ -291,7 +275,7 @@ export class PostCardControl {
|
|
|
291
275
|
"text": "Defines the text in the control-label."
|
|
292
276
|
},
|
|
293
277
|
"attribute": "label",
|
|
294
|
-
"reflect":
|
|
278
|
+
"reflect": true
|
|
295
279
|
},
|
|
296
280
|
"description": {
|
|
297
281
|
"type": "string",
|
|
@@ -340,7 +324,7 @@ export class PostCardControl {
|
|
|
340
324
|
"optional": false,
|
|
341
325
|
"docs": {
|
|
342
326
|
"tags": [],
|
|
343
|
-
"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>"
|
|
327
|
+
"text": "Defines the `name` attribute of the control.\n<span className=\"mb-4 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
328
|
},
|
|
345
329
|
"attribute": "name",
|
|
346
330
|
"reflect": false,
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.btn-icon-close{padding:0;border:unset;min-height:unset;min-width:unset;width:var(--post-device-sizing-notification-1);height:var(--post-device-sizing-notification-1);border-radius:var(--post-device-border-radius-round);background-color:var(--post-scheme-color-interactive-button-tertiary-enabled-bg);color:var(--post-scheme-color-interactive-button-tertiary-enabled-fg)}.btn-icon-close>post-icon{min-width:var(--post-device-sizing-interactive-icon-size4);width:var(--post-device-sizing-interactive-icon-size4);height:var(--post-device-sizing-interactive-icon-size4)}.btn-icon-close:not(:disabled):hover,.btn-icon-close.pretend-hover{cursor:pointer;background-color:var(--post-scheme-color-interactive-button-tertiary-hover-bg);color:var(--post-scheme-color-interactive-button-tertiary-hover-fg)}@media(forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.btn-icon-close:not(:disabled):hover,.btn-icon-close.pretend-hover{color:HighlightText !important}}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);border:0}
|
|
@@ -4,10 +4,20 @@ import { version } from "../../../../package";
|
|
|
4
4
|
* @slot default - Slot for placing visually hidden label in the close button.
|
|
5
5
|
*/
|
|
6
6
|
export class PostClosebutton {
|
|
7
|
-
host;
|
|
8
7
|
render() {
|
|
9
|
-
return (h(Host, { key: '
|
|
8
|
+
return (h(Host, { key: 'cfa55f799fdf9ad0f3ac1eb296e063b5001de997', "data-version": version }, h("button", { key: '7c8a084f6d7278329ddfb5fc4b2b8f992a185666', class: "btn btn-icon-close", type: "button" }, h("post-icon", { key: 'fc74ccb4f0c4c091a02a41cdef918d6c3b065c8c', "aria-hidden": "true", name: "closex" }), h("span", { key: '98478b013714df6d82c6c2f533ac8ecd2abae778', class: "visually-hidden" }, h("slot", { key: '109e2bca4436986dd037d8c29088cc79395bc200' })))));
|
|
10
9
|
}
|
|
11
10
|
static get is() { return "post-closebutton"; }
|
|
11
|
+
static get encapsulation() { return "shadow"; }
|
|
12
|
+
static get originalStyleUrls() {
|
|
13
|
+
return {
|
|
14
|
+
"$": ["post-closebutton.scss"]
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
static get styleUrls() {
|
|
18
|
+
return {
|
|
19
|
+
"$": ["post-closebutton.css"]
|
|
20
|
+
};
|
|
21
|
+
}
|
|
12
22
|
static get elementRef() { return "host"; }
|
|
13
23
|
}
|
|
@@ -7,21 +7,14 @@ import { checkEmptyOrType, isMotionReduced } from "../../utils/index";
|
|
|
7
7
|
*/
|
|
8
8
|
export class PostCollapsible {
|
|
9
9
|
constructor() {
|
|
10
|
+
this.isLoaded = false;
|
|
11
|
+
this.isOpen = true;
|
|
10
12
|
this.collapsed = false;
|
|
11
13
|
}
|
|
12
|
-
isLoaded = false;
|
|
13
|
-
isOpen = true;
|
|
14
|
-
host;
|
|
15
14
|
collapsedChange() {
|
|
16
15
|
checkEmptyOrType(this, 'collapsed', 'boolean');
|
|
17
16
|
void this.toggle(!this.collapsed);
|
|
18
17
|
}
|
|
19
|
-
/**
|
|
20
|
-
* An event emitted when the collapse element is shown or hidden, before the transition.
|
|
21
|
-
*
|
|
22
|
-
* The event payload is a boolean: `true` if the collapsible was opened, `false` if it was closed.
|
|
23
|
-
*/
|
|
24
|
-
postToggle;
|
|
25
18
|
componentDidLoad() {
|
|
26
19
|
this.collapsedChange();
|
|
27
20
|
this.isLoaded = true;
|
|
@@ -46,6 +39,7 @@ export class PostCollapsible {
|
|
|
46
39
|
const isHostRendered = this.host.offsetParent;
|
|
47
40
|
if (isHostRendered)
|
|
48
41
|
animation.commitStyles();
|
|
42
|
+
this.updateTriggers();
|
|
49
43
|
return open;
|
|
50
44
|
}
|
|
51
45
|
/**
|
|
@@ -56,7 +50,7 @@ export class PostCollapsible {
|
|
|
56
50
|
triggers.forEach(trigger => trigger.update());
|
|
57
51
|
}
|
|
58
52
|
render() {
|
|
59
|
-
return (h(Host, { key: '
|
|
53
|
+
return (h(Host, { key: 'a678bc639dfd7686d8e1bd57ca0f09984a24ab61', "data-version": version, tabindex: this.collapsed ? -1 : undefined }, h("slot", { key: 'e0b88ac152fa09314b4bc01c9abdb11480e2cb4d' })));
|
|
60
54
|
}
|
|
61
55
|
static get is() { return "post-collapsible"; }
|
|
62
56
|
static get encapsulation() { return "shadow"; }
|
|
@@ -1,21 +1,17 @@
|
|
|
1
|
+
import { h, Host } from "@stencil/core";
|
|
1
2
|
import { version } from "../../../../package";
|
|
2
|
-
import { checkNonEmpty, checkType,
|
|
3
|
-
import { eventGuard } from "../../utils/event-gua";
|
|
3
|
+
import { checkNonEmpty, checkType, eventGuard, getRoot } from "../../utils/index";
|
|
4
4
|
export class PostCollapsibleTrigger {
|
|
5
5
|
constructor() {
|
|
6
|
+
this.observer = new MutationObserver(() => this.setTrigger());
|
|
6
7
|
this.for = undefined;
|
|
7
8
|
}
|
|
8
|
-
trigger;
|
|
9
|
-
observer = new MutationObserver(() => this.setTrigger());
|
|
10
|
-
root;
|
|
11
|
-
host;
|
|
12
9
|
/**
|
|
13
10
|
* Set the "aria-controls" and "aria-expanded" attributes on the trigger to match the state of the controlled post-collapsible
|
|
14
11
|
*/
|
|
15
|
-
|
|
12
|
+
validateAriaAttributes() {
|
|
16
13
|
checkNonEmpty(this, 'for');
|
|
17
14
|
checkType(this, 'for', 'string', 'The post-collapsible-trigger "for" prop should be a id.');
|
|
18
|
-
void this.update();
|
|
19
15
|
}
|
|
20
16
|
/**
|
|
21
17
|
* Initiate a mutation observer that updates the trigger whenever necessary
|
|
@@ -25,25 +21,12 @@ export class PostCollapsibleTrigger {
|
|
|
25
21
|
this.root.addEventListener('postToggle', this.handlePostToggle);
|
|
26
22
|
this.observer.observe(this.host, { childList: true, subtree: true });
|
|
27
23
|
}
|
|
28
|
-
/**
|
|
29
|
-
* Attach a "postToggle" event listener to the root node
|
|
30
|
-
* to update the trigger's "aria-expanded" attribute whenever the controlled post-collapsible is toggled
|
|
31
|
-
*/
|
|
32
|
-
componentWillLoad() {
|
|
33
|
-
this.root = getRoot(this.host);
|
|
34
|
-
}
|
|
35
|
-
/**
|
|
36
|
-
* Add the "data-version" to the host element and set the trigger
|
|
37
|
-
*/
|
|
38
24
|
componentDidLoad() {
|
|
39
|
-
this.host.setAttribute('data-version', version);
|
|
40
25
|
this.setTrigger();
|
|
41
26
|
if (!this.trigger)
|
|
42
27
|
console.warn('The post-collapsible-trigger must contain a button.');
|
|
28
|
+
this.validateAriaAttributes();
|
|
43
29
|
}
|
|
44
|
-
/**
|
|
45
|
-
* Disconnect the mutation observer
|
|
46
|
-
*/
|
|
47
30
|
disconnectedCallback() {
|
|
48
31
|
this.observer.disconnect();
|
|
49
32
|
this.root.removeEventListener('postToggle', this.handlePostToggle);
|
|
@@ -52,7 +35,7 @@ export class PostCollapsibleTrigger {
|
|
|
52
35
|
* Update the "aria-controls" and "aria-expanded" attributes on the trigger button
|
|
53
36
|
*/
|
|
54
37
|
async update() {
|
|
55
|
-
this.
|
|
38
|
+
this.updateAriaAttributes();
|
|
56
39
|
}
|
|
57
40
|
/**
|
|
58
41
|
* Private handler for the 'postToggle' event.
|
|
@@ -65,7 +48,7 @@ export class PostCollapsibleTrigger {
|
|
|
65
48
|
}
|
|
66
49
|
});
|
|
67
50
|
}
|
|
68
|
-
|
|
51
|
+
updateAriaAttributes() {
|
|
69
52
|
if (!this.trigger)
|
|
70
53
|
return;
|
|
71
54
|
// add the provided id to the aria-controls list
|
|
@@ -78,7 +61,7 @@ export class PostCollapsibleTrigger {
|
|
|
78
61
|
const isCollapsed = this.collapsible?.collapsed;
|
|
79
62
|
const newAriaExpanded = isCollapsed !== undefined ? !isCollapsed : undefined;
|
|
80
63
|
this.trigger.setAttribute('aria-expanded', `${newAriaExpanded}`);
|
|
81
|
-
}
|
|
64
|
+
}
|
|
82
65
|
/**
|
|
83
66
|
* Toggle the post-collapsible controlled by the trigger
|
|
84
67
|
*/
|
|
@@ -104,9 +87,13 @@ export class PostCollapsibleTrigger {
|
|
|
104
87
|
return;
|
|
105
88
|
this.trigger = trigger;
|
|
106
89
|
this.trigger.addEventListener('click', () => this.toggleCollapsible());
|
|
107
|
-
this.
|
|
90
|
+
this.updateAriaAttributes();
|
|
91
|
+
}
|
|
92
|
+
render() {
|
|
93
|
+
return (h(Host, { key: 'cd703fe34b8c82afc5956b58724d36b06054bc0b', "data-version": version }, h("slot", { key: '5abe4ba2b8922b941cc8aebbc7039e34e1853855' })));
|
|
108
94
|
}
|
|
109
95
|
static get is() { return "post-collapsible-trigger"; }
|
|
96
|
+
static get encapsulation() { return "shadow"; }
|
|
110
97
|
static get properties() {
|
|
111
98
|
return {
|
|
112
99
|
"for": {
|
|
@@ -124,7 +111,7 @@ export class PostCollapsibleTrigger {
|
|
|
124
111
|
"text": "Link the trigger to a post-collapsible with this id"
|
|
125
112
|
},
|
|
126
113
|
"attribute": "for",
|
|
127
|
-
"reflect":
|
|
114
|
+
"reflect": true
|
|
128
115
|
}
|
|
129
116
|
};
|
|
130
117
|
}
|
|
@@ -153,7 +140,7 @@ export class PostCollapsibleTrigger {
|
|
|
153
140
|
static get watchers() {
|
|
154
141
|
return [{
|
|
155
142
|
"propName": "for",
|
|
156
|
-
"methodName": "
|
|
143
|
+
"methodName": "validateAriaAttributes"
|
|
157
144
|
}];
|
|
158
145
|
}
|
|
159
146
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { h, Host } from "@stencil/core";
|
|
2
2
|
import { version } from "../../../../package";
|
|
3
|
-
import { breakpoint } from "../../utils/
|
|
3
|
+
import { breakpoint } from "../../utils/index";
|
|
4
4
|
/**
|
|
5
5
|
* @slot grid-{1|2|3|4}-title - Slot for the accordion headers (mobile).
|
|
6
6
|
* @slot grid-{1|2|3|4} - Slot for the accordion bodies (mobile) and the grid cells (tablet, desktop).
|
|
@@ -12,15 +12,17 @@ import { breakpoint } from "../../utils/breakpoints";
|
|
|
12
12
|
*/
|
|
13
13
|
export class PostFooter {
|
|
14
14
|
constructor() {
|
|
15
|
+
this.breakpointChange = (e) => {
|
|
16
|
+
this.isMobile = e.detail === 'mobile';
|
|
17
|
+
};
|
|
15
18
|
this.label = undefined;
|
|
16
19
|
this.isMobile = breakpoint.get('name') === 'mobile';
|
|
17
20
|
}
|
|
18
|
-
host;
|
|
19
21
|
connectedCallback() {
|
|
20
|
-
window.addEventListener('postBreakpoint:name', this.breakpointChange
|
|
22
|
+
window.addEventListener('postBreakpoint:name', this.breakpointChange);
|
|
21
23
|
}
|
|
22
|
-
|
|
23
|
-
|
|
24
|
+
disconnectedCallback() {
|
|
25
|
+
window.removeEventListener('postBreakpoint:name', this.breakpointChange);
|
|
24
26
|
}
|
|
25
27
|
renderAccordion() {
|
|
26
28
|
return (h("div", { class: "footer-grid" }, h("post-accorddion", { "heading-level": "3", multiple: true }, h("post-accordion-item", { collapsed: true }, h("span", { slot: "header" }, h("slot", { name: "grid-1-title" })), h("slot", { name: "grid-1" })), h("post-accordion-item", { collapsed: true }, h("span", { slot: "header" }, h("slot", { name: "grid-2-title" })), h("slot", { name: "grid-2" })), h("post-accordion-item", { collapsed: true }, h("span", { slot: "header" }, h("slot", { name: "grid-3-title" })), h("slot", { name: "grid-3" })), h("post-accordion-item", { collapsed: true }, h("span", { slot: "header" }, h("slot", { name: "grid-4-title" })), h("slot", { name: "grid-4" })))));
|
|
@@ -29,10 +31,7 @@ export class PostFooter {
|
|
|
29
31
|
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
32
|
}
|
|
31
33
|
render() {
|
|
32
|
-
return (h(Host, { key: '
|
|
33
|
-
}
|
|
34
|
-
disconnectedCallback() {
|
|
35
|
-
window.removeEventListener('postBreakpoint:name', this.breakpointChange.bind(this));
|
|
34
|
+
return (h(Host, { key: '4058ba0a63a666b82d274d1c35397c97d280ba49', "data-version": version }, h("footer", { key: '27adf1e2a1439fd69efd6e571fcdd6851304c92a' }, h("h2", { key: '1ca0cd955ec5e6d315521eb5c28c5963ed44856d', class: "visually-hidden" }, this.label), h("div", { key: '27a6f520dee9d6294fa3cd4ebc6fd5062ac327ce', class: "footer-container" }, this.isMobile ? this.renderAccordion() : this.renderGrid(), h("div", { key: '5607004d5e3ea553a86d476ca459b3b3632ef12d', class: "footer-column" }, h("div", { key: 'cd4727970358ffad4ca28fffaccc8a5eab4dec27', class: "footer-socialmedia" }, h("slot", { key: '92e105af21b69640a07c2d35c24bff6aae84abb6', name: "socialmedia" })), h("div", { key: '904b787df3f192593408d99857e213143cec6706', class: "footer-app" }, h("slot", { key: '2f4ab14e20737c6035c175e58982464fe6987724', name: "app" }))), h("div", { key: 'c85b261b4ae0cb1e27f424f460fa2838e1174fb0', class: "footer-businesssectors" }, h("slot", { key: 'c66baa3a1b689d881db68448b9d72d47acd11c7c', name: "businesssectors" })), h("div", { key: '4eebc88279f29eef028766c1fcb90effc1aaf1ca', class: "footer-meta" }, h("slot", { key: 'd689d7c14af01dc13c7f9f0fd170f3974150b9aa', name: "meta" })), h("div", { key: '36f87386755a4ae1186109b46609c6ad9c1d5041', class: "footer-copyright" }, h("slot", { key: 'c37231f795b1a5a407f83aeaf8a8b093713b8db1', name: "copyright" }))))));
|
|
36
35
|
}
|
|
37
36
|
static get is() { return "post-footer"; }
|
|
38
37
|
static get encapsulation() { return "shadow"; }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
*,::before,::after{box-sizing:border-box}:host{z-index:1020;position:relative;--global-header-top: calc( (var(--post-global-header-height) - var(--post-global-header-reduced-height)) * -1 );--local-header-top: calc( -1 * (var(--post-local-header-height) - var(--post-main-navigation-height)) + var(--post-global-header-reduced-height) );--logo-height: calc(var(--post-global-header-height) - var(--post-header-scroll-top));--global-controls-top: calc(min((var(--post-header-scroll-top) / 4), 20px) * -1)}:host:has(.global-sub>*:not(.logo):focus-within),:host:has(.local-sub:focus-within){--global-header-top: 0;--local-header-top: var(--post-global-header-height);--logo-height: var(--post-global-header-height);--global-controls-top: 0}: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;position:sticky;padding-inline:4px;height:var(--post-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:12px;inset-block-start:var(--global-header-top);transition:inset-block-start .2s ease-in-out}}.global-sub{display:flex;align-items:center;gap:24px}@media screen and (min-width: 1024px){.global-sub:not(:has(.logo)){position:relative;transition:inset-block-start .2s ease-in-out;inset-block-start:var(--global-controls-top)}}.align-end{align-items:flex-end}.logo{flex:1 0 auto;height:var(--post-global-header-height);width:var(--post-global-header-height);min-height:var(--post-global-header-reduced-height);align-self:flex-end}@media screen and (min-width: 1024px){.logo{transition:height .2 ease-in-out;height:var(--logo-height)}}::slotted(ul){margin-block:0 !important;list-style:none;display:flex;padding-inline-start:0;gap:1rem;flex-shrink:0 !important}.local-header{display:flex;position:sticky;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px;min-height:var(--post-local-header-min-height);background:#fff;transition:box-shadow .2s ease-in-out}.local-header::after{content:"";position:absolute;width:100%;height:1px;background-color:#e1e0dc;inset-block-end:-1px;z-index:1}@media(forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.local-header::after{background-color:Highlight}}@media screen and (min-width: 1024px){.local-header{z-index:3;inset-block-start:var(--local-header-top);padding-block-start:18px;box-shadow:var(--post-device-elevation-300);transition:box-shadow .2s ease-in-out,inset-block-start .2s ease-in-out}}@media screen and (max-width: 1023.98px){.local-header{z-index:2;inset-block-start:var(--post-global-header-height);padding-block:8px;flex-wrap:wrap;gap:12px}.local-header.local-header-mobile-extended::after{inset-block-end:0}.local-header:not(.local-header-mobile-extended){box-shadow:var(--post-device-elevation-300)}}.local-sub{margin-inline-end:8px}@media screen and (max-width: 1023.98px){.local-sub{margin-inline-end:4px}}::slotted(.list-inline){margin:0 !important;z-index:3 !important;position:relative !important}@media screen and (min-width: 1024px){.mobile-toggle{display:none}}.navigation{width:100%}@media screen and (min-width: 1024px){.navigation{inset-block-start:var(--post-global-header-reduced-height)}.navigation::before{display:block;content:"";position:absolute;inset:0;z-index:2;background:#fff}}@media screen and (max-width: 1023.98px){.navigation{position:sticky;z-index:1;inset-inline:0;inset-block-start:var(--post-header-height)}.mobile-menu{background-color:#fafafa}::slotted(post-mainnavigation),.navigation-footer{display:none;flex-direction:column;padding-block:16px 24px;padding-inline:32px}.navigation.extended ::slotted(post-mainnavigation),.navigation.extended .navigation-footer{display:flex}.navigation.extended>div{display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;height:calc(min(var(--header-scroll-parent-height, 100dvh),100dvh) - var(--post-header-height))}.navigation.extended.megadropdown-open>div{overflow-y:hidden}.navigation.extended ::slotted(post-mainnavigation){flex-grow:1 !important}::slotted(post-mainnavigation){gap:32px}.navigation-footer{background-color:#f0efed;gap:24px}}@media screen and (max-width: 599.98px){::slotted(post-mainnavigation),.navigation-footer{padding-inline:16px}}
|
|
1
|
+
*,::before,::after{box-sizing:border-box}:host{z-index:1020;position:relative;--global-header-top: calc( (var(--post-global-header-height) - var(--post-global-header-reduced-height)) * -1 );--local-header-top: calc( -1 * (var(--post-local-header-height) - var(--post-main-navigation-height)) + var(--post-global-header-reduced-height) );--logo-height: calc(var(--post-global-header-height) - var(--post-header-scroll-top, 0px));--global-controls-top: calc(min((var(--post-header-scroll-top) / 4), 20px) * -1)}:host:has(.global-sub>*:not(.logo):focus-within),:host:has(.local-sub:focus-within){--global-header-top: 0;--local-header-top: var(--post-global-header-height);--logo-height: var(--post-global-header-height);--global-controls-top: 0}: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;position:sticky;padding-inline:4px;height:var(--post-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:12px;inset-block-start:var(--global-header-top);transition:inset-block-start .2s ease-in-out}}.global-sub{display:flex;align-items:center;gap:24px}@media screen and (min-width: 1024px){.global-sub:not(:has(.logo)){position:relative;transition:inset-block-start .2s ease-in-out;inset-block-start:var(--global-controls-top)}}.align-end{align-items:flex-end}.logo{flex:1 0 auto;height:var(--post-global-header-height);width:var(--post-global-header-height);min-height:var(--post-global-header-reduced-height);align-self:flex-end}@media screen and (min-width: 1024px){.logo{transition:height .2 ease-in-out;height:var(--logo-height)}}::slotted(ul){margin-block:0 !important;list-style:none;display:flex;padding-inline-start:0;gap:1rem;flex-shrink:0 !important}.local-header{display:flex;position:sticky;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px;min-height:var(--post-local-header-min-height);background:#fff;transition:box-shadow .2s ease-in-out}.local-header::after{content:"";position:absolute;width:100%;height:1px;background-color:#e1e0dc;inset-block-end:-1px;z-index:1}@media(forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.local-header::after{background-color:Highlight}}@media screen and (min-width: 1024px){.local-header{z-index:3;inset-block-start:var(--local-header-top);padding-block-start:18px;box-shadow:var(--post-device-elevation-300);transition:box-shadow .2s ease-in-out,inset-block-start .2s ease-in-out}}@media screen and (max-width: 1023.98px){.local-header{z-index:2;inset-block-start:var(--post-global-header-height);padding-block:8px;flex-wrap:wrap;gap:12px}.local-header.local-header-mobile-extended::after{inset-block-end:0}.local-header:not(.local-header-mobile-extended){box-shadow:var(--post-device-elevation-300)}}.local-sub{margin-inline-end:8px}@media screen and (max-width: 1023.98px){.local-sub{margin-inline-end:4px}}::slotted(.list-inline){margin:0 !important;z-index:3 !important;position:relative !important}@media screen and (min-width: 1024px){.mobile-toggle{display:none}}.navigation{width:100%}@media screen and (min-width: 1024px){.navigation{inset-block-start:var(--post-global-header-reduced-height)}.navigation::before{display:block;content:"";position:absolute;inset:0;z-index:2;background:#fff}}@media screen and (max-width: 1023.98px){.navigation{position:sticky;z-index:1;inset-inline:0;inset-block-start:var(--post-header-height)}.mobile-menu{background-color:#fafafa}::slotted(post-mainnavigation),.navigation-footer{display:none;flex-direction:column;padding-block:16px 24px;padding-inline:32px}.navigation.extended ::slotted(post-mainnavigation),.navigation.extended .navigation-footer{display:flex}.navigation.extended>div{display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;height:calc(min(var(--header-scroll-parent-height, 100dvh),100dvh) - var(--post-header-height))}.navigation.extended.megadropdown-open>div{overflow-y:hidden}.navigation.extended ::slotted(post-mainnavigation){flex-grow:1 !important}::slotted(post-mainnavigation){gap:32px}.navigation-footer{background-color:#f0efed;gap:24px}}@media screen and (max-width: 599.98px){::slotted(post-mainnavigation),.navigation-footer{padding-inline:16px}}
|
|
@@ -14,13 +14,6 @@ import { eventGuard } from "../../utils/event-gua";
|
|
|
14
14
|
* @slot post-mainnavigation - Has a default slot because it's only meant to be used in the `<post-header>`.
|
|
15
15
|
*/
|
|
16
16
|
export class PostHeader {
|
|
17
|
-
firstFocusableEl;
|
|
18
|
-
lastFocusableEl;
|
|
19
|
-
mobileMenu;
|
|
20
|
-
mobileMenuAnimation;
|
|
21
|
-
throttledResize = throttle(50, () => this.handleResize());
|
|
22
|
-
scrollParentResizeObserver;
|
|
23
|
-
localHeaderResizeObserver;
|
|
24
17
|
get scrollParent() {
|
|
25
18
|
const frozenScrollParent = document.querySelector('[data-post-scroll-locked]');
|
|
26
19
|
if (frozenScrollParent)
|
|
@@ -35,7 +28,6 @@ export class PostHeader {
|
|
|
35
28
|
}
|
|
36
29
|
return document.body;
|
|
37
30
|
}
|
|
38
|
-
host;
|
|
39
31
|
lockBody(newValue, _oldValue, propName) {
|
|
40
32
|
const scrollParent = this.scrollParent;
|
|
41
33
|
const mobileMenuExtended = propName === 'mobileMenuExtended' ? newValue : this.mobileMenuExtended;
|
|
@@ -48,11 +40,16 @@ export class PostHeader {
|
|
|
48
40
|
this.host.removeEventListener('keydown', this.keyboardHandler);
|
|
49
41
|
}
|
|
50
42
|
}
|
|
51
|
-
/**
|
|
52
|
-
* An event emitted when the device has changed
|
|
53
|
-
*/
|
|
54
|
-
postUpdateDevice;
|
|
55
43
|
constructor() {
|
|
44
|
+
this.throttledResize = throttle(50, () => this.handleResize());
|
|
45
|
+
this.megedropdownStateHandler = (event) => {
|
|
46
|
+
eventGuard(this.host, event, {
|
|
47
|
+
targetLocalName: 'post-megadropdown',
|
|
48
|
+
delegatorSelector: 'post-header',
|
|
49
|
+
}, () => {
|
|
50
|
+
this.megadropdownOpen = event.detail.isVisible;
|
|
51
|
+
});
|
|
52
|
+
};
|
|
56
53
|
this.device = null;
|
|
57
54
|
this.mobileMenuExtended = false;
|
|
58
55
|
this.megadropdownOpen = false;
|
|
@@ -74,10 +71,12 @@ export class PostHeader {
|
|
|
74
71
|
document.addEventListener('postToggleMegadropdown', this.megedropdownStateHandler);
|
|
75
72
|
this.host.addEventListener('click', this.handleLinkClick);
|
|
76
73
|
this.handleResize();
|
|
77
|
-
this.handleScrollEvent();
|
|
78
74
|
this.handleScrollParentResize();
|
|
79
75
|
this.lockBody(false, this.mobileMenuExtended, 'mobileMenuExtended');
|
|
80
76
|
}
|
|
77
|
+
componentWillRender() {
|
|
78
|
+
this.handleScrollEvent();
|
|
79
|
+
}
|
|
81
80
|
componentDidRender() {
|
|
82
81
|
this.getFocusableElements();
|
|
83
82
|
this.handleLocalHeaderResize();
|
|
@@ -123,14 +122,6 @@ export class PostHeader {
|
|
|
123
122
|
});
|
|
124
123
|
}
|
|
125
124
|
}
|
|
126
|
-
megedropdownStateHandler = (event) => {
|
|
127
|
-
eventGuard(this.host, event, {
|
|
128
|
-
targetLocalName: 'post-megadropdown',
|
|
129
|
-
delegatorSelector: 'post-header',
|
|
130
|
-
}, () => {
|
|
131
|
-
this.megadropdownOpen = event.detail.isVisible;
|
|
132
|
-
});
|
|
133
|
-
};
|
|
134
125
|
// Get all the focusable elements in the post-header mobile menu
|
|
135
126
|
getFocusableElements() {
|
|
136
127
|
// Get elements in the correct order (different as the DOM order)
|
|
@@ -242,7 +233,7 @@ export class PostHeader {
|
|
|
242
233
|
return (h("div", { class: navigationClasses.join(' '), style: { '--header-navigation-current-inset': `${mobileMenuScrollTop}px` } }, h("div", { class: "mobile-menu", ref: el => (this.mobileMenu = el) }, 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" }))))));
|
|
243
234
|
}
|
|
244
235
|
render() {
|
|
245
|
-
return (h(Host, { key: '
|
|
236
|
+
return (h(Host, { key: 'd8b43333c00a612a3a37479750874a1efaf6a855', "data-version": version }, h("div", { key: 'b270fb139cc8730a774785c5535fb3bcdd60c59c', class: "global-header" }, h("div", { key: 'b3161c4b26a1be4707fa6c7360e6779547b7ab30', class: "global-sub" }, h("div", { key: '44ecddd8f91c86d1af0075718b63e6bf034a25b7', class: "logo" }, h("slot", { key: 'de5208255d0cf59707092c984b0fec33d317d38d', name: "post-logo" }))), h("div", { key: '199dc1da25d817b488d5c3402779130c360e0f9a', class: "global-sub" }, this.device === 'desktop' && h("slot", { key: '1337f13908a826022a1bf2a8a1a2e2bfe323900b', name: "meta-navigation" }), h("slot", { key: '2b6fbbcedc8f1803e388fdbcbcd637d6a2605c87', name: "global-controls" }), this.device === 'desktop' && h("slot", { key: '2861c1a0f7639678edd0f584d8f98665fcf84fb0', name: "post-language-switch" }), h("div", { key: '06e2d9a4abe3a804f25ffa303f6f9ed5b7c01b60', onClick: () => this.toggleMobileMenu(), class: "mobile-toggle" }, h("slot", { key: '772407e65d3d8f642c1e80fd8cb42b425eed4848', name: "post-togglebutton" })))), h("div", { key: '7b7a3da2a8cc848632c2e45badc52e23958a6faa', class: 'local-header ' + (this.mobileMenuExtended ? 'local-header-mobile-extended' : '') }, h("slot", { key: '96e4d68bfe0504cc09d57a8b11dabb9139d780f6', name: "title" }), h("div", { key: '240fae6f0f9d2a192a7b94110a9c4571856de90a', class: "local-sub" }, h("slot", { key: '14fd77af7dca02157248bf95d7d253d5f14e9f1e', name: "local-controls" }), h("slot", { key: '6dfac25cb64401123638ddfc6b94bbe89ae78249' })), this.device === 'desktop' && this.renderNavigation()), this.device !== 'desktop' && this.renderNavigation()));
|
|
246
237
|
}
|
|
247
238
|
static get is() { return "post-header"; }
|
|
248
239
|
static get encapsulation() { return "shadow"; }
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Host, h } from "@stencil/core";
|
|
2
|
-
import { checkNonEmpty, checkType, checkEmptyOrType, checkEmptyOrOneOf } from "../../utils/index";
|
|
2
|
+
import { IS_BROWSER, checkNonEmpty, checkType, checkEmptyOrType, checkEmptyOrOneOf } from "../../utils/index";
|
|
3
3
|
import { version } from "../../../../package";
|
|
4
4
|
const CDN_URL = `https://unpkg.com/@swisspost/design-system-icons@${version}/public/post-icons/`;
|
|
5
5
|
const ANIMATION_NAMES = [
|
|
@@ -24,8 +24,6 @@ export class PostIcon {
|
|
|
24
24
|
this.rotate = null;
|
|
25
25
|
this.scale = null;
|
|
26
26
|
}
|
|
27
|
-
isSSR = typeof window === 'undefined';
|
|
28
|
-
host;
|
|
29
27
|
validateAnimation(newValue = this.animation) {
|
|
30
28
|
if (newValue !== undefined)
|
|
31
29
|
checkEmptyOrOneOf(this, 'animation', ANIMATION_KEYS);
|
|
@@ -56,7 +54,7 @@ export class PostIcon {
|
|
|
56
54
|
// the first definition object which defines a domain, will be used to set the domain of the file url
|
|
57
55
|
// the first definition object which defines a slug, will be used to set the slug of the file url
|
|
58
56
|
const urlDefinitions = [this.getUrlDefinition(this.base, 'both')];
|
|
59
|
-
if (
|
|
57
|
+
if (IS_BROWSER) {
|
|
60
58
|
urlDefinitions.push(this.getUrlDefinition(document.head
|
|
61
59
|
.querySelector('meta[name="design-system-settings"][data-post-icon-base]')
|
|
62
60
|
?.getAttribute('data-post-icon-base'), 'relative'));
|
|
@@ -120,7 +118,7 @@ export class PostIcon {
|
|
|
120
118
|
this.validateAnimation();
|
|
121
119
|
}
|
|
122
120
|
render() {
|
|
123
|
-
return (h(Host, { key: '
|
|
121
|
+
return (h(Host, { key: 'b3c3efcc03f423a248e231b4b4c5d79c93ae25a6', "data-version": version }, h("span", { key: 'd73d4df11fcccb96d5346f3f8c3e18602bb8d484', style: this.getStyles() })));
|
|
124
122
|
}
|
|
125
123
|
static get is() { return "post-icon"; }
|
|
126
124
|
static get encapsulation() { return "shadow"; }
|
|
@@ -228,7 +226,7 @@ export class PostIcon {
|
|
|
228
226
|
"text": "The name/id of the icon (e.g. 1000, 1001, ...)."
|
|
229
227
|
},
|
|
230
228
|
"attribute": "name",
|
|
231
|
-
"reflect":
|
|
229
|
+
"reflect": true
|
|
232
230
|
},
|
|
233
231
|
"rotate": {
|
|
234
232
|
"type": "number",
|
|
@@ -12,7 +12,6 @@ export class PostLanguageOption {
|
|
|
12
12
|
this.name = undefined;
|
|
13
13
|
this.url = undefined;
|
|
14
14
|
}
|
|
15
|
-
host;
|
|
16
15
|
validateCode() {
|
|
17
16
|
checkType(this, 'code', 'string');
|
|
18
17
|
}
|
|
@@ -37,14 +36,6 @@ export class PostLanguageOption {
|
|
|
37
36
|
this.postLanguageOptionInitiallyActive.emit(this.code);
|
|
38
37
|
}
|
|
39
38
|
}
|
|
40
|
-
/**
|
|
41
|
-
* An event emitted when the language option is clicked. The payload is the ISO 639 code of the language.
|
|
42
|
-
*/
|
|
43
|
-
postChange;
|
|
44
|
-
/**
|
|
45
|
-
* An event emitted when the language option is initially active. The payload is the ISO 639 code of the language.
|
|
46
|
-
*/
|
|
47
|
-
postLanguageOptionInitiallyActive;
|
|
48
39
|
/**
|
|
49
40
|
* Selects the language option programmatically.
|
|
50
41
|
*/
|
|
@@ -65,7 +56,7 @@ export class PostLanguageOption {
|
|
|
65
56
|
this.emitChange();
|
|
66
57
|
}
|
|
67
58
|
};
|
|
68
|
-
return (h(Host, { key: '
|
|
59
|
+
return (h(Host, { key: '3a6b9a8f63c90f431a13c1df529a2e4716ede5d8', "data-version": version }, this.url ? (h("a", { "aria-current": this.active ? 'page' : undefined, "aria-label": this.name, href: this.url, hrefLang: lang, lang: lang, onClick: () => this.emitChange(), onKeyDown: emitOnKeyDown }, h("slot", null))) : (h("button", { "aria-current": this.active ? 'true' : undefined, "aria-label": this.name, lang: lang, onClick: () => this.emitChange(), onKeyDown: emitOnKeyDown }, h("slot", null)))));
|
|
69
60
|
}
|
|
70
61
|
static get is() { return "post-language-option"; }
|
|
71
62
|
static get originalStyleUrls() {
|
|
@@ -1,17 +1,19 @@
|
|
|
1
1
|
import { Host, h } from "@stencil/core";
|
|
2
|
-
import { checkEmptyOrOneOf, checkType } from "../../utils/index";
|
|
2
|
+
import { checkEmptyOrOneOf, checkType, eventGuard } from "../../utils/index";
|
|
3
3
|
import { version } from "../../../../package";
|
|
4
4
|
import { SWITCH_VARIANTS } from "./switch-variants";
|
|
5
5
|
import { nanoid } from "nanoid";
|
|
6
|
-
import { eventGuard } from "../../utils/event-gua";
|
|
7
6
|
export class PostLanguageSwitch {
|
|
8
7
|
constructor() {
|
|
8
|
+
this.menuId = `p${nanoid(11)}`;
|
|
9
9
|
this.caption = undefined;
|
|
10
10
|
this.description = undefined;
|
|
11
11
|
this.variant = 'list';
|
|
12
12
|
this.activeLang = undefined;
|
|
13
13
|
}
|
|
14
|
-
|
|
14
|
+
get languageOptions() {
|
|
15
|
+
return Array.from(this.host.querySelectorAll('post-language-option'));
|
|
16
|
+
}
|
|
15
17
|
validateCaption() {
|
|
16
18
|
checkType(this, 'caption', 'string');
|
|
17
19
|
}
|
|
@@ -29,7 +31,6 @@ export class PostLanguageSwitch {
|
|
|
29
31
|
// Initially set variants and active language
|
|
30
32
|
// Handles cases where the language-switch is rendered after the language-options have been rendered
|
|
31
33
|
this.updateChildrenVariant();
|
|
32
|
-
this.updateActiveLanguage();
|
|
33
34
|
}
|
|
34
35
|
/**
|
|
35
36
|
* Listen for the postChange event and guard it to run only for events originating from a <post-language-option> element.
|
|
@@ -60,30 +61,17 @@ export class PostLanguageSwitch {
|
|
|
60
61
|
handleInitiallyActive(event) {
|
|
61
62
|
this.activeLang = event.detail;
|
|
62
63
|
}
|
|
63
|
-
get languageOptions() {
|
|
64
|
-
return this.host.querySelectorAll('post-language-option');
|
|
65
|
-
}
|
|
66
|
-
get activeLanguageOption() {
|
|
67
|
-
return this.host.querySelector('post-language-option[active]:not([active="false"])');
|
|
68
|
-
}
|
|
69
|
-
handleSlotChange() {
|
|
70
|
-
this.updateActiveLanguage();
|
|
71
|
-
}
|
|
72
|
-
updateActiveLanguage() {
|
|
73
|
-
this.activeLang = this.activeLanguageOption.getAttribute('code');
|
|
74
|
-
}
|
|
75
64
|
// Update post-language-option variant to have the correct style
|
|
76
65
|
updateChildrenVariant() {
|
|
77
66
|
this.languageOptions.forEach(el => {
|
|
78
67
|
el.setAttribute('variant', this.variant);
|
|
79
68
|
});
|
|
80
69
|
}
|
|
81
|
-
menuId = `p${nanoid(11)}`;
|
|
82
70
|
renderList() {
|
|
83
|
-
return (h(Host, { "data-version": version, role: "list", "aria-label": this.caption }, h("div", { class: "post-language-switch-list", role: "group", "aria-label": this.description }, h("slot",
|
|
71
|
+
return (h(Host, { "data-version": version, role: "list", "aria-label": this.caption }, h("div", { class: "post-language-switch-list", role: "group", "aria-label": this.description }, h("slot", null))));
|
|
84
72
|
}
|
|
85
73
|
renderDropdown() {
|
|
86
|
-
return (h(Host, { "data-version": version }, h("post-menu-trigger", { for: this.menuId }, h("button", { class: "post-language-switch-trigger", "aria-label": this.description }, this.activeLang, h("post-icon", { "aria-hidden": "true", name: "chevrondown" }))), h("post-menu", { id: this.menuId, class: "post-language-switch-dropdown-container", "aria-label": this.caption }, h("slot",
|
|
74
|
+
return (h(Host, { "data-version": version }, h("post-menu-trigger", { for: this.menuId }, h("button", { class: "post-language-switch-trigger", "aria-label": this.description }, this.activeLang, h("post-icon", { "aria-hidden": "true", name: "chevrondown" }))), h("post-menu", { id: this.menuId, class: "post-language-switch-dropdown-container", "aria-label": this.caption }, h("slot", null))));
|
|
87
75
|
}
|
|
88
76
|
render() {
|
|
89
77
|
return this.variant === 'list' ? this.renderList() : this.renderDropdown();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
:host{display:contents;cursor:pointer}
|
|
@@ -3,7 +3,6 @@ import { version } from "../../../../package";
|
|
|
3
3
|
const INTERACTIVE_ELEMENTS = ['a'].join(',');
|
|
4
4
|
const INTERACTIVE_ELEMENTS_SELECTOR = `:where(${INTERACTIVE_ELEMENTS})`;
|
|
5
5
|
export class PostLinkarea {
|
|
6
|
-
host;
|
|
7
6
|
dispatchClick({ ctrlKey, shiftKey, altKey, metaKey }) {
|
|
8
7
|
const interactiveElement = this.host.querySelector(`[data-link]${INTERACTIVE_ELEMENTS_SELECTOR}`) ??
|
|
9
8
|
this.host.querySelector(INTERACTIVE_ELEMENTS_SELECTOR);
|
|
@@ -13,9 +12,10 @@ export class PostLinkarea {
|
|
|
13
12
|
interactiveElement.dispatchEvent(new MouseEvent('click', { ctrlKey, shiftKey, altKey, metaKey }));
|
|
14
13
|
}
|
|
15
14
|
render() {
|
|
16
|
-
return (h(Host, { key: '
|
|
15
|
+
return (h(Host, { key: '56e4b032fa8976cc120bff5f1c36d55167e54e98', "data-version": version, onClick: (e) => this.dispatchClick(e), tabindex: "0" }, h("slot", { key: '25568fab2a47d765757c00fbee4f2999c1da16d1' })));
|
|
17
16
|
}
|
|
18
17
|
static get is() { return "post-linkarea"; }
|
|
18
|
+
static get encapsulation() { return "shadow"; }
|
|
19
19
|
static get originalStyleUrls() {
|
|
20
20
|
return {
|
|
21
21
|
"$": ["post-linkarea.scss"]
|
|
@@ -11,8 +11,6 @@ export class PostList {
|
|
|
11
11
|
this.titleHidden = false;
|
|
12
12
|
this.horizontal = false;
|
|
13
13
|
}
|
|
14
|
-
host;
|
|
15
|
-
titleEl;
|
|
16
14
|
componentWillLoad() {
|
|
17
15
|
/**
|
|
18
16
|
* Get the id set on the host element or use a random id by default
|
|
@@ -28,7 +26,7 @@ export class PostList {
|
|
|
28
26
|
}
|
|
29
27
|
}
|
|
30
28
|
render() {
|
|
31
|
-
return (h(Host, { key: '
|
|
29
|
+
return (h(Host, { key: 'b003aa61735359b6a1d95aad8d29c609d5bb3c8b', "data-version": version }, h("div", { key: '2f69a2c72dd357767735e10d16f1b7586da6d5a3', ref: el => (this.titleEl = el), id: this.titleId, class: `list-title${this.titleHidden ? ' visually-hidden' : ''}` }, h("slot", { key: '3982783d438519673a676323339a013d3edb84db' })), h("div", { key: 'b8a91c4430774f019cc46aa19393e2a1566204a5', role: "list", "aria-labelledby": this.titleId }, h("slot", { key: '378a51785c4d52df8ae422657a16e8295b405149', name: "post-list-item" }))));
|
|
32
30
|
}
|
|
33
31
|
static get is() { return "post-list"; }
|
|
34
32
|
static get originalStyleUrls() {
|