@postnord/pn-marketweb-components 4.2.5 → 4.3.1
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/translations-9510f11c.js +198 -0
- package/cjs/translations-9510f11c.js.map +1 -0
- package/collection/collection-manifest.json +5 -0
- 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/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/translations-d2f5804e.js +196 -0
- package/esm/translations-d2f5804e.js.map +1 -0
- package/package.json +13 -6
- 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-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-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,
|