@swisspost/design-system-components 10.0.0-next.47 → 10.0.0-next.49
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/{event-from-AKK8RQrn.js → event-from-C6kpQwhw.js} +2 -2
- package/dist/cjs/index-CpDyH7Ww.js +4 -4
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{package-wsZ6ig4j.js → package-CR0YynRY.js} +1 -1
- package/dist/cjs/post-accordion_2.cjs.entry.js +6 -6
- package/dist/cjs/post-avatar.cjs.entry.js +107 -80
- package/dist/cjs/post-back-to-top.cjs.entry.js +2 -2
- package/dist/cjs/post-banner.cjs.entry.js +3 -3
- package/dist/cjs/post-breadcrumb-item_2.cjs.entry.js +3 -3
- package/dist/cjs/post-breadcrumbs.cjs.entry.js +4 -4
- package/dist/cjs/post-card-control.cjs.entry.js +4 -4
- package/dist/cjs/post-closebutton_15.cjs.entry.js +133 -74
- package/dist/cjs/post-collapsible_2.cjs.entry.js +4 -4
- package/dist/cjs/post-components.cjs.js +1 -1
- package/dist/cjs/post-footer.cjs.entry.js +3 -3
- package/dist/cjs/post-linkarea.cjs.entry.js +19 -8
- package/dist/cjs/post-popover.cjs.entry.js +3 -3
- package/dist/cjs/post-rating.cjs.entry.js +3 -3
- package/dist/cjs/post-tab-header.cjs.entry.js +3 -3
- package/dist/cjs/post-tab-panel.cjs.entry.js +2 -2
- package/dist/cjs/post-tabs.cjs.entry.js +2 -2
- package/dist/cjs/post-tooltip-trigger.cjs.entry.js +2 -2
- package/dist/cjs/post-tooltip.cjs.entry.js +3 -3
- package/dist/collection/animations/pop-in.js +14 -0
- package/dist/collection/components/post-accordion/post-accordion.css +1 -1
- package/dist/collection/components/post-accordion-item/post-accordion-item.css +1 -1
- package/dist/collection/components/post-accordion-item/post-accordion-item.js +5 -5
- package/dist/collection/components/post-avatar/avatar-utils.js +16 -0
- package/dist/collection/components/post-avatar/post-avatar.css +1 -1
- package/dist/collection/components/post-avatar/post-avatar.js +119 -82
- package/dist/collection/components/post-back-to-top/post-back-to-top.js +1 -1
- package/dist/collection/components/post-banner/post-banner.js +2 -2
- package/dist/collection/components/post-breadcrumb-item/post-breadcrumb-item.js +1 -1
- package/dist/collection/components/post-breadcrumbs/post-breadcrumbs.css +1 -1
- package/dist/collection/components/post-breadcrumbs/post-breadcrumbs.js +2 -2
- package/dist/collection/components/post-card-control/post-card-control.css +1 -1
- package/dist/collection/components/post-card-control/post-card-control.js +2 -2
- package/dist/collection/components/post-closebutton/post-closebutton.js +1 -19
- package/dist/collection/components/post-collapsible/post-collapsible.js +1 -1
- package/dist/collection/components/post-collapsible-trigger/post-collapsible-trigger.js +1 -1
- package/dist/collection/components/post-footer/post-footer.css +1 -1
- package/dist/collection/components/post-footer/post-footer.js +1 -1
- package/dist/collection/components/post-header/post-header.css +1 -1
- package/dist/collection/components/post-header/post-header.js +11 -2
- package/dist/collection/components/post-icon/post-icon.js +39 -33
- package/dist/collection/components/post-language-option/post-language-option.css +1 -1
- package/dist/collection/components/post-language-option/post-language-option.js +1 -2
- package/dist/collection/components/post-language-switch/post-language-switch.js +1 -2
- package/dist/collection/components/post-linkarea/post-linkarea.css +1 -1
- package/dist/collection/components/post-linkarea/post-linkarea.js +24 -6
- package/dist/collection/components/post-list/post-list.css +1 -1
- package/dist/collection/components/post-list/post-list.js +1 -1
- package/dist/collection/components/post-list-item/post-list-item.js +1 -1
- package/dist/collection/components/post-logo/post-logo.js +1 -1
- package/dist/collection/components/post-mainnavigation/post-mainnavigation.css +1 -1
- package/dist/collection/components/post-mainnavigation/post-mainnavigation.js +1 -1
- package/dist/collection/components/post-megadropdown/post-megadropdown.css +1 -1
- package/dist/collection/components/post-megadropdown/post-megadropdown.js +12 -2
- package/dist/collection/components/post-megadropdown-trigger/post-megadropdown-trigger.js +1 -1
- package/dist/collection/components/post-menu/post-menu.css +1 -1
- package/dist/collection/components/post-menu/post-menu.js +41 -5
- package/dist/collection/components/post-menu-item/post-menu-item.js +1 -1
- package/dist/collection/components/post-menu-trigger/post-menu-trigger.js +1 -1
- package/dist/collection/components/post-popover/post-popover.css +1 -1
- package/dist/collection/components/post-popover/post-popover.js +1 -1
- package/dist/collection/components/post-popovercontainer/post-popovercontainer.css +1 -1
- package/dist/collection/components/post-popovercontainer/post-popovercontainer.js +18 -7
- package/dist/collection/components/post-rating/post-rating.css +1 -1
- package/dist/collection/components/post-rating/post-rating.js +1 -1
- package/dist/collection/components/post-tab-header/post-tab-header.css +1 -1
- package/dist/collection/components/post-tab-header/post-tab-header.js +1 -1
- package/dist/collection/components/post-tab-panel/post-tab-panel.js +1 -1
- package/dist/collection/components/post-tabs/post-tabs.js +3 -3
- package/dist/collection/components/post-togglebutton/post-togglebutton.js +1 -1
- package/dist/collection/components/post-tooltip/post-tooltip.js +2 -2
- package/dist/collection/components/post-tooltip-trigger/post-tooltip-trigger.js +1 -1
- package/dist/collection/utils/event-from.js +2 -2
- package/dist/component-names.json +39 -0
- package/dist/{esm/event-from-8U5GFtQP.js → components/event-from.js} +2 -2
- package/dist/components/get-root.js +15 -0
- package/dist/components/index.d.ts +73 -0
- package/dist/components/index.js +36 -2315
- package/dist/components/package.js +3 -0
- package/dist/components/post-accordion-item.js +1 -1
- package/dist/components/post-accordion-item2.js +113 -0
- package/dist/components/post-accordion.js +1 -1
- package/dist/components/post-accordion2.js +138 -0
- package/dist/components/post-avatar.js +117 -88
- package/dist/components/post-back-to-top.js +7 -8
- package/dist/components/post-banner.js +10 -11
- package/dist/components/post-breadcrumb-item.js +1 -1
- package/dist/components/post-breadcrumb-item2.js +79 -0
- package/dist/components/post-breadcrumbs.js +16 -17
- package/dist/components/post-card-control.js +11 -12
- package/dist/components/post-closebutton.js +5 -7
- package/dist/components/post-collapsible-trigger.js +1 -1
- package/dist/components/post-collapsible-trigger2.js +135 -0
- package/dist/components/post-collapsible.js +1 -1
- package/dist/components/post-collapsible2.js +110 -0
- package/dist/components/post-footer.js +12 -13
- package/dist/components/post-header.js +18 -10
- package/dist/components/post-icon.js +1 -1
- package/dist/components/post-icon2.js +159 -0
- package/dist/components/post-language-option.js +10 -12
- package/dist/components/post-language-switch.js +13 -15
- package/dist/components/post-linkarea.js +24 -12
- package/dist/components/post-list-item.js +4 -5
- package/dist/components/post-list.js +6 -7
- package/dist/components/post-logo.js +6 -7
- package/dist/components/post-mainnavigation.js +6 -7
- package/dist/components/post-megadropdown-trigger.js +7 -8
- package/dist/components/post-megadropdown.js +20 -11
- package/dist/components/post-menu-item.js +1 -1
- package/dist/components/post-menu-item2.js +30 -0
- package/dist/components/post-menu-trigger.js +1 -1
- package/dist/components/post-menu-trigger2.js +110 -0
- package/dist/components/post-menu.js +1 -1
- package/dist/components/post-menu2.js +237 -0
- package/dist/components/post-popover.js +8 -9
- package/dist/components/post-popovercontainer.js +1 -1
- package/dist/components/post-popovercontainer2.js +3043 -0
- package/dist/components/post-rating.js +10 -11
- package/dist/components/post-tab-header.js +8 -9
- package/dist/components/post-tab-panel.js +7 -8
- package/dist/components/post-tabs.js +7 -8
- package/dist/components/post-togglebutton.js +4 -5
- package/dist/components/post-tooltip-trigger.js +7 -8
- package/dist/components/post-tooltip.js +8 -9
- package/dist/components/react/index.d.ts +33 -0
- package/dist/components/react/index.js +2315 -0
- package/dist/components/{p-Cxrx7SXz.js → react/p-Amg0f2Yo.js} +40 -34
- package/dist/components/{p-C0H2ohSv.js → react/p-B6vPT8S3.js} +3 -3
- package/dist/components/{p-336Lbkey.js → react/p-BDs0pvkX.js} +2 -2
- package/dist/components/react/p-BLchVpF6.js +14 -0
- package/dist/components/{p-BM8mtEfS.js → react/p-BMdFdJWl.js} +2 -2
- package/dist/components/{p-DP5pj8mq.js → react/p-BS0ZqwA-.js} +31 -6
- package/dist/components/react/p-C35MCWIp.js +35 -0
- package/dist/components/react/p-CJ80BZ06.js +178 -0
- package/dist/{esm/index-BWC0gtGU.js → components/react/p-CV7fm1rW.js} +1 -1
- package/dist/components/react/p-C_2k3G1c.js +264 -0
- package/dist/components/{p-DVGX_JCp.js → react/p-D1oOccKr.js} +3 -3
- package/dist/components/{p-pHxypsHK.js → react/p-D50E7y6E.js} +24 -9
- package/dist/components/react/p-DO48NanC.js +3 -0
- package/dist/components/{p-i0-mizzM.js → react/p-DOo9tmN-.js} +2 -2
- package/dist/components/{p-DEi5TIMq.js → react/p-Do9awHW7.js} +3 -3
- package/dist/components/react/p-SbIC4aZX.js +11 -0
- package/dist/components/{p-8U5GFtQP.js → react/p-kraHE1r3.js} +2 -2
- package/dist/components/react/p-r4txK0AC.js +3 -0
- package/dist/components/{p-BSvy4uym.js → react/p-xelWyg_P.js} +8 -8
- package/dist/components/react/post-accordion-item.d.ts +11 -0
- package/dist/components/react/post-accordion-item.js +6 -0
- package/dist/components/react/post-accordion.d.ts +11 -0
- package/dist/components/react/post-accordion.js +6 -0
- package/dist/components/react/post-avatar.d.ts +11 -0
- package/dist/components/react/post-avatar.js +218 -0
- package/dist/components/react/post-back-to-top.d.ts +11 -0
- package/dist/components/react/post-back-to-top.js +145 -0
- package/dist/components/react/post-banner.d.ts +11 -0
- package/dist/components/react/post-banner.js +99 -0
- package/dist/components/react/post-breadcrumb-item.d.ts +11 -0
- package/dist/components/react/post-breadcrumb-item.js +6 -0
- package/dist/components/react/post-breadcrumbs.d.ts +11 -0
- package/dist/components/react/post-breadcrumbs.js +187 -0
- package/dist/components/react/post-card-control.d.ts +11 -0
- package/dist/components/react/post-card-control.js +327 -0
- package/dist/components/react/post-closebutton.d.ts +11 -0
- package/dist/components/react/post-closebutton.js +50 -0
- package/dist/components/react/post-collapsible-trigger.d.ts +11 -0
- package/dist/components/react/post-collapsible-trigger.js +6 -0
- package/dist/components/react/post-collapsible.d.ts +11 -0
- package/dist/components/react/post-collapsible.js +6 -0
- package/dist/components/react/post-footer.d.ts +11 -0
- package/dist/components/react/post-footer.js +117 -0
- package/dist/components/react/post-header.d.ts +11 -0
- package/dist/components/react/post-header.js +342 -0
- package/dist/components/react/post-icon.d.ts +11 -0
- package/dist/components/react/post-icon.js +6 -0
- package/dist/components/react/post-language-option.d.ts +11 -0
- package/dist/components/react/post-language-option.js +100 -0
- package/dist/components/react/post-language-switch.d.ts +11 -0
- package/dist/components/react/post-language-switch.js +158 -0
- package/dist/components/react/post-linkarea.d.ts +11 -0
- package/dist/components/react/post-linkarea.js +59 -0
- package/dist/components/react/post-list-item.d.ts +11 -0
- package/dist/components/react/post-list-item.js +39 -0
- package/dist/components/react/post-list.d.ts +11 -0
- package/dist/components/react/post-list.js +62 -0
- package/dist/components/react/post-logo.d.ts +11 -0
- package/dist/components/react/post-logo.js +59 -0
- package/dist/components/react/post-mainnavigation.d.ts +11 -0
- package/dist/components/react/post-mainnavigation.js +181 -0
- package/dist/components/react/post-megadropdown-trigger.d.ts +11 -0
- package/dist/components/react/post-megadropdown-trigger.js +137 -0
- package/dist/components/react/post-megadropdown.d.ts +11 -0
- package/dist/components/react/post-megadropdown.js +207 -0
- package/dist/components/react/post-menu-item.d.ts +11 -0
- package/dist/components/react/post-menu-item.js +6 -0
- package/dist/components/react/post-menu-trigger.d.ts +11 -0
- package/dist/components/react/post-menu-trigger.js +6 -0
- package/dist/components/react/post-menu.d.ts +11 -0
- package/dist/components/react/post-menu.js +6 -0
- package/dist/components/react/post-popover.d.ts +11 -0
- package/dist/components/react/post-popover.js +189 -0
- package/dist/components/react/post-popovercontainer.d.ts +11 -0
- package/dist/components/react/post-popovercontainer.js +6 -0
- package/dist/components/react/post-rating.d.ts +11 -0
- package/dist/components/react/post-rating.js +153 -0
- package/dist/components/react/post-tab-header.d.ts +11 -0
- package/dist/components/react/post-tab-header.js +53 -0
- package/dist/components/react/post-tab-panel.d.ts +11 -0
- package/dist/components/react/post-tab-panel.js +55 -0
- package/dist/components/react/post-tabs.d.ts +11 -0
- package/dist/components/react/post-tabs.js +197 -0
- package/dist/components/react/post-togglebutton.d.ts +11 -0
- package/dist/components/react/post-togglebutton.js +57 -0
- package/dist/components/react/post-tooltip-trigger.d.ts +11 -0
- package/dist/components/react/post-tooltip-trigger.js +5223 -0
- package/dist/components/react/post-tooltip.d.ts +11 -0
- package/dist/components/react/post-tooltip.js +115 -0
- package/dist/components/switch-variants.js +3 -0
- package/dist/docs.json +71 -35
- package/dist/esm/event-from-kraHE1r3.js +105 -0
- package/dist/esm/index-C8a0ddDa.js +4 -4
- package/dist/esm/index-VmK3ABCB.js +88 -0
- package/dist/esm/loader.js +1 -1
- package/dist/esm/package-DO48NanC.js +3 -0
- package/dist/esm/post-accordion_2.entry.js +7 -7
- package/dist/esm/post-avatar.entry.js +108 -81
- package/dist/esm/post-back-to-top.entry.js +3 -3
- package/dist/esm/post-banner.entry.js +4 -4
- package/dist/esm/post-breadcrumb-item_2.entry.js +4 -4
- package/dist/esm/post-breadcrumbs.entry.js +5 -5
- package/dist/esm/post-card-control.entry.js +5 -5
- package/dist/esm/post-closebutton_15.entry.js +135 -76
- package/dist/esm/post-collapsible_2.entry.js +5 -5
- package/dist/esm/post-components.js +1 -1
- package/dist/esm/post-footer.entry.js +4 -4
- package/dist/esm/post-linkarea.entry.js +19 -8
- package/dist/esm/post-popover.entry.js +4 -4
- package/dist/esm/post-rating.entry.js +4 -4
- package/dist/esm/post-tab-header.entry.js +4 -4
- package/dist/esm/post-tab-panel.entry.js +3 -3
- package/dist/esm/post-tabs.entry.js +2 -2
- package/dist/esm/post-tooltip-trigger.entry.js +3 -3
- package/dist/esm/post-tooltip.entry.js +4 -4
- package/dist/loader/cdn.js +1 -0
- package/dist/loader/index.cjs.js +1 -0
- package/{loader → dist/loader}/index.d.ts +1 -1
- package/dist/loader/index.es2017.js +1 -0
- package/{loader → dist/loader}/index.js +1 -1
- package/dist/post-components/p-01bc39c2.entry.js +1 -0
- package/dist/post-components/p-0dc1e940.entry.js +1 -0
- package/dist/post-components/p-16da91bc.entry.js +1 -0
- package/dist/post-components/p-26a04741.entry.js +1 -0
- package/dist/post-components/p-2f2f9b22.entry.js +1 -0
- package/dist/post-components/{p-45007aac.entry.js → p-33008981.entry.js} +1 -1
- package/dist/post-components/p-36358cd4.entry.js +1 -0
- package/dist/post-components/p-71c48d48.entry.js +1 -0
- package/dist/post-components/{p-e9802b56.entry.js → p-84395e1d.entry.js} +1 -1
- package/dist/post-components/p-848c10ac.entry.js +1 -0
- package/dist/post-components/{p-ab8017bb.entry.js → p-8d2e5814.entry.js} +1 -1
- package/dist/post-components/{p-a2fa5ce4.entry.js → p-9dbe6595.entry.js} +1 -1
- package/dist/post-components/p-DO48NanC.js +1 -0
- package/dist/post-components/{p-BWC0gtGU.js → p-VmK3ABCB.js} +1 -1
- package/dist/post-components/p-a982458f.entry.js +1 -0
- package/dist/post-components/{p-f67b616a.entry.js → p-b0aaa058.entry.js} +1 -1
- package/dist/post-components/{p-bbe02ba3.entry.js → p-bdeef760.entry.js} +1 -1
- package/dist/post-components/{p-2f698af4.entry.js → p-d221395c.entry.js} +1 -1
- package/dist/post-components/{p-57703aee.entry.js → p-e49aa78e.entry.js} +1 -1
- package/dist/post-components/p-eb405167.entry.js +1 -0
- package/dist/post-components/p-kraHE1r3.js +1 -0
- package/dist/post-components/post-components.esm.js +1 -1
- package/dist/types/animations/pop-in.d.ts +1 -0
- package/dist/types/components/post-accordion-item/post-accordion-item.d.ts +3 -3
- package/dist/types/components/post-avatar/avatar-utils.d.ts +3 -0
- package/dist/types/components/post-avatar/post-avatar.d.ts +17 -13
- package/dist/types/components/post-closebutton/post-closebutton.d.ts +0 -6
- package/dist/types/components/post-header/post-header.d.ts +2 -0
- package/dist/types/components/post-icon/post-icon.d.ts +11 -0
- package/dist/types/components/post-linkarea/post-linkarea.d.ts +6 -0
- package/dist/types/components/post-megadropdown/post-megadropdown.d.ts +2 -1
- package/dist/types/components/post-menu/post-menu.d.ts +7 -0
- package/dist/types/components/post-popovercontainer/post-popovercontainer.d.ts +6 -2
- package/dist/types/components/post-tabs/post-tabs.d.ts +2 -2
- package/dist/types/components.d.ts +19 -22
- package/dist/types/utils/component-on-ready.d.ts +2 -2
- package/hydrate/index.js +308 -201
- package/hydrate/index.mjs +308 -201
- package/package.json +24 -12
- package/dist/components/p-Z01QMrov.js +0 -3
- package/dist/esm/package-Z01QMrov.js +0 -3
- package/dist/post-components/p-031f7489.entry.js +0 -1
- package/dist/post-components/p-1e6a068a.entry.js +0 -1
- package/dist/post-components/p-2ca196d6.entry.js +0 -1
- package/dist/post-components/p-3adbdda7.entry.js +0 -1
- package/dist/post-components/p-7b8ab026.entry.js +0 -1
- package/dist/post-components/p-8U5GFtQP.js +0 -1
- package/dist/post-components/p-9428231b.entry.js +0 -1
- package/dist/post-components/p-Z01QMrov.js +0 -1
- package/dist/post-components/p-ac73ab00.entry.js +0 -1
- package/dist/post-components/p-c1cf39cb.entry.js +0 -1
- package/dist/post-components/p-d0d92071.entry.js +0 -1
- package/dist/post-components/p-e96239c4.entry.js +0 -1
- package/dist/prebuild.js +0 -26
- package/dist/types/home/runner/work/design-system/design-system/packages/components/.stencil/prebuild.d.ts +0 -1
- package/loader/cdn.js +0 -1
- package/loader/index.cjs.js +0 -1
- package/loader/index.es2017.js +0 -1
- /package/dist/components/{p-CJ80BZ06.js → breakpoints.js} +0 -0
- /package/dist/components/{p-SbIC4aZX.js → fade.js} +0 -0
- /package/dist/components/{p-C35MCWIp.js → get-focusable-children.js} +0 -0
- /package/dist/components/{p-r4txK0AC.js → heading-levels.js} +0 -0
- /package/dist/components/{p-BLchVpF6.js → index.browser.js} +0 -0
- /package/dist/components/{p-CV7fm1rW.js → index2.js} +0 -0
- /package/dist/components/{p-C_2k3G1c.js → long-press-event.js} +0 -0
- /package/dist/components/{p-CBFgkSgY.js → react/p-CBFgkSgY.js} +0 -0
- /package/dist/components/{p-DjIHLduJ.js → react/p-DjIHLduJ.js} +0 -0
|
@@ -13,6 +13,9 @@ import { PLACEMENT_TYPES } from "../../types/index";
|
|
|
13
13
|
import { version } from "../../../../package";
|
|
14
14
|
import { getFocusableChildren } from "../../utils/get-focusable-children";
|
|
15
15
|
import { getRoot, checkEmptyOrOneOf, EventFrom } from "../../utils/index";
|
|
16
|
+
/**
|
|
17
|
+
* @part menu - The container element that holds the list of menu items.
|
|
18
|
+
*/
|
|
16
19
|
export class PostMenu {
|
|
17
20
|
constructor() {
|
|
18
21
|
this.lastFocusedElement = null;
|
|
@@ -49,18 +52,32 @@ export class PostMenu {
|
|
|
49
52
|
}
|
|
50
53
|
};
|
|
51
54
|
this.handlePostToggle = (event) => {
|
|
52
|
-
this.isVisible = event.detail;
|
|
55
|
+
this.isVisible = event.detail.isOpen;
|
|
53
56
|
this.toggleMenu.emit(this.isVisible);
|
|
54
57
|
requestAnimationFrame(() => {
|
|
55
58
|
if (this.isVisible) {
|
|
56
59
|
this.lastFocusedElement = this.root?.activeElement;
|
|
57
60
|
const menuItems = this.getSlottedItems();
|
|
58
|
-
if (
|
|
59
|
-
menuItems
|
|
61
|
+
if (event.detail.first) {
|
|
62
|
+
if (menuItems.length > 0) {
|
|
63
|
+
// Add role="menu" to the popovercontainer
|
|
64
|
+
this.host.setAttribute('role', 'menu');
|
|
65
|
+
// Add role="menuitem" to the focusable elements
|
|
66
|
+
menuItems.forEach(item => {
|
|
67
|
+
item.setAttribute('role', 'menuitem');
|
|
68
|
+
});
|
|
69
|
+
// Add aria-label to the menu
|
|
70
|
+
if (this.label)
|
|
71
|
+
this.host.setAttribute('aria-label', this.label);
|
|
72
|
+
}
|
|
60
73
|
}
|
|
74
|
+
menuItems[0].focus();
|
|
61
75
|
}
|
|
62
76
|
else if (this.lastFocusedElement) {
|
|
63
|
-
|
|
77
|
+
setTimeout(() => {
|
|
78
|
+
// This timeout is added for NVDA to announce the menu as collapsed
|
|
79
|
+
this.lastFocusedElement.focus();
|
|
80
|
+
}, 0);
|
|
64
81
|
}
|
|
65
82
|
});
|
|
66
83
|
};
|
|
@@ -173,7 +190,7 @@ export class PostMenu {
|
|
|
173
190
|
.flatMap(el => Array.from(getFocusableChildren(el))));
|
|
174
191
|
}
|
|
175
192
|
render() {
|
|
176
|
-
return (h(Host, { key: '
|
|
193
|
+
return (h(Host, { key: '7b7fe6fccd27d3ff12eae3094b1a55b9b9778eb1', "data-version": version }, h("post-popovercontainer", { key: '6dae2883febd1e96ae1b34518dd2e9c634fafecb', placement: this.placement, ref: e => (this.popoverRef = e) }, h("div", { key: 'e19c107831b020aa0039ea7a18465e4bb72380c4', part: "menu" }, h("slot", { key: '9d9862e73dd222435d196e67c540bf8266952d94' })))));
|
|
177
194
|
}
|
|
178
195
|
static get is() { return "post-menu"; }
|
|
179
196
|
static get encapsulation() { return "shadow"; }
|
|
@@ -214,6 +231,25 @@ export class PostMenu {
|
|
|
214
231
|
"setter": false,
|
|
215
232
|
"reflect": false,
|
|
216
233
|
"defaultValue": "'bottom'"
|
|
234
|
+
},
|
|
235
|
+
"label": {
|
|
236
|
+
"type": "string",
|
|
237
|
+
"attribute": "label",
|
|
238
|
+
"mutable": false,
|
|
239
|
+
"complexType": {
|
|
240
|
+
"original": "string",
|
|
241
|
+
"resolved": "string",
|
|
242
|
+
"references": {}
|
|
243
|
+
},
|
|
244
|
+
"required": false,
|
|
245
|
+
"optional": true,
|
|
246
|
+
"docs": {
|
|
247
|
+
"tags": [],
|
|
248
|
+
"text": "An accessible name for the menu."
|
|
249
|
+
},
|
|
250
|
+
"getter": false,
|
|
251
|
+
"setter": false,
|
|
252
|
+
"reflect": false
|
|
217
253
|
}
|
|
218
254
|
};
|
|
219
255
|
}
|
|
@@ -2,7 +2,7 @@ import { h, Host } from "@stencil/core";
|
|
|
2
2
|
import { version } from "../../../../package";
|
|
3
3
|
export class PostMenuItem {
|
|
4
4
|
render() {
|
|
5
|
-
return (h(Host, { key: '
|
|
5
|
+
return (h(Host, { key: '9d6015291b82728739de4263a62a59ad4a99c94d', "data-version": version }, h("slot", { key: '51f5ff356cddffc806639cc343437500f898065e' })));
|
|
6
6
|
}
|
|
7
7
|
static get is() { return "post-menu-item"; }
|
|
8
8
|
static get originalStyleUrls() {
|
|
@@ -73,7 +73,7 @@ export class PostMenuTrigger {
|
|
|
73
73
|
}
|
|
74
74
|
}
|
|
75
75
|
render() {
|
|
76
|
-
return (h(Host, { key: '
|
|
76
|
+
return (h(Host, { key: '14592f9564fdb09b2e809374d5794bf71f576dbb', "data-version": version, "tab-index": "-1" }, h("slot", { key: 'a0f463000420df39035cc5a48369d230394b5e04' })));
|
|
77
77
|
}
|
|
78
78
|
static get is() { return "post-menu-trigger"; }
|
|
79
79
|
static get originalStyleUrls() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
.btn-close{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;border-radius:var(--post-device-border-radius-round);color:#000;transition:opacity 250ms,border-color 250ms,background-color 250ms,color 250ms;cursor:pointer}@media(forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.btn-close{background-color:ButtonFace !important}.btn-close:hover{background-color:Highlight !important}}.btn-close{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}.btn-close:is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-style:var(--post-core-border-style-solid) !important;border-radius:4px}@media(forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.btn-close:is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-color:Highlight !important}}@supports not selector(:has(:focus-visible)){.btn-close:is(:focus-visible,:focus-within,.pretend-focus){outline-style:var(--post-core-border-style-solid) !important;border-radius:4px}@media(forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.btn-close:is(:focus-visible,:focus-within,.pretend-focus){outline-color:Highlight !important}}}.btn-close::before{mask-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m16.267 16.667 6.667-6.533-.933-1.067-6.667 6.667-6.667-6.667-.933 1.067 6.667 6.533-6.667 6.667 1.067.933 6.533-6.667 6.667 6.667.933-1.067z'/%3E%3C/svg%3E");background-color:currentColor;color:currentColor;forced-color-adjust:preserve-parent-color;content:"";display:block;height:var(--post-core-dimension-24);width:var(--post-core-dimension-24)}.btn-close:focus,.btn-close:not(:disabled):hover,.pretend-hover.btn-close{color:#000}.btn-close:disabled{color:#999}@media(forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.btn-close{color:CanvasText;forced-color-adjust:none}.btn-close:focus,.btn-close:not(:disabled):hover,.pretend-hover.btn-close{color:Highlight}}.btn-close-white{color:#e6e6e6}.btn-close-white:focus,.btn-close-white:not(:disabled):hover,.btn-close-white.pretend-hover{color:#fff}.btn-close-white:disabled{color:#999}*{box-sizing:border-box}:host{display:block}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);border:0}.popover-container{color:var(--post-current-fg);background-color:var(--post-current-bg);display:flex;align-items:self-start;padding:.5em;min-width:160px;max-width:min(var(--post-popover-max-width, 280px),100vw)}.popover-content{padding:.5em;flex-grow:1}.btn-close{color:var(--post-current-fg)}@media(forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.btn-close:hover{color:HighlightText !important}}
|
|
@@ -113,7 +113,7 @@ export class PostPopover {
|
|
|
113
113
|
trigger.setAttribute('aria-expanded', force ? 'false' : null);
|
|
114
114
|
}
|
|
115
115
|
render() {
|
|
116
|
-
return (h(Host, { key: '
|
|
116
|
+
return (h(Host, { key: 'c0a36766203f4b2f6350c9c92b304eb9052d2ceb', "data-version": version }, h("post-popovercontainer", { key: 'ec9d9e8af53408fd3d2d5aaedab10ccee94322fd', arrow: this.arrow, placement: this.placement, ref: e => (this.popoverRef = e) }, h("div", { key: '4edb0a99f660f5b4c1b35a934cc2d21bb84b1c44', class: "popover-container" }, h("div", { key: '96d3fc664e0a8c5d0b877cf46df9e80433909f5e', class: "popover-content" }, h("slot", { key: '978e3335f1214bed829042cfdf6bd7a23ae9229a' })), h("button", { key: 'b42d5a48ba83d6e1b592b0607e837e8036e0cf54', class: "btn-close", onClick: () => this.hide() }, h("span", { key: '95a7cfd1c4b6c30e04a86e58d4cf9a70eec885c8', class: "visually-hidden" }, this.closeButtonCaption))))));
|
|
117
117
|
}
|
|
118
118
|
static get is() { return "post-popover"; }
|
|
119
119
|
static get encapsulation() { return "shadow"; }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
@
|
|
1
|
+
@layer polyfill{@supports not selector(:popover-open){[popover]:not(.\:popover-open){display:none}}}:where(post-popovercontainer){background-color:rgba(0,0,0,0);border:rgba(0,0,0,0);position:fixed;margin:0;padding:0;overflow:visible}:where(post-popovercontainer)>div{box-shadow:var(--post-device-elevation-300);width:max-content;max-width:100%;color:var(--post-current-fg);background-color:var(--post-current-bg);border-radius:4px}@media(forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){:where(post-popovercontainer)>div{border:2px solid rgba(0,0,0,0)}}:where(post-popovercontainer)[tooltip]{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);border:0}:where(post-popovercontainer)[safe-space]::after{content:"";position:fixed;inset:0;z-index:-1;pointer-events:auto}:where(post-popovercontainer)[safe-space=triangle]::after{clip-path:polygon(var(--post-safe-space-cursor-x, 0) var(--post-safe-space-cursor-y, 0), var(--post-safe-space-popover-x-start, var(--post-safe-space-popover-x, 0)) var(--post-safe-space-popover-y, var(--post-safe-space-popover-y-start, 0)), var(--post-safe-space-popover-x-end, var(--post-safe-space-popover-x, 0)) var(--post-safe-space-popover-y, var(--post-safe-space-popover-y-end, 0)))}:where(post-popovercontainer)[safe-space=trapezoid]::after{clip-path:polygon(var(--post-safe-space-trigger-x-start, var(--post-safe-space-trigger-x, 0)) var(--post-safe-space-trigger-y, var(--post-safe-space-trigger-y-start, 0)), var(--post-safe-space-trigger-x-end, var(--post-safe-space-trigger-x, 0)) var(--post-safe-space-trigger-y, var(--post-safe-space-trigger-y-end, 0)), var(--post-safe-space-popover-x-end, var(--post-safe-space-popover-x, 0)) var(--post-safe-space-popover-y, var(--post-safe-space-popover-y-end, 0)), var(--post-safe-space-popover-x-start, var(--post-safe-space-popover-x, 0)) var(--post-safe-space-popover-y, var(--post-safe-space-popover-y-start, 0)))}:where(post-popovercontainer):not(:has(.arrow))>div{box-shadow:var(--post-device-elevation-300)}:where(post-popovercontainer):has(.arrow)>div{filter:drop-shadow(1px 2px 3px hsla(216, 9%, 11%, 0.15)) drop-shadow(2px 4px 6px hsla(225, 17%, 9%, 0.15)) drop-shadow(4px 8px 12px hsla(225, 7%, 11%, 0.15))}:where(post-popovercontainer):has(.arrow.top)>div{filter:drop-shadow(0px -2px 3px hsla(216, 9%, 11%, 0.15)) drop-shadow(0px -4px 6px hsla(225, 17%, 9%, 0.15)) drop-shadow(0px -8px 12px hsla(225, 7%, 11%, 0.15))}:where(post-popovercontainer):has(.arrow.left)>div{filter:drop-shadow(-2px 0px 3px hsla(216, 9%, 11%, 0.15)) drop-shadow(-4px 0px 6px hsla(225, 17%, 9%, 0.15)) drop-shadow(-8px 0px 12px hsla(225, 7%, 11%, 0.15))}:where(post-popovercontainer):has(.arrow.right)>div{filter:drop-shadow(2px 0px 3px hsla(216, 9%, 11%, 0.15)) drop-shadow(4px 0px 6px hsla(225, 17%, 9%, 0.15)) drop-shadow(8px 0px 12px hsla(225, 7%, 11%, 0.15))}:where(post-popovercontainer) .arrow{position:absolute;width:.5825rem;height:.5825rem;background-color:inherit;rotate:45deg;pointer-events:none;z-index:-1}:where(post-popovercontainer) .arrow.top{border-block-start:2px solid rgba(0,0,0,0);border-inline-start:2px solid rgba(0,0,0,0)}:where(post-popovercontainer) .arrow.right{border-block-start:2px solid rgba(0,0,0,0);border-inline-end:2px solid rgba(0,0,0,0)}:where(post-popovercontainer) .arrow.left{border-block-end:2px solid rgba(0,0,0,0);border-inline-start:2px solid rgba(0,0,0,0)}:where(post-popovercontainer) .arrow.bottom{border-block-end:2px solid rgba(0,0,0,0);border-inline-end:2px solid rgba(0,0,0,0)}
|
|
@@ -5,11 +5,13 @@ import { arrow, autoUpdate, computePosition, flip, inline, limitShift, offset, s
|
|
|
5
5
|
import { PLACEMENT_TYPES } from "../../types/index";
|
|
6
6
|
// Polyfill for popovers, can be removed when https://caniuse.com/?search=popover is green
|
|
7
7
|
import { apply, isSupported } from "@oddbird/popover-polyfill/fn";
|
|
8
|
+
import { popIn } from "../../animations/pop-in";
|
|
8
9
|
/**
|
|
9
10
|
* @slot - Default slot for placing content inside the popovercontainer.
|
|
10
11
|
*/
|
|
11
12
|
export class PostPopovercontainer {
|
|
12
13
|
constructor() {
|
|
14
|
+
this.firstOpen = true;
|
|
13
15
|
/**
|
|
14
16
|
* Defines the placement of the popovercontainer according to the floating-ui options available at https://floating-ui.com/docs/computePosition#placement.
|
|
15
17
|
* Popovercontainers are automatically flipped to the opposite side if there is not enough available space and are shifted
|
|
@@ -109,9 +111,19 @@ export class PostPopovercontainer {
|
|
|
109
111
|
this.toggleTimeoutId = window.setTimeout(() => (this.toggleTimeoutId = null), 10);
|
|
110
112
|
const isOpen = e.newState === 'open';
|
|
111
113
|
if (isOpen) {
|
|
114
|
+
const content = this.host.querySelector('.popover-content');
|
|
112
115
|
this.startAutoupdates();
|
|
116
|
+
if (content && this.animation === 'pop-in') {
|
|
117
|
+
popIn(content);
|
|
118
|
+
}
|
|
113
119
|
if (this.safeSpace)
|
|
114
120
|
window.addEventListener('mousemove', this.mouseTrackingHandler.bind(this));
|
|
121
|
+
// Emit event with `first` flag only true on the first open
|
|
122
|
+
if (this.firstOpen) {
|
|
123
|
+
this.postToggle.emit({ isOpen, first: this.firstOpen });
|
|
124
|
+
this.firstOpen = false;
|
|
125
|
+
return;
|
|
126
|
+
}
|
|
115
127
|
}
|
|
116
128
|
else {
|
|
117
129
|
if (typeof this.clearAutoUpdate === 'function')
|
|
@@ -119,7 +131,7 @@ export class PostPopovercontainer {
|
|
|
119
131
|
if (this.safeSpace)
|
|
120
132
|
window.removeEventListener('mousemove', this.mouseTrackingHandler.bind(this));
|
|
121
133
|
}
|
|
122
|
-
this.postToggle.emit(isOpen);
|
|
134
|
+
this.postToggle.emit({ isOpen: isOpen, first: false });
|
|
123
135
|
}
|
|
124
136
|
/**
|
|
125
137
|
* Start listening for DOM updates, scroll events etc. that have
|
|
@@ -250,10 +262,9 @@ export class PostPopovercontainer {
|
|
|
250
262
|
}
|
|
251
263
|
}
|
|
252
264
|
render() {
|
|
253
|
-
|
|
254
|
-
return (h(Host, { key: '357f53696ca28ab2c137d47e2192038dc756c289', "data-version": version, popover: this.manualClose ? 'manual' : 'auto' }, h("div", { key: '9c40bdc5034ccf14157ee1ae8ce33fe58a9049e4', class: animationClass }, this.arrow && (h("span", { key: '6133ab54aaea6f198560ca5cb30f5604318203f6', class: "arrow", ref: el => {
|
|
265
|
+
return (h(Host, { key: '1594b782ac56ae23eba2df3f452ad40015ace67d', "data-version": version, popover: this.manualClose ? 'manual' : 'auto' }, h("div", { key: '565cbf870aca9abbc665525a627922d1cfdb9195', class: "popover-content" }, this.arrow && (h("span", { key: 'add7d6f7b176e7365b5a0c25fa81dd2a9520e7f3', class: "arrow", ref: el => {
|
|
255
266
|
this.arrowRef = el;
|
|
256
|
-
} })), h("slot", { key: '
|
|
267
|
+
} })), h("slot", { key: '308138890a4148c5c94b675e2a6b911fef1c31b5' }))));
|
|
257
268
|
}
|
|
258
269
|
static get is() { return "post-popovercontainer"; }
|
|
259
270
|
static get originalStyleUrls() {
|
|
@@ -404,11 +415,11 @@ export class PostPopovercontainer {
|
|
|
404
415
|
"composed": true,
|
|
405
416
|
"docs": {
|
|
406
417
|
"tags": [],
|
|
407
|
-
"text": "Fires whenever the popovercontainer gets shown or hidden, passing the
|
|
418
|
+
"text": "Fires whenever the popovercontainer gets shown or hidden, passing in event.detail an object containing two booleans: `isOpen`, which is true if the popovercontainer was opened and false if it was closed, and `first`, which is true if it was opened for the first time."
|
|
408
419
|
},
|
|
409
420
|
"complexType": {
|
|
410
|
-
"original": "boolean",
|
|
411
|
-
"resolved": "boolean",
|
|
421
|
+
"original": "{ isOpen: boolean; first?: boolean }",
|
|
422
|
+
"resolved": "{ isOpen: boolean; first?: boolean; }",
|
|
412
423
|
"references": {}
|
|
413
424
|
}
|
|
414
425
|
}];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
:host{display:inline-block}.rating{display:flex;flex-wrap:wrap;overflow:hidden;margin:0 calc(var(--post-core-dimension-4)*-1);border-radius:4px}.rating .star{--post-rating-star-stroke: hsl(0, 0%, 40%);--post-rating-star-fill: #fff;position:relative;width:2rem;height:2rem;cursor:pointer}.rating .star .stroke,.rating .star .fill{display:block;width:100%;height:100%;transition:all ease 100ms}.rating .star .stroke{position:absolute;inset:auto;z-index:1;color:var(--post-rating-star-stroke)}.rating .star .fill{margin:1px;width:calc(100% - 2px);height:calc(100% - 2px);color:var(--post-rating-star-fill)}.rating .star.before-hover{--post-rating-star-stroke: hsl(0, 0%, 40%);--post-rating-star-fill: #fc0}.rating .star.active{--post-rating-star-stroke: hsl(0, 0%, 20%);--post-rating-star-fill: #fc0}.rating .star.hover{--post-rating-star-stroke: hsl(0, 0%, 40%);--post-rating-star-fill: #fc0}.rating .star.after-active{--post-rating-star-stroke: hsl(0, 0%, 40%);--post-rating-star-fill: hsl(0, 0%, 80%)}.rating :focus{outline:none}.rating:focus-visible{outline-offset:var(--post-core-dimension-2);outline:var(--post-core-dimension-2) solid #1976c8}.rating[aria-readonly=true] .star,.rating[aria-disabled=true] .star{cursor:default}.rating[aria-disabled=true] .star{--post-rating-star-stroke: hsl(0, 0%, 60%);--post-rating-star-fill: #fff}.rating[aria-disabled=true] .star.active{cursor:default;--post-rating-star-stroke: hsl(0, 0%, 60%);--post-rating-star-fill: hsl(0, 0%, 90%)}
|
|
@@ -91,7 +91,7 @@ export class PostRating {
|
|
|
91
91
|
}
|
|
92
92
|
}
|
|
93
93
|
render() {
|
|
94
|
-
return (h(Host, { key: '
|
|
94
|
+
return (h(Host, { key: 'b7dcf175b548433023ea3344be40b1b34f366f3c', "data-version": version }, h("div", { key: '1ec0c35a4ec969f489196116c4fdbaf89f203bed', role: "slider", class: "rating", tabindex: "0", "aria-label": this.label, "aria-valuemin": "0", "aria-valuemax": this.stars, "aria-valuenow": this.currentRating, "aria-valuetext": `${this.currentRating} out of ${this.stars}`, "aria-readonly": this.readonly ? 'true' : 'false', onKeyDown: this.keydownHandler, onBlur: this.blurHandler }, Array.from({ length: this.stars }).map((v, i) => (h("div", { key: `star-${v}`, "aria-hidden": "true", class: {
|
|
95
95
|
'star': true,
|
|
96
96
|
'before-hover': i < this.hoveredIndex,
|
|
97
97
|
'active': i < Math.round(this.currentRating),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.tab-title[role=tab]{display:inline-block;cursor:pointer;position:relative;box-sizing:border-box;padding:1rem;transition:background-color 100ms;border-right:1px solid rgba(0,0,0,0);border-left:1px solid rgba(0,0,0,0);outline-color:currentColor;opacity:.7;color:#000;text-decoration:none;background-color:rgba(0,0,0,0)}.tab-title[role=tab]:focus{background-color:unset;color:#000}.tab-title[role=tab]:hover{opacity:1;background-color:rgba(0,0,0,.6);color:#fff}.tab-title[role=tab]:focus-visible{outline:rgba(0,0,0,0);opacity:1;background-color:rgba(0,0,0,.6);color:#fff;box-shadow:none}.tab-title[role=tab]:focus-visible::after{content:"";display:block;position:absolute;top:2px;right:1px;bottom:0;left:1px;box-shadow:0 0 0 1px #fff,0 0 0 2px #333}.tab-title[role=tab].active{z-index:1;border-right-color:#ccc;border-left-color:#ccc;opacity:1;background-color:#fff;color:#000;font-weight:700}.tab-title[role=tab].active::before{content:"";display:block;position:absolute;top:0;right:-1px;left:-1px;height:var(--post-core-dimension-4);background-color:#fc0}:where(.bg-dark,.bg-black,.bg-primary,.bg-secondary,.bg-success,.bg-error) .tab-title[role=tab]:hover{background-color:rgba(255,255,255,.2)}:where(.bg-dark,.bg-black,.bg-primary,.bg-secondary,.bg-success,.bg-error) .tab-title[role=tab]:focus-visible{background-color:rgba(255,255,255,.2)}@media(forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.tab-title[role=tab]{opacity:1;border-left-color:Canvas;border-right-color:Canvas;color:LinkText}.tab-title[role=tab]:hover,.tab-title[role=tab]:focus,.tab-title[role=tab]:focus-within,.tab-title[role=tab]:focus-visible{outline:var(--post-core-dimension-2) solid Highlight;outline-offset:calc(var(--post-core-dimension-4)*-1)}.tab-title[role=tab].active{border-left-color:ButtonText;border-right-color:ButtonText;color:Highlight}.tab-title[role=tab].active::before{background-color:Highlight}}
|
|
1
|
+
.tab-title[role=tab]{display:inline-block;cursor:pointer;position:relative;box-sizing:border-box;padding:1rem;transition:background-color 100ms;border-right:1px solid rgba(0,0,0,0);border-left:1px solid rgba(0,0,0,0);outline-color:currentColor;opacity:.7;color:#000;text-decoration:none;background-color:rgba(0,0,0,0)}.tab-title[role=tab]:focus{background-color:unset;color:#000}.tab-title[role=tab]:hover{opacity:1;background-color:rgba(0,0,0,.6);color:#fff}.tab-title[role=tab]:focus-visible{outline:rgba(0,0,0,0);opacity:1;background-color:rgba(0,0,0,.6);color:#fff;box-shadow:none}.tab-title[role=tab]:focus-visible::after{content:"";display:block;position:absolute;top:2px;right:1px;bottom:0;left:1px;box-shadow:0 0 0 1px #fff,0 0 0 2px #333}.tab-title[role=tab].active{z-index:1;border-right-color:#ccc;border-left-color:#ccc;opacity:1;background-color:#fff;color:#000;font-weight:700}.tab-title[role=tab].active::before{content:"";display:block;position:absolute;top:0;right:-1px;left:-1px;height:var(--post-core-dimension-4);background-color:#fc0}:where(.bg-dark,.bg-black,.bg-primary,.bg-secondary,.bg-success,.bg-error) .tab-title[role=tab]:hover{background-color:rgba(255,255,255,.2)}:where(.bg-dark,.bg-black,.bg-primary,.bg-secondary,.bg-success,.bg-error) .tab-title[role=tab]:focus-visible{background-color:rgba(255,255,255,.2)}@media(forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.tab-title[role=tab]{opacity:1;border-left-color:Canvas;border-right-color:Canvas;color:LinkText}.tab-title[role=tab]:hover,.tab-title[role=tab]:focus,.tab-title[role=tab]:focus-within,.tab-title[role=tab]:focus-visible{outline:var(--post-core-dimension-2) solid Highlight;outline-offset:calc(var(--post-core-dimension-4)*-1)}.tab-title[role=tab].active{border-left-color:ButtonText;border-right-color:ButtonText;color:Highlight}.tab-title[role=tab].active::before{background-color:Highlight}}:host{display:block}.tab-title{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}@media(forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.tab-title{background-color:ButtonFace !important}.tab-title:hover{background-color:Highlight !important}}
|
|
@@ -13,7 +13,7 @@ export class PostTabHeader {
|
|
|
13
13
|
this.tabId = `tab-${this.host.id || nanoid(6)}`;
|
|
14
14
|
}
|
|
15
15
|
render() {
|
|
16
|
-
return (h(Host, { key: '
|
|
16
|
+
return (h(Host, { key: '11b7499afb05a1d7e6f9af548667ec93f7c2af77', id: this.tabId, role: "tab", "data-version": version, "aria-selected": "false", tabindex: "-1", class: "tab-title", slot: "tabs" }, h("slot", { key: '589c626bd31aed39c1f90b74ee81b2d9fdf3b7c0' })));
|
|
17
17
|
}
|
|
18
18
|
static get is() { return "post-tab-header"; }
|
|
19
19
|
static get encapsulation() { return "shadow"; }
|
|
@@ -15,7 +15,7 @@ export class PostTabPanel {
|
|
|
15
15
|
this.panelId = `panel-${this.host.id || nanoid(6)}`;
|
|
16
16
|
}
|
|
17
17
|
render() {
|
|
18
|
-
return (h(Host, { key: '
|
|
18
|
+
return (h(Host, { key: '3f4af71d9dcd4c8d3a25514c4decf322b0297e0f', "data-version": version, id: this.panelId, role: "tabpanel" }, h("slot", { key: 'fb2106769715676d200722103855cb3f82f30b83' })));
|
|
19
19
|
}
|
|
20
20
|
static get is() { return "post-tab-panel"; }
|
|
21
21
|
static get encapsulation() { return "shadow"; }
|
|
@@ -5,8 +5,8 @@ import { componentOnReady } from "../../utils/index";
|
|
|
5
5
|
/**
|
|
6
6
|
* @slot tabs - Slot for placing tab headers. Each tab header should be a <post-tab-header> element.
|
|
7
7
|
* @slot default - Slot for placing tab panels. Each tab panel should be a <post-tab-panel> element.
|
|
8
|
-
* @part tabs -
|
|
9
|
-
* @part content -
|
|
8
|
+
* @part tabs - The container element that holds the set of tabs.
|
|
9
|
+
* @part content - The container element that displays the content of the currently active tab.
|
|
10
10
|
*/
|
|
11
11
|
export class PostTabs {
|
|
12
12
|
constructor() {
|
|
@@ -145,7 +145,7 @@ export class PostTabs {
|
|
|
145
145
|
nextTab.focus();
|
|
146
146
|
}
|
|
147
147
|
render() {
|
|
148
|
-
return (h(Host, { key: '
|
|
148
|
+
return (h(Host, { key: '8e205e26a016d6370919723522dc993befbc110a', "data-version": version }, h("div", { key: '1bd1b1064c87ab7dd04731a945a6169ace2ac203', class: "tabs-wrapper", part: "tabs" }, h("div", { key: 'e9d7989ae0488ed8c9d8d225c9b6f95e29de15aa', class: "tabs", role: "tablist" }, h("slot", { key: '381baa02f41fc07b6ae777fdcc47040ceaa553ea', name: "tabs", onSlotchange: () => this.enableTabs() }))), h("div", { key: 'aef6b1b4608e2b006ac808f7fc674dbc85011faa', class: "tab-content", part: "content" }, h("slot", { key: '4b98797972204262b1ebf29fe368ea90e2ccbce7', onSlotchange: () => this.moveMisplacedTabs() }))));
|
|
149
149
|
}
|
|
150
150
|
static get is() { return "post-tabs"; }
|
|
151
151
|
static get encapsulation() { return "shadow"; }
|
|
@@ -26,7 +26,7 @@ export class PostTogglebutton {
|
|
|
26
26
|
this.host.addEventListener('keydown', (e) => this.handleKeydown(e));
|
|
27
27
|
}
|
|
28
28
|
render() {
|
|
29
|
-
return (h(Host, { key: '
|
|
29
|
+
return (h(Host, { key: 'f6b56dc64dbff8ef94e4104eebe845a04f113c75', "data-version": version, role: "button", tabindex: "0", "aria-pressed": this.toggled.toString() }, h("slot", { key: '2846bb617c7a68ba6390fe27b043265569a9fd55' })));
|
|
30
30
|
}
|
|
31
31
|
static get is() { return "post-togglebutton"; }
|
|
32
32
|
static get encapsulation() { return "shadow"; }
|
|
@@ -60,11 +60,11 @@ export class PostTooltip {
|
|
|
60
60
|
* @param e Popovercontainer toggle event
|
|
61
61
|
*/
|
|
62
62
|
handleToggle(e) {
|
|
63
|
-
this.open = e.detail;
|
|
63
|
+
this.open = e.detail.isOpen;
|
|
64
64
|
}
|
|
65
65
|
render() {
|
|
66
66
|
const popoverClass = `${this.arrow ? 'has-arrow' : ''}`;
|
|
67
|
-
return (h(Host, { key: '
|
|
67
|
+
return (h(Host, { key: 'b2e72e54ae7c21cc8d47749269dea98cd5cd4fdf', "data-version": version }, h("post-popovercontainer", { key: '4280b99b2b919d07b40f6112ee514907eeff7211', safeSpace: "trapezoid", class: popoverClass, role: "tooltip", arrow: this.arrow, animation: this.animation, placement: this.placement, onPostToggle: e => this.handleToggle(e), ref: (el) => (this.popoverRef = el) }, h("slot", { key: 'da25daf633dc82191f0002c54f29b35731e35082' }))));
|
|
68
68
|
}
|
|
69
69
|
static get is() { return "post-tooltip"; }
|
|
70
70
|
static get encapsulation() { return "shadow"; }
|
|
@@ -169,7 +169,7 @@ export class PostTooltipTrigger {
|
|
|
169
169
|
this.tooltip?.hide();
|
|
170
170
|
}
|
|
171
171
|
render() {
|
|
172
|
-
return (h(Host, { key: '
|
|
172
|
+
return (h(Host, { key: '4890519cbc8f200cd5f2d6ef79822ec17776c7f0', "data-version": version }, h("slot", { key: '54e5d33bf2aae19f493aaff312f574b6e5fb55e6', onSlotchange: () => this.handleSlotChange() })));
|
|
173
173
|
}
|
|
174
174
|
static get is() { return "post-tooltip-trigger"; }
|
|
175
175
|
static get encapsulation() { return "shadow"; }
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
* @returns true if the event should be processed, false otherwise
|
|
8
8
|
*/
|
|
9
9
|
function shouldProcessEvent(event, tag, host, ignoreNestedComponents) {
|
|
10
|
-
if (!(event instanceof
|
|
10
|
+
if (!(event instanceof Event && event.target instanceof HTMLElement))
|
|
11
11
|
return false;
|
|
12
12
|
const eventTarget = event.target;
|
|
13
13
|
if (eventTarget.localName !== tag)
|
|
@@ -38,7 +38,7 @@ export function EventFrom(tag, option = { ignoreNestedComponents: true }) {
|
|
|
38
38
|
};
|
|
39
39
|
}
|
|
40
40
|
else {
|
|
41
|
-
// Creates a hidden storage property for the original method using a
|
|
41
|
+
// Creates a hidden storage property for the original method using a
|
|
42
42
|
// modified key format (__[property]_original) to avoid naming conflicts
|
|
43
43
|
const privateKey = `__${propertyKey}_original`;
|
|
44
44
|
// Create hidden storage for original method
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
{
|
|
2
|
+
"componentNames": [
|
|
3
|
+
"post-accordion",
|
|
4
|
+
"post-accordion-item",
|
|
5
|
+
"post-avatar",
|
|
6
|
+
"post-back-to-top",
|
|
7
|
+
"post-banner",
|
|
8
|
+
"post-breadcrumb-item",
|
|
9
|
+
"post-breadcrumbs",
|
|
10
|
+
"post-card-control",
|
|
11
|
+
"post-closebutton",
|
|
12
|
+
"post-collapsible",
|
|
13
|
+
"post-collapsible-trigger",
|
|
14
|
+
"post-footer",
|
|
15
|
+
"post-header",
|
|
16
|
+
"post-icon",
|
|
17
|
+
"post-language-option",
|
|
18
|
+
"post-language-switch",
|
|
19
|
+
"post-linkarea",
|
|
20
|
+
"post-list",
|
|
21
|
+
"post-list-item",
|
|
22
|
+
"post-logo",
|
|
23
|
+
"post-mainnavigation",
|
|
24
|
+
"post-megadropdown",
|
|
25
|
+
"post-megadropdown-trigger",
|
|
26
|
+
"post-menu",
|
|
27
|
+
"post-menu-item",
|
|
28
|
+
"post-menu-trigger",
|
|
29
|
+
"post-popover",
|
|
30
|
+
"post-popovercontainer",
|
|
31
|
+
"post-rating",
|
|
32
|
+
"post-tab-header",
|
|
33
|
+
"post-tab-panel",
|
|
34
|
+
"post-tabs",
|
|
35
|
+
"post-togglebutton",
|
|
36
|
+
"post-tooltip",
|
|
37
|
+
"post-tooltip-trigger"
|
|
38
|
+
]
|
|
39
|
+
}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
* @returns true if the event should be processed, false otherwise
|
|
8
8
|
*/
|
|
9
9
|
function shouldProcessEvent(event, tag, host, ignoreNestedComponents) {
|
|
10
|
-
if (!(event instanceof
|
|
10
|
+
if (!(event instanceof Event && event.target instanceof HTMLElement))
|
|
11
11
|
return false;
|
|
12
12
|
const eventTarget = event.target;
|
|
13
13
|
if (eventTarget.localName !== tag)
|
|
@@ -38,7 +38,7 @@ function EventFrom(tag, option = { ignoreNestedComponents: true }) {
|
|
|
38
38
|
};
|
|
39
39
|
}
|
|
40
40
|
else {
|
|
41
|
-
// Creates a hidden storage property for the original method using a
|
|
41
|
+
// Creates a hidden storage property for the original method using a
|
|
42
42
|
// modified key format (__[property]_original) to avoid naming conflicts
|
|
43
43
|
const privateKey = `__${propertyKey}_original`;
|
|
44
44
|
// Create hidden storage for original method
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { I as IS_BROWSER } from './breakpoints.js';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* getRootNode() can only be used after the element has been attached to the document!
|
|
5
|
+
* So use it for example in the componentDidLoad lifecycle hook.
|
|
6
|
+
*/
|
|
7
|
+
function getRoot(element) {
|
|
8
|
+
const root = IS_BROWSER ? element.getRootNode() : element;
|
|
9
|
+
if (root instanceof Document || root instanceof ShadowRoot) {
|
|
10
|
+
return root;
|
|
11
|
+
}
|
|
12
|
+
throw new Error('Attempting to access root node before the element is attached to the document or shadow tree.');
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
export { getRoot as g };
|
|
@@ -1,3 +1,75 @@
|
|
|
1
|
+
/* PostComponents custom elements */
|
|
2
|
+
export { PostAccordion as PostAccordion } from '../types/components/post-accordion/post-accordion';
|
|
3
|
+
export { defineCustomElement as defineCustomElementPostAccordion } from './post-accordion';
|
|
4
|
+
export { PostAccordionItem as PostAccordionItem } from '../types/components/post-accordion-item/post-accordion-item';
|
|
5
|
+
export { defineCustomElement as defineCustomElementPostAccordionItem } from './post-accordion-item';
|
|
6
|
+
export { PostAvatar as PostAvatar } from '../types/components/post-avatar/post-avatar';
|
|
7
|
+
export { defineCustomElement as defineCustomElementPostAvatar } from './post-avatar';
|
|
8
|
+
export { PostBackToTop as PostBackToTop } from '../types/components/post-back-to-top/post-back-to-top';
|
|
9
|
+
export { defineCustomElement as defineCustomElementPostBackToTop } from './post-back-to-top';
|
|
10
|
+
export { PostBanner as PostBanner } from '../types/components/post-banner/post-banner';
|
|
11
|
+
export { defineCustomElement as defineCustomElementPostBanner } from './post-banner';
|
|
12
|
+
export { PostBreadcrumbItem as PostBreadcrumbItem } from '../types/components/post-breadcrumb-item/post-breadcrumb-item';
|
|
13
|
+
export { defineCustomElement as defineCustomElementPostBreadcrumbItem } from './post-breadcrumb-item';
|
|
14
|
+
export { PostBreadcrumbs as PostBreadcrumbs } from '../types/components/post-breadcrumbs/post-breadcrumbs';
|
|
15
|
+
export { defineCustomElement as defineCustomElementPostBreadcrumbs } from './post-breadcrumbs';
|
|
16
|
+
export { PostCardControl as PostCardControl } from '../types/components/post-card-control/post-card-control';
|
|
17
|
+
export { defineCustomElement as defineCustomElementPostCardControl } from './post-card-control';
|
|
18
|
+
export { PostClosebutton as PostClosebutton } from '../types/components/post-closebutton/post-closebutton';
|
|
19
|
+
export { defineCustomElement as defineCustomElementPostClosebutton } from './post-closebutton';
|
|
20
|
+
export { PostCollapsible as PostCollapsible } from '../types/components/post-collapsible/post-collapsible';
|
|
21
|
+
export { defineCustomElement as defineCustomElementPostCollapsible } from './post-collapsible';
|
|
22
|
+
export { PostCollapsibleTrigger as PostCollapsibleTrigger } from '../types/components/post-collapsible-trigger/post-collapsible-trigger';
|
|
23
|
+
export { defineCustomElement as defineCustomElementPostCollapsibleTrigger } from './post-collapsible-trigger';
|
|
24
|
+
export { PostFooter as PostFooter } from '../types/components/post-footer/post-footer';
|
|
25
|
+
export { defineCustomElement as defineCustomElementPostFooter } from './post-footer';
|
|
26
|
+
export { PostHeader as PostHeader } from '../types/components/post-header/post-header';
|
|
27
|
+
export { defineCustomElement as defineCustomElementPostHeader } from './post-header';
|
|
28
|
+
export { PostIcon as PostIcon } from '../types/components/post-icon/post-icon';
|
|
29
|
+
export { defineCustomElement as defineCustomElementPostIcon } from './post-icon';
|
|
30
|
+
export { PostLanguageOption as PostLanguageOption } from '../types/components/post-language-option/post-language-option';
|
|
31
|
+
export { defineCustomElement as defineCustomElementPostLanguageOption } from './post-language-option';
|
|
32
|
+
export { PostLanguageSwitch as PostLanguageSwitch } from '../types/components/post-language-switch/post-language-switch';
|
|
33
|
+
export { defineCustomElement as defineCustomElementPostLanguageSwitch } from './post-language-switch';
|
|
34
|
+
export { PostLinkarea as PostLinkarea } from '../types/components/post-linkarea/post-linkarea';
|
|
35
|
+
export { defineCustomElement as defineCustomElementPostLinkarea } from './post-linkarea';
|
|
36
|
+
export { PostList as PostList } from '../types/components/post-list/post-list';
|
|
37
|
+
export { defineCustomElement as defineCustomElementPostList } from './post-list';
|
|
38
|
+
export { PostListItem as PostListItem } from '../types/components/post-list-item/post-list-item';
|
|
39
|
+
export { defineCustomElement as defineCustomElementPostListItem } from './post-list-item';
|
|
40
|
+
export { PostLogo as PostLogo } from '../types/components/post-logo/post-logo';
|
|
41
|
+
export { defineCustomElement as defineCustomElementPostLogo } from './post-logo';
|
|
42
|
+
export { PostMainnavigation as PostMainnavigation } from '../types/components/post-mainnavigation/post-mainnavigation';
|
|
43
|
+
export { defineCustomElement as defineCustomElementPostMainnavigation } from './post-mainnavigation';
|
|
44
|
+
export { PostMegadropdown as PostMegadropdown } from '../types/components/post-megadropdown/post-megadropdown';
|
|
45
|
+
export { defineCustomElement as defineCustomElementPostMegadropdown } from './post-megadropdown';
|
|
46
|
+
export { PostMegadropdownTrigger as PostMegadropdownTrigger } from '../types/components/post-megadropdown-trigger/post-megadropdown-trigger';
|
|
47
|
+
export { defineCustomElement as defineCustomElementPostMegadropdownTrigger } from './post-megadropdown-trigger';
|
|
48
|
+
export { PostMenu as PostMenu } from '../types/components/post-menu/post-menu';
|
|
49
|
+
export { defineCustomElement as defineCustomElementPostMenu } from './post-menu';
|
|
50
|
+
export { PostMenuItem as PostMenuItem } from '../types/components/post-menu-item/post-menu-item';
|
|
51
|
+
export { defineCustomElement as defineCustomElementPostMenuItem } from './post-menu-item';
|
|
52
|
+
export { PostMenuTrigger as PostMenuTrigger } from '../types/components/post-menu-trigger/post-menu-trigger';
|
|
53
|
+
export { defineCustomElement as defineCustomElementPostMenuTrigger } from './post-menu-trigger';
|
|
54
|
+
export { PostPopover as PostPopover } from '../types/components/post-popover/post-popover';
|
|
55
|
+
export { defineCustomElement as defineCustomElementPostPopover } from './post-popover';
|
|
56
|
+
export { PostPopovercontainer as PostPopovercontainer } from '../types/components/post-popovercontainer/post-popovercontainer';
|
|
57
|
+
export { defineCustomElement as defineCustomElementPostPopovercontainer } from './post-popovercontainer';
|
|
58
|
+
export { PostRating as PostRating } from '../types/components/post-rating/post-rating';
|
|
59
|
+
export { defineCustomElement as defineCustomElementPostRating } from './post-rating';
|
|
60
|
+
export { PostTabHeader as PostTabHeader } from '../types/components/post-tab-header/post-tab-header';
|
|
61
|
+
export { defineCustomElement as defineCustomElementPostTabHeader } from './post-tab-header';
|
|
62
|
+
export { PostTabPanel as PostTabPanel } from '../types/components/post-tab-panel/post-tab-panel';
|
|
63
|
+
export { defineCustomElement as defineCustomElementPostTabPanel } from './post-tab-panel';
|
|
64
|
+
export { PostTabs as PostTabs } from '../types/components/post-tabs/post-tabs';
|
|
65
|
+
export { defineCustomElement as defineCustomElementPostTabs } from './post-tabs';
|
|
66
|
+
export { PostTogglebutton as PostTogglebutton } from '../types/components/post-togglebutton/post-togglebutton';
|
|
67
|
+
export { defineCustomElement as defineCustomElementPostTogglebutton } from './post-togglebutton';
|
|
68
|
+
export { PostTooltip as PostTooltip } from '../types/components/post-tooltip/post-tooltip';
|
|
69
|
+
export { defineCustomElement as defineCustomElementPostTooltip } from './post-tooltip';
|
|
70
|
+
export { PostTooltipTrigger as PostTooltipTrigger } from '../types/components/post-tooltip-trigger/post-tooltip-trigger';
|
|
71
|
+
export { defineCustomElement as defineCustomElementPostTooltipTrigger } from './post-tooltip-trigger';
|
|
72
|
+
|
|
1
73
|
/**
|
|
2
74
|
* Get the base path to where the assets can be found. Use "setAssetPath(path)"
|
|
3
75
|
* if the path needs to be customized.
|
|
@@ -31,3 +103,4 @@ export interface SetPlatformOptions {
|
|
|
31
103
|
rel?: (el: EventTarget, eventName: string, listener: EventListenerOrEventListenerObject, options: boolean | AddEventListenerOptions) => void;
|
|
32
104
|
}
|
|
33
105
|
export declare const setPlatformOptions: (opts: SetPlatformOptions) => void;
|
|
106
|
+
export * from '../types';
|