@postnord/pn-marketweb-components 4.2.4 → 4.3.0
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/cjs/header-theme-a250bf67.js +245 -0
- package/cjs/header-theme-a250bf67.js.map +1 -0
- package/cjs/index-9a9efa1c.js +24 -16
- package/cjs/loader.cjs.js +1 -1
- package/cjs/pn-app-banner.cjs.entry.js +1 -1
- package/cjs/pn-breakpoints.cjs.entry.js +1 -1
- package/cjs/pn-chat-message_2.cjs.entry.js +2 -2
- package/cjs/pn-chat.cjs.entry.js +2 -2
- package/cjs/pn-customernumber-selector-option.cjs.entry.js +1 -1
- package/cjs/pn-customernumber-selector.cjs.entry.js +1 -1
- package/cjs/pn-find-price-result.cjs.entry.js +1 -1
- package/cjs/pn-find-price.cjs.entry.js +2 -2
- package/cjs/pn-find-service-and-price-result.cjs.entry.js +1 -1
- package/cjs/pn-find-service-and-price.cjs.entry.js +1 -1
- package/cjs/pn-hero-block-international.cjs.entry.js +1 -1
- package/cjs/pn-language-selector_13.cjs.entry.js +1519 -0
- package/cjs/pn-language-selector_13.cjs.entry.js.map +1 -0
- package/cjs/pn-level-up-modal.cjs.entry.js +1 -1
- package/cjs/pn-level-up.cjs.entry.js +2 -2
- package/cjs/pn-link-list.cjs.entry.js +1 -1
- package/cjs/pn-market-web-components.cjs.js +1 -1
- package/cjs/pn-marketweb-header-main-row_2.cjs.entry.js +222 -0
- package/cjs/pn-marketweb-header-main-row_2.cjs.entry.js.map +1 -0
- package/cjs/pn-marketweb-header-skeleton-loader.cjs.entry.js +23 -0
- package/cjs/pn-marketweb-header-skeleton-loader.cjs.entry.js.map +1 -0
- package/cjs/pn-marketweb-header-toggle.cjs.entry.js +46 -0
- package/cjs/pn-marketweb-header-toggle.cjs.entry.js.map +1 -0
- package/cjs/pn-marketweb-header.cjs.entry.js +1043 -0
- package/cjs/pn-marketweb-header.cjs.entry.js.map +1 -0
- package/cjs/pn-marketweb-icon.cjs.entry.js +1 -1
- package/cjs/{pn-marketweb-siteheader-login-linklist.cjs.entry.js → pn-marketweb-siteheader-login-button_2.cjs.entry.js} +44 -2
- package/cjs/pn-marketweb-siteheader-login-button_2.cjs.entry.js.map +1 -0
- package/cjs/pn-marketweb-siteheader-login-mypage-button.cjs.entry.js +1 -1
- package/cjs/pn-marketweb-siteheader.cjs.entry.js +7 -199
- package/cjs/pn-marketweb-siteheader.cjs.entry.js.map +1 -1
- package/cjs/pn-marketweb-table.cjs.entry.js +1 -1
- package/cjs/pn-media-block.cjs.entry.js +1 -1
- package/cjs/pn-pex-pricefinder.cjs.entry.js +1 -1
- package/cjs/pn-product-card_3.cjs.entry.js +1 -1
- package/cjs/pn-product-pricelist-result.cjs.entry.js +1 -1
- package/cjs/pn-product-pricelist.cjs.entry.js +2 -2
- package/cjs/pn-product-tile-info_2.cjs.entry.js +1 -1
- package/cjs/pn-product-tile.cjs.entry.js +1 -1
- package/cjs/pn-profile-modal-customernumber.cjs.entry.js +1 -1
- package/cjs/pn-profile-modal-profile.cjs.entry.js +2 -2
- package/cjs/pn-profile-modal-type.cjs.entry.js +1 -1
- package/cjs/pn-profile-modal.cjs.entry.js +1 -1
- package/cjs/pn-profile-selector-option.cjs.entry.js +1 -1
- package/cjs/pn-profile-selector.cjs.entry.js +1 -1
- package/cjs/pn-proxio-findprice-result.cjs.entry.js +1 -1
- package/cjs/pn-proxio-findprice.cjs.entry.js +3 -3
- package/cjs/pn-proxio-pricegroup.cjs.entry.js +1 -1
- package/cjs/pn-proxio-productcard_4.cjs.entry.js +3 -3
- package/cjs/pn-qr-code-generator.cjs.entry.js +1 -1
- package/cjs/pn-sidenav-level.cjs.entry.js +1 -1
- package/cjs/pn-sidenav-link.cjs.entry.js +1 -1
- package/cjs/pn-sidenav-togglebutton.cjs.entry.js +1 -1
- package/cjs/pn-sidenav.cjs.entry.js +1 -1
- package/cjs/pn-site-footer_3.cjs.entry.js +3 -3
- package/cjs/pn-titletag.cjs.entry.js +1 -1
- package/cjs/pn-usp-promoter.cjs.entry.js +1 -1
- package/cjs/pn-versa-card.cjs.entry.js +1 -1
- package/cjs/pn-versa-card.cjs.entry.js.map +1 -1
- package/cjs/translations-9510f11c.js +198 -0
- package/cjs/translations-9510f11c.js.map +1 -0
- package/collection/collection-manifest.json +5 -0
- package/collection/components/cards/pn-versa-card/pn-versa-card.css +27 -2
- package/collection/components/layout-components/pn-marketweb-header/components/pn-marketweb-header-main-row.css +204 -0
- package/collection/components/layout-components/pn-marketweb-header/components/pn-marketweb-header-main-row.js +658 -0
- package/collection/components/layout-components/pn-marketweb-header/components/pn-marketweb-header-main-row.js.map +1 -0
- package/collection/components/layout-components/pn-marketweb-header/components/pn-marketweb-header-skeleton-loader.css +217 -0
- package/collection/components/layout-components/pn-marketweb-header/components/pn-marketweb-header-skeleton-loader.js +20 -0
- package/collection/components/layout-components/pn-marketweb-header/components/pn-marketweb-header-skeleton-loader.js.map +1 -0
- package/collection/components/layout-components/pn-marketweb-header/components/pn-marketweb-header-top-row.css +115 -0
- package/collection/components/layout-components/pn-marketweb-header/components/pn-marketweb-header-top-row.js +520 -0
- package/collection/components/layout-components/pn-marketweb-header/components/pn-marketweb-header-top-row.js.map +1 -0
- package/collection/components/layout-components/pn-marketweb-header/components/shared/pn-marketweb-header-shared.js +37 -0
- package/collection/components/layout-components/pn-marketweb-header/components/shared/pn-marketweb-header-shared.js.map +1 -0
- package/collection/components/layout-components/pn-marketweb-header/mapper/pn-marketweb-header.mapper.js +109 -0
- package/collection/components/layout-components/pn-marketweb-header/mapper/pn-marketweb-header.mapper.js.map +1 -0
- package/collection/components/layout-components/pn-marketweb-header/pn-marketweb-header.css +225 -0
- package/collection/components/layout-components/pn-marketweb-header/pn-marketweb-header.js +916 -0
- package/collection/components/layout-components/pn-marketweb-header/pn-marketweb-header.js.map +1 -0
- package/collection/components/layout-components/pn-marketweb-header/pn-marketweb-header.stories.js +638 -0
- package/collection/components/layout-components/pn-marketweb-header/pn-marketweb-header.stories.js.map +1 -0
- package/collection/components/layout-components/pn-marketweb-header/services/pn-marketweb-header.service.js +180 -0
- package/collection/components/layout-components/pn-marketweb-header/services/pn-marketweb-header.service.js.map +1 -0
- package/collection/components/layout-components/pn-marketweb-header/types/pn-marketweb-header.types.js +2 -0
- package/collection/components/layout-components/pn-marketweb-header/types/pn-marketweb-header.types.js.map +1 -0
- package/collection/components/layout-components/pn-marketweb-header/utils/header-i18n.js +37 -0
- package/collection/components/layout-components/pn-marketweb-header/utils/header-i18n.js.map +1 -0
- package/collection/components/layout-components/pn-marketweb-header/utils/header-language.js +46 -0
- package/collection/components/layout-components/pn-marketweb-header/utils/header-language.js.map +1 -0
- package/collection/components/layout-components/pn-marketweb-header/utils/header-menu.js +36 -0
- package/collection/components/layout-components/pn-marketweb-header/utils/header-menu.js.map +1 -0
- package/collection/components/layout-components/pn-marketweb-header/utils/header-theme.js +48 -0
- package/collection/components/layout-components/pn-marketweb-header/utils/header-theme.js.map +1 -0
- package/collection/components/layout-components/pn-marketweb-header/utils/header-toggle-menu.js +101 -0
- package/collection/components/layout-components/pn-marketweb-header/utils/header-toggle-menu.js.map +1 -0
- package/collection/components/layout-components/pn-marketweb-header/utils/header-toggle-menu.storage.js +63 -0
- package/collection/components/layout-components/pn-marketweb-header/utils/header-toggle-menu.storage.js.map +1 -0
- package/collection/components/layout-components/pn-marketweb-header/utils/header-url.js +91 -0
- package/collection/components/layout-components/pn-marketweb-header/utils/header-url.js.map +1 -0
- package/collection/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-login-button.js +1 -1
- package/collection/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-login-linklist.css +34 -12
- package/collection/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-login-mypage-button.js +1 -1
- package/collection/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-login-profileselection.css +36 -15
- package/collection/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-login.css +27 -13
- package/collection/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-login.js +29 -4
- package/collection/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-login.js.map +1 -1
- package/collection/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-types.js.map +1 -1
- package/collection/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-unified-login.js +1 -1
- package/collection/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader.js +4 -4
- package/collection/components/media/pn-media-block/pn-media-block.js +1 -1
- package/collection/components/minor/pn-app-banner/pn-app-banner.js +1 -1
- package/collection/components/minor/pn-marketweb-icon/pn-marketweb-icon.js +1 -1
- package/collection/components/minor/pn-swan/pn-swan.js +1 -1
- package/collection/components/minor/pn-titletag/pn-titletag.js +1 -1
- package/collection/components/navigation/pn-language-selector/pn-language-selector-option.css +25 -12
- package/collection/components/navigation/pn-language-selector/pn-language-selector-option.js +1 -1
- package/collection/components/navigation/pn-language-selector/pn-language-selector.css +17 -5
- package/collection/components/navigation/pn-language-selector/pn-language-selector.js +22 -3
- package/collection/components/navigation/pn-language-selector/pn-language-selector.js.map +1 -1
- package/collection/components/navigation/pn-mainnav/pn-mainnav-level.css +37 -17
- package/collection/components/navigation/pn-mainnav/pn-mainnav-level.js +2 -2
- package/collection/components/navigation/pn-mainnav/pn-mainnav-link.css +81 -33
- package/collection/components/navigation/pn-mainnav/pn-mainnav-link.js +1 -1
- package/collection/components/navigation/pn-mainnav/pn-mainnav-list.css +12 -2
- package/collection/components/navigation/pn-mainnav/pn-mainnav-list.js +1 -1
- package/collection/components/navigation/pn-mainnav/pn-mainnav.css +35 -22
- package/collection/components/navigation/pn-mainnav/pn-mainnav.js +1 -1
- package/collection/components/navigation/pn-marketweb-header-toggle/pn-marketweb-header-toggle.css +80 -0
- package/collection/components/navigation/pn-marketweb-header-toggle/pn-marketweb-header-toggle.js +147 -0
- package/collection/components/navigation/pn-marketweb-header-toggle/pn-marketweb-header-toggle.js.map +1 -0
- package/collection/components/navigation/pn-sidenav/pn-sidenav-level.js +1 -1
- package/collection/components/navigation/pn-sidenav/pn-sidenav-link.js +1 -1
- package/collection/components/navigation/pn-sidenav/pn-sidenav-togglebutton.js +1 -1
- package/collection/components/navigation/pn-sidenav/pn-sidenav.js +1 -1
- package/collection/components/navigation/pn-site-footer/pn-site-footer-col.js +1 -1
- package/collection/components/navigation/pn-site-footer/pn-site-footer.js +1 -1
- package/collection/components/navigation/pn-site-selector/pn-site-selector-item.css +16 -12
- package/collection/components/navigation/pn-site-selector/pn-site-selector-item.js +1 -1
- package/collection/components/navigation/pn-site-selector/pn-site-selector.css +15 -0
- package/collection/components/navigation/pn-site-selector/pn-site-selector.js +22 -3
- package/collection/components/navigation/pn-site-selector/pn-site-selector.js.map +1 -1
- package/collection/components/profile/pn-customernumber-selector/pn-customernumber-selector-option.js +1 -1
- package/collection/components/profile/pn-customernumber-selector/pn-customernumber-selector.js +1 -1
- package/collection/components/profile/pn-profile-modal/pn-profile-modal-customernumber.js +1 -1
- package/collection/components/profile/pn-profile-modal/pn-profile-modal-profile.js +2 -2
- package/collection/components/profile/pn-profile-modal/pn-profile-modal-type.js +1 -1
- package/collection/components/profile/pn-profile-modal/pn-profile-modal.js +1 -1
- package/collection/components/profile/pn-profile-selector/pn-profile-selector-option.js +1 -1
- package/collection/components/profile/pn-profile-selector/pn-profile-selector.js +1 -1
- package/collection/components/utilities/pn-breakpoints/pn-breakpoints.js +1 -1
- package/collection/components/widgets/pn-chat/pn-chat-message/pn-chat-message.js +1 -1
- package/collection/components/widgets/pn-chat/pn-chat.js +2 -2
- package/collection/components/widgets/pn-find-price/pn-find-price-result.js +1 -1
- package/collection/components/widgets/pn-find-price/pn-find-price.js +2 -2
- package/collection/components/widgets/pn-find-service-and-price/pn-find-service-and-price-result.js +1 -1
- package/collection/components/widgets/pn-find-service-and-price/pn-find-service-and-price.js +1 -1
- package/collection/components/widgets/pn-hero-block-international/pn-hero-block-international.js +1 -1
- package/collection/components/widgets/pn-level-up/pn-level-up-modal/pn-level-up-modal.js +1 -1
- package/collection/components/widgets/pn-level-up/pn-level-up.js +2 -2
- package/collection/components/widgets/pn-link-list/pn-link-list.js +1 -1
- package/collection/components/widgets/pn-marketweb-carousel/pn-marketweb-carousel.js +1 -1
- package/collection/components/widgets/pn-marketweb-table/pn-marketweb-table.js +1 -1
- package/collection/components/widgets/pn-pex-pricefinder/pn-pex-pricefinder.js +1 -1
- package/collection/components/widgets/pn-product-card/pn-product-card.js +1 -1
- package/collection/components/widgets/pn-product-pricelist/pn-product-pricelist-result.js +1 -1
- package/collection/components/widgets/pn-product-pricelist/pn-product-pricelist.js +2 -2
- package/collection/components/widgets/pn-product-tile/pn-product-tile-info.js +1 -1
- package/collection/components/widgets/pn-product-tile/pn-product-tile.js +1 -1
- package/collection/components/widgets/pn-proxio-findprice/pn-proxio-findprice-result.js +1 -1
- package/collection/components/widgets/pn-proxio-findprice/pn-proxio-findprice.js +3 -3
- package/collection/components/widgets/pn-proxio-pricegroup/pn-proxio-pricegroup.js +1 -1
- package/collection/components/widgets/pn-proxio-productcard/pn-proxio-productcard-description.js +1 -1
- package/collection/components/widgets/pn-proxio-productcard/pn-proxio-productcard-information.js +1 -1
- package/collection/components/widgets/pn-proxio-productcard/pn-proxio-productcard.js +1 -1
- package/collection/components/widgets/pn-qr-code-generator/pn-qr-code-generator.js +1 -1
- package/collection/components/widgets/pn-usp-promoter/pn-usp-promoter.js +1 -1
- package/collection/services/pn-refined-marketweb-context/pn-refined-marketweb-context.constants.js +105 -0
- package/collection/services/pn-refined-marketweb-context/pn-refined-marketweb-context.constants.js.map +1 -0
- package/collection/services/pn-refined-marketweb-context/pn-refined-marketweb-context.service.js +166 -0
- package/collection/services/pn-refined-marketweb-context/pn-refined-marketweb-context.service.js.map +1 -0
- package/collection/services/pn-refined-marketweb-context/pn-refined-marketweb-context.types.js +2 -0
- package/collection/services/pn-refined-marketweb-context/pn-refined-marketweb-context.types.js.map +1 -0
- package/components/pn-app-banner.js +1 -1
- package/components/pn-breakpoints.js +1 -1
- package/components/pn-chat-message2.js +1 -1
- package/components/pn-chat.js +2 -2
- package/components/pn-customernumber-selector-option.js +1 -1
- package/components/pn-customernumber-selector.js +1 -1
- package/components/pn-find-price-result2.js +1 -1
- package/components/pn-find-price.js +2 -2
- package/components/pn-find-service-and-price-result2.js +1 -1
- package/components/pn-find-service-and-price.js +1 -1
- package/components/pn-hero-block-international.js +1 -1
- package/components/pn-language-selector-option2.js +2 -2
- package/components/pn-language-selector-option2.js.map +1 -1
- package/components/pn-language-selector2.js +4 -2
- package/components/pn-language-selector2.js.map +1 -1
- package/components/pn-level-up-modal2.js +1 -1
- package/components/pn-level-up.js +2 -2
- package/components/pn-link-list.js +1 -1
- package/components/pn-mainnav-level2.js +3 -3
- package/components/pn-mainnav-level2.js.map +1 -1
- package/components/pn-mainnav-link2.js +2 -2
- package/components/pn-mainnav-link2.js.map +1 -1
- package/components/pn-mainnav-list2.js +2 -2
- package/components/pn-mainnav-list2.js.map +1 -1
- package/components/pn-mainnav2.js +2 -2
- package/components/pn-mainnav2.js.map +1 -1
- package/components/pn-marketweb-carousel2.js +1 -1
- package/components/pn-marketweb-header-main-row.d.ts +11 -0
- package/components/pn-marketweb-header-main-row.js +8 -0
- package/components/pn-marketweb-header-main-row.js.map +1 -0
- package/components/pn-marketweb-header-main-row2.js +281 -0
- package/components/pn-marketweb-header-main-row2.js.map +1 -0
- package/components/pn-marketweb-header-shared.js +192 -0
- package/components/pn-marketweb-header-shared.js.map +1 -0
- package/components/pn-marketweb-header-skeleton-loader.d.ts +11 -0
- package/components/pn-marketweb-header-skeleton-loader.js +37 -0
- package/components/pn-marketweb-header-skeleton-loader.js.map +1 -0
- package/components/pn-marketweb-header-toggle.d.ts +11 -0
- package/components/pn-marketweb-header-toggle.js +8 -0
- package/components/pn-marketweb-header-toggle.js.map +1 -0
- package/components/pn-marketweb-header-toggle2.js +61 -0
- package/components/pn-marketweb-header-toggle2.js.map +1 -0
- package/components/pn-marketweb-header-top-row.d.ts +11 -0
- package/components/pn-marketweb-header-top-row.js +8 -0
- package/components/pn-marketweb-header-top-row.js.map +1 -0
- package/components/pn-marketweb-header-top-row2.js +238 -0
- package/components/pn-marketweb-header-top-row2.js.map +1 -0
- package/components/pn-marketweb-header.d.ts +11 -0
- package/components/pn-marketweb-header.js +1206 -0
- package/components/pn-marketweb-header.js.map +1 -0
- package/components/pn-marketweb-icon.js +1 -1
- package/components/pn-marketweb-siteheader-login-button2.js +1 -1
- package/components/pn-marketweb-siteheader-login-linklist2.js +1 -1
- package/components/pn-marketweb-siteheader-login-linklist2.js.map +1 -1
- package/components/pn-marketweb-siteheader-login-mypage-button.js +1 -1
- package/components/pn-marketweb-siteheader-login-profileselection2.js +1 -1
- package/components/pn-marketweb-siteheader-login-profileselection2.js.map +1 -1
- package/components/pn-marketweb-siteheader-login2.js +4 -2
- package/components/pn-marketweb-siteheader-login2.js.map +1 -1
- package/components/pn-marketweb-siteheader-unified-login2.js +1 -1
- package/components/pn-marketweb-siteheader.js +5 -197
- package/components/pn-marketweb-siteheader.js.map +1 -1
- package/components/pn-marketweb-table.js +1 -1
- package/components/pn-media-block.js +1 -1
- package/components/pn-pex-pricefinder.js +1 -1
- package/components/pn-product-card2.js +1 -1
- package/components/pn-product-pricelist-result.js +1 -1
- package/components/pn-product-pricelist.js +2 -2
- package/components/pn-product-tile-info2.js +1 -1
- package/components/pn-product-tile.js +1 -1
- package/components/pn-profile-modal-customernumber.js +1 -1
- package/components/pn-profile-modal-profile.js +2 -2
- package/components/pn-profile-modal-type.js +1 -1
- package/components/pn-profile-modal.js +1 -1
- package/components/pn-profile-selector-option.js +1 -1
- package/components/pn-profile-selector.js +1 -1
- package/components/pn-proxio-findprice-result2.js +2 -2
- package/components/pn-proxio-findprice.js +3 -3
- package/components/pn-proxio-pricegroup.js +2 -2
- package/components/pn-proxio-productcard-description2.js +1 -1
- package/components/pn-proxio-productcard-information2.js +1 -1
- package/components/pn-proxio-productcard2.js +1 -1
- package/components/pn-qr-code-generator2.js +1 -1
- package/components/pn-sidenav-level.js +1 -1
- package/components/pn-sidenav-link.js +1 -1
- package/components/pn-sidenav-togglebutton.js +1 -1
- package/components/pn-sidenav.js +1 -1
- package/components/pn-site-footer-col2.js +1 -1
- package/components/pn-site-footer2.js +1 -1
- package/components/pn-site-selector-item2.js +2 -2
- package/components/pn-site-selector-item2.js.map +1 -1
- package/components/pn-site-selector2.js +4 -2
- package/components/pn-site-selector2.js.map +1 -1
- package/components/pn-swan2.js +1 -1
- package/components/pn-titletag2.js +1 -1
- package/components/pn-usp-promoter.js +1 -1
- package/components/pn-versa-card.js +1 -1
- package/components/pn-versa-card.js.map +1 -1
- package/components/translations.js +189 -14
- package/components/translations.js.map +1 -1
- package/components/translations2.js +21 -0
- package/components/translations2.js.map +1 -0
- package/esm/header-theme-d09b64c7.js +234 -0
- package/esm/header-theme-d09b64c7.js.map +1 -0
- package/esm/index-c0a4d8bd.js +24 -16
- package/esm/loader.js +1 -1
- package/esm/pn-app-banner.entry.js +1 -1
- package/esm/pn-breakpoints.entry.js +1 -1
- package/esm/pn-chat-message_2.entry.js +2 -2
- package/esm/pn-chat.entry.js +2 -2
- package/esm/pn-customernumber-selector-option.entry.js +1 -1
- package/esm/pn-customernumber-selector.entry.js +1 -1
- package/esm/pn-find-price-result.entry.js +1 -1
- package/esm/pn-find-price.entry.js +2 -2
- package/esm/pn-find-service-and-price-result.entry.js +1 -1
- package/esm/pn-find-service-and-price.entry.js +1 -1
- package/esm/pn-hero-block-international.entry.js +1 -1
- package/esm/{pn-language-selector_9.entry.js → pn-language-selector_13.entry.js} +381 -22
- package/esm/pn-language-selector_13.entry.js.map +1 -0
- package/esm/pn-level-up-modal.entry.js +1 -1
- package/esm/pn-level-up.entry.js +2 -2
- package/esm/pn-link-list.entry.js +1 -1
- package/esm/pn-market-web-components.js +1 -1
- package/esm/pn-marketweb-header-main-row_2.entry.js +217 -0
- package/esm/pn-marketweb-header-main-row_2.entry.js.map +1 -0
- package/esm/pn-marketweb-header-skeleton-loader.entry.js +19 -0
- package/esm/pn-marketweb-header-skeleton-loader.entry.js.map +1 -0
- package/esm/pn-marketweb-header-toggle.entry.js +42 -0
- package/esm/pn-marketweb-header-toggle.entry.js.map +1 -0
- package/esm/pn-marketweb-header.entry.js +1039 -0
- package/esm/pn-marketweb-header.entry.js.map +1 -0
- package/esm/pn-marketweb-icon.entry.js +1 -1
- package/esm/{pn-marketweb-siteheader-login-linklist.entry.js → pn-marketweb-siteheader-login-button_2.entry.js} +44 -3
- package/esm/pn-marketweb-siteheader-login-button_2.entry.js.map +1 -0
- package/esm/pn-marketweb-siteheader-login-mypage-button.entry.js +1 -1
- package/esm/pn-marketweb-siteheader.entry.js +5 -197
- package/esm/pn-marketweb-siteheader.entry.js.map +1 -1
- package/esm/pn-marketweb-table.entry.js +1 -1
- package/esm/pn-media-block.entry.js +1 -1
- package/esm/pn-pex-pricefinder.entry.js +1 -1
- package/esm/pn-product-card_3.entry.js +1 -1
- package/esm/pn-product-pricelist-result.entry.js +1 -1
- package/esm/pn-product-pricelist.entry.js +2 -2
- package/esm/pn-product-tile-info_2.entry.js +1 -1
- package/esm/pn-product-tile.entry.js +1 -1
- package/esm/pn-profile-modal-customernumber.entry.js +1 -1
- package/esm/pn-profile-modal-profile.entry.js +2 -2
- package/esm/pn-profile-modal-type.entry.js +1 -1
- package/esm/pn-profile-modal.entry.js +1 -1
- package/esm/pn-profile-selector-option.entry.js +1 -1
- package/esm/pn-profile-selector.entry.js +1 -1
- package/esm/pn-proxio-findprice-result.entry.js +1 -1
- package/esm/pn-proxio-findprice.entry.js +3 -3
- package/esm/pn-proxio-pricegroup.entry.js +1 -1
- package/esm/pn-proxio-productcard_4.entry.js +3 -3
- package/esm/pn-qr-code-generator.entry.js +1 -1
- package/esm/pn-sidenav-level.entry.js +1 -1
- package/esm/pn-sidenav-link.entry.js +1 -1
- package/esm/pn-sidenav-togglebutton.entry.js +1 -1
- package/esm/pn-sidenav.entry.js +1 -1
- package/esm/pn-site-footer_3.entry.js +3 -3
- package/esm/pn-titletag.entry.js +1 -1
- package/esm/pn-usp-promoter.entry.js +1 -1
- package/esm/pn-versa-card.entry.js +1 -1
- package/esm/pn-versa-card.entry.js.map +1 -1
- package/esm/translations-d2f5804e.js +196 -0
- package/esm/translations-d2f5804e.js.map +1 -0
- package/package.json +1 -1
- package/pn-market-web-components/{p-4a164ef8.entry.js → p-03728b0b.entry.js} +2 -2
- package/pn-market-web-components/p-04f51418.js +2 -0
- package/pn-market-web-components/p-04f51418.js.map +1 -0
- package/pn-market-web-components/{p-e43a36e0.entry.js → p-067c1c2f.entry.js} +2 -2
- package/pn-market-web-components/p-16570ed2.entry.js +2 -0
- package/pn-market-web-components/p-16570ed2.entry.js.map +1 -0
- package/pn-market-web-components/{p-2616cdc1.entry.js → p-191c8cfc.entry.js} +2 -2
- package/pn-market-web-components/{p-ca003c1f.entry.js → p-1a91c313.entry.js} +2 -2
- package/pn-market-web-components/{p-ab1e3dc2.entry.js → p-1f8304be.entry.js} +2 -2
- package/pn-market-web-components/{p-a3f601cb.entry.js → p-24ffac0a.entry.js} +2 -2
- package/pn-market-web-components/p-3239c36b.entry.js +2 -0
- package/pn-market-web-components/p-3239c36b.entry.js.map +1 -0
- package/pn-market-web-components/{p-12cafd55.entry.js → p-3aa74418.entry.js} +2 -2
- package/pn-market-web-components/p-3d27faee.entry.js +2 -0
- package/pn-market-web-components/{p-9d0ca27b.entry.js.map → p-3d27faee.entry.js.map} +1 -1
- package/pn-market-web-components/p-3e25f431.entry.js +2 -0
- package/pn-market-web-components/p-3e25f431.entry.js.map +1 -0
- package/pn-market-web-components/{p-64f6691d.entry.js → p-42da7c5f.entry.js} +2 -2
- package/pn-market-web-components/{p-f0d423d0.entry.js → p-43748ca2.entry.js} +2 -2
- package/pn-market-web-components/{p-1c644b91.entry.js → p-466958a8.entry.js} +2 -2
- package/pn-market-web-components/{p-150da889.entry.js → p-4ab53d5d.entry.js} +2 -2
- package/pn-market-web-components/{p-118fe47d.entry.js → p-4d595345.entry.js} +2 -2
- package/pn-market-web-components/{p-0f6f715b.entry.js → p-4dac1980.entry.js} +2 -2
- package/pn-market-web-components/{p-a13f1f73.entry.js → p-4fcce83d.entry.js} +2 -2
- package/pn-market-web-components/{p-89fbca3b.entry.js → p-5a51d0b0.entry.js} +2 -2
- package/pn-market-web-components/{p-f4d2d0d3.entry.js → p-61346425.entry.js} +2 -2
- package/pn-market-web-components/{p-6e693269.entry.js → p-6b557670.entry.js} +2 -2
- package/pn-market-web-components/{p-e6d6a752.entry.js → p-70a71854.entry.js} +2 -2
- package/pn-market-web-components/p-75311d67.js +2 -0
- package/pn-market-web-components/p-75311d67.js.map +1 -0
- package/pn-market-web-components/p-756d8d95.entry.js +2 -0
- package/pn-market-web-components/p-756d8d95.entry.js.map +1 -0
- package/pn-market-web-components/{p-c0315c45.entry.js → p-76fb0c21.entry.js} +2 -2
- package/pn-market-web-components/{p-b2b2bae0.entry.js → p-81210644.entry.js} +2 -2
- package/pn-market-web-components/p-81e4d75b.entry.js +2 -0
- package/pn-market-web-components/p-81e4d75b.entry.js.map +1 -0
- package/pn-market-web-components/{p-d0f27361.entry.js → p-8382794b.entry.js} +2 -2
- package/pn-market-web-components/{p-8f25176b.entry.js → p-8519e39e.entry.js} +2 -2
- package/pn-market-web-components/p-8c26c1f2.entry.js +2 -0
- package/pn-market-web-components/p-8c26c1f2.entry.js.map +1 -0
- package/pn-market-web-components/{p-461c8792.entry.js → p-92b6477c.entry.js} +2 -2
- package/pn-market-web-components/{p-0d4d9d90.entry.js → p-9eab8192.entry.js} +2 -2
- package/pn-market-web-components/{p-40e632cc.entry.js → p-a3beee11.entry.js} +2 -2
- package/pn-market-web-components/{p-01fbf1ce.entry.js → p-a6935dc2.entry.js} +2 -2
- package/pn-market-web-components/{p-af646091.entry.js → p-a6dd3e4f.entry.js} +2 -2
- package/pn-market-web-components/{p-6d77e747.entry.js → p-af89c95a.entry.js} +2 -2
- package/pn-market-web-components/p-b318ff19.entry.js +2 -0
- package/pn-market-web-components/{p-0700cb4c.entry.js.map → p-b318ff19.entry.js.map} +1 -1
- package/pn-market-web-components/{p-c89f3d6b.entry.js → p-ba14b0ef.entry.js} +2 -2
- package/pn-market-web-components/{p-c7965104.entry.js → p-ba680948.entry.js} +2 -2
- package/pn-market-web-components/{p-11c6e458.entry.js → p-ba75bfdb.entry.js} +2 -2
- package/pn-market-web-components/{p-4149e715.entry.js → p-c186ec41.entry.js} +2 -2
- package/pn-market-web-components/{p-66c0c8dc.entry.js → p-c38707f9.entry.js} +2 -2
- package/pn-market-web-components/{p-671a8129.entry.js → p-c89cdd5a.entry.js} +2 -2
- package/pn-market-web-components/{p-4d848e18.entry.js → p-e8cd1608.entry.js} +2 -2
- package/pn-market-web-components/{p-4517a3d4.entry.js → p-ef090656.entry.js} +2 -2
- package/pn-market-web-components/p-f23ed5d2.entry.js +2 -0
- package/pn-market-web-components/p-f23ed5d2.entry.js.map +1 -0
- package/pn-market-web-components/{p-bd8ec517.entry.js → p-f3b4c13d.entry.js} +2 -2
- package/pn-market-web-components/{p-ff38b9a5.entry.js → p-f710445f.entry.js} +2 -2
- package/pn-market-web-components/{p-2e585ed5.entry.js → p-fcefe4a4.entry.js} +2 -2
- package/pn-market-web-components/p-fded22b7.entry.js +2 -0
- package/pn-market-web-components/p-fded22b7.entry.js.map +1 -0
- package/pn-market-web-components/{p-32bd2ff8.entry.js → p-ff6118f8.entry.js} +2 -2
- package/pn-market-web-components/pn-market-web-components.esm.js +1 -1
- package/pn-market-web-components/pn-market-web-components.esm.js.map +1 -1
- package/types/components/layout-components/pn-marketweb-header/components/pn-marketweb-header-main-row.d.ts +40 -0
- package/types/components/layout-components/pn-marketweb-header/components/pn-marketweb-header-skeleton-loader.d.ts +3 -0
- package/types/components/layout-components/pn-marketweb-header/components/pn-marketweb-header-top-row.d.ts +30 -0
- package/types/components/layout-components/pn-marketweb-header/components/shared/pn-marketweb-header-shared.d.ts +48 -0
- package/types/components/layout-components/pn-marketweb-header/mapper/pn-marketweb-header.mapper.d.ts +34 -0
- package/types/components/layout-components/pn-marketweb-header/pn-marketweb-header.d.ts +121 -0
- package/types/components/layout-components/pn-marketweb-header/pn-marketweb-header.stories.d.ts +99 -0
- package/types/components/layout-components/pn-marketweb-header/services/pn-marketweb-header.service.d.ts +108 -0
- package/types/components/layout-components/pn-marketweb-header/types/pn-marketweb-header.types.d.ts +103 -0
- package/types/components/layout-components/pn-marketweb-header/utils/header-i18n.d.ts +16 -0
- package/types/components/layout-components/pn-marketweb-header/utils/header-language.d.ts +20 -0
- package/types/components/layout-components/pn-marketweb-header/utils/header-menu.d.ts +16 -0
- package/types/components/layout-components/pn-marketweb-header/utils/header-theme.d.ts +6 -0
- package/types/components/layout-components/pn-marketweb-header/utils/header-toggle-menu.d.ts +49 -0
- package/types/components/layout-components/pn-marketweb-header/utils/header-toggle-menu.storage.d.ts +25 -0
- package/types/components/layout-components/pn-marketweb-header/utils/header-url.d.ts +41 -0
- package/types/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-login.d.ts +2 -0
- package/types/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-types.d.ts +1 -0
- package/types/components/navigation/pn-language-selector/pn-language-selector.d.ts +1 -0
- package/types/components/navigation/pn-marketweb-header-toggle/pn-marketweb-header-toggle.d.ts +25 -0
- package/types/components/navigation/pn-site-selector/pn-site-selector.d.ts +1 -0
- package/types/components/widgets/pn-proxio-pricegroup/pn-proxio-pricegroup.d.ts +1 -1
- package/types/components.d.ts +532 -2
- package/types/services/pn-refined-marketweb-context/pn-refined-marketweb-context.constants.d.ts +7 -0
- package/types/services/pn-refined-marketweb-context/pn-refined-marketweb-context.service.d.ts +24 -0
- package/types/services/pn-refined-marketweb-context/pn-refined-marketweb-context.types.d.ts +16 -0
- package/umd/pn-marketweb-init.js +1 -1
- package/umd/pn-marketweb-salesforce.js +1 -1
- package/vscode-data.json +421 -0
- package/cjs/pn-language-selector_9.cjs.entry.js +0 -1156
- package/cjs/pn-language-selector_9.cjs.entry.js.map +0 -1
- package/cjs/pn-mainnav-link.cjs.entry.js +0 -45
- package/cjs/pn-mainnav-link.cjs.entry.js.map +0 -1
- package/cjs/pn-mainnav-store-13aaa243.js +0 -22
- package/cjs/pn-mainnav-store-13aaa243.js.map +0 -1
- package/cjs/pn-marketweb-siteheader-login-button_4.cjs.entry.js +0 -366
- package/cjs/pn-marketweb-siteheader-login-button_4.cjs.entry.js.map +0 -1
- package/cjs/pn-marketweb-siteheader-login-linklist.cjs.entry.js.map +0 -1
- package/esm/pn-language-selector_9.entry.js.map +0 -1
- package/esm/pn-mainnav-link.entry.js +0 -41
- package/esm/pn-mainnav-link.entry.js.map +0 -1
- package/esm/pn-mainnav-store-c98d831e.js +0 -19
- package/esm/pn-mainnav-store-c98d831e.js.map +0 -1
- package/esm/pn-marketweb-siteheader-login-button_4.entry.js +0 -359
- package/esm/pn-marketweb-siteheader-login-button_4.entry.js.map +0 -1
- package/esm/pn-marketweb-siteheader-login-linklist.entry.js.map +0 -1
- package/pn-market-web-components/p-022780ab.entry.js +0 -2
- package/pn-market-web-components/p-022780ab.entry.js.map +0 -1
- package/pn-market-web-components/p-0700cb4c.entry.js +0 -2
- package/pn-market-web-components/p-3c69298b.entry.js +0 -2
- package/pn-market-web-components/p-3c69298b.entry.js.map +0 -1
- package/pn-market-web-components/p-4bc6d49f.entry.js +0 -2
- package/pn-market-web-components/p-4bc6d49f.entry.js.map +0 -1
- package/pn-market-web-components/p-4c8bda8f.entry.js +0 -2
- package/pn-market-web-components/p-4c8bda8f.entry.js.map +0 -1
- package/pn-market-web-components/p-5090bb1d.entry.js +0 -2
- package/pn-market-web-components/p-5090bb1d.entry.js.map +0 -1
- package/pn-market-web-components/p-9d0ca27b.entry.js +0 -2
- package/pn-market-web-components/p-a30de538.entry.js +0 -2
- package/pn-market-web-components/p-a30de538.entry.js.map +0 -1
- package/pn-market-web-components/p-e3b2486a.js +0 -2
- package/pn-market-web-components/p-e3b2486a.js.map +0 -1
- /package/pn-market-web-components/{p-4a164ef8.entry.js.map → p-03728b0b.entry.js.map} +0 -0
- /package/pn-market-web-components/{p-e43a36e0.entry.js.map → p-067c1c2f.entry.js.map} +0 -0
- /package/pn-market-web-components/{p-2616cdc1.entry.js.map → p-191c8cfc.entry.js.map} +0 -0
- /package/pn-market-web-components/{p-ca003c1f.entry.js.map → p-1a91c313.entry.js.map} +0 -0
- /package/pn-market-web-components/{p-ab1e3dc2.entry.js.map → p-1f8304be.entry.js.map} +0 -0
- /package/pn-market-web-components/{p-a3f601cb.entry.js.map → p-24ffac0a.entry.js.map} +0 -0
- /package/pn-market-web-components/{p-12cafd55.entry.js.map → p-3aa74418.entry.js.map} +0 -0
- /package/pn-market-web-components/{p-64f6691d.entry.js.map → p-42da7c5f.entry.js.map} +0 -0
- /package/pn-market-web-components/{p-f0d423d0.entry.js.map → p-43748ca2.entry.js.map} +0 -0
- /package/pn-market-web-components/{p-1c644b91.entry.js.map → p-466958a8.entry.js.map} +0 -0
- /package/pn-market-web-components/{p-150da889.entry.js.map → p-4ab53d5d.entry.js.map} +0 -0
- /package/pn-market-web-components/{p-118fe47d.entry.js.map → p-4d595345.entry.js.map} +0 -0
- /package/pn-market-web-components/{p-0f6f715b.entry.js.map → p-4dac1980.entry.js.map} +0 -0
- /package/pn-market-web-components/{p-a13f1f73.entry.js.map → p-4fcce83d.entry.js.map} +0 -0
- /package/pn-market-web-components/{p-89fbca3b.entry.js.map → p-5a51d0b0.entry.js.map} +0 -0
- /package/pn-market-web-components/{p-f4d2d0d3.entry.js.map → p-61346425.entry.js.map} +0 -0
- /package/pn-market-web-components/{p-6e693269.entry.js.map → p-6b557670.entry.js.map} +0 -0
- /package/pn-market-web-components/{p-e6d6a752.entry.js.map → p-70a71854.entry.js.map} +0 -0
- /package/pn-market-web-components/{p-c0315c45.entry.js.map → p-76fb0c21.entry.js.map} +0 -0
- /package/pn-market-web-components/{p-b2b2bae0.entry.js.map → p-81210644.entry.js.map} +0 -0
- /package/pn-market-web-components/{p-d0f27361.entry.js.map → p-8382794b.entry.js.map} +0 -0
- /package/pn-market-web-components/{p-8f25176b.entry.js.map → p-8519e39e.entry.js.map} +0 -0
- /package/pn-market-web-components/{p-461c8792.entry.js.map → p-92b6477c.entry.js.map} +0 -0
- /package/pn-market-web-components/{p-0d4d9d90.entry.js.map → p-9eab8192.entry.js.map} +0 -0
- /package/pn-market-web-components/{p-40e632cc.entry.js.map → p-a3beee11.entry.js.map} +0 -0
- /package/pn-market-web-components/{p-01fbf1ce.entry.js.map → p-a6935dc2.entry.js.map} +0 -0
- /package/pn-market-web-components/{p-af646091.entry.js.map → p-a6dd3e4f.entry.js.map} +0 -0
- /package/pn-market-web-components/{p-6d77e747.entry.js.map → p-af89c95a.entry.js.map} +0 -0
- /package/pn-market-web-components/{p-c89f3d6b.entry.js.map → p-ba14b0ef.entry.js.map} +0 -0
- /package/pn-market-web-components/{p-c7965104.entry.js.map → p-ba680948.entry.js.map} +0 -0
- /package/pn-market-web-components/{p-11c6e458.entry.js.map → p-ba75bfdb.entry.js.map} +0 -0
- /package/pn-market-web-components/{p-4149e715.entry.js.map → p-c186ec41.entry.js.map} +0 -0
- /package/pn-market-web-components/{p-66c0c8dc.entry.js.map → p-c38707f9.entry.js.map} +0 -0
- /package/pn-market-web-components/{p-671a8129.entry.js.map → p-c89cdd5a.entry.js.map} +0 -0
- /package/pn-market-web-components/{p-4d848e18.entry.js.map → p-e8cd1608.entry.js.map} +0 -0
- /package/pn-market-web-components/{p-4517a3d4.entry.js.map → p-ef090656.entry.js.map} +0 -0
- /package/pn-market-web-components/{p-bd8ec517.entry.js.map → p-f3b4c13d.entry.js.map} +0 -0
- /package/pn-market-web-components/{p-ff38b9a5.entry.js.map → p-f710445f.entry.js.map} +0 -0
- /package/pn-market-web-components/{p-2e585ed5.entry.js.map → p-fcefe4a4.entry.js.map} +0 -0
- /package/pn-market-web-components/{p-32bd2ff8.entry.js.map → p-ff6118f8.entry.js.map} +0 -0
package/collection/components/layout-components/pn-marketweb-header/utils/header-toggle-menu.js
ADDED
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
function getLastMenuItem(menuItems) {
|
|
2
|
+
return menuItems.length > 0
|
|
3
|
+
? menuItems[menuItems.length - 1]
|
|
4
|
+
: null;
|
|
5
|
+
}
|
|
6
|
+
function getModeRoots(menuItems) {
|
|
7
|
+
if (menuItems.length <= 1) {
|
|
8
|
+
return [];
|
|
9
|
+
}
|
|
10
|
+
return menuItems.slice(0, -1);
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Header menu mode utilities.
|
|
14
|
+
*
|
|
15
|
+
* Purpose
|
|
16
|
+
* -------
|
|
17
|
+
* Interprets the backend top-level menu structure used for header menu
|
|
18
|
+
* switching.
|
|
19
|
+
*
|
|
20
|
+
* Expected top-level order:
|
|
21
|
+
* - all items except the last = switchable root menus
|
|
22
|
+
* - last item = shared/common root
|
|
23
|
+
*
|
|
24
|
+
* Responsibilities
|
|
25
|
+
* ----------------
|
|
26
|
+
* - extract a structured representation of the switchable menu roots
|
|
27
|
+
* - resolve the active root for a selected mode
|
|
28
|
+
* - return grouped or flat visible items for rendering
|
|
29
|
+
*/
|
|
30
|
+
export function extractToggleableMenuStructure(menuItems) {
|
|
31
|
+
const sharedRoot = getLastMenuItem(menuItems);
|
|
32
|
+
const modeRoots = getModeRoots(menuItems);
|
|
33
|
+
const menuModeOptions = modeRoots.map((root, index) => ({
|
|
34
|
+
index,
|
|
35
|
+
label: root.name,
|
|
36
|
+
href: root.href || undefined,
|
|
37
|
+
root,
|
|
38
|
+
}));
|
|
39
|
+
return {
|
|
40
|
+
hasMenuSwitching: menuModeOptions.length > 0,
|
|
41
|
+
modeRoots,
|
|
42
|
+
menuModeOptions,
|
|
43
|
+
sharedRoot,
|
|
44
|
+
sharedItems: sharedRoot?.children ?? [],
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Returns the active root item for the selected mode.
|
|
49
|
+
*
|
|
50
|
+
* Falls back to the first available mode root when the requested mode
|
|
51
|
+
* is out of bounds.
|
|
52
|
+
*/
|
|
53
|
+
export function getToggleRootForMode(structure, mode) {
|
|
54
|
+
return structure.modeRoots[mode] ?? structure.modeRoots[0] ?? null;
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Returns the active root item for the selected mode directly from raw menu items.
|
|
58
|
+
*/
|
|
59
|
+
export function getToggleRootForMenuItems(menuItems, mode) {
|
|
60
|
+
const structure = extractToggleableMenuStructure(menuItems);
|
|
61
|
+
return getToggleRootForMode(structure, mode);
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Returns grouped visible items for rendering.
|
|
65
|
+
*
|
|
66
|
+
* - primaryItems = children of the active root
|
|
67
|
+
* - sharedItems = children of the shared/common root
|
|
68
|
+
*/
|
|
69
|
+
export function getMenuGroupsForMode(structure, mode) {
|
|
70
|
+
const activeRoot = getToggleRootForMode(structure, mode);
|
|
71
|
+
if (!activeRoot) {
|
|
72
|
+
return {
|
|
73
|
+
primaryItems: structure.sharedItems,
|
|
74
|
+
sharedItems: [],
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
return {
|
|
78
|
+
primaryItems: activeRoot?.children ?? [],
|
|
79
|
+
sharedItems: structure.sharedItems,
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Returns grouped visible items directly from raw menu items.
|
|
84
|
+
*/
|
|
85
|
+
export function getVisibleMenuGroupsForMode(menuItems, mode) {
|
|
86
|
+
const structure = extractToggleableMenuStructure(menuItems);
|
|
87
|
+
return getMenuGroupsForMode(structure, mode);
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Builds a flat list of visible menu items for the selected mode.
|
|
91
|
+
*
|
|
92
|
+
* Useful for render paths that do not need grouped rendering.
|
|
93
|
+
*/
|
|
94
|
+
export function buildMenuItemsForMode(structure, mode) {
|
|
95
|
+
const groups = getMenuGroupsForMode(structure, mode);
|
|
96
|
+
return [
|
|
97
|
+
...groups.primaryItems,
|
|
98
|
+
...groups.sharedItems,
|
|
99
|
+
];
|
|
100
|
+
}
|
|
101
|
+
//# sourceMappingURL=header-toggle-menu.js.map
|
package/collection/components/layout-components/pn-marketweb-header/utils/header-toggle-menu.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"header-toggle-menu.js","sourceRoot":"","sources":["../../../../../src/components/layout-components/pn-marketweb-header/utils/header-toggle-menu.ts"],"names":[],"mappings":"AAUA,SAAS,eAAe,CAAC,SAAqB;IAC1C,OAAO,SAAS,CAAC,MAAM,GAAG,CAAC;QACvB,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;QACjC,CAAC,CAAC,IAAI,CAAC;AACf,CAAC;AAED,SAAS,YAAY,CAAC,SAAqB;IACvC,IAAI,SAAS,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;QACxB,OAAO,EAAE,CAAC;IACd,CAAC;IAED,OAAO,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAClC,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,8BAA8B,CAC1C,SAAqB;IAErB,MAAM,UAAU,GAAG,eAAe,CAAC,SAAS,CAAC,CAAC;IAC9C,MAAM,SAAS,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC;IAE1C,MAAM,eAAe,GAA2B,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;QAC5E,KAAK;QACL,KAAK,EAAE,IAAI,CAAC,IAAI;QAChB,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,SAAS;QAC5B,IAAI;KACP,CAAC,CAAC,CAAC;IAEJ,OAAO;QACH,gBAAgB,EAAE,eAAe,CAAC,MAAM,GAAG,CAAC;QAC5C,SAAS;QACT,eAAe;QACf,UAAU;QACV,WAAW,EAAE,UAAU,EAAE,QAAQ,IAAI,EAAE;KAC1C,CAAC;AACN,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,oBAAoB,CAChC,SAA8B,EAC9B,IAAoB;IAEpB,OAAO,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;AACvE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,yBAAyB,CACrC,SAAqB,EACrB,IAAoB;IAEpB,MAAM,SAAS,GAAG,8BAA8B,CAAC,SAAS,CAAC,CAAC;IAC5D,OAAO,oBAAoB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;AACjD,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,oBAAoB,CAChC,SAA8B,EAC9B,IAAoB;IAEpB,MAAM,UAAU,GAAG,oBAAoB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IAEzD,IAAI,CAAC,UAAU,EAAE,CAAC;QACd,OAAO;YACH,YAAY,EAAE,SAAS,CAAC,WAAW;YACnC,WAAW,EAAE,EAAE;SAClB,CAAC;IACN,CAAC;IAED,OAAO;QACH,YAAY,EAAE,UAAU,EAAE,QAAQ,IAAI,EAAE;QACxC,WAAW,EAAE,SAAS,CAAC,WAAW;KACrC,CAAC;AACN,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,2BAA2B,CACvC,SAAqB,EACrB,IAAoB;IAEpB,MAAM,SAAS,GAAG,8BAA8B,CAAC,SAAS,CAAC,CAAC;IAC5D,OAAO,oBAAoB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;AACjD,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,qBAAqB,CACjC,SAA8B,EAC9B,IAAoB;IAEpB,MAAM,MAAM,GAAG,oBAAoB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IAErD,OAAO;QACH,GAAG,MAAM,CAAC,YAAY;QACtB,GAAG,MAAM,CAAC,WAAW;KACxB,CAAC;AACN,CAAC","sourcesContent":["import type {\n MenuItem,\n} from '../../pn-marketweb-siteheader/pn-marketweb-siteheader-types';\nimport type {\n HeaderMenuGroups,\n HeaderMenuMode,\n HeaderMenuModeOption,\n HeaderMenuStructure,\n} from '../types/pn-marketweb-header.types';\n\nfunction getLastMenuItem(menuItems: MenuItem[]): MenuItem | null {\n return menuItems.length > 0\n ? menuItems[menuItems.length - 1]\n : null;\n}\n\nfunction getModeRoots(menuItems: MenuItem[]): MenuItem[] {\n if (menuItems.length <= 1) {\n return [];\n }\n\n return menuItems.slice(0, -1);\n}\n\n/**\n * Header menu mode utilities.\n *\n * Purpose\n * -------\n * Interprets the backend top-level menu structure used for header menu\n * switching.\n *\n * Expected top-level order:\n * - all items except the last = switchable root menus\n * - last item = shared/common root\n *\n * Responsibilities\n * ----------------\n * - extract a structured representation of the switchable menu roots\n * - resolve the active root for a selected mode\n * - return grouped or flat visible items for rendering\n */\nexport function extractToggleableMenuStructure(\n menuItems: MenuItem[],\n): HeaderMenuStructure {\n const sharedRoot = getLastMenuItem(menuItems);\n const modeRoots = getModeRoots(menuItems);\n\n const menuModeOptions: HeaderMenuModeOption[] = modeRoots.map((root, index) => ({\n index,\n label: root.name,\n href: root.href || undefined,\n root,\n }));\n\n return {\n hasMenuSwitching: menuModeOptions.length > 0,\n modeRoots,\n menuModeOptions,\n sharedRoot,\n sharedItems: sharedRoot?.children ?? [],\n };\n}\n\n/**\n * Returns the active root item for the selected mode.\n *\n * Falls back to the first available mode root when the requested mode\n * is out of bounds.\n */\nexport function getToggleRootForMode(\n structure: HeaderMenuStructure,\n mode: HeaderMenuMode,\n): MenuItem | null {\n return structure.modeRoots[mode] ?? structure.modeRoots[0] ?? null;\n}\n\n/**\n * Returns the active root item for the selected mode directly from raw menu items.\n */\nexport function getToggleRootForMenuItems(\n menuItems: MenuItem[],\n mode: HeaderMenuMode,\n): MenuItem | null {\n const structure = extractToggleableMenuStructure(menuItems);\n return getToggleRootForMode(structure, mode);\n}\n\n/**\n * Returns grouped visible items for rendering.\n *\n * - primaryItems = children of the active root\n * - sharedItems = children of the shared/common root\n */\nexport function getMenuGroupsForMode(\n structure: HeaderMenuStructure,\n mode: HeaderMenuMode,\n): HeaderMenuGroups {\n const activeRoot = getToggleRootForMode(structure, mode);\n\n if (!activeRoot) {\n return {\n primaryItems: structure.sharedItems,\n sharedItems: [],\n };\n }\n\n return {\n primaryItems: activeRoot?.children ?? [],\n sharedItems: structure.sharedItems,\n };\n}\n\n/**\n * Returns grouped visible items directly from raw menu items.\n */\nexport function getVisibleMenuGroupsForMode(\n menuItems: MenuItem[],\n mode: HeaderMenuMode,\n): HeaderMenuGroups {\n const structure = extractToggleableMenuStructure(menuItems);\n return getMenuGroupsForMode(structure, mode);\n}\n\n/**\n * Builds a flat list of visible menu items for the selected mode.\n *\n * Useful for render paths that do not need grouped rendering.\n */\nexport function buildMenuItemsForMode(\n structure: HeaderMenuStructure,\n mode: HeaderMenuMode,\n): MenuItem[] {\n const groups = getMenuGroupsForMode(structure, mode);\n\n return [\n ...groups.primaryItems,\n ...groups.sharedItems,\n ];\n}"]}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
const STORAGE_KEY = 'pn-marketweb-header:menu-mode';
|
|
2
|
+
/**
|
|
3
|
+
* Returns the previously selected menu mode from localStorage.
|
|
4
|
+
*
|
|
5
|
+
* Returns null if:
|
|
6
|
+
* - nothing is stored
|
|
7
|
+
* - value is invalid
|
|
8
|
+
* - storage is unavailable
|
|
9
|
+
*/
|
|
10
|
+
export function getStoredHeaderMenuMode() {
|
|
11
|
+
if (typeof window === 'undefined') {
|
|
12
|
+
return null;
|
|
13
|
+
}
|
|
14
|
+
try {
|
|
15
|
+
const value = window.localStorage.getItem(STORAGE_KEY);
|
|
16
|
+
if (value == null) {
|
|
17
|
+
return null;
|
|
18
|
+
}
|
|
19
|
+
const parsed = Number(value);
|
|
20
|
+
if (Number.isInteger(parsed) && parsed >= 0) {
|
|
21
|
+
return parsed;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
catch {
|
|
25
|
+
// intentionally ignored
|
|
26
|
+
}
|
|
27
|
+
return null;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Persists the selected menu mode in localStorage.
|
|
31
|
+
*
|
|
32
|
+
* Storage failures are intentionally ignored.
|
|
33
|
+
*/
|
|
34
|
+
export function storeHeaderMenuMode(mode) {
|
|
35
|
+
if (typeof window === 'undefined') {
|
|
36
|
+
return;
|
|
37
|
+
}
|
|
38
|
+
try {
|
|
39
|
+
window.localStorage.setItem(STORAGE_KEY, String(mode));
|
|
40
|
+
}
|
|
41
|
+
catch {
|
|
42
|
+
// intentionally ignored
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Resolves the effective initial menu mode.
|
|
47
|
+
*
|
|
48
|
+
* Priority:
|
|
49
|
+
* 1. Stored user preference
|
|
50
|
+
* 2. Server-provided initial mode
|
|
51
|
+
* 3. Fallback to first mode (index 0)
|
|
52
|
+
*/
|
|
53
|
+
export function resolveInitialHeaderMenuMode(hasMenuSwitching, initialActiveMenuMode) {
|
|
54
|
+
if (!hasMenuSwitching) {
|
|
55
|
+
return 0;
|
|
56
|
+
}
|
|
57
|
+
const storedMode = getStoredHeaderMenuMode();
|
|
58
|
+
if (typeof storedMode === 'number') {
|
|
59
|
+
return storedMode;
|
|
60
|
+
}
|
|
61
|
+
return initialActiveMenuMode ?? 0;
|
|
62
|
+
}
|
|
63
|
+
//# sourceMappingURL=header-toggle-menu.storage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"header-toggle-menu.storage.js","sourceRoot":"","sources":["../../../../../src/components/layout-components/pn-marketweb-header/utils/header-toggle-menu.storage.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,GAAG,+BAA+B,CAAC;AAEpD;;;;;;;GAOG;AACH,MAAM,UAAU,uBAAuB;IACnC,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,CAAC;QAChC,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,IAAI,CAAC;QACD,MAAM,KAAK,GAAG,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAEvD,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;YAChB,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;QAC7B,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,MAAM,IAAI,CAAC,EAAE,CAAC;YAC1C,OAAO,MAAM,CAAC;QAClB,CAAC;IACL,CAAC;IAAC,MAAM,CAAC;QACL,wBAAwB;IAC5B,CAAC;IAED,OAAO,IAAI,CAAC;AAChB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAoB;IACpD,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,CAAC;QAChC,OAAO;IACX,CAAC;IAED,IAAI,CAAC;QACD,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IAC3D,CAAC;IAAC,MAAM,CAAC;QACL,wBAAwB;IAC5B,CAAC;AACL,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,4BAA4B,CACxC,gBAAyB,EACzB,qBAA6C;IAE7C,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACpB,OAAO,CAAC,CAAC;IACb,CAAC;IAED,MAAM,UAAU,GAAG,uBAAuB,EAAE,CAAC;IAC7C,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;QACjC,OAAO,UAAU,CAAC;IACtB,CAAC;IAED,OAAO,qBAAqB,IAAI,CAAC,CAAC;AACtC,CAAC","sourcesContent":["import type { HeaderMenuMode } from '../types/pn-marketweb-header.types';\n\nconst STORAGE_KEY = 'pn-marketweb-header:menu-mode';\n\n/**\n * Returns the previously selected menu mode from localStorage.\n *\n * Returns null if:\n * - nothing is stored\n * - value is invalid\n * - storage is unavailable\n */\nexport function getStoredHeaderMenuMode(): HeaderMenuMode | null {\n if (typeof window === 'undefined') {\n return null;\n }\n\n try {\n const value = window.localStorage.getItem(STORAGE_KEY);\n\n if (value == null) {\n return null;\n }\n\n const parsed = Number(value);\n if (Number.isInteger(parsed) && parsed >= 0) {\n return parsed;\n }\n } catch {\n // intentionally ignored\n }\n\n return null;\n}\n\n/**\n * Persists the selected menu mode in localStorage.\n *\n * Storage failures are intentionally ignored.\n */\nexport function storeHeaderMenuMode(mode: HeaderMenuMode): void {\n if (typeof window === 'undefined') {\n return;\n }\n\n try {\n window.localStorage.setItem(STORAGE_KEY, String(mode));\n } catch {\n // intentionally ignored\n }\n}\n\n/**\n * Resolves the effective initial menu mode.\n *\n * Priority:\n * 1. Stored user preference\n * 2. Server-provided initial mode\n * 3. Fallback to first mode (index 0)\n */\nexport function resolveInitialHeaderMenuMode(\n hasMenuSwitching: boolean,\n initialActiveMenuMode?: HeaderMenuMode | null,\n): HeaderMenuMode {\n if (!hasMenuSwitching) {\n return 0;\n }\n\n const storedMode = getStoredHeaderMenuMode();\n if (typeof storedMode === 'number') {\n return storedMode;\n }\n\n return initialActiveMenuMode ?? 0;\n}"]}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Removes duplicated language segments from generated URLs.
|
|
3
|
+
*
|
|
4
|
+
* Example:
|
|
5
|
+
* /sv/sv/page -> /sv/page
|
|
6
|
+
*
|
|
7
|
+
* This protects against incorrectly concatenated site-domain-based URLs.
|
|
8
|
+
*/
|
|
9
|
+
export function removeDoubleLanguage(url, language) {
|
|
10
|
+
if (!language) {
|
|
11
|
+
return url;
|
|
12
|
+
}
|
|
13
|
+
const languageSegment = language.toLowerCase() + '/';
|
|
14
|
+
const doubleLanguageSegment = '/' + languageSegment + languageSegment;
|
|
15
|
+
if (url.includes(doubleLanguageSegment)) {
|
|
16
|
+
return url.replace(doubleLanguageSegment, '/' + languageSegment);
|
|
17
|
+
}
|
|
18
|
+
return url;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Resolves a menu/login href to an absolute site-relative URL when needed.
|
|
22
|
+
*
|
|
23
|
+
* What it does:
|
|
24
|
+
* - Leaves fully-qualified http/https URLs unchanged
|
|
25
|
+
* - Prefixes relative URLs with the current site definition domain
|
|
26
|
+
* - Cleans up accidental double language segments
|
|
27
|
+
*/
|
|
28
|
+
export function adjustHref(href, siteDefinition, language) {
|
|
29
|
+
if (!href) {
|
|
30
|
+
return href;
|
|
31
|
+
}
|
|
32
|
+
if (href.indexOf('http') === 0) {
|
|
33
|
+
return href;
|
|
34
|
+
}
|
|
35
|
+
const siteUrl = siteDefinition?.url ?? '';
|
|
36
|
+
const domainUrl = siteUrl.lastIndexOf('/') === siteUrl.length - 1
|
|
37
|
+
? siteUrl.substring(0, siteUrl.length - 1)
|
|
38
|
+
: siteUrl;
|
|
39
|
+
return removeDoubleLanguage(domainUrl + href, language);
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Recursively adjusts a menu item and all child menu items so that
|
|
43
|
+
* relative URLs become site-domain-aware absolute URLs.
|
|
44
|
+
*
|
|
45
|
+
* This returns a new object rather than mutating the original API item.
|
|
46
|
+
*/
|
|
47
|
+
export function adjustMenuItemUrls(item, siteDefinition, language) {
|
|
48
|
+
return {
|
|
49
|
+
...item,
|
|
50
|
+
href: adjustHref(item.href, siteDefinition, language),
|
|
51
|
+
children: (item.children ?? []).map(child => adjustMenuItemUrls(child, siteDefinition, language)),
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Adjusts login dialog links so that relative URLs are resolved against
|
|
56
|
+
* the active site domain.
|
|
57
|
+
*
|
|
58
|
+
* This is used when siteDomainInUrls is enabled.
|
|
59
|
+
*/
|
|
60
|
+
export function adjustLoginDialogUrls(loginDialog, siteDefinition, language) {
|
|
61
|
+
if (!loginDialog) {
|
|
62
|
+
return null;
|
|
63
|
+
}
|
|
64
|
+
return {
|
|
65
|
+
...loginDialog,
|
|
66
|
+
loggedInLinks: (loginDialog.loggedInLinks ?? []).map(item => ({
|
|
67
|
+
...item,
|
|
68
|
+
href: adjustHref(item.href, siteDefinition, language),
|
|
69
|
+
})),
|
|
70
|
+
loginMenuLinks: (loginDialog.loginMenuLinks ?? []).map(item => ({
|
|
71
|
+
...item,
|
|
72
|
+
href: adjustHref(item.href, siteDefinition, language),
|
|
73
|
+
})),
|
|
74
|
+
};
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Navigates to the provided href when available.
|
|
78
|
+
*/
|
|
79
|
+
export function navigateToHref(href) {
|
|
80
|
+
if (!href) {
|
|
81
|
+
return;
|
|
82
|
+
}
|
|
83
|
+
window.location.href = href;
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Navigates to a menu item's href when available.
|
|
87
|
+
*/
|
|
88
|
+
export function navigateToMenuItem(item) {
|
|
89
|
+
navigateToHref(item?.href);
|
|
90
|
+
}
|
|
91
|
+
//# sourceMappingURL=header-url.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"header-url.js","sourceRoot":"","sources":["../../../../../src/components/layout-components/pn-marketweb-header/utils/header-url.ts"],"names":[],"mappings":"AAMA;;;;;;;GAOG;AACH,MAAM,UAAU,oBAAoB,CAAC,GAAW,EAAE,QAAgB;IAC9D,IAAI,CAAC,QAAQ,EAAE,CAAC;QACZ,OAAO,GAAG,CAAC;IACf,CAAC;IAED,MAAM,eAAe,GAAG,QAAQ,CAAC,WAAW,EAAE,GAAG,GAAG,CAAC;IACrD,MAAM,qBAAqB,GAAG,GAAG,GAAG,eAAe,GAAG,eAAe,CAAC;IAEtE,IAAI,GAAG,CAAC,QAAQ,CAAC,qBAAqB,CAAC,EAAE,CAAC;QACtC,OAAO,GAAG,CAAC,OAAO,CAAC,qBAAqB,EAAE,GAAG,GAAG,eAAe,CAAC,CAAC;IACrE,CAAC;IAED,OAAO,GAAG,CAAC;AACf,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,UAAU,CAAC,IAAY,EAAE,cAAkC,EAAE,QAAgB;IACzF,IAAI,CAAC,IAAI,EAAE,CAAC;QACR,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;QAC7B,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,MAAM,OAAO,GAAG,cAAc,EAAE,GAAG,IAAI,EAAE,CAAC;IAC1C,MAAM,SAAS,GACX,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,OAAO,CAAC,MAAM,GAAG,CAAC;QAC3C,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;QAC1C,CAAC,CAAC,OAAO,CAAC;IAElB,OAAO,oBAAoB,CAAC,SAAS,GAAG,IAAI,EAAE,QAAQ,CAAC,CAAC;AAC5D,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,kBAAkB,CAC9B,IAAc,EACd,cAAkC,EAClC,QAAgB;IAEhB,OAAO;QACH,GAAG,IAAI;QACP,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,EAAE,QAAQ,CAAC;QACrD,QAAQ,EAAE,CAAC,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAAC,KAAK,EAAE,cAAc,EAAE,QAAQ,CAAC,CAAC;KACpG,CAAC;AACN,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,qBAAqB,CACjC,WAA+B,EAC/B,cAAkC,EAClC,QAAgB;IAEhB,IAAI,CAAC,WAAW,EAAE,CAAC;QACf,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,OAAO;QACH,GAAG,WAAW;QACd,aAAa,EAAE,CAAC,WAAW,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC1D,GAAG,IAAI;YACP,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,EAAE,QAAQ,CAAC;SACxD,CAAC,CAAC;QACH,cAAc,EAAE,CAAC,WAAW,CAAC,cAAc,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC5D,GAAG,IAAI;YACP,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,EAAE,QAAQ,CAAC;SACxD,CAAC,CAAC;KACN,CAAC;AACN,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,IAAoB;IAC/C,IAAI,CAAC,IAAI,EAAE,CAAC;QACR,OAAO;IACX,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;AAChC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAAqB;IACpD,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AAC/B,CAAC","sourcesContent":["import {\n LoginDialog,\n MenuItem,\n MenuSiteDefinition,\n} from '../../pn-marketweb-siteheader/pn-marketweb-siteheader-types';\n\n/**\n * Removes duplicated language segments from generated URLs.\n *\n * Example:\n * /sv/sv/page -> /sv/page\n *\n * This protects against incorrectly concatenated site-domain-based URLs.\n */\nexport function removeDoubleLanguage(url: string, language: string): string {\n if (!language) {\n return url;\n }\n\n const languageSegment = language.toLowerCase() + '/';\n const doubleLanguageSegment = '/' + languageSegment + languageSegment;\n\n if (url.includes(doubleLanguageSegment)) {\n return url.replace(doubleLanguageSegment, '/' + languageSegment);\n }\n\n return url;\n}\n\n/**\n * Resolves a menu/login href to an absolute site-relative URL when needed.\n *\n * What it does:\n * - Leaves fully-qualified http/https URLs unchanged\n * - Prefixes relative URLs with the current site definition domain\n * - Cleans up accidental double language segments\n */\nexport function adjustHref(href: string, siteDefinition: MenuSiteDefinition, language: string): string {\n if (!href) {\n return href;\n }\n\n if (href.indexOf('http') === 0) {\n return href;\n }\n\n const siteUrl = siteDefinition?.url ?? '';\n const domainUrl =\n siteUrl.lastIndexOf('/') === siteUrl.length - 1\n ? siteUrl.substring(0, siteUrl.length - 1)\n : siteUrl;\n\n return removeDoubleLanguage(domainUrl + href, language);\n}\n\n/**\n * Recursively adjusts a menu item and all child menu items so that\n * relative URLs become site-domain-aware absolute URLs.\n *\n * This returns a new object rather than mutating the original API item.\n */\nexport function adjustMenuItemUrls(\n item: MenuItem,\n siteDefinition: MenuSiteDefinition,\n language: string,\n): MenuItem {\n return {\n ...item,\n href: adjustHref(item.href, siteDefinition, language),\n children: (item.children ?? []).map(child => adjustMenuItemUrls(child, siteDefinition, language)),\n };\n}\n\n/**\n * Adjusts login dialog links so that relative URLs are resolved against\n * the active site domain.\n *\n * This is used when siteDomainInUrls is enabled.\n */\nexport function adjustLoginDialogUrls(\n loginDialog: LoginDialog | null,\n siteDefinition: MenuSiteDefinition,\n language: string,\n): LoginDialog | null {\n if (!loginDialog) {\n return null;\n }\n\n return {\n ...loginDialog,\n loggedInLinks: (loginDialog.loggedInLinks ?? []).map(item => ({\n ...item,\n href: adjustHref(item.href, siteDefinition, language),\n })),\n loginMenuLinks: (loginDialog.loginMenuLinks ?? []).map(item => ({\n ...item,\n href: adjustHref(item.href, siteDefinition, language),\n })),\n };\n}\n\n/**\n * Navigates to the provided href when available.\n */\nexport function navigateToHref(href?: string | null): void {\n if (!href) {\n return;\n }\n\n window.location.href = href;\n}\n\n/**\n * Navigates to a menu item's href when available.\n */\nexport function navigateToMenuItem(item: MenuItem | null): void {\n navigateToHref(item?.href);\n}"]}
|
|
@@ -16,7 +16,7 @@ export class PnMarketwebSiteheaderLoginButton {
|
|
|
16
16
|
return navigationUrl;
|
|
17
17
|
}
|
|
18
18
|
render() {
|
|
19
|
-
return (h(Host, { key: '
|
|
19
|
+
return (h(Host, { key: '0cffb1a2af16a85f88b3a5dbe992c65c2cfda95f' }, h("pn-button", { key: 'bc5fd64d3f2d12a253cd725cbbb710466fdca6ab', href: this.nagivateToLoginUrl() }, this.label)));
|
|
20
20
|
}
|
|
21
21
|
static get is() { return "pn-marketweb-siteheader-login-button"; }
|
|
22
22
|
static get originalStyleUrls() {
|
|
@@ -27,48 +27,70 @@ pn-button-dropdown .pn-button-dropdown > pn-button > .pn-button {
|
|
|
27
27
|
}
|
|
28
28
|
}
|
|
29
29
|
|
|
30
|
+
pn-marketweb-siteheader-login-linklist {
|
|
31
|
+
--login-linklist-heading-color: var(--siteheader-login-linklist-heading-color, inherit);
|
|
32
|
+
--login-linklist-link-color: var(--siteheader-login-linklist-link-color, #005d92);
|
|
33
|
+
--login-linklist-link-hover-color: var(--siteheader-login-linklist-link-hover-color, #0d234b);
|
|
34
|
+
--login-linklist-button-link-color: var(--siteheader-login-linklist-button-link-color, #ffffff);
|
|
35
|
+
--login-linklist-icon-color: var(--siteheader-login-linklist-icon-color, #005d92);
|
|
36
|
+
--login-linklist-icon-hover-color: var(--siteheader-login-linklist-icon-hover-color, #0d234b);
|
|
37
|
+
}
|
|
38
|
+
|
|
30
39
|
pn-marketweb-siteheader-login-linklist {
|
|
31
40
|
display: flex;
|
|
32
41
|
flex-direction: column;
|
|
33
42
|
}
|
|
34
|
-
|
|
43
|
+
|
|
44
|
+
.pn-marketweb-siteheader-login-linklist-heading {
|
|
35
45
|
font-weight: 500;
|
|
36
46
|
font-size: 1.6rem;
|
|
37
47
|
margin-bottom: 2.4rem;
|
|
48
|
+
color: var(--login-linklist-heading-color);
|
|
38
49
|
}
|
|
50
|
+
|
|
39
51
|
pn-marketweb-siteheader-login-linklist strong {
|
|
40
52
|
margin-bottom: 2.4rem;
|
|
41
53
|
}
|
|
54
|
+
|
|
42
55
|
pn-marketweb-siteheader-login-linklist ul {
|
|
43
56
|
list-style-type: none;
|
|
44
57
|
padding: 0;
|
|
45
58
|
margin: 0;
|
|
46
59
|
}
|
|
60
|
+
|
|
47
61
|
pn-marketweb-siteheader-login-linklist ul > li {
|
|
48
62
|
margin-bottom: 2.4rem;
|
|
49
63
|
}
|
|
50
|
-
pn-marketweb-siteheader-login-linklist ul > li
|
|
51
|
-
|
|
64
|
+
pn-marketweb-siteheader-login-linklist ul > li:last-of-type {
|
|
65
|
+
margin-bottom: 0;
|
|
52
66
|
}
|
|
67
|
+
|
|
53
68
|
pn-marketweb-siteheader-login-linklist ul > li a {
|
|
54
69
|
text-decoration: none;
|
|
55
70
|
font-size: 1.6rem;
|
|
56
71
|
line-height: 1.5;
|
|
57
72
|
font-weight: 500;
|
|
58
73
|
}
|
|
74
|
+
pn-marketweb-siteheader-login-linklist ul > li a:hover {
|
|
75
|
+
color: var(--login-linklist-button-link-color);
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
pn-marketweb-siteheader-login-linklist ul > li a:not(.pn-button) {
|
|
79
|
+
color: var(--login-linklist-link-color);
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
pn-marketweb-siteheader-login-linklist ul > li:hover a:not(.pn-button) {
|
|
83
|
+
color: var(--login-linklist-link-hover-color);
|
|
84
|
+
text-decoration: underline;
|
|
85
|
+
}
|
|
86
|
+
|
|
59
87
|
pn-marketweb-siteheader-login-linklist ul > li pn-icon {
|
|
60
88
|
padding-left: 0.8rem;
|
|
61
89
|
}
|
|
62
90
|
pn-marketweb-siteheader-login-linklist ul > li pn-icon svg > path {
|
|
63
|
-
fill:
|
|
64
|
-
}
|
|
65
|
-
pn-marketweb-siteheader-login-linklist ul > li:hover a {
|
|
66
|
-
color: #0d234b;
|
|
67
|
-
text-decoration: underline;
|
|
91
|
+
fill: var(--login-linklist-icon-color) !important;
|
|
68
92
|
}
|
|
93
|
+
|
|
69
94
|
pn-marketweb-siteheader-login-linklist ul > li:hover pn-icon svg > path {
|
|
70
|
-
fill:
|
|
71
|
-
}
|
|
72
|
-
pn-marketweb-siteheader-login-linklist ul > li:last-of-type {
|
|
73
|
-
margin-bottom: 0;
|
|
95
|
+
fill: var(--login-linklist-icon-hover-color) !important;
|
|
74
96
|
}
|
|
@@ -6,7 +6,7 @@ export class PnMarketwebSiteheaderLoginMypageButton {
|
|
|
6
6
|
}
|
|
7
7
|
hostElement;
|
|
8
8
|
render() {
|
|
9
|
-
return (h(Host, { key: '
|
|
9
|
+
return (h(Host, { key: 'c124432d15ec5bdf0aa2bbeb4354f6ecf2bce080' }, h("pn-button", { key: 'a5dd43d7ed7d03ca1cbe6ac6ff467cb75da83082', href: this.myPageUrl }, this.label)));
|
|
10
10
|
}
|
|
11
11
|
static get is() { return "pn-marketweb-siteheader-login-mypage-button"; }
|
|
12
12
|
static get originalStyleUrls() {
|
|
@@ -27,9 +27,29 @@ pn-button-dropdown .pn-button-dropdown > pn-button > .pn-button {
|
|
|
27
27
|
}
|
|
28
28
|
}
|
|
29
29
|
|
|
30
|
+
pn-marketweb-siteheader-login-profileselection {
|
|
31
|
+
--login-profileselection-heading-color: var(--siteheader-login-profileselection-heading-color,
|
|
32
|
+
inherit);
|
|
33
|
+
--login-profileselection-description-color: var(--siteheader-login-profileselection-description-color,
|
|
34
|
+
#5e554a);
|
|
35
|
+
--login-profileselection-user-name-color: var(--siteheader-login-profileselection-user-name-color,
|
|
36
|
+
inherit);
|
|
37
|
+
--login-profileselection-divider-background: var(--siteheader-login-profileselection-divider-background,
|
|
38
|
+
#00a0d6);
|
|
39
|
+
--login-profileselection-profileoption-link-background: var(--siteheader-login-profileselection-profileoption-link-background,
|
|
40
|
+
#ffffff);
|
|
41
|
+
--login-profileselection-profileoption-link-color: var(--siteheader-login-profileselection-profileoption-link-color,
|
|
42
|
+
#005d92);
|
|
43
|
+
--login-profileselection-profileoption-link-hover-background: var(--siteheader-login-profileselection-profileoption-link-hover-background,
|
|
44
|
+
#f3f2f2);
|
|
45
|
+
--login-profileselection-logout-link-color: var(--siteheader-login-profileselection-logout-link-color,
|
|
46
|
+
#005d92);
|
|
47
|
+
}
|
|
48
|
+
|
|
30
49
|
.pn-marketweb-siteheader-login-profileselection-heading {
|
|
31
50
|
display: block;
|
|
32
51
|
padding: 0.5rem 0 1rem;
|
|
52
|
+
color: var(--login-profileselection-heading-color);
|
|
33
53
|
}
|
|
34
54
|
|
|
35
55
|
.pn-marketweb-siteheader-login-profileselection-user,
|
|
@@ -41,6 +61,7 @@ pn-button-dropdown .pn-button-dropdown > pn-button > .pn-button {
|
|
|
41
61
|
.pn-marketweb-siteheader-login-profileselection-user-name,
|
|
42
62
|
.pn-marketweb-siteheader-login-profileselection-currentprofile-name {
|
|
43
63
|
line-height: 1;
|
|
64
|
+
color: var(--login-profileselection-user-name-color);
|
|
44
65
|
}
|
|
45
66
|
|
|
46
67
|
.pn-marketweb-siteheader-login-profileselection-user-description,
|
|
@@ -48,15 +69,15 @@ pn-button-dropdown .pn-button-dropdown > pn-button > .pn-button {
|
|
|
48
69
|
font-weight: 400;
|
|
49
70
|
white-space: normal;
|
|
50
71
|
word-break: break-all;
|
|
51
|
-
color:
|
|
72
|
+
color: var(--login-profileselection-description-color);
|
|
52
73
|
font-size: 0.75em;
|
|
53
74
|
}
|
|
54
75
|
|
|
55
76
|
.pn-marketweb-siteheader-login-profileselection-divider {
|
|
56
|
-
height: 1rem;
|
|
57
|
-
width: 100%;
|
|
58
|
-
background: #00a0d6;
|
|
59
77
|
position: relative;
|
|
78
|
+
width: 100%;
|
|
79
|
+
height: 1rem;
|
|
80
|
+
background: var(--login-profileselection-divider-background);
|
|
60
81
|
margin-left: -1em;
|
|
61
82
|
margin-top: 1.6rem;
|
|
62
83
|
margin-bottom: 1.6rem;
|
|
@@ -65,28 +86,28 @@ pn-button-dropdown .pn-button-dropdown > pn-button > .pn-button {
|
|
|
65
86
|
}
|
|
66
87
|
.pn-marketweb-siteheader-login-profileselection-divider::after {
|
|
67
88
|
content: "";
|
|
68
|
-
width: 0.6em;
|
|
69
|
-
height: 0.6em;
|
|
70
|
-
border-radius: 50%;
|
|
71
89
|
position: absolute;
|
|
72
90
|
right: 0;
|
|
73
91
|
top: 0;
|
|
92
|
+
width: 0.6em;
|
|
93
|
+
height: 0.6em;
|
|
94
|
+
border-radius: 50%;
|
|
74
95
|
background: inherit;
|
|
75
96
|
transform: translateX(calc(100% + 0.2em));
|
|
76
97
|
}
|
|
77
98
|
|
|
78
99
|
.pn-marketweb-siteheader-login-profileselection-profileoption-link {
|
|
79
100
|
display: flex;
|
|
80
|
-
|
|
81
|
-
transition: background 0.15s ease-in-out;
|
|
101
|
+
align-items: center;
|
|
82
102
|
margin: 0 -1em;
|
|
83
103
|
padding: 0.6rem 1.6rem;
|
|
104
|
+
background: var(--login-profileselection-profileoption-link-background);
|
|
105
|
+
color: var(--login-profileselection-profileoption-link-color);
|
|
84
106
|
text-decoration: none;
|
|
85
|
-
|
|
86
|
-
align-items: center;
|
|
107
|
+
transition: background 0.15s ease-in-out;
|
|
87
108
|
}
|
|
88
109
|
.pn-marketweb-siteheader-login-profileselection-profileoption-link:hover, .pn-marketweb-siteheader-login-profileselection-profileoption-link:focus, .pn-marketweb-siteheader-login-profileselection-profileoption-link:active {
|
|
89
|
-
background:
|
|
110
|
+
background: var(--login-profileselection-profileoption-link-hover-background);
|
|
90
111
|
}
|
|
91
112
|
|
|
92
113
|
.pn-marketweb-siteheader-login-profileselection-profileoption-content {
|
|
@@ -101,20 +122,20 @@ pn-button-dropdown .pn-button-dropdown > pn-button > .pn-button {
|
|
|
101
122
|
font-weight: 400;
|
|
102
123
|
white-space: normal;
|
|
103
124
|
word-break: break-all;
|
|
104
|
-
color:
|
|
125
|
+
color: var(--login-profileselection-description-color);
|
|
105
126
|
font-size: 0.75em;
|
|
106
127
|
}
|
|
107
128
|
|
|
108
129
|
.pn-marketweb-siteheader-login-profileselection-logout {
|
|
130
|
+
width: 100%;
|
|
109
131
|
padding: 1.6rem;
|
|
110
132
|
text-align: center;
|
|
111
|
-
width: 100%;
|
|
112
133
|
}
|
|
113
134
|
|
|
114
135
|
.pn-marketweb-siteheader-login-profileselection-logout-link {
|
|
115
136
|
display: inline-block;
|
|
116
137
|
font-weight: 500;
|
|
117
|
-
color:
|
|
138
|
+
color: var(--login-profileselection-logout-link-color);
|
|
118
139
|
text-decoration: none;
|
|
119
140
|
}
|
|
120
141
|
.pn-marketweb-siteheader-login-profileselection-logout-link:hover, .pn-marketweb-siteheader-login-profileselection-logout-link:focus, .pn-marketweb-siteheader-login-profileselection-logout-link:active {
|
|
@@ -28,10 +28,23 @@ pn-button-dropdown .pn-button-dropdown > pn-button > .pn-button {
|
|
|
28
28
|
}
|
|
29
29
|
|
|
30
30
|
pn-marketweb-siteheader-login {
|
|
31
|
+
--login-dropdown-divider-background: var(--siteheader-login-dropdown-divider-background,
|
|
32
|
+
#f9f8f8);
|
|
33
|
+
--login-dropdown-text-color: var(--siteheader-login-dropdown-text-color,
|
|
34
|
+
#2d2013);
|
|
35
|
+
--login-dropdown-link-color: var(--siteheader-login-dropdown-link-color,
|
|
36
|
+
#005d92);
|
|
37
|
+
--login-dropdown-link-hover-decoration: var(--siteheader-login-dropdown-link-hover-decoration,
|
|
38
|
+
underline);
|
|
39
|
+
--login-dark-icon-hover-fill: var(--siteheader-login-dark-icon-hover-fill,
|
|
40
|
+
#000000);
|
|
31
41
|
padding: 1rem 0;
|
|
32
42
|
max-height: 5.2rem;
|
|
33
43
|
position: relative;
|
|
34
44
|
}
|
|
45
|
+
pn-marketweb-siteheader-login pn-button-dropdown {
|
|
46
|
+
display: none;
|
|
47
|
+
}
|
|
35
48
|
pn-marketweb-siteheader-login pn-button-dropdown .pn-button-dropdown-container .pn-button-dropdown-content {
|
|
36
49
|
max-width: 350px;
|
|
37
50
|
display: flex;
|
|
@@ -45,36 +58,37 @@ pn-marketweb-siteheader-login pn-button-dropdown .pn-button-dropdown-container .
|
|
|
45
58
|
pn-marketweb-siteheader-login pn-button-dropdown .pn-button-dropdown-container .pn-button-dropdown-content pn-marketweb-siteheader-unified-login::after {
|
|
46
59
|
display: block;
|
|
47
60
|
content: "";
|
|
48
|
-
height: 2px;
|
|
49
|
-
background: #f9f8f8;
|
|
50
61
|
width: 100%;
|
|
62
|
+
height: 2px;
|
|
51
63
|
margin-top: 2.4rem;
|
|
64
|
+
background: var(--login-dropdown-divider-background);
|
|
65
|
+
}
|
|
66
|
+
pn-marketweb-siteheader-login pn-button-dropdown .pn-button-dropdown-container .pn-button-dropdown-content span {
|
|
67
|
+
font-size: 1.4rem;
|
|
68
|
+
color: var(--login-dropdown-text-color);
|
|
52
69
|
}
|
|
53
70
|
pn-marketweb-siteheader-login pn-button-dropdown .pn-button-dropdown-container .pn-button-dropdown-content span::before {
|
|
54
71
|
display: block;
|
|
55
72
|
content: "";
|
|
56
|
-
height: 2px;
|
|
57
|
-
background: #f9f8f8;
|
|
58
73
|
width: 100%;
|
|
74
|
+
height: 2px;
|
|
59
75
|
margin-bottom: 2.4rem;
|
|
60
|
-
|
|
61
|
-
pn-marketweb-siteheader-login pn-button-dropdown .pn-button-dropdown-container .pn-button-dropdown-content span {
|
|
62
|
-
font-size: 1.4rem;
|
|
63
|
-
color: #2d2013;
|
|
76
|
+
background: var(--login-dropdown-divider-background);
|
|
64
77
|
}
|
|
65
78
|
pn-marketweb-siteheader-login pn-button-dropdown .pn-button-dropdown-container .pn-button-dropdown-content span a {
|
|
66
79
|
text-decoration: none;
|
|
67
|
-
color:
|
|
80
|
+
color: var(--login-dropdown-link-color);
|
|
68
81
|
}
|
|
69
82
|
pn-marketweb-siteheader-login pn-button-dropdown .pn-button-dropdown-container .pn-button-dropdown-content span a:hover {
|
|
70
|
-
text-decoration:
|
|
83
|
+
text-decoration: var(--login-dropdown-link-hover-decoration);
|
|
71
84
|
}
|
|
72
85
|
pn-marketweb-siteheader-login pn-button-dropdown .pn-button-dropdown-container .pn-button-dropdown-content span * {
|
|
73
86
|
margin-bottom: 0;
|
|
74
87
|
}
|
|
75
|
-
pn-marketweb-siteheader-login pn-button-dropdown {
|
|
76
|
-
display: none;
|
|
77
|
-
}
|
|
78
88
|
pn-marketweb-siteheader-login.hydrated pn-button-dropdown {
|
|
79
89
|
display: block;
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
pn-marketweb-siteheader-login[appearance=dark] button:hover pn-icon svg path {
|
|
93
|
+
fill: var(--login-dark-icon-hover-fill);
|
|
80
94
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { h, Host } from "@stencil/core";
|
|
2
|
-
import { MarketWebLoginManager } from "../../../globals/MarketWebLoginManager";
|
|
3
|
-
import { state as headerState } from "./pn-marketweb-siteheader-store";
|
|
4
1
|
import { user } from "pn-design-assets/pn-assets/icons.js";
|
|
2
|
+
import { h, Host, } from "@stencil/core";
|
|
3
|
+
import { MarketWebLoginManager, } from "../../../globals/MarketWebLoginManager";
|
|
4
|
+
import { state as headerState } from "./pn-marketweb-siteheader-store";
|
|
5
5
|
export class PnMarketwebSiteheaderLogin {
|
|
6
6
|
constructor() {
|
|
7
7
|
this.endpoint = '';
|
|
@@ -27,6 +27,7 @@ export class PnMarketwebSiteheaderLogin {
|
|
|
27
27
|
this.showUnifiedLogin = false;
|
|
28
28
|
this.checkUserLoggedInStateInterval = 0;
|
|
29
29
|
this.environment = undefined;
|
|
30
|
+
this.appearance = 'light';
|
|
30
31
|
this.loginLinks = undefined;
|
|
31
32
|
this.toggleButtonText = this.loginDialog?.loginMenuLinkText ? this.loginDialog.loginMenuLinkText : '';
|
|
32
33
|
this.username = this.fullname;
|
|
@@ -155,7 +156,7 @@ export class PnMarketwebSiteheaderLogin {
|
|
|
155
156
|
hostElementAttribute.username = this.username;
|
|
156
157
|
hostElementAttribute.loggedin = this.loggedin + '';
|
|
157
158
|
}
|
|
158
|
-
return (h(Host, { ...hostElementAttribute }, h("pn-button-dropdown", { label: this.toggleButtonText, icon: user, appearance:
|
|
159
|
+
return (h(Host, { ...hostElementAttribute }, h("pn-button-dropdown", { label: this.toggleButtonText, icon: user, appearance: this.appearance, variant: "borderless", class: "siteheader-logindialog" }, this.showUnifiedLogin && !this.loggedin && (h("pn-marketweb-siteheader-unified-login", { loggedIn: this.loggedin, logInLabel: this.i18n.unifiedLoginButton, useMarketwebLogin: this.useMarketwebLogin, environment: this.environment })), this.loggedin && this.showProfileSelection ? (h("pn-marketweb-siteheader-login-profileselection", { loginDialog: this.loginDialog, loggedin: this.loggedin, i18n: this.i18n, idNamespace: this.emitEvents ? '1' : '2', endpoint: this.endpoint })) : (h("pn-marketweb-siteheader-login-links", { loginDialog: this.loginDialog, loggedin: this.loggedin, idNamespace: this.emitEvents ? '1' : '2', username: this.username, showUnifiedLogin: this.showUnifiedLogin })), !this.loggedin && this.loginDialog?.loginInfo && (h("span", { innerHTML: `${this.loginDialog.loginInfo}` })))));
|
|
159
160
|
}
|
|
160
161
|
static get is() { return "pn-marketweb-siteheader-login"; }
|
|
161
162
|
static get originalStyleUrls() {
|
|
@@ -393,6 +394,30 @@ export class PnMarketwebSiteheaderLogin {
|
|
|
393
394
|
"attribute": "environment",
|
|
394
395
|
"reflect": false
|
|
395
396
|
},
|
|
397
|
+
"appearance": {
|
|
398
|
+
"type": "string",
|
|
399
|
+
"mutable": true,
|
|
400
|
+
"complexType": {
|
|
401
|
+
"original": "HeaderAppearance",
|
|
402
|
+
"resolved": "\"dark\" | \"light\"",
|
|
403
|
+
"references": {
|
|
404
|
+
"HeaderAppearance": {
|
|
405
|
+
"location": "import",
|
|
406
|
+
"path": "../pn-marketweb-header/utils/header-theme",
|
|
407
|
+
"id": "src/components/layout-components/pn-marketweb-header/utils/header-theme.ts::HeaderAppearance"
|
|
408
|
+
}
|
|
409
|
+
}
|
|
410
|
+
},
|
|
411
|
+
"required": false,
|
|
412
|
+
"optional": true,
|
|
413
|
+
"docs": {
|
|
414
|
+
"tags": [],
|
|
415
|
+
"text": ""
|
|
416
|
+
},
|
|
417
|
+
"attribute": "appearance",
|
|
418
|
+
"reflect": true,
|
|
419
|
+
"defaultValue": "'light'"
|
|
420
|
+
},
|
|
396
421
|
"useMarketwebLogin": {
|
|
397
422
|
"type": "boolean",
|
|
398
423
|
"mutable": false,
|