@swisspost/design-system-components 10.0.0-next.39 → 10.0.0-next.41
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/breakpoints-DIH5Oaz7.js +186 -0
- package/dist/cjs/event-from-AKK8RQrn.js +107 -0
- package/dist/cjs/{get-root-8102fecd.js → get-root-DmyBVSJ_.js} +1 -1
- package/dist/cjs/{index-b60129c4.js → index-CRMt-jq2.js} +1172 -313
- package/dist/cjs/index.cjs.js +0 -72
- package/dist/cjs/loader.cjs.js +3 -6
- package/dist/cjs/{package-29dc73af.js → package-C2pR6Vs2.js} +1 -1
- package/dist/cjs/post-accordion_2.cjs.entry.js +183 -0
- package/dist/cjs/post-avatar.cjs.entry.js +151 -8
- package/dist/cjs/post-back-to-top.cjs.entry.js +86 -9
- package/dist/cjs/post-banner.cjs.entry.js +81 -9
- package/dist/cjs/post-breadcrumb-item_2.cjs.entry.js +62 -8
- package/dist/cjs/post-breadcrumbs.cjs.entry.js +119 -7
- package/dist/cjs/post-card-control.cjs.entry.js +283 -8
- package/dist/cjs/post-closebutton_15.cjs.entry.js +4376 -30
- package/dist/cjs/post-collapsible_2.cjs.entry.js +196 -10
- package/dist/cjs/post-components.cjs.js +7 -8
- package/dist/cjs/post-footer.cjs.entry.js +59 -8
- package/dist/cjs/post-linkarea.cjs.entry.js +24 -6
- package/dist/cjs/post-popover.cjs.entry.js +151 -8
- package/dist/cjs/post-rating.cjs.entry.js +115 -8
- package/dist/cjs/post-tab-header.cjs.entry.js +26 -9
- package/dist/cjs/post-tab-panel.cjs.entry.js +28 -9
- package/dist/cjs/post-tabs.cjs.entry.js +165 -7
- package/dist/cjs/post-tag.cjs.entry.js +50 -8
- package/dist/cjs/post-tooltip-trigger.cjs.entry.js +5195 -7
- package/dist/cjs/post-tooltip.cjs.entry.js +78 -9
- package/dist/collection/collection-manifest.json +4 -4
- package/dist/collection/components/post-accordion/post-accordion.css +1 -1
- package/dist/collection/components/post-accordion/post-accordion.js +39 -23
- package/dist/collection/components/post-accordion-item/post-accordion-item.css +1 -1
- package/dist/collection/components/post-accordion-item/post-accordion-item.js +26 -12
- package/dist/collection/components/post-avatar/post-avatar.js +12 -9
- package/dist/collection/components/post-back-to-top/post-back-to-top.js +4 -3
- package/dist/collection/components/post-banner/post-banner.js +18 -9
- package/dist/collection/components/post-breadcrumb-item/post-breadcrumb-item.js +4 -6
- package/dist/collection/components/post-breadcrumbs/post-breadcrumbs.css +1 -1
- package/dist/collection/components/post-breadcrumbs/post-breadcrumbs.js +13 -9
- package/dist/collection/components/post-card-control/post-card-control.js +33 -16
- package/dist/collection/components/post-collapsible/post-collapsible.js +6 -1
- package/dist/collection/components/post-collapsible-trigger/post-collapsible-trigger.js +21 -9
- package/dist/collection/components/post-footer/post-footer.css +1 -1
- package/dist/collection/components/post-footer/post-footer.js +35 -15
- package/dist/collection/components/post-header/post-header.css +1 -1
- package/dist/collection/components/post-header/post-header.js +28 -16
- package/dist/collection/components/post-icon/post-icon.js +66 -54
- package/dist/collection/components/post-language-option/post-language-option.css +1 -1
- package/dist/collection/components/post-language-option/post-language-option.js +17 -13
- package/dist/collection/components/post-language-switch/post-language-switch.css +1 -1
- package/dist/collection/components/post-language-switch/post-language-switch.js +43 -24
- package/dist/collection/components/post-linkarea/post-linkarea.js +1 -1
- package/dist/collection/components/post-list/post-list.js +13 -4
- package/dist/collection/components/post-list-item/post-list-item.js +1 -1
- package/dist/collection/components/post-logo/post-logo.js +4 -5
- package/dist/collection/components/post-mainnavigation/post-mainnavigation.js +1 -1
- package/dist/collection/components/post-megadropdown/post-megadropdown.js +12 -6
- package/dist/collection/components/post-megadropdown-trigger/post-megadropdown-trigger.js +34 -20
- package/dist/collection/components/post-menu/post-menu.css +1 -1
- package/dist/collection/components/post-menu/post-menu.js +43 -21
- package/dist/collection/components/post-menu-item/post-menu-item.css +1 -0
- package/dist/collection/components/post-menu-item/post-menu-item.js +11 -1
- package/dist/collection/components/post-menu-trigger/post-menu-trigger.js +9 -5
- package/dist/collection/components/post-popover/post-popover.js +20 -6
- package/dist/collection/components/post-popovercontainer/post-popovercontainer.css +1 -1
- package/dist/collection/components/post-popovercontainer/post-popovercontainer.js +44 -16
- package/dist/collection/components/post-rating/post-rating.js +26 -6
- package/dist/collection/components/post-tab-header/post-tab-header.js +4 -6
- package/dist/collection/components/post-tab-panel/post-tab-panel.js +4 -6
- package/dist/collection/components/post-tabs/post-tabs.js +4 -3
- package/dist/collection/components/post-tag/post-tag.js +11 -9
- package/dist/collection/components/post-togglebutton/post-togglebutton.js +8 -3
- package/dist/collection/components/post-tooltip/post-tooltip.js +25 -7
- package/dist/collection/components/post-tooltip-trigger/post-tooltip-trigger.js +20 -12
- package/dist/collection/index.js +1 -37
- package/dist/collection/utils/breakpoints.js +38 -45
- package/dist/collection/utils/event-from.js +103 -0
- package/dist/collection/utils/index.js +1 -1
- package/dist/components/index.js +2315 -37
- package/dist/components/p-1KLiMO0w.js +3 -0
- package/dist/components/p-8U5GFtQP.js +105 -0
- package/dist/components/{post-menu2.js → p-BLhBouGz.js} +51 -30
- package/dist/{esm/index-ffccd040.js → components/p-CV7fm1rW.js} +1 -1
- package/dist/components/{post-menu-trigger2.js → p-CaPj3whI.js} +14 -12
- package/dist/components/{post-breadcrumb-item2.js → p-Cpaqct04.js} +9 -11
- package/dist/components/p-CtNCtg2z.js +114 -0
- package/dist/components/p-Cx0AiN2A.js +182 -0
- package/{loaders/post-collapsible-trigger2.js → dist/components/p-D3LhzIrC.js} +25 -14
- package/dist/components/{get-root.js → p-DBHo9yGF.js} +1 -1
- package/dist/components/p-DQuPPEca.js +31 -0
- package/dist/components/{post-accordion2.js → p-DlEtlaNu.js} +42 -29
- package/dist/components/{post-collapsible2.js → p-DphlfQse.js} +11 -8
- package/dist/components/{post-popovercontainer2.js → p-elg4VvHg.js} +246 -278
- package/{loaders/post-icon2.js → dist/components/p-fmA57Ivd.js} +52 -54
- package/dist/components/post-accordion-item.js +1 -1
- package/dist/components/post-accordion.js +1 -1
- package/dist/components/post-avatar.js +183 -1
- package/dist/components/post-back-to-top.js +115 -1
- package/dist/components/post-banner.js +120 -1
- package/dist/components/post-breadcrumb-item.js +1 -1
- package/dist/components/post-breadcrumbs.js +182 -1
- package/dist/components/post-card-control.js +322 -1
- package/dist/components/post-closebutton.js +37 -1
- package/dist/components/post-collapsible-trigger.js +1 -1
- package/dist/components/post-collapsible.js +1 -1
- package/dist/components/post-footer.js +112 -1
- package/dist/components/post-header.js +273 -1
- package/dist/components/post-icon.js +1 -1
- package/dist/components/post-language-option.js +96 -1
- package/dist/components/post-language-switch.js +154 -1
- package/dist/components/post-linkarea.js +41 -1
- package/dist/components/post-list-item.js +34 -1
- package/dist/components/post-list.js +57 -1
- package/dist/components/post-logo.js +54 -1
- package/dist/components/post-mainnavigation.js +181 -1
- package/dist/components/post-megadropdown-trigger.js +132 -1
- package/dist/components/post-megadropdown.js +194 -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 +184 -1
- package/dist/components/post-popovercontainer.js +1 -1
- package/dist/components/post-rating.js +148 -1
- package/dist/components/post-tab-header.js +48 -1
- package/dist/components/post-tab-panel.js +50 -1
- package/dist/components/post-tabs.js +186 -1
- package/dist/components/post-tag.js +82 -1
- package/dist/components/post-togglebutton.js +52 -1
- package/dist/components/post-tooltip-trigger.js +5218 -1
- package/dist/components/post-tooltip.js +110 -1
- package/dist/docs.d.ts +8 -0
- package/dist/docs.json +426 -118
- package/dist/esm/breakpoints-DyVir0ex.js +182 -0
- package/dist/esm/event-from-8U5GFtQP.js +105 -0
- package/{loaders/get-root.js → dist/esm/get-root-D9QC9-TY.js} +1 -1
- package/{loaders/index2.js → dist/esm/index-BWC0gtGU.js} +1 -1
- package/dist/esm/{index-f4d19816.js → index-CVhzhVv0.js} +1169 -309
- package/dist/esm/index.js +1 -31
- package/dist/esm/loader.js +3 -4
- package/dist/esm/package-1KLiMO0w.js +3 -0
- package/dist/esm/post-accordion_2.entry.js +180 -0
- package/dist/esm/post-avatar.entry.js +154 -5
- package/dist/esm/post-back-to-top.entry.js +89 -6
- package/dist/esm/post-banner.entry.js +85 -7
- package/dist/esm/post-breadcrumb-item_2.entry.js +65 -5
- package/dist/esm/post-breadcrumbs.entry.js +123 -5
- package/dist/esm/post-card-control.entry.js +286 -5
- package/dist/esm/post-closebutton_15.entry.js +4362 -10
- package/dist/esm/post-collapsible_2.entry.js +199 -7
- package/dist/esm/post-components.js +5 -5
- package/dist/esm/post-footer.entry.js +62 -5
- package/dist/esm/post-linkarea.entry.js +27 -3
- package/dist/esm/post-popover.entry.js +155 -6
- package/dist/esm/post-rating.entry.js +118 -5
- package/dist/esm/post-tab-header.entry.js +29 -6
- package/dist/esm/post-tab-panel.entry.js +31 -6
- package/dist/esm/post-tabs.entry.js +169 -5
- package/dist/esm/post-tag.entry.js +53 -5
- package/dist/esm/post-tooltip-trigger.entry.js +5199 -5
- package/dist/esm/post-tooltip.entry.js +81 -6
- package/dist/post-components/index.esm.js +0 -1
- package/dist/post-components/p-0d08ab13.entry.js +1 -0
- package/dist/post-components/p-1KLiMO0w.js +1 -0
- package/dist/post-components/p-1e006e29.entry.js +1 -0
- package/dist/post-components/p-3a5bdb7f.entry.js +1 -0
- package/dist/post-components/p-4214b85e.entry.js +1 -0
- package/dist/post-components/p-50916d48.entry.js +1 -0
- package/dist/post-components/p-5f4126d8.entry.js +1 -0
- package/dist/post-components/p-62982420.entry.js +1 -0
- package/dist/post-components/p-78f4dd12.entry.js +1 -0
- package/dist/post-components/p-7a7d237b.entry.js +1 -0
- package/dist/post-components/p-80174475.entry.js +1 -0
- package/dist/post-components/p-8U5GFtQP.js +1 -0
- package/dist/post-components/p-8d5a4218.entry.js +1 -0
- package/dist/post-components/p-8e89ccc1.entry.js +1 -0
- package/dist/post-components/p-9003674b.entry.js +1 -0
- package/dist/post-components/p-925aee3d.entry.js +1 -0
- package/dist/post-components/p-9b446561.entry.js +1 -0
- package/dist/post-components/p-9ec29527.entry.js +1 -0
- package/dist/post-components/{p-b176309b.js → p-BWC0gtGU.js} +1 -1
- package/dist/post-components/{p-6b31a76a.js → p-Bkp2QDth.js} +1 -1
- package/dist/post-components/p-CVhzhVv0.js +2 -0
- package/dist/post-components/p-DyVir0ex.js +1 -0
- package/dist/post-components/p-ec764922.entry.js +1 -0
- package/dist/post-components/p-fa550b4a.entry.js +1 -0
- package/dist/post-components/p-fb46e260.entry.js +1 -0
- package/dist/post-components/post-components.esm.js +1 -1
- package/dist/types/components/post-footer/post-footer.d.ts +7 -3
- package/dist/types/components/post-header/post-header.d.ts +1 -0
- package/dist/types/components/post-icon/post-icon.d.ts +0 -4
- package/dist/types/components/post-language-switch/post-language-switch.d.ts +1 -0
- package/dist/types/components/post-tag/post-tag.d.ts +1 -1
- package/dist/types/components.d.ts +61 -1
- package/dist/types/index.d.ts +10 -37
- package/dist/types/stencil-public-runtime.d.ts +29 -1
- package/dist/types/utils/breakpoints.d.ts +12 -7
- package/dist/types/utils/event-from.d.ts +9 -0
- package/dist/types/utils/index.d.ts +1 -1
- package/hydrate/index.d.ts +273 -0
- package/hydrate/index.js +32002 -0
- package/hydrate/index.mjs +31994 -0
- package/hydrate/package.json +12 -0
- package/package.json +45 -17
- package/dist/cjs/app-globals-3a1e7e63.js +0 -5
- package/dist/cjs/breakpoints-cdf1b747.js +0 -59
- package/dist/cjs/event-guard-efabc84f.js +0 -47
- package/dist/cjs/heading-levels-608d432e.js +0 -5
- package/dist/cjs/post-accordion-c433c493.js +0 -105
- package/dist/cjs/post-accordion-item-8d5a301d.js +0 -64
- package/dist/cjs/post-accordion-item.cjs.entry.js +0 -16
- package/dist/cjs/post-accordion.cjs.entry.js +0 -15
- package/dist/cjs/post-avatar-421043df.js +0 -162
- package/dist/cjs/post-back-to-top-3cca3803.js +0 -93
- package/dist/cjs/post-banner-2e99c9d8.js +0 -87
- package/dist/cjs/post-breadcrumbs-1be50860.js +0 -126
- package/dist/cjs/post-card-control-0bfdad92.js +0 -290
- package/dist/cjs/post-collapsible-trigger-4180b218.js +0 -190
- package/dist/cjs/post-footer-92adffac.js +0 -48
- package/dist/cjs/post-linkarea-26c457b3.js +0 -30
- package/dist/cjs/post-menu-item-d0a53c84.js +0 -68
- package/dist/cjs/post-popover-36cead3d.js +0 -150
- package/dist/cjs/post-rating-f50a9939.js +0 -109
- package/dist/cjs/post-tab-header-f47508da.js +0 -34
- package/dist/cjs/post-tab-panel-7c51798b.js +0 -36
- package/dist/cjs/post-tabs-2debea01.js +0 -173
- package/dist/cjs/post-tag-ac62c57f.js +0 -60
- package/dist/cjs/post-togglebutton-43c46511.js +0 -4491
- package/dist/cjs/post-tooltip-b7dcfb44.js +0 -74
- package/dist/cjs/post-tooltip-trigger-904061b6.js +0 -4685
- package/dist/collection/utils/event-guard.js +0 -43
- package/dist/components/breakpoints.js +0 -56
- package/dist/components/event-guard.js +0 -45
- package/dist/components/index2.js +0 -88
- package/dist/components/package.js +0 -3
- package/dist/components/post-accordion-item2.js +0 -103
- package/dist/components/post-avatar2.js +0 -190
- package/dist/components/post-back-to-top2.js +0 -118
- package/dist/components/post-banner2.js +0 -121
- package/dist/components/post-breadcrumbs2.js +0 -184
- package/dist/components/post-card-control2.js +0 -325
- package/dist/components/post-closebutton2.js +0 -39
- package/dist/components/post-collapsible-trigger2.js +0 -125
- package/dist/components/post-footer2.js +0 -90
- package/dist/components/post-header2.js +0 -397
- package/dist/components/post-icon2.js +0 -156
- package/dist/components/post-language-option2.js +0 -102
- package/dist/components/post-language-switch2.js +0 -143
- package/dist/components/post-linkarea2.js +0 -43
- package/dist/components/post-list-item2.js +0 -36
- package/dist/components/post-list2.js +0 -54
- package/dist/components/post-logo2.js +0 -57
- package/dist/components/post-mainnavigation2.js +0 -183
- package/dist/components/post-megadropdown-trigger2.js +0 -121
- package/dist/components/post-megadropdown2.js +0 -190
- package/dist/components/post-menu-item2.js +0 -27
- package/dist/components/post-popover2.js +0 -178
- package/dist/components/post-rating2.js +0 -138
- package/dist/components/post-tab-header2.js +0 -52
- package/dist/components/post-tab-panel2.js +0 -54
- package/dist/components/post-tabs2.js +0 -189
- package/dist/components/post-tag2.js +0 -88
- package/dist/components/post-togglebutton2.js +0 -51
- package/dist/components/post-tooltip-trigger2.js +0 -4703
- package/dist/components/post-tooltip2.js +0 -102
- package/dist/esm/app-globals-0f993ce5.js +0 -3
- package/dist/esm/breakpoints-7812702e.js +0 -56
- package/dist/esm/event-guard-538ee077.js +0 -45
- package/dist/esm/get-root-1b1af46f.js +0 -15
- package/dist/esm/heading-levels-5b7b4349.js +0 -3
- package/dist/esm/package-8503eaa8.js +0 -3
- package/dist/esm/post-accordion-9365faca.js +0 -103
- package/dist/esm/post-accordion-item-2dc8e3b7.js +0 -62
- package/dist/esm/post-accordion-item.entry.js +0 -8
- package/dist/esm/post-accordion.entry.js +0 -7
- package/dist/esm/post-avatar-4f73dc4d.js +0 -160
- package/dist/esm/post-back-to-top-8f759d32.js +0 -91
- package/dist/esm/post-banner-ad979275.js +0 -85
- package/dist/esm/post-breadcrumbs-a20336c7.js +0 -124
- package/dist/esm/post-card-control-3c77e778.js +0 -288
- package/dist/esm/post-collapsible-trigger-5fd0e193.js +0 -187
- package/dist/esm/post-footer-3e117b5a.js +0 -46
- package/dist/esm/post-linkarea-16a14609.js +0 -28
- package/dist/esm/post-menu-item-b1604fe4.js +0 -65
- package/dist/esm/post-popover-49096648.js +0 -148
- package/dist/esm/post-rating-405bee8f.js +0 -107
- package/dist/esm/post-tab-header-b228c217.js +0 -32
- package/dist/esm/post-tab-panel-98110b64.js +0 -34
- package/dist/esm/post-tabs-44d9313c.js +0 -171
- package/dist/esm/post-tag-99cc9616.js +0 -58
- package/dist/esm/post-togglebutton-ea73e63f.js +0 -4475
- package/dist/esm/post-tooltip-78cd2988.js +0 -72
- package/dist/esm/post-tooltip-trigger-bdb21c45.js +0 -4683
- package/dist/post-components/p-0889c759.js +0 -1
- package/dist/post-components/p-09dd5aa4.js +0 -1
- package/dist/post-components/p-0f9322e5.js +0 -8
- package/dist/post-components/p-11572299.js +0 -1
- package/dist/post-components/p-19a83519.entry.js +0 -1
- package/dist/post-components/p-1afb3c43.entry.js +0 -1
- package/dist/post-components/p-214cd032.js +0 -1
- package/dist/post-components/p-21e5b028.js +0 -1
- package/dist/post-components/p-2320305b.js +0 -1
- package/dist/post-components/p-247a1668.js +0 -1
- package/dist/post-components/p-2523f97b.entry.js +0 -1
- package/dist/post-components/p-2bd3a436.js +0 -1
- package/dist/post-components/p-2ce8fbf5.js +0 -1
- package/dist/post-components/p-2f879f4e.entry.js +0 -1
- package/dist/post-components/p-33e26845.entry.js +0 -1
- package/dist/post-components/p-38b1c71e.entry.js +0 -1
- package/dist/post-components/p-38d59732.js +0 -1
- package/dist/post-components/p-3a67f1ff.js +0 -1
- package/dist/post-components/p-41450b6c.entry.js +0 -1
- package/dist/post-components/p-4c23ed05.entry.js +0 -1
- package/dist/post-components/p-57746c40.js +0 -1
- package/dist/post-components/p-6313d72e.entry.js +0 -1
- package/dist/post-components/p-64e0b0fc.js +0 -1
- package/dist/post-components/p-658a2e34.entry.js +0 -1
- package/dist/post-components/p-722ffaae.js +0 -1
- package/dist/post-components/p-746d3cd3.entry.js +0 -1
- package/dist/post-components/p-79a2dad0.entry.js +0 -1
- package/dist/post-components/p-7dd1807c.js +0 -1
- package/dist/post-components/p-817fbeaf.js +0 -1
- package/dist/post-components/p-85950200.js +0 -1
- package/dist/post-components/p-8ebecf22.entry.js +0 -1
- package/dist/post-components/p-8ed1cb53.entry.js +0 -1
- package/dist/post-components/p-91244b25.js +0 -1
- package/dist/post-components/p-91675004.js +0 -1
- package/dist/post-components/p-94ebc430.js +0 -1
- package/dist/post-components/p-95727a4f.entry.js +0 -1
- package/dist/post-components/p-9e461613.js +0 -2
- package/dist/post-components/p-a844da3a.entry.js +0 -1
- package/dist/post-components/p-af900651.js +0 -1
- package/dist/post-components/p-b373659e.entry.js +0 -1
- package/dist/post-components/p-b500b245.js +0 -1
- package/dist/post-components/p-bf182745.entry.js +0 -1
- package/dist/post-components/p-c9b6f9e7.entry.js +0 -1
- package/dist/post-components/p-cb7d8f67.entry.js +0 -1
- package/dist/post-components/p-e1255160.js +0 -1
- package/dist/post-components/p-e28eb73a.js +0 -1
- package/dist/types/popover-fn.d.ts +0 -11
- package/dist/types/utils/event-guard.d.ts +0 -4
- package/loader/package.json +0 -11
- package/loaders/breakpoints.js +0 -56
- package/loaders/event-guard.js +0 -45
- package/loaders/fade.js +0 -11
- package/loaders/get-focusable-children.js +0 -35
- package/loaders/heading-levels.js +0 -3
- package/loaders/index.browser.js +0 -14
- package/loaders/index.d.ts +0 -108
- package/loaders/index.js +0 -39
- package/loaders/long-press-event.js +0 -264
- package/loaders/package.js +0 -3
- package/loaders/post-accordion-item.d.ts +0 -11
- package/loaders/post-accordion-item.js +0 -6
- package/loaders/post-accordion-item2.js +0 -103
- package/loaders/post-accordion.d.ts +0 -11
- package/loaders/post-accordion.js +0 -129
- package/loaders/post-avatar.d.ts +0 -11
- package/loaders/post-avatar.js +0 -193
- package/loaders/post-back-to-top.d.ts +0 -11
- package/loaders/post-back-to-top.js +0 -121
- package/loaders/post-banner.d.ts +0 -11
- package/loaders/post-banner.js +0 -124
- package/loaders/post-breadcrumb-item.d.ts +0 -11
- package/loaders/post-breadcrumb-item.js +0 -6
- package/loaders/post-breadcrumb-item2.js +0 -82
- package/loaders/post-breadcrumbs.d.ts +0 -11
- package/loaders/post-breadcrumbs.js +0 -187
- package/loaders/post-card-control.d.ts +0 -11
- package/loaders/post-card-control.js +0 -328
- package/loaders/post-closebutton.d.ts +0 -11
- package/loaders/post-closebutton.js +0 -42
- package/loaders/post-collapsible-trigger.d.ts +0 -11
- package/loaders/post-collapsible-trigger.js +0 -6
- package/loaders/post-collapsible.d.ts +0 -11
- package/loaders/post-collapsible.js +0 -6
- package/loaders/post-collapsible2.js +0 -108
- package/loaders/post-footer.d.ts +0 -11
- package/loaders/post-footer.js +0 -93
- package/loaders/post-header.d.ts +0 -11
- package/loaders/post-header.js +0 -400
- package/loaders/post-icon.d.ts +0 -11
- package/loaders/post-icon.js +0 -6
- package/loaders/post-language-option.d.ts +0 -11
- package/loaders/post-language-option.js +0 -105
- package/loaders/post-language-switch.d.ts +0 -11
- package/loaders/post-language-switch.js +0 -146
- package/loaders/post-linkarea.d.ts +0 -11
- package/loaders/post-linkarea.js +0 -46
- package/loaders/post-list-item.d.ts +0 -11
- package/loaders/post-list-item.js +0 -39
- package/loaders/post-list.d.ts +0 -11
- package/loaders/post-list.js +0 -57
- package/loaders/post-logo.d.ts +0 -11
- package/loaders/post-logo.js +0 -60
- package/loaders/post-mainnavigation.d.ts +0 -11
- package/loaders/post-mainnavigation.js +0 -186
- package/loaders/post-megadropdown-trigger.d.ts +0 -11
- package/loaders/post-megadropdown-trigger.js +0 -124
- package/loaders/post-megadropdown.d.ts +0 -11
- package/loaders/post-megadropdown.js +0 -193
- package/loaders/post-menu-item.d.ts +0 -11
- package/loaders/post-menu-item.js +0 -6
- package/loaders/post-menu-item2.js +0 -27
- package/loaders/post-menu-trigger.d.ts +0 -11
- package/loaders/post-menu-trigger.js +0 -6
- package/loaders/post-menu-trigger2.js +0 -109
- package/loaders/post-menu.d.ts +0 -11
- package/loaders/post-menu.js +0 -6
- package/loaders/post-menu2.js +0 -202
- package/loaders/post-popover.d.ts +0 -11
- package/loaders/post-popover.js +0 -181
- package/loaders/post-popovercontainer.d.ts +0 -11
- package/loaders/post-popovercontainer.js +0 -6
- package/loaders/post-popovercontainer2.js +0 -3051
- package/loaders/post-rating.d.ts +0 -11
- package/loaders/post-rating.js +0 -141
- package/loaders/post-tab-header.d.ts +0 -11
- package/loaders/post-tab-header.js +0 -55
- package/loaders/post-tab-panel.d.ts +0 -11
- package/loaders/post-tab-panel.js +0 -57
- package/loaders/post-tabs.d.ts +0 -11
- package/loaders/post-tabs.js +0 -192
- package/loaders/post-tag.d.ts +0 -11
- package/loaders/post-tag.js +0 -91
- package/loaders/post-togglebutton.d.ts +0 -11
- package/loaders/post-togglebutton.js +0 -54
- package/loaders/post-tooltip-trigger.d.ts +0 -11
- package/loaders/post-tooltip-trigger.js +0 -4706
- package/loaders/post-tooltip.d.ts +0 -11
- package/loaders/post-tooltip.js +0 -105
- package/loaders/slide.js +0 -25
- package/loaders/switch-variants.js +0 -3
- /package/dist/cjs/{fade-72d5ef55.js → fade-nS5zzDQS.js} +0 -0
- /package/dist/cjs/{index-2b2b85e5.js → index-DtvYdwe1.js} +0 -0
- /package/dist/cjs/{index.browser-4af21c17.js → index.browser-Doj636JV.js} +0 -0
- /package/dist/cjs/{long-press-event-6e62d113.js → long-press-event-Q8jMUNXD.js} +0 -0
- /package/dist/cjs/{placement-b2bb6ec4.js → placement-qEFR9hmI.js} +0 -0
- /package/dist/cjs/{slide-cd1f09b3.js → slide-CbBL7A8w.js} +0 -0
- /package/dist/components/{index.browser.js → p-BLchVpF6.js} +0 -0
- /package/dist/components/{slide.js → p-BuLMaH5t.js} +0 -0
- /package/dist/components/{get-focusable-children.js → p-C35MCWIp.js} +0 -0
- /package/dist/components/{long-press-event.js → p-C_2k3G1c.js} +0 -0
- /package/dist/components/{switch-variants.js → p-DjIHLduJ.js} +0 -0
- /package/dist/components/{fade.js → p-SbIC4aZX.js} +0 -0
- /package/dist/components/{heading-levels.js → p-r4txK0AC.js} +0 -0
- /package/dist/esm/{fade-1f3cacf4.js → fade-SbIC4aZX.js} +0 -0
- /package/dist/esm/{index.browser-ff103197.js → index.browser-BLchVpF6.js} +0 -0
- /package/dist/esm/{long-press-event-04d24397.js → long-press-event-C_2k3G1c.js} +0 -0
- /package/dist/esm/{placement-8d56605d.js → placement-DRiVosES.js} +0 -0
- /package/dist/esm/{slide-cd2850ee.js → slide-BuLMaH5t.js} +0 -0
- /package/dist/post-components/{p-c65f32b0.js → p-BLchVpF6.js} +0 -0
- /package/dist/post-components/{p-9b052461.js → p-BuLMaH5t.js} +0 -0
- /package/dist/post-components/{p-8db32dab.js → p-C_2k3G1c.js} +0 -0
- /package/dist/post-components/{p-59a38c23.js → p-DRiVosES.js} +0 -0
- /package/dist/post-components/{p-64e3de38.js → p-SbIC4aZX.js} +0 -0
package/dist/esm/index.js
CHANGED
|
@@ -1,31 +1 @@
|
|
|
1
|
-
|
|
2
|
-
export { P as PostAccordionItem } from './post-accordion-item-2dc8e3b7.js';
|
|
3
|
-
export { P as PostAvatar } from './post-avatar-4f73dc4d.js';
|
|
4
|
-
export { P as PostBackToTop } from './post-back-to-top-8f759d32.js';
|
|
5
|
-
export { P as PostBanner } from './post-banner-ad979275.js';
|
|
6
|
-
export { P as PostBreadcrumbs } from './post-breadcrumbs-a20336c7.js';
|
|
7
|
-
export { P as PostBreadcrumbItem, a as PostMenuItem } from './post-menu-item-b1604fe4.js';
|
|
8
|
-
export { P as PostCardControl } from './post-card-control-3c77e778.js';
|
|
9
|
-
export { P as PostClosebutton, a as PostHeader, b as PostIcon, c as PostLanguageOption, d as PostLanguageSwitch, e as PostList, f as PostListItem, g as PostLogo, h as PostMainnavigation, i as PostMegadropdown, j as PostMegadropdownTrigger, k as PostMenu, l as PostMenuTrigger, m as PostPopovercontainer, n as PostTogglebutton } from './post-togglebutton-ea73e63f.js';
|
|
10
|
-
export { P as PostCollapsible, a as PostCollapsibleTrigger } from './post-collapsible-trigger-5fd0e193.js';
|
|
11
|
-
export { P as PostFooter } from './post-footer-3e117b5a.js';
|
|
12
|
-
export { P as PostLinkarea } from './post-linkarea-16a14609.js';
|
|
13
|
-
export { P as PostPopover } from './post-popover-49096648.js';
|
|
14
|
-
export { P as PostRating } from './post-rating-405bee8f.js';
|
|
15
|
-
export { P as PostTabs } from './post-tabs-44d9313c.js';
|
|
16
|
-
export { P as PostTabHeader } from './post-tab-header-b228c217.js';
|
|
17
|
-
export { P as PostTabPanel } from './post-tab-panel-98110b64.js';
|
|
18
|
-
export { P as PostTag } from './post-tag-99cc9616.js';
|
|
19
|
-
export { P as PostTooltip } from './post-tooltip-78cd2988.js';
|
|
20
|
-
export { P as PostTooltipTrigger } from './post-tooltip-trigger-bdb21c45.js';
|
|
21
|
-
import './index-f4d19816.js';
|
|
22
|
-
import './package-8503eaa8.js';
|
|
23
|
-
import './heading-levels-5b7b4349.js';
|
|
24
|
-
import './index-ffccd040.js';
|
|
25
|
-
import './breakpoints-7812702e.js';
|
|
26
|
-
import './event-guard-538ee077.js';
|
|
27
|
-
import './index.browser-ff103197.js';
|
|
28
|
-
import './slide-cd2850ee.js';
|
|
29
|
-
import './fade-1f3cacf4.js';
|
|
30
|
-
import './placement-8d56605d.js';
|
|
31
|
-
import './get-root-1b1af46f.js';
|
|
1
|
+
|
package/dist/esm/loader.js
CHANGED
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
import { b as bootstrapLazy } from './index-
|
|
2
|
-
export { s as setNonce } from './index-
|
|
3
|
-
import { g as globalScripts } from './app-globals-0f993ce5.js';
|
|
1
|
+
import { g as globalScripts, b as bootstrapLazy } from './index-CVhzhVv0.js';
|
|
2
|
+
export { s as setNonce } from './index-CVhzhVv0.js';
|
|
4
3
|
|
|
5
4
|
const defineCustomElements = async (win, options) => {
|
|
6
5
|
if (typeof window === 'undefined') return undefined;
|
|
7
6
|
await globalScripts();
|
|
8
|
-
return bootstrapLazy([["post-
|
|
7
|
+
return bootstrapLazy([["post-closebutton_15",[[1,"post-language-switch",{"caption":[1],"description":[1],"variant":[1],"activeLang":[32]},[[0,"postChange","handlePostChange"],[0,"postLanguageOptionInitiallyActive","handleInitiallyActive"]],{"caption":["validateCaption"],"description":["validateDescription"],"variant":["validateVariant"]}],[1,"post-closebutton"],[4,"post-mainnavigation",{"canScrollLeft":[32],"canScrollRight":[32]},[[9,"mouseup","stopScrolling"],[9,"mouseleave","stopScrolling"]]],[1,"post-header",{"device":[32],"mobileMenuExtended":[32],"megadropdownOpen":[32],"toggleMobileMenu":[64]},null,{"device":["lockBody"],"mobileMenuExtended":["lockBody"]}],[4,"post-language-option",{"code":[1],"active":[1540],"variant":[1],"name":[1],"url":[1],"select":[64]},null,{"code":["validateCode"],"variant":["validateVariant"],"name":["validateName"],"url":["validateUrl"]}],[4,"post-list",{"titleHidden":[4,"title-hidden"],"horizontal":[516],"titleId":[32]}],[1,"post-list-item"],[1,"post-logo",{"url":[1]},null,{"url":["validateUrl"]}],[4,"post-megadropdown",{"device":[32],"isVisible":[32],"animationClass":[32],"toggle":[64],"show":[64],"hide":[64],"focusFirst":[64]}],[4,"post-megadropdown-trigger",{"for":[1],"ariaExpanded":[32]},null,{"for":["validateControlFor"]}],[1,"post-togglebutton",{"toggled":[1028]}],[1,"post-menu",{"placement":[1],"isVisible":[32],"toggle":[64],"show":[64],"hide":[64]},null,{"placement":["validatePlacement"]}],[4,"post-menu-trigger",{"for":[513],"ariaExpanded":[32]},null,{"for":["validateControlFor"]}],[4,"post-popovercontainer",{"placement":[1],"edgeGap":[2,"edge-gap"],"animation":[1],"arrow":[4],"manualClose":[4,"manual-close"],"safeSpace":[513,"safe-space"],"show":[64],"hide":[64],"toggle":[64]},null,{"placement":["validatePlacement"],"edgeGap":["validateEdgeGap"],"safeSpace":["validateSafeSpace"]}],[1,"post-icon",{"animation":[1],"base":[1],"flipH":[4,"flip-h"],"flipV":[4,"flip-v"],"name":[513],"rotate":[2],"scale":[2]},null,{"animation":["validateAnimation"],"base":["validateBase"],"name":["validateName"],"rotate":["validateRotate"],"scale":["validateScale"]}]]],["post-breadcrumbs",[[1,"post-breadcrumbs",{"homeUrl":[1,"home-url"],"homeText":[1,"home-text"],"breadcrumbItems":[32],"isConcatenated":[32],"lastWindowWidth":[32]},null,{"homeUrl":["validateHomeUrl"],"homeText":["validateHomeText"]}]]],["post-footer",[[1,"post-footer",{"label":[1],"device":[32],"gridSlotDisplayed":[32]},null,{"label":["validateLabel"]}]]],["post-back-to-top",[[1,"post-back-to-top",{"label":[513],"belowFold":[32]},null,{"label":["validateLabel"],"belowFold":["watchBelowFold"]}]]],["post-banner",[[1,"post-banner",{"dismissible":[4],"dismissLabel":[1,"dismiss-label"],"icon":[1],"type":[1],"bannerId":[32],"classes":[32],"hasActions":[32],"hasHeading":[32],"onDismissButtonClick":[32],"dismiss":[64]},null,{"dismissible":["checkDismissible"],"icon":["validateIcon"],"type":["validateType"]}]]],["post-card-control",[[65,"post-card-control",{"label":[513],"description":[1],"type":[1],"name":[1],"value":[1],"checked":[1028],"disabled":[1028],"validity":[1028],"icon":[1],"focused":[32],"reset":[64],"groupReset":[64]},null,{"label":["validateControlLabel"],"description":["validateControlDescription"],"type":["validateControlType"],"name":["validateControlName"],"value":["validateControlValue"],"icon":["validateControlIcon"],"checked":["updateControlChecked"],"disabled":["updateControlDisabled"]}]]],["post-popover",[[1,"post-popover",{"placement":[1],"closeButtonCaption":[1,"close-button-caption"],"arrow":[4],"show":[64],"hide":[64],"toggle":[64]},null,{"placement":["validatePlacement"],"closeButtonCaption":["validateCloseButtonCaption"]}]]],["post-rating",[[1,"post-rating",{"label":[1],"stars":[2],"currentRating":[1026,"current-rating"],"readonly":[4],"hoveredIndex":[32]},null,{"label":["validateLabel"],"stars":["validateStars"],"currentRating":["validateCurrentRating"]}]]],["post-tag",[[1,"post-tag",{"variant":[1],"size":[1],"icon":[1],"classes":[32]},null,{"variant":["variantChanged"],"size":["sizeChanged"],"icon":["validateName"]}]]],["post-tooltip",[[1,"post-tooltip",{"placement":[1],"arrow":[4],"animation":[1],"open":[1540],"show":[64],"hide":[64],"toggle":[64]},null,{"placement":["validatePlacement"]}]]],["post-avatar",[[1,"post-avatar",{"firstname":[513],"lastname":[1],"userid":[1],"email":[1],"slottedImage":[32],"avatarType":[32],"imageUrl":[32],"imageAlt":[32],"initials":[32]},null,{"firstname":["validateFirstname"],"lastname":["validateLastname"],"userid":["validateUserid"],"email":["validateEmail"]}]]],["post-linkarea",[[1,"post-linkarea"]]],["post-tab-header",[[1,"post-tab-header",{"panel":[513],"tabId":[32]},null,{"panel":["validateFor"]}]]],["post-tab-panel",[[1,"post-tab-panel",{"name":[513],"panelId":[32]},null,{"name":["validateName"]}]]],["post-tabs",[[1,"post-tabs",{"activePanel":[1,"active-panel"],"show":[64]}]]],["post-tooltip-trigger",[[1,"post-tooltip-trigger",{"for":[513],"delay":[2]},null,{"for":["validateControlFor"]}]]],["post-collapsible_2",[[1,"post-collapsible",{"collapsed":[1028],"toggle":[64]},null,{"collapsed":["collapsedChange"]}],[1,"post-collapsible-trigger",{"for":[513],"update":[64]},null,{"for":["validateAriaAttributes"]}]]],["post-accordion_2",[[1,"post-accordion-item",{"collapsed":[1028],"headingLevel":[2,"heading-level"],"id":[32],"slottedLogo":[32],"toggle":[64]},[[2,"postToggle","onCollapseToggle"]],{"headingLevel":["validateHeadingLevel"]}],[1,"post-accordion",{"headingLevel":[2,"heading-level"],"multiple":[4],"toggle":[64],"expandAll":[64],"collapseAll":[64]},[[0,"postToggle","collapseToggleHandler"]],{"headingLevel":["validateHeadingLevel"]}]]],["post-breadcrumb-item_2",[[1,"post-breadcrumb-item",{"url":[1],"fullUrl":[32]},null,{"url":["validateUrl"]}],[4,"post-menu-item"]]]], options);
|
|
9
8
|
};
|
|
10
9
|
|
|
11
10
|
export { defineCustomElements };
|
|
@@ -0,0 +1,180 @@
|
|
|
1
|
+
import { r as registerInstance, h, H as Host, a as getElement } from './index-CVhzhVv0.js';
|
|
2
|
+
import { v as version } from './package-1KLiMO0w.js';
|
|
3
|
+
import { d as checkRequiredAndOneOf, e as checkEmptyOrOneOf } from './index-BWC0gtGU.js';
|
|
4
|
+
import './breakpoints-DyVir0ex.js';
|
|
5
|
+
import { E as EventFrom } from './event-from-8U5GFtQP.js';
|
|
6
|
+
import { n as nanoid } from './index.browser-BLchVpF6.js';
|
|
7
|
+
|
|
8
|
+
const HEADING_LEVELS = [1, 2, 3, 4, 5, 6];
|
|
9
|
+
|
|
10
|
+
const postAccordionCss = ":host{display:block}::slotted(post-accordion-item){display:block}::slotted(post-accordion-item:not(:only-of-type:first-of-type)){margin-block-start:calc(var(--post-device-border-width-default)*-1)}::slotted(post-accordion-item:where(:only-of-type,:not(:first-of-type))){--post-accordion-button-border-top-width:0}";
|
|
11
|
+
|
|
12
|
+
var __decorate$1 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
13
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
14
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
|
|
15
|
+
r = Reflect.decorate(decorators, target, key, desc);
|
|
16
|
+
else
|
|
17
|
+
for (var i = decorators.length - 1; i >= 0; i--)
|
|
18
|
+
if (d = decorators[i])
|
|
19
|
+
r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
20
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
21
|
+
};
|
|
22
|
+
const PostAccordion = class {
|
|
23
|
+
constructor(hostRef) {
|
|
24
|
+
registerInstance(this, hostRef);
|
|
25
|
+
this.expandedItems = new Set();
|
|
26
|
+
/**
|
|
27
|
+
* If `true`, multiple `post-accordion-item` can be open at the same time.
|
|
28
|
+
*/
|
|
29
|
+
this.multiple = false;
|
|
30
|
+
}
|
|
31
|
+
validateHeadingLevel() {
|
|
32
|
+
checkRequiredAndOneOf(this, 'headingLevel', HEADING_LEVELS);
|
|
33
|
+
this.accordionItems.forEach(item => {
|
|
34
|
+
item.setAttribute('heading-level', String(this.headingLevel));
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
componentWillLoad() {
|
|
38
|
+
this.registerAccordionItems();
|
|
39
|
+
}
|
|
40
|
+
componentDidLoad() {
|
|
41
|
+
this.validateHeadingLevel();
|
|
42
|
+
}
|
|
43
|
+
collapseToggleHandler(event) {
|
|
44
|
+
const toggledAccordionItem = event.target;
|
|
45
|
+
const isClosing = this.expandedItems.has(toggledAccordionItem);
|
|
46
|
+
if (isClosing) {
|
|
47
|
+
this.expandedItems.delete(toggledAccordionItem);
|
|
48
|
+
}
|
|
49
|
+
else {
|
|
50
|
+
this.expandedItems.add(toggledAccordionItem);
|
|
51
|
+
}
|
|
52
|
+
if (this.multiple || isClosing)
|
|
53
|
+
return;
|
|
54
|
+
// Close other open accordion items to ensure only one is open at a time
|
|
55
|
+
Array.from(this.expandedItems.values())
|
|
56
|
+
.filter(item => item !== toggledAccordionItem)
|
|
57
|
+
.forEach(item => {
|
|
58
|
+
item.toggle(false);
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Toggles the `post-accordion-item` with the given id.
|
|
63
|
+
*/
|
|
64
|
+
async toggle(id) {
|
|
65
|
+
const itemToToggle = this.accordionItems.find(item => item.id === id);
|
|
66
|
+
if (!itemToToggle)
|
|
67
|
+
throw new Error(`No post-accordion-item found with id #${id}.`);
|
|
68
|
+
await itemToToggle.toggle();
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Expands all `post-accordion-item`.
|
|
72
|
+
*
|
|
73
|
+
* If `multiple="true"` is not set and all items are closed, it will open the first one.
|
|
74
|
+
* Otherwise, it will keep the opened one.
|
|
75
|
+
*/
|
|
76
|
+
async expandAll() {
|
|
77
|
+
if (this.multiple) {
|
|
78
|
+
await Promise.all(this.accordionItems.map(item => item.toggle(true)));
|
|
79
|
+
}
|
|
80
|
+
else if (!this.expandedItems.size) {
|
|
81
|
+
await this.accordionItems[0].toggle(true);
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Collapses all `post-accordion-item`.
|
|
86
|
+
*/
|
|
87
|
+
async collapseAll() {
|
|
88
|
+
await Promise.all(this.accordionItems.map(item => item.toggle(false)));
|
|
89
|
+
}
|
|
90
|
+
registerAccordionItems() {
|
|
91
|
+
this.accordionItems = Array.from(this.host.querySelectorAll('post-accordion-item'));
|
|
92
|
+
this.accordionItems
|
|
93
|
+
.filter(item => {
|
|
94
|
+
return !item.collapsed || this.expandedItems.has(item);
|
|
95
|
+
})
|
|
96
|
+
.forEach((item, index) => {
|
|
97
|
+
if (!this.multiple && index !== 0) {
|
|
98
|
+
item.setAttribute('collapsed', '');
|
|
99
|
+
return;
|
|
100
|
+
}
|
|
101
|
+
this.expandedItems.add(item);
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
render() {
|
|
105
|
+
return (h(Host, { key: 'ab800b580f0dd591a9413305afa282ff7e697759', "data-version": version }, h("div", { key: '258ba1dc99811545c0dd9796ef521a05a0c87dda', class: "accordion" }, h("slot", { key: '2ad7482962316723f5c8ff334bad7cc33b6fa953', onSlotchange: () => this.registerAccordionItems() }))));
|
|
106
|
+
}
|
|
107
|
+
get host() { return getElement(this); }
|
|
108
|
+
static get watchers() { return {
|
|
109
|
+
"headingLevel": ["validateHeadingLevel"]
|
|
110
|
+
}; }
|
|
111
|
+
};
|
|
112
|
+
__decorate$1([
|
|
113
|
+
EventFrom('post-accordion-item')
|
|
114
|
+
], PostAccordion.prototype, "collapseToggleHandler", null);
|
|
115
|
+
PostAccordion.style = postAccordionCss;
|
|
116
|
+
|
|
117
|
+
const postAccordionItemCss = ".accordion-item::after{display:block;content:\"\";margin-block-start:calc(var(--post-device-border-width-default)*-1);border-block-end:var(--post-device-border-width-default) var(--post-core-border-style-solid) var(--post-scheme-color-interactive-primary-enabled-stroke)}.accordion-item:has(.accordion-button:hover)::after{border-color:var(--post-scheme-color-interactive-primary-hover-stroke)}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.accordion-item:has(.accordion-button:hover)::after{border-color:Highlight}}.accordion-header{color:var(--post-scheme-color-interactive-primary-enabled-fg1);font-size:var(--post-device-font-size-5);margin:0;line-height:var(--post-device-line-height-heading);font-weight:var(--post-device-font-weight-black)}.accordion-button{padding:0;overflow:visible;border:0;background:none;color:var(--post-scheme-color-interactive-button-secondary-enabled-fg);font:inherit;-webkit-user-select:none;user-select:none;appearance:button;display:flex;position:relative;width:100%;align-items:center;text-align:start;gap:var(--post-device-spacing-gap-7);padding:calc(var(--post-device-spacing-padding-19) + var(--post-device-border-width-default)) calc(var(--post-device-spacing-padding-5) + var(--post-device-border-width-default));cursor:pointer}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.accordion-button{background-color:ButtonFace !important}.accordion-button:hover{background-color:Highlight !important}}.accordion-button::before{display:block;position:absolute;content:\"\";inset:0;inset-block-end:auto;border-block-start-width:var(--post-accordion-button-border-top-width, var(--post-device-border-width-default));border-block-start-style:var(--post-core-border-style-solid);border-block-start-color:var(--post-scheme-color-interactive-primary-enabled-stroke)}.accordion-button{outline-offset:var(--post-device-spacing-padding-2) !important;outline:var(--post-scheme-color-interactive-focus-stroke) none var(--post-device-border-width-focus) !important}.accordion-button:is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-style:var(--post-core-border-style-solid) !important;border-radius:var(--post-device-border-radius-focus)}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.accordion-button:is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-color:Highlight !important}}@supports not selector(:has(:focus-visible)){.accordion-button:is(:focus-visible,:focus-within,.pretend-focus){outline-style:var(--post-core-border-style-solid) !important;border-radius:var(--post-device-border-radius-focus)}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.accordion-button:is(:focus-visible,:focus-within,.pretend-focus){outline-color:Highlight !important}}}.accordion-button slot::slotted(span[slot=header]){flex-grow:1}.accordion-button post-icon{flex:none;width:var(--post-core-dimension-24);aspect-ratio:1;transition:transform 250ms cubic-bezier(0.4, 0, 0.2, 1)}.accordion-button.collapsed{padding-block-start:calc(var(--post-device-spacing-padding-19) + var(--post-device-border-width-default));padding-block-end:calc(var(--post-device-spacing-padding-19) + var(--post-device-border-width-default))}.accordion-button.collapsed post-icon{transform:rotate(-180deg)}.accordion-button:hover{color:var(--post-scheme-color-interactive-primary-hover-fg1)}.accordion-button>::slotted(.text-truncate){display:block}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.accordion-button:hover,.accordion-button:focus-visible{color:Highlight}}.accordion-body{padding-block-start:var(--post-device-spacing-padding-15);padding-block-end:calc(var(--post-device-spacing-padding-block-25) + var(--post-device-border-width-default));padding-inline:var(--post-device-spacing-padding-5)}.logo-container{display:none;width:var(--post-device-sizing-logo-1);aspect-ratio:1}.logo-container.has-image{display:block}.logo-container slot::slotted(img){display:block;width:100%;height:100%;object-fit:cover}.accordion-button>::slotted(:first-child),.accordion-body>::slotted(:first-child){margin-block-start:0 !important}.accordion-button>::slotted(:last-child),.accordion-body>::slotted(:last-child){margin-block-end:0 !important}";
|
|
118
|
+
|
|
119
|
+
var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
120
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
121
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
|
|
122
|
+
r = Reflect.decorate(decorators, target, key, desc);
|
|
123
|
+
else
|
|
124
|
+
for (var i = decorators.length - 1; i >= 0; i--)
|
|
125
|
+
if (d = decorators[i])
|
|
126
|
+
r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
127
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
128
|
+
};
|
|
129
|
+
const PostAccordionItem = class {
|
|
130
|
+
constructor(hostRef) {
|
|
131
|
+
registerInstance(this, hostRef);
|
|
132
|
+
/**
|
|
133
|
+
* If `true`, the element is collapsed otherwise it is displayed.
|
|
134
|
+
*/
|
|
135
|
+
this.collapsed = false;
|
|
136
|
+
}
|
|
137
|
+
validateHeadingLevel() {
|
|
138
|
+
checkEmptyOrOneOf(this, 'headingLevel', HEADING_LEVELS);
|
|
139
|
+
}
|
|
140
|
+
componentWillLoad() {
|
|
141
|
+
this.id = this.host.id || `p${nanoid(6)}`;
|
|
142
|
+
}
|
|
143
|
+
componentDidLoad() {
|
|
144
|
+
this.validateHeadingLevel();
|
|
145
|
+
}
|
|
146
|
+
// Capture to make sure the "collapsed" property is updated before the event is consumed
|
|
147
|
+
onCollapseToggle(event) {
|
|
148
|
+
this.collapsed = !event.detail;
|
|
149
|
+
}
|
|
150
|
+
/**
|
|
151
|
+
* Triggers the collapse programmatically.
|
|
152
|
+
*/
|
|
153
|
+
async toggle(force) {
|
|
154
|
+
return this.collapsible.toggle(force);
|
|
155
|
+
}
|
|
156
|
+
onSlotLogoChange() {
|
|
157
|
+
this.slottedLogo = this.host.querySelector('img[slot="logo"]');
|
|
158
|
+
}
|
|
159
|
+
componentWillRender() {
|
|
160
|
+
this.slottedLogo = this.host.querySelector('img[slot="logo"]');
|
|
161
|
+
}
|
|
162
|
+
render() {
|
|
163
|
+
const headingLevel = this.host.closest('post-accordion')?.getAttribute('heading-level');
|
|
164
|
+
const HeadingTag = `h${headingLevel ?? this.headingLevel ?? 2}`;
|
|
165
|
+
return (h(Host, { key: 'd7176f314fa0f907bd5b69555a2f25561f3875cf', id: this.id, "data-version": version }, h("div", { key: '978c451798e5bafe38ef57be29818f02ccf49dab', part: "accordion-item", class: "accordion-item" }, h("post-collapsible-trigger", { key: '615da8a2ad5fb3c3fd1e5e0c2c8ee9a260a34263', for: `${this.id}--collapse` }, h(HeadingTag, { key: '9c270ded36f1e1b1b466ba8c4ca529ab26368d5c', class: "accordion-header", id: `${this.id}--header` }, h("button", { key: 'ddf278d1ccf6d78932ae4c6a9617d5852fb73064', type: "button", class: `accordion-button${this.collapsed ? ' collapsed' : ''}`, part: "button" }, h("span", { key: '3989145bdbe0a313c6ed10220d2089c89688d613', class: {
|
|
166
|
+
'logo-container': true,
|
|
167
|
+
'has-image': !!this.slottedLogo,
|
|
168
|
+
} }, h("slot", { key: 'dd053bf73234db3bac772bf730003b4f2cc030cb', name: "logo", onSlotchange: this.onSlotLogoChange.bind(this) })), h("slot", { key: '9ac06513d55828a9d7a3552aa66c9946fde7c793', name: "header" }), h("post-icon", { key: 'fb46c528581e1a149706fd9e124857cc288747f8', name: "2051" })))), h("post-collapsible", { key: '996887d6a0098a37dbac8d5edb950900f57d15f7', id: `${this.id}--collapse`, collapsed: this.collapsed, ref: el => (this.collapsible = el) }, h("div", { key: '21fa64a007cf0da4e0c0cf56f5862641d016517a', class: "accordion-body", part: "body" }, h("slot", { key: '2a9f7731183e35c37523e079d437612dbda1a01b' }))))));
|
|
169
|
+
}
|
|
170
|
+
get host() { return getElement(this); }
|
|
171
|
+
static get watchers() { return {
|
|
172
|
+
"headingLevel": ["validateHeadingLevel"]
|
|
173
|
+
}; }
|
|
174
|
+
};
|
|
175
|
+
__decorate([
|
|
176
|
+
EventFrom('post-accordion-item')
|
|
177
|
+
], PostAccordionItem.prototype, "onCollapseToggle", null);
|
|
178
|
+
PostAccordionItem.style = postAccordionItemCss;
|
|
179
|
+
|
|
180
|
+
export { PostAccordion as post_accordion, PostAccordionItem as post_accordion_item };
|
|
@@ -1,5 +1,154 @@
|
|
|
1
|
-
|
|
2
|
-
import './
|
|
3
|
-
import './
|
|
4
|
-
import './
|
|
5
|
-
|
|
1
|
+
import { r as registerInstance, h, H as Host, a as getElement } from './index-CVhzhVv0.js';
|
|
2
|
+
import { v as version } from './package-1KLiMO0w.js';
|
|
3
|
+
import { c as checkRequiredAndType, a as checkEmptyOrType, b as checkEmptyOrPattern } from './index-BWC0gtGU.js';
|
|
4
|
+
import './breakpoints-DyVir0ex.js';
|
|
5
|
+
|
|
6
|
+
const postAvatarCss = "@keyframes popIn{from{transform:scale(0.9);opacity:0;transition-property:transform,opacity,overlay,display;transition-behavior:allow-discrete;transition-duration:var(--post-transition-duration, 0.35s);transition-timing-function:linear(0, 0.007, 0.029 2.2%, 0.118 4.7%, 0.625 14.4%, 0.826 19%, 0.902, 0.962, 1.008 26.1%, 1.041 28.7%, 1.064 32.1%, 1.07 36%, 1.061 40.5%, 1.015 53.4%, 0.999 61.6%, 0.995 71.2%, 1)}to{opacity:1;transform:scale(1)}}:host{--post-avatar-bg:var(--post-scheme-color-interactive-primary-enabled-bg2);--post-avatar-fg:var(--post-scheme-color-interactive-primary-enabled-fg3);display:inline-flex;position:relative;width:var(--post-device-sizing-interactive-icon-size3);height:var(--post-device-sizing-interactive-icon-size3);background-color:var(--post-scheme-color-interactive-primary-enabled-stroke3);border:var(--post-device-border-width-default) solid var(--post-scheme-color-interactive-primary-enabled-stroke3);border-radius:var(--post-device-border-radius-round);font-size:var(--post-device-font-size-8);vertical-align:top;line-height:1}:host::after{display:block;content:\"\";position:absolute;inset:0;z-index:1;border-radius:inherit}*,*::before,*::after{box-sizing:border-box}slot,img,::slotted(img){display:block;width:100%;height:100%}img,::slotted(img){border-radius:var(--post-device-border-radius-round)}::slotted(:not(img)){display:none !important}.initials{display:flex;justify-content:center;align-items:center;position:relative;z-index:2;width:100%;height:100%;background-color:var(--post-avatar-bg);border-radius:var(--post-device-border-radius-round);color:var(--post-avatar-fg);text-transform:uppercase}.initials span{width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border:0 !important}.initials span:not(caption){position:absolute !important}";
|
|
7
|
+
|
|
8
|
+
// https://docs.gravatar.com/api/avatars/images/
|
|
9
|
+
const GRAVATAR_DEFAULT = '404';
|
|
10
|
+
const GRAVATAR_RATING = 'g';
|
|
11
|
+
const GRAVATAR_SIZE = 80;
|
|
12
|
+
const GRAVATAR_BASE_URL = `https://www.gravatar.com/avatar/{email}?s=${GRAVATAR_SIZE}&d=${GRAVATAR_DEFAULT}&r=${GRAVATAR_RATING}`;
|
|
13
|
+
const emailPattern = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/;
|
|
14
|
+
var AvatarType;
|
|
15
|
+
(function (AvatarType) {
|
|
16
|
+
AvatarType["Slotted"] = "slotted";
|
|
17
|
+
AvatarType["Image"] = "image";
|
|
18
|
+
AvatarType["Initials"] = "initials";
|
|
19
|
+
AvatarType[AvatarType["Null"] = null] = "Null";
|
|
20
|
+
})(AvatarType || (AvatarType = {}));
|
|
21
|
+
const PostAvatar = class {
|
|
22
|
+
constructor(hostRef) {
|
|
23
|
+
registerInstance(this, hostRef);
|
|
24
|
+
this.avatarType = null;
|
|
25
|
+
this.imageUrl = '';
|
|
26
|
+
this.imageAlt = '';
|
|
27
|
+
this.initials = '';
|
|
28
|
+
}
|
|
29
|
+
validateFirstname() {
|
|
30
|
+
checkRequiredAndType(this, 'firstname', 'string');
|
|
31
|
+
}
|
|
32
|
+
validateLastname() {
|
|
33
|
+
checkEmptyOrType(this, 'lastname', 'string');
|
|
34
|
+
}
|
|
35
|
+
validateUserid() {
|
|
36
|
+
checkEmptyOrType(this, 'userid', 'string');
|
|
37
|
+
}
|
|
38
|
+
validateEmail() {
|
|
39
|
+
if (this.email)
|
|
40
|
+
checkEmptyOrPattern(this, 'email', emailPattern);
|
|
41
|
+
}
|
|
42
|
+
async getAvatar() {
|
|
43
|
+
if (this.slottedImage !== null) {
|
|
44
|
+
this.avatarType = AvatarType.Slotted;
|
|
45
|
+
}
|
|
46
|
+
else {
|
|
47
|
+
let imageLoaded = false;
|
|
48
|
+
if (!imageLoaded && this.userid)
|
|
49
|
+
imageLoaded = await this.getImageByProp(this.userid, this.fetchImageByUserId.bind(this));
|
|
50
|
+
if (!imageLoaded && this.email)
|
|
51
|
+
imageLoaded = await this.getImageByProp(this.email, this.fetchImageByEmail.bind(this));
|
|
52
|
+
if (!imageLoaded)
|
|
53
|
+
this.getAvatarByInitials();
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
async getImageByProp(prop, fetchImage) {
|
|
57
|
+
if (!prop)
|
|
58
|
+
return false;
|
|
59
|
+
const imageResponse = (await this.getStorageItem(prop)) ?? { ok: false, url: '' };
|
|
60
|
+
if (!imageResponse.ok) {
|
|
61
|
+
try {
|
|
62
|
+
const r = await fetchImage();
|
|
63
|
+
imageResponse.ok = r.ok;
|
|
64
|
+
imageResponse.url = r.url;
|
|
65
|
+
this.imageUrl = imageResponse.url;
|
|
66
|
+
this.imageAlt = `${this.firstname} ${this.lastname} avatar`;
|
|
67
|
+
this.avatarType = AvatarType.Image;
|
|
68
|
+
this.setStorageItem(this.userid, JSON.stringify(imageResponse));
|
|
69
|
+
}
|
|
70
|
+
catch (error) {
|
|
71
|
+
this.removeStorageItem(prop);
|
|
72
|
+
console.info(`Loading avatar by type "${AvatarType.Image}" failed.`);
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
return imageResponse.ok;
|
|
76
|
+
}
|
|
77
|
+
async fetchImageByUserId() {
|
|
78
|
+
return await fetch(PostAvatar.INTERNAL_USERID_IMAGE_SRC.replace('{userid}', encodeURIComponent(this.userid)));
|
|
79
|
+
}
|
|
80
|
+
async fetchImageByEmail() {
|
|
81
|
+
const email = await this.cryptify(this.email);
|
|
82
|
+
const imageUrl = GRAVATAR_BASE_URL.replace('{email}', email);
|
|
83
|
+
return await fetch(imageUrl);
|
|
84
|
+
}
|
|
85
|
+
getAvatarByInitials() {
|
|
86
|
+
this.initials = this.getInitials();
|
|
87
|
+
this.avatarType = AvatarType.Initials;
|
|
88
|
+
}
|
|
89
|
+
getNames() {
|
|
90
|
+
return [this.firstname, this.lastname].filter(n => n);
|
|
91
|
+
}
|
|
92
|
+
getInitials() {
|
|
93
|
+
return this.getNames()
|
|
94
|
+
.map(n => n.charAt(0))
|
|
95
|
+
.join('')
|
|
96
|
+
.trim();
|
|
97
|
+
}
|
|
98
|
+
async getStorageItem(keyToken) {
|
|
99
|
+
const key = await this.cryptify(keyToken);
|
|
100
|
+
const value = window?.sessionStorage?.getItem(key);
|
|
101
|
+
return value ? JSON.parse(value) : null;
|
|
102
|
+
}
|
|
103
|
+
async setStorageItem(keyToken, value) {
|
|
104
|
+
const key = await this.cryptify(keyToken);
|
|
105
|
+
window?.sessionStorage?.setItem(key, value);
|
|
106
|
+
}
|
|
107
|
+
async removeStorageItem(keyToken) {
|
|
108
|
+
const key = await this.cryptify(keyToken);
|
|
109
|
+
window?.sessionStorage?.removeItem(key);
|
|
110
|
+
}
|
|
111
|
+
async cryptify(key) {
|
|
112
|
+
return await crypto.subtle.digest('SHA-256', new TextEncoder().encode(key)).then(buffer => {
|
|
113
|
+
return Array.from(new Uint8Array(buffer))
|
|
114
|
+
.map(bytes => bytes.toString(16).padStart(2, '0'))
|
|
115
|
+
.join('');
|
|
116
|
+
});
|
|
117
|
+
}
|
|
118
|
+
onSlotDefaultChange() {
|
|
119
|
+
this.slottedImage = this.host.querySelector('img');
|
|
120
|
+
this.getAvatar();
|
|
121
|
+
}
|
|
122
|
+
componentWillRender() {
|
|
123
|
+
this.slottedImage = this.host.querySelector('img');
|
|
124
|
+
this.getAvatar();
|
|
125
|
+
}
|
|
126
|
+
componentDidLoad() {
|
|
127
|
+
this.validateFirstname();
|
|
128
|
+
this.validateLastname();
|
|
129
|
+
this.validateUserid();
|
|
130
|
+
this.validateEmail();
|
|
131
|
+
}
|
|
132
|
+
render() {
|
|
133
|
+
const initials = this.getNames().reduce((acc, n, i) => {
|
|
134
|
+
if (i > 0)
|
|
135
|
+
acc.push(h("span", null, " "));
|
|
136
|
+
acc.push(n.charAt(0));
|
|
137
|
+
acc.push(h("span", null, n.slice(1)));
|
|
138
|
+
// eslint-disable-next-line @stencil-community/render-returns-host
|
|
139
|
+
return acc;
|
|
140
|
+
}, []);
|
|
141
|
+
return (h(Host, { "data-version": version }, h("slot", { onSlotchange: this.onSlotDefaultChange.bind(this) }, this.avatarType === 'image' && h("img", { src: this.imageUrl, alt: this.imageAlt }), this.avatarType === 'initials' && h("div", { class: "initials" }, initials))));
|
|
142
|
+
}
|
|
143
|
+
get host() { return getElement(this); }
|
|
144
|
+
static get watchers() { return {
|
|
145
|
+
"firstname": ["validateFirstname"],
|
|
146
|
+
"lastname": ["validateLastname"],
|
|
147
|
+
"userid": ["validateUserid"],
|
|
148
|
+
"email": ["validateEmail"]
|
|
149
|
+
}; }
|
|
150
|
+
};
|
|
151
|
+
PostAvatar.INTERNAL_USERID_IMAGE_SRC = 'https://web.post.ch/UserProfileImage/{userid}.png';
|
|
152
|
+
PostAvatar.style = postAvatarCss;
|
|
153
|
+
|
|
154
|
+
export { PostAvatar as post_avatar };
|
|
@@ -1,6 +1,89 @@
|
|
|
1
|
-
|
|
2
|
-
import './
|
|
3
|
-
import './
|
|
4
|
-
import './
|
|
5
|
-
import './
|
|
6
|
-
|
|
1
|
+
import { r as registerInstance, h, H as Host, a as getElement } from './index-CVhzhVv0.js';
|
|
2
|
+
import { s as slideDown, a as slideUp } from './slide-BuLMaH5t.js';
|
|
3
|
+
import { v as version } from './package-1KLiMO0w.js';
|
|
4
|
+
import { c as checkRequiredAndType } from './index-BWC0gtGU.js';
|
|
5
|
+
import './breakpoints-DyVir0ex.js';
|
|
6
|
+
|
|
7
|
+
const postBackToTopCss = ":host{--post-floating-button-position-top:var(--post-device-position-4);--post-back-to-top-position-top:calc( var(--post-header-height) + var(--post-floating-button-position-top) );--post-back-to-top-elevation:var(--post-device-elevation-300);position:fixed;inset-block-start:var(--post-back-to-top-position-top);inset-inline-end:var(--post-device-position-1)}:host .back-to-top{padding:0;overflow:visible;border:0;background:none;color:var(--post-scheme-color-interactive-button-secondary-enabled-fg);font:inherit;-webkit-user-select:none;user-select:none;appearance:button;box-shadow:var(--post-back-to-top-elevation);cursor:pointer;border-radius:var(--post-device-border-radius-round);width:var(--post-device-sizing-interactive-button-height-2);height:var(--post-device-sizing-interactive-button-height-2);border:var(--post-device-border-width-default) solid var(--post-scheme-color-interactive-button-secondary-enabled-stroke);color:var(--post-scheme-color-interactive-button-secondary-enabled-fg);background-color:var(--post-scheme-color-interactive-button-secondary-enabled-bg);display:flex;align-items:center;justify-content:center}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){:host .back-to-top{background-color:ButtonFace !important}:host .back-to-top:hover{background-color:Highlight !important}}:host .back-to-top{outline-offset:var(--post-device-spacing-padding-2) !important;outline:var(--post-scheme-color-interactive-focus-stroke) none var(--post-device-border-width-focus) !important}:host .back-to-top:is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-style:var(--post-core-border-style-solid) !important}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){:host .back-to-top:is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-color:Highlight !important}}@supports not selector(:has(:focus-visible)){:host .back-to-top:is(:focus-visible,:focus-within,.pretend-focus){outline-style:var(--post-core-border-style-solid) !important}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){:host .back-to-top:is(:focus-visible,:focus-within,.pretend-focus){outline-color:Highlight !important}}}:host .back-to-top:hover{border-color:var(--post-scheme-color-interactive-button-secondary-hover-stroke);color:var(--post-scheme-color-interactive-button-secondary-hover-fg);background-color:var(--post-scheme-color-interactive-button-secondary-hover-bg)}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){:host .back-to-top:hover{color:HighlightText !important}}:host .back-to-top post-icon{height:var(--post-device-sizing-interactive-button-icon-3);width:var(--post-device-sizing-interactive-button-icon-3)}:host .visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);border:0}";
|
|
8
|
+
|
|
9
|
+
const PostBackToTop = class {
|
|
10
|
+
constructor(hostRef) {
|
|
11
|
+
registerInstance(this, hostRef);
|
|
12
|
+
this.belowFold = false;
|
|
13
|
+
this.handleScroll = () => {
|
|
14
|
+
this.belowFold = this.isBelowFold();
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
isBelowFold() {
|
|
18
|
+
return window.scrollY > window.innerHeight;
|
|
19
|
+
}
|
|
20
|
+
validateLabel() {
|
|
21
|
+
checkRequiredAndType(this, 'label', 'string');
|
|
22
|
+
}
|
|
23
|
+
/*Watch for changes in belowFold to show/hide the back to top button*/
|
|
24
|
+
watchBelowFold(newValue) {
|
|
25
|
+
if (newValue) {
|
|
26
|
+
slideDown(this.host, this.translateY);
|
|
27
|
+
}
|
|
28
|
+
else {
|
|
29
|
+
slideUp(this.host, this.translateY);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
scrollToTop() {
|
|
33
|
+
window.scrollTo({
|
|
34
|
+
top: 0,
|
|
35
|
+
behavior: 'smooth',
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
getSecondPixelValue(parts) {
|
|
39
|
+
for (const part of parts) {
|
|
40
|
+
const pixelValues = part.match(/\b\d+px\b/g);
|
|
41
|
+
if (pixelValues && pixelValues.length > 1) {
|
|
42
|
+
return pixelValues[1];
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
animateButton() {
|
|
47
|
+
// Get the back-to-top button top postiion
|
|
48
|
+
const positionTop = window.getComputedStyle(this.host).getPropertyValue('top');
|
|
49
|
+
const buttonElement = this.host.shadowRoot.querySelector('button');
|
|
50
|
+
// Extract the elevation height from the back-to-top button elevation token
|
|
51
|
+
const elevation = getComputedStyle(buttonElement).getPropertyValue('--post-back-to-top-elevation');
|
|
52
|
+
const elevationParts = elevation.split(',');
|
|
53
|
+
const elevationHeight = this.getSecondPixelValue(elevationParts);
|
|
54
|
+
// The translateY is calculated as => -100% (btt button height) - topPosition - elevationHeight
|
|
55
|
+
this.translateY =
|
|
56
|
+
String((-1 * 100) / 100 -
|
|
57
|
+
parseFloat(positionTop.replace('px', '')) -
|
|
58
|
+
parseFloat(elevationHeight.replace('px', ''))) + 'px';
|
|
59
|
+
if (this.belowFold) {
|
|
60
|
+
slideDown(this.host, this.translateY);
|
|
61
|
+
}
|
|
62
|
+
if (!this.belowFold) {
|
|
63
|
+
this.host.style.transform = `translateY(${this.translateY})`;
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
// Set the initial state
|
|
67
|
+
componentWillLoad() {
|
|
68
|
+
this.belowFold = this.isBelowFold();
|
|
69
|
+
}
|
|
70
|
+
componentDidLoad() {
|
|
71
|
+
window.addEventListener('scroll', this.handleScroll, false);
|
|
72
|
+
this.animateButton();
|
|
73
|
+
this.validateLabel();
|
|
74
|
+
}
|
|
75
|
+
disconnectedCallback() {
|
|
76
|
+
window.removeEventListener('scroll', this.handleScroll);
|
|
77
|
+
}
|
|
78
|
+
render() {
|
|
79
|
+
return (h(Host, { key: '7edc6db9d849cf9ce0308a2ac5b2c2f9bc4e47a9', "data-version": version }, h("button", { key: '610e81756ce3dd927f55d48beb8cd829b66fc247', class: "back-to-top", "aria-hidden": this.belowFold ? 'false' : 'true', tabindex: this.belowFold ? '0' : '-1', onClick: this.scrollToTop }, h("post-icon", { key: 'bb1f3cc462de7680361f4cfd04abb1816aebd488', "aria-hidden": "true", name: "3026" }), h("span", { key: '4fbd84d78c425140adea5833450cef60af967f5a', class: "visually-hidden" }, this.label))));
|
|
80
|
+
}
|
|
81
|
+
get host() { return getElement(this); }
|
|
82
|
+
static get watchers() { return {
|
|
83
|
+
"label": ["validateLabel"],
|
|
84
|
+
"belowFold": ["watchBelowFold"]
|
|
85
|
+
}; }
|
|
86
|
+
};
|
|
87
|
+
PostBackToTop.style = postBackToTopCss;
|
|
88
|
+
|
|
89
|
+
export { PostBackToTop as post_back_to_top };
|