@kartverket/geonorge-web-components 3.0.0 → 3.0.2

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/UserAccount.js CHANGED
@@ -1,2 +1,2 @@
1
- !function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.geonorge=e():(t.geonorge=t.geonorge||{},t.geonorge.UserAccount=e())}(self,(()=>(()=>{var t={164:t=>{"use strict";t.exports=function(t){var e=[];return e.toString=function(){return this.map((function(e){var n="",o=void 0!==e[5];return e[4]&&(n+="@supports (".concat(e[4],") {")),e[2]&&(n+="@media ".concat(e[2]," {")),o&&(n+="@layer".concat(e[5].length>0?" ".concat(e[5]):""," {")),n+=t(e),o&&(n+="}"),e[2]&&(n+="}"),e[4]&&(n+="}"),n})).join("")},e.i=function(t,n,o,i,r){"string"==typeof t&&(t=[[null,t,void 0]]);var s={};if(o)for(var a=0;a<this.length;a++){var c=this[a][0];null!=c&&(s[c]=!0)}for(var l=0;l<t.length;l++){var u=[].concat(t[l]);o&&s[u[0]]||(void 0!==r&&(void 0===u[5]||(u[1]="@layer".concat(u[5].length>0?" ".concat(u[5]):""," {").concat(u[1],"}")),u[5]=r),n&&(u[2]?(u[1]="@media ".concat(u[2]," {").concat(u[1],"}"),u[2]=n):u[2]=n),i&&(u[4]?(u[1]="@supports (".concat(u[4],") {").concat(u[1],"}"),u[4]=i):u[4]="".concat(i)),e.push(u))}},e}},169:(t,e,n)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Dispatch=e.addEventListeners=e.Listen=void 0;const o=n(2466);e.Listen=(t,e)=>(n,o)=>{n.constructor.listeners||(n.constructor.listeners=[]),n.constructor.listeners.push({selector:e,eventName:t,handler:n[o]})},e.addEventListeners=t=>{if(t.constructor.listeners){const e=t.shadowRoot||t;for(const n of t.constructor.listeners){const o=n.selector?e.querySelector(n.selector)?e.querySelector(n.selector):null:t;o&&o.addEventListener(n.eventName,(e=>{n.handler.call(t,e)}))}}},e.Dispatch=t=>(e,n)=>{Object.defineProperty(e,n,{get:function(){const e=this;return{emit(i){const r=t||o.toDotCase(n);e.dispatchEvent(new CustomEvent(r,i))}}}})}},1063:(t,e,n)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Watch=void 0;const o=n(2466);e.Watch=t=>(e,n)=>{e.constructor.watchAttributes||(e.constructor.watchAttributes={}),e.constructor.watchAttributes[o.toKebabCase(t)]=n,e.constructor.propsInit||(e.constructor.propsInit={}),e.constructor.propsInit[t]=null}},2466:(t,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.tryParseInt=e.toDotCase=e.toCamelCase=e.toKebabCase=void 0,e.toKebabCase=t=>t.replace(/([a-z])([A-Z])/g,"$1-$2").replace(/[\s_]+/g,"-").toLowerCase(),e.toCamelCase=t=>t.toLowerCase().replace(/(\-\w)/g,(t=>t[1].toUpperCase())),e.toDotCase=t=>t.replace(/(?!^)([A-Z])/g," $1").replace(/[_\s]+(?=[a-zA-Z])/g,".").toLowerCase(),e.tryParseInt=t=>parseInt(t)==t&&NaN!==parseFloat(t)?parseInt(t):t},2573:(t,e,n)=>{"use strict";n.r(e),n.d(e,{default:()=>a});var o=n(5052),i=n.n(o),r=n(164),s=n.n(r)()(i());s.push([t.id,'.user-account-content{display:flex;flex-direction:row;padding:6px 8px 6px 8px;width:auto;color:#403f3f;gap:6px;font-family:"Open Sans",sans-serif;font-size:14px;justify-content:space-between;align-items:center;margin:0 6px 0 12px;background:rgba(0,0,0,0);border:none}.user-account-content:hover{color:#1073bc;cursor:pointer}.user-account-content span:last-child{display:none;align-items:center;flex-direction:row;padding:2px 1px;vertical-align:middle;font-weight:500}@media(min-width: 992px){.user-account-content span:last-child{display:inline-block}}.user-account-content span:first-child svg{height:24px;width:24px;vertical-align:middle}.menu-wrapper{font-size:14px;font-family:"Open Sans",sans-serif;position:relative;-moz-transition:all .3s ease-in-out;-o-transition:all .3s ease-in-out;-webkit-transition:all .3s ease-in-out;transition:all .3s ease-in-out}.menu-wrapper>div{max-height:0;overflow:hidden;-moz-transition:all .3s ease-in-out;-o-transition:all .3s ease-in-out;-webkit-transition:all .3s ease-in-out;transition:all .3s ease-in-out;position:absolute;display:flex;flex-direction:column;background-color:#fff;box-shadow:0px 1px 3px 0px rgba(0,0,0,.1019607843);width:375px;z-index:100;top:10px;right:-85px}.menu-wrapper>div>div:first-child>span{display:block}.menu-wrapper>div>div:first-child>span:last-child{font-weight:bolder}.menu-wrapper>div ul{list-style-type:none}.menu-wrapper>div ul li{margin:12px 0}.menu-wrapper>div ul li a,.menu-wrapper>div ul li a:link,.menu-wrapper>div ul li a:visited{color:#1a589f}.menu-wrapper>div>*:nth-child(odd){background-color:#f9f9f9;padding:32px;display:flex;flex-direction:column;gap:5px}.menu-wrapper>div>*:nth-child(even){background-color:#fff;margin-top:10px;display:flex;flex-direction:column;gap:5px;padding:0 32px}.menu-wrapper>div>*:last-child{padding:32px}.menu-wrapper>div a,.menu-wrapper>div a:link,.menu-wrapper>div a:visited{color:#000;display:flex}.menu-wrapper>div .menu-user-icon svg{padding-left:4px;width:24px;height:24px;color:#000}.menu-wrapper.open>div{max-height:1000px}.user-account-container{text-align:right;background-color:#d2cecb;max-height:0;overflow:hidden}.user-account-container.open{max-height:56px}.user-account-container a,.user-account-container button{display:inline-block;padding:.25em 1em .25em 1.1em;margin:15px 0;text-decoration:none;color:rgba(0,0,0,0);cursor:pointer;border:none;font-weight:normal;background:rgba(0,0,0,0)}.user-account-container a:not(:first-child),.user-account-container button:not(:first-child){border:none}',"",{version:3,sources:["webpack://./stories/main-navigation/user-account/user-account.scss","webpack://./style/variables/_typography.scss","webpack://./style/mixins/_breakpoints.scss","webpack://./style/mixins/_transition.scss"],names:[],mappings:"AAEA,sBACE,YAAA,CACA,kBAAA,CACA,uBAAA,CACA,UAAA,CACA,aAAA,CACA,OAAA,CACA,kCCTa,CDUb,cAAA,CACA,6BAAA,CACA,kBAAA,CACA,mBAAA,CACA,wBAAA,CAMA,WAAA,CALA,4BACE,aAAA,CACA,cAAA,CAIC,sCACG,YAAA,CACA,kBAAA,CACA,kBAAA,CACA,eAAA,CACA,qBAAA,CACA,eAAA,CErBA,yBFeH,sCAQO,oBAAA,CAAA,CAIA,2CACI,WAAA,CACA,UAAA,CACA,qBAAA,CAOhB,cACI,cAAA,CACA,kCC7CW,CD8CX,iBAAA,CG7CA,mCH8CA,CG7CA,iCH6CA,CG5CA,sCH4CA,CG3CA,8BH2CA,CAGA,kBACI,YAAA,CACA,eAAA,CGnDJ,mCHoDI,CGnDJ,iCHmDI,CGlDJ,sCHkDI,CGjDJ,8BHiDI,CACA,iBAAA,CACA,YAAA,CACA,qBAAA,CACA,qBAAA,CACA,kDAAA,CACA,WAAA,CACA,WAAA,CACA,QAAA,CACA,WAAA,CACA,uCACI,aAAA,CACA,kDACC,kBAAA,CAGL,qBACI,oBAAA,CACA,wBACI,aAAA,CACA,2FACI,aAAA,CAKZ,mCACI,wBAAA,CACA,YAAA,CACA,YAAA,CAEA,qBAAA,CACA,OAAA,CAEJ,oCACI,qBAAA,CACA,eAAA,CACA,YAAA,CAEA,qBAAA,CACA,OAAA,CACA,cAAA,CAEJ,+BACI,YAAA,CAEJ,yEACI,UAAA,CACA,YAAA,CAGA,sCACI,gBAAA,CACA,UAAA,CACA,WAAA,CACA,UAAA,CAKR,uBACI,iBAAA,CAKZ,wBACI,gBAAA,CACA,wBAAA,CACA,YAAA,CACA,eAAA,CACA,6BACI,eAAA,CAEJ,yDAEI,oBAAA,CACA,6BAAA,CACA,aAAA,CACA,oBAAA,CACA,mBAAA,CACA,cAAA,CACA,WAAA,CAEA,kBAAA,CAEA,wBAAA,CAEA,6FACI,WAAA",sourcesContent:['@import "../../../style/all";\n\n.user-account-content {\n display: flex;\n flex-direction: row;\n padding: 6px 8px 6px 8px;\n width: auto;\n color: #403F3F;\n gap: 6px;\n font-family: $default-font;\n font-size: 14px;\n justify-content: space-between;\n align-items: center;\n margin: 0 6px 0 12px;\n background: transparent;\n &:hover {\n color: #1073BC;\n cursor: pointer;\n}\n \n border: none; \n span:last-child {\n display: none; \n align-items: center;\n flex-direction: row;\n padding: 2px 1px;\n vertical-align: middle;\n font-weight: 500;\n @include breakpoint(laptop) {\n display: inline-block;\n } \n }\n span:first-child { \n svg {\n height: 24px;\n width: 24px; \n vertical-align: middle; \n \n }\n \n }\n \n}\n.menu-wrapper {\n font-size: 14px;\n font-family: $default-font;\n position: relative; \n @include transition(all .3s ease-in-out);\n \n \n > div {\n max-height: 0;\n overflow: hidden;\n @include transition(all 0.3s ease-in-out);\n position: absolute;\n display: flex;\n flex-direction: column;\n background-color: white; \n box-shadow: 0px 1px 3px 0px #0000001A;\n width: 375px;\n z-index: 100;\n top: 10px;\n right: -85px; \n > div:first-child > span {\n display: block;\n &:last-child {\n font-weight: bolder;\n }\n } \n ul {\n list-style-type: none;\n li {\n margin: 12px 0;\n a, a:link, a:visited {\n color: #1A589F;\n }\n }\n }\n \n > *:nth-child(odd) {\n background-color: #F9F9F9;\n padding: 32px; \n display: flex\n ;\n flex-direction: column;\n gap: 5px;\n }\n > *:nth-child(even) {\n background-color: white;\n margin-top: 10px;\n display: flex\n ;\n flex-direction: column;\n gap: 5px;\n padding: 0 32px;\n }\n > *:last-child {\n padding: 32px; \n }\n a, a:link, a:visited {\n color: #000000;\n display: flex;\n }\n .menu-user-icon {\n svg {\n padding-left: 4px;\n width: 24px;\n height: 24px;\n color: #000000;\n }\n }\n }\n &.open { \n > div {\n max-height: 1000px;\n }\n }\n \n}\n.user-account-container { \n text-align: right;\n background-color: #d2cecb;\n max-height: 0;\n overflow: hidden;\n &.open {\n max-height: 56px;\n }\n a,\n button {\n display: inline-block;\n padding: 0.25em 1em 0.25em 1.1em;\n margin: 15px 0;\n text-decoration: none;\n color: transparent;\n cursor: pointer;\n border: none;\n \n font-weight: normal;\n \n background: transparent; \n \n &:not(:first-child) {\n border: none;\n }\n } \n}','$default-font: "Open Sans", sans-serif;\n$header-font: "Raleway", sans-serif;\n$default-font-size: 15px;\n',"@mixin breakpoint($point) {\n @if $point == desktop {\n @media (min-width: $screen-desktop) {\n @content;\n }\n } @else if $point == laptop {\n @media (min-width: $screen-laptop) {\n @content;\n }\n } @else if $point == tablet {\n @media (min-width: $screen-tablet) {\n @content;\n }\n } @else if $point == phablet {\n @media (min-width: $screen-phablet) {\n @content;\n }\n }\n}\n","\ufeff@mixin transition($transition...) {\n -moz-transition: $transition;\n -o-transition: $transition;\n -webkit-transition: $transition;\n transition: $transition;\n}\n\n@mixin transition-property($property...) {\n -moz-transition-property: $property;\n -o-transition-property: $property;\n -webkit-transition-property: $property;\n transition-property: $property;\n}\n\n@mixin transition-duration($duration...) {\n -moz-transition-property: $duration;\n -o-transition-property: $duration;\n -webkit-transition-property: $duration;\n transition-property: $duration;\n}\n\n@mixin transition-timing-function($timing...) {\n -moz-transition-timing-function: $timing;\n -o-transition-timing-function: $timing;\n -webkit-transition-timing-function: $timing;\n transition-timing-function: $timing;\n}\n\n@mixin transition-delay($delay...) {\n -moz-transition-delay: $delay;\n -o-transition-delay: $delay;\n -webkit-transition-delay: $delay;\n transition-delay: $delay;\n}\n"],sourceRoot:""}]);const a=s},2781:(t,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.renderDropdownResultLink=e.convertTextToUrlSlug=e.getGeonorgeNedlastingUrl=e.getGeonorgeUrl=e.getMinsideUrl=e.getKartkatalogUrl=void 0,e.getKartkatalogUrl=t=>`https://kartkatalog.${"dev"===t||"test"===t?t+".":""}geonorge.no`,e.getMinsideUrl=t=>`https://minside.${"dev"===t||"test"===t?t+".":""}geonorge.no`,e.getGeonorgeUrl=(t,e)=>`https://www.${"dev"===e||"test"===e?"test.":""}geonorge.no/${"en"===t?"en/":""}`,e.getGeonorgeNedlastingUrl=t=>`https://nedlasting.${"dev"===t||"test"===t?"test.":""}geonorge.no`;const n=(t,e,n)=>(t=(t=(t=t.replace(new RegExp(`([^s])([${e}])([^s])`,"ig"),`$1 ${n} $3`)).replace(new RegExp(`([^s])([${e}])`,"ig"),`$1 ${n}`)).replace(new RegExp(`([${e}])([^s])`,"ig"),`${n} $2`)).replace(new RegExp(`[${e}]`,"ig"),n);e.convertTextToUrlSlug=(t="")=>(t=t.toLowerCase(),t=n(t,"&","and"),(t=(t=(t=(t=(t=(t=(t=(t=(t=n(t,"+","plus")).replace("æ","ae")).replace("ä","ae")).replace("ø","oe")).replace("ö","oe")).replace("å","aa")).replace(/( - )/g,"-")).replace(/[\s]+/g,"-")).replace(/[^a-z0-9-]+/gi,"")).replace(/^[^A-Z0-9]*|[^a-z0-9]*$/gi,""));const o=(t,e)=>{if(!e)return!1;e({event:"updateSearchString",category:"metadataSearch",activity:"dropDownResultsClick",searchString:t})};e.renderDropdownResultLink=(t,n,i,r,s)=>"articles"===n?`<a onClick="${o(i,s)}" href="${t.ShowDetailsUrl?t.ShowDetailsUrl:"#"}">${t.Title}</a>`:`<a onClick="${o(i,s)}" href="${(0,e.getKartkatalogUrl)(r)}/metadata/${(0,e.convertTextToUrlSlug)(t.Title)}/${t.Uuid}?search=${i}">${t.Title}</a>`},3128:function(t,e,n){"use strict";var o=this&&this.__createBinding||(Object.create?function(t,e,n,o){void 0===o&&(o=n),Object.defineProperty(t,o,{enumerable:!0,get:function(){return e[n]}})}:function(t,e,n,o){void 0===o&&(o=n),t[o]=e[n]}),i=this&&this.__exportStar||function(t,e){for(var n in t)"default"===n||Object.prototype.hasOwnProperty.call(e,n)||o(e,t,n)};Object.defineProperty(e,"__esModule",{value:!0}),i(n(8631),e),i(n(3704),e),i(n(3365),e),i(n(169),e),i(n(6999),e),i(n(3982),e),i(n(8861),e),i(n(1063),e)},3365:(t,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.getShadowRootElement=e.getElement=void 0,e.getElement=t=>document.querySelector(t),e.getShadowRootElement=(t,e)=>t.shadowRoot.querySelector(e)},3704:(t,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.CustomElement=void 0;class n extends HTMLElement{constructor(){super()}connect(t){this.isConnected||document.querySelector(t).appendChild(this)}}e.CustomElement=n},3982:(t,e,n)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Toggle=void 0;const o=n(2466);e.Toggle=()=>(t,e)=>{t.constructor.propsInit||(t.constructor.propsInit={}),t.constructor.propsInit[e]=null,Object.defineProperty(t,e,{get:function(){return(t=>{if(this.hasAttribute(t)){const e=this.getAttribute(t);return!!/^(true|false|^$)$/.test(e)&&("true"==e||""==e)}return!1})(e)},set:function(t){const n=t;if(null!=t)switch(typeof t){case"boolean":break;case"string":/^(true|false|^$)$/.test(t)?t="true"==n||""==n:(console.warn(`TypeError: Cannot set boolean toggle property '${e}' to '${t}'`),t=!1);break;default:throw`TypeError: Cannot set boolean toggle property '${e}' to '${t}'`}this.__connected?(this.props[e]=t||!1,""!==n&&null!==n?this.setAttribute(e,t):t?this.setAttribute(e,""):this.removeAttribute(e)):this.hasAttribute(o.toKebabCase(e))||(this.constructor.propsInit[e]=t)}})}},4142:t=>{t.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 -960 960 960"><path fill="currentColor" d="M480-480q-66 0-113-47t-47-113q0-66 47-113t113-47q66 0 113 47t47 113q0 66-47 113t-113 47ZM160-160v-112q0-34 17.5-62.5T224-378q62-31 126-46.5T480-440q66 0 130 15.5T736-378q29 15 46.5 43.5T800-272v112H160Zm80-80h480v-32q0-11-5.5-20T700-306q-54-27-109-40.5T480-360q-56 0-111 13.5T260-306q-9 5-14.5 14t-5.5 20v32Zm240-320q33 0 56.5-23.5T560-640q0-33-23.5-56.5T480-720q-33 0-56.5 23.5T400-640q0 33 23.5 56.5T480-560Zm0-80Zm0 400Z"></path></svg>'},5052:t=>{"use strict";t.exports=function(t){var e=t[1],n=t[3];if(!n)return e;if("function"==typeof btoa){var o=btoa(unescape(encodeURIComponent(JSON.stringify(n)))),i="sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(o),r="/*# ".concat(i," */");return[e].concat([r]).join("\n")}return[e].join("\n")}},6388:t=>{t.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 -960 960 960"><path fill="currentColor" d="M480-120v-80h280v-560H480v-80h280q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H480Zm-80-160-55-58 102-102H120v-80h327L345-622l55-58 200 200-200 200Z"></path></svg>'},6999:(t,e,n)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.initializeProps=e.Prop=void 0;const o=n(2466);e.Prop=()=>(t,e)=>{const n=o.toKebabCase(e);t.constructor.propsInit||(t.constructor.propsInit={}),t.constructor.propsInit[e]=null,Object.defineProperty(t,e,{get:function(){return this.props[e]?this.props[e]:this.getAttribute(n)},set:function(t){if(this.__connected){const i=this.props[e];this.props[e]=o.tryParseInt(t),"object"!=typeof t?this.setAttribute(n,t):this.onAttributeChange(n,i,t,!1)}else this.hasAttribute(o.toKebabCase(e))||(this.constructor.propsInit[e]=t)}})},e.initializeProps=t=>{const e=t.constructor.watchAttributes;for(let n of(t=>{const e=t.constructor.watchAttributes,n=Object.assign({},e);Object.keys(n).forEach((t=>n[t]=""));const o=Object.assign(Object.assign({},n),t.constructor.propsInit);return Object.keys(o)})(t)){if(e)if(null==e[o.toKebabCase(n)])e[o.toKebabCase(n)]="";else{const i=t.props[n]||t.getAttribute(o.toKebabCase(n));"function"==typeof t[e[n]]&&t[e[n]]({new:i})}t.constructor.propsInit[n]&&(t.hasAttribute(o.toKebabCase(n))||(t[n]=t.constructor.propsInit[n]))}}},7227:t=>{t.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 -960 960 960"><path fill="currentColor" d="M200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h240q17 0 28.5 11.5T480-800q0 17-11.5 28.5T440-760H200v560h240q17 0 28.5 11.5T480-160q0 17-11.5 28.5T440-120H200Zm487-320H400q-17 0-28.5-11.5T360-480q0-17 11.5-28.5T400-520h287l-75-75q-11-11-11-27t11-28q11-12 28-12.5t29 11.5l143 143q12 12 12 28t-12 28L669-309q-12 12-28.5 11.5T612-310q-11-12-10.5-28.5T613-366l74-74Z"></path></svg>'},8591:(t,e,n)=>{"use strict";n.r(e),n.d(e,{default:()=>o});const o='<template>\n \n <button id="user-account-container" class="user-account-content"> \n \n </button>\n \n <div id="user-account-menu-wrapper" class="menu-wrapper">\n \n </div>\n \n </template> '},8631:function(t,e,n){"use strict";var o=this&&this.__awaiter||function(t,e,n,o){return new(n||(n=Promise))((function(i,r){function s(t){try{c(o.next(t))}catch(t){r(t)}}function a(t){try{c(o.throw(t))}catch(t){r(t)}}function c(t){var e;t.done?i(t.value):(e=t.value,e instanceof n?e:new n((function(t){t(e)}))).then(s,a)}c((o=o.apply(t,e||[])).next())}))};Object.defineProperty(e,"__esModule",{value:!0}),e.Component=void 0;const i=n(169),r=n(6999),s=n(2466);e.Component=t=>e=>{var n;const a=t.tag||s.toKebabCase(e.prototype.constructor.name),c=((n=class extends e{constructor(){super(),this.props={},this.showShadowRoot=null==t.shadow||t.shadow,!this.shadowRoot&&this.showShadowRoot&&this.attachShadow({mode:"open"})}static get observedAttributes(){return Object.keys(this.propsInit||{}).map((t=>s.toKebabCase(t)))}attributeChangedCallback(t,e,n){this.onAttributeChange(t,e,n)}onAttributeChange(t,e,n,o=!0){if(e!=n){o&&(this[s.toCamelCase(t)]=n);const i=this.constructor.watchAttributes;if(i&&i[t]){const o=i[t];this.__connected&&"function"==typeof this[o]&&this[o]({old:e,new:n})}}}connectedCallback(){const t=Object.create(null,{connectedCallback:{get:()=>super.connectedCallback}});return o(this,void 0,void 0,(function*(){yield this.render(),t.connectedCallback&&t.connectedCallback.call(this),this.__connected=!0,i.addEventListeners(this),r.initializeProps(this)}))}render(){return o(this,void 0,void 0,(function*(){if(this.__connected)return;const e=document.createElement("template");e.innerHTML=yield this.getStyle(),t.template instanceof Promise?e.content.appendChild(yield this.getExternalTemplate()):"string"==typeof t.template&&(e.innerHTML+=t.template),(this.showShadowRoot?this.shadowRoot:this).appendChild(e.content.cloneNode(!0))}))}getExternalTemplate(){return o(this,void 0,void 0,(function*(){const e=(yield t.template).default.toString(),n=document.createRange().createContextualFragment(e);return 1===n.children.length&&"TEMPLATE"===n.children[0].nodeName?n.firstChild.content:n}))}getStyle(){return o(this,void 0,void 0,(function*(){let e;return t.style instanceof Promise?e=(yield t.style).default.toString():"string"==typeof t.style&&(e=t.style),e?`<style>${e}</style>`:""}))}}).__connected=!1,n.ready=new Promise(((t,e)=>t(!0))),n);return customElements.get(a)||customElements.define(a,c),c}},8861:(t,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0})},8969:function(t,e,n){"use strict";var o,i=this&&this.__createBinding||(Object.create?function(t,e,n,o){void 0===o&&(o=n);var i=Object.getOwnPropertyDescriptor(e,n);i&&!("get"in i?!e.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,o,i)}:function(t,e,n,o){void 0===o&&(o=n),t[o]=e[n]}),r=this&&this.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),s=this&&this.__decorate||function(t,e,n,o){var i,r=arguments.length,s=r<3?e:null===o?o=Object.getOwnPropertyDescriptor(e,n):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,n,o);else for(var a=t.length-1;a>=0;a--)(i=t[a])&&(s=(r<3?i(s):r>3?i(e,n,s):i(e,n))||s);return r>3&&s&&Object.defineProperty(e,n,s),s},a=this&&this.__importStar||(o=function(t){return o=Object.getOwnPropertyNames||function(t){var e=[];for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[e.length]=n);return e},o(t)},function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var n=o(t),s=0;s<n.length;s++)"default"!==n[s]&&i(e,t,n[s]);return r(e,t),e}),c=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0}),e.UserAccount=void 0;const l=n(3128),u=c(n(7227)),p=c(n(6388)),d=c(n(4142)),A=n(2781);let h=class extends l.CustomElement{constructor(){super(),this.hideListContainer=()=>{this.showmenu=!1},this.clickOutsideUserAccountItemsContainer=this.clickOutsideUserAccountItemsContainer.bind(this)}setup(t){this.connect(t.container),t.id&&(this.id=t.id)}connectedCallback(){this.userAccountContent=(0,l.getShadowRootElement)(this,"#user-account-container"),this.userAccountItems=(0,l.getShadowRootElement)(this,"#user-account-menu-wrapper"),this.userAccountListContainer=(0,l.getShadowRootElement)(this,"#user-account-list-container"),(this.signinurl&&this.signouturl||this.shouldShowAuthenticationButton())&&this.renderLoginButton(),document.addEventListener("click",this.clickOutsideUserAccountItemsContainer)}shouldShowAuthenticationButton(){var t,e;return""===(null===(t=this.hasAuthenticationFunction)||void 0===t?void 0:t.toString())||"true"===(null===(e=this.hasAuthenticationFunction)||void 0===e?void 0:e.toString())}disconnectedCallback(){document.removeEventListener("click",this.clickOutsideUserAccountItemsContainer)}clickOutsideUserAccountItemsContainer(t){const e=t.composedPath()[0];e.closest("#user-account-item-list-container")||e.closest("#user-account-toggle-button")||this.hideListContainer()}renderLoginButton(){this.userAccountContent.innerHTML="";const t=document.createElement("span");t.classList.add("menu-user-icon"),t.innerHTML=p.default;const e=document.createElement("span");e.innerText="en"===this.language?"Sign in":"Logg inn",this.userAccountContent.append(t,e)}renderLogoutButton(){this.userAccountContent.innerHTML="";const t=document.createElement("div");t.id="user-account-toggle-button",t.classList.add("user-account-button");const e=document.createElement("span");e.innerText="en"===this.language?"My page":"Min side";const n=document.createElement("span");n.classList.add("close-user-icon"),n.innerHTML=d.default,t.appendChild(n),t.appendChild(e),this.userAccountContent.append(t)}renderUserButton(){(this.signinurl&&this.signouturl||this.shouldShowAuthenticationButton())&&(this.isloggedin?this.renderLogoutButton():this.renderLoginButton())}renderUserAccountItems(){var t;const e=this.signinurl&&this.signouturl;if(this.isloggedin||e||this.shouldShowAuthenticationButton()){this.userAccountItems.innerHTML="";const e=document.createElement("div"),n=document.createElement("div"),o=document.createElement("span");o.innerText="en"===this.language?"User account":"Pålogget som:",n.appendChild(o);const i=document.createElement("strong"),r=null===(t=JSON.parse(this.userinfo))||void 0===t?void 0:t.name;i.innerText=r,n.appendChild(i),e.appendChild(n);const s=document.createElement("ul"),a=t=>{const e=document.createElement("li"),n=document.createElement("a");return n.innerText=t,n.href=(0,A.getMinsideUrl)(this.environment),e.appendChild(n),e};s.appendChild(a("en"===this.language?"My page":"Min side")),e.appendChild(s);const c=document.createElement("div");c.style.marginTop="10px";const l=document.createElement("span");l.classList.add("menu-user-icon"),l.innerHTML=u.default;const p=document.createElement("a"),d=document.createElement("span");d.innerText="en"===this.language?"Log out":"Logg ut",p.appendChild(l),p.appendChild(d),this.shouldShowAuthenticationButton()?p.onclick=()=>this.onSignOutClick.emit():p.href=this.signouturl,c.appendChild(p),e.appendChild(c),this.userAccountItems.appendChild(e)}else this.userAccountItems.innerHTML=""}buttonClicked(t){var e,n,o,i;this.isloggedin?(this.showmenu=!this.showmenu,this.showmenu?null===(e=this.userAccountItems)||void 0===e||e.classList.add("open"):null===(n=this.userAccountItems)||void 0===n||n.classList.remove("open"),this.showmenu?null===(o=this.userAccountListContainer)||void 0===o||o.classList.add("open"):null===(i=this.userAccountListContainer)||void 0===i||i.classList.remove("open")):this.shouldShowAuthenticationButton()?this.onSignInClick.emit():window.location.href=this.signinurl}showMenuChanged(){var t,e;this.showmenu?null===(t=this.userAccountItems)||void 0===t||t.classList.add("open"):null===(e=this.userAccountItems)||void 0===e||e.classList.remove("open")}hasAuthenticationFunctionChanged(){this.renderUserButton(),this.renderUserAccountItems()}isLoggedInChanged(){this.renderUserButton(),this.renderUserAccountItems()}languageChanged(){this.renderUserButton(),this.renderUserAccountItems()}organizationChanged(){this.renderUserButton(),this.renderUserAccountItems()}userInfoChanged(){this.renderUserButton(),this.renderUserAccountItems()}static setup(t,e){const n=(0,l.getElement)(t);e.active&&(n.showmenu=e.active)}};e.UserAccount=h,h.elementSelector="user-account",s([(0,l.Prop)()],h.prototype,"id",void 0),s([(0,l.Prop)()],h.prototype,"environment",void 0),s([(0,l.Prop)()],h.prototype,"language",void 0),s([(0,l.Prop)()],h.prototype,"signinurl",void 0),s([(0,l.Prop)()],h.prototype,"signouturl",void 0),s([(0,l.Prop)()],h.prototype,"organization",void 0),s([(0,l.Prop)()],h.prototype,"userinfo",void 0),s([(0,l.Toggle)()],h.prototype,"isloggedin",void 0),s([(0,l.Toggle)()],h.prototype,"showmenu",void 0),s([(0,l.Toggle)()],h.prototype,"hasAuthenticationFunction",void 0),s([(0,l.Dispatch)("onSignInClick")],h.prototype,"onSignInClick",void 0),s([(0,l.Dispatch)("onSignOutClick")],h.prototype,"onSignOutClick",void 0),s([(0,l.Dispatch)("onNorwegianLanguageSelect")],h.prototype,"onNorwegianLanguageSelect",void 0),s([(0,l.Dispatch)("onEnglishLanguageSelect")],h.prototype,"onEnglishLanguageSelect",void 0),s([(0,l.Listen)("click","#user-account-container")],h.prototype,"buttonClicked",null),s([(0,l.Watch)("showmenu")],h.prototype,"showMenuChanged",null),s([(0,l.Watch)("hasauthenticationfunction")],h.prototype,"hasAuthenticationFunctionChanged",null),s([(0,l.Watch)("isloggedin")],h.prototype,"isLoggedInChanged",null),s([(0,l.Watch)("language")],h.prototype,"languageChanged",null),s([(0,l.Watch)("organization")],h.prototype,"organizationChanged",null),s([(0,l.Watch)("userinfo")],h.prototype,"userInfoChanged",null),e.UserAccount=h=s([(0,l.Component)({tag:"user-account",template:Promise.resolve().then((()=>a(n(8591)))),style:Promise.resolve().then((()=>a(n(2573))))})],h)}},e={};function n(o){var i=e[o];if(void 0!==i)return i.exports;var r=e[o]={id:o,exports:{}};return t[o].call(r.exports,r,r.exports,n),r.exports}return n.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return n.d(e,{a:e}),e},n.d=(t,e)=>{for(var o in e)n.o(e,o)&&!n.o(t,o)&&Object.defineProperty(t,o,{enumerable:!0,get:e[o]})},n.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),n.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},n(8969)})()));
1
+ !function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.geonorge=e():(t.geonorge=t.geonorge||{},t.geonorge.UserAccount=e())}(self,(()=>(()=>{var t={164:t=>{"use strict";t.exports=function(t){var e=[];return e.toString=function(){return this.map((function(e){var n="",o=void 0!==e[5];return e[4]&&(n+="@supports (".concat(e[4],") {")),e[2]&&(n+="@media ".concat(e[2]," {")),o&&(n+="@layer".concat(e[5].length>0?" ".concat(e[5]):""," {")),n+=t(e),o&&(n+="}"),e[2]&&(n+="}"),e[4]&&(n+="}"),n})).join("")},e.i=function(t,n,o,i,r){"string"==typeof t&&(t=[[null,t,void 0]]);var s={};if(o)for(var a=0;a<this.length;a++){var c=this[a][0];null!=c&&(s[c]=!0)}for(var l=0;l<t.length;l++){var u=[].concat(t[l]);o&&s[u[0]]||(void 0!==r&&(void 0===u[5]||(u[1]="@layer".concat(u[5].length>0?" ".concat(u[5]):""," {").concat(u[1],"}")),u[5]=r),n&&(u[2]?(u[1]="@media ".concat(u[2]," {").concat(u[1],"}"),u[2]=n):u[2]=n),i&&(u[4]?(u[1]="@supports (".concat(u[4],") {").concat(u[1],"}"),u[4]=i):u[4]="".concat(i)),e.push(u))}},e}},169:(t,e,n)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Dispatch=e.addEventListeners=e.Listen=void 0;const o=n(2466);e.Listen=(t,e)=>(n,o)=>{n.constructor.listeners||(n.constructor.listeners=[]),n.constructor.listeners.push({selector:e,eventName:t,handler:n[o]})},e.addEventListeners=t=>{if(t.constructor.listeners){const e=t.shadowRoot||t;for(const n of t.constructor.listeners){const o=n.selector?e.querySelector(n.selector)?e.querySelector(n.selector):null:t;o&&o.addEventListener(n.eventName,(e=>{n.handler.call(t,e)}))}}},e.Dispatch=t=>(e,n)=>{Object.defineProperty(e,n,{get:function(){const e=this;return{emit(i){const r=t||o.toDotCase(n);e.dispatchEvent(new CustomEvent(r,i))}}}})}},1063:(t,e,n)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Watch=void 0;const o=n(2466);e.Watch=t=>(e,n)=>{e.constructor.watchAttributes||(e.constructor.watchAttributes={}),e.constructor.watchAttributes[o.toKebabCase(t)]=n,e.constructor.propsInit||(e.constructor.propsInit={}),e.constructor.propsInit[t]=null}},2466:(t,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.tryParseInt=e.toDotCase=e.toCamelCase=e.toKebabCase=void 0,e.toKebabCase=t=>t.replace(/([a-z])([A-Z])/g,"$1-$2").replace(/[\s_]+/g,"-").toLowerCase(),e.toCamelCase=t=>t.toLowerCase().replace(/(\-\w)/g,(t=>t[1].toUpperCase())),e.toDotCase=t=>t.replace(/(?!^)([A-Z])/g," $1").replace(/[_\s]+(?=[a-zA-Z])/g,".").toLowerCase(),e.tryParseInt=t=>parseInt(t)==t&&NaN!==parseFloat(t)?parseInt(t):t},2573:(t,e,n)=>{"use strict";n.r(e),n.d(e,{default:()=>a});var o=n(5052),i=n.n(o),r=n(164),s=n.n(r)()(i());s.push([t.id,'.user-account-content{display:flex;flex-direction:row;padding:6px 8px 6px 8px;width:auto;color:#403f3f;gap:6px;font-family:"Open Sans",sans-serif;font-size:14px;justify-content:space-between;align-items:center;margin:0 6px 0 12px;background:rgba(0,0,0,0);border:none}.user-account-content:hover{color:#1073bc;cursor:pointer}.user-account-content span:last-child{display:none;align-items:center;flex-direction:row;padding:2px 1px;vertical-align:middle;font-weight:500}@media(min-width: 992px){.user-account-content span:last-child{display:inline-block}}.user-account-content span:first-child svg{height:24px;width:24px;vertical-align:middle}.menu-wrapper{font-size:14px;font-family:"Open Sans",sans-serif;position:relative;-moz-transition:all .3s ease-in-out;-o-transition:all .3s ease-in-out;-webkit-transition:all .3s ease-in-out;transition:all .3s ease-in-out}.menu-wrapper>div{max-height:0;overflow:hidden;-moz-transition:all .3s ease-in-out;-o-transition:all .3s ease-in-out;-webkit-transition:all .3s ease-in-out;transition:all .3s ease-in-out;position:absolute;display:flex;flex-direction:column;background-color:#fff;box-shadow:0px 1px 3px 0px rgba(0,0,0,.1019607843);width:375px;z-index:100;top:10px;right:-85px}.menu-wrapper>div>div:first-child>span{display:block}.menu-wrapper>div>div:first-child>span:last-child{font-weight:bolder}.menu-wrapper>div ul{list-style-type:none}.menu-wrapper>div ul li{margin:12px 0}.menu-wrapper>div ul li a,.menu-wrapper>div ul li a:link,.menu-wrapper>div ul li a:visited{color:#1a589f}.menu-wrapper>div>*:nth-child(odd){background-color:#f9f9f9;padding:32px;display:flex;flex-direction:column;gap:5px}.menu-wrapper>div>*:nth-child(even){background-color:#fff;margin-top:10px;display:flex;flex-direction:column;gap:5px;padding:0 32px}.menu-wrapper>div>*:last-child{padding:32px}.menu-wrapper>div a,.menu-wrapper>div a:link,.menu-wrapper>div a:visited{color:#000;display:flex;text-decoration:underline}.menu-wrapper>div a:hover{cursor:pointer}.menu-wrapper>div .menu-user-icon svg{padding-left:4px;width:24px;height:24px;color:#000}.menu-wrapper.open>div{max-height:1000px}.user-account-container{text-align:right;background-color:#d2cecb;max-height:0;overflow:hidden}.user-account-container.open{max-height:56px}.user-account-container a,.user-account-container button{display:inline-block;padding:.25em 1em .25em 1.1em;margin:15px 0;text-decoration:none;color:rgba(0,0,0,0);cursor:pointer;border:none;font-weight:normal;background:rgba(0,0,0,0)}.user-account-container a:not(:first-child),.user-account-container button:not(:first-child){border:none}',"",{version:3,sources:["webpack://./stories/main-navigation/user-account/user-account.scss","webpack://./style/variables/_typography.scss","webpack://./style/mixins/_breakpoints.scss","webpack://./style/mixins/_transition.scss"],names:[],mappings:"AAEA,sBACE,YAAA,CACA,kBAAA,CACA,uBAAA,CACA,UAAA,CACA,aAAA,CACA,OAAA,CACA,kCCTa,CDUb,cAAA,CACA,6BAAA,CACA,kBAAA,CACA,mBAAA,CACA,wBAAA,CAMA,WAAA,CALA,4BACE,aAAA,CACA,cAAA,CAIC,sCACG,YAAA,CACA,kBAAA,CACA,kBAAA,CACA,eAAA,CACA,qBAAA,CACA,eAAA,CErBA,yBFeH,sCAQO,oBAAA,CAAA,CAIA,2CACI,WAAA,CACA,UAAA,CACA,qBAAA,CAOhB,cACI,cAAA,CACA,kCC7CW,CD8CX,iBAAA,CG7CA,mCH8CA,CG7CA,iCH6CA,CG5CA,sCH4CA,CG3CA,8BH2CA,CAGA,kBACI,YAAA,CACA,eAAA,CGnDJ,mCHoDI,CGnDJ,iCHmDI,CGlDJ,sCHkDI,CGjDJ,8BHiDI,CACA,iBAAA,CACA,YAAA,CACA,qBAAA,CACA,qBAAA,CACA,kDAAA,CACA,WAAA,CACA,WAAA,CACA,QAAA,CACA,WAAA,CACA,uCACI,aAAA,CACA,kDACC,kBAAA,CAGL,qBACI,oBAAA,CACA,wBACI,aAAA,CACA,2FACI,aAAA,CAKZ,mCACI,wBAAA,CACA,YAAA,CACA,YAAA,CAEA,qBAAA,CACA,OAAA,CAEJ,oCACI,qBAAA,CACA,eAAA,CACA,YAAA,CAEA,qBAAA,CACA,OAAA,CACA,cAAA,CAEJ,+BACI,YAAA,CAEJ,yEACI,UAAA,CACA,YAAA,CACA,yBAAA,CAEJ,0BACI,cAAA,CAGA,sCACI,gBAAA,CACA,UAAA,CACA,WAAA,CACA,UAAA,CAKR,uBACI,iBAAA,CAKZ,wBACI,gBAAA,CACA,wBAAA,CACA,YAAA,CACA,eAAA,CACA,6BACI,eAAA,CAEJ,yDAEI,oBAAA,CACA,6BAAA,CACA,aAAA,CACA,oBAAA,CACA,mBAAA,CACA,cAAA,CACA,WAAA,CAEA,kBAAA,CAEA,wBAAA,CAEA,6FACI,WAAA",sourcesContent:['@import "../../../style/all";\n\n.user-account-content {\n display: flex;\n flex-direction: row;\n padding: 6px 8px 6px 8px;\n width: auto;\n color: #403F3F;\n gap: 6px;\n font-family: $default-font;\n font-size: 14px;\n justify-content: space-between;\n align-items: center;\n margin: 0 6px 0 12px;\n background: transparent;\n &:hover {\n color: #1073BC;\n cursor: pointer;\n}\n \n border: none; \n span:last-child {\n display: none; \n align-items: center;\n flex-direction: row;\n padding: 2px 1px;\n vertical-align: middle;\n font-weight: 500;\n @include breakpoint(laptop) {\n display: inline-block;\n } \n }\n span:first-child { \n svg {\n height: 24px;\n width: 24px; \n vertical-align: middle; \n \n }\n \n }\n \n}\n.menu-wrapper {\n font-size: 14px;\n font-family: $default-font;\n position: relative; \n @include transition(all .3s ease-in-out);\n \n \n > div {\n max-height: 0;\n overflow: hidden;\n @include transition(all 0.3s ease-in-out);\n position: absolute;\n display: flex;\n flex-direction: column;\n background-color: white; \n box-shadow: 0px 1px 3px 0px #0000001A;\n width: 375px;\n z-index: 100;\n top: 10px;\n right: -85px; \n > div:first-child > span {\n display: block;\n &:last-child {\n font-weight: bolder;\n }\n } \n ul {\n list-style-type: none;\n li {\n margin: 12px 0;\n a, a:link, a:visited {\n color: #1A589F;\n }\n }\n }\n \n > *:nth-child(odd) {\n background-color: #F9F9F9;\n padding: 32px; \n display: flex\n ;\n flex-direction: column;\n gap: 5px;\n }\n > *:nth-child(even) {\n background-color: white;\n margin-top: 10px;\n display: flex\n ;\n flex-direction: column;\n gap: 5px;\n padding: 0 32px;\n }\n > *:last-child {\n padding: 32px; \n }\n a, a:link, a:visited {\n color: #000000;\n display: flex;\n text-decoration: underline;\n }\n a:hover {\n cursor: pointer;\n }\n .menu-user-icon {\n svg {\n padding-left: 4px;\n width: 24px;\n height: 24px;\n color: #000000;\n }\n }\n }\n &.open { \n > div {\n max-height: 1000px;\n }\n }\n \n}\n.user-account-container { \n text-align: right;\n background-color: #d2cecb;\n max-height: 0;\n overflow: hidden;\n &.open {\n max-height: 56px;\n }\n a,\n button {\n display: inline-block;\n padding: 0.25em 1em 0.25em 1.1em;\n margin: 15px 0;\n text-decoration: none;\n color: transparent;\n cursor: pointer;\n border: none;\n \n font-weight: normal;\n \n background: transparent; \n \n &:not(:first-child) {\n border: none;\n }\n } \n}','$default-font: "Open Sans", sans-serif;\n$header-font: "Raleway", sans-serif;\n$default-font-size: 15px;\n',"@mixin breakpoint($point) {\n @if $point == desktop {\n @media (min-width: $screen-desktop) {\n @content;\n }\n } @else if $point == laptop {\n @media (min-width: $screen-laptop) {\n @content;\n }\n } @else if $point == tablet {\n @media (min-width: $screen-tablet) {\n @content;\n }\n } @else if $point == phablet {\n @media (min-width: $screen-phablet) {\n @content;\n }\n }\n}\n","\ufeff@mixin transition($transition...) {\n -moz-transition: $transition;\n -o-transition: $transition;\n -webkit-transition: $transition;\n transition: $transition;\n}\n\n@mixin transition-property($property...) {\n -moz-transition-property: $property;\n -o-transition-property: $property;\n -webkit-transition-property: $property;\n transition-property: $property;\n}\n\n@mixin transition-duration($duration...) {\n -moz-transition-property: $duration;\n -o-transition-property: $duration;\n -webkit-transition-property: $duration;\n transition-property: $duration;\n}\n\n@mixin transition-timing-function($timing...) {\n -moz-transition-timing-function: $timing;\n -o-transition-timing-function: $timing;\n -webkit-transition-timing-function: $timing;\n transition-timing-function: $timing;\n}\n\n@mixin transition-delay($delay...) {\n -moz-transition-delay: $delay;\n -o-transition-delay: $delay;\n -webkit-transition-delay: $delay;\n transition-delay: $delay;\n}\n"],sourceRoot:""}]);const a=s},2781:(t,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.renderDropdownResultLink=e.convertTextToUrlSlug=e.getGeonorgeNedlastingUrl=e.getGeonorgeUrl=e.getMinsideUrl=e.getKartkatalogUrl=void 0,e.getKartkatalogUrl=t=>`https://kartkatalog.${"dev"===t||"test"===t?t+".":""}geonorge.no`,e.getMinsideUrl=t=>`https://minside.${"dev"===t||"test"===t?t+".":""}geonorge.no`,e.getGeonorgeUrl=(t,e)=>`https://www.${"dev"===e||"test"===e?"test.":""}geonorge.no/${"en"===t?"en/":""}`,e.getGeonorgeNedlastingUrl=t=>`https://nedlasting.${"dev"===t||"test"===t?"test.":""}geonorge.no`;const n=(t,e,n)=>(t=(t=(t=t.replace(new RegExp(`([^s])([${e}])([^s])`,"ig"),`$1 ${n} $3`)).replace(new RegExp(`([^s])([${e}])`,"ig"),`$1 ${n}`)).replace(new RegExp(`([${e}])([^s])`,"ig"),`${n} $2`)).replace(new RegExp(`[${e}]`,"ig"),n);e.convertTextToUrlSlug=(t="")=>(t=t.toLowerCase(),t=n(t,"&","and"),(t=(t=(t=(t=(t=(t=(t=(t=(t=n(t,"+","plus")).replace("æ","ae")).replace("ä","ae")).replace("ø","oe")).replace("ö","oe")).replace("å","aa")).replace(/( - )/g,"-")).replace(/[\s]+/g,"-")).replace(/[^a-z0-9-]+/gi,"")).replace(/^[^A-Z0-9]*|[^a-z0-9]*$/gi,""));const o=(t,e)=>{if(!e)return!1;e({event:"updateSearchString",category:"metadataSearch",activity:"dropDownResultsClick",searchString:t})};e.renderDropdownResultLink=(t,n,i,r,s)=>"articles"===n?`<a onClick="${o(i,s)}" href="${t.ShowDetailsUrl?t.ShowDetailsUrl:"#"}">${t.Title}</a>`:`<a onClick="${o(i,s)}" href="${(0,e.getKartkatalogUrl)(r)}/metadata/${(0,e.convertTextToUrlSlug)(t.Title)}/${t.Uuid}?search=${i}">${t.Title}</a>`},3128:function(t,e,n){"use strict";var o=this&&this.__createBinding||(Object.create?function(t,e,n,o){void 0===o&&(o=n),Object.defineProperty(t,o,{enumerable:!0,get:function(){return e[n]}})}:function(t,e,n,o){void 0===o&&(o=n),t[o]=e[n]}),i=this&&this.__exportStar||function(t,e){for(var n in t)"default"===n||Object.prototype.hasOwnProperty.call(e,n)||o(e,t,n)};Object.defineProperty(e,"__esModule",{value:!0}),i(n(8631),e),i(n(3704),e),i(n(3365),e),i(n(169),e),i(n(6999),e),i(n(3982),e),i(n(8861),e),i(n(1063),e)},3365:(t,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.getShadowRootElement=e.getElement=void 0,e.getElement=t=>document.querySelector(t),e.getShadowRootElement=(t,e)=>t.shadowRoot.querySelector(e)},3704:(t,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.CustomElement=void 0;class n extends HTMLElement{constructor(){super()}connect(t){this.isConnected||document.querySelector(t).appendChild(this)}}e.CustomElement=n},3982:(t,e,n)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Toggle=void 0;const o=n(2466);e.Toggle=()=>(t,e)=>{t.constructor.propsInit||(t.constructor.propsInit={}),t.constructor.propsInit[e]=null,Object.defineProperty(t,e,{get:function(){return(t=>{if(this.hasAttribute(t)){const e=this.getAttribute(t);return!!/^(true|false|^$)$/.test(e)&&("true"==e||""==e)}return!1})(e)},set:function(t){const n=t;if(null!=t)switch(typeof t){case"boolean":break;case"string":/^(true|false|^$)$/.test(t)?t="true"==n||""==n:(console.warn(`TypeError: Cannot set boolean toggle property '${e}' to '${t}'`),t=!1);break;default:throw`TypeError: Cannot set boolean toggle property '${e}' to '${t}'`}this.__connected?(this.props[e]=t||!1,""!==n&&null!==n?this.setAttribute(e,t):t?this.setAttribute(e,""):this.removeAttribute(e)):this.hasAttribute(o.toKebabCase(e))||(this.constructor.propsInit[e]=t)}})}},4142:t=>{t.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 -960 960 960"><path fill="currentColor" d="M480-480q-66 0-113-47t-47-113q0-66 47-113t113-47q66 0 113 47t47 113q0 66-47 113t-113 47ZM160-160v-112q0-34 17.5-62.5T224-378q62-31 126-46.5T480-440q66 0 130 15.5T736-378q29 15 46.5 43.5T800-272v112H160Zm80-80h480v-32q0-11-5.5-20T700-306q-54-27-109-40.5T480-360q-56 0-111 13.5T260-306q-9 5-14.5 14t-5.5 20v32Zm240-320q33 0 56.5-23.5T560-640q0-33-23.5-56.5T480-720q-33 0-56.5 23.5T400-640q0 33 23.5 56.5T480-560Zm0-80Zm0 400Z"></path></svg>'},5052:t=>{"use strict";t.exports=function(t){var e=t[1],n=t[3];if(!n)return e;if("function"==typeof btoa){var o=btoa(unescape(encodeURIComponent(JSON.stringify(n)))),i="sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(o),r="/*# ".concat(i," */");return[e].concat([r]).join("\n")}return[e].join("\n")}},6388:t=>{t.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 -960 960 960"><path fill="currentColor" d="M480-120v-80h280v-560H480v-80h280q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H480Zm-80-160-55-58 102-102H120v-80h327L345-622l55-58 200 200-200 200Z"></path></svg>'},6999:(t,e,n)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.initializeProps=e.Prop=void 0;const o=n(2466);e.Prop=()=>(t,e)=>{const n=o.toKebabCase(e);t.constructor.propsInit||(t.constructor.propsInit={}),t.constructor.propsInit[e]=null,Object.defineProperty(t,e,{get:function(){return this.props[e]?this.props[e]:this.getAttribute(n)},set:function(t){if(this.__connected){const i=this.props[e];this.props[e]=o.tryParseInt(t),"object"!=typeof t?this.setAttribute(n,t):this.onAttributeChange(n,i,t,!1)}else this.hasAttribute(o.toKebabCase(e))||(this.constructor.propsInit[e]=t)}})},e.initializeProps=t=>{const e=t.constructor.watchAttributes;for(let n of(t=>{const e=t.constructor.watchAttributes,n=Object.assign({},e);Object.keys(n).forEach((t=>n[t]=""));const o=Object.assign(Object.assign({},n),t.constructor.propsInit);return Object.keys(o)})(t)){if(e)if(null==e[o.toKebabCase(n)])e[o.toKebabCase(n)]="";else{const i=t.props[n]||t.getAttribute(o.toKebabCase(n));"function"==typeof t[e[n]]&&t[e[n]]({new:i})}t.constructor.propsInit[n]&&(t.hasAttribute(o.toKebabCase(n))||(t[n]=t.constructor.propsInit[n]))}}},7227:t=>{t.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 -960 960 960"><path fill="currentColor" d="M200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h240q17 0 28.5 11.5T480-800q0 17-11.5 28.5T440-760H200v560h240q17 0 28.5 11.5T480-160q0 17-11.5 28.5T440-120H200Zm487-320H400q-17 0-28.5-11.5T360-480q0-17 11.5-28.5T400-520h287l-75-75q-11-11-11-27t11-28q11-12 28-12.5t29 11.5l143 143q12 12 12 28t-12 28L669-309q-12 12-28.5 11.5T612-310q-11-12-10.5-28.5T613-366l74-74Z"></path></svg>'},8591:(t,e,n)=>{"use strict";n.r(e),n.d(e,{default:()=>o});const o='<template>\n \n <button id="user-account-container" class="user-account-content"> \n \n </button>\n \n <div id="user-account-menu-wrapper" class="menu-wrapper">\n \n </div>\n \n </template> '},8631:function(t,e,n){"use strict";var o=this&&this.__awaiter||function(t,e,n,o){return new(n||(n=Promise))((function(i,r){function s(t){try{c(o.next(t))}catch(t){r(t)}}function a(t){try{c(o.throw(t))}catch(t){r(t)}}function c(t){var e;t.done?i(t.value):(e=t.value,e instanceof n?e:new n((function(t){t(e)}))).then(s,a)}c((o=o.apply(t,e||[])).next())}))};Object.defineProperty(e,"__esModule",{value:!0}),e.Component=void 0;const i=n(169),r=n(6999),s=n(2466);e.Component=t=>e=>{var n;const a=t.tag||s.toKebabCase(e.prototype.constructor.name),c=((n=class extends e{constructor(){super(),this.props={},this.showShadowRoot=null==t.shadow||t.shadow,!this.shadowRoot&&this.showShadowRoot&&this.attachShadow({mode:"open"})}static get observedAttributes(){return Object.keys(this.propsInit||{}).map((t=>s.toKebabCase(t)))}attributeChangedCallback(t,e,n){this.onAttributeChange(t,e,n)}onAttributeChange(t,e,n,o=!0){if(e!=n){o&&(this[s.toCamelCase(t)]=n);const i=this.constructor.watchAttributes;if(i&&i[t]){const o=i[t];this.__connected&&"function"==typeof this[o]&&this[o]({old:e,new:n})}}}connectedCallback(){const t=Object.create(null,{connectedCallback:{get:()=>super.connectedCallback}});return o(this,void 0,void 0,(function*(){yield this.render(),t.connectedCallback&&t.connectedCallback.call(this),this.__connected=!0,i.addEventListeners(this),r.initializeProps(this)}))}render(){return o(this,void 0,void 0,(function*(){if(this.__connected)return;const e=document.createElement("template");e.innerHTML=yield this.getStyle(),t.template instanceof Promise?e.content.appendChild(yield this.getExternalTemplate()):"string"==typeof t.template&&(e.innerHTML+=t.template),(this.showShadowRoot?this.shadowRoot:this).appendChild(e.content.cloneNode(!0))}))}getExternalTemplate(){return o(this,void 0,void 0,(function*(){const e=(yield t.template).default.toString(),n=document.createRange().createContextualFragment(e);return 1===n.children.length&&"TEMPLATE"===n.children[0].nodeName?n.firstChild.content:n}))}getStyle(){return o(this,void 0,void 0,(function*(){let e;return t.style instanceof Promise?e=(yield t.style).default.toString():"string"==typeof t.style&&(e=t.style),e?`<style>${e}</style>`:""}))}}).__connected=!1,n.ready=new Promise(((t,e)=>t(!0))),n);return customElements.get(a)||customElements.define(a,c),c}},8861:(t,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0})},8969:function(t,e,n){"use strict";var o,i=this&&this.__createBinding||(Object.create?function(t,e,n,o){void 0===o&&(o=n);var i=Object.getOwnPropertyDescriptor(e,n);i&&!("get"in i?!e.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,o,i)}:function(t,e,n,o){void 0===o&&(o=n),t[o]=e[n]}),r=this&&this.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),s=this&&this.__decorate||function(t,e,n,o){var i,r=arguments.length,s=r<3?e:null===o?o=Object.getOwnPropertyDescriptor(e,n):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,n,o);else for(var a=t.length-1;a>=0;a--)(i=t[a])&&(s=(r<3?i(s):r>3?i(e,n,s):i(e,n))||s);return r>3&&s&&Object.defineProperty(e,n,s),s},a=this&&this.__importStar||(o=function(t){return o=Object.getOwnPropertyNames||function(t){var e=[];for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[e.length]=n);return e},o(t)},function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var n=o(t),s=0;s<n.length;s++)"default"!==n[s]&&i(e,t,n[s]);return r(e,t),e}),c=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0}),e.UserAccount=void 0;const l=n(3128),u=c(n(7227)),p=c(n(6388)),d=c(n(4142)),A=n(2781);let h=class extends l.CustomElement{constructor(){super(),this.hideListContainer=()=>{this.showmenu=!1},this.clickOutsideUserAccountItemsContainer=this.clickOutsideUserAccountItemsContainer.bind(this)}setup(t){this.connect(t.container),t.id&&(this.id=t.id)}connectedCallback(){this.userAccountContent=(0,l.getShadowRootElement)(this,"#user-account-container"),this.userAccountItems=(0,l.getShadowRootElement)(this,"#user-account-menu-wrapper"),this.userAccountListContainer=(0,l.getShadowRootElement)(this,"#user-account-list-container"),(this.signinurl&&this.signouturl||this.shouldShowAuthenticationButton())&&this.renderLoginButton(),document.addEventListener("click",this.clickOutsideUserAccountItemsContainer)}shouldShowAuthenticationButton(){var t,e;return""===(null===(t=this.hasAuthenticationFunction)||void 0===t?void 0:t.toString())||"true"===(null===(e=this.hasAuthenticationFunction)||void 0===e?void 0:e.toString())}disconnectedCallback(){document.removeEventListener("click",this.clickOutsideUserAccountItemsContainer)}clickOutsideUserAccountItemsContainer(t){const e=t.composedPath()[0];e.closest("#user-account-item-list-container")||e.closest("#user-account-toggle-button")||this.hideListContainer()}renderLoginButton(){this.userAccountContent.innerHTML="";const t=document.createElement("span");t.classList.add("menu-user-icon"),t.innerHTML=p.default;const e=document.createElement("span");e.innerText="en"===this.language?"Sign in":"Logg inn",this.userAccountContent.append(t,e)}renderLogoutButton(){var t;this.userAccountContent.innerHTML="";const e=document.createElement("div");e.id="user-account-toggle-button",e.classList.add("user-account-button");const n=document.createElement("span");let o=null===(t=JSON.parse(this.userinfo))||void 0===t?void 0:t.name;o&&o.length>10&&(o=o.substring(0,8)+"..."),n.innerText=o;const i=document.createElement("span");i.classList.add("close-user-icon"),i.innerHTML=d.default,e.appendChild(i),e.appendChild(n),this.userAccountContent.append(e)}renderUserButton(){(this.signinurl&&this.signouturl||this.shouldShowAuthenticationButton())&&(this.isloggedin?this.renderLogoutButton():this.renderLoginButton())}renderUserAccountItems(){var t;const e=this.signinurl&&this.signouturl;if(this.isloggedin||e||this.shouldShowAuthenticationButton()){this.userAccountItems.innerHTML="";const e=document.createElement("div"),n=document.createElement("div"),o=document.createElement("span");o.innerText="en"===this.language?"User account":"Pålogget som:",n.appendChild(o);const i=document.createElement("strong"),r=null===(t=JSON.parse(this.userinfo))||void 0===t?void 0:t.name;i.innerText=r,n.appendChild(i),e.appendChild(n);const s=document.createElement("ul"),a=t=>{const e=document.createElement("li"),n=document.createElement("a");return n.innerText=t,n.href=(0,A.getMinsideUrl)(this.environment),e.appendChild(n),e};s.appendChild(a("en"===this.language?"My page":"Min side")),e.appendChild(s);const c=document.createElement("div");c.style.marginTop="10px";const l=document.createElement("span");l.classList.add("menu-user-icon"),l.innerHTML=u.default;const p=document.createElement("a");p.setAttribute("role","button"),p.href="#";const d=document.createElement("span");d.innerText="en"===this.language?"Log out":"Logg ut",p.appendChild(l),p.appendChild(d),this.shouldShowAuthenticationButton()?p.onclick=t=>{t.preventDefault(),this.onSignOutClick.emit()}:p.href=this.signouturl,c.appendChild(p),e.appendChild(c),this.userAccountItems.appendChild(e)}else this.userAccountItems.innerHTML=""}buttonClicked(t){var e,n,o,i;this.isloggedin?(this.showmenu=!this.showmenu,this.showmenu?null===(e=this.userAccountItems)||void 0===e||e.classList.add("open"):null===(n=this.userAccountItems)||void 0===n||n.classList.remove("open"),this.showmenu?null===(o=this.userAccountListContainer)||void 0===o||o.classList.add("open"):null===(i=this.userAccountListContainer)||void 0===i||i.classList.remove("open")):this.shouldShowAuthenticationButton()?this.onSignInClick.emit():window.location.href=this.signinurl}showMenuChanged(){var t,e;this.showmenu?null===(t=this.userAccountItems)||void 0===t||t.classList.add("open"):null===(e=this.userAccountItems)||void 0===e||e.classList.remove("open")}hasAuthenticationFunctionChanged(){this.renderUserButton(),this.renderUserAccountItems()}isLoggedInChanged(){this.renderUserButton(),this.renderUserAccountItems()}languageChanged(){this.renderUserButton(),this.renderUserAccountItems()}organizationChanged(){this.renderUserButton(),this.renderUserAccountItems()}userInfoChanged(){this.renderUserButton(),this.renderUserAccountItems()}static setup(t,e){const n=(0,l.getElement)(t);e.active&&(n.showmenu=e.active)}};e.UserAccount=h,h.elementSelector="user-account",s([(0,l.Prop)()],h.prototype,"id",void 0),s([(0,l.Prop)()],h.prototype,"environment",void 0),s([(0,l.Prop)()],h.prototype,"language",void 0),s([(0,l.Prop)()],h.prototype,"signinurl",void 0),s([(0,l.Prop)()],h.prototype,"signouturl",void 0),s([(0,l.Prop)()],h.prototype,"organization",void 0),s([(0,l.Prop)()],h.prototype,"userinfo",void 0),s([(0,l.Toggle)()],h.prototype,"isloggedin",void 0),s([(0,l.Toggle)()],h.prototype,"showmenu",void 0),s([(0,l.Toggle)()],h.prototype,"hasAuthenticationFunction",void 0),s([(0,l.Dispatch)("onSignInClick")],h.prototype,"onSignInClick",void 0),s([(0,l.Dispatch)("onSignOutClick")],h.prototype,"onSignOutClick",void 0),s([(0,l.Dispatch)("onNorwegianLanguageSelect")],h.prototype,"onNorwegianLanguageSelect",void 0),s([(0,l.Dispatch)("onEnglishLanguageSelect")],h.prototype,"onEnglishLanguageSelect",void 0),s([(0,l.Listen)("click","#user-account-container")],h.prototype,"buttonClicked",null),s([(0,l.Watch)("showmenu")],h.prototype,"showMenuChanged",null),s([(0,l.Watch)("hasauthenticationfunction")],h.prototype,"hasAuthenticationFunctionChanged",null),s([(0,l.Watch)("isloggedin")],h.prototype,"isLoggedInChanged",null),s([(0,l.Watch)("language")],h.prototype,"languageChanged",null),s([(0,l.Watch)("organization")],h.prototype,"organizationChanged",null),s([(0,l.Watch)("userinfo")],h.prototype,"userInfoChanged",null),e.UserAccount=h=s([(0,l.Component)({tag:"user-account",template:Promise.resolve().then((()=>a(n(8591)))),style:Promise.resolve().then((()=>a(n(2573))))})],h)}},e={};function n(o){var i=e[o];if(void 0!==i)return i.exports;var r=e[o]={id:o,exports:{}};return t[o].call(r.exports,r,r.exports,n),r.exports}return n.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return n.d(e,{a:e}),e},n.d=(t,e)=>{for(var o in e)n.o(e,o)&&!n.o(t,o)&&Object.defineProperty(t,o,{enumerable:!0,get:e[o]})},n.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),n.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},n(8969)})()));
2
2
  //# sourceMappingURL=UserAccount.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"UserAccount.js","mappings":"CAAA,SAA2CA,EAAMC,GAC1B,iBAAZC,SAA0C,iBAAXC,OACxCA,OAAOD,QAAUD,IACQ,mBAAXG,QAAyBA,OAAOC,IAC9CD,OAAO,GAAIH,GACe,iBAAZC,QACdA,QAAkB,SAAID,KAEtBD,EAAe,SAAIA,EAAe,UAAK,CAAC,EAAGA,EAAe,SAAe,YAAIC,IAC9E,CATD,CASGK,MAAM,I,kCCHTH,EAAOD,QAAU,SAAUK,GACzB,IAAIC,EAAO,GA4EX,OAzEAA,EAAKC,SAAW,WACd,OAAOC,KAAKC,KAAI,SAAUC,GACxB,IAAIC,EAAU,GACVC,OAA+B,IAAZF,EAAK,GAoB5B,OAnBIA,EAAK,KACPC,GAAW,cAAcE,OAAOH,EAAK,GAAI,QAEvCA,EAAK,KACPC,GAAW,UAAUE,OAAOH,EAAK,GAAI,OAEnCE,IACFD,GAAW,SAASE,OAAOH,EAAK,GAAGI,OAAS,EAAI,IAAID,OAAOH,EAAK,IAAM,GAAI,OAE5EC,GAAWN,EAAuBK,GAC9BE,IACFD,GAAW,KAETD,EAAK,KACPC,GAAW,KAETD,EAAK,KACPC,GAAW,KAENA,CACT,IAAGI,KAAK,GACV,EAGAT,EAAKU,EAAI,SAAWC,EAASC,EAAOC,EAAQC,EAAUC,GAC7B,iBAAZJ,IACTA,EAAU,CAAC,CAAC,KAAMA,OAASK,KAE7B,IAAIC,EAAyB,CAAC,EAC9B,GAAIJ,EACF,IAAK,IAAIK,EAAI,EAAGA,EAAIhB,KAAKM,OAAQU,IAAK,CACpC,IAAIC,EAAKjB,KAAKgB,GAAG,GACP,MAANC,IACFF,EAAuBE,IAAM,EAEjC,CAEF,IAAK,IAAIC,EAAK,EAAGA,EAAKT,EAAQH,OAAQY,IAAM,CAC1C,IAAIhB,EAAO,GAAGG,OAAOI,EAAQS,IACzBP,GAAUI,EAAuBb,EAAK,WAGrB,IAAVW,SACc,IAAZX,EAAK,KAGdA,EAAK,GAAK,SAASG,OAAOH,EAAK,GAAGI,OAAS,EAAI,IAAID,OAAOH,EAAK,IAAM,GAAI,MAAMG,OAAOH,EAAK,GAAI,MAF/FA,EAAK,GAAKW,GAMVH,IACGR,EAAK,IAGRA,EAAK,GAAK,UAAUG,OAAOH,EAAK,GAAI,MAAMG,OAAOH,EAAK,GAAI,KAC1DA,EAAK,GAAKQ,GAHVR,EAAK,GAAKQ,GAMVE,IACGV,EAAK,IAGRA,EAAK,GAAK,cAAcG,OAAOH,EAAK,GAAI,OAAOG,OAAOH,EAAK,GAAI,KAC/DA,EAAK,GAAKU,GAHVV,EAAK,GAAK,GAAGG,OAAOO,IAMxBd,EAAKqB,KAAKjB,GACZ,CACF,EACOJ,CACT,C,6HCpFA,gBA2DS,EAAAsB,OAzCM,CAACC,EAAmBC,IAC1B,CAACC,EAAaC,KACdD,EAAOE,YAAYC,YACtBH,EAAOE,YAAYC,UAAY,IAEjCH,EAAOE,YAAYC,UAAUP,KAAK,CAAEG,SAAUA,EAAUD,UAAWA,EAAWM,QAASJ,EAAOC,IAAc,EAoC/F,EAAAI,kBAhCUL,IACzB,GAAIA,EAAOE,YAAYC,UAAW,CAChC,MAAMG,EAAkBN,EAAOO,YAAcP,EAC7C,IAAK,MAAMQ,KAAYR,EAAOE,YAAYC,UAAsC,CAC9E,MAAMM,EAAeD,EAAiB,SAClCF,EAAWI,cAAcF,EAAST,UAChCO,EAAWI,cAAcF,EAAST,UAAY,KAChDC,EACAS,GACFA,EAAYE,iBAAiBH,EAASV,WAAYc,IAChDJ,EAASJ,QAAQS,KAAKb,EAAQY,EAAE,G,IAsBW,EAAAE,SAfnChB,GACT,CAACE,EAAqBe,KAU3BC,OAAOC,eAAejB,EAAQe,EAAc,CAAEG,IAT9C,WACE,MAAM7C,EAAoBI,KAC1B,MAAO,CACL,IAAA0C,CAAKC,GACH,MAAMC,EAAU,GAA0B,EAAAC,UAAUP,GACpD1C,EAAKkD,cAAc,IAAIC,YAAYH,EAASD,GAC9C,EAEJ,GACoD,C,8FCvDxD,gBAEa,EAAAK,MAASC,GACb,CAAC1B,EAAae,KACdf,EAAOE,YAAYyB,kBACtB3B,EAAOE,YAAYyB,gBAAkB,CAAC,GAExC3B,EAAOE,YAAYyB,gBAAgB,EAAAC,YAAYF,IAAaX,EACvDf,EAAOE,YAAY2B,YACtB7B,EAAOE,YAAY2B,UAAY,CAAC,GAElC7B,EAAOE,YAAY2B,UAAUH,GAAY,IAAI,C,0ICXpC,EAAAE,YAAeE,GACnBA,EACJC,QAAQ,kBAAmB,SAC3BA,QAAQ,UAAW,KACnBC,cAGQ,EAAAC,YAAeH,GACnBA,EACJE,cACAD,QAAQ,WAAYG,GAAMA,EAAE,GAAGC,gBAGvB,EAAAb,UAAaQ,GACjBA,EAAIC,QAAQ,gBAAiB,OACjCA,QAAQ,sBAAuB,KAC/BC,cAGQ,EAAAI,YAAeC,GAClBC,SAASD,IAAUA,GAA+BE,MAAtBC,WAAWH,GAAkBC,SAASD,GAASA,C,4FCjBjFI,E,MAA0B,GAA4B,KAE1DA,EAAwB7C,KAAK,CAAC1B,EAAOwB,GAAI,g+EAAi+E,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,qEAAqE,+CAA+C,6CAA6C,6CAA6C,MAAQ,GAAG,SAAW,0iCAA0iC,eAAiB,CAAC,i5GAAm5G,6GAAiH,mfAAmf,ygCAAogC,WAAa,MAE70R,S,sNCJa,EAAAgD,kBAAqBC,GAEvB,uBADiC,QAAhBA,GAAyC,SAAhBA,EAAyBA,EAAc,IAAM,gBAGrF,EAAAC,cAAiBD,GAEnB,mBADiC,QAAhBA,GAAyC,SAAhBA,EAAyBA,EAAc,IAAM,gBAIrF,EAAAE,eAAiB,CAACC,EAAkBH,IAGtC,eAFiC,QAAhBA,GAAyC,SAAhBA,EAAyB,QAAU,iBAC1C,OAAbG,EAAoB,MAAQ,KAIhD,EAAAC,yBAA4BJ,GAE9B,sBADiC,QAAhBA,GAAyC,SAAhBA,EAAyB,QAAU,gBAMxF,MAAMK,EAAqB,CAACC,EAAclB,EAAiBmB,KAGvDD,GADAA,GADAA,EAAOA,EAAKlB,QAAQ,IAAIoB,OAAO,WAAWpB,YAAmB,MAAO,MAAMmB,SAC9DnB,QAAQ,IAAIoB,OAAO,WAAWpB,MAAa,MAAO,MAAMmB,MACxDnB,QAAQ,IAAIoB,OAAO,KAAKpB,YAAmB,MAAO,GAAGmB,SACrDnB,QAAQ,IAAIoB,OAAO,IAAIpB,KAAY,MAAOmB,GAK7C,EAAAE,qBAAuB,CAACH,EAAe,MAE5CA,EAAOA,EAAKjB,cAGZiB,EAAOD,EAAmBC,EAAM,IAAK,QAarCA,GAHAA,GADAA,GAHAA,GADAA,GADAA,GADAA,GADAA,GADAA,EAAOD,EAAmBC,EAAM,IAAK,SACzBlB,QAAQ,IAAK,OACbA,QAAQ,IAAK,OACbA,QAAQ,IAAK,OACbA,QAAQ,IAAK,OACbA,QAAQ,IAAK,OAGbA,QAAQ,SAAU,MAClBA,QAAQ,SAAU,MAGlBA,QAAQ,gBAAiB,KAGzBA,QAAQ,4BAA6B,KAKzD,MAAMsB,EAA2B,CAACC,EAAsBC,KACpD,IAAIA,EAOG,OAAO,EANVA,EAAgB,CACZC,MAAO,qBACPC,SAAU,iBACVC,SAAU,uBACVJ,aAAcA,GAEH,EAGV,EAAAK,yBAA2B,CAACC,EAAoCC,EAAoBP,EAAsBX,EAAqBY,IAClH,aAAfM,EACD,eAAeR,EAAyBC,EAAcC,aAA2BK,EAAaE,eAAiBF,EAAaE,eAAiB,QAAQF,EAAaG,YAClK,eAAeV,EAAyBC,EAAcC,cAA2B,IAAAb,mBAAkBC,gBAAyB,IAAAS,sBAAqBQ,EAAaG,UAAUH,EAAaI,eAAeV,MAAiBM,EAAaG,W,8ZC1E5O,aACA,aACA,aACA,YACA,aACA,aACA,aACA,Y,wHCPa,EAAAE,WAAqClE,GACzCmE,SAASxD,cAAcX,GAGnB,EAAAoE,qBAAuB,CAAwBC,EAA4BrE,IAC/EqE,EAAc7D,WAAWG,cAAcX,E,oGCHhD,MAAsBsE,UAAsBC,YAC1C,WAAApE,GACEqE,OACF,CAIU,OAAAC,CAAQzE,GACXtB,KAAKgG,aACRP,SAASxD,cAAcX,GAAU2E,YAAYjG,KAEjD,EAXF,iB,+FCFA,gBAEa,EAAAkG,OAAS,IACb,CAAC3E,EAAa4E,KAkDd5E,EAAOE,YAAY2B,YACtB7B,EAAOE,YAAY2B,UAAY,CAAC,GAElC7B,EAAOE,YAAY2B,UAAU+C,GAAY,KACzC5D,OAAOC,eAAejB,EAAQ4E,EAAU,CAAE1D,IArD1C,WAYE,MAXqB,CAAC0D,IACpB,GAAInG,KAAKoG,aAAaD,GAAW,CAC/B,MAAME,EAAYrG,KAAKsG,aAAaH,GACpC,QAAI,oBAAoBI,KAAKF,KACP,QAAbA,GAAoC,IAAbA,E,CAKlC,OAAO,CAAK,EAEPC,CAAaH,EACtB,EAwC+CK,IAvC/C,SAAa5C,GACX,MAAM6C,EAAW7C,EACjB,GAAa9C,MAAT8C,EACF,cAAeA,GACb,IAAK,UACH,MACF,IAAK,SACC,oBAAoB2C,KAAK3C,GAC3BA,EAAoB,QAAZ6C,GAAkC,IAAZA,GAE9BC,QAAQC,KAAK,kDAAkDR,UAAiBvC,MAChFA,GAAQ,GAEV,MACF,QACE,KAAM,kDAAmDuC,UAAiBvC,KAG5E5D,KAAK4G,aACP5G,KAAK6G,MAAMV,GAAYvC,IAAS,EACf,KAAb6C,GAAgC,OAAbA,EACrBzG,KAAK8G,aAAaX,EAAUvC,GAExBA,EACF5D,KAAK8G,aAAaX,EAAU,IAE5BnG,KAAK+G,gBAAgBZ,IAIpBnG,KAAKoG,aAAa,EAAAjD,YAAYgD,MACjCnG,KAAKyB,YAAY2B,UAAU+C,GAAYvC,EAG7C,GAKqD,C,WCzDzDnE,EAAOD,QAAU,shB,wBCEjBC,EAAOD,QAAU,SAAUU,GACzB,IAAIC,EAAUD,EAAK,GACf8G,EAAa9G,EAAK,GACtB,IAAK8G,EACH,OAAO7G,EAET,GAAoB,mBAAT8G,KAAqB,CAC9B,IAAIC,EAASD,KAAKE,SAASC,mBAAmBC,KAAKC,UAAUN,MACzDO,EAAO,+DAA+DlH,OAAO6G,GAC7EM,EAAgB,OAAOnH,OAAOkH,EAAM,OACxC,MAAO,CAACpH,GAASE,OAAO,CAACmH,IAAgBjH,KAAK,KAChD,CACA,MAAO,CAACJ,GAASI,KAAK,KACxB,C,WCfAd,EAAOD,QAAU,wQ,+GCAjB,gBAEa,EAAAiI,KAAO,IACX,CAAClG,EAAa4E,KACnB,MAAMlD,EAAW,EAAAE,YAAYgD,GAsBxB5E,EAAOE,YAAY2B,YACtB7B,EAAOE,YAAY2B,UAAY,CAAC,GAElC7B,EAAOE,YAAY2B,UAAU+C,GAAY,KACzC5D,OAAOC,eAAejB,EAAQ4E,EAAU,CAAE1D,IAzB1C,WACE,OAAIzC,KAAK6G,MAAMV,GACNnG,KAAK6G,MAAMV,GAEbnG,KAAKsG,aAAarD,EAC3B,EAoB+CuD,IAnB/C,SAAa5C,GACX,GAAI5D,KAAK4G,YAAa,CACpB,MAAMH,EAAWzG,KAAK6G,MAAMV,GAC5BnG,KAAK6G,MAAMV,GAAY,EAAAxC,YAAYC,GACf,iBAATA,EACT5D,KAAK8G,aAAa7D,EAAUW,GAE5B5D,KAAK0H,kBAAkBzE,EAAUwD,EAAU7C,GAAO,E,MAG/C5D,KAAKoG,aAAa,EAAAjD,YAAYgD,MACjCnG,KAAKyB,YAAY2B,UAAU+C,GAAYvC,EAG7C,GAKqD,EAY5C,EAAA+D,gBAAmBpG,IAC9B,MAAM2B,EAAkB3B,EAAOE,YAAYyB,gBAC3C,IAAK,IAAI0E,IAVM,CAACrG,IAChB,MAAM2B,EAAkB3B,EAAOE,YAAYyB,gBACrC2E,EAAkB,OAAH,UAAQ3E,GAC7BX,OAAOuF,KAAKD,GAAiBE,SAAQC,GAAKH,EAAgBG,GAAK,KAC/D,MAAMC,EAAa,OAAH,wBAAQJ,GAAoBtG,EAAOE,YAAY2B,WAC/D,OAAOb,OAAOuF,KAAKG,EAAW,EAKbC,CAAS3G,GAAS,CACjC,GAAI2B,EACF,GAA0C,MAAtCA,EAAgB,EAAAC,YAAYyE,IAC9B1E,EAAgB,EAAAC,YAAYyE,IAAS,OAChC,CACL,MAAMO,EAAc5G,EAAOsF,MAAMe,IAASrG,EAAO+E,aAAa,EAAAnD,YAAYyE,IAC9B,mBAAjCrG,EAAO2B,EAAgB0E,KAChCrG,EAAO2B,EAAgB0E,IAAO,CAAEQ,IAAKD,G,CAIvC5G,EAAOE,YAAY2B,UAAUwE,KAC1BrG,EAAO6E,aAAa,EAAAjD,YAAYyE,MACnCrG,EAAOqG,GAAQrG,EAAOE,YAAY2B,UAAUwE,I,aCzDpDnI,EAAOD,QAAU,ue,4DCAjB,8R,waCAA,eACA,UAEA,UAEa,EAAA6I,UAAaC,GAChB/G,I,MACN,MAAMgH,EAAcD,EAAKC,KAAO,EAAApF,YAAY5B,EAAOiH,UAAU/G,YAAYgH,MACnE9C,IAAa,EAAQ,cAAepE,EAaxC,WAAAE,GACEqE,QARK,KAAAe,MAAkB,CAAC,EAUxB7G,KAAK0I,eAAgC,MAAfJ,EAAKK,QAAwBL,EAAKK,QAEnD3I,KAAK8B,YAAc9B,KAAK0I,gBAC3B1I,KAAK4I,aAAa,CAAEC,KAAM,QAE9B,CAZO,6BAAWC,GAChB,OAAOvG,OAAOuF,KAAK9H,KAAKoD,WAAa,CAAC,GAAGnD,KAAI8I,GAAK,EAAA5F,YAAY4F,IAChE,CAYO,wBAAAC,CAAyBP,EAAchC,EAAkBwC,GAC9DjJ,KAAK0H,kBAAkBe,EAAMhC,EAAUwC,EACzC,CAEO,iBAAAvB,CAAkBe,EAAchC,EAAkBwC,EAAkBzC,GAAe,GACxF,GAAIC,GAAYwC,EAAU,CACpBzC,IAAOxG,KAAK,EAAAwD,YAAYiF,IAASQ,GACrC,MAAM/F,EAA6BlD,KAAKyB,YAAoByB,gBAC5D,GAAIA,GAAmBA,EAAgBuF,GAAO,CAC5C,MAAMS,EAAuBhG,EAAgBuF,GACzCzI,KAAK4G,aAC0B,mBAAtB5G,KAAKkJ,IACdlJ,KAAKkJ,GAAc,CAAEC,IAAK1C,EAAU2B,IAAKa,G,EAKnD,CAEa,iBAAAG,G,iIACLpJ,KAAKqJ,SACX,EAAMD,mBAAqB,EAAMA,kBAAiB,WAClDpJ,KAAK4G,aAAc,EAEnB,EAAAhF,kBAAkB5B,MAClB,EAAA2H,gBAAgB3H,KAClB,G,CAEc,MAAAqJ,G,yCACZ,GAAIrJ,KAAK4G,YACP,OAGF,MAAM0C,EAAW7D,SAAS8D,cAAc,YACxCD,EAASE,gBAAkBxJ,KAAKyJ,WAE5BnB,EAAKgB,oBAAoBI,QAC3BJ,EAASnJ,QAAQ8F,kBAAkBjG,KAAK2J,uBACN,iBAAlBrB,EAAKgB,WACrBA,EAASE,WAAalB,EAAKgB,WAG5BtJ,KAAK0I,eAAiB1I,KAAK8B,WAAa9B,MAAMiG,YAAYqD,EAASnJ,QAAQyJ,WAAU,GACxF,G,CAEc,mBAAAD,G,yCACZ,MACME,SADwBvB,EAAKgB,UACLQ,QAAQ/J,WAChCgK,EAAWtE,SAASuE,cAAcC,yBAAyBJ,GAEjE,OAAiC,IAA7BE,EAASG,SAAS5J,QAAkD,aAAlCyJ,EAASG,SAAS,GAAGC,SACjDJ,EAASK,WAAmCjK,QAE/C4J,CACT,G,CAEc,QAAAN,G,yCACZ,IAAIY,EASJ,OAPI/B,EAAKgC,iBAAiBZ,QAExBW,SAD0B/B,EAAKgC,OACbR,QAAQ/J,WACK,iBAAfuI,EAAKgC,QACrBD,EAAM/B,EAAKgC,OAGHD,EAAM,UAAUA,YAAgB,EAC5C,G,IAzFiBzD,aAAuB,EAIvB,EAAA2D,MAA0B,IAAIb,SAAQ,CAACc,EAASC,IAAMD,GAAQ,K,GA4FjF,OAJKE,eAAejI,IAAI8F,IACtBmC,eAAehL,OAAO6I,EAAK5C,GAGtBA,CAAa,C,+3CCzGxB,gBAeA,aACA,aACA,aACA,UAsBO,IAAMgF,EAAN,cAA0B,EAAA/E,cAsB/B,WAAAnE,GACEqE,QAuCF,KAAA8E,kBAAoB,KAClB5K,KAAK6K,UAAW,CAAK,EAtCrB7K,KAAK8K,sCACH9K,KAAK8K,sCAAsCC,KAAK/K,KACpD,CAEA,KAAAgL,CAAMrI,GACJ3C,KAAK+F,QAAQpD,EAAQsI,WACjBtI,EAAQ1B,KACVjB,KAAKiB,GAAK0B,EAAQ1B,GAEtB,CAEA,iBAAAmI,GACEpJ,KAAKkL,oBAAqB,IAAAxF,sBAAqB1F,KAAM,2BACrDA,KAAKmL,kBAAmB,IAAAzF,sBAAqB1F,KAAM,8BACnDA,KAAKoL,0BAA2B,IAAA1F,sBAAqB1F,KAAM,iCAE/BA,KAAKqL,WAAarL,KAAKsL,YAGxBtL,KAAKuL,mCAC9BvL,KAAKwL,oBAEP/F,SAASvD,iBACP,QACAlC,KAAK8K,sCAET,CACA,8BAAAS,G,QACE,MAAsD,MAAjB,QAA9B,EAAAvL,KAAKyL,iCAAyB,eAAE1L,aAAoE,UAAjB,QAA9B,EAAAC,KAAKyL,iCAAyB,eAAE1L,WAChG,CACE,oBAAA2L,GACEjG,SAASkG,oBACP,QACA3L,KAAK8K,sCAET,CAMA,qCAAAA,CAAsC/F,GACpC,MAAM6G,EAAgB7G,EAAM8G,eAAe,GAEzCD,EAAcE,QAAQ,sCACtBF,EAAcE,QAAQ,gCAGxB9L,KAAK4K,mBACP,CAEA,iBAAAY,GACExL,KAAKkL,mBAAmB1B,UAAY,GACpC,MAAMuC,EAAYtG,SAAS8D,cAAc,QACzCwC,EAAUC,UAAUC,IAAI,kBACxBF,EAAUvC,UAAY,UAEtB,MAAM0C,EAAczG,SAAS8D,cAAc,QAC3C2C,EAAYC,UAA8B,OAAlBnM,KAAKqE,SAAoB,UAAY,WAE7DrE,KAAKkL,mBAAmBkB,OAAOL,EAAWG,EAC9C,CAEA,kBAAAG,GACErM,KAAKkL,mBAAmB1B,UAAY,GAEpC,MAAM8C,EAAkB7G,SAAS8D,cAAc,OAC/C+C,EAAgBrL,GAAK,6BACrBqL,EAAgBN,UAAUC,IAAI,uBAC9B,MAAMM,EAAe9G,SAAS8D,cAAc,QAC5CgD,EAAaJ,UAA8B,OAAlBnM,KAAKqE,SAAoB,UAAY,WAE9D,MAAMmI,EAAa/G,SAAS8D,cAAc,QAC1CiD,EAAWR,UAAUC,IAAI,mBACzBO,EAAWhD,UAAY,UACvB8C,EAAgBrG,YAAYuG,GAC5BF,EAAgBrG,YAAYsG,GAC5BvM,KAAKkL,mBAAmBkB,OAAOE,EACjC,CAEA,gBAAAG,IACgCzM,KAAKqL,WAAarL,KAAKsL,YACzBtL,KAAKuL,oCAC/BvL,KAAK0M,WAAa1M,KAAKqM,qBAAuBrM,KAAKwL,oBAEvD,CAGA,sBAAAmB,G,MACE,MAAMC,EAAwB5M,KAAKqL,WAAarL,KAAKsL,WACnD,GAAItL,KAAK0M,YAAcE,GAAyB5M,KAAKuL,iCAAkC,CACnFvL,KAAKmL,iBAAiB3B,UAAY,GAElC,MAAM4B,EAA2B3F,SAAS8D,cAAc,OAClDsD,EAAoBpH,SAAS8D,cAAc,OAC3CuD,EAAuBrH,SAAS8D,cAAc,QACpDuD,EAAqBX,UAA8B,OAAlBnM,KAAKqE,SAAoB,eAAiB,gBAC3EwI,EAAkB5G,YAAY6G,GAC9B,MAAMC,EAAetH,SAAS8D,cAAc,UACtCyD,EAAoC,QAAzB,EAAA3F,KAAK4F,MAAMjN,KAAKkN,iBAAS,eAAEzE,KAC5CsE,EAAaZ,UAAYa,EACzBH,EAAkB5G,YAAY8G,GAQ9B3B,EAAyBnF,YAAY4G,GACrC,MAAMM,EAAuB1H,SAAS8D,cAAc,MAE9C6D,EAAkB5I,IACtB,MAAM6I,EAAW5H,SAAS8D,cAAc,MAClC+D,EAAS7H,SAAS8D,cAAc,KAItC,OAHA+D,EAAOnB,UAAY3H,EACnB8I,EAAOC,MAAO,IAAApJ,eAAcnE,KAAKkE,aACjCmJ,EAASpH,YAAYqH,GACdD,CAAQ,EAEjBF,EAAqBlH,YAAYmH,EAAiC,OAAlBpN,KAAKqE,SAAoB,UAAY,aAIrF+G,EAAyBnF,YAAYkH,GAiCrC,MAAMK,EAAc/H,SAAS8D,cAAc,OAC3CiE,EAAYlD,MAAMmD,UAAY,OAC9B,MAAM1B,EAAYtG,SAAS8D,cAAc,QACzCwC,EAAUC,UAAUC,IAAI,kBACxBF,EAAUvC,UAAY,UACtB,MAAMkE,EAAajI,SAAS8D,cAAc,KACpCoE,EAAalI,SAAS8D,cAAc,QAC1CoE,EAAWxB,UAA8B,OAAlBnM,KAAKqE,SAAoB,UAAY,UAC5DqJ,EAAWzH,YAAY8F,GACvB2B,EAAWzH,YAAY0H,GACpB3N,KAAKuL,iCACNmC,EAAWE,QAAS,IAAM5N,KAAK6N,eAAenL,OAE9CgL,EAAWH,KAAOvN,KAAKsL,WAEzBkC,EAAYvH,YAAYyH,GAExBtC,EAAyBnF,YAAYuH,GAErCxN,KAAKmL,iBAAiBlF,YAAYmF,EACtC,MACIpL,KAAKmL,iBAAiB3B,UAAY,EAE1C,CAGA,aAAAsE,CAAc/I,G,YACR/E,KAAK0M,YACP1M,KAAK6K,UAAY7K,KAAK6K,SACtB7K,KAAK6K,SAAgC,QAArB,EAAA7K,KAAKmL,wBAAgB,SAAEa,UAAUC,IAAI,QAA+B,QAArB,EAAAjM,KAAKmL,wBAAgB,SAAEa,UAAU+B,OAAO,QACvG/N,KAAK6K,SAAwC,QAA7B,EAAA7K,KAAKoL,gCAAwB,SAAEY,UAAUC,IAAI,QAAuC,QAA7B,EAAAjM,KAAKoL,gCAAwB,SAAEY,UAAU+B,OAAO,SAGpH/N,KAAKuL,iCACNvL,KAAKgO,cAActL,OAEnBuL,OAAOC,SAASX,KAAOvN,KAAKqL,SAK9B,CAGF,eAAA8C,G,QACEnO,KAAK6K,SAAgC,QAArB,EAAA7K,KAAKmL,wBAAgB,SAAEa,UAAUC,IAAI,QAA+B,QAArB,EAAAjM,KAAKmL,wBAAgB,SAAEa,UAAU+B,OAAO,OAEzG,CAIA,gCAAAK,GACQpO,KAAKyM,mBACLzM,KAAK2M,wBACb,CAGA,iBAAA0B,GACIrO,KAAKyM,mBACLzM,KAAK2M,wBACT,CAGA,eAAA2B,GACItO,KAAKyM,mBACLzM,KAAK2M,wBACT,CAGA,mBAAA4B,GACIvO,KAAKyM,mBACLzM,KAAK2M,wBACP,CAEF,eAAA6B,GACExO,KAAKyM,mBACLzM,KAAK2M,wBACP,CAEO,YAAO3B,CAAM1J,EAAkBqB,GACpC,MAAM8L,GAAU,IAAAjJ,YAAwBlE,GACpCqB,EAAQ+L,SACVD,EAAQ5D,SAAWlI,EAAQ+L,OAE/B,GA1QW,EAAA/D,YAAAA,EACa,EAAAgE,gBAAkB,eAMlC,IAAP,IAAAlH,S,yBACO,IAAP,IAAAA,S,kCACO,IAAP,IAAAA,S,+BACO,IAAP,IAAAA,S,gCACO,IAAP,IAAAA,S,iCACO,IAAP,IAAAA,S,mCACO,IAAP,IAAAA,S,+BACS,IAAT,IAAAvB,W,iCACS,IAAT,IAAAA,W,+BACS,IAAT,IAAAA,W,gDAC0B,IAA1B,IAAA7D,UAAS,kB,oCACkB,IAA3B,IAAAA,UAAS,mB,qCAC6B,IAAtC,IAAAA,UAAS,8B,gDAC2B,IAApC,IAAAA,UAAS,4B,8CA4LZ,IADC,IAAAjB,QAAO,QAAS,4B,kCAmBf,IADC,IAAA4B,OAAM,a,oCAQP,IADC,IAAAA,OAAM,8B,qDAOP,IADC,IAAAA,OAAM,e,sCAOP,IADC,IAAAA,OAAM,a,oCAOP,IADC,IAAAA,OAAM,iB,wCAMP,IADC,IAAAA,OAAM,a,kDA/PI2H,EAAW,IALvB,IAAAtC,WAAU,CACTE,IAAK,eACLe,SAAU,QAAF,wBAAS,SACjBgB,MAAO,QAAF,wBAAS,YAEHK,E,GCvCTiE,EAA2B,CAAC,EAGhC,SAASC,EAAoBC,GAE5B,IAAIC,EAAeH,EAAyBE,GAC5C,QAAqBhO,IAAjBiO,EACH,OAAOA,EAAavP,QAGrB,IAAIC,EAASmP,EAAyBE,GAAY,CACjD7N,GAAI6N,EAEJtP,QAAS,CAAC,GAOX,OAHAwP,EAAoBF,GAAU1M,KAAK3C,EAAOD,QAASC,EAAQA,EAAOD,QAASqP,GAGpEpP,EAAOD,OACf,C,OCrBAqP,EAAoBI,EAAKxP,IACxB,IAAIyP,EAASzP,GAAUA,EAAO0P,WAC7B,IAAO1P,EAAiB,QACxB,IAAM,EAEP,OADAoP,EAAoBO,EAAEF,EAAQ,CAAEG,EAAGH,IAC5BA,CAAM,ECLdL,EAAoBO,EAAI,CAAC5P,EAAS8P,KACjC,IAAI,IAAIC,KAAOD,EACXT,EAAoBW,EAAEF,EAAYC,KAASV,EAAoBW,EAAEhQ,EAAS+P,IAC5EhN,OAAOC,eAAehD,EAAS+P,EAAK,CAAEE,YAAY,EAAMhN,IAAK6M,EAAWC,IAE1E,ECNDV,EAAoBW,EAAI,CAACE,EAAK9H,IAAUrF,OAAOiG,UAAUmH,eAAevN,KAAKsN,EAAK9H,GCClFiH,EAAoBe,EAAKpQ,IACH,oBAAXqQ,QAA0BA,OAAOC,aAC1CvN,OAAOC,eAAehD,EAASqQ,OAAOC,YAAa,CAAElM,MAAO,WAE7DrB,OAAOC,eAAehD,EAAS,aAAc,CAAEoE,OAAO,GAAO,ECFpCiL,EAAoB,K","sources":["webpack://geonorge/webpack/universalModuleDefinition","webpack://geonorge/../node_modules/css-loader/dist/runtime/api.js","webpack://geonorge/../node_modules/super-custom-elements/src/listen.ts","webpack://geonorge/../node_modules/super-custom-elements/src/watch.ts","webpack://geonorge/../node_modules/super-custom-elements/src/util.ts","webpack://geonorge/./stories/main-navigation/user-account/user-account.scss","webpack://geonorge/./functions/urlHelpers.ts","webpack://geonorge/../node_modules/super-custom-elements/src/index.ts","webpack://geonorge/../node_modules/super-custom-elements/src/helpers.ts","webpack://geonorge/../node_modules/super-custom-elements/src/custom-element.ts","webpack://geonorge/../node_modules/super-custom-elements/src/toggle.ts","webpack://geonorge/./assets/svg/person.svg","webpack://geonorge/../node_modules/css-loader/dist/runtime/sourceMaps.js","webpack://geonorge/./assets/svg/login.svg","webpack://geonorge/../node_modules/super-custom-elements/src/prop.ts","webpack://geonorge/./assets/svg/logout.svg","webpack://geonorge/./stories/main-navigation/user-account/user-account.html","webpack://geonorge/../node_modules/super-custom-elements/src/component.ts","webpack://geonorge/./stories/main-navigation/user-account/user-account.ts","webpack://geonorge/webpack/bootstrap","webpack://geonorge/webpack/runtime/compat get default export","webpack://geonorge/webpack/runtime/define property getters","webpack://geonorge/webpack/runtime/hasOwnProperty shorthand","webpack://geonorge/webpack/runtime/make namespace object","webpack://geonorge/webpack/startup"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"geonorge\"] = factory();\n\telse\n\t\troot[\"geonorge\"] = root[\"geonorge\"] || {}, root[\"geonorge\"][\"UserAccount\"] = factory();\n})(self, () => {\nreturn ","\"use strict\";\n\n/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n*/\nmodule.exports = function (cssWithMappingToString) {\n var list = [];\n\n // return the list of modules as css string\n list.toString = function toString() {\n return this.map(function (item) {\n var content = \"\";\n var needLayer = typeof item[5] !== \"undefined\";\n if (item[4]) {\n content += \"@supports (\".concat(item[4], \") {\");\n }\n if (item[2]) {\n content += \"@media \".concat(item[2], \" {\");\n }\n if (needLayer) {\n content += \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\");\n }\n content += cssWithMappingToString(item);\n if (needLayer) {\n content += \"}\";\n }\n if (item[2]) {\n content += \"}\";\n }\n if (item[4]) {\n content += \"}\";\n }\n return content;\n }).join(\"\");\n };\n\n // import a list of modules into the list\n list.i = function i(modules, media, dedupe, supports, layer) {\n if (typeof modules === \"string\") {\n modules = [[null, modules, undefined]];\n }\n var alreadyImportedModules = {};\n if (dedupe) {\n for (var k = 0; k < this.length; k++) {\n var id = this[k][0];\n if (id != null) {\n alreadyImportedModules[id] = true;\n }\n }\n }\n for (var _k = 0; _k < modules.length; _k++) {\n var item = [].concat(modules[_k]);\n if (dedupe && alreadyImportedModules[item[0]]) {\n continue;\n }\n if (typeof layer !== \"undefined\") {\n if (typeof item[5] === \"undefined\") {\n item[5] = layer;\n } else {\n item[1] = \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\").concat(item[1], \"}\");\n item[5] = layer;\n }\n }\n if (media) {\n if (!item[2]) {\n item[2] = media;\n } else {\n item[1] = \"@media \".concat(item[2], \" {\").concat(item[1], \"}\");\n item[2] = media;\n }\n }\n if (supports) {\n if (!item[4]) {\n item[4] = \"\".concat(supports);\n } else {\n item[1] = \"@supports (\".concat(item[4], \") {\").concat(item[1], \"}\");\n item[4] = supports;\n }\n }\n list.push(item);\n }\n };\n return list;\n};","import { toDotCase } from './util';\r\n\r\ninterface ListenerMetadata {\r\n eventName: string;\r\n handler: Function;\r\n selector?: string;\r\n}\r\n\r\ninterface CustomEventOptions {\r\n bubbles?: boolean;\r\n composed?: boolean;\r\n detail?: any;\r\n}\r\n\r\ninterface DispatchEmitter {\r\n emit(options?: CustomEventOptions): void;\r\n}\r\n\r\nconst Listen = (eventName: string, selector?: string) => {\r\n return (target: any, methodName: string) => {\r\n if (!target.constructor.listeners) {\r\n target.constructor.listeners = [];\r\n }\r\n target.constructor.listeners.push({ selector: selector, eventName: eventName, handler: target[methodName] });\r\n };\r\n};\r\n\r\nconst addEventListeners = (target: any) => {\r\n if (target.constructor.listeners) {\r\n const targetRoot: any = target.shadowRoot || target;\r\n for (const listener of target.constructor.listeners as Array<ListenerMetadata>) {\r\n const eventTarget = (listener.selector)\r\n ? targetRoot.querySelector(listener.selector)\r\n ? targetRoot.querySelector(listener.selector) : null\r\n : target;\r\n if (eventTarget) {\r\n eventTarget.addEventListener(listener.eventName, (e: CustomEvent) => {\r\n listener.handler.call(target, e);\r\n });\r\n }\r\n }\r\n }\r\n};\r\n\r\nconst Dispatch = (eventName?: string) => {\r\n return (target: HTMLElement, propertyName: string) => {\r\n function get() {\r\n const self: EventTarget = this as EventTarget;\r\n return {\r\n emit(options?: CustomEventOptions) {\r\n const evtName = (eventName) ? eventName : toDotCase(propertyName);\r\n self.dispatchEvent(new CustomEvent(evtName, options));\r\n }\r\n };\r\n }\r\n Object.defineProperty(target, propertyName, { get });\r\n };\r\n};\r\n\r\nexport { Listen, addEventListeners, DispatchEmitter, Dispatch, CustomEventOptions, ListenerMetadata };","import { toKebabCase } from './util';\r\n\r\nexport const Watch = (attrName: string) => {\r\n return (target: any, propertyName: string) => {\r\n if (!target.constructor.watchAttributes) {\r\n target.constructor.watchAttributes = {};\r\n }\r\n target.constructor.watchAttributes[toKebabCase(attrName)] = propertyName;\r\n if (!target.constructor.propsInit) {\r\n target.constructor.propsInit = {};\r\n }\r\n target.constructor.propsInit[attrName] = null;\r\n };\r\n};","export const toKebabCase = (str: string) => {\r\n return str\r\n .replace(/([a-z])([A-Z])/g, '$1-$2')\r\n .replace(/[\\s_]+/g, '-')\r\n .toLowerCase();\r\n};\r\n\r\nexport const toCamelCase = (str: string) => {\r\n return str\r\n .toLowerCase()\r\n .replace(/(\\-\\w)/g, (m) => m[1].toUpperCase());\r\n};\r\n\r\nexport const toDotCase = (str: string) => {\r\n return str.replace(/(?!^)([A-Z])/g, ' $1')\r\n .replace(/[_\\s]+(?=[a-zA-Z])/g, '.')\r\n .toLowerCase();\r\n};\r\n\r\nexport const tryParseInt = (value: any) => {\r\n return (parseInt(value) == value && parseFloat(value) !== NaN) ? parseInt(value) : value;\r\n};\r\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.user-account-content{display:flex;flex-direction:row;padding:6px 8px 6px 8px;width:auto;color:#403f3f;gap:6px;font-family:\"Open Sans\",sans-serif;font-size:14px;justify-content:space-between;align-items:center;margin:0 6px 0 12px;background:rgba(0,0,0,0);border:none}.user-account-content:hover{color:#1073bc;cursor:pointer}.user-account-content span:last-child{display:none;align-items:center;flex-direction:row;padding:2px 1px;vertical-align:middle;font-weight:500}@media(min-width: 992px){.user-account-content span:last-child{display:inline-block}}.user-account-content span:first-child svg{height:24px;width:24px;vertical-align:middle}.menu-wrapper{font-size:14px;font-family:\"Open Sans\",sans-serif;position:relative;-moz-transition:all .3s ease-in-out;-o-transition:all .3s ease-in-out;-webkit-transition:all .3s ease-in-out;transition:all .3s ease-in-out}.menu-wrapper>div{max-height:0;overflow:hidden;-moz-transition:all .3s ease-in-out;-o-transition:all .3s ease-in-out;-webkit-transition:all .3s ease-in-out;transition:all .3s ease-in-out;position:absolute;display:flex;flex-direction:column;background-color:#fff;box-shadow:0px 1px 3px 0px rgba(0,0,0,.1019607843);width:375px;z-index:100;top:10px;right:-85px}.menu-wrapper>div>div:first-child>span{display:block}.menu-wrapper>div>div:first-child>span:last-child{font-weight:bolder}.menu-wrapper>div ul{list-style-type:none}.menu-wrapper>div ul li{margin:12px 0}.menu-wrapper>div ul li a,.menu-wrapper>div ul li a:link,.menu-wrapper>div ul li a:visited{color:#1a589f}.menu-wrapper>div>*:nth-child(odd){background-color:#f9f9f9;padding:32px;display:flex;flex-direction:column;gap:5px}.menu-wrapper>div>*:nth-child(even){background-color:#fff;margin-top:10px;display:flex;flex-direction:column;gap:5px;padding:0 32px}.menu-wrapper>div>*:last-child{padding:32px}.menu-wrapper>div a,.menu-wrapper>div a:link,.menu-wrapper>div a:visited{color:#000;display:flex}.menu-wrapper>div .menu-user-icon svg{padding-left:4px;width:24px;height:24px;color:#000}.menu-wrapper.open>div{max-height:1000px}.user-account-container{text-align:right;background-color:#d2cecb;max-height:0;overflow:hidden}.user-account-container.open{max-height:56px}.user-account-container a,.user-account-container button{display:inline-block;padding:.25em 1em .25em 1.1em;margin:15px 0;text-decoration:none;color:rgba(0,0,0,0);cursor:pointer;border:none;font-weight:normal;background:rgba(0,0,0,0)}.user-account-container a:not(:first-child),.user-account-container button:not(:first-child){border:none}`, \"\",{\"version\":3,\"sources\":[\"webpack://./stories/main-navigation/user-account/user-account.scss\",\"webpack://./style/variables/_typography.scss\",\"webpack://./style/mixins/_breakpoints.scss\",\"webpack://./style/mixins/_transition.scss\"],\"names\":[],\"mappings\":\"AAEA,sBACE,YAAA,CACA,kBAAA,CACA,uBAAA,CACA,UAAA,CACA,aAAA,CACA,OAAA,CACA,kCCTa,CDUb,cAAA,CACA,6BAAA,CACA,kBAAA,CACA,mBAAA,CACA,wBAAA,CAMA,WAAA,CALA,4BACE,aAAA,CACA,cAAA,CAIC,sCACG,YAAA,CACA,kBAAA,CACA,kBAAA,CACA,eAAA,CACA,qBAAA,CACA,eAAA,CErBA,yBFeH,sCAQO,oBAAA,CAAA,CAIA,2CACI,WAAA,CACA,UAAA,CACA,qBAAA,CAOhB,cACI,cAAA,CACA,kCC7CW,CD8CX,iBAAA,CG7CA,mCH8CA,CG7CA,iCH6CA,CG5CA,sCH4CA,CG3CA,8BH2CA,CAGA,kBACI,YAAA,CACA,eAAA,CGnDJ,mCHoDI,CGnDJ,iCHmDI,CGlDJ,sCHkDI,CGjDJ,8BHiDI,CACA,iBAAA,CACA,YAAA,CACA,qBAAA,CACA,qBAAA,CACA,kDAAA,CACA,WAAA,CACA,WAAA,CACA,QAAA,CACA,WAAA,CACA,uCACI,aAAA,CACA,kDACC,kBAAA,CAGL,qBACI,oBAAA,CACA,wBACI,aAAA,CACA,2FACI,aAAA,CAKZ,mCACI,wBAAA,CACA,YAAA,CACA,YAAA,CAEA,qBAAA,CACA,OAAA,CAEJ,oCACI,qBAAA,CACA,eAAA,CACA,YAAA,CAEA,qBAAA,CACA,OAAA,CACA,cAAA,CAEJ,+BACI,YAAA,CAEJ,yEACI,UAAA,CACA,YAAA,CAGA,sCACI,gBAAA,CACA,UAAA,CACA,WAAA,CACA,UAAA,CAKR,uBACI,iBAAA,CAKZ,wBACI,gBAAA,CACA,wBAAA,CACA,YAAA,CACA,eAAA,CACA,6BACI,eAAA,CAEJ,yDAEI,oBAAA,CACA,6BAAA,CACA,aAAA,CACA,oBAAA,CACA,mBAAA,CACA,cAAA,CACA,WAAA,CAEA,kBAAA,CAEA,wBAAA,CAEA,6FACI,WAAA\",\"sourcesContent\":[\"@import \\\"../../../style/all\\\";\\n\\n.user-account-content {\\n display: flex;\\n flex-direction: row;\\n padding: 6px 8px 6px 8px;\\n width: auto;\\n color: #403F3F;\\n gap: 6px;\\n font-family: $default-font;\\n font-size: 14px;\\n justify-content: space-between;\\n align-items: center;\\n margin: 0 6px 0 12px;\\n background: transparent;\\n &:hover {\\n color: #1073BC;\\n cursor: pointer;\\n}\\n \\n border: none; \\n span:last-child {\\n display: none; \\n align-items: center;\\n flex-direction: row;\\n padding: 2px 1px;\\n vertical-align: middle;\\n font-weight: 500;\\n @include breakpoint(laptop) {\\n display: inline-block;\\n } \\n }\\n span:first-child { \\n svg {\\n height: 24px;\\n width: 24px; \\n vertical-align: middle; \\n \\n }\\n \\n }\\n \\n}\\n.menu-wrapper {\\n font-size: 14px;\\n font-family: $default-font;\\n position: relative; \\n @include transition(all .3s ease-in-out);\\n \\n \\n > div {\\n max-height: 0;\\n overflow: hidden;\\n @include transition(all 0.3s ease-in-out);\\n position: absolute;\\n display: flex;\\n flex-direction: column;\\n background-color: white; \\n box-shadow: 0px 1px 3px 0px #0000001A;\\n width: 375px;\\n z-index: 100;\\n top: 10px;\\n right: -85px; \\n > div:first-child > span {\\n display: block;\\n &:last-child {\\n font-weight: bolder;\\n }\\n } \\n ul {\\n list-style-type: none;\\n li {\\n margin: 12px 0;\\n a, a:link, a:visited {\\n color: #1A589F;\\n }\\n }\\n }\\n \\n > *:nth-child(odd) {\\n background-color: #F9F9F9;\\n padding: 32px; \\n display: flex\\n ;\\n flex-direction: column;\\n gap: 5px;\\n }\\n > *:nth-child(even) {\\n background-color: white;\\n margin-top: 10px;\\n display: flex\\n ;\\n flex-direction: column;\\n gap: 5px;\\n padding: 0 32px;\\n }\\n > *:last-child {\\n padding: 32px; \\n }\\n a, a:link, a:visited {\\n color: #000000;\\n display: flex;\\n }\\n .menu-user-icon {\\n svg {\\n padding-left: 4px;\\n width: 24px;\\n height: 24px;\\n color: #000000;\\n }\\n }\\n }\\n &.open { \\n > div {\\n max-height: 1000px;\\n }\\n }\\n \\n}\\n.user-account-container { \\n text-align: right;\\n background-color: #d2cecb;\\n max-height: 0;\\n overflow: hidden;\\n &.open {\\n max-height: 56px;\\n }\\n a,\\n button {\\n display: inline-block;\\n padding: 0.25em 1em 0.25em 1.1em;\\n margin: 15px 0;\\n text-decoration: none;\\n color: transparent;\\n cursor: pointer;\\n border: none;\\n \\n font-weight: normal;\\n \\n background: transparent; \\n \\n &:not(:first-child) {\\n border: none;\\n }\\n } \\n}\",\"$default-font: \\\"Open Sans\\\", sans-serif;\\n$header-font: \\\"Raleway\\\", sans-serif;\\n$default-font-size: 15px;\\n\",\"@mixin breakpoint($point) {\\n @if $point == desktop {\\n @media (min-width: $screen-desktop) {\\n @content;\\n }\\n } @else if $point == laptop {\\n @media (min-width: $screen-laptop) {\\n @content;\\n }\\n } @else if $point == tablet {\\n @media (min-width: $screen-tablet) {\\n @content;\\n }\\n } @else if $point == phablet {\\n @media (min-width: $screen-phablet) {\\n @content;\\n }\\n }\\n}\\n\",\"@mixin transition($transition...) {\\n -moz-transition: $transition;\\n -o-transition: $transition;\\n -webkit-transition: $transition;\\n transition: $transition;\\n}\\n\\n@mixin transition-property($property...) {\\n -moz-transition-property: $property;\\n -o-transition-property: $property;\\n -webkit-transition-property: $property;\\n transition-property: $property;\\n}\\n\\n@mixin transition-duration($duration...) {\\n -moz-transition-property: $duration;\\n -o-transition-property: $duration;\\n -webkit-transition-property: $duration;\\n transition-property: $duration;\\n}\\n\\n@mixin transition-timing-function($timing...) {\\n -moz-transition-timing-function: $timing;\\n -o-transition-timing-function: $timing;\\n -webkit-transition-timing-function: $timing;\\n transition-timing-function: $timing;\\n}\\n\\n@mixin transition-delay($delay...) {\\n -moz-transition-delay: $delay;\\n -o-transition-delay: $delay;\\n -webkit-transition-delay: $delay;\\n transition-delay: $delay;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Interfaces\nimport { SearchResultsForType } from 'interfaces/search';\n\nexport const getKartkatalogUrl = (environment: string) => {\n const environmentSlug = environment === 'dev' || environment === 'test' ? environment + '.' : '';\n return `https://kartkatalog.${environmentSlug}geonorge.no`;\n};\nexport const getMinsideUrl = (environment: string) => {\n const environmentSlug = environment === 'dev' || environment === 'test' ? environment + '.' : '';\n return `https://minside.${environmentSlug}geonorge.no`;\n};\n\nexport const getGeonorgeUrl = (language: string, environment: string) => {\n const environmentSlug = environment === 'dev' || environment === 'test' ? 'test.' : '';\n const selectedLanguageSlug = language === 'en' ? 'en/' : '';\n return `https://www.${environmentSlug}geonorge.no/${selectedLanguageSlug}`;\n};\n\nexport const getGeonorgeNedlastingUrl = (environment: string) => {\n const environmentSlug = environment === 'dev' || environment === 'test' ? 'test.' : '';\n return `https://nedlasting.${environmentSlug}geonorge.no`;\n};\n\n\n\nconst replaceAndAddSpace = (text: string, replace: string, replaceWith: string) => {\n text = text.replace(new RegExp(`([^s])([${replace}])([^s])`, 'ig'), `$1 ${replaceWith} $3`); // Character right before and after\n text = text.replace(new RegExp(`([^s])([${replace}])`, 'ig'), `$1 ${replaceWith}`); // Character right before\n text = text.replace(new RegExp(`([${replace}])([^s])`, 'ig'), `${replaceWith} $2`); // Character right after\n text = text.replace(new RegExp(`[${replace}]`, 'ig'), replaceWith); // No character right before or after\n \n return text;\n }\n\nexport const convertTextToUrlSlug = (text: string = '') => {\n // To lower case\n text = text.toLowerCase();\n\n // Character replace\n text = replaceAndAddSpace(text, \"&\", \"and\");\n text = replaceAndAddSpace(text, \"+\", \"plus\");\n text = text.replace(\"æ\", \"ae\");\n text = text.replace(\"ä\", \"ae\");\n text = text.replace(\"ø\", \"oe\");\n text = text.replace(\"ö\", \"oe\");\n text = text.replace(\"å\", \"aa\");\n\n // Whitespace replace\n text = text.replace(/( - )/g, \"-\");\n text = text.replace(/[\\s]+/g, \"-\");\n\n // Unwated character replace\n text = text.replace(/[^a-z0-9-]+/ig, \"\");\n\n // Remove any character before first and after last A-Z or 0-9\n text = text.replace(/^[^A-Z0-9]*|[^a-z0-9]*$/ig, \"\");\n\n return text;\n}\n\nconst handleSearchResultsClick = (searchString: string, pushToDataLayer?: Function) => {\n if (pushToDataLayer) {\n pushToDataLayer({\n event: 'updateSearchString',\n category: 'metadataSearch',\n activity: 'dropDownResultsClick',\n searchString: searchString\n });\n } else return false;\n}\n\nexport const renderDropdownResultLink = (searchResult: SearchResultsForType, resultType: string, searchString: string, environment: string, pushToDataLayer?: Function) => {\n return resultType === 'articles'\n ? `<a onClick=\"${handleSearchResultsClick(searchString, pushToDataLayer)}\" href=\"${searchResult.ShowDetailsUrl ? searchResult.ShowDetailsUrl : '#'}\">${searchResult.Title}</a>`\n : `<a onClick=\"${handleSearchResultsClick(searchString, pushToDataLayer)}\" href=\"${getKartkatalogUrl(environment)}/metadata/${convertTextToUrlSlug(searchResult.Title)}/${searchResult.Uuid}?search=${searchString}\">${searchResult.Title}</a>`\n\n}","export * from './component';\r\nexport * from './custom-element';\r\nexport * from './helpers';\r\nexport * from './listen';\r\nexport * from './prop';\r\nexport * from './toggle';\r\nexport * from './types';\r\nexport * from './watch';","export const getElement = <T extends HTMLElement>(selector: string): T => {\r\n return document.querySelector(selector);\r\n};\r\n\r\nexport const getShadowRootElement = <T extends HTMLElement>(customElement: HTMLElement, selector: string): T => {\r\n return customElement.shadowRoot.querySelector(selector);\r\n};","import { CustomElementOptions } from \"./types\";\r\n\r\nexport abstract class CustomElement extends HTMLElement {\r\n constructor() {\r\n super();\r\n }\r\n\r\n protected abstract setup(options?: CustomElementOptions): void;\r\n\r\n protected connect(selector: string): void {\r\n if (!this.isConnected) {\r\n document.querySelector(selector).appendChild(this);\r\n }\r\n }\r\n}\r\n","import { toKebabCase } from './util';\r\n\r\nexport const Toggle = (): any => {\r\n return (target: any, propName: any) => {\r\n function get() {\r\n const getAttribute = (propName: string) => {\r\n if (this.hasAttribute(propName)) {\r\n const attrValue = this.getAttribute(propName);\r\n if (/^(true|false|^$)$/.test(attrValue)) {\r\n return attrValue == 'true' || attrValue == '';\r\n } else {\r\n return false;\r\n }\r\n }\r\n return false;\r\n };\r\n return getAttribute(propName);\r\n }\r\n function set(value: any) {\r\n const oldValue = value;\r\n if (value != undefined) {\r\n switch (typeof value) {\r\n case 'boolean':\r\n break;\r\n case 'string':\r\n if (/^(true|false|^$)$/.test(value)) {\r\n value = oldValue == 'true' || oldValue == '';\r\n } else {\r\n console.warn(`TypeError: Cannot set boolean toggle property '${propName}' to '${value}'`);\r\n value = false;\r\n }\r\n break;\r\n default:\r\n throw (`TypeError: Cannot set boolean toggle property '${propName}' to '${value}'`);\r\n }\r\n }\r\n if (this.__connected) {\r\n this.props[propName] = value || false;\r\n if (oldValue !== '' && oldValue !== null) {\r\n this.setAttribute(propName, value);\r\n } else {\r\n if (value) {\r\n this.setAttribute(propName, '');\r\n } else {\r\n this.removeAttribute(propName);\r\n }\r\n }\r\n } else {\r\n if (!this.hasAttribute(toKebabCase(propName))) {\r\n this.constructor.propsInit[propName] = value;\r\n }\r\n }\r\n }\r\n if (!target.constructor.propsInit) {\r\n target.constructor.propsInit = {};\r\n }\r\n target.constructor.propsInit[propName] = null;\r\n Object.defineProperty(target, propName, { get, set });\r\n };\r\n};\r\n","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 -960 960 960\\\"><path fill=\\\"currentColor\\\" d=\\\"M480-480q-66 0-113-47t-47-113q0-66 47-113t113-47q66 0 113 47t47 113q0 66-47 113t-113 47ZM160-160v-112q0-34 17.5-62.5T224-378q62-31 126-46.5T480-440q66 0 130 15.5T736-378q29 15 46.5 43.5T800-272v112H160Zm80-80h480v-32q0-11-5.5-20T700-306q-54-27-109-40.5T480-360q-56 0-111 13.5T260-306q-9 5-14.5 14t-5.5 20v32Zm240-320q33 0 56.5-23.5T560-640q0-33-23.5-56.5T480-720q-33 0-56.5 23.5T400-640q0 33 23.5 56.5T480-560Zm0-80Zm0 400Z\\\"></path></svg>\"","\"use strict\";\n\nmodule.exports = function (item) {\n var content = item[1];\n var cssMapping = item[3];\n if (!cssMapping) {\n return content;\n }\n if (typeof btoa === \"function\") {\n var base64 = btoa(unescape(encodeURIComponent(JSON.stringify(cssMapping))));\n var data = \"sourceMappingURL=data:application/json;charset=utf-8;base64,\".concat(base64);\n var sourceMapping = \"/*# \".concat(data, \" */\");\n return [content].concat([sourceMapping]).join(\"\\n\");\n }\n return [content].join(\"\\n\");\n};","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 -960 960 960\\\"><path fill=\\\"currentColor\\\" d=\\\"M480-120v-80h280v-560H480v-80h280q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H480Zm-80-160-55-58 102-102H120v-80h327L345-622l55-58 200 200-200 200Z\\\"></path></svg>\"","import { toKebabCase, tryParseInt } from './util';\r\n\r\nexport const Prop = (): any => {\r\n return (target: any, propName: any) => {\r\n const attrName = toKebabCase(propName);\r\n function get() {\r\n if (this.props[propName]) {\r\n return this.props[propName];\r\n }\r\n return this.getAttribute(attrName);\r\n }\r\n function set(value: any) {\r\n if (this.__connected) {\r\n const oldValue = this.props[propName];\r\n this.props[propName] = tryParseInt(value);\r\n if (typeof value != 'object') {\r\n this.setAttribute(attrName, value);\r\n } else {\r\n this.onAttributeChange(attrName, oldValue, value, false);\r\n }\r\n } else {\r\n if (!this.hasAttribute(toKebabCase(propName))) {\r\n this.constructor.propsInit[propName] = value;\r\n }\r\n }\r\n }\r\n if (!target.constructor.propsInit) {\r\n target.constructor.propsInit = {};\r\n }\r\n target.constructor.propsInit[propName] = null;\r\n Object.defineProperty(target, propName, { get, set });\r\n };\r\n};\r\n\r\nconst getProps = (target: any) => {\r\n const watchAttributes = target.constructor.watchAttributes;\r\n const plainAttributes = { ...watchAttributes };\r\n Object.keys(plainAttributes).forEach(v => plainAttributes[v] = '');\r\n const cycleProps = { ...plainAttributes, ...target.constructor.propsInit };\r\n return Object.keys(cycleProps);\r\n};\r\n\r\nexport const initializeProps = (target: any) => {\r\n const watchAttributes = target.constructor.watchAttributes;\r\n for (let prop of getProps(target)) {\r\n if (watchAttributes) {\r\n if (watchAttributes[toKebabCase(prop)] == null) {\r\n watchAttributes[toKebabCase(prop)] = '';\r\n } else {\r\n const attribValue = target.props[prop] || target.getAttribute(toKebabCase(prop));\r\n if (typeof target[watchAttributes[prop]] == 'function') {\r\n target[watchAttributes[prop]]({ new: attribValue });\r\n }\r\n }\r\n }\r\n if (target.constructor.propsInit[prop]) {\r\n if (!target.hasAttribute(toKebabCase(prop))) {\r\n target[prop] = target.constructor.propsInit[prop];\r\n }\r\n }\r\n }\r\n};","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 -960 960 960\\\"><path fill=\\\"currentColor\\\" d=\\\"M200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h240q17 0 28.5 11.5T480-800q0 17-11.5 28.5T440-760H200v560h240q17 0 28.5 11.5T480-160q0 17-11.5 28.5T440-120H200Zm487-320H400q-17 0-28.5-11.5T360-480q0-17 11.5-28.5T400-520h287l-75-75q-11-11-11-27t11-28q11-12 28-12.5t29 11.5l143 143q12 12 12 28t-12 28L669-309q-12 12-28.5 11.5T612-310q-11-12-10.5-28.5T613-366l74-74Z\\\"></path></svg>\"","export default \"<template>\\n \\n <button id=\\\"user-account-container\\\" class=\\\"user-account-content\\\"> \\n \\n </button>\\n \\n <div id=\\\"user-account-menu-wrapper\\\" class=\\\"menu-wrapper\\\">\\n \\n </div>\\n \\n </template> \";","import { addEventListeners, ListenerMetadata } from './listen';\r\nimport { initializeProps } from './prop';\r\nimport { ComponentMetadata, KeyValue } from './types';\r\nimport { toKebabCase, toCamelCase } from './util';\r\n\r\nexport const Component = (args: ComponentMetadata) => {\r\n return (target: any) => {\r\n const tag: string = args.tag || toKebabCase(target.prototype.constructor.name);\r\n const customElement: any = class extends (target as { new(): any }) {\r\n protected static __connected: boolean = false;\r\n protected static propsInit: KeyValue;\r\n protected static watchAttributes: KeyValue;\r\n protected static listeners: ListenerMetadata[];\r\n protected static ready: Promise<boolean> = new Promise((resolve, _) => resolve(true));\r\n public props: KeyValue = {};\r\n private showShadowRoot: boolean;\r\n\r\n public static get observedAttributes(): string[] {\r\n return Object.keys(this.propsInit || {}).map(x => toKebabCase(x));\r\n }\r\n\r\n constructor() {\r\n super();\r\n\r\n this.showShadowRoot = args.shadow == null ? true : args.shadow;\r\n\r\n if (!this.shadowRoot && this.showShadowRoot) {\r\n this.attachShadow({ mode: 'open' });\r\n }\r\n }\r\n\r\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\r\n this.onAttributeChange(name, oldValue, newValue);\r\n }\r\n\r\n public onAttributeChange(name: string, oldValue: string, newValue: string, set: boolean = true): void {\r\n if (oldValue != newValue) {\r\n if (set) { this[toCamelCase(name)] = newValue; }\r\n const watchAttributes: KeyValue = (this.constructor as any).watchAttributes;\r\n if (watchAttributes && watchAttributes[name]) {\r\n const methodToCall: string = watchAttributes[name];\r\n if (this.__connected) {\r\n if (typeof this[methodToCall] == 'function') {\r\n this[methodToCall]({ old: oldValue, new: newValue });\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n public async connectedCallback(): Promise<void> {\r\n await this.render();\r\n super.connectedCallback && super.connectedCallback();\r\n this.__connected = true;\r\n\r\n addEventListeners(this);\r\n initializeProps(this);\r\n }\r\n\r\n private async render(): Promise<void> {\r\n if (this.__connected) {\r\n return;\r\n }\r\n\r\n const template = document.createElement('template');\r\n template.innerHTML = await this.getStyle();\r\n\r\n if (args.template instanceof Promise) {\r\n template.content.appendChild(await this.getExternalTemplate());\r\n } else if (typeof args.template === 'string') {\r\n template.innerHTML += args.template;\r\n }\r\n\r\n (this.showShadowRoot ? this.shadowRoot : this).appendChild(template.content.cloneNode(true));\r\n }\r\n\r\n private async getExternalTemplate(): Promise<DocumentFragment> {\r\n const templateModule = await (args.template as Promise<typeof import('*.html')>);\r\n const markup = templateModule.default.toString();\r\n const fragment = document.createRange().createContextualFragment(markup);\r\n\r\n if (fragment.children.length === 1 && fragment.children[0].nodeName === 'TEMPLATE') {\r\n return (fragment.firstChild as HTMLTemplateElement).content;\r\n }\r\n return fragment;\r\n }\r\n\r\n private async getStyle(): Promise<string> {\r\n let css: string;\r\n\r\n if (args.style instanceof Promise) {\r\n const styleModule = await args.style;\r\n css = styleModule.default.toString();\r\n } else if (typeof args.style === 'string') {\r\n css = args.style;\r\n }\r\n\r\n return `${css ? `<style>${css}</style>` : ''}`\r\n }\r\n };\r\n\r\n if (!customElements.get(tag)) {\r\n customElements.define(tag, customElement);\r\n }\r\n\r\n return customElement;\r\n };\r\n};\r\n\r\n\r\n","import {\n Component,\n CustomElement,\n CustomElementOptions,\n Prop,\n Dispatch,\n DispatchEmitter,\n Listen,\n Watch,\n getElement,\n getShadowRootElement,\n Toggle,\n} from \"super-custom-elements\";\n\n// Assets\nimport UserAccountIcon from \"../../../assets/svg/logout.svg\";\nimport LoginIcon from '../../../assets/svg/login.svg';\nimport CloseAccountIcon from '../../../assets/svg/person.svg';\nimport { getMinsideUrl } from \"../../../functions/urlHelpers\";\n\n\ninterface UserAccountOptions extends CustomElementOptions {\n active?: boolean;\n onClick?: () => void,\n onSignInClick?: () => void,\n onSignOutClick?: () => void,\n onNorwegianLanguageSelect?: () => void,\n onEnglishLanguageSelect?: () => void\n\n}\ninterface MenuItem extends Object {\n Name: string,\n SubMenuItem: Array<MenuItem>,\n Url: string\n}\n@Component({\n tag: \"user-account\",\n template: import(\"./user-account.html\"),\n style: import(\"./user-account.scss\"),\n})\nexport class UserAccount extends CustomElement {\n private static readonly elementSelector = \"user-account\";\n private userAccountContent: HTMLButtonElement;\n private userAccountItems: HTMLDivElement;\n private userAccountListContainer: HTMLDivElement;\n \n\n @Prop() id: string;\n @Prop() environment: string;\n @Prop() language: string;\n @Prop() signinurl: string;\n @Prop() signouturl: string;\n @Prop() organization: string\n @Prop() userinfo: string;\n @Toggle() isloggedin: boolean;\n @Toggle() showmenu: boolean;\n @Toggle() hasAuthenticationFunction: boolean;\n @Dispatch('onSignInClick') onSignInClick: DispatchEmitter;\n @Dispatch('onSignOutClick') onSignOutClick: DispatchEmitter;\n @Dispatch('onNorwegianLanguageSelect') onNorwegianLanguageSelect: DispatchEmitter;\n @Dispatch('onEnglishLanguageSelect') onEnglishLanguageSelect: DispatchEmitter;\n\n constructor() {\n super();\n \n this.clickOutsideUserAccountItemsContainer =\n this.clickOutsideUserAccountItemsContainer.bind(this); \n }\n \n setup(options?: UserAccountOptions): void {\n this.connect(options.container);\n if (options.id) {\n this.id = options.id;\n }\n }\n \n connectedCallback() {\n this.userAccountContent = getShadowRootElement(this, \"#user-account-container\");\n this.userAccountItems = getShadowRootElement(this, \"#user-account-menu-wrapper\"); \n this.userAccountListContainer = getShadowRootElement(this, \"#user-account-list-container\"); \n \n const hasAuthenticationUrls = this.signinurl && this.signouturl;\n\n\n if (hasAuthenticationUrls || this.shouldShowAuthenticationButton()) { \n this.renderLoginButton();\n }\n document.addEventListener(\n \"click\",\n this.clickOutsideUserAccountItemsContainer\n ); \n }\n shouldShowAuthenticationButton() {\n return this.hasAuthenticationFunction?.toString() === \"\" || this.hasAuthenticationFunction?.toString() === \"true\";\n}\n disconnectedCallback() {\n document.removeEventListener(\n \"click\",\n this.clickOutsideUserAccountItemsContainer\n );\n }\n\n hideListContainer = () => {\n this.showmenu = false;\n };\n\n clickOutsideUserAccountItemsContainer(event: MouseEvent) {\n const targetElement = event.composedPath()[0] as Element;\n if (\n targetElement.closest(\"#user-account-item-list-container\") ||\n targetElement.closest(\"#user-account-toggle-button\")\n )\n return;\n this.hideListContainer();\n }\n\n renderLoginButton() {\n this.userAccountContent.innerHTML = \"\"; \n const loginIcon = document.createElement(\"span\");\n loginIcon.classList.add(\"menu-user-icon\");\n loginIcon.innerHTML = LoginIcon;\n\n const loginbutton = document.createElement(\"span\"); \n loginbutton.innerText = this.language === \"en\" ? \"Sign in\" : \"Logg inn\";\n\n this.userAccountContent.append(loginIcon, loginbutton);\n}\n\nrenderLogoutButton() {\n this.userAccountContent.innerHTML = \"\";\n\n const mypageContainer = document.createElement(\"div\");\n mypageContainer.id = \"user-account-toggle-button\";\n mypageContainer.classList.add(\"user-account-button\");\n const mypagebutton = document.createElement(\"span\");\n mypagebutton.innerText = this.language === \"en\" ? \"My page\" : \"Min side\";\n\n const mypageicon = document.createElement(\"span\");\n mypageicon.classList.add(\"close-user-icon\");\n mypageicon.innerHTML = CloseAccountIcon;\n mypageContainer.appendChild(mypageicon);\n mypageContainer.appendChild(mypagebutton);\n this.userAccountContent.append(mypageContainer);\n}\n\nrenderUserButton() {\n const hasAuthenticationUrls = this.signinurl && this.signouturl;\n if(hasAuthenticationUrls || this.shouldShowAuthenticationButton()) { \n this.isloggedin ? this.renderLogoutButton() : this.renderLoginButton();\n }\n}\n\n\nrenderUserAccountItems() {\n const hasAuthenticationUrls = this.signinurl && this.signouturl;\n if (this.isloggedin || hasAuthenticationUrls || this.shouldShowAuthenticationButton()) {\n this.userAccountItems.innerHTML = \"\"; \n\n const userAccountListContainer = document.createElement(\"div\");\n const userInfoContainer = document.createElement(\"div\");\n const userAccountListTitle = document.createElement(\"span\");\n userAccountListTitle.innerText = this.language === \"en\" ? \"User account\" : \"Pålogget som:\";\n userInfoContainer.appendChild(userAccountListTitle);\n const userNameSpan = document.createElement(\"strong\");\n const username = JSON.parse(this.userinfo)?.name; \n userNameSpan.innerText = username;\n userInfoContainer.appendChild(userNameSpan);\n\n // Create and append email\n // const userEpostSpan = document.createElement(\"div\");\n // const email = JSON.parse(this.userinfo)?.email; \n // userEpostSpan.innerText = email;\n // userInfoContainer.appendChild(userEpostSpan);\n\n userAccountListContainer.appendChild(userInfoContainer);\n const userAccountListItems = document.createElement(\"ul\");\n \n const createListItem = (text: string) => {\n const listItem = document.createElement(\"li\");\n const anchor = document.createElement(\"a\");\n anchor.innerText = text;\n anchor.href = getMinsideUrl(this.environment);\n listItem.appendChild(anchor);\n return listItem;\n }; \n userAccountListItems.appendChild(createListItem(this.language === \"en\" ? \"My page\" : \"Min side\"));\n //userAccountListItems.appendChild(createListItem(this.language === \"en\" ? \"My shortcuts\" : \"Mine snarveier\"));\n //userAccountListItems.appendChild(createListItem(this.language === \"en\" ? \"Settings\" : \"Innstillinger\"));\n\n userAccountListContainer.appendChild(userAccountListItems);\n\n\n //const kartverketBlock = document.createElement(\"div\"); \n\n\n // const presentsSpan = document.createElement(\"span\");\n // presentsSpan.innerText = this.language === \"en\" ? \"Presents\" : \"Representerer\";\n // kartverketBlock.appendChild(presentsSpan);\n\n // const companyNameSpan = document.createElement(\"strong\");\n // const orgname = JSON.parse(this.organization)?.organizationName; \n // companyNameSpan.innerText = orgname; // Replace with actual company name if available\n // kartverketBlock.appendChild(companyNameSpan);\n\n // const orgNumberSpan = document.createElement(\"span\");\n // const orgnumber = JSON.parse(this.organization)?.organizationNumber; \n // orgNumberSpan.innerText = \"orgnr: \" + orgnumber; // Replace with actual org number if available\n //kartverketBlock.appendChild(orgNumberSpan);\n\n // const changeOrgLink = document.createElement(\"a\");\n // changeOrgLink.innerText = this.language === \"en\" ? \"Change organization\" : \"Endre organisasjon\";\n // changeOrgLink.href = this.signouturl;\n // kartverketBlock.appendChild(changeOrgLink);\n\n // Add some spacing for layout\n //kartverketBlock.style.marginTop = \"10px\";\n //kartverketBlock.style.display = \"flex\";\n //kartverketBlock.style.flexDirection = \"column\";\n //kartverketBlock.style.gap = \"5px\"; // Adds spacing between spans\n\n //userAccountListContainer.appendChild(kartverketBlock);\n\n const logOutBlock = document.createElement(\"div\");\n logOutBlock.style.marginTop = \"10px\"; // Add spacing\n const loginIcon = document.createElement(\"span\");\n loginIcon.classList.add(\"menu-user-icon\");\n loginIcon.innerHTML = UserAccountIcon;\n const logOutLink = document.createElement(\"a\");\n const logOutText = document.createElement(\"span\");\n logOutText.innerText = this.language === \"en\" ? \"Log out\" : \"Logg ut\";\n logOutLink.appendChild(loginIcon); \n logOutLink.appendChild(logOutText);\n if(this.shouldShowAuthenticationButton()) {\n logOutLink.onclick= () => this.onSignOutClick.emit();\n } else {\n logOutLink.href = this.signouturl; }\n \n logOutBlock.appendChild(logOutLink);\n \n userAccountListContainer.appendChild(logOutBlock);\n\n this.userAccountItems.appendChild(userAccountListContainer);\n } else {\n this.userAccountItems.innerHTML = \"\";\n }\n}\n\n@Listen('click', '#user-account-container')\nbuttonClicked(event: MouseEvent) {\n if (this.isloggedin) {\n this.showmenu = !this.showmenu;\n this.showmenu ? this.userAccountItems?.classList.add(\"open\") : this.userAccountItems?.classList.remove(\"open\");\n this.showmenu ? this.userAccountListContainer?.classList.add(\"open\") : this.userAccountListContainer?.classList.remove(\"open\");\n\n } else {\n if(this.shouldShowAuthenticationButton()) {\n this.onSignInClick.emit();\n } else { \n window.location.href = this.signinurl;\n }\n }\n\n \n } \n\n @Watch(\"showmenu\") \n showMenuChanged() { \n this.showmenu ? this.userAccountItems?.classList.add(\"open\") : this.userAccountItems?.classList.remove(\"open\"); \n // legg også til for å endre knappen \n }\n\n\n @Watch('hasauthenticationfunction')\n hasAuthenticationFunctionChanged() {\n this.renderUserButton();\n this.renderUserAccountItems();\n }\n \n @Watch(\"isloggedin\")\n isLoggedInChanged() { \n this.renderUserButton();\n this.renderUserAccountItems(); \n } \n\n @Watch(\"language\")\n languageChanged() { \n this.renderUserButton();\n this.renderUserAccountItems(); \n }\n\n @Watch(\"organization\")\n organizationChanged() {\n this.renderUserButton();\n this.renderUserAccountItems();\n }\n @Watch(\"userinfo\")\n userInfoChanged() {\n this.renderUserButton();\n this.renderUserAccountItems();\n }\n\n public static setup(selector: string, options: UserAccountOptions) {\n const element = getElement<UserAccount>(selector);\n if (options.active) {\n element.showmenu = options.active;\n }\n }\n}\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","// startup\n// Load entry module and return exports\n// This entry module is referenced by other modules so it can't be inlined\nvar __webpack_exports__ = __webpack_require__(8969);\n"],"names":["root","factory","exports","module","define","amd","self","cssWithMappingToString","list","toString","this","map","item","content","needLayer","concat","length","join","i","modules","media","dedupe","supports","layer","undefined","alreadyImportedModules","k","id","_k","push","Listen","eventName","selector","target","methodName","constructor","listeners","handler","addEventListeners","targetRoot","shadowRoot","listener","eventTarget","querySelector","addEventListener","e","call","Dispatch","propertyName","Object","defineProperty","get","emit","options","evtName","toDotCase","dispatchEvent","CustomEvent","Watch","attrName","watchAttributes","toKebabCase","propsInit","str","replace","toLowerCase","toCamelCase","m","toUpperCase","tryParseInt","value","parseInt","NaN","parseFloat","___CSS_LOADER_EXPORT___","getKartkatalogUrl","environment","getMinsideUrl","getGeonorgeUrl","language","getGeonorgeNedlastingUrl","replaceAndAddSpace","text","replaceWith","RegExp","convertTextToUrlSlug","handleSearchResultsClick","searchString","pushToDataLayer","event","category","activity","renderDropdownResultLink","searchResult","resultType","ShowDetailsUrl","Title","Uuid","getElement","document","getShadowRootElement","customElement","CustomElement","HTMLElement","super","connect","isConnected","appendChild","Toggle","propName","hasAttribute","attrValue","getAttribute","test","set","oldValue","console","warn","__connected","props","setAttribute","removeAttribute","cssMapping","btoa","base64","unescape","encodeURIComponent","JSON","stringify","data","sourceMapping","Prop","onAttributeChange","initializeProps","prop","plainAttributes","keys","forEach","v","cycleProps","getProps","attribValue","new","Component","args","tag","prototype","name","showShadowRoot","shadow","attachShadow","mode","observedAttributes","x","attributeChangedCallback","newValue","methodToCall","old","connectedCallback","render","template","createElement","innerHTML","getStyle","Promise","getExternalTemplate","cloneNode","markup","default","fragment","createRange","createContextualFragment","children","nodeName","firstChild","css","style","ready","resolve","_","customElements","UserAccount","hideListContainer","showmenu","clickOutsideUserAccountItemsContainer","bind","setup","container","userAccountContent","userAccountItems","userAccountListContainer","signinurl","signouturl","shouldShowAuthenticationButton","renderLoginButton","hasAuthenticationFunction","disconnectedCallback","removeEventListener","targetElement","composedPath","closest","loginIcon","classList","add","loginbutton","innerText","append","renderLogoutButton","mypageContainer","mypagebutton","mypageicon","renderUserButton","isloggedin","renderUserAccountItems","hasAuthenticationUrls","userInfoContainer","userAccountListTitle","userNameSpan","username","parse","userinfo","userAccountListItems","createListItem","listItem","anchor","href","logOutBlock","marginTop","logOutLink","logOutText","onclick","onSignOutClick","buttonClicked","remove","onSignInClick","window","location","showMenuChanged","hasAuthenticationFunctionChanged","isLoggedInChanged","languageChanged","organizationChanged","userInfoChanged","element","active","elementSelector","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","n","getter","__esModule","d","a","definition","key","o","enumerable","obj","hasOwnProperty","r","Symbol","toStringTag"],"sourceRoot":""}
1
+ {"version":3,"file":"UserAccount.js","mappings":"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","sources":["webpack://geonorge/webpack/universalModuleDefinition","webpack://geonorge/../node_modules/css-loader/dist/runtime/api.js","webpack://geonorge/../node_modules/super-custom-elements/src/listen.ts","webpack://geonorge/../node_modules/super-custom-elements/src/watch.ts","webpack://geonorge/../node_modules/super-custom-elements/src/util.ts","webpack://geonorge/./stories/main-navigation/user-account/user-account.scss","webpack://geonorge/./functions/urlHelpers.ts","webpack://geonorge/../node_modules/super-custom-elements/src/index.ts","webpack://geonorge/../node_modules/super-custom-elements/src/helpers.ts","webpack://geonorge/../node_modules/super-custom-elements/src/custom-element.ts","webpack://geonorge/../node_modules/super-custom-elements/src/toggle.ts","webpack://geonorge/./assets/svg/person.svg","webpack://geonorge/../node_modules/css-loader/dist/runtime/sourceMaps.js","webpack://geonorge/./assets/svg/login.svg","webpack://geonorge/../node_modules/super-custom-elements/src/prop.ts","webpack://geonorge/./assets/svg/logout.svg","webpack://geonorge/./stories/main-navigation/user-account/user-account.html","webpack://geonorge/../node_modules/super-custom-elements/src/component.ts","webpack://geonorge/./stories/main-navigation/user-account/user-account.ts","webpack://geonorge/webpack/bootstrap","webpack://geonorge/webpack/runtime/compat get default export","webpack://geonorge/webpack/runtime/define property getters","webpack://geonorge/webpack/runtime/hasOwnProperty shorthand","webpack://geonorge/webpack/runtime/make namespace object","webpack://geonorge/webpack/startup"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"geonorge\"] = factory();\n\telse\n\t\troot[\"geonorge\"] = root[\"geonorge\"] || {}, root[\"geonorge\"][\"UserAccount\"] = factory();\n})(self, () => {\nreturn ","\"use strict\";\n\n/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n*/\nmodule.exports = function (cssWithMappingToString) {\n var list = [];\n\n // return the list of modules as css string\n list.toString = function toString() {\n return this.map(function (item) {\n var content = \"\";\n var needLayer = typeof item[5] !== \"undefined\";\n if (item[4]) {\n content += \"@supports (\".concat(item[4], \") {\");\n }\n if (item[2]) {\n content += \"@media \".concat(item[2], \" {\");\n }\n if (needLayer) {\n content += \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\");\n }\n content += cssWithMappingToString(item);\n if (needLayer) {\n content += \"}\";\n }\n if (item[2]) {\n content += \"}\";\n }\n if (item[4]) {\n content += \"}\";\n }\n return content;\n }).join(\"\");\n };\n\n // import a list of modules into the list\n list.i = function i(modules, media, dedupe, supports, layer) {\n if (typeof modules === \"string\") {\n modules = [[null, modules, undefined]];\n }\n var alreadyImportedModules = {};\n if (dedupe) {\n for (var k = 0; k < this.length; k++) {\n var id = this[k][0];\n if (id != null) {\n alreadyImportedModules[id] = true;\n }\n }\n }\n for (var _k = 0; _k < modules.length; _k++) {\n var item = [].concat(modules[_k]);\n if (dedupe && alreadyImportedModules[item[0]]) {\n continue;\n }\n if (typeof layer !== \"undefined\") {\n if (typeof item[5] === \"undefined\") {\n item[5] = layer;\n } else {\n item[1] = \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\").concat(item[1], \"}\");\n item[5] = layer;\n }\n }\n if (media) {\n if (!item[2]) {\n item[2] = media;\n } else {\n item[1] = \"@media \".concat(item[2], \" {\").concat(item[1], \"}\");\n item[2] = media;\n }\n }\n if (supports) {\n if (!item[4]) {\n item[4] = \"\".concat(supports);\n } else {\n item[1] = \"@supports (\".concat(item[4], \") {\").concat(item[1], \"}\");\n item[4] = supports;\n }\n }\n list.push(item);\n }\n };\n return list;\n};","import { toDotCase } from './util';\r\n\r\ninterface ListenerMetadata {\r\n eventName: string;\r\n handler: Function;\r\n selector?: string;\r\n}\r\n\r\ninterface CustomEventOptions {\r\n bubbles?: boolean;\r\n composed?: boolean;\r\n detail?: any;\r\n}\r\n\r\ninterface DispatchEmitter {\r\n emit(options?: CustomEventOptions): void;\r\n}\r\n\r\nconst Listen = (eventName: string, selector?: string) => {\r\n return (target: any, methodName: string) => {\r\n if (!target.constructor.listeners) {\r\n target.constructor.listeners = [];\r\n }\r\n target.constructor.listeners.push({ selector: selector, eventName: eventName, handler: target[methodName] });\r\n };\r\n};\r\n\r\nconst addEventListeners = (target: any) => {\r\n if (target.constructor.listeners) {\r\n const targetRoot: any = target.shadowRoot || target;\r\n for (const listener of target.constructor.listeners as Array<ListenerMetadata>) {\r\n const eventTarget = (listener.selector)\r\n ? targetRoot.querySelector(listener.selector)\r\n ? targetRoot.querySelector(listener.selector) : null\r\n : target;\r\n if (eventTarget) {\r\n eventTarget.addEventListener(listener.eventName, (e: CustomEvent) => {\r\n listener.handler.call(target, e);\r\n });\r\n }\r\n }\r\n }\r\n};\r\n\r\nconst Dispatch = (eventName?: string) => {\r\n return (target: HTMLElement, propertyName: string) => {\r\n function get() {\r\n const self: EventTarget = this as EventTarget;\r\n return {\r\n emit(options?: CustomEventOptions) {\r\n const evtName = (eventName) ? eventName : toDotCase(propertyName);\r\n self.dispatchEvent(new CustomEvent(evtName, options));\r\n }\r\n };\r\n }\r\n Object.defineProperty(target, propertyName, { get });\r\n };\r\n};\r\n\r\nexport { Listen, addEventListeners, DispatchEmitter, Dispatch, CustomEventOptions, ListenerMetadata };","import { toKebabCase } from './util';\r\n\r\nexport const Watch = (attrName: string) => {\r\n return (target: any, propertyName: string) => {\r\n if (!target.constructor.watchAttributes) {\r\n target.constructor.watchAttributes = {};\r\n }\r\n target.constructor.watchAttributes[toKebabCase(attrName)] = propertyName;\r\n if (!target.constructor.propsInit) {\r\n target.constructor.propsInit = {};\r\n }\r\n target.constructor.propsInit[attrName] = null;\r\n };\r\n};","export const toKebabCase = (str: string) => {\r\n return str\r\n .replace(/([a-z])([A-Z])/g, '$1-$2')\r\n .replace(/[\\s_]+/g, '-')\r\n .toLowerCase();\r\n};\r\n\r\nexport const toCamelCase = (str: string) => {\r\n return str\r\n .toLowerCase()\r\n .replace(/(\\-\\w)/g, (m) => m[1].toUpperCase());\r\n};\r\n\r\nexport const toDotCase = (str: string) => {\r\n return str.replace(/(?!^)([A-Z])/g, ' $1')\r\n .replace(/[_\\s]+(?=[a-zA-Z])/g, '.')\r\n .toLowerCase();\r\n};\r\n\r\nexport const tryParseInt = (value: any) => {\r\n return (parseInt(value) == value && parseFloat(value) !== NaN) ? parseInt(value) : value;\r\n};\r\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.user-account-content{display:flex;flex-direction:row;padding:6px 8px 6px 8px;width:auto;color:#403f3f;gap:6px;font-family:\"Open Sans\",sans-serif;font-size:14px;justify-content:space-between;align-items:center;margin:0 6px 0 12px;background:rgba(0,0,0,0);border:none}.user-account-content:hover{color:#1073bc;cursor:pointer}.user-account-content span:last-child{display:none;align-items:center;flex-direction:row;padding:2px 1px;vertical-align:middle;font-weight:500}@media(min-width: 992px){.user-account-content span:last-child{display:inline-block}}.user-account-content span:first-child svg{height:24px;width:24px;vertical-align:middle}.menu-wrapper{font-size:14px;font-family:\"Open Sans\",sans-serif;position:relative;-moz-transition:all .3s ease-in-out;-o-transition:all .3s ease-in-out;-webkit-transition:all .3s ease-in-out;transition:all .3s ease-in-out}.menu-wrapper>div{max-height:0;overflow:hidden;-moz-transition:all .3s ease-in-out;-o-transition:all .3s ease-in-out;-webkit-transition:all .3s ease-in-out;transition:all .3s ease-in-out;position:absolute;display:flex;flex-direction:column;background-color:#fff;box-shadow:0px 1px 3px 0px rgba(0,0,0,.1019607843);width:375px;z-index:100;top:10px;right:-85px}.menu-wrapper>div>div:first-child>span{display:block}.menu-wrapper>div>div:first-child>span:last-child{font-weight:bolder}.menu-wrapper>div ul{list-style-type:none}.menu-wrapper>div ul li{margin:12px 0}.menu-wrapper>div ul li a,.menu-wrapper>div ul li a:link,.menu-wrapper>div ul li a:visited{color:#1a589f}.menu-wrapper>div>*:nth-child(odd){background-color:#f9f9f9;padding:32px;display:flex;flex-direction:column;gap:5px}.menu-wrapper>div>*:nth-child(even){background-color:#fff;margin-top:10px;display:flex;flex-direction:column;gap:5px;padding:0 32px}.menu-wrapper>div>*:last-child{padding:32px}.menu-wrapper>div a,.menu-wrapper>div a:link,.menu-wrapper>div a:visited{color:#000;display:flex;text-decoration:underline}.menu-wrapper>div a:hover{cursor:pointer}.menu-wrapper>div .menu-user-icon svg{padding-left:4px;width:24px;height:24px;color:#000}.menu-wrapper.open>div{max-height:1000px}.user-account-container{text-align:right;background-color:#d2cecb;max-height:0;overflow:hidden}.user-account-container.open{max-height:56px}.user-account-container a,.user-account-container button{display:inline-block;padding:.25em 1em .25em 1.1em;margin:15px 0;text-decoration:none;color:rgba(0,0,0,0);cursor:pointer;border:none;font-weight:normal;background:rgba(0,0,0,0)}.user-account-container a:not(:first-child),.user-account-container button:not(:first-child){border:none}`, \"\",{\"version\":3,\"sources\":[\"webpack://./stories/main-navigation/user-account/user-account.scss\",\"webpack://./style/variables/_typography.scss\",\"webpack://./style/mixins/_breakpoints.scss\",\"webpack://./style/mixins/_transition.scss\"],\"names\":[],\"mappings\":\"AAEA,sBACE,YAAA,CACA,kBAAA,CACA,uBAAA,CACA,UAAA,CACA,aAAA,CACA,OAAA,CACA,kCCTa,CDUb,cAAA,CACA,6BAAA,CACA,kBAAA,CACA,mBAAA,CACA,wBAAA,CAMA,WAAA,CALA,4BACE,aAAA,CACA,cAAA,CAIC,sCACG,YAAA,CACA,kBAAA,CACA,kBAAA,CACA,eAAA,CACA,qBAAA,CACA,eAAA,CErBA,yBFeH,sCAQO,oBAAA,CAAA,CAIA,2CACI,WAAA,CACA,UAAA,CACA,qBAAA,CAOhB,cACI,cAAA,CACA,kCC7CW,CD8CX,iBAAA,CG7CA,mCH8CA,CG7CA,iCH6CA,CG5CA,sCH4CA,CG3CA,8BH2CA,CAGA,kBACI,YAAA,CACA,eAAA,CGnDJ,mCHoDI,CGnDJ,iCHmDI,CGlDJ,sCHkDI,CGjDJ,8BHiDI,CACA,iBAAA,CACA,YAAA,CACA,qBAAA,CACA,qBAAA,CACA,kDAAA,CACA,WAAA,CACA,WAAA,CACA,QAAA,CACA,WAAA,CACA,uCACI,aAAA,CACA,kDACC,kBAAA,CAGL,qBACI,oBAAA,CACA,wBACI,aAAA,CACA,2FACI,aAAA,CAKZ,mCACI,wBAAA,CACA,YAAA,CACA,YAAA,CAEA,qBAAA,CACA,OAAA,CAEJ,oCACI,qBAAA,CACA,eAAA,CACA,YAAA,CAEA,qBAAA,CACA,OAAA,CACA,cAAA,CAEJ,+BACI,YAAA,CAEJ,yEACI,UAAA,CACA,YAAA,CACA,yBAAA,CAEJ,0BACI,cAAA,CAGA,sCACI,gBAAA,CACA,UAAA,CACA,WAAA,CACA,UAAA,CAKR,uBACI,iBAAA,CAKZ,wBACI,gBAAA,CACA,wBAAA,CACA,YAAA,CACA,eAAA,CACA,6BACI,eAAA,CAEJ,yDAEI,oBAAA,CACA,6BAAA,CACA,aAAA,CACA,oBAAA,CACA,mBAAA,CACA,cAAA,CACA,WAAA,CAEA,kBAAA,CAEA,wBAAA,CAEA,6FACI,WAAA\",\"sourcesContent\":[\"@import \\\"../../../style/all\\\";\\n\\n.user-account-content {\\n display: flex;\\n flex-direction: row;\\n padding: 6px 8px 6px 8px;\\n width: auto;\\n color: #403F3F;\\n gap: 6px;\\n font-family: $default-font;\\n font-size: 14px;\\n justify-content: space-between;\\n align-items: center;\\n margin: 0 6px 0 12px;\\n background: transparent;\\n &:hover {\\n color: #1073BC;\\n cursor: pointer;\\n}\\n \\n border: none; \\n span:last-child {\\n display: none; \\n align-items: center;\\n flex-direction: row;\\n padding: 2px 1px;\\n vertical-align: middle;\\n font-weight: 500;\\n @include breakpoint(laptop) {\\n display: inline-block;\\n } \\n }\\n span:first-child { \\n svg {\\n height: 24px;\\n width: 24px; \\n vertical-align: middle; \\n \\n }\\n \\n }\\n \\n}\\n.menu-wrapper {\\n font-size: 14px;\\n font-family: $default-font;\\n position: relative; \\n @include transition(all .3s ease-in-out);\\n \\n \\n > div {\\n max-height: 0;\\n overflow: hidden;\\n @include transition(all 0.3s ease-in-out);\\n position: absolute;\\n display: flex;\\n flex-direction: column;\\n background-color: white; \\n box-shadow: 0px 1px 3px 0px #0000001A;\\n width: 375px;\\n z-index: 100;\\n top: 10px;\\n right: -85px; \\n > div:first-child > span {\\n display: block;\\n &:last-child {\\n font-weight: bolder;\\n }\\n } \\n ul {\\n list-style-type: none;\\n li {\\n margin: 12px 0;\\n a, a:link, a:visited {\\n color: #1A589F;\\n }\\n }\\n }\\n \\n > *:nth-child(odd) {\\n background-color: #F9F9F9;\\n padding: 32px; \\n display: flex\\n ;\\n flex-direction: column;\\n gap: 5px;\\n }\\n > *:nth-child(even) {\\n background-color: white;\\n margin-top: 10px;\\n display: flex\\n ;\\n flex-direction: column;\\n gap: 5px;\\n padding: 0 32px;\\n }\\n > *:last-child {\\n padding: 32px; \\n }\\n a, a:link, a:visited {\\n color: #000000;\\n display: flex;\\n text-decoration: underline;\\n }\\n a:hover {\\n cursor: pointer;\\n }\\n .menu-user-icon {\\n svg {\\n padding-left: 4px;\\n width: 24px;\\n height: 24px;\\n color: #000000;\\n }\\n }\\n }\\n &.open { \\n > div {\\n max-height: 1000px;\\n }\\n }\\n \\n}\\n.user-account-container { \\n text-align: right;\\n background-color: #d2cecb;\\n max-height: 0;\\n overflow: hidden;\\n &.open {\\n max-height: 56px;\\n }\\n a,\\n button {\\n display: inline-block;\\n padding: 0.25em 1em 0.25em 1.1em;\\n margin: 15px 0;\\n text-decoration: none;\\n color: transparent;\\n cursor: pointer;\\n border: none;\\n \\n font-weight: normal;\\n \\n background: transparent; \\n \\n &:not(:first-child) {\\n border: none;\\n }\\n } \\n}\",\"$default-font: \\\"Open Sans\\\", sans-serif;\\n$header-font: \\\"Raleway\\\", sans-serif;\\n$default-font-size: 15px;\\n\",\"@mixin breakpoint($point) {\\n @if $point == desktop {\\n @media (min-width: $screen-desktop) {\\n @content;\\n }\\n } @else if $point == laptop {\\n @media (min-width: $screen-laptop) {\\n @content;\\n }\\n } @else if $point == tablet {\\n @media (min-width: $screen-tablet) {\\n @content;\\n }\\n } @else if $point == phablet {\\n @media (min-width: $screen-phablet) {\\n @content;\\n }\\n }\\n}\\n\",\"@mixin transition($transition...) {\\n -moz-transition: $transition;\\n -o-transition: $transition;\\n -webkit-transition: $transition;\\n transition: $transition;\\n}\\n\\n@mixin transition-property($property...) {\\n -moz-transition-property: $property;\\n -o-transition-property: $property;\\n -webkit-transition-property: $property;\\n transition-property: $property;\\n}\\n\\n@mixin transition-duration($duration...) {\\n -moz-transition-property: $duration;\\n -o-transition-property: $duration;\\n -webkit-transition-property: $duration;\\n transition-property: $duration;\\n}\\n\\n@mixin transition-timing-function($timing...) {\\n -moz-transition-timing-function: $timing;\\n -o-transition-timing-function: $timing;\\n -webkit-transition-timing-function: $timing;\\n transition-timing-function: $timing;\\n}\\n\\n@mixin transition-delay($delay...) {\\n -moz-transition-delay: $delay;\\n -o-transition-delay: $delay;\\n -webkit-transition-delay: $delay;\\n transition-delay: $delay;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Interfaces\nimport { SearchResultsForType } from 'interfaces/search';\n\nexport const getKartkatalogUrl = (environment: string) => {\n const environmentSlug = environment === 'dev' || environment === 'test' ? environment + '.' : '';\n return `https://kartkatalog.${environmentSlug}geonorge.no`;\n};\nexport const getMinsideUrl = (environment: string) => {\n const environmentSlug = environment === 'dev' || environment === 'test' ? environment + '.' : '';\n return `https://minside.${environmentSlug}geonorge.no`;\n};\n\nexport const getGeonorgeUrl = (language: string, environment: string) => {\n const environmentSlug = environment === 'dev' || environment === 'test' ? 'test.' : '';\n const selectedLanguageSlug = language === 'en' ? 'en/' : '';\n return `https://www.${environmentSlug}geonorge.no/${selectedLanguageSlug}`;\n};\n\nexport const getGeonorgeNedlastingUrl = (environment: string) => {\n const environmentSlug = environment === 'dev' || environment === 'test' ? 'test.' : '';\n return `https://nedlasting.${environmentSlug}geonorge.no`;\n};\n\n\n\nconst replaceAndAddSpace = (text: string, replace: string, replaceWith: string) => {\n text = text.replace(new RegExp(`([^s])([${replace}])([^s])`, 'ig'), `$1 ${replaceWith} $3`); // Character right before and after\n text = text.replace(new RegExp(`([^s])([${replace}])`, 'ig'), `$1 ${replaceWith}`); // Character right before\n text = text.replace(new RegExp(`([${replace}])([^s])`, 'ig'), `${replaceWith} $2`); // Character right after\n text = text.replace(new RegExp(`[${replace}]`, 'ig'), replaceWith); // No character right before or after\n \n return text;\n }\n\nexport const convertTextToUrlSlug = (text: string = '') => {\n // To lower case\n text = text.toLowerCase();\n\n // Character replace\n text = replaceAndAddSpace(text, \"&\", \"and\");\n text = replaceAndAddSpace(text, \"+\", \"plus\");\n text = text.replace(\"æ\", \"ae\");\n text = text.replace(\"ä\", \"ae\");\n text = text.replace(\"ø\", \"oe\");\n text = text.replace(\"ö\", \"oe\");\n text = text.replace(\"å\", \"aa\");\n\n // Whitespace replace\n text = text.replace(/( - )/g, \"-\");\n text = text.replace(/[\\s]+/g, \"-\");\n\n // Unwated character replace\n text = text.replace(/[^a-z0-9-]+/ig, \"\");\n\n // Remove any character before first and after last A-Z or 0-9\n text = text.replace(/^[^A-Z0-9]*|[^a-z0-9]*$/ig, \"\");\n\n return text;\n}\n\nconst handleSearchResultsClick = (searchString: string, pushToDataLayer?: Function) => {\n if (pushToDataLayer) {\n pushToDataLayer({\n event: 'updateSearchString',\n category: 'metadataSearch',\n activity: 'dropDownResultsClick',\n searchString: searchString\n });\n } else return false;\n}\n\nexport const renderDropdownResultLink = (searchResult: SearchResultsForType, resultType: string, searchString: string, environment: string, pushToDataLayer?: Function) => {\n return resultType === 'articles'\n ? `<a onClick=\"${handleSearchResultsClick(searchString, pushToDataLayer)}\" href=\"${searchResult.ShowDetailsUrl ? searchResult.ShowDetailsUrl : '#'}\">${searchResult.Title}</a>`\n : `<a onClick=\"${handleSearchResultsClick(searchString, pushToDataLayer)}\" href=\"${getKartkatalogUrl(environment)}/metadata/${convertTextToUrlSlug(searchResult.Title)}/${searchResult.Uuid}?search=${searchString}\">${searchResult.Title}</a>`\n\n}","export * from './component';\r\nexport * from './custom-element';\r\nexport * from './helpers';\r\nexport * from './listen';\r\nexport * from './prop';\r\nexport * from './toggle';\r\nexport * from './types';\r\nexport * from './watch';","export const getElement = <T extends HTMLElement>(selector: string): T => {\r\n return document.querySelector(selector);\r\n};\r\n\r\nexport const getShadowRootElement = <T extends HTMLElement>(customElement: HTMLElement, selector: string): T => {\r\n return customElement.shadowRoot.querySelector(selector);\r\n};","import { CustomElementOptions } from \"./types\";\r\n\r\nexport abstract class CustomElement extends HTMLElement {\r\n constructor() {\r\n super();\r\n }\r\n\r\n protected abstract setup(options?: CustomElementOptions): void;\r\n\r\n protected connect(selector: string): void {\r\n if (!this.isConnected) {\r\n document.querySelector(selector).appendChild(this);\r\n }\r\n }\r\n}\r\n","import { toKebabCase } from './util';\r\n\r\nexport const Toggle = (): any => {\r\n return (target: any, propName: any) => {\r\n function get() {\r\n const getAttribute = (propName: string) => {\r\n if (this.hasAttribute(propName)) {\r\n const attrValue = this.getAttribute(propName);\r\n if (/^(true|false|^$)$/.test(attrValue)) {\r\n return attrValue == 'true' || attrValue == '';\r\n } else {\r\n return false;\r\n }\r\n }\r\n return false;\r\n };\r\n return getAttribute(propName);\r\n }\r\n function set(value: any) {\r\n const oldValue = value;\r\n if (value != undefined) {\r\n switch (typeof value) {\r\n case 'boolean':\r\n break;\r\n case 'string':\r\n if (/^(true|false|^$)$/.test(value)) {\r\n value = oldValue == 'true' || oldValue == '';\r\n } else {\r\n console.warn(`TypeError: Cannot set boolean toggle property '${propName}' to '${value}'`);\r\n value = false;\r\n }\r\n break;\r\n default:\r\n throw (`TypeError: Cannot set boolean toggle property '${propName}' to '${value}'`);\r\n }\r\n }\r\n if (this.__connected) {\r\n this.props[propName] = value || false;\r\n if (oldValue !== '' && oldValue !== null) {\r\n this.setAttribute(propName, value);\r\n } else {\r\n if (value) {\r\n this.setAttribute(propName, '');\r\n } else {\r\n this.removeAttribute(propName);\r\n }\r\n }\r\n } else {\r\n if (!this.hasAttribute(toKebabCase(propName))) {\r\n this.constructor.propsInit[propName] = value;\r\n }\r\n }\r\n }\r\n if (!target.constructor.propsInit) {\r\n target.constructor.propsInit = {};\r\n }\r\n target.constructor.propsInit[propName] = null;\r\n Object.defineProperty(target, propName, { get, set });\r\n };\r\n};\r\n","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 -960 960 960\\\"><path fill=\\\"currentColor\\\" d=\\\"M480-480q-66 0-113-47t-47-113q0-66 47-113t113-47q66 0 113 47t47 113q0 66-47 113t-113 47ZM160-160v-112q0-34 17.5-62.5T224-378q62-31 126-46.5T480-440q66 0 130 15.5T736-378q29 15 46.5 43.5T800-272v112H160Zm80-80h480v-32q0-11-5.5-20T700-306q-54-27-109-40.5T480-360q-56 0-111 13.5T260-306q-9 5-14.5 14t-5.5 20v32Zm240-320q33 0 56.5-23.5T560-640q0-33-23.5-56.5T480-720q-33 0-56.5 23.5T400-640q0 33 23.5 56.5T480-560Zm0-80Zm0 400Z\\\"></path></svg>\"","\"use strict\";\n\nmodule.exports = function (item) {\n var content = item[1];\n var cssMapping = item[3];\n if (!cssMapping) {\n return content;\n }\n if (typeof btoa === \"function\") {\n var base64 = btoa(unescape(encodeURIComponent(JSON.stringify(cssMapping))));\n var data = \"sourceMappingURL=data:application/json;charset=utf-8;base64,\".concat(base64);\n var sourceMapping = \"/*# \".concat(data, \" */\");\n return [content].concat([sourceMapping]).join(\"\\n\");\n }\n return [content].join(\"\\n\");\n};","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 -960 960 960\\\"><path fill=\\\"currentColor\\\" d=\\\"M480-120v-80h280v-560H480v-80h280q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H480Zm-80-160-55-58 102-102H120v-80h327L345-622l55-58 200 200-200 200Z\\\"></path></svg>\"","import { toKebabCase, tryParseInt } from './util';\r\n\r\nexport const Prop = (): any => {\r\n return (target: any, propName: any) => {\r\n const attrName = toKebabCase(propName);\r\n function get() {\r\n if (this.props[propName]) {\r\n return this.props[propName];\r\n }\r\n return this.getAttribute(attrName);\r\n }\r\n function set(value: any) {\r\n if (this.__connected) {\r\n const oldValue = this.props[propName];\r\n this.props[propName] = tryParseInt(value);\r\n if (typeof value != 'object') {\r\n this.setAttribute(attrName, value);\r\n } else {\r\n this.onAttributeChange(attrName, oldValue, value, false);\r\n }\r\n } else {\r\n if (!this.hasAttribute(toKebabCase(propName))) {\r\n this.constructor.propsInit[propName] = value;\r\n }\r\n }\r\n }\r\n if (!target.constructor.propsInit) {\r\n target.constructor.propsInit = {};\r\n }\r\n target.constructor.propsInit[propName] = null;\r\n Object.defineProperty(target, propName, { get, set });\r\n };\r\n};\r\n\r\nconst getProps = (target: any) => {\r\n const watchAttributes = target.constructor.watchAttributes;\r\n const plainAttributes = { ...watchAttributes };\r\n Object.keys(plainAttributes).forEach(v => plainAttributes[v] = '');\r\n const cycleProps = { ...plainAttributes, ...target.constructor.propsInit };\r\n return Object.keys(cycleProps);\r\n};\r\n\r\nexport const initializeProps = (target: any) => {\r\n const watchAttributes = target.constructor.watchAttributes;\r\n for (let prop of getProps(target)) {\r\n if (watchAttributes) {\r\n if (watchAttributes[toKebabCase(prop)] == null) {\r\n watchAttributes[toKebabCase(prop)] = '';\r\n } else {\r\n const attribValue = target.props[prop] || target.getAttribute(toKebabCase(prop));\r\n if (typeof target[watchAttributes[prop]] == 'function') {\r\n target[watchAttributes[prop]]({ new: attribValue });\r\n }\r\n }\r\n }\r\n if (target.constructor.propsInit[prop]) {\r\n if (!target.hasAttribute(toKebabCase(prop))) {\r\n target[prop] = target.constructor.propsInit[prop];\r\n }\r\n }\r\n }\r\n};","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 -960 960 960\\\"><path fill=\\\"currentColor\\\" d=\\\"M200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h240q17 0 28.5 11.5T480-800q0 17-11.5 28.5T440-760H200v560h240q17 0 28.5 11.5T480-160q0 17-11.5 28.5T440-120H200Zm487-320H400q-17 0-28.5-11.5T360-480q0-17 11.5-28.5T400-520h287l-75-75q-11-11-11-27t11-28q11-12 28-12.5t29 11.5l143 143q12 12 12 28t-12 28L669-309q-12 12-28.5 11.5T612-310q-11-12-10.5-28.5T613-366l74-74Z\\\"></path></svg>\"","export default \"<template>\\n \\n <button id=\\\"user-account-container\\\" class=\\\"user-account-content\\\"> \\n \\n </button>\\n \\n <div id=\\\"user-account-menu-wrapper\\\" class=\\\"menu-wrapper\\\">\\n \\n </div>\\n \\n </template> \";","import { addEventListeners, ListenerMetadata } from './listen';\r\nimport { initializeProps } from './prop';\r\nimport { ComponentMetadata, KeyValue } from './types';\r\nimport { toKebabCase, toCamelCase } from './util';\r\n\r\nexport const Component = (args: ComponentMetadata) => {\r\n return (target: any) => {\r\n const tag: string = args.tag || toKebabCase(target.prototype.constructor.name);\r\n const customElement: any = class extends (target as { new(): any }) {\r\n protected static __connected: boolean = false;\r\n protected static propsInit: KeyValue;\r\n protected static watchAttributes: KeyValue;\r\n protected static listeners: ListenerMetadata[];\r\n protected static ready: Promise<boolean> = new Promise((resolve, _) => resolve(true));\r\n public props: KeyValue = {};\r\n private showShadowRoot: boolean;\r\n\r\n public static get observedAttributes(): string[] {\r\n return Object.keys(this.propsInit || {}).map(x => toKebabCase(x));\r\n }\r\n\r\n constructor() {\r\n super();\r\n\r\n this.showShadowRoot = args.shadow == null ? true : args.shadow;\r\n\r\n if (!this.shadowRoot && this.showShadowRoot) {\r\n this.attachShadow({ mode: 'open' });\r\n }\r\n }\r\n\r\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\r\n this.onAttributeChange(name, oldValue, newValue);\r\n }\r\n\r\n public onAttributeChange(name: string, oldValue: string, newValue: string, set: boolean = true): void {\r\n if (oldValue != newValue) {\r\n if (set) { this[toCamelCase(name)] = newValue; }\r\n const watchAttributes: KeyValue = (this.constructor as any).watchAttributes;\r\n if (watchAttributes && watchAttributes[name]) {\r\n const methodToCall: string = watchAttributes[name];\r\n if (this.__connected) {\r\n if (typeof this[methodToCall] == 'function') {\r\n this[methodToCall]({ old: oldValue, new: newValue });\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n public async connectedCallback(): Promise<void> {\r\n await this.render();\r\n super.connectedCallback && super.connectedCallback();\r\n this.__connected = true;\r\n\r\n addEventListeners(this);\r\n initializeProps(this);\r\n }\r\n\r\n private async render(): Promise<void> {\r\n if (this.__connected) {\r\n return;\r\n }\r\n\r\n const template = document.createElement('template');\r\n template.innerHTML = await this.getStyle();\r\n\r\n if (args.template instanceof Promise) {\r\n template.content.appendChild(await this.getExternalTemplate());\r\n } else if (typeof args.template === 'string') {\r\n template.innerHTML += args.template;\r\n }\r\n\r\n (this.showShadowRoot ? this.shadowRoot : this).appendChild(template.content.cloneNode(true));\r\n }\r\n\r\n private async getExternalTemplate(): Promise<DocumentFragment> {\r\n const templateModule = await (args.template as Promise<typeof import('*.html')>);\r\n const markup = templateModule.default.toString();\r\n const fragment = document.createRange().createContextualFragment(markup);\r\n\r\n if (fragment.children.length === 1 && fragment.children[0].nodeName === 'TEMPLATE') {\r\n return (fragment.firstChild as HTMLTemplateElement).content;\r\n }\r\n return fragment;\r\n }\r\n\r\n private async getStyle(): Promise<string> {\r\n let css: string;\r\n\r\n if (args.style instanceof Promise) {\r\n const styleModule = await args.style;\r\n css = styleModule.default.toString();\r\n } else if (typeof args.style === 'string') {\r\n css = args.style;\r\n }\r\n\r\n return `${css ? `<style>${css}</style>` : ''}`\r\n }\r\n };\r\n\r\n if (!customElements.get(tag)) {\r\n customElements.define(tag, customElement);\r\n }\r\n\r\n return customElement;\r\n };\r\n};\r\n\r\n\r\n","import {\n Component,\n CustomElement,\n CustomElementOptions,\n Prop,\n Dispatch,\n DispatchEmitter,\n Listen,\n Watch,\n getElement,\n getShadowRootElement,\n Toggle,\n} from \"super-custom-elements\";\n\n// Assets\nimport UserAccountIcon from \"../../../assets/svg/logout.svg\";\nimport LoginIcon from '../../../assets/svg/login.svg';\nimport CloseAccountIcon from '../../../assets/svg/person.svg';\nimport { getMinsideUrl } from \"../../../functions/urlHelpers\";\n\n\ninterface UserAccountOptions extends CustomElementOptions {\n active?: boolean;\n onClick?: () => void,\n onSignInClick?: () => void,\n onSignOutClick?: () => void,\n onNorwegianLanguageSelect?: () => void,\n onEnglishLanguageSelect?: () => void\n\n}\ninterface MenuItem extends Object {\n Name: string,\n SubMenuItem: Array<MenuItem>,\n Url: string\n}\n@Component({\n tag: \"user-account\",\n template: import(\"./user-account.html\"),\n style: import(\"./user-account.scss\"),\n})\nexport class UserAccount extends CustomElement {\n private static readonly elementSelector = \"user-account\";\n private userAccountContent: HTMLButtonElement;\n private userAccountItems: HTMLDivElement;\n private userAccountListContainer: HTMLDivElement;\n \n\n @Prop() id: string;\n @Prop() environment: string;\n @Prop() language: string;\n @Prop() signinurl: string;\n @Prop() signouturl: string;\n @Prop() organization: string\n @Prop() userinfo: string;\n @Toggle() isloggedin: boolean;\n @Toggle() showmenu: boolean;\n @Toggle() hasAuthenticationFunction: boolean;\n @Dispatch('onSignInClick') onSignInClick: DispatchEmitter;\n @Dispatch('onSignOutClick') onSignOutClick: DispatchEmitter;\n @Dispatch('onNorwegianLanguageSelect') onNorwegianLanguageSelect: DispatchEmitter;\n @Dispatch('onEnglishLanguageSelect') onEnglishLanguageSelect: DispatchEmitter;\n\n constructor() {\n super();\n \n this.clickOutsideUserAccountItemsContainer =\n this.clickOutsideUserAccountItemsContainer.bind(this); \n }\n \n setup(options?: UserAccountOptions): void {\n this.connect(options.container);\n if (options.id) {\n this.id = options.id;\n }\n }\n \n connectedCallback() {\n this.userAccountContent = getShadowRootElement(this, \"#user-account-container\");\n this.userAccountItems = getShadowRootElement(this, \"#user-account-menu-wrapper\"); \n this.userAccountListContainer = getShadowRootElement(this, \"#user-account-list-container\"); \n \n const hasAuthenticationUrls = this.signinurl && this.signouturl;\n\n\n if (hasAuthenticationUrls || this.shouldShowAuthenticationButton()) { \n this.renderLoginButton();\n }\n document.addEventListener(\n \"click\",\n this.clickOutsideUserAccountItemsContainer\n ); \n }\n shouldShowAuthenticationButton() {\n return this.hasAuthenticationFunction?.toString() === \"\" || this.hasAuthenticationFunction?.toString() === \"true\";\n}\n disconnectedCallback() {\n document.removeEventListener(\n \"click\",\n this.clickOutsideUserAccountItemsContainer\n );\n }\n\n hideListContainer = () => {\n this.showmenu = false;\n };\n\n clickOutsideUserAccountItemsContainer(event: MouseEvent) {\n const targetElement = event.composedPath()[0] as Element;\n if (\n targetElement.closest(\"#user-account-item-list-container\") ||\n targetElement.closest(\"#user-account-toggle-button\")\n )\n return;\n this.hideListContainer();\n }\n\n renderLoginButton() {\n this.userAccountContent.innerHTML = \"\"; \n const loginIcon = document.createElement(\"span\");\n loginIcon.classList.add(\"menu-user-icon\");\n loginIcon.innerHTML = LoginIcon;\n\n const loginbutton = document.createElement(\"span\"); \n loginbutton.innerText = this.language === \"en\" ? \"Sign in\" : \"Logg inn\";\n\n this.userAccountContent.append(loginIcon, loginbutton);\n}\n\nrenderLogoutButton() {\n this.userAccountContent.innerHTML = \"\";\n\n const mypageContainer = document.createElement(\"div\");\n mypageContainer.id = \"user-account-toggle-button\";\n mypageContainer.classList.add(\"user-account-button\");\n const mypagebutton = document.createElement(\"span\");\n let username = JSON.parse(this.userinfo)?.name; \n if (username && username.length > 10) {\n username = username.substring(0, 8) + '...';\n }\n mypagebutton.innerText = username;\n\n const mypageicon = document.createElement(\"span\");\n mypageicon.classList.add(\"close-user-icon\");\n mypageicon.innerHTML = CloseAccountIcon;\n mypageContainer.appendChild(mypageicon);\n mypageContainer.appendChild(mypagebutton);\n this.userAccountContent.append(mypageContainer);\n}\n\nrenderUserButton() {\n const hasAuthenticationUrls = this.signinurl && this.signouturl;\n if(hasAuthenticationUrls || this.shouldShowAuthenticationButton()) { \n this.isloggedin ? this.renderLogoutButton() : this.renderLoginButton();\n }\n}\n\n\nrenderUserAccountItems() {\n const hasAuthenticationUrls = this.signinurl && this.signouturl;\n if (this.isloggedin || hasAuthenticationUrls || this.shouldShowAuthenticationButton()) {\n this.userAccountItems.innerHTML = \"\"; \n\n const userAccountListContainer = document.createElement(\"div\");\n const userInfoContainer = document.createElement(\"div\");\n const userAccountListTitle = document.createElement(\"span\");\n userAccountListTitle.innerText = this.language === \"en\" ? \"User account\" : \"Pålogget som:\";\n userInfoContainer.appendChild(userAccountListTitle);\n const userNameSpan = document.createElement(\"strong\");\n const username = JSON.parse(this.userinfo)?.name; \n userNameSpan.innerText = username;\n userInfoContainer.appendChild(userNameSpan);\n\n // Create and append email\n // const userEpostSpan = document.createElement(\"div\");\n // const email = JSON.parse(this.userinfo)?.email; \n // userEpostSpan.innerText = email;\n // userInfoContainer.appendChild(userEpostSpan);\n\n userAccountListContainer.appendChild(userInfoContainer);\n const userAccountListItems = document.createElement(\"ul\");\n \n const createListItem = (text: string) => {\n const listItem = document.createElement(\"li\");\n const anchor = document.createElement(\"a\");\n anchor.innerText = text;\n anchor.href = getMinsideUrl(this.environment);\n listItem.appendChild(anchor);\n return listItem;\n }; \n userAccountListItems.appendChild(createListItem(this.language === \"en\" ? \"My page\" : \"Min side\"));\n //userAccountListItems.appendChild(createListItem(this.language === \"en\" ? \"My shortcuts\" : \"Mine snarveier\"));\n //userAccountListItems.appendChild(createListItem(this.language === \"en\" ? \"Settings\" : \"Innstillinger\"));\n\n userAccountListContainer.appendChild(userAccountListItems);\n\n\n //const kartverketBlock = document.createElement(\"div\"); \n\n\n // const presentsSpan = document.createElement(\"span\");\n // presentsSpan.innerText = this.language === \"en\" ? \"Presents\" : \"Representerer\";\n // kartverketBlock.appendChild(presentsSpan);\n\n // const companyNameSpan = document.createElement(\"strong\");\n // const orgname = JSON.parse(this.organization)?.organizationName; \n // companyNameSpan.innerText = orgname; // Replace with actual company name if available\n // kartverketBlock.appendChild(companyNameSpan);\n\n // const orgNumberSpan = document.createElement(\"span\");\n // const orgnumber = JSON.parse(this.organization)?.organizationNumber; \n // orgNumberSpan.innerText = \"orgnr: \" + orgnumber; // Replace with actual org number if available\n //kartverketBlock.appendChild(orgNumberSpan);\n\n // const changeOrgLink = document.createElement(\"a\");\n // changeOrgLink.innerText = this.language === \"en\" ? \"Change organization\" : \"Endre organisasjon\";\n // changeOrgLink.href = this.signouturl;\n // kartverketBlock.appendChild(changeOrgLink);\n\n // Add some spacing for layout\n //kartverketBlock.style.marginTop = \"10px\";\n //kartverketBlock.style.display = \"flex\";\n //kartverketBlock.style.flexDirection = \"column\";\n //kartverketBlock.style.gap = \"5px\"; // Adds spacing between spans\n\n //userAccountListContainer.appendChild(kartverketBlock);\n\n const logOutBlock = document.createElement(\"div\");\n logOutBlock.style.marginTop = \"10px\"; // Add spacing\n const loginIcon = document.createElement(\"span\");\n loginIcon.classList.add(\"menu-user-icon\");\n loginIcon.innerHTML = UserAccountIcon;\n const logOutLink = document.createElement(\"a\");\n logOutLink.setAttribute(\"role\", \"button\");\n logOutLink.href = \"#\";\n const logOutText = document.createElement(\"span\");\n logOutText.innerText = this.language === \"en\" ? \"Log out\" : \"Logg ut\";\n logOutLink.appendChild(loginIcon); \n logOutLink.appendChild(logOutText);\n if (this.shouldShowAuthenticationButton()) {\n logOutLink.onclick = (event) => {\n event.preventDefault(); \n this.onSignOutClick.emit();\n };\n } else {\n logOutLink.href = this.signouturl;\n }\n \n logOutBlock.appendChild(logOutLink);\n \n userAccountListContainer.appendChild(logOutBlock);\n\n this.userAccountItems.appendChild(userAccountListContainer);\n } else {\n this.userAccountItems.innerHTML = \"\";\n }\n}\n\n@Listen('click', '#user-account-container')\nbuttonClicked(event: MouseEvent) {\n if (this.isloggedin) {\n this.showmenu = !this.showmenu;\n this.showmenu ? this.userAccountItems?.classList.add(\"open\") : this.userAccountItems?.classList.remove(\"open\");\n this.showmenu ? this.userAccountListContainer?.classList.add(\"open\") : this.userAccountListContainer?.classList.remove(\"open\");\n\n } else {\n if(this.shouldShowAuthenticationButton()) {\n this.onSignInClick.emit();\n } else { \n window.location.href = this.signinurl;\n }\n }\n\n \n } \n\n @Watch(\"showmenu\") \n showMenuChanged() { \n this.showmenu ? this.userAccountItems?.classList.add(\"open\") : this.userAccountItems?.classList.remove(\"open\"); \n // legg også til for å endre knappen \n }\n\n\n @Watch('hasauthenticationfunction')\n hasAuthenticationFunctionChanged() {\n this.renderUserButton();\n this.renderUserAccountItems();\n }\n \n @Watch(\"isloggedin\")\n isLoggedInChanged() { \n this.renderUserButton();\n this.renderUserAccountItems(); \n } \n\n @Watch(\"language\")\n languageChanged() { \n this.renderUserButton();\n this.renderUserAccountItems(); \n }\n\n @Watch(\"organization\")\n organizationChanged() {\n this.renderUserButton();\n this.renderUserAccountItems();\n }\n @Watch(\"userinfo\")\n userInfoChanged() {\n this.renderUserButton();\n this.renderUserAccountItems();\n }\n\n public static setup(selector: string, options: UserAccountOptions) {\n const element = getElement<UserAccount>(selector);\n if (options.active) {\n element.showmenu = options.active;\n }\n }\n}\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","// startup\n// Load entry module and return exports\n// This entry module is referenced by other modules so it can't be inlined\nvar __webpack_exports__ = __webpack_require__(8969);\n"],"names":["root","factory","exports","module","define","amd","self","cssWithMappingToString","list","toString","this","map","item","content","needLayer","concat","length","join","i","modules","media","dedupe","supports","layer","undefined","alreadyImportedModules","k","id","_k","push","Listen","eventName","selector","target","methodName","constructor","listeners","handler","addEventListeners","targetRoot","shadowRoot","listener","eventTarget","querySelector","addEventListener","e","call","Dispatch","propertyName","Object","defineProperty","get","emit","options","evtName","toDotCase","dispatchEvent","CustomEvent","Watch","attrName","watchAttributes","toKebabCase","propsInit","str","replace","toLowerCase","toCamelCase","m","toUpperCase","tryParseInt","value","parseInt","NaN","parseFloat","___CSS_LOADER_EXPORT___","getKartkatalogUrl","environment","getMinsideUrl","getGeonorgeUrl","language","getGeonorgeNedlastingUrl","replaceAndAddSpace","text","replaceWith","RegExp","convertTextToUrlSlug","handleSearchResultsClick","searchString","pushToDataLayer","event","category","activity","renderDropdownResultLink","searchResult","resultType","ShowDetailsUrl","Title","Uuid","getElement","document","getShadowRootElement","customElement","CustomElement","HTMLElement","super","connect","isConnected","appendChild","Toggle","propName","hasAttribute","attrValue","getAttribute","test","set","oldValue","console","warn","__connected","props","setAttribute","removeAttribute","cssMapping","btoa","base64","unescape","encodeURIComponent","JSON","stringify","data","sourceMapping","Prop","onAttributeChange","initializeProps","prop","plainAttributes","keys","forEach","v","cycleProps","getProps","attribValue","new","Component","args","tag","prototype","name","showShadowRoot","shadow","attachShadow","mode","observedAttributes","x","attributeChangedCallback","newValue","methodToCall","old","connectedCallback","render","template","createElement","innerHTML","getStyle","Promise","getExternalTemplate","cloneNode","markup","default","fragment","createRange","createContextualFragment","children","nodeName","firstChild","css","style","ready","resolve","_","customElements","UserAccount","hideListContainer","showmenu","clickOutsideUserAccountItemsContainer","bind","setup","container","userAccountContent","userAccountItems","userAccountListContainer","signinurl","signouturl","shouldShowAuthenticationButton","renderLoginButton","hasAuthenticationFunction","disconnectedCallback","removeEventListener","targetElement","composedPath","closest","loginIcon","classList","add","loginbutton","innerText","append","renderLogoutButton","mypageContainer","mypagebutton","username","parse","userinfo","substring","mypageicon","renderUserButton","isloggedin","renderUserAccountItems","hasAuthenticationUrls","userInfoContainer","userAccountListTitle","userNameSpan","userAccountListItems","createListItem","listItem","anchor","href","logOutBlock","marginTop","logOutLink","logOutText","onclick","preventDefault","onSignOutClick","buttonClicked","remove","onSignInClick","window","location","showMenuChanged","hasAuthenticationFunctionChanged","isLoggedInChanged","languageChanged","organizationChanged","userInfoChanged","element","active","elementSelector","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","n","getter","__esModule","d","a","definition","key","o","enumerable","obj","hasOwnProperty","r","Symbol","toStringTag"],"sourceRoot":""}