@postnord/pn-marketweb-components 4.2.5 → 4.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cjs/header-theme-a250bf67.js +245 -0
- package/cjs/header-theme-a250bf67.js.map +1 -0
- package/cjs/index-9a9efa1c.js +24 -16
- package/cjs/loader.cjs.js +1 -1
- package/cjs/pn-app-banner.cjs.entry.js +1 -1
- package/cjs/pn-breakpoints.cjs.entry.js +1 -1
- package/cjs/pn-chat-message_2.cjs.entry.js +2 -2
- package/cjs/pn-chat.cjs.entry.js +2 -2
- package/cjs/pn-customernumber-selector-option.cjs.entry.js +1 -1
- package/cjs/pn-customernumber-selector.cjs.entry.js +1 -1
- package/cjs/pn-find-price-result.cjs.entry.js +1 -1
- package/cjs/pn-find-price.cjs.entry.js +2 -2
- package/cjs/pn-find-service-and-price-result.cjs.entry.js +1 -1
- package/cjs/pn-find-service-and-price.cjs.entry.js +1 -1
- package/cjs/pn-hero-block-international.cjs.entry.js +1 -1
- package/cjs/pn-language-selector_13.cjs.entry.js +1519 -0
- package/cjs/pn-language-selector_13.cjs.entry.js.map +1 -0
- package/cjs/pn-level-up-modal.cjs.entry.js +1 -1
- package/cjs/pn-level-up.cjs.entry.js +2 -2
- package/cjs/pn-link-list.cjs.entry.js +1 -1
- package/cjs/pn-market-web-components.cjs.js +1 -1
- package/cjs/pn-marketweb-header-main-row_2.cjs.entry.js +222 -0
- package/cjs/pn-marketweb-header-main-row_2.cjs.entry.js.map +1 -0
- package/cjs/pn-marketweb-header-skeleton-loader.cjs.entry.js +23 -0
- package/cjs/pn-marketweb-header-skeleton-loader.cjs.entry.js.map +1 -0
- package/cjs/pn-marketweb-header-toggle.cjs.entry.js +46 -0
- package/cjs/pn-marketweb-header-toggle.cjs.entry.js.map +1 -0
- package/cjs/pn-marketweb-header.cjs.entry.js +1043 -0
- package/cjs/pn-marketweb-header.cjs.entry.js.map +1 -0
- package/cjs/pn-marketweb-icon.cjs.entry.js +1 -1
- package/cjs/{pn-marketweb-siteheader-login-linklist.cjs.entry.js → pn-marketweb-siteheader-login-button_2.cjs.entry.js} +44 -2
- package/cjs/pn-marketweb-siteheader-login-button_2.cjs.entry.js.map +1 -0
- package/cjs/pn-marketweb-siteheader-login-mypage-button.cjs.entry.js +1 -1
- package/cjs/pn-marketweb-siteheader.cjs.entry.js +7 -199
- package/cjs/pn-marketweb-siteheader.cjs.entry.js.map +1 -1
- package/cjs/pn-marketweb-table.cjs.entry.js +1 -1
- package/cjs/pn-media-block.cjs.entry.js +1 -1
- package/cjs/pn-pex-pricefinder.cjs.entry.js +1 -1
- package/cjs/pn-product-card_3.cjs.entry.js +1 -1
- package/cjs/pn-product-pricelist-result.cjs.entry.js +1 -1
- package/cjs/pn-product-pricelist.cjs.entry.js +2 -2
- package/cjs/pn-product-tile-info_2.cjs.entry.js +1 -1
- package/cjs/pn-product-tile.cjs.entry.js +1 -1
- package/cjs/pn-profile-modal-customernumber.cjs.entry.js +1 -1
- package/cjs/pn-profile-modal-profile.cjs.entry.js +2 -2
- package/cjs/pn-profile-modal-type.cjs.entry.js +1 -1
- package/cjs/pn-profile-modal.cjs.entry.js +1 -1
- package/cjs/pn-profile-selector-option.cjs.entry.js +1 -1
- package/cjs/pn-profile-selector.cjs.entry.js +1 -1
- package/cjs/pn-proxio-findprice-result.cjs.entry.js +1 -1
- package/cjs/pn-proxio-findprice.cjs.entry.js +3 -3
- package/cjs/pn-proxio-pricegroup.cjs.entry.js +1 -1
- package/cjs/pn-proxio-productcard_4.cjs.entry.js +3 -3
- package/cjs/pn-qr-code-generator.cjs.entry.js +1 -1
- package/cjs/pn-sidenav-level.cjs.entry.js +1 -1
- package/cjs/pn-sidenav-link.cjs.entry.js +1 -1
- package/cjs/pn-sidenav-togglebutton.cjs.entry.js +1 -1
- package/cjs/pn-sidenav.cjs.entry.js +1 -1
- package/cjs/pn-site-footer_3.cjs.entry.js +3 -3
- package/cjs/pn-titletag.cjs.entry.js +1 -1
- package/cjs/pn-usp-promoter.cjs.entry.js +1 -1
- package/cjs/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 +1 -1
- package/pn-market-web-components/{p-4a164ef8.entry.js → p-03728b0b.entry.js} +2 -2
- package/pn-market-web-components/p-04f51418.js +2 -0
- package/pn-market-web-components/p-04f51418.js.map +1 -0
- package/pn-market-web-components/{p-e43a36e0.entry.js → p-067c1c2f.entry.js} +2 -2
- package/pn-market-web-components/{p-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/pn-marketweb-header.stories.js
ADDED
|
@@ -0,0 +1,638 @@
|
|
|
1
|
+
import { shop } from "pn-design-assets/pn-assets/icons";
|
|
2
|
+
const ORIGINAL_FETCH = window.fetch.bind(window);
|
|
3
|
+
/**
|
|
4
|
+
* Create promoted menuitems for testing purposes
|
|
5
|
+
*/
|
|
6
|
+
function createPromotedMenuItem(linkText, href, pageLink = href, openInNewWindow = false) {
|
|
7
|
+
return {
|
|
8
|
+
linkText,
|
|
9
|
+
pageLink,
|
|
10
|
+
href,
|
|
11
|
+
openInNewWindow,
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Reusable menu item factory to keep stories compact.
|
|
16
|
+
*/
|
|
17
|
+
function createMenuItem(name, href, id, children = [], level = 0, overrides = {}) {
|
|
18
|
+
return {
|
|
19
|
+
name,
|
|
20
|
+
href,
|
|
21
|
+
id,
|
|
22
|
+
selected: false,
|
|
23
|
+
open: false,
|
|
24
|
+
children,
|
|
25
|
+
navigationHeading: '',
|
|
26
|
+
promotedMenuItemsHeader: '',
|
|
27
|
+
promotedMenuItems: [],
|
|
28
|
+
hasChildren: children.length > 0,
|
|
29
|
+
linkTarget: '',
|
|
30
|
+
trackingId: `${name.toLowerCase().replace(/\s+/g, '-')}${id}`,
|
|
31
|
+
level,
|
|
32
|
+
isMegaMenuParent: level === 0,
|
|
33
|
+
...overrides,
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
function createLeaf(name, href, id, level = 1) {
|
|
37
|
+
return createMenuItem(name, href, id, [], level, {
|
|
38
|
+
isMegaMenuParent: false,
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Creates a mocked backend envelope with the supplied top-level menu structure.
|
|
43
|
+
*
|
|
44
|
+
* Structure semantics used by the header:
|
|
45
|
+
* - all items except the last = switchable root menus
|
|
46
|
+
* - last item = shared/common root
|
|
47
|
+
*
|
|
48
|
+
* This mock is intentionally kept trimmed to match the current frontend
|
|
49
|
+
* interfaces, while still preserving the real backend envelope shape.
|
|
50
|
+
*/
|
|
51
|
+
function createMockedResponse(menuItems) {
|
|
52
|
+
return {
|
|
53
|
+
value: {
|
|
54
|
+
sitedefinition: {
|
|
55
|
+
name: 'Postnord Sweden',
|
|
56
|
+
url: 'https://localhost:51547/',
|
|
57
|
+
},
|
|
58
|
+
search: {
|
|
59
|
+
formActionUrl: 'https://localhost:51547/sok/',
|
|
60
|
+
AutocompleteEndpoint: 'https://localhost:51547/api/search/autocomplete',
|
|
61
|
+
},
|
|
62
|
+
languageSelectorViewModel: {
|
|
63
|
+
currentLanguageNativeName: 'Svenska',
|
|
64
|
+
languages: [
|
|
65
|
+
{
|
|
66
|
+
twoLetterISOLanguageName: 'en',
|
|
67
|
+
nativeName: 'English',
|
|
68
|
+
isCurrent: false,
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
twoLetterISOLanguageName: 'sv',
|
|
72
|
+
nativeName: 'Svenska',
|
|
73
|
+
isCurrent: true,
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
twoLetterISOLanguageName: 'da',
|
|
77
|
+
nativeName: 'Dansk',
|
|
78
|
+
isCurrent: false,
|
|
79
|
+
},
|
|
80
|
+
],
|
|
81
|
+
},
|
|
82
|
+
siteSelectorViewModel: {
|
|
83
|
+
siteSelectorButtonText: 'postnord.se',
|
|
84
|
+
siteSelectorTitle: 'PostNord',
|
|
85
|
+
currentSiteTitle: 'postnord.se',
|
|
86
|
+
currentSiteDescription: 'Tjänster och verktyg för att skicka och ta emot din post',
|
|
87
|
+
siteSelections: [
|
|
88
|
+
{
|
|
89
|
+
linkText: 'Portal',
|
|
90
|
+
linkDescription: 'Hantera dina försändelser',
|
|
91
|
+
href: 'https://portal.postnord.com/',
|
|
92
|
+
pageLink: '/portal/',
|
|
93
|
+
openInNewWindow: false,
|
|
94
|
+
},
|
|
95
|
+
{
|
|
96
|
+
linkText: 'postnord.com',
|
|
97
|
+
linkDescription: 'Information om PostNord Koncernen',
|
|
98
|
+
href: 'https://com-inte.postnord.com/sv/',
|
|
99
|
+
pageLink: 'https://com-inte.postnord.com/sv/',
|
|
100
|
+
openInNewWindow: true,
|
|
101
|
+
},
|
|
102
|
+
],
|
|
103
|
+
},
|
|
104
|
+
loginViewModel: {
|
|
105
|
+
loginMenuLinks: [
|
|
106
|
+
{
|
|
107
|
+
linkText: 'Logga in',
|
|
108
|
+
href: 'https://portal.postnord.com/login?language=sv',
|
|
109
|
+
pageLink: '/login/',
|
|
110
|
+
openInNewWindow: false,
|
|
111
|
+
primaryLinkApperance: true,
|
|
112
|
+
isLogoutLink: false,
|
|
113
|
+
linkType: 'unified',
|
|
114
|
+
},
|
|
115
|
+
],
|
|
116
|
+
legacyLoginLinks: [
|
|
117
|
+
{
|
|
118
|
+
linkText: 'Logga in',
|
|
119
|
+
href: 'https://portal.postnord.com/login?language=sv',
|
|
120
|
+
pageLink: '/login/',
|
|
121
|
+
openInNewWindow: false,
|
|
122
|
+
primaryLinkApperance: true,
|
|
123
|
+
isLogoutLink: false,
|
|
124
|
+
},
|
|
125
|
+
],
|
|
126
|
+
loggedInLinks: [
|
|
127
|
+
{
|
|
128
|
+
linkText: 'Logga ut',
|
|
129
|
+
href: 'http://window.location.href/?logout',
|
|
130
|
+
pageLink: '/logout',
|
|
131
|
+
openInNewWindow: false,
|
|
132
|
+
primaryLinkApperance: false,
|
|
133
|
+
isLogoutLink: true,
|
|
134
|
+
},
|
|
135
|
+
],
|
|
136
|
+
overrideLoginMenu: false,
|
|
137
|
+
loginMenuLinkText: 'Logga in',
|
|
138
|
+
countryCode: 'SE',
|
|
139
|
+
locale: 'sv',
|
|
140
|
+
loginUrl: 'https://portal.postnord.com/login?language=sv',
|
|
141
|
+
registerUrl: 'https://portal.postnord.com/createaccount?market=SE',
|
|
142
|
+
loggedInButtonText: 'My PostNord',
|
|
143
|
+
loginTitle: 'Logga in direkt på:',
|
|
144
|
+
loginLinkText: 'Logga in',
|
|
145
|
+
createLoginLinkText: 'Skapa nytt konto',
|
|
146
|
+
loginInfo: '<p>Testing the login <a href="/link/0e1d8517b7344986b68152a9a0544460.aspx">recommendation</a></p>',
|
|
147
|
+
},
|
|
148
|
+
mainMenu: {
|
|
149
|
+
menuItems,
|
|
150
|
+
},
|
|
151
|
+
},
|
|
152
|
+
formatters: [],
|
|
153
|
+
contentTypes: [],
|
|
154
|
+
declaredType: null,
|
|
155
|
+
statusCode: 200,
|
|
156
|
+
};
|
|
157
|
+
}
|
|
158
|
+
/**
|
|
159
|
+
* Default structure:
|
|
160
|
+
* - 2 switchable roots
|
|
161
|
+
* - 1 shared/common root
|
|
162
|
+
*/
|
|
163
|
+
const DEFAULT_MOCKED_RESPONSE = createMockedResponse([
|
|
164
|
+
createMenuItem('Private', '/private/', 'root-private', [
|
|
165
|
+
createLeaf('Skicka', '/private/skicka/', 'private-send', 1),
|
|
166
|
+
createLeaf('Ta emot', '/private/ta-emot/', 'private-receive', 1),
|
|
167
|
+
]),
|
|
168
|
+
createMenuItem('Business', '/business/', 'root-business', [
|
|
169
|
+
createLeaf('Boka frakt', '/business/boka-frakt/', 'business-book', 1),
|
|
170
|
+
createLeaf('Spåra', '/business/spåra/', 'business-track', 1),
|
|
171
|
+
]),
|
|
172
|
+
createMenuItem('Shared', '/', 'root-shared', [
|
|
173
|
+
createLeaf('Kundservice', '/kundservice/', 'shared-support', 1),
|
|
174
|
+
createLeaf('Handla online', '/handla-online/', 'shared-shop', 1),
|
|
175
|
+
], 0, {
|
|
176
|
+
isMegaMenuParent: false,
|
|
177
|
+
}),
|
|
178
|
+
]);
|
|
179
|
+
/**
|
|
180
|
+
* 3 switchable roots + shared.
|
|
181
|
+
*/
|
|
182
|
+
const THREE_MODES_MOCKED_RESPONSE = createMockedResponse([
|
|
183
|
+
createMenuItem('Private', '/private/', 'root-private', [
|
|
184
|
+
createLeaf('Skicka', '/private/skicka/', 'private-send', 1),
|
|
185
|
+
createLeaf('Ta emot', '/private/ta-emot/', 'private-receive', 1),
|
|
186
|
+
]),
|
|
187
|
+
createMenuItem('Business', '/business/', 'root-business', [
|
|
188
|
+
createLeaf('Boka frakt', '/business/boka-frakt/', 'business-book', 1),
|
|
189
|
+
createLeaf('Portal', '/business/portal/', 'business-portal', 1),
|
|
190
|
+
]),
|
|
191
|
+
createMenuItem('Partners', '/partners/', 'root-partners', [
|
|
192
|
+
createLeaf('Integrationer', '/partners/integrationer/', 'partners-integrations', 1),
|
|
193
|
+
createLeaf('API-dokumentation', '/partners/api/', 'partners-api', 1),
|
|
194
|
+
]),
|
|
195
|
+
createMenuItem('Shared', '/', 'root-shared', [
|
|
196
|
+
createLeaf('Kundservice', '/kundservice/', 'shared-support', 1),
|
|
197
|
+
createLeaf('Om oss', '/om-oss/', 'shared-about', 1),
|
|
198
|
+
], 0, {
|
|
199
|
+
isMegaMenuParent: false,
|
|
200
|
+
}),
|
|
201
|
+
]);
|
|
202
|
+
/**
|
|
203
|
+
* One switchable root + shared.
|
|
204
|
+
* Should not render a switcher because there is only one mode root.
|
|
205
|
+
*/
|
|
206
|
+
const ONE_MODE_MOCKED_RESPONSE = createMockedResponse([
|
|
207
|
+
createMenuItem('Private', '/private/', 'root-private', [
|
|
208
|
+
createLeaf('Skicka', '/private/skicka/', 'private-send', 1),
|
|
209
|
+
createLeaf('Ta emot', '/private/ta-emot/', 'private-receive', 1),
|
|
210
|
+
]),
|
|
211
|
+
createMenuItem('Shared', '/', 'root-shared', [
|
|
212
|
+
createLeaf('Kundservice', '/kundservice/', 'shared-support', 1),
|
|
213
|
+
createLeaf('Handla online', '/handla-online/', 'shared-shop', 1),
|
|
214
|
+
], 0, {
|
|
215
|
+
isMegaMenuParent: false,
|
|
216
|
+
}),
|
|
217
|
+
]);
|
|
218
|
+
/**
|
|
219
|
+
* Shared-only structure.
|
|
220
|
+
* No switching should be available.
|
|
221
|
+
*/
|
|
222
|
+
const SHARED_ONLY_MOCKED_RESPONSE = createMockedResponse([
|
|
223
|
+
createMenuItem('Shared', '/', 'root-shared', [
|
|
224
|
+
createLeaf('Kundservice', '/kundservice/', 'shared-support', 1),
|
|
225
|
+
createLeaf('Handla online', '/handla-online/', 'shared-shop', 1),
|
|
226
|
+
createLeaf('Om oss', '/om-oss/', 'shared-about', 1),
|
|
227
|
+
], 0, {
|
|
228
|
+
isMegaMenuParent: false,
|
|
229
|
+
}),
|
|
230
|
+
]);
|
|
231
|
+
/**
|
|
232
|
+
* Switchable roots + shared, where visible menu items also contain sub-menu items.
|
|
233
|
+
*/
|
|
234
|
+
const NESTED_SUBMENU_MOCKED_RESPONSE = createMockedResponse([
|
|
235
|
+
createMenuItem('Private', '/private/', 'root-private', [
|
|
236
|
+
createMenuItem('Skicka', '/private/skicka/', 'private-send', [
|
|
237
|
+
createLeaf('Inrikes', '/private/skicka/inrikes/', 'private-send-domestic', 2),
|
|
238
|
+
createLeaf('Utrikes', '/private/skicka/utrikes/', 'private-send-international', 2),
|
|
239
|
+
], 1, {
|
|
240
|
+
isMegaMenuParent: false,
|
|
241
|
+
hasChildren: true,
|
|
242
|
+
promotedMenuItemsHeader: 'Populärt',
|
|
243
|
+
promotedMenuItems: [
|
|
244
|
+
createPromotedMenuItem('Skicka paket och brev', 'https://se-inte.postnord.com/kop-frakt/', '/link/ed3ac8e1d91241e98ca0c9cce544018e.aspx'),
|
|
245
|
+
createPromotedMenuItem('Sök brevlåda eller serviceställe', 'https://se-inte.postnord.com/vara-verktyg/sok-brevlada-eller-servicestalle/', '/link/1ecca245984d4ea99a4bd28390577d52.aspx'),
|
|
246
|
+
],
|
|
247
|
+
}),
|
|
248
|
+
createMenuItem('Ta emot', '/private/ta-emot/', 'private-receive', [
|
|
249
|
+
createLeaf('Paket', '/private/ta-emot/paket/', 'private-receive-packages', 2),
|
|
250
|
+
createLeaf('Brev', '/private/ta-emot/brev/', 'private-receive-letters', 2),
|
|
251
|
+
], 1, {
|
|
252
|
+
isMegaMenuParent: false,
|
|
253
|
+
hasChildren: true,
|
|
254
|
+
}),
|
|
255
|
+
]),
|
|
256
|
+
createMenuItem('Business', '/business/', 'root-business', [
|
|
257
|
+
createMenuItem('Boka frakt', '/business/boka-frakt/', 'business-book', [
|
|
258
|
+
createLeaf('Inrikes företag', '/business/boka-frakt/inrikes/', 'business-book-domestic', 2),
|
|
259
|
+
createLeaf('Utrikes företag', '/business/boka-frakt/utrikes/', 'business-book-international', 2),
|
|
260
|
+
], 1, {
|
|
261
|
+
isMegaMenuParent: false,
|
|
262
|
+
hasChildren: true,
|
|
263
|
+
}),
|
|
264
|
+
createMenuItem('Spåra', '/business/spåra/', 'business-track', [
|
|
265
|
+
createLeaf('Spåra paket', '/business/spåra/paket/', 'business-track-packages', 2),
|
|
266
|
+
createLeaf('Spåra pall', '/business/spåra/pall/', 'business-track-pallets', 2),
|
|
267
|
+
], 1, {
|
|
268
|
+
isMegaMenuParent: false,
|
|
269
|
+
hasChildren: true,
|
|
270
|
+
promotedMenuItemsHeader: 'Populärt',
|
|
271
|
+
promotedMenuItems: [
|
|
272
|
+
createPromotedMenuItem('Skicka paket och brev', 'https://se-inte.postnord.com/kop-frakt/', '/link/ed3ac8e1d91241e98ca0c9cce544018e.aspx'),
|
|
273
|
+
createPromotedMenuItem('Sök brevlåda eller serviceställe', 'https://se-inte.postnord.com/vara-verktyg/sok-brevlada-eller-servicestalle/', '/link/1ecca245984d4ea99a4bd28390577d52.aspx'),
|
|
274
|
+
],
|
|
275
|
+
}),
|
|
276
|
+
]),
|
|
277
|
+
createMenuItem('Shared', '/', 'root-shared', [
|
|
278
|
+
createMenuItem('Kundservice', '/kundservice/', 'shared-support', [
|
|
279
|
+
createLeaf('Vanliga frågor', '/kundservice/fragor/', 'shared-support-faq', 2),
|
|
280
|
+
createLeaf('Kontakta oss', '/kundservice/kontakta-oss/', 'shared-support-contact', 2),
|
|
281
|
+
], 1, {
|
|
282
|
+
isMegaMenuParent: false,
|
|
283
|
+
hasChildren: true,
|
|
284
|
+
}),
|
|
285
|
+
createMenuItem('Handla online', '/handla-online/', 'shared-shop', [
|
|
286
|
+
createLeaf('Frimärken', '/handla-online/frimarken/', 'shared-shop-stamps', 2),
|
|
287
|
+
createLeaf('Emballage', '/handla-online/emballage/', 'shared-shop-packaging', 2),
|
|
288
|
+
], 1, {
|
|
289
|
+
isMegaMenuParent: false,
|
|
290
|
+
hasChildren: true,
|
|
291
|
+
}),
|
|
292
|
+
], 0, {
|
|
293
|
+
isMegaMenuParent: false,
|
|
294
|
+
}),
|
|
295
|
+
]);
|
|
296
|
+
const meta = {
|
|
297
|
+
title: 'Marketweb/Header/pn-marketweb-header',
|
|
298
|
+
parameters: {
|
|
299
|
+
layout: 'fullscreen',
|
|
300
|
+
},
|
|
301
|
+
argTypes: {
|
|
302
|
+
market: { control: 'text' },
|
|
303
|
+
language: { control: 'text' },
|
|
304
|
+
initialActiveMenuMode: { control: 'number' },
|
|
305
|
+
environment: {
|
|
306
|
+
control: 'select',
|
|
307
|
+
options: ['production', 'preproduction', 'integration', 'localhost'],
|
|
308
|
+
},
|
|
309
|
+
endpoint: { control: 'text' },
|
|
310
|
+
pageId: { control: 'text' },
|
|
311
|
+
siteid: { control: 'text' },
|
|
312
|
+
userToken: { control: 'text' },
|
|
313
|
+
userFullname: { control: 'text' },
|
|
314
|
+
userLoggedin: { control: 'boolean' },
|
|
315
|
+
hideSiteSelector: { control: 'boolean' },
|
|
316
|
+
hideHomeMenuItem: { control: 'boolean' },
|
|
317
|
+
hideLanguageSelector: { control: 'boolean' },
|
|
318
|
+
hideSearch: { control: 'boolean' },
|
|
319
|
+
hideLogin: { control: 'boolean' },
|
|
320
|
+
showProfileSelection: { control: 'boolean' },
|
|
321
|
+
showUnifiedLogin: { control: 'boolean' },
|
|
322
|
+
siteDomainInUrls: { control: 'boolean' },
|
|
323
|
+
autocompleteEndpoint: { control: 'text' },
|
|
324
|
+
sessionForward: { control: 'boolean' },
|
|
325
|
+
cache: { control: 'boolean' },
|
|
326
|
+
searchPlaceholder: { control: 'text' },
|
|
327
|
+
spaMode: { control: 'boolean' },
|
|
328
|
+
checkUserLoggedInStateInterval: { control: 'number' },
|
|
329
|
+
useMarketwebLogin: { control: 'boolean' },
|
|
330
|
+
navigateOnMenuToggle: { control: 'boolean' },
|
|
331
|
+
useMockedResponse: { control: 'boolean' },
|
|
332
|
+
mockedResponse: {
|
|
333
|
+
control: 'object',
|
|
334
|
+
description: 'Mocked backend response envelope.',
|
|
335
|
+
},
|
|
336
|
+
},
|
|
337
|
+
};
|
|
338
|
+
export default meta;
|
|
339
|
+
/**
|
|
340
|
+
* Creates a deep clone of JSON-like mocked data.
|
|
341
|
+
* This avoids accidental mutation across renders.
|
|
342
|
+
*/
|
|
343
|
+
function cloneJson(value) {
|
|
344
|
+
return JSON.parse(JSON.stringify(value));
|
|
345
|
+
}
|
|
346
|
+
/**
|
|
347
|
+
* Creates a deep clone of the mocked backend response envelope.
|
|
348
|
+
*
|
|
349
|
+
* The mocked response should match the real backend response shape.
|
|
350
|
+
*/
|
|
351
|
+
function extractPayload(mockedResponse) {
|
|
352
|
+
return cloneJson(mockedResponse);
|
|
353
|
+
}
|
|
354
|
+
/**
|
|
355
|
+
* Creates a fetch Response containing mocked JSON.
|
|
356
|
+
*/
|
|
357
|
+
function createJsonResponse(body) {
|
|
358
|
+
return new Response(JSON.stringify(body), {
|
|
359
|
+
status: 200,
|
|
360
|
+
headers: {
|
|
361
|
+
'Content-Type': 'application/json',
|
|
362
|
+
},
|
|
363
|
+
});
|
|
364
|
+
}
|
|
365
|
+
function restoreOriginalFetch() {
|
|
366
|
+
window.fetch = ORIGINAL_FETCH;
|
|
367
|
+
}
|
|
368
|
+
/**
|
|
369
|
+
* Installs a fetch mock that intercepts header requests and returns the mocked
|
|
370
|
+
* backend envelope.
|
|
371
|
+
*
|
|
372
|
+
* The component still performs a normal fetch from its point of view.
|
|
373
|
+
*/
|
|
374
|
+
function installHeaderFetchMock(mockedResponse, endpoint) {
|
|
375
|
+
window.fetch = async (input, init) => {
|
|
376
|
+
const requestUrl = typeof input === 'string'
|
|
377
|
+
? input
|
|
378
|
+
: input instanceof URL
|
|
379
|
+
? input.toString()
|
|
380
|
+
: input.url;
|
|
381
|
+
const normalizedEndpoint = endpoint.replace(/\/$/, '');
|
|
382
|
+
const isHeaderRequest = requestUrl.includes(`${normalizedEndpoint}/api/navigation/toggle-header`) ||
|
|
383
|
+
requestUrl.includes('/api/navigation/toggle-header');
|
|
384
|
+
if (isHeaderRequest) {
|
|
385
|
+
const payload = extractPayload(mockedResponse);
|
|
386
|
+
return createJsonResponse(payload);
|
|
387
|
+
}
|
|
388
|
+
return ORIGINAL_FETCH(input, init);
|
|
389
|
+
};
|
|
390
|
+
}
|
|
391
|
+
function createTopRightEndButton() {
|
|
392
|
+
const button = document.createElement('a');
|
|
393
|
+
button.setAttribute('slot', 'toprightend');
|
|
394
|
+
button.setAttribute('style', 'align-self:center;justfit-content:center;position:relative;text-decoration:none;color:#005d92;');
|
|
395
|
+
button.innerHTML = `<span>Varukorg</span><pn-icon icon='${shop}' color="blue700" class="pn-icon"></pn-icon>`;
|
|
396
|
+
button.style.cursor = 'pointer';
|
|
397
|
+
button.style.fontSize = '16px';
|
|
398
|
+
return button;
|
|
399
|
+
}
|
|
400
|
+
function createMenuFooterCta() {
|
|
401
|
+
const link = document.createElement('a');
|
|
402
|
+
link.setAttribute('slot', 'menu-footer-cta');
|
|
403
|
+
link.setAttribute('href', '#');
|
|
404
|
+
link.textContent = 'Footer CTA';
|
|
405
|
+
link.style.display = 'inline-block';
|
|
406
|
+
link.style.padding = '8px 12px';
|
|
407
|
+
link.style.borderRadius = '6px';
|
|
408
|
+
link.style.border = '1px solid #ccc';
|
|
409
|
+
link.style.textDecoration = 'none';
|
|
410
|
+
link.style.color = 'inherit';
|
|
411
|
+
return link;
|
|
412
|
+
}
|
|
413
|
+
/**
|
|
414
|
+
* Creates the actual header element and assigns props directly.
|
|
415
|
+
*
|
|
416
|
+
* This is important for boolean props like navigateOnMenuToggle.
|
|
417
|
+
*/
|
|
418
|
+
function createHeaderElement(args) {
|
|
419
|
+
const header = document.createElement('pn-marketweb-header');
|
|
420
|
+
header.market = args.market;
|
|
421
|
+
header.initialActiveMenuMode = args.initialActiveMenuMode;
|
|
422
|
+
header.menuThemes = args.menuThemes;
|
|
423
|
+
header.language = args.language;
|
|
424
|
+
header.environment = args.environment;
|
|
425
|
+
header.endpoint = args.endpoint;
|
|
426
|
+
header.pageId = args.pageId;
|
|
427
|
+
header.siteid = args.siteid;
|
|
428
|
+
header.userToken = args.userToken;
|
|
429
|
+
header.userFullname = args.userFullname;
|
|
430
|
+
header.userLoggedin = args.userLoggedin;
|
|
431
|
+
header.hideSiteSelector = args.hideSiteSelector;
|
|
432
|
+
header.hideHomeMenuItem = args.hideHomeMenuItem;
|
|
433
|
+
header.hideLanguageSelector = args.hideLanguageSelector;
|
|
434
|
+
header.hideSearch = args.hideSearch;
|
|
435
|
+
header.hideLogin = args.hideLogin;
|
|
436
|
+
header.showProfileSelection = args.showProfileSelection;
|
|
437
|
+
header.showUnifiedLogin = args.showUnifiedLogin;
|
|
438
|
+
header.siteDomainInUrls = args.siteDomainInUrls;
|
|
439
|
+
header.autocompleteEndpoint = args.autocompleteEndpoint;
|
|
440
|
+
header.sessionForward = args.sessionForward;
|
|
441
|
+
header.cache = args.cache;
|
|
442
|
+
header.searchPlaceholder = args.searchPlaceholder;
|
|
443
|
+
header.spaMode = args.spaMode;
|
|
444
|
+
header.checkUserLoggedInStateInterval = args.checkUserLoggedInStateInterval;
|
|
445
|
+
header.useMarketwebLogin = args.useMarketwebLogin;
|
|
446
|
+
header.navigateOnMenuToggle = args.navigateOnMenuToggle;
|
|
447
|
+
header.appendChild(createTopRightEndButton());
|
|
448
|
+
header.appendChild(createMenuFooterCta());
|
|
449
|
+
return header;
|
|
450
|
+
}
|
|
451
|
+
/**
|
|
452
|
+
* Renders the Storybook shell and the header.
|
|
453
|
+
*
|
|
454
|
+
* This story intentionally does not include a fake menu switcher.
|
|
455
|
+
* The real pn-marketweb-header should render its own switcher when the menu
|
|
456
|
+
* structure supports multiple switchable root menus.
|
|
457
|
+
*/
|
|
458
|
+
function renderHeaderStory(args) {
|
|
459
|
+
restoreOriginalFetch();
|
|
460
|
+
if (args.useMockedResponse) {
|
|
461
|
+
installHeaderFetchMock(args.mockedResponse, args.endpoint);
|
|
462
|
+
}
|
|
463
|
+
const root = document.createElement('div');
|
|
464
|
+
root.style.minHeight = '100vh';
|
|
465
|
+
root.style.background = '#f5f5f5';
|
|
466
|
+
const header = createHeaderElement(args);
|
|
467
|
+
root.appendChild(header);
|
|
468
|
+
const main = document.createElement('main');
|
|
469
|
+
main.style.padding = '32px';
|
|
470
|
+
const title = document.createElement('h1');
|
|
471
|
+
title.textContent = 'Storybook preview';
|
|
472
|
+
title.style.marginTop = '0';
|
|
473
|
+
const paragraph1 = document.createElement('p');
|
|
474
|
+
paragraph1.textContent = args.useMockedResponse
|
|
475
|
+
? 'This story uses a mocked backend response.'
|
|
476
|
+
: 'This story uses the real backend response from the configured endpoint.';
|
|
477
|
+
const paragraph2 = document.createElement('p');
|
|
478
|
+
paragraph2.innerHTML =
|
|
479
|
+
'In Storybook, <code>navigateOnMenuToggle</code> is disabled by default so you can inspect menu switching without leaving the preview.';
|
|
480
|
+
main.appendChild(title);
|
|
481
|
+
main.appendChild(paragraph1);
|
|
482
|
+
main.appendChild(paragraph2);
|
|
483
|
+
root.appendChild(main);
|
|
484
|
+
return root;
|
|
485
|
+
}
|
|
486
|
+
const DEFAULT_ARGS = {
|
|
487
|
+
market: 'se',
|
|
488
|
+
language: 'sv',
|
|
489
|
+
environment: 'localhost',
|
|
490
|
+
initialActiveMenuMode: 0,
|
|
491
|
+
endpoint: 'https://storybook.local',
|
|
492
|
+
pageId: '9',
|
|
493
|
+
siteid: '',
|
|
494
|
+
userToken: '',
|
|
495
|
+
userFullname: '',
|
|
496
|
+
userLoggedin: false,
|
|
497
|
+
hideSiteSelector: false,
|
|
498
|
+
hideHomeMenuItem: false,
|
|
499
|
+
hideLanguageSelector: false,
|
|
500
|
+
hideSearch: false,
|
|
501
|
+
hideLogin: false,
|
|
502
|
+
showProfileSelection: true,
|
|
503
|
+
showUnifiedLogin: true,
|
|
504
|
+
siteDomainInUrls: false,
|
|
505
|
+
autocompleteEndpoint: '',
|
|
506
|
+
sessionForward: false,
|
|
507
|
+
cache: false,
|
|
508
|
+
searchPlaceholder: 'Sök',
|
|
509
|
+
spaMode: false,
|
|
510
|
+
checkUserLoggedInStateInterval: 0,
|
|
511
|
+
useMarketwebLogin: false,
|
|
512
|
+
navigateOnMenuToggle: false,
|
|
513
|
+
useMockedResponse: true,
|
|
514
|
+
};
|
|
515
|
+
/**
|
|
516
|
+
* Baseline story:
|
|
517
|
+
* - 2 switchable roots
|
|
518
|
+
* - 1 shared root
|
|
519
|
+
*/
|
|
520
|
+
export const TwoModesWithShared = {
|
|
521
|
+
render: args => renderHeaderStory(args),
|
|
522
|
+
args: {
|
|
523
|
+
...DEFAULT_ARGS,
|
|
524
|
+
mockedResponse: DEFAULT_MOCKED_RESPONSE,
|
|
525
|
+
},
|
|
526
|
+
};
|
|
527
|
+
/**
|
|
528
|
+
* Verifies that more than 2 switchable roots are supported.
|
|
529
|
+
*/
|
|
530
|
+
export const ThreeModesWithShared = {
|
|
531
|
+
render: args => renderHeaderStory(args),
|
|
532
|
+
args: {
|
|
533
|
+
...DEFAULT_ARGS,
|
|
534
|
+
mockedResponse: THREE_MODES_MOCKED_RESPONSE,
|
|
535
|
+
},
|
|
536
|
+
};
|
|
537
|
+
/**
|
|
538
|
+
* Only one mode root + shared.
|
|
539
|
+
* The header should not render the menu switcher.
|
|
540
|
+
*/
|
|
541
|
+
export const OneModeWithShared = {
|
|
542
|
+
render: args => renderHeaderStory(args),
|
|
543
|
+
args: {
|
|
544
|
+
...DEFAULT_ARGS,
|
|
545
|
+
mockedResponse: ONE_MODE_MOCKED_RESPONSE,
|
|
546
|
+
},
|
|
547
|
+
};
|
|
548
|
+
/**
|
|
549
|
+
* Shared-only structure.
|
|
550
|
+
* Useful for verifying fallback rendering when no switchable roots exist.
|
|
551
|
+
*/
|
|
552
|
+
export const SharedOnly = {
|
|
553
|
+
render: args => renderHeaderStory(args),
|
|
554
|
+
args: {
|
|
555
|
+
...DEFAULT_ARGS,
|
|
556
|
+
mockedResponse: SHARED_ONLY_MOCKED_RESPONSE,
|
|
557
|
+
},
|
|
558
|
+
};
|
|
559
|
+
/**
|
|
560
|
+
* Same baseline structure, but start on the second mode.
|
|
561
|
+
*/
|
|
562
|
+
export const StartOnSecondMode = {
|
|
563
|
+
render: args => renderHeaderStory(args),
|
|
564
|
+
args: {
|
|
565
|
+
...DEFAULT_ARGS,
|
|
566
|
+
initialActiveMenuMode: 1,
|
|
567
|
+
mockedResponse: DEFAULT_MOCKED_RESPONSE,
|
|
568
|
+
},
|
|
569
|
+
};
|
|
570
|
+
/**
|
|
571
|
+
* Same baseline structure, but allow real navigation hrefs on mode change.
|
|
572
|
+
* Mostly useful for checking rendered links rather than interacting in Storybook.
|
|
573
|
+
*/
|
|
574
|
+
export const NavigationEnabled = {
|
|
575
|
+
render: args => renderHeaderStory(args),
|
|
576
|
+
args: {
|
|
577
|
+
...DEFAULT_ARGS,
|
|
578
|
+
navigateOnMenuToggle: true,
|
|
579
|
+
mockedResponse: DEFAULT_MOCKED_RESPONSE,
|
|
580
|
+
},
|
|
581
|
+
};
|
|
582
|
+
/**
|
|
583
|
+
* Smaller layout story while still using mocked data.
|
|
584
|
+
*/
|
|
585
|
+
export const Minimal = {
|
|
586
|
+
render: args => renderHeaderStory(args),
|
|
587
|
+
args: {
|
|
588
|
+
...DEFAULT_ARGS,
|
|
589
|
+
hideSiteSelector: true,
|
|
590
|
+
hideLanguageSelector: true,
|
|
591
|
+
hideLogin: true,
|
|
592
|
+
showProfileSelection: false,
|
|
593
|
+
showUnifiedLogin: false,
|
|
594
|
+
mockedResponse: DEFAULT_MOCKED_RESPONSE,
|
|
595
|
+
},
|
|
596
|
+
};
|
|
597
|
+
/**
|
|
598
|
+
* Menu items contain nested sub-menu items.
|
|
599
|
+
*/
|
|
600
|
+
export const NestedSubmenuItems = {
|
|
601
|
+
render: args => renderHeaderStory(args),
|
|
602
|
+
args: {
|
|
603
|
+
...DEFAULT_ARGS,
|
|
604
|
+
mockedResponse: NESTED_SUBMENU_MOCKED_RESPONSE,
|
|
605
|
+
},
|
|
606
|
+
};
|
|
607
|
+
/**
|
|
608
|
+
* Uses the real local CMS instead of Storybook fetch mocking.
|
|
609
|
+
*/
|
|
610
|
+
export const LocalCms = {
|
|
611
|
+
render: args => renderHeaderStory(args),
|
|
612
|
+
args: {
|
|
613
|
+
...DEFAULT_ARGS,
|
|
614
|
+
useMockedResponse: false,
|
|
615
|
+
endpoint: 'https://localhost:51547',
|
|
616
|
+
environment: 'localhost',
|
|
617
|
+
pageId: '9',
|
|
618
|
+
siteid: '',
|
|
619
|
+
mockedResponse: DEFAULT_MOCKED_RESPONSE,
|
|
620
|
+
},
|
|
621
|
+
};
|
|
622
|
+
/**
|
|
623
|
+
* Uses the real integration CMS instead of Storybook fetch mocking. //FIXME: getting cors-safe data at the moment
|
|
624
|
+
*/
|
|
625
|
+
export const IntegrationCms = {
|
|
626
|
+
render: args => renderHeaderStory(args),
|
|
627
|
+
args: {
|
|
628
|
+
...DEFAULT_ARGS,
|
|
629
|
+
useMockedResponse: false,
|
|
630
|
+
endpoint: 'https://se-inte.postnord.com',
|
|
631
|
+
environment: 'integration',
|
|
632
|
+
market: 'se',
|
|
633
|
+
language: 'sv',
|
|
634
|
+
pageId: '9',
|
|
635
|
+
// userToken: '6ae6bde345eb68fc0102f4ba256f31e9151db31dc2ea4c23a51917c'
|
|
636
|
+
},
|
|
637
|
+
};
|
|
638
|
+
//# sourceMappingURL=pn-marketweb-header.stories.js.map
|