@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/types/components/layout-components/pn-marketweb-header/pn-marketweb-header.stories.d.ts
ADDED
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import type { Meta, StoryObj } from '@storybook/web-components';
|
|
2
|
+
import type { HeaderApiEnvelope, HeaderMenuMode } from './types/pn-marketweb-header.types';
|
|
3
|
+
/**
|
|
4
|
+
* Story args for pn-marketweb-header.
|
|
5
|
+
*
|
|
6
|
+
* This story:
|
|
7
|
+
* - renders the real pn-marketweb-header
|
|
8
|
+
* - can optionally intercept its backend fetch call
|
|
9
|
+
* - returns a mocked backend envelope when mocking is enabled
|
|
10
|
+
* - lets the actual header component render and control its own menu switcher
|
|
11
|
+
*/
|
|
12
|
+
interface StoryArgs {
|
|
13
|
+
market: string;
|
|
14
|
+
language: string;
|
|
15
|
+
initialActiveMenuMode: HeaderMenuMode;
|
|
16
|
+
menuThemes?: string;
|
|
17
|
+
environment: 'production' | 'preproduction' | 'integration' | 'localhost';
|
|
18
|
+
endpoint: string;
|
|
19
|
+
pageId: string;
|
|
20
|
+
siteid: string;
|
|
21
|
+
userToken: string;
|
|
22
|
+
userFullname: string;
|
|
23
|
+
userLoggedin: boolean;
|
|
24
|
+
hideSiteSelector: boolean;
|
|
25
|
+
hideHomeMenuItem: boolean;
|
|
26
|
+
hideLanguageSelector: boolean;
|
|
27
|
+
hideSearch: boolean;
|
|
28
|
+
hideLogin: boolean;
|
|
29
|
+
showProfileSelection: boolean;
|
|
30
|
+
showUnifiedLogin: boolean;
|
|
31
|
+
siteDomainInUrls: boolean;
|
|
32
|
+
autocompleteEndpoint: string;
|
|
33
|
+
sessionForward: boolean;
|
|
34
|
+
cache: boolean;
|
|
35
|
+
searchPlaceholder: string;
|
|
36
|
+
spaMode: boolean;
|
|
37
|
+
checkUserLoggedInStateInterval: number;
|
|
38
|
+
useMarketwebLogin: boolean;
|
|
39
|
+
navigateOnMenuToggle: boolean;
|
|
40
|
+
/**
|
|
41
|
+
* Mocked backend response envelope.
|
|
42
|
+
*
|
|
43
|
+
* This should match the real backend response shape.
|
|
44
|
+
*/
|
|
45
|
+
mockedResponse: HeaderApiEnvelope;
|
|
46
|
+
/**
|
|
47
|
+
* When true, Storybook intercepts the header fetch and returns mockedResponse.
|
|
48
|
+
* When false, the real endpoint is used.
|
|
49
|
+
*/
|
|
50
|
+
useMockedResponse: boolean;
|
|
51
|
+
}
|
|
52
|
+
declare const meta: Meta<StoryArgs>;
|
|
53
|
+
export default meta;
|
|
54
|
+
type Story = StoryObj<StoryArgs>;
|
|
55
|
+
/**
|
|
56
|
+
* Baseline story:
|
|
57
|
+
* - 2 switchable roots
|
|
58
|
+
* - 1 shared root
|
|
59
|
+
*/
|
|
60
|
+
export declare const TwoModesWithShared: Story;
|
|
61
|
+
/**
|
|
62
|
+
* Verifies that more than 2 switchable roots are supported.
|
|
63
|
+
*/
|
|
64
|
+
export declare const ThreeModesWithShared: Story;
|
|
65
|
+
/**
|
|
66
|
+
* Only one mode root + shared.
|
|
67
|
+
* The header should not render the menu switcher.
|
|
68
|
+
*/
|
|
69
|
+
export declare const OneModeWithShared: Story;
|
|
70
|
+
/**
|
|
71
|
+
* Shared-only structure.
|
|
72
|
+
* Useful for verifying fallback rendering when no switchable roots exist.
|
|
73
|
+
*/
|
|
74
|
+
export declare const SharedOnly: Story;
|
|
75
|
+
/**
|
|
76
|
+
* Same baseline structure, but start on the second mode.
|
|
77
|
+
*/
|
|
78
|
+
export declare const StartOnSecondMode: Story;
|
|
79
|
+
/**
|
|
80
|
+
* Same baseline structure, but allow real navigation hrefs on mode change.
|
|
81
|
+
* Mostly useful for checking rendered links rather than interacting in Storybook.
|
|
82
|
+
*/
|
|
83
|
+
export declare const NavigationEnabled: Story;
|
|
84
|
+
/**
|
|
85
|
+
* Smaller layout story while still using mocked data.
|
|
86
|
+
*/
|
|
87
|
+
export declare const Minimal: Story;
|
|
88
|
+
/**
|
|
89
|
+
* Menu items contain nested sub-menu items.
|
|
90
|
+
*/
|
|
91
|
+
export declare const NestedSubmenuItems: Story;
|
|
92
|
+
/**
|
|
93
|
+
* Uses the real local CMS instead of Storybook fetch mocking.
|
|
94
|
+
*/
|
|
95
|
+
export declare const LocalCms: Story;
|
|
96
|
+
/**
|
|
97
|
+
* Uses the real integration CMS instead of Storybook fetch mocking. //FIXME: getting cors-safe data at the moment
|
|
98
|
+
*/
|
|
99
|
+
export declare const IntegrationCms: Story;
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import { FetchHelper } from '../../../../globals/FetchHelper';
|
|
2
|
+
import type { EnvironmentName, MarketName } from '../../../../services/pn-refined-marketweb-context/pn-refined-marketweb-context.types';
|
|
3
|
+
import type { SiteHeaderI18N } from '../../pn-marketweb-siteheader/pn-marketweb-siteheader-types';
|
|
4
|
+
import type { HeaderApiPayload, HeaderContext, HeaderMenuMode, HeaderViewModel } from '../types/pn-marketweb-header.types';
|
|
5
|
+
/**
|
|
6
|
+
* Input used when resolving/fetching/building header state.
|
|
7
|
+
*/
|
|
8
|
+
export interface LoadHeaderStateInput {
|
|
9
|
+
market?: MarketName | null;
|
|
10
|
+
language?: string | null;
|
|
11
|
+
environment?: EnvironmentName | null;
|
|
12
|
+
endpoint?: string | null;
|
|
13
|
+
pageId?: string;
|
|
14
|
+
cache?: boolean;
|
|
15
|
+
hideHomeMenuItem: boolean;
|
|
16
|
+
siteDomainInUrls: boolean;
|
|
17
|
+
autocompleteEndpoint: string;
|
|
18
|
+
searchPlaceholder: string;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Result returned from service orchestration methods.
|
|
22
|
+
*/
|
|
23
|
+
export interface HeaderStateResult {
|
|
24
|
+
context: HeaderContext;
|
|
25
|
+
rawHeaderData: HeaderApiPayload | null;
|
|
26
|
+
vm: HeaderViewModel | null;
|
|
27
|
+
i18n: SiteHeaderI18N;
|
|
28
|
+
status: 'ready' | 'error';
|
|
29
|
+
/**
|
|
30
|
+
* The currently active menu mode used by the wrapper component.
|
|
31
|
+
*
|
|
32
|
+
* This is preserved by the service during remaps, but the effective initial
|
|
33
|
+
* value is resolved by the component layer.
|
|
34
|
+
*/
|
|
35
|
+
activeMenuMode: HeaderMenuMode;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Service responsible for:
|
|
39
|
+
* - resolving the effective header context
|
|
40
|
+
* - building the fetch URL for the header endpoint
|
|
41
|
+
* - loading header data from the backend
|
|
42
|
+
* - mapping backend data into a renderable header state
|
|
43
|
+
*
|
|
44
|
+
* This service uses the refined context service as the source of truth
|
|
45
|
+
* for market/language/environment resolution.
|
|
46
|
+
*/
|
|
47
|
+
export declare class PnMarketwebHeaderService {
|
|
48
|
+
private fetchHelper;
|
|
49
|
+
private href;
|
|
50
|
+
private doc;
|
|
51
|
+
/**
|
|
52
|
+
* Fixed backend path for loading header data.
|
|
53
|
+
* This is appended to the resolved endpoint domain.
|
|
54
|
+
*/
|
|
55
|
+
private endpointPath;
|
|
56
|
+
constructor(fetchHelper: FetchHelper, href?: string, doc?: Document);
|
|
57
|
+
/**
|
|
58
|
+
* Resolves the effective header context.
|
|
59
|
+
*
|
|
60
|
+
* What it does:
|
|
61
|
+
* - uses the RefinedMarketWebContextService to resolve context from the current URL/document
|
|
62
|
+
* - lets explicit input values override resolved values when provided
|
|
63
|
+
* - resolves endpoint from environment + market when endpoint is not explicitly passed in
|
|
64
|
+
* - keeps pageId as part of the final header request context
|
|
65
|
+
*/
|
|
66
|
+
private resolveContext;
|
|
67
|
+
/**
|
|
68
|
+
* Builds the final request URL used to fetch header JSON.
|
|
69
|
+
*
|
|
70
|
+
* What it does:
|
|
71
|
+
* - removes a trailing slash from the endpoint base if needed
|
|
72
|
+
* - appends the fixed header endpoint path
|
|
73
|
+
* - adds query parameters for market, language and current page
|
|
74
|
+
*/
|
|
75
|
+
private buildFetchUrl;
|
|
76
|
+
/**
|
|
77
|
+
* Fetches header data from the backend.
|
|
78
|
+
*
|
|
79
|
+
* Returns null when required context is missing.
|
|
80
|
+
*/
|
|
81
|
+
private fetchHeaderData;
|
|
82
|
+
/**
|
|
83
|
+
* Builds i18n for the current language + presentation overrides.
|
|
84
|
+
*/
|
|
85
|
+
private resolveI18n;
|
|
86
|
+
/**
|
|
87
|
+
* Maps raw header data into the current UI view model.
|
|
88
|
+
*/
|
|
89
|
+
private mapViewModel;
|
|
90
|
+
/**
|
|
91
|
+
* Resolves context, fetches backend data and builds the final header state.
|
|
92
|
+
*/
|
|
93
|
+
loadHeaderState(input: LoadHeaderStateInput): Promise<HeaderStateResult>;
|
|
94
|
+
/**
|
|
95
|
+
* Rebuilds the UI state from already-fetched raw backend data.
|
|
96
|
+
* Use this when presentation-only inputs change and a refetch is not needed.
|
|
97
|
+
*/
|
|
98
|
+
remapHeaderState(input: {
|
|
99
|
+
context: HeaderContext;
|
|
100
|
+
rawHeaderData: HeaderApiPayload | null;
|
|
101
|
+
language?: string | null;
|
|
102
|
+
hideHomeMenuItem: boolean;
|
|
103
|
+
siteDomainInUrls: boolean;
|
|
104
|
+
autocompleteEndpoint: string;
|
|
105
|
+
searchPlaceholder: string;
|
|
106
|
+
currentActiveMenuMode: HeaderMenuMode;
|
|
107
|
+
}): HeaderStateResult;
|
|
108
|
+
}
|
package/types/components/layout-components/pn-marketweb-header/types/pn-marketweb-header.types.d.ts
ADDED
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
import { EnvironmentName, MarketName } from '../../../../services/pn-refined-marketweb-context/pn-refined-marketweb-context.types';
|
|
2
|
+
import { LanguageSelector, LanguageSelectorItem, LoginDialog, MenuItem, MenuSiteDefinition, SiteHeaderI18N, SiteHeaderSearch, SiteSelector } from '../../pn-marketweb-siteheader/pn-marketweb-siteheader-types';
|
|
3
|
+
export type HeaderMenuMode = number;
|
|
4
|
+
export interface HeaderMenuModeOption {
|
|
5
|
+
index: number;
|
|
6
|
+
label: string;
|
|
7
|
+
href?: string;
|
|
8
|
+
root: MenuItem;
|
|
9
|
+
}
|
|
10
|
+
export interface HeaderMenuStructure {
|
|
11
|
+
hasMenuSwitching: boolean;
|
|
12
|
+
modeRoots: MenuItem[];
|
|
13
|
+
menuModeOptions: HeaderMenuModeOption[];
|
|
14
|
+
sharedRoot: MenuItem | null;
|
|
15
|
+
sharedItems: MenuItem[];
|
|
16
|
+
}
|
|
17
|
+
export interface HeaderMenuGroups {
|
|
18
|
+
primaryItems: MenuItem[];
|
|
19
|
+
sharedItems: MenuItem[];
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Resolved runtime context used when loading header data.
|
|
23
|
+
* These values may come from explicit props, URL parsing, or environment resolution.
|
|
24
|
+
*/
|
|
25
|
+
export interface HeaderContext {
|
|
26
|
+
market: MarketName;
|
|
27
|
+
language: string;
|
|
28
|
+
environment: EnvironmentName;
|
|
29
|
+
endpoint: string;
|
|
30
|
+
pageId?: string;
|
|
31
|
+
}
|
|
32
|
+
export interface HeaderApiPayload {
|
|
33
|
+
sitedefinition: MenuSiteDefinition;
|
|
34
|
+
search: SiteHeaderSearch;
|
|
35
|
+
languageSelectorViewModel: LanguageSelector | null;
|
|
36
|
+
siteSelectorViewModel: SiteSelector | null;
|
|
37
|
+
loginViewModel: LoginDialog | null;
|
|
38
|
+
mainMenu: {
|
|
39
|
+
menuItems: MenuItem[];
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* The raw API response shape returned by /api/navigation/header.
|
|
44
|
+
* This stays close to the backend structure.
|
|
45
|
+
*/
|
|
46
|
+
export interface HeaderApiEnvelope {
|
|
47
|
+
value: HeaderApiPayload;
|
|
48
|
+
formatters?: unknown[];
|
|
49
|
+
contentTypes?: unknown[];
|
|
50
|
+
declaredType?: unknown;
|
|
51
|
+
statusCode?: number;
|
|
52
|
+
}
|
|
53
|
+
export interface HeaderViewModel {
|
|
54
|
+
siteDefinition: MenuSiteDefinition | null;
|
|
55
|
+
menuItems: MenuItem[];
|
|
56
|
+
search: SiteHeaderSearch | null;
|
|
57
|
+
siteSelector: SiteSelector | null;
|
|
58
|
+
languageSelector: LanguageSelector | null;
|
|
59
|
+
languageOptions: LanguageSelectorItem[];
|
|
60
|
+
loginDialog: LoginDialog | null;
|
|
61
|
+
homePageLink: string;
|
|
62
|
+
/**
|
|
63
|
+
* Whether the fetched structure supports switching between multiple top-level menu roots.
|
|
64
|
+
*
|
|
65
|
+
* When true:
|
|
66
|
+
* - all top-level menu items except the last are treated as switchable roots
|
|
67
|
+
* - the last top-level item is treated as the shared/common root
|
|
68
|
+
*/
|
|
69
|
+
hasMenuSwitching: boolean;
|
|
70
|
+
/**
|
|
71
|
+
* Visible labels for the toggle component.
|
|
72
|
+
*/
|
|
73
|
+
menuModeOptions: HeaderMenuModeOption[];
|
|
74
|
+
/**
|
|
75
|
+
* Default active menu mode index.
|
|
76
|
+
*
|
|
77
|
+
* This index refers to `menuModeOptions` and the corresponding switchable
|
|
78
|
+
* top-level root menu.
|
|
79
|
+
*/
|
|
80
|
+
defaultMenuMode: number;
|
|
81
|
+
/**
|
|
82
|
+
* Original normalized top-level menu structure from the backend.
|
|
83
|
+
*
|
|
84
|
+
* Semantics:
|
|
85
|
+
* - all items except the last are switchable root menus
|
|
86
|
+
* - the last item is the shared/common root
|
|
87
|
+
*
|
|
88
|
+
* This is preserved so the wrapper can rebuild visible menu items when the
|
|
89
|
+
* active menu mode changes.
|
|
90
|
+
*/
|
|
91
|
+
rawMenuItems: MenuItem[];
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* Options used when mapping raw API data into a renderable view model.
|
|
95
|
+
* These mostly come from component props or derived i18n values.
|
|
96
|
+
*/
|
|
97
|
+
export interface HeaderMapperOptions {
|
|
98
|
+
language: string;
|
|
99
|
+
hideHomeMenuItem: boolean;
|
|
100
|
+
siteDomainInUrls: boolean;
|
|
101
|
+
autocompleteEndpoint?: string;
|
|
102
|
+
i18n: SiteHeaderI18N;
|
|
103
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { SiteHeaderI18N } from '../../pn-marketweb-siteheader/pn-marketweb-siteheader-types';
|
|
2
|
+
/**
|
|
3
|
+
* Safe fallback i18n object used before translations have been resolved,
|
|
4
|
+
* or if a language is missing from the translation table.
|
|
5
|
+
*/
|
|
6
|
+
export declare const defaultHeaderI18n: SiteHeaderI18N;
|
|
7
|
+
/**
|
|
8
|
+
* Resolves the i18n object for the current language and applies overrides.
|
|
9
|
+
*
|
|
10
|
+
* What it does:
|
|
11
|
+
* - Looks up translation values for the selected language
|
|
12
|
+
* - Falls back to a safe default object if the language is missing
|
|
13
|
+
* - Allows the search placeholder to be overridden by a prop
|
|
14
|
+
* - Ensures "home" always has a non-empty fallback value
|
|
15
|
+
*/
|
|
16
|
+
export declare function resolveHeaderTranslations(language?: string, searchPlaceholder?: string): SiteHeaderI18N;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { LanguageSelector, LanguageSelectorItem, MenuSiteDefinition } from '../../pn-marketweb-siteheader/pn-marketweb-siteheader-types';
|
|
2
|
+
/**
|
|
3
|
+
* Builds the list of language options that should actually be shown.
|
|
4
|
+
*
|
|
5
|
+
* What it does:
|
|
6
|
+
* - Reads the backend-provided language selector model
|
|
7
|
+
* - Checks page <link rel="alternate" hreflang="..."> tags
|
|
8
|
+
* - If hreflang tags exist, only languages with matching tags are shown
|
|
9
|
+
* - If no hreflang tags exist, all backend-provided languages are shown
|
|
10
|
+
*/
|
|
11
|
+
export declare function getLanguageOptions(languageSelector: LanguageSelector | null): LanguageSelectorItem[];
|
|
12
|
+
/**
|
|
13
|
+
* Resolves the URL for a given language option.
|
|
14
|
+
*
|
|
15
|
+
* What it does:
|
|
16
|
+
* - Returns null in SPA mode so language switching can be handled by events only
|
|
17
|
+
* - Uses an existing hreflang alternate URL if one exists in the document
|
|
18
|
+
* - Otherwise falls back to generating a language URL from the site definition
|
|
19
|
+
*/
|
|
20
|
+
export declare function getLanguageVersionUrl(item: LanguageSelectorItem, siteDefinition: MenuSiteDefinition | null, spaMode: boolean): string | null;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { MenuItem, PromotedMenuItem, SiteHeaderI18N } from '../../pn-marketweb-siteheader/pn-marketweb-siteheader-types';
|
|
2
|
+
/**
|
|
3
|
+
* Adds a Home item at the beginning of the main menu when needed.
|
|
4
|
+
*
|
|
5
|
+
* What it does:
|
|
6
|
+
* - Returns the input untouched when hideHomeMenuItem is true
|
|
7
|
+
* - Avoids adding a duplicate Home item if one already exists first in the list
|
|
8
|
+
* - Otherwise prepends a synthetic Home item using the translated label
|
|
9
|
+
*/
|
|
10
|
+
export declare function prependHomeMenuItem(items: MenuItem[], i18n: SiteHeaderI18N, homeUrl: string, hideHomeMenuItem: boolean): MenuItem[];
|
|
11
|
+
/**
|
|
12
|
+
* Creates a stable-ish tracking id for promoted menu items.
|
|
13
|
+
*
|
|
14
|
+
* This mirrors the old wrapper behavior and is used when rendering promoted links.
|
|
15
|
+
*/
|
|
16
|
+
export declare function promotedItemId(item: PromotedMenuItem): string;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { HeaderMenuModeOption } from '../types/pn-marketweb-header.types';
|
|
2
|
+
export type HeaderTheme = 'business' | 'private';
|
|
3
|
+
export type HeaderAppearance = 'light' | 'dark';
|
|
4
|
+
export declare function normalizeHeaderTheme(theme: HeaderTheme): HeaderTheme;
|
|
5
|
+
export declare function getAppearanceForTheme(theme: HeaderTheme): HeaderAppearance;
|
|
6
|
+
export declare function resolveHeaderMenuThemes(menuThemes: string | undefined, menuModeOptions: HeaderMenuModeOption[] | undefined): HeaderTheme[];
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import type { MenuItem } from '../../pn-marketweb-siteheader/pn-marketweb-siteheader-types';
|
|
2
|
+
import type { HeaderMenuGroups, HeaderMenuMode, HeaderMenuStructure } from '../types/pn-marketweb-header.types';
|
|
3
|
+
/**
|
|
4
|
+
* Header menu mode utilities.
|
|
5
|
+
*
|
|
6
|
+
* Purpose
|
|
7
|
+
* -------
|
|
8
|
+
* Interprets the backend top-level menu structure used for header menu
|
|
9
|
+
* switching.
|
|
10
|
+
*
|
|
11
|
+
* Expected top-level order:
|
|
12
|
+
* - all items except the last = switchable root menus
|
|
13
|
+
* - last item = shared/common root
|
|
14
|
+
*
|
|
15
|
+
* Responsibilities
|
|
16
|
+
* ----------------
|
|
17
|
+
* - extract a structured representation of the switchable menu roots
|
|
18
|
+
* - resolve the active root for a selected mode
|
|
19
|
+
* - return grouped or flat visible items for rendering
|
|
20
|
+
*/
|
|
21
|
+
export declare function extractToggleableMenuStructure(menuItems: MenuItem[]): HeaderMenuStructure;
|
|
22
|
+
/**
|
|
23
|
+
* Returns the active root item for the selected mode.
|
|
24
|
+
*
|
|
25
|
+
* Falls back to the first available mode root when the requested mode
|
|
26
|
+
* is out of bounds.
|
|
27
|
+
*/
|
|
28
|
+
export declare function getToggleRootForMode(structure: HeaderMenuStructure, mode: HeaderMenuMode): MenuItem | null;
|
|
29
|
+
/**
|
|
30
|
+
* Returns the active root item for the selected mode directly from raw menu items.
|
|
31
|
+
*/
|
|
32
|
+
export declare function getToggleRootForMenuItems(menuItems: MenuItem[], mode: HeaderMenuMode): MenuItem | null;
|
|
33
|
+
/**
|
|
34
|
+
* Returns grouped visible items for rendering.
|
|
35
|
+
*
|
|
36
|
+
* - primaryItems = children of the active root
|
|
37
|
+
* - sharedItems = children of the shared/common root
|
|
38
|
+
*/
|
|
39
|
+
export declare function getMenuGroupsForMode(structure: HeaderMenuStructure, mode: HeaderMenuMode): HeaderMenuGroups;
|
|
40
|
+
/**
|
|
41
|
+
* Returns grouped visible items directly from raw menu items.
|
|
42
|
+
*/
|
|
43
|
+
export declare function getVisibleMenuGroupsForMode(menuItems: MenuItem[], mode: HeaderMenuMode): HeaderMenuGroups;
|
|
44
|
+
/**
|
|
45
|
+
* Builds a flat list of visible menu items for the selected mode.
|
|
46
|
+
*
|
|
47
|
+
* Useful for render paths that do not need grouped rendering.
|
|
48
|
+
*/
|
|
49
|
+
export declare function buildMenuItemsForMode(structure: HeaderMenuStructure, mode: HeaderMenuMode): MenuItem[];
|
package/types/components/layout-components/pn-marketweb-header/utils/header-toggle-menu.storage.d.ts
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { HeaderMenuMode } from '../types/pn-marketweb-header.types';
|
|
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 declare function getStoredHeaderMenuMode(): HeaderMenuMode | null;
|
|
11
|
+
/**
|
|
12
|
+
* Persists the selected menu mode in localStorage.
|
|
13
|
+
*
|
|
14
|
+
* Storage failures are intentionally ignored.
|
|
15
|
+
*/
|
|
16
|
+
export declare function storeHeaderMenuMode(mode: HeaderMenuMode): void;
|
|
17
|
+
/**
|
|
18
|
+
* Resolves the effective initial menu mode.
|
|
19
|
+
*
|
|
20
|
+
* Priority:
|
|
21
|
+
* 1. Stored user preference
|
|
22
|
+
* 2. Server-provided initial mode
|
|
23
|
+
* 3. Fallback to first mode (index 0)
|
|
24
|
+
*/
|
|
25
|
+
export declare function resolveInitialHeaderMenuMode(hasMenuSwitching: boolean, initialActiveMenuMode?: HeaderMenuMode | null): HeaderMenuMode;
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { LoginDialog, MenuItem, MenuSiteDefinition } from '../../pn-marketweb-siteheader/pn-marketweb-siteheader-types';
|
|
2
|
+
/**
|
|
3
|
+
* Removes duplicated language segments from generated URLs.
|
|
4
|
+
*
|
|
5
|
+
* Example:
|
|
6
|
+
* /sv/sv/page -> /sv/page
|
|
7
|
+
*
|
|
8
|
+
* This protects against incorrectly concatenated site-domain-based URLs.
|
|
9
|
+
*/
|
|
10
|
+
export declare function removeDoubleLanguage(url: string, language: string): string;
|
|
11
|
+
/**
|
|
12
|
+
* Resolves a menu/login href to an absolute site-relative URL when needed.
|
|
13
|
+
*
|
|
14
|
+
* What it does:
|
|
15
|
+
* - Leaves fully-qualified http/https URLs unchanged
|
|
16
|
+
* - Prefixes relative URLs with the current site definition domain
|
|
17
|
+
* - Cleans up accidental double language segments
|
|
18
|
+
*/
|
|
19
|
+
export declare function adjustHref(href: string, siteDefinition: MenuSiteDefinition, language: string): string;
|
|
20
|
+
/**
|
|
21
|
+
* Recursively adjusts a menu item and all child menu items so that
|
|
22
|
+
* relative URLs become site-domain-aware absolute URLs.
|
|
23
|
+
*
|
|
24
|
+
* This returns a new object rather than mutating the original API item.
|
|
25
|
+
*/
|
|
26
|
+
export declare function adjustMenuItemUrls(item: MenuItem, siteDefinition: MenuSiteDefinition, language: string): MenuItem;
|
|
27
|
+
/**
|
|
28
|
+
* Adjusts login dialog links so that relative URLs are resolved against
|
|
29
|
+
* the active site domain.
|
|
30
|
+
*
|
|
31
|
+
* This is used when siteDomainInUrls is enabled.
|
|
32
|
+
*/
|
|
33
|
+
export declare function adjustLoginDialogUrls(loginDialog: LoginDialog | null, siteDefinition: MenuSiteDefinition, language: string): LoginDialog | null;
|
|
34
|
+
/**
|
|
35
|
+
* Navigates to the provided href when available.
|
|
36
|
+
*/
|
|
37
|
+
export declare function navigateToHref(href?: string | null): void;
|
|
38
|
+
/**
|
|
39
|
+
* Navigates to a menu item's href when available.
|
|
40
|
+
*/
|
|
41
|
+
export declare function navigateToMenuItem(item: MenuItem | null): void;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { EventEmitter } from '../../../stencil-public-runtime';
|
|
2
|
+
import { HeaderAppearance } from '../pn-marketweb-header/utils/header-theme';
|
|
2
3
|
import { LoginDialog, SiteHeaderI18N } from './pn-marketweb-siteheader-types';
|
|
3
4
|
export declare class PnMarketwebSiteheaderLogin {
|
|
4
5
|
hostElement: HTMLElement;
|
|
@@ -20,6 +21,7 @@ export declare class PnMarketwebSiteheaderLogin {
|
|
|
20
21
|
/** Continiously check if a user is logged in **/
|
|
21
22
|
checkUserLoggedInStateInterval: number;
|
|
22
23
|
environment?: string;
|
|
24
|
+
appearance?: HeaderAppearance;
|
|
23
25
|
loginLinks: [];
|
|
24
26
|
toggleButtonText: string;
|
|
25
27
|
username: string;
|
|
@@ -3,6 +3,7 @@ import { LanguageSelectori18n, LanguageSelectorOption } from './pn-language-sele
|
|
|
3
3
|
export declare class PnlanguageSelector {
|
|
4
4
|
hostElement: HTMLElement;
|
|
5
5
|
value: string;
|
|
6
|
+
appearance?: 'light' | 'dark';
|
|
6
7
|
selectedLanguageName: string;
|
|
7
8
|
options: LanguageSelectorOption[];
|
|
8
9
|
i18n: LanguageSelectori18n;
|
package/types/components/navigation/pn-marketweb-header-toggle/pn-marketweb-header-toggle.d.ts
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { HeaderMenuMode, HeaderMenuModeOption } from "../../layout-components/pn-marketweb-header/types/pn-marketweb-header.types";
|
|
2
|
+
import { EventEmitter } from '../../../stencil-public-runtime';
|
|
3
|
+
/**
|
|
4
|
+
* Small segmented toggle used for switching between Private and Business menu modes.
|
|
5
|
+
*
|
|
6
|
+
* Responsibilities:
|
|
7
|
+
* - render two selectable links
|
|
8
|
+
* - reflect current active mode
|
|
9
|
+
* - emit the selected mode when changed
|
|
10
|
+
*
|
|
11
|
+
* This component is intentionally presentation-only.
|
|
12
|
+
* The parent header decides what switching mode actually means.
|
|
13
|
+
*/
|
|
14
|
+
export declare class PnMarketwebHeaderToggle {
|
|
15
|
+
options: HeaderMenuModeOption[];
|
|
16
|
+
/** Accessible label for the toggle group. */
|
|
17
|
+
ariaLabel: string;
|
|
18
|
+
/** Currently active mode. */
|
|
19
|
+
value: HeaderMenuMode;
|
|
20
|
+
/** Emitted whenever the user selects a different mode. */
|
|
21
|
+
toggleChange: EventEmitter<HeaderMenuMode>;
|
|
22
|
+
private onClick;
|
|
23
|
+
private renderOption;
|
|
24
|
+
render(): any;
|
|
25
|
+
}
|
|
@@ -5,6 +5,7 @@ export declare class PnSiteSelector {
|
|
|
5
5
|
heading: string;
|
|
6
6
|
/** Specifies which language we want to show navigation in (sv,da,fi,no,en) */
|
|
7
7
|
language: string;
|
|
8
|
+
appearance?: 'light' | 'dark';
|
|
8
9
|
i18n: SiteSelectori18n;
|
|
9
10
|
componentWillLoad(): void;
|
|
10
11
|
setLanguage(): void;
|
|
@@ -21,7 +21,7 @@ export declare class PnProxioPricegroup {
|
|
|
21
21
|
getPriceString(product: ProxioProduct): string;
|
|
22
22
|
getProductLink(product: ProxioProduct, productWeightGroupList: ProductWeightGroupListItem[]): string;
|
|
23
23
|
isActive(index: number): boolean;
|
|
24
|
-
getCarouselPosition(index: number):
|
|
24
|
+
getCarouselPosition(index: number): 0 | 1 | 2 | -1 | -2 | "outside";
|
|
25
25
|
getContainerPosition(): "default" | "end50" | "end75" | "start75" | "start50";
|
|
26
26
|
render(): any;
|
|
27
27
|
}
|