@postnord/pn-marketweb-components 3.4.7 → 3.4.8

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.
Files changed (25) hide show
  1. package/cjs/pn-marketweb-siteheader-login-button_5.cjs.entry.js +3 -2
  2. package/cjs/pn-marketweb-siteheader-login-button_5.cjs.entry.js.map +1 -1
  3. package/cjs/pn-marketweb-siteheader.cjs.entry.js +2 -2
  4. package/cjs/pn-marketweb-siteheader.cjs.entry.js.map +1 -1
  5. package/collection/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader.js +2 -2
  6. package/collection/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader.js.map +1 -1
  7. package/collection/components/layout-components/pn-marketweb-siteheader/unifiedLoginHelper.js +3 -2
  8. package/collection/components/layout-components/pn-marketweb-siteheader/unifiedLoginHelper.js.map +1 -1
  9. package/components/pn-marketweb-siteheader-login-button2.js +3 -2
  10. package/components/pn-marketweb-siteheader-login-button2.js.map +1 -1
  11. package/components/pn-marketweb-siteheader.js +2 -2
  12. package/components/pn-marketweb-siteheader.js.map +1 -1
  13. package/esm/pn-marketweb-siteheader-login-button_5.entry.js +3 -2
  14. package/esm/pn-marketweb-siteheader-login-button_5.entry.js.map +1 -1
  15. package/esm/pn-marketweb-siteheader.entry.js +2 -2
  16. package/esm/pn-marketweb-siteheader.entry.js.map +1 -1
  17. package/package.json +1 -1
  18. package/pn-market-web-components/{p-644858d3.entry.js → p-65bc5d9f.entry.js} +2 -2
  19. package/pn-market-web-components/p-65bc5d9f.entry.js.map +1 -0
  20. package/pn-market-web-components/p-741d14ca.entry.js +2 -0
  21. package/pn-market-web-components/p-741d14ca.entry.js.map +1 -0
  22. package/pn-market-web-components/pn-market-web-components.esm.js +1 -1
  23. package/pn-market-web-components/p-644858d3.entry.js.map +0 -1
  24. package/pn-market-web-components/p-9a7abcee.entry.js +0 -2
  25. package/pn-market-web-components/p-9a7abcee.entry.js.map +0 -1
@@ -22,8 +22,9 @@ const getLoginUrl = currentDomain => {
22
22
  Or is localhost | local.posnord.*
23
23
 
24
24
  Step 2.
25
- If the above is not matches, check if the domain is a portal AT domain:
25
+ If the above is not matches, check if the domain is a portal or kopfrakt AT domain:
26
26
  portalAtDomains = ['devportal.postnord.com', 'atportal.postnord.com']
27
+ kopfraktAtDomain = ['dev.kopfrakt.postnord.com']
27
28
  Then use the atportal endpoints to log in (this should have nothing to do with the market domains
28
29
 
29
30
  Step 3.
@@ -33,7 +34,7 @@ const getLoginUrl = currentDomain => {
33
34
  const marketRegex = '(?:se|dk|no|fi|com|de|tpl|group)-(?:integration|preproduction|production|inte|prep|prod).(?:postnord.com)';
34
35
  const wwwRegex = '(?:www(?:.tpl|.group)?.postnord.(?:se|dk|no|fi|com|de))';
35
36
  const localRegex = '(?:local)(?:host|.postnord.)(?:se|dk|no|fi|com|de|)';
36
- const devAndAtRegex = '(?:dev|at)(?:portal.postnord.com)';
37
+ const devAndAtRegex = '(?:dev|at)(?:[.-]?(?:portal|kopfrakt).postnord.com)';
37
38
  if (currentDomain.match(marketRegex) || currentDomain.match(wwwRegex) || currentDomain.match(localRegex)) {
38
39
  return '/login?returnUrl=';
39
40
  }
@@ -1 +1 @@
1
- {"file":"pn-marketweb-siteheader-login-button.pn-marketweb-siteheader-login-links.pn-marketweb-siteheader-login-mypage-button.pn-marketweb-siteheader-login-profileselection.pn-marketweb-siteheader-unified-login.entry.cjs.js","mappings":"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","names":["h","Host","headerState","arrow_right"],"sources":["src/components/layout-components/pn-marketweb-siteheader/unifiedLoginHelper.ts","src/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-login-button.scss?tag=pn-marketweb-siteheader-login-button","src/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-login-button.tsx","src/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-login-links.scss?tag=pn-marketweb-siteheader-login-links","src/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-login-links.tsx","src/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-login-mypage-button.scss?tag=pn-marketweb-siteheader-login-mypage-button","src/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-login-mypage-button.tsx","src/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-login-profileselection.scss?tag=pn-marketweb-siteheader-login-profileselection","src/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-login-profileselection.tsx","src/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-unified-login.scss?tag=pn-marketweb-siteheader-unified-login","src/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-unified-login.tsx"],"sourcesContent":["export const getLoginUrl = currentDomain => {\n /*\nURL RULES:\n----------\n\nStep 1\nIf a user is on on a domain with these patterns / direct urls:\n [market]-[environments].postnord.com\n market = ['se','dk', 'no', 'fi','com','de','tpl'];\n environments = ['integration', 'preproduction', 'production'];\nOr matches\n wwwurls = ['www.postnord.se','www.postnord.dk', 'www.postnord.no', 'www.postnord.fi', 'www.postnord.com', 'www.postnord.de', 'www.tpl.postnord.com']\nOr is localhost | local.posnord.*\n\nStep 2.\nIf the above is not matches, check if the domain is a portal AT domain:\n portalAtDomains = ['devportal.postnord.com', 'atportal.postnord.com']\n Then use the atportal endpoints to log in (this should have nothing to do with the market domains\n\nStep 3.\nIf non of the above matches, then use the production portal endpoint to log in\n\n*/\n const marketRegex =\n '(?:se|dk|no|fi|com|de|tpl|group)-(?:integration|preproduction|production|inte|prep|prod).(?:postnord.com)';\n const wwwRegex = '(?:www(?:.tpl|.group)?.postnord.(?:se|dk|no|fi|com|de))';\n const localRegex = '(?:local)(?:host|.postnord.)(?:se|dk|no|fi|com|de|)';\n const devAndAtRegex = '(?:dev|at)(?:portal.postnord.com)';\n\n if (currentDomain.match(marketRegex) || currentDomain.match(wwwRegex) || currentDomain.match(localRegex)) {\n return '/login?returnUrl=';\n } else if (currentDomain.match(devAndAtRegex)) {\n return 'https://atportal.postnord.com/api/unified-login/backend/authorization?redirectionUrl=';\n } else {\n return 'https://portal.postnord.com/api/unified-login/backend/authorization?redirectionUrl=';\n }\n};\n","pn-marketweb-siteheader-login-button {\n}\n","import { Component, Element, h, Host, Prop } from '@stencil/core';\n\nimport { getLoginUrl } from './unifiedLoginHelper';\n\n@Component({\n tag: 'pn-marketweb-siteheader-login-button',\n styleUrl: 'pn-marketweb-siteheader-login-button.scss',\n})\nexport class PnMarketwebSiteheaderLoginButton {\n @Element() hostElement: HTMLElement;\n @Prop() label: string = 'Log in';\n\n loginUrl: string;\n\n componentWillLoad() {\n this.loginUrl = getLoginUrl(window.location.host);\n }\n\n nagivateToLoginUrl() {\n const navigationUrl = `${this.loginUrl}${window.location.href}`;\n return navigationUrl;\n }\n\n render() {\n return (\n <Host>\n <pn-button href={this.nagivateToLoginUrl()}>{this.label}</pn-button>\n </Host>\n );\n }\n}\n","@import '../../../globals/main.scss';\n\n@import './pn-marketweb-siteheader-common.scss';\n\npn-marketweb-siteheader-login-links {\n}\n","import { Component, Element, h, Host, Prop, Watch } from '@stencil/core';\n\nimport { state as headerState } from './pn-marketweb-siteheader-store';\nimport { LoginDialog } from './pn-marketweb-siteheader-types';\n\n@Component({\n tag: 'pn-marketweb-siteheader-login-links',\n styleUrl: 'pn-marketweb-siteheader-login-links.scss',\n})\nexport class PnMarketwebSiteheaderLoginLinks {\n @Element() hostElement: HTMLElement;\n\n // Login dialog\n @Prop({ mutable: true }) loginDialog: LoginDialog = null;\n @Prop() idNamespace: string = '';\n @Prop({ reflect: true }) loggedin: boolean = false;\n @Prop() username: string = '';\n @Prop() showUnifiedLogin: boolean = false;\n\n componentWillLoad() {\n this.init();\n }\n\n @Watch('loginDialog')\n async init() {\n this.adjustLoginLinks();\n }\n adjustLoginLinks() {\n if (!this.loginDialog) {\n return;\n }\n\n const adjustLink = (link, i) => {\n if (!link.isLogoutLink) {\n link.isLogoutLink = link.pageLink.indexOf('location.href') !== -1 && link.pageLink.indexOf('logout') !== -1;\n }\n if (link.isLogoutLink) {\n link.href = headerState.loginManager.getLogoutUrl(link.href);\n }\n link.href = link.href.replace('window.location.href', window.location.href);\n if (i === 0 && !link.href) {\n link.href = headerState.loginManager.getLoginUrl();\n link.linkType = 'primary';\n }\n if (link.primaryLinkApperance && !link.linkType) {\n link.linkType = 'primary';\n }\n };\n\n if (this.loginDialog?.loginMenuLinks) {\n this.loginDialog?.loginMenuLinks.forEach(adjustLink);\n }\n if (this.loginDialog?.loggedInLinks) {\n this.loginDialog?.loggedInLinks.forEach(adjustLink);\n }\n\n this.loginDialog.legacyLoginLinks = [\n {\n href: headerState.loginManager.getLoginUrl(this.loginDialog.loginUrl),\n linkText: this.loginDialog.loginLinkText,\n openInNewWindow: false,\n isLogoutLink: false,\n pageLink: null,\n linkType: 'primary',\n primaryLinkApperance: true,\n },\n {\n href: headerState.loginManager.getLoginUrl(this.loginDialog.registerUrl),\n linkText: this.loginDialog.createLoginLinkText,\n openInNewWindow: false,\n isLogoutLink: false,\n pageLink: null,\n primaryLinkApperance: false,\n },\n ];\n }\n\n render() {\n if (!this.loginDialog) {\n return;\n }\n\n let hostElementAttribute = {\n username: null,\n loggedin: false,\n };\n if (this.username) {\n hostElementAttribute.username = this.username;\n hostElementAttribute.loggedin = this.loggedin;\n }\n return (\n <Host {...hostElementAttribute}>\n {!this.loginDialog.overrideLoginMenu ? (\n <div data-loggedin={this.loggedin + ''}>\n {this.loggedin ? (\n <pn-marketweb-siteheader-login-linklist links={this.loginDialog.loggedInLinks} idNamespace={this.idNamespace}></pn-marketweb-siteheader-login-linklist>\n ) : (\n <div>\n {/* Get login links from API */}\n {this.loginDialog.loginMenuLinks?.length > 0 ? (\n <pn-marketweb-siteheader-login-linklist\n heading={this.loginDialog.loginTitle}\n links={this.loginDialog.loginMenuLinks}\n idNamespace={this.idNamespace}\n showUnifiedLogin={this.showUnifiedLogin}\n ></pn-marketweb-siteheader-login-linklist>\n ) : (\n <pn-marketweb-siteheader-login-linklist links={this.loginDialog.legacyLoginLinks} idNamespace={this.idNamespace}></pn-marketweb-siteheader-login-linklist>\n )}\n </div>\n )}\n </div>\n ) : null}\n\n {/* Override the default logic for some markets such as DK */}\n {this.loginDialog.overrideLoginMenu ? (\n <pn-marketweb-siteheader-login-linklist links={this.loginDialog.loginMenuLinks} idNamespace={this.idNamespace}></pn-marketweb-siteheader-login-linklist>\n ) : null}\n </Host>\n );\n }\n}\n","pn-marketweb-siteheader-login-mypage-button {\n}\n","import { Component, Element, h, Host, Prop } from '@stencil/core';\n\n@Component({\n tag: 'pn-marketweb-siteheader-login-mypage-button',\n styleUrl: 'pn-marketweb-siteheader-login-mypage-button.scss',\n})\nexport class PnMarketwebSiteheaderLoginMypageButton {\n @Element() hostElement: HTMLElement;\n @Prop() label: string = 'Mina sidor!';\n @Prop() myPageUrl: string;\n\n render() {\n return (\n <Host>\n <pn-button href={this.myPageUrl}>{this.label}</pn-button>\n </Host>\n );\n }\n}\n","@import '../../../globals/main.scss';\n\n@import './pn-marketweb-siteheader-common.scss';\n\npn-marketweb-siteheader-login-profileselection {\n}\n\n.pn-marketweb-siteheader-login-profileselection-heading {\n display: block;\n padding: 0.5rem 0 1rem;\n}\n\n.pn-marketweb-siteheader-login-profileselection-user,\n.pn-marketweb-siteheader-login-profileselection-currentprofile {\n margin-top: 1rem;\n margin-bottom: 1rem;\n}\n\n.pn-marketweb-siteheader-login-profileselection-user-name,\n.pn-marketweb-siteheader-login-profileselection-currentprofile-name {\n line-height: 1;\n}\n\n.pn-marketweb-siteheader-login-profileselection-user-description,\n.pn-marketweb-siteheader-login-profileselection-currentprofile-description {\n font-weight: 400;\n white-space: normal;\n word-break: break-all;\n color: $gray700;\n font-size: 0.75em;\n}\n\n.pn-marketweb-siteheader-login-profileselection-divider {\n height: 1rem;\n width: 100%;\n background: $blue400;\n position: relative;\n\n margin-left: -1em; // Negative positioning due to nav dropdown's padding\n margin-top: 1.6rem;\n margin-bottom: 1.6rem;\n border-radius: 0 0.6em 0.6em 0;\n padding: 0;\n &::after {\n content: '';\n width: 0.6em;\n height: 0.6em;\n border-radius: 50%;\n position: absolute;\n right: 0;\n top: 0;\n background: inherit;\n transform: translateX(calc(100% + 0.2em));\n }\n}\n\n.pn-marketweb-siteheader-login-profileselection-profileoption {\n}\n\n.pn-marketweb-siteheader-login-profileselection-profileoption-link {\n display: flex;\n background: $white;\n transition: background 0.15s ease-in-out;\n // width:100%;\n margin: 0 -1em; // Negative margin due to dropdown content padding\n padding: 0.6rem 1.6rem;\n text-decoration: none;\n color: $blue700;\n align-items: center;\n &:hover,\n &:focus,\n &:active {\n background: $gray50;\n }\n}\n\n.pn-marketweb-siteheader-login-profileselection-profileoption-content {\n flex-grow: 1;\n}\n.pn-marketweb-siteheader-login-profileselection-profileoption-name {\n font-weight: 700;\n}\n\n.pn-marketweb-siteheader-login-profileselection-profileoption-description {\n font-weight: 400;\n white-space: normal;\n word-break: break-all;\n color: $gray700;\n font-size: 0.75em;\n}\n\n.pn-marketweb-siteheader-login-profileselection-logout {\n padding: 1.6rem;\n text-align: center;\n width: 100%;\n}\n\n.pn-marketweb-siteheader-login-profileselection-logout-link {\n display: inline-block;\n font-weight: 500;\n color: $blue700;\n text-decoration: none;\n &:hover,\n &:focus,\n &:active {\n text-decoration: underline;\n }\n}\n","import { Component, Element, h, Host, Prop, State } from '@stencil/core';\n\nimport { IUserInfo } from '../../../globals/MarketWebLoginManager';\nimport { state as headerState } from './pn-marketweb-siteheader-store';\nimport { LoginDialog, LoginDialogLink, ProfileSelectorCustomerItem, ProfileSelectorOrganization, SiteHeaderI18N } from './pn-marketweb-siteheader-types';\nimport { arrow_right } from 'pn-design-assets/pn-assets/icons.js';\n\n@Component({\n tag: 'pn-marketweb-siteheader-login-profileselection',\n styleUrl: 'pn-marketweb-siteheader-login-profileselection.scss',\n})\nexport class PnMarketwebSiteheaderLoginProfileselection {\n @Element() hostElement: HTMLElement;\n\n // Login dialog\n @Prop({ mutable: true }) loginDialog: LoginDialog = null;\n @Prop() endpoint: string = '';\n @Prop() loggedin: boolean = false;\n @Prop() idNamespace: string = '';\n @Prop() heading: string = null;\n @Prop() i18n: SiteHeaderI18N = {\n searchlabel: '',\n searchplaceholder: '',\n searchbuttontext: '',\n menuHomeButton: '',\n menuGoBackButton: '',\n mainMenuButton: '',\n menuStartButton: '',\n profileSelectionFlyoutHeading: '',\n } as SiteHeaderI18N;\n\n @State() user: IUserInfo = null;\n\n @State() logoutLink: LoginDialogLink = null;\n @State() userName: string = null;\n @State() userEmail: string = '';\n\n @Prop({ mutable: true }) currentProfile: ProfileSelectorCustomerItem = null;\n @Prop({ mutable: true }) profileoptions: ProfileSelectorOrganization[] = [];\n\n componentWillLoad() {\n if (this.heading === null && this.i18n?.profileSelectionFlyoutHeading) {\n this.heading = this.i18n.profileSelectionFlyoutHeading;\n }\n this.init();\n }\n\n init() {\n this.updateUserInfo();\n this.adjustLoginLinks();\n this.fetchProfiles();\n }\n async fetchProfiles() {\n if (!this.loggedin || this.profileoptions.length > 0) {\n return;\n }\n let apiUrl = `${this.endpoint}${this.endpoint.lastIndexOf('/') > -1 && this.endpoint.lastIndexOf('/') === this.endpoint.length - 1 ? '' : '/'}api/user/parentorganizations`;\n const req = await fetch(apiUrl);\n const reqdata = await req.json();\n const fallbackData = {\n loggedin: true,\n organizations: [\n {\n name: 'Forsheda Livs AB',\n customerNumber: '5564513603',\n id: 'dbba867d-1dff-3dbb-b420-c57b4b828b73',\n selected: true,\n profiles: [\n {\n name: 'Forsheda Livs AB',\n customerNumber: '20685482',\n id: 'f757ba28-9a73-15a2-f128-4b394d970f3f',\n ssid: '',\n selected: false,\n customerGroup: 'Business',\n },\n {\n name: 'ICA MAXI KUNGSBACKA',\n customerNumber: '20831191',\n id: '5aea41df-32b0-3f7e-2946-78598360177d',\n ssid: '259686',\n selected: true,\n customerGroup: 'Agent',\n },\n ],\n },\n {\n name: 'Hem Livs i Kungsbacka AB',\n customerNumber: '5565271250',\n id: '97ca363c-40ef-cca9-7a3c-9e7f025567c2',\n selected: false,\n profiles: [\n {\n name: 'ICA KVANTUM KUNGSBACKA',\n customerNumber: '20831193',\n id: 'fbd61ffd-41c6-2206-b88e-cfef91e1dc39',\n ssid: '259691',\n selected: false,\n customerGroup: 'Agent',\n },\n ],\n },\n {\n name: 'ICA SUPERMARKET TORGET',\n customerNumber: '5568902679',\n id: '7cb76a94-e1a5-5f57-58fd-bc563851b28e',\n selected: false,\n profiles: [\n {\n name: 'ICA SUPERMARKET TORGET',\n customerNumber: '20831212',\n id: '3a2db017-b68f-6fa0-fe70-542c08cd97ce',\n ssid: '',\n selected: false,\n customerGroup: 'Agent',\n },\n ],\n },\n ],\n };\n const data = window.location.href.indexOf('localhost:6008') !== -1 ? fallbackData : reqdata;\n\n if (!data || !data.organizations || !data.organizations.length) {\n return;\n }\n\n (data.organizations as ProfileSelectorOrganization[]).forEach(org => {\n if (org.selected === true && org.profiles) {\n const selectedProfile = org.profiles.filter(x => x.selected === true);\n if (selectedProfile && selectedProfile[0] && selectedProfile[0].customerGroup.toLocaleLowerCase() === 'agent' && selectedProfile[0].ssid) {\n org.customerNumber = selectedProfile[0].ssid;\n }\n } else {\n if (org.customerNumber.length === 10 && org.customerNumber.substring(0, 2) === '55') {\n org.customerNumber = org.customerNumber.substring(0, 6) + '-' + org.customerNumber.substring(6);\n }\n this.profileoptions.push(org);\n }\n });\n\n let currentProfileObj = data.organizations.filter(x => x.selected === true)[0];\n const userProfileOption = {\n name: this.userName,\n customerNumber: '',\n id: '',\n selected: !currentProfileObj,\n profiles: [],\n };\n if (!currentProfileObj) {\n currentProfileObj = userProfileOption;\n }\n\n if (currentProfileObj && currentProfileObj.name) {\n this.currentProfile = currentProfileObj;\n }\n this.profileoptions.push(userProfileOption);\n }\n adjustLoginLinks() {\n const adjustLink = (link, i) => {\n if (!link.isLogoutLink) {\n link.isLogoutLink = link.pageLink.indexOf('location.href') !== -1 && link.pageLink.indexOf('logout') !== -1;\n }\n if (link.isLogoutLink) {\n link.href = headerState.loginManager.getLogoutUrl(link.href);\n }\n\n if (i === 0 && !link.href) {\n link.href = headerState.loginManager.getLoginUrl();\n link.linkType = 'primary';\n }\n if (link.primaryLinkApperance && !link.linkType) {\n link.linkType = 'primary';\n }\n };\n\n if (this.loginDialog?.loggedInLinks) {\n this.loginDialog?.loggedInLinks.forEach(adjustLink);\n }\n\n this.logoutLink = this.loginDialog?.loggedInLinks.filter(x => x.isLogoutLink)[0] ?? null;\n }\n updateUserInfo() {\n const userInfo: IUserInfo = headerState.loginManager.getUserInfo();\n this.user = userInfo;\n if (!userInfo) {\n return;\n }\n if (userInfo && userInfo.email) {\n this.userEmail = userInfo.email;\n }\n if (userInfo && userInfo.given_name) {\n this.userName = userInfo.given_name + (userInfo?.family_name ? ` ${userInfo?.family_name}` : '');\n }\n if (userInfo && userInfo.given_name) {\n this.userName = userInfo.given_name;\n return;\n }\n if (userInfo && userInfo.family_name) {\n this.userName = userInfo.family_name;\n return;\n }\n if (userInfo && userInfo.username) {\n this.userName = userInfo.username;\n return;\n }\n }\n\n filterLogoutLink(loggedInLinks: LoginDialogLink[]): LoginDialogLink[] {\n return loggedInLinks.filter((link: LoginDialogLink) => !link.isLogoutLink);\n }\n\n render() {\n if (!this.loginDialog) {\n return;\n }\n\n let hostElementAttribute = {};\n return (\n <Host {...hostElementAttribute}>\n {this.heading ? <strong class=\"pn-marketweb-siteheader-login-profileselection-heading\">{this.heading}</strong> : null}\n {this.currentProfile !== null && this.currentProfile.name ? (\n <div class=\"pn-marketweb-siteheader-login-profileselection-currentprofile\">\n <div class=\"pn-marketweb-siteheader-login-profileselection-currentprofile-name\">{this.currentProfile.name}</div>\n <div class=\"pn-marketweb-siteheader-login-profileselection-currentprofile-description\">\n {this.currentProfile.customerNumber ? this.currentProfile.customerNumber : this.userEmail}\n </div>\n </div>\n ) : null}\n\n <pn-marketweb-siteheader-login-linklist\n links={this.filterLogoutLink(this.loginDialog.loggedInLinks)}\n idNamespace={this.idNamespace}\n ></pn-marketweb-siteheader-login-linklist>\n\n <div class=\"pn-marketweb-siteheader-login-profileselection-divider\"></div>\n {this.profileoptions\n .filter(x => x.selected !== true)\n .map(organization => {\n let customerNumber = organization.profiles.length > 0 ? organization.profiles[0].customerNumber : organization.customerNumber;\n return (\n <div class=\"pn-marketweb-siteheader-login-profileselection-profileoption\">\n {/* /api/user/setprofile? profile=xxxxx */}\n <a\n href={`${this.endpoint}/api/user/setprofile?customernumber=${customerNumber}&returnUrl=${window.location.href}`}\n class=\"pn-marketweb-siteheader-login-profileselection-profileoption-link\"\n >\n <div class=\"pn-marketweb-siteheader-login-profileselection-profileoption-content\">\n <div class=\"pn-marketweb-siteheader-login-profileselection-profileoption-name\">{organization.name}</div>\n <div class=\"pn-marketweb-siteheader-login-profileselection-profileoption-description\">\n {organization.customerNumber ? organization.customerNumber : this.userEmail}\n </div>\n </div>\n <pn-icon icon={arrow_right} small=\"false\" color=\"blue700\"></pn-icon>\n </a>\n </div>\n );\n })}\n\n {this.logoutLink ? (\n <div class=\"pn-marketweb-siteheader-login-profileselection-logout\">\n {/* https://se-inte.postnord.com/UnifiedLogin/ExternalLoginCallback?returnUrl=https://se-inte.postnord.com/handla-online&profile=770e785b-702b-dc22-b1e9-4839eded4f83 */}\n <a\n href={this.logoutLink.href}\n rel=\"nofollower noopener\"\n id=\"pn-marketweb-header-logoutlink\"\n onClick={() => headerState.loginManager.clearUserData()}\n class=\"pn-marketweb-siteheader-login-profileselection-logout-link\"\n >\n {this.logoutLink.linkText}\n </a>\n </div>\n ) : null}\n </Host>\n );\n }\n}\n","","import { Component, Element, h, Host, Prop } from '@stencil/core';\n\n@Component({\n tag: 'pn-marketweb-siteheader-unified-login',\n styleUrl: 'pn-marketweb-siteheader-unified-login.scss',\n})\nexport class PnMarketwebSiteheaderUnifiedLogin {\n @Element() hostElement: HTMLElement;\n @Prop() loggedIn: boolean = false;\n @Prop() myPageLabel: string;\n @Prop() myPageUrl: string;\n @Prop() logInLabel: string;\n\n render() {\n return (\n <Host>\n {this.loggedIn ? (\n <pn-marketweb-siteheader-login-mypage-button label={this.myPageLabel} myPageUrl={this.myPageUrl} />\n ) : (\n <pn-marketweb-siteheader-login-button label={this.logInLabel} />\n )}\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"pn-marketweb-siteheader-login-button.pn-marketweb-siteheader-login-links.pn-marketweb-siteheader-login-mypage-button.pn-marketweb-siteheader-login-profileselection.pn-marketweb-siteheader-unified-login.entry.cjs.js","mappings":"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","names":["h","Host","headerState","arrow_right"],"sources":["src/components/layout-components/pn-marketweb-siteheader/unifiedLoginHelper.ts","src/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-login-button.scss?tag=pn-marketweb-siteheader-login-button","src/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-login-button.tsx","src/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-login-links.scss?tag=pn-marketweb-siteheader-login-links","src/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-login-links.tsx","src/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-login-mypage-button.scss?tag=pn-marketweb-siteheader-login-mypage-button","src/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-login-mypage-button.tsx","src/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-login-profileselection.scss?tag=pn-marketweb-siteheader-login-profileselection","src/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-login-profileselection.tsx","src/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-unified-login.scss?tag=pn-marketweb-siteheader-unified-login","src/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-unified-login.tsx"],"sourcesContent":["export const getLoginUrl = currentDomain => {\n /*\nURL RULES:\n----------\n\nStep 1\nIf a user is on on a domain with these patterns / direct urls:\n [market]-[environments].postnord.com\n market = ['se','dk', 'no', 'fi','com','de','tpl'];\n environments = ['integration', 'preproduction', 'production'];\nOr matches\n wwwurls = ['www.postnord.se','www.postnord.dk', 'www.postnord.no', 'www.postnord.fi', 'www.postnord.com', 'www.postnord.de', 'www.tpl.postnord.com']\nOr is localhost | local.posnord.*\n\nStep 2.\nIf the above is not matches, check if the domain is a portal or kopfrakt AT domain:\n portalAtDomains = ['devportal.postnord.com', 'atportal.postnord.com']\n kopfraktAtDomain = ['dev.kopfrakt.postnord.com']\n Then use the atportal endpoints to log in (this should have nothing to do with the market domains\n\nStep 3.\nIf non of the above matches, then use the production portal endpoint to log in\n\n*/\n const marketRegex =\n '(?:se|dk|no|fi|com|de|tpl|group)-(?:integration|preproduction|production|inte|prep|prod).(?:postnord.com)';\n const wwwRegex = '(?:www(?:.tpl|.group)?.postnord.(?:se|dk|no|fi|com|de))';\n const localRegex = '(?:local)(?:host|.postnord.)(?:se|dk|no|fi|com|de|)';\n const devAndAtRegex = '(?:dev|at)(?:[.-]?(?:portal|kopfrakt).postnord.com)';\n\n if (currentDomain.match(marketRegex) || currentDomain.match(wwwRegex) || currentDomain.match(localRegex)) {\n return '/login?returnUrl=';\n } else if (currentDomain.match(devAndAtRegex)) {\n return 'https://atportal.postnord.com/api/unified-login/backend/authorization?redirectionUrl=';\n } else {\n return 'https://portal.postnord.com/api/unified-login/backend/authorization?redirectionUrl=';\n }\n};\n","pn-marketweb-siteheader-login-button {\n}\n","import { Component, Element, h, Host, Prop } from '@stencil/core';\n\nimport { getLoginUrl } from './unifiedLoginHelper';\n\n@Component({\n tag: 'pn-marketweb-siteheader-login-button',\n styleUrl: 'pn-marketweb-siteheader-login-button.scss',\n})\nexport class PnMarketwebSiteheaderLoginButton {\n @Element() hostElement: HTMLElement;\n @Prop() label: string = 'Log in';\n\n loginUrl: string;\n\n componentWillLoad() {\n this.loginUrl = getLoginUrl(window.location.host);\n }\n\n nagivateToLoginUrl() {\n const navigationUrl = `${this.loginUrl}${window.location.href}`;\n return navigationUrl;\n }\n\n render() {\n return (\n <Host>\n <pn-button href={this.nagivateToLoginUrl()}>{this.label}</pn-button>\n </Host>\n );\n }\n}\n","@import '../../../globals/main.scss';\n\n@import './pn-marketweb-siteheader-common.scss';\n\npn-marketweb-siteheader-login-links {\n}\n","import { Component, Element, h, Host, Prop, Watch } from '@stencil/core';\n\nimport { state as headerState } from './pn-marketweb-siteheader-store';\nimport { LoginDialog } from './pn-marketweb-siteheader-types';\n\n@Component({\n tag: 'pn-marketweb-siteheader-login-links',\n styleUrl: 'pn-marketweb-siteheader-login-links.scss',\n})\nexport class PnMarketwebSiteheaderLoginLinks {\n @Element() hostElement: HTMLElement;\n\n // Login dialog\n @Prop({ mutable: true }) loginDialog: LoginDialog = null;\n @Prop() idNamespace: string = '';\n @Prop({ reflect: true }) loggedin: boolean = false;\n @Prop() username: string = '';\n @Prop() showUnifiedLogin: boolean = false;\n\n componentWillLoad() {\n this.init();\n }\n\n @Watch('loginDialog')\n async init() {\n this.adjustLoginLinks();\n }\n adjustLoginLinks() {\n if (!this.loginDialog) {\n return;\n }\n\n const adjustLink = (link, i) => {\n if (!link.isLogoutLink) {\n link.isLogoutLink = link.pageLink.indexOf('location.href') !== -1 && link.pageLink.indexOf('logout') !== -1;\n }\n if (link.isLogoutLink) {\n link.href = headerState.loginManager.getLogoutUrl(link.href);\n }\n link.href = link.href.replace('window.location.href', window.location.href);\n if (i === 0 && !link.href) {\n link.href = headerState.loginManager.getLoginUrl();\n link.linkType = 'primary';\n }\n if (link.primaryLinkApperance && !link.linkType) {\n link.linkType = 'primary';\n }\n };\n\n if (this.loginDialog?.loginMenuLinks) {\n this.loginDialog?.loginMenuLinks.forEach(adjustLink);\n }\n if (this.loginDialog?.loggedInLinks) {\n this.loginDialog?.loggedInLinks.forEach(adjustLink);\n }\n\n this.loginDialog.legacyLoginLinks = [\n {\n href: headerState.loginManager.getLoginUrl(this.loginDialog.loginUrl),\n linkText: this.loginDialog.loginLinkText,\n openInNewWindow: false,\n isLogoutLink: false,\n pageLink: null,\n linkType: 'primary',\n primaryLinkApperance: true,\n },\n {\n href: headerState.loginManager.getLoginUrl(this.loginDialog.registerUrl),\n linkText: this.loginDialog.createLoginLinkText,\n openInNewWindow: false,\n isLogoutLink: false,\n pageLink: null,\n primaryLinkApperance: false,\n },\n ];\n }\n\n render() {\n if (!this.loginDialog) {\n return;\n }\n\n let hostElementAttribute = {\n username: null,\n loggedin: false,\n };\n if (this.username) {\n hostElementAttribute.username = this.username;\n hostElementAttribute.loggedin = this.loggedin;\n }\n return (\n <Host {...hostElementAttribute}>\n {!this.loginDialog.overrideLoginMenu ? (\n <div data-loggedin={this.loggedin + ''}>\n {this.loggedin ? (\n <pn-marketweb-siteheader-login-linklist links={this.loginDialog.loggedInLinks} idNamespace={this.idNamespace}></pn-marketweb-siteheader-login-linklist>\n ) : (\n <div>\n {/* Get login links from API */}\n {this.loginDialog.loginMenuLinks?.length > 0 ? (\n <pn-marketweb-siteheader-login-linklist\n heading={this.loginDialog.loginTitle}\n links={this.loginDialog.loginMenuLinks}\n idNamespace={this.idNamespace}\n showUnifiedLogin={this.showUnifiedLogin}\n ></pn-marketweb-siteheader-login-linklist>\n ) : (\n <pn-marketweb-siteheader-login-linklist links={this.loginDialog.legacyLoginLinks} idNamespace={this.idNamespace}></pn-marketweb-siteheader-login-linklist>\n )}\n </div>\n )}\n </div>\n ) : null}\n\n {/* Override the default logic for some markets such as DK */}\n {this.loginDialog.overrideLoginMenu ? (\n <pn-marketweb-siteheader-login-linklist links={this.loginDialog.loginMenuLinks} idNamespace={this.idNamespace}></pn-marketweb-siteheader-login-linklist>\n ) : null}\n </Host>\n );\n }\n}\n","pn-marketweb-siteheader-login-mypage-button {\n}\n","import { Component, Element, h, Host, Prop } from '@stencil/core';\n\n@Component({\n tag: 'pn-marketweb-siteheader-login-mypage-button',\n styleUrl: 'pn-marketweb-siteheader-login-mypage-button.scss',\n})\nexport class PnMarketwebSiteheaderLoginMypageButton {\n @Element() hostElement: HTMLElement;\n @Prop() label: string = 'Mina sidor!';\n @Prop() myPageUrl: string;\n\n render() {\n return (\n <Host>\n <pn-button href={this.myPageUrl}>{this.label}</pn-button>\n </Host>\n );\n }\n}\n","@import '../../../globals/main.scss';\n\n@import './pn-marketweb-siteheader-common.scss';\n\npn-marketweb-siteheader-login-profileselection {\n}\n\n.pn-marketweb-siteheader-login-profileselection-heading {\n display: block;\n padding: 0.5rem 0 1rem;\n}\n\n.pn-marketweb-siteheader-login-profileselection-user,\n.pn-marketweb-siteheader-login-profileselection-currentprofile {\n margin-top: 1rem;\n margin-bottom: 1rem;\n}\n\n.pn-marketweb-siteheader-login-profileselection-user-name,\n.pn-marketweb-siteheader-login-profileselection-currentprofile-name {\n line-height: 1;\n}\n\n.pn-marketweb-siteheader-login-profileselection-user-description,\n.pn-marketweb-siteheader-login-profileselection-currentprofile-description {\n font-weight: 400;\n white-space: normal;\n word-break: break-all;\n color: $gray700;\n font-size: 0.75em;\n}\n\n.pn-marketweb-siteheader-login-profileselection-divider {\n height: 1rem;\n width: 100%;\n background: $blue400;\n position: relative;\n\n margin-left: -1em; // Negative positioning due to nav dropdown's padding\n margin-top: 1.6rem;\n margin-bottom: 1.6rem;\n border-radius: 0 0.6em 0.6em 0;\n padding: 0;\n &::after {\n content: '';\n width: 0.6em;\n height: 0.6em;\n border-radius: 50%;\n position: absolute;\n right: 0;\n top: 0;\n background: inherit;\n transform: translateX(calc(100% + 0.2em));\n }\n}\n\n.pn-marketweb-siteheader-login-profileselection-profileoption {\n}\n\n.pn-marketweb-siteheader-login-profileselection-profileoption-link {\n display: flex;\n background: $white;\n transition: background 0.15s ease-in-out;\n // width:100%;\n margin: 0 -1em; // Negative margin due to dropdown content padding\n padding: 0.6rem 1.6rem;\n text-decoration: none;\n color: $blue700;\n align-items: center;\n &:hover,\n &:focus,\n &:active {\n background: $gray50;\n }\n}\n\n.pn-marketweb-siteheader-login-profileselection-profileoption-content {\n flex-grow: 1;\n}\n.pn-marketweb-siteheader-login-profileselection-profileoption-name {\n font-weight: 700;\n}\n\n.pn-marketweb-siteheader-login-profileselection-profileoption-description {\n font-weight: 400;\n white-space: normal;\n word-break: break-all;\n color: $gray700;\n font-size: 0.75em;\n}\n\n.pn-marketweb-siteheader-login-profileselection-logout {\n padding: 1.6rem;\n text-align: center;\n width: 100%;\n}\n\n.pn-marketweb-siteheader-login-profileselection-logout-link {\n display: inline-block;\n font-weight: 500;\n color: $blue700;\n text-decoration: none;\n &:hover,\n &:focus,\n &:active {\n text-decoration: underline;\n }\n}\n","import { Component, Element, h, Host, Prop, State } from '@stencil/core';\n\nimport { IUserInfo } from '../../../globals/MarketWebLoginManager';\nimport { state as headerState } from './pn-marketweb-siteheader-store';\nimport { LoginDialog, LoginDialogLink, ProfileSelectorCustomerItem, ProfileSelectorOrganization, SiteHeaderI18N } from './pn-marketweb-siteheader-types';\nimport { arrow_right } from 'pn-design-assets/pn-assets/icons.js';\n\n@Component({\n tag: 'pn-marketweb-siteheader-login-profileselection',\n styleUrl: 'pn-marketweb-siteheader-login-profileselection.scss',\n})\nexport class PnMarketwebSiteheaderLoginProfileselection {\n @Element() hostElement: HTMLElement;\n\n // Login dialog\n @Prop({ mutable: true }) loginDialog: LoginDialog = null;\n @Prop() endpoint: string = '';\n @Prop() loggedin: boolean = false;\n @Prop() idNamespace: string = '';\n @Prop() heading: string = null;\n @Prop() i18n: SiteHeaderI18N = {\n searchlabel: '',\n searchplaceholder: '',\n searchbuttontext: '',\n menuHomeButton: '',\n menuGoBackButton: '',\n mainMenuButton: '',\n menuStartButton: '',\n profileSelectionFlyoutHeading: '',\n } as SiteHeaderI18N;\n\n @State() user: IUserInfo = null;\n\n @State() logoutLink: LoginDialogLink = null;\n @State() userName: string = null;\n @State() userEmail: string = '';\n\n @Prop({ mutable: true }) currentProfile: ProfileSelectorCustomerItem = null;\n @Prop({ mutable: true }) profileoptions: ProfileSelectorOrganization[] = [];\n\n componentWillLoad() {\n if (this.heading === null && this.i18n?.profileSelectionFlyoutHeading) {\n this.heading = this.i18n.profileSelectionFlyoutHeading;\n }\n this.init();\n }\n\n init() {\n this.updateUserInfo();\n this.adjustLoginLinks();\n this.fetchProfiles();\n }\n async fetchProfiles() {\n if (!this.loggedin || this.profileoptions.length > 0) {\n return;\n }\n let apiUrl = `${this.endpoint}${this.endpoint.lastIndexOf('/') > -1 && this.endpoint.lastIndexOf('/') === this.endpoint.length - 1 ? '' : '/'}api/user/parentorganizations`;\n const req = await fetch(apiUrl);\n const reqdata = await req.json();\n const fallbackData = {\n loggedin: true,\n organizations: [\n {\n name: 'Forsheda Livs AB',\n customerNumber: '5564513603',\n id: 'dbba867d-1dff-3dbb-b420-c57b4b828b73',\n selected: true,\n profiles: [\n {\n name: 'Forsheda Livs AB',\n customerNumber: '20685482',\n id: 'f757ba28-9a73-15a2-f128-4b394d970f3f',\n ssid: '',\n selected: false,\n customerGroup: 'Business',\n },\n {\n name: 'ICA MAXI KUNGSBACKA',\n customerNumber: '20831191',\n id: '5aea41df-32b0-3f7e-2946-78598360177d',\n ssid: '259686',\n selected: true,\n customerGroup: 'Agent',\n },\n ],\n },\n {\n name: 'Hem Livs i Kungsbacka AB',\n customerNumber: '5565271250',\n id: '97ca363c-40ef-cca9-7a3c-9e7f025567c2',\n selected: false,\n profiles: [\n {\n name: 'ICA KVANTUM KUNGSBACKA',\n customerNumber: '20831193',\n id: 'fbd61ffd-41c6-2206-b88e-cfef91e1dc39',\n ssid: '259691',\n selected: false,\n customerGroup: 'Agent',\n },\n ],\n },\n {\n name: 'ICA SUPERMARKET TORGET',\n customerNumber: '5568902679',\n id: '7cb76a94-e1a5-5f57-58fd-bc563851b28e',\n selected: false,\n profiles: [\n {\n name: 'ICA SUPERMARKET TORGET',\n customerNumber: '20831212',\n id: '3a2db017-b68f-6fa0-fe70-542c08cd97ce',\n ssid: '',\n selected: false,\n customerGroup: 'Agent',\n },\n ],\n },\n ],\n };\n const data = window.location.href.indexOf('localhost:6008') !== -1 ? fallbackData : reqdata;\n\n if (!data || !data.organizations || !data.organizations.length) {\n return;\n }\n\n (data.organizations as ProfileSelectorOrganization[]).forEach(org => {\n if (org.selected === true && org.profiles) {\n const selectedProfile = org.profiles.filter(x => x.selected === true);\n if (selectedProfile && selectedProfile[0] && selectedProfile[0].customerGroup.toLocaleLowerCase() === 'agent' && selectedProfile[0].ssid) {\n org.customerNumber = selectedProfile[0].ssid;\n }\n } else {\n if (org.customerNumber.length === 10 && org.customerNumber.substring(0, 2) === '55') {\n org.customerNumber = org.customerNumber.substring(0, 6) + '-' + org.customerNumber.substring(6);\n }\n this.profileoptions.push(org);\n }\n });\n\n let currentProfileObj = data.organizations.filter(x => x.selected === true)[0];\n const userProfileOption = {\n name: this.userName,\n customerNumber: '',\n id: '',\n selected: !currentProfileObj,\n profiles: [],\n };\n if (!currentProfileObj) {\n currentProfileObj = userProfileOption;\n }\n\n if (currentProfileObj && currentProfileObj.name) {\n this.currentProfile = currentProfileObj;\n }\n this.profileoptions.push(userProfileOption);\n }\n adjustLoginLinks() {\n const adjustLink = (link, i) => {\n if (!link.isLogoutLink) {\n link.isLogoutLink = link.pageLink.indexOf('location.href') !== -1 && link.pageLink.indexOf('logout') !== -1;\n }\n if (link.isLogoutLink) {\n link.href = headerState.loginManager.getLogoutUrl(link.href);\n }\n\n if (i === 0 && !link.href) {\n link.href = headerState.loginManager.getLoginUrl();\n link.linkType = 'primary';\n }\n if (link.primaryLinkApperance && !link.linkType) {\n link.linkType = 'primary';\n }\n };\n\n if (this.loginDialog?.loggedInLinks) {\n this.loginDialog?.loggedInLinks.forEach(adjustLink);\n }\n\n this.logoutLink = this.loginDialog?.loggedInLinks.filter(x => x.isLogoutLink)[0] ?? null;\n }\n updateUserInfo() {\n const userInfo: IUserInfo = headerState.loginManager.getUserInfo();\n this.user = userInfo;\n if (!userInfo) {\n return;\n }\n if (userInfo && userInfo.email) {\n this.userEmail = userInfo.email;\n }\n if (userInfo && userInfo.given_name) {\n this.userName = userInfo.given_name + (userInfo?.family_name ? ` ${userInfo?.family_name}` : '');\n }\n if (userInfo && userInfo.given_name) {\n this.userName = userInfo.given_name;\n return;\n }\n if (userInfo && userInfo.family_name) {\n this.userName = userInfo.family_name;\n return;\n }\n if (userInfo && userInfo.username) {\n this.userName = userInfo.username;\n return;\n }\n }\n\n filterLogoutLink(loggedInLinks: LoginDialogLink[]): LoginDialogLink[] {\n return loggedInLinks.filter((link: LoginDialogLink) => !link.isLogoutLink);\n }\n\n render() {\n if (!this.loginDialog) {\n return;\n }\n\n let hostElementAttribute = {};\n return (\n <Host {...hostElementAttribute}>\n {this.heading ? <strong class=\"pn-marketweb-siteheader-login-profileselection-heading\">{this.heading}</strong> : null}\n {this.currentProfile !== null && this.currentProfile.name ? (\n <div class=\"pn-marketweb-siteheader-login-profileselection-currentprofile\">\n <div class=\"pn-marketweb-siteheader-login-profileselection-currentprofile-name\">{this.currentProfile.name}</div>\n <div class=\"pn-marketweb-siteheader-login-profileselection-currentprofile-description\">\n {this.currentProfile.customerNumber ? this.currentProfile.customerNumber : this.userEmail}\n </div>\n </div>\n ) : null}\n\n <pn-marketweb-siteheader-login-linklist\n links={this.filterLogoutLink(this.loginDialog.loggedInLinks)}\n idNamespace={this.idNamespace}\n ></pn-marketweb-siteheader-login-linklist>\n\n <div class=\"pn-marketweb-siteheader-login-profileselection-divider\"></div>\n {this.profileoptions\n .filter(x => x.selected !== true)\n .map(organization => {\n let customerNumber = organization.profiles.length > 0 ? organization.profiles[0].customerNumber : organization.customerNumber;\n return (\n <div class=\"pn-marketweb-siteheader-login-profileselection-profileoption\">\n {/* /api/user/setprofile? profile=xxxxx */}\n <a\n href={`${this.endpoint}/api/user/setprofile?customernumber=${customerNumber}&returnUrl=${window.location.href}`}\n class=\"pn-marketweb-siteheader-login-profileselection-profileoption-link\"\n >\n <div class=\"pn-marketweb-siteheader-login-profileselection-profileoption-content\">\n <div class=\"pn-marketweb-siteheader-login-profileselection-profileoption-name\">{organization.name}</div>\n <div class=\"pn-marketweb-siteheader-login-profileselection-profileoption-description\">\n {organization.customerNumber ? organization.customerNumber : this.userEmail}\n </div>\n </div>\n <pn-icon icon={arrow_right} small=\"false\" color=\"blue700\"></pn-icon>\n </a>\n </div>\n );\n })}\n\n {this.logoutLink ? (\n <div class=\"pn-marketweb-siteheader-login-profileselection-logout\">\n {/* https://se-inte.postnord.com/UnifiedLogin/ExternalLoginCallback?returnUrl=https://se-inte.postnord.com/handla-online&profile=770e785b-702b-dc22-b1e9-4839eded4f83 */}\n <a\n href={this.logoutLink.href}\n rel=\"nofollower noopener\"\n id=\"pn-marketweb-header-logoutlink\"\n onClick={() => headerState.loginManager.clearUserData()}\n class=\"pn-marketweb-siteheader-login-profileselection-logout-link\"\n >\n {this.logoutLink.linkText}\n </a>\n </div>\n ) : null}\n </Host>\n );\n }\n}\n","","import { Component, Element, h, Host, Prop } from '@stencil/core';\n\n@Component({\n tag: 'pn-marketweb-siteheader-unified-login',\n styleUrl: 'pn-marketweb-siteheader-unified-login.scss',\n})\nexport class PnMarketwebSiteheaderUnifiedLogin {\n @Element() hostElement: HTMLElement;\n @Prop() loggedIn: boolean = false;\n @Prop() myPageLabel: string;\n @Prop() myPageUrl: string;\n @Prop() logInLabel: string;\n\n render() {\n return (\n <Host>\n {this.loggedIn ? (\n <pn-marketweb-siteheader-login-mypage-button label={this.myPageLabel} myPageUrl={this.myPageUrl} />\n ) : (\n <pn-marketweb-siteheader-login-button label={this.logInLabel} />\n )}\n </Host>\n );\n }\n}\n"],"version":3}
@@ -504,9 +504,9 @@ const PnMarketwebSiteheader = class {
504
504
  this.siteSelector?.siteSelections &&
505
505
  this.siteSelector.siteSelections.map(site => (index.h("pn-site-selector-item", { heading: site.linkText + ' ', description: site.linkDescription, url: this.adjustSiteSelectorUrl(site.href), newwindow: site.openInNewWindow })))))), index.h("div", { key: '9a6107482cfb552191b7b8fa9603dbb9e95d44f0', class: "siteheader-logocontainer" }, index.h("a", { key: 'a08e63d7221befec076f082f987e24453b92edc8', href: this.homePageLink, title: "Home", class: "siteheader-logolink" }, index.h("slot", { key: '07e5a80ce68bb1ad6e36520bf5087eb96ab0cacb', name: "logo" }, index.h("svg", { key: 'e0fbe015fb9f4e9ecb3b35060a91d627ceb6a1c0', class: "siteheader-logo", xmlns: "http://www.w3.org/2000/svg", width: "12.7rem", height: "2.4rem", viewBox: "0 0 141.73 26.65" }, index.h("path", { key: '4f57bd74d61f9d3092ea091eb988454f1b3554f2', d: "M108.84,13.35c0,6.34-5.17,9-10,9S89,19.76,89,13.63c0-6.28,5.08-9,10-9S108.84,7.25,108.84,13.35Zm-6.56.18a3.4,3.4,0,1,0-6.8,0,3.29,3.29,0,0,0,3.42,3.41A3.24,3.24,0,0,0,102.28,13.54Zm-83,0c0,4.83-3.32,8.82-8.49,8.82a6.54,6.54,0,0,1-4.65-1.57v5.86H0V5.16H6.17V6.8a6.43,6.43,0,0,1,5.11-2.18C16.41,4.62,19.31,8.58,19.31,13.54Zm-6.53,0A3.27,3.27,0,0,0,9.4,10,3.28,3.28,0,0,0,6,13.54,3.29,3.29,0,0,0,9.4,16.95,3.24,3.24,0,0,0,12.78,13.54Zm103.69,0.27c0-2.54,1.54-3.32,3.6-3.32a6.56,6.56,0,0,1,2.08.3L122.3,5.1a3.92,3.92,0,0,0-1.45-.18c-3.45,0-4.38,2.18-4.38,2.18V5.16H110.3V21.84h6.17v-8ZM141.73,0V21.84h-6.16V20.21a6.43,6.43,0,0,1-5.11,2.18c-5.14,0-8-4-8-8.91s3.32-8.82,8.49-8.82a6.54,6.54,0,0,1,4.65,1.57v-5Zm-6,13.48a3.28,3.28,0,0,0-3.41-3.41A3.24,3.24,0,0,0,129,13.47,3.4,3.4,0,1,0,135.75,13.47ZM81.35,4.62c-3.6,0-4.9,2.18-4.9,2.18V5.16H70.29V21.84h6.16V13.29c0-2.11.79-3.08,2.69-3.08s2.18,1.57,2.18,3.57v8.07h6.22V11.6C87.55,7,85.34,4.62,81.35,4.62ZM64.07,1.42H57.9V21.84h6.16V10.36H67l2.81-5.2H64.07V1.42ZM50.26,11.21c-2-.3-2.87-0.3-2.87-1.09s0.81-.94,2.42-0.94a16.15,16.15,0,0,1,5.11.91L56,5.41a24.56,24.56,0,0,0-6.13-.75c-5.89,0-9,2.27-9,5.89,0,2.81,1.66,4.47,6.53,5.11,2.06,0.27,2.81.39,2.81,1.15s-0.82,1-2.24,1a16.67,16.67,0,0,1-6-1.3L40.77,21.3a22.14,22.14,0,0,0,6.68,1c6.35,0,9.28-2.24,9.28-5.89C56.72,13.54,55.15,12,50.26,11.21ZM40.19,13.35c0,6.34-5.17,9-10,9s-9.82-2.6-9.82-8.73c0-6.28,5.08-9,10-9S40.19,7.25,40.19,13.35Zm-6.56.18a3.4,3.4,0,1,0-6.8,0,3.28,3.28,0,0,0,3.41,3.41A3.24,3.24,0,0,0,33.63,13.54Z", fill: "#00A0D6", transform: "translate(0 0)" }))))), index.h("div", { key: 'f7680723097b7c5d11458e20af552b6937d04f2c', class: "siteheader-topright" }, index.h("slot", { key: '05dd42259b67d54c4c79a8657f43efde941f0232', name: "toprightstart" }), this.gotData && this.loginDialog && !this.hideLogin && (index.h("pn-marketweb-siteheader-login", { key: 'da52280779999fe58f324c0c3fe597b613b4ca3c', token: this.userToken, siteUrl: this.siteDefinition.url, fullname: this.userFullname, loggedin: this.userLoggedin, loginDialog: this.loginDialog, endpoint: this.endpoint, i18n: this.i18n, showProfileSelection: this.showProfileSelection, showUnifiedLogin: this.showUnifiedLogin, "check-user-logged-in-state-interval": this.checkUserLoggedInStateInterval })), this.gotData && this.languageOptions && this.languageOptions.length && !this.hideLanguageSelector && (index.h("pn-language-selector", { key: '1d5c8f5865b0a4030e084d596b1a908ca32bca92', value: this.language }, this.languageOptions.map(language => (index.h("pn-language-selector-option", { name: language.nativeName, code: language.twoLetterISOLanguageName, selected: language.isCurrent, url: this.getLanguageVersionUrl(language) }))))), index.h("slot", { key: 'e1dc1191e2a7d3ceb93ef963495b80a59b2918b8', name: "toprightend" }), index.h("div", { key: '19dcfeddb2fbbba0f8435ff9da6e7f0f76fa7882', class: "siteheader-menu-top-search" }, index.h("pn-marketweb-siteheader-search", { key: 'bc97588c0cead4ccdc3de44b6af5a628f34d2cb9', language: this.language, siteid: this.siteid, search: this.search, "hide-search": this.hideSearch, i18n: this.i18n, icononly: true })))), index.h("slot", { key: 'cc9e947f59e914cbb6a775ea2526f16dafd7d0cb', name: "siteheader-menu-top-button" }), index.h("div", { key: '73ca03f0eddb71eda4cf3e3829ca81c8271c1052', class: "siteheader-row" }, index.h("div", { key: 'adf8b8de1477555850ceb215e9edb6ce914cb514', class: "siteheader-menu" }, this.gotData && this.menuItems && (index.h("pn-mainnav", { key: '46f27598937707c8941f6381412c252e2928ba10', market: this.market, language: this.language, onMenuOpenChange: e => {
506
506
  document.body.setAttribute('data-siteheader-menuopen', e.detail + '');
507
- } }, index.h("pn-mainnav-level", { key: '7860ed1a4de4e4c8474122226cba5042ea646f45' }, index.h("pn-mainnav-list", { key: 'c20eb4f34ffba2e068ca7e804f6502332e4b06a9' }, this.menuItems.map(item => (index.h("pn-mainnav-link", { name: item.name, href: item.href, itemid: item.id, target: item.linkTarget ?? '_self', linkid: item.trackingId }, ((item.promotedMenuItems && item.promotedMenuItems.length > 0) || (item.children && item.children.length > 0)) && (index.h("pn-mainnav-level", { label: item.name }, item.children.length > 0 && (index.h("pn-mainnav-list", { heading: item.navigationHeading ?? '' }, item.children.map(childitem => (index.h("pn-mainnav-link", { name: childitem.name, href: childitem.href, target: childitem.linkTarget ?? '_self', linkid: childitem.trackingId }))))), item.promotedMenuItems && item.promotedMenuItems.length > 0 && (index.h("pn-mainnav-list", { heading: item.promotedMenuItemsHeader }, item.promotedMenuItems.map(childitem => (index.h("pn-mainnav-link", { href: childitem.href, name: childitem.linkText, target: childitem.openInNewWindow ? '_blank' : '_self', linkid: this.promotedItemId(childitem) + item.id }))))))))))), index.h("div", { key: 'd44eaeece3ef78613fdb5d98e3d070715814656c', slot: "footer", class: "siteheader-menu-footer" }, index.h("slot", { key: 'e450d841e72450dd35f45e069e23d6f24fde3163', name: "menu-footer-cta" }), this.gotData && this.loginDialog && !this.hideLogin && (index.h("pn-marketweb-siteheader-login", { key: '126fcf56055f9bb0ef374792f10f0019eedae07d', emitEvents: false, siteUrl: this.siteDefinition.url, loginDialog: this.loginDialog, endpoint: this.endpoint, fullname: this.userFullname, loggedin: this.userLoggedin, i18n: this.i18n, showProfileSelection: this.showProfileSelection, showUnifiedLogin: this.showUnifiedLogin, environment: this.environment })), this.gotData && this.languageOptions && this.languageOptions.length && !this.hideLanguageSelector && (index.h("pn-language-selector", { key: 'd5572dca323b9a20e1b88a4c77aa30581e187ba7', value: this.language }, this.languageOptions.map(language => (index.h("pn-language-selector-option", { name: language.nativeName, code: language.twoLetterISOLanguageName, selected: language.isCurrent, url: this.getLanguageVersionUrl(language) }))))), !this.hideSiteSelector && (index.h("pn-site-selector", { key: 'db7fc1ec4be627a00badffced453bc166b6bb46e', language: this.language }, this.gotData && this.siteSelector?.currentSiteTitle && (index.h("pn-site-selector-item", { key: 'd05a88ec4266953ae72ee07210baedd30765b169', heading: this.siteSelector.currentSiteTitle, description: this.siteSelector.currentSiteDescription })), this.gotData &&
507
+ } }, index.h("pn-mainnav-level", { key: '7860ed1a4de4e4c8474122226cba5042ea646f45' }, index.h("pn-mainnav-list", { key: 'c20eb4f34ffba2e068ca7e804f6502332e4b06a9' }, this.menuItems.map(item => (index.h("pn-mainnav-link", { name: item.name, href: item.href, itemid: item.id, target: item.linkTarget ?? '_self', linkid: item.trackingId }, ((item.promotedMenuItems && item.promotedMenuItems.length > 0) || (item.children && item.children.length > 0)) && (index.h("pn-mainnav-level", { label: item.name }, item.children.length > 0 && (index.h("pn-mainnav-list", { heading: item.navigationHeading ?? '' }, item.children.map(childitem => (index.h("pn-mainnav-link", { name: childitem.name, href: childitem.href, target: childitem.linkTarget ?? '_self', linkid: childitem.trackingId }))))), item.promotedMenuItems && item.promotedMenuItems.length > 0 && (index.h("pn-mainnav-list", { heading: item.promotedMenuItemsHeader }, item.promotedMenuItems.map(childitem => (index.h("pn-mainnav-link", { href: childitem.href, name: childitem.linkText, target: childitem.openInNewWindow ? '_blank' : '_self', linkid: this.promotedItemId(childitem) + item.id }))))))))))), index.h("div", { key: 'd44eaeece3ef78613fdb5d98e3d070715814656c', slot: "footer", class: "siteheader-menu-footer" }, index.h("slot", { key: 'e450d841e72450dd35f45e069e23d6f24fde3163', name: "menu-footer-cta" }), this.gotData && this.loginDialog && !this.hideLogin && (index.h("pn-marketweb-siteheader-login", { key: '57c9eaf221b7d2ffe3dcdaae46758225fb4cd3b9', token: this.userToken, siteUrl: this.siteDefinition.url, loginDialog: this.loginDialog, endpoint: this.endpoint, fullname: this.userFullname, loggedin: this.userLoggedin, i18n: this.i18n, showProfileSelection: this.showProfileSelection, showUnifiedLogin: this.showUnifiedLogin, environment: this.environment, "check-user-logged-in-state-interval": this.checkUserLoggedInStateInterval })), this.gotData && this.languageOptions && this.languageOptions.length && !this.hideLanguageSelector && (index.h("pn-language-selector", { key: 'd5080290a7676b3285ccc4b98ba4bca95762fa0b', value: this.language }, this.languageOptions.map(language => (index.h("pn-language-selector-option", { name: language.nativeName, code: language.twoLetterISOLanguageName, selected: language.isCurrent, url: this.getLanguageVersionUrl(language) }))))), !this.hideSiteSelector && (index.h("pn-site-selector", { key: '0331cd4bb7713d08f25bc20793b0ed160815a577', language: this.language }, this.gotData && this.siteSelector?.currentSiteTitle && (index.h("pn-site-selector-item", { key: 'ead8336dcf4054ead3e0b9ad0a28f5e7c4ccef5c', heading: this.siteSelector.currentSiteTitle, description: this.siteSelector.currentSiteDescription })), this.gotData &&
508
508
  this.siteSelector?.siteSelections &&
509
- this.siteSelector.siteSelections.map(site => (index.h("pn-site-selector-item", { heading: site.linkText, description: site.linkDescription, url: site.pageLink, newwindow: site.openInNewWindow })))))), index.h("div", { key: '41c8cedb80576f324fb81eb070ce08d0c3e2ee66', slot: "top", class: "siteheader-menu-top" }, index.h("pn-marketweb-siteheader-search", { key: '70b4a346518c2c28b48a3d6fd99f35d477eb3531', language: this.language, siteid: this.siteid, search: this.search, "hide-search": this.hideSearch, i18n: this.i18n })))))), index.h("pn-marketweb-siteheader-search", { key: 'ddb4c5c8b93c9e21807d405941bee8dde3d88840', language: this.language, siteid: this.siteid, primary: true, search: this.search, "hide-search": this.hideSearch, "show-only-link": this.minimizeSearch, i18n: this.i18n }), index.h("slot", { key: '9fff237c1aa22a75e64241aaa5580c7ea4afe69f', name: "header-bottom-button" })))));
509
+ this.siteSelector.siteSelections.map(site => (index.h("pn-site-selector-item", { heading: site.linkText, description: site.linkDescription, url: site.pageLink, newwindow: site.openInNewWindow })))))), index.h("div", { key: '2ac8811966233f4f1fad73c2dce6b0335e74c191', slot: "top", class: "siteheader-menu-top" }, index.h("pn-marketweb-siteheader-search", { key: 'e50599914cebd9ec337671402848d44b19f21c12', language: this.language, siteid: this.siteid, search: this.search, "hide-search": this.hideSearch, i18n: this.i18n })))))), index.h("pn-marketweb-siteheader-search", { key: 'f1eee9dd70ebbf3260ac95b5b23a187b7ceaa066', language: this.language, siteid: this.siteid, primary: true, search: this.search, "hide-search": this.hideSearch, "show-only-link": this.minimizeSearch, i18n: this.i18n }), index.h("slot", { key: '579705f06d8eaf10f9a2fb79070f34c7d551886c', name: "header-bottom-button" })))));
510
510
  }
511
511
  static get watchers() { return {
512
512
  "language": ["onLanguageChange"],