@kartverket/geonorge-web-components 4.0.10 → 4.0.12

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.
@@ -1 +1 @@
1
- {"version":3,"file":"MainNavigation.js","mappings":"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","sources":["webpack://geonorge/webpack/universalModuleDefinition","webpack://geonorge/./stories/main-navigation/download-items/download-items.scss","webpack://geonorge/./stories/main-navigation/main-menu/main-menu.scss","webpack://geonorge/./stories/main-navigation/main-navigation.scss","webpack://geonorge/./stories/main-navigation/main-search-field/main-search-field.scss","webpack://geonorge/./stories/main-navigation/map-items/map-items.scss","webpack://geonorge/./stories/main-navigation/search-type-selector/search-type-selector.scss","webpack://geonorge/./stories/main-navigation/user-account/user-account.scss","webpack://geonorge/./stories/main-navigation/download-items/download-items.html","webpack://geonorge/./stories/main-navigation/main-menu/main-menu.html","webpack://geonorge/./stories/main-navigation/main-navigation.html","webpack://geonorge/./stories/main-navigation/main-search-field/main-search-field.html","webpack://geonorge/./stories/main-navigation/map-items/map-items.html","webpack://geonorge/./stories/main-navigation/search-type-selector/search-type-selector.html","webpack://geonorge/./stories/main-navigation/user-account/user-account.html","webpack://geonorge/../node_modules/css-loader/dist/runtime/api.js","webpack://geonorge/../node_modules/css-loader/dist/runtime/sourceMaps.js","webpack://geonorge/../node_modules/super-custom-elements/src/component.ts","webpack://geonorge/../node_modules/super-custom-elements/src/custom-element.ts","webpack://geonorge/../node_modules/super-custom-elements/src/helpers.ts","webpack://geonorge/../node_modules/super-custom-elements/src/index.ts","webpack://geonorge/../node_modules/super-custom-elements/src/listen.ts","webpack://geonorge/../node_modules/super-custom-elements/src/prop.ts","webpack://geonorge/../node_modules/super-custom-elements/src/toggle.ts","webpack://geonorge/../node_modules/super-custom-elements/src/util.ts","webpack://geonorge/../node_modules/super-custom-elements/src/watch.ts","webpack://geonorge/./assets/svg/burgerG.svg","webpack://geonorge/./assets/svg/close-icon-black.svg","webpack://geonorge/./assets/svg/download.svg","webpack://geonorge/./assets/svg/geonorge-navbar-logo.svg","webpack://geonorge/./assets/svg/geonorge-navbar-logo_dev.svg","webpack://geonorge/./assets/svg/geonorge-navbar-logo_test.svg","webpack://geonorge/./assets/svg/location.svg","webpack://geonorge/./assets/svg/login.svg","webpack://geonorge/./assets/svg/logout.svg","webpack://geonorge/./assets/svg/person.svg","webpack://geonorge/./assets/svg/search-icon.svg","webpack://geonorge/./assets/svg/trash-icon.svg","webpack://geonorge/./functions/apiHelpers.ts","webpack://geonorge/./functions/cookieHelpers.ts","webpack://geonorge/./functions/downloadItemHelpers.ts","webpack://geonorge/./functions/guiHelpers.ts","webpack://geonorge/./functions/mapItemHelpers.ts","webpack://geonorge/./functions/urlHelpers.ts","webpack://geonorge/./stories/main-navigation/download-items/download-items.ts","webpack://geonorge/./stories/main-navigation/main-menu/main-menu.ts","webpack://geonorge/./stories/main-navigation/main-navigation.ts","webpack://geonorge/./stories/main-navigation/main-search-field/main-search-field.ts","webpack://geonorge/./stories/main-navigation/map-items/map-items.ts","webpack://geonorge/./stories/main-navigation/search-type-selector/search-type-selector.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\"][\"MainNavigation\"] = factory();\n})(self, () => {\nreturn ","// 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, `*{box-sizing:border-box}.download-items-container .icon-toggle-button{margin-top:.4em;-moz-transition:all .1s ease-in-out;-o-transition:all .1s ease-in-out;-webkit-transition:all .1s ease-in-out;transition:all .1s ease-in-out;border:none;background:rgba(0,0,0,0);color:#403f3f;padding:0;position:relative;cursor:pointer}@media(min-width: 37.5em){.download-items-container .icon-toggle-button{padding:0 4px}}.download-items-container .icon-toggle-button.open{color:#414042}.download-items-container .icon-toggle-button .counter{display:flex;justify-content:center;align-items:center;-webkit-border-radius:35%;border-radius:35%;background-color:#fe5000;color:#fff;margin-top:-0.35em;margin-left:-0.2em;position:absolute;text-align:center;min-width:2em;left:2em;line-height:1.4;height:1.4em;font-size:.8em}@media(min-width: 37.5em){.download-items-container .icon-toggle-button .counter{height:1.5em;min-width:2em;line-height:1.5;font-size:.8em}}.download-items-container .icon-toggle-button .counter.hidden{display:none}.download-items-container .icon-toggle-button .download-icon svg{width:35px;height:22px}@media(min-width: 37.5em){.download-items-container .icon-toggle-button .download-icon svg{width:42px;height:27px}}.download-items-container .icon-toggle-button .download-icon svg:hover{color:#1073bc;cursor:pointer}.download-items-container .download-item-list-wrapper{position:absolute}.download-items-container .download-item-list-wrapper .download-item-list-container{-webkit-border-radius:0 0 3px 3px;border-radius:0 0 3px 3px;-moz-transition:all .1s ease-in-out;-o-transition:all .1s ease-in-out;-webkit-transition:all .1s ease-in-out;transition:all .1s ease-in-out;box-sizing:border-box;overflow:hidden;max-height:0;position:relative;top:10px;background-color:#fbfcfd;right:205px;width:260px}@media(min-width: 37.5em){.download-items-container .download-item-list-wrapper .download-item-list-container{right:245px;width:300px}}@media print{.download-items-container .download-item-list-wrapper .download-item-list-container{display:none}}.download-items-container .download-item-list-wrapper .download-item-list-container.open{-webkit-box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12);-moz-box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12);box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12);height:auto;max-height:300px;overflow:auto}.download-items-container .download-item-list-wrapper .download-item-list-container .page-link-element{display:block;text-align:center;padding:8px 16px;color:#3767c7;text-decoration:none;cursor:pointer;border:none;font-size:16px;font-weight:400;width:100%;font-family:\"Open Sans\",sans-serif}.download-items-container .download-item-list-wrapper .download-item-list-container .page-link-element:hover{text-decoration:underline;color:#0056b3}.download-items-container .download-item-list-wrapper .download-item-list-container ul{list-style:none;padding:0;margin:0}.download-items-container .download-item-list-wrapper .download-item-list-container ul li{-moz-transition:all .15s ease-in-out;-o-transition:all .15s ease-in-out;-webkit-transition:all .15s ease-in-out;transition:all .15s ease-in-out;display:flex;align-items:center;justify-content:space-between;padding:8px 16px;font-size:14px;font-weight:normal}.download-items-container .download-item-list-wrapper .download-item-list-container ul li:hover{background-color:rgba(0,0,0,.05)}.download-items-container .download-item-list-wrapper .download-item-list-container ul li .list-icon{margin-left:8px;cursor:pointer;background:none;border:none}.download-items-container .download-item-list-wrapper .download-item-list-container ul li .list-icon svg{color:#e00d0d;width:20px}`, \"\",{\"version\":3,\"sources\":[\"webpack://./stories/main-navigation/download-items/download-items.scss\",\"webpack://./style/mixins/_transition.scss\",\"webpack://./style/mixins/_breakpoints.scss\",\"webpack://./style/mixins/_border-radius.scss\",\"webpack://./style/variables/_colors.scss\",\"webpack://./style/mixins/_box-shadow.scss\",\"webpack://./style/variables/_typography.scss\"],\"names\":[],\"mappings\":\"AAOA,EACI,qBAAA,CAIA,8CACI,eAAA,CCZJ,mCDaI,CCZJ,iCDYI,CCXJ,sCDWI,CCVJ,8BDUI,CACA,WAAA,CACA,wBAAA,CACA,aAAA,CACA,SAAA,CACA,iBAAA,CAIA,cAAA,CEPA,0BFJJ,8CASQ,aAAA,CAAA,CAGJ,mDACI,aAAA,CAGJ,uDACI,YAAA,CACA,sBAAA,CACA,kBAAA,CG9BV,yBH+B+C,CG9B/C,iBH8B+C,CACrC,wBItBI,CJuBJ,UAAA,CACA,kBAAA,CACA,kBAAA,CACA,iBAAA,CACA,iBAAA,CACA,aAAA,CACA,QAAA,CACA,eAAA,CACA,YAAA,CACA,cAAA,CE3BJ,0BFYA,uDAiBQ,YAAA,CACA,aAAA,CACA,eAAA,CACA,cAAA,CAAA,CAEJ,8DACI,YAAA,CAIJ,iEACI,UAAA,CACA,WAAA,CEzCR,0BFuCI,iEAIQ,UAAA,CACA,WAAA,CAAA,CAEJ,uEACI,aAAA,CACA,cAAA,CAKhB,sDACI,iBAAA,CACA,oFGtEN,iCHuE+C,CGtE/C,yBHsE+C,CCvE7C,mCDwEQ,CCvER,iCDuEQ,CCtER,sCDsEQ,CCrER,8BDqEQ,CACA,qBAAA,CACA,eAAA,CACA,YAAA,CACA,iBAAA,CACA,QAAA,CACA,wBAAA,CACA,WAAA,CACA,WAAA,CEjEJ,0BFuDA,oFAYQ,WAAA,CACA,WAAA,CAAA,CAEJ,aAfJ,oFAgBQ,YAAA,CAAA,CAEJ,yFKxFR,8GLyFY,CKxFZ,2GLwFY,CKvFZ,sGLuFY,CAKA,WAAA,CACA,gBAAA,CACA,aAAA,CAEJ,uGACI,aAAA,CACA,iBAAA,CACA,gBAAA,CACA,aIxFD,CJyFC,oBAAA,CACA,cAAA,CACA,WAAA,CACA,cAAA,CACA,eAAA,CACA,UAAA,CACA,kCM9GD,CN+GC,6GACI,yBAAA,CACA,aIjGA,CJoGR,uFACI,eAAA,CACA,SAAA,CACA,QAAA,CACA,0FCvHZ,oCDwHgB,CCvHhB,kCDuHgB,CCtHhB,uCDsHgB,CCrHhB,+BDqHgB,CACA,YAAA,CACA,kBAAA,CACA,6BAAA,CACA,gBAAA,CACA,cAAA,CACA,kBAAA,CACA,gGACI,gCI/HL,CJiIC,qGACI,eAAA,CACA,cAAA,CACA,eAAA,CACA,WAAA,CACA,yGACI,aI3Gd,CJ4Gc,UAAA\",\"sourcesContent\":[\"@use \\\"../../../style/mixins/border-radius\\\";\\n@use \\\"../../../style/mixins/box-shadow\\\";\\n@use \\\"../../../style/mixins/breakpoints\\\";\\n@use \\\"../../../style/mixins/transition\\\";\\n@use \\\"../../../style/variables/colors\\\";\\n@use \\\"../../../style/variables/typography\\\";\\n\\n* {\\n box-sizing: border-box;\\n}\\n\\n.download-items-container {\\n .icon-toggle-button {\\n margin-top: 0.4em;\\n @include transition.transition(all 0.1s ease-in-out);\\n border: none;\\n background: transparent;\\n color: #403f3f;\\n padding: 0;\\n position: relative;\\n @include breakpoints.breakpoint(phablet) {\\n padding: 0 4px;\\n }\\n cursor: pointer;\\n &.open {\\n color: #414042;\\n }\\n\\n .counter {\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n @include border-radius.border-radius(35%);\\n background-color: colors.$primary-brand;\\n color: #fff;\\n margin-top: -0.35em;\\n margin-left: -0.2em;\\n position: absolute;\\n text-align: center;\\n min-width: 2em;\\n left: 2em;\\n line-height: 1.4;\\n height: 1.4em;\\n font-size: 0.8em;\\n @include breakpoints.breakpoint(phablet) {\\n height: 1.5em;\\n min-width: 2em;\\n line-height: 1.5;\\n font-size: 0.8em;\\n }\\n &.hidden {\\n display: none;\\n }\\n }\\n .download-icon {\\n svg {\\n width: 35px;\\n height: 22px;\\n @include breakpoints.breakpoint(phablet) {\\n width: 42px;\\n height: 27px;\\n }\\n &:hover {\\n color: #1073bc;\\n cursor: pointer;\\n }\\n }\\n }\\n }\\n .download-item-list-wrapper {\\n position: absolute;\\n .download-item-list-container {\\n @include border-radius.border-radius(0 0 3px 3px);\\n @include transition.transition(all 0.1s ease-in-out);\\n box-sizing: border-box;\\n overflow: hidden;\\n max-height: 0;\\n position: relative;\\n top: 10px;\\n background-color: #fbfcfd;\\n right: 205px;\\n width: 260px;\\n @include breakpoints.breakpoint(phablet) {\\n right: 245px;\\n width: 300px;\\n }\\n @media print {\\n display: none;\\n }\\n &.open {\\n @include box-shadow.box-shadow(\\n 0 5px 5px -3px rgba(0, 0, 0, 0.2),\\n 0 8px 10px 1px rgba(0, 0, 0, 0.14),\\n 0 3px 14px 2px rgba(0, 0, 0, 0.12)\\n );\\n height: auto;\\n max-height: 300px;\\n overflow: auto;\\n }\\n .page-link-element {\\n display: block;\\n text-align: center;\\n padding: 8px 16px;\\n color: colors.$primary-text;\\n text-decoration: none;\\n cursor: pointer;\\n border: none;\\n font-size: 16px;\\n font-weight: 400;\\n width: 100%;\\n font-family: typography.$default-font;\\n &:hover {\\n text-decoration: underline;\\n color: colors.$primary-text-hover;\\n }\\n }\\n ul {\\n list-style: none;\\n padding: 0;\\n margin: 0;\\n li {\\n @include transition.transition(all 0.15s ease-in-out);\\n display: flex;\\n align-items: center;\\n justify-content: space-between;\\n padding: 8px 16px;\\n font-size: 14px;\\n font-weight: normal;\\n &:hover {\\n background-color: colors.$hover-background;\\n }\\n .list-icon {\\n margin-left: 8px;\\n cursor: pointer;\\n background: none;\\n border: none;\\n svg {\\n color: colors.$danger-text;\\n width: 20px;\\n }\\n }\\n }\\n }\\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\",\"@use \\\"../variables/breakpoints\\\";\\n\\n@mixin breakpoint($point) {\\n @if $point == desktop {\\n @media (min-width: breakpoints.$screen-desktop) {\\n @content;\\n }\\n } @else if $point == laptop {\\n @media (min-width: breakpoints.$screen-laptop) {\\n @content;\\n }\\n } @else if $point == tablet {\\n @media (min-width: breakpoints.$screen-tablet) {\\n @content;\\n }\\n } @else if $point == phablet {\\n @media (min-width: breakpoints.$screen-phablet) {\\n @content;\\n }\\n }\\n}\\n\",\"@mixin border-radius($radius) {\\n -webkit-border-radius: $radius;\\n border-radius: $radius;\\n}\\n\\n// Single side border-radius\\n\\n@mixin border-top-radius($radius) {\\n -webkit-border-top-right-radius: $radius;\\n border-top-right-radius: $radius;\\n -webkit-border-top-left-radius: $radius;\\n border-top-left-radius: $radius;\\n}\\n@mixin border-right-radius($radius) {\\n -webkit-border-bottom-right-radius: $radius;\\n border-bottom-right-radius: $radius;\\n -webkit-border-top-right-radius: $radius;\\n border-top-right-radius: $radius;\\n}\\n@mixin border-bottom-radius($radius) {\\n -webkit-border-bottom-right-radius: $radius;\\n border-bottom-right-radius: $radius;\\n -webkit-border-bottom-left-radius: $radius;\\n border-bottom-left-radius: $radius;\\n}\\n@mixin border-left-radius($radius) {\\n -webkit-border-bottom-left-radius: $radius;\\n border-bottom-left-radius: $radius;\\n -webkit-border-top-left-radius: $radius;\\n border-top-left-radius: $radius;\\n}\",\"$body-background: #ffffff;\\n$navigation-bar-background: #f7f7f7;\\n$hover-background: rgba(0,0,0,.05);\\n$default-border: #d8d8d8;\\n\\n$default-background: #eee;\\n$default-background-hover: #ddd;\\n$default-text:#2F3940;\\n\\n$light-gray: #f6f5f4;\\n\\n$primary-brand: #FE5000;\\n\\n$primary-background: #3767C7;\\n$primary-background-hover: #FE5000;\\n$primary-text: #3767C7;\\n$primary-text-hover:#0056b3;\\n\\n\\n$success-background: #06A755;\\n$success-background-hover: #009745;\\n$success-text: #06A755;\\n\\n\\n$warning-background: #C38621;\\n$warning-background-hover: #B37611;\\n$warning-text: #C38621;\\n\\n$danger-background: #E00d0D;\\n$danger-background-hover: #D00000;\\n$danger-text: #E00d0D;\\n\\n$disabled-background: #f4f4f4;\\n$disabled-border: #dedede;\\n$disabled-text: #707070;\\n\\n\\n$light-green: #8fff33;\\n$light-yellow: #ffEb3b;\\n$light-red: #ff4a2e;\\n\",\"@mixin box-shadow($shadows...) {\\n -webkit-box-shadow: $shadows;\\n -moz-box-shadow: $shadows;\\n box-shadow: $shadows;\\n}\\n\",\"$default-font: \\\"Open Sans\\\", sans-serif;\\n$header-font: \\\"Raleway\\\", sans-serif;\\n$default-font-size: 15px;\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `*{box-sizing:border-box}button.menu-toggle-button{border:none;background-color:rgba(0,0,0,0);color:#403f3f;cursor:pointer;width:40px;height:32px;display:flex;gap:6px;align-items:center}@media(min-width: 37.5em){button.menu-toggle-button{width:45px;height:37px}}@media(min-width: 992px){button.menu-toggle-button{width:98px;background-color:rgba(0,0,0,0);color:#403f3f}}button.menu-toggle-button.open{background-color:rgba(0,0,0,0)}button.menu-toggle-button span{padding:2px 1px;vertical-align:middle}button.menu-toggle-button span.menu-title{display:none;font-weight:500;vertical-align:middle;font-family:\"Open Sans\",sans-serif;font-size:14px}@media(min-width: 992px){button.menu-toggle-button span.menu-title{display:inline-block}}button.menu-toggle-button span.hidden{display:none}button.menu-toggle-button svg{height:24px;width:24px;vertical-align:middle}button.menu-toggle-button:hover{color:#1073bc}.menu-wrapper{position:absolute;left:0;width:100%}.menu-wrapper .menu-container{-webkit-border-radius:0 0 3px 3px;border-radius:0 0 3px 3px;box-sizing:border-box;width:100%;background-color:#fff;margin:auto;position:relative;top:56px}@media(min-width: 37.5em){.menu-wrapper .menu-container{top:15px}}@media(min-width: 768px){.menu-wrapper .menu-container{width:750px}}@media(min-width: 992px){.menu-wrapper .menu-container{width:970px}}@media(min-width: 1200px){.menu-wrapper .menu-container{width:1170px}}@media print{.menu-wrapper .menu-container{display:none}}.menu-wrapper .menu-container.open{-webkit-box-shadow:0 5px 5px -2px rgba(0,0,0,.26);-moz-box-shadow:0 5px 5px -2px rgba(0,0,0,.26);box-shadow:0 5px 5px -2px rgba(0,0,0,.26);height:auto}.menu-wrapper .menu-container .menu-item-list-container{-moz-transition:max-height .3s ease-in-out;-o-transition:max-height .3s ease-in-out;-webkit-transition:max-height .3s ease-in-out;transition:max-height .3s ease-in-out;overflow:hidden;max-height:0}.menu-wrapper .menu-container .menu-item-list-container.open{max-height:300px;overflow:auto}@media(min-width: 37.5em){.menu-wrapper .menu-container .menu-item-list-container.open{max-height:450px}}@media(min-width: 992px){.menu-wrapper .menu-container .menu-item-list-container.open{max-height:300px}}.menu-wrapper .menu-container .menu-item-list-container .menuItemList{list-style:none;margin:15px;color:#414042;font-size:15px}.menu-wrapper .menu-container .menu-item-list-container .menuItemList:first-child{padding:15px 0 0}.menu-wrapper .menu-container .menu-item-list-container .menuItemList a{color:#414042;text-decoration:none}.menu-wrapper .menu-container .menu-item-list-container .menuItemList a:hover{text-decoration:underline}.menu-wrapper .menu-container .menu-item-list-container .menuItemList.hierarchy-level-0{display:flex;flex-wrap:wrap}.menu-wrapper .menu-container .menu-item-list-container .menuItemList.hierarchy-level-0>li{flex:1 0 100%}@media(min-width: 37.5em){.menu-wrapper .menu-container .menu-item-list-container .menuItemList.hierarchy-level-0>li{flex:1 0 50%}}@media(min-width: 992px){.menu-wrapper .menu-container .menu-item-list-container .menuItemList.hierarchy-level-0>li{flex:1}}.menu-wrapper .menu-container .menu-item-list-container .menuItemList.hierarchy-level-0>li>a{border-bottom:1px solid #b6afa8;font-weight:700;padding-bottom:.75em;margin-bottom:.75em;display:block}.menu-wrapper .menu-container .menu-item-list-container .menuItemList.hierarchy-level-0>li>ul{padding:0}.menu-wrapper .menu-container .menu-item-list-container .menuItemList.hierarchy-level-0>li>ul li{margin-bottom:12px}.menu-wrapper .menu-container .menu-item-list-container .menuItemList.hierarchy-level-0.hierarchy-level-1>li>a{font-weight:normal}.menu-wrapper .menu-container .menu-actions-row{-moz-transition:max-height .3s ease-in-out;-o-transition:max-height .3s ease-in-out;-webkit-transition:max-height .3s ease-in-out;transition:max-height .3s ease-in-out;text-align:right;background-color:#fff;max-height:0;overflow:hidden}.menu-wrapper .menu-container .menu-actions-row.open{max-height:56px}.menu-wrapper .menu-container .menu-actions-row a,.menu-wrapper .menu-container .menu-actions-row button{display:inline-block;padding:.25em 1em .25em 1.1em;margin:15px 0;text-decoration:none;color:#414042;cursor:pointer;border:none;font-size:16px;font-weight:normal;font-family:\"Open Sans\",sans-serif;background:none}.menu-wrapper .menu-container .menu-actions-row a:hover,.menu-wrapper .menu-container .menu-actions-row button:hover{text-decoration:underline}.menu-wrapper .menu-container .menu-actions-row a:not(:first-child),.menu-wrapper .menu-container .menu-actions-row button:not(:first-child){border-left:1px solid #b6afa8}`, \"\",{\"version\":3,\"sources\":[\"webpack://./stories/main-navigation/main-menu/main-menu.scss\",\"webpack://./style/mixins/_breakpoints.scss\",\"webpack://./style/variables/_typography.scss\",\"webpack://./style/mixins/_border-radius.scss\",\"webpack://./style/mixins/_box-shadow.scss\",\"webpack://./style/mixins/_transition.scss\"],\"names\":[],\"mappings\":\"AAKA,EACI,qBAAA,CAGJ,0BACI,WAAA,CACA,8BAAA,CACA,aAAA,CACA,cAAA,CACA,UAAA,CACA,WAAA,CACA,YAAA,CACA,OAAA,CACA,kBAAA,CCFI,0BDPR,0BAYQ,UAAA,CACA,WAAA,CAAA,CCdA,yBDCR,0BAgBQ,UAAA,CACA,8BAAA,CACA,aAAA,CAAA,CAEJ,+BACI,8BAAA,CAEJ,+BACI,eAAA,CACA,qBAAA,CACA,0CACI,YAAA,CACA,eAAA,CACA,qBAAA,CACA,kCEvCG,CFwCH,cAAA,CChCJ,yBD2BA,0CAOQ,oBAAA,CAAA,CAGR,sCACI,YAAA,CAGR,8BACI,WAAA,CACA,UAAA,CACA,qBAAA,CAEJ,gCACI,aAAA,CAGR,cACI,iBAAA,CACA,MAAA,CACA,UAAA,CAEA,8BG9DF,iCH+D2C,CG9D3C,yBH8D2C,CACrC,qBAAA,CACA,UAAA,CACA,qBAAA,CACA,WAAA,CACA,iBAAA,CACA,QAAA,CCtDA,0BD+CJ,8BASQ,QAAA,CAAA,CC5DJ,yBDmDJ,8BAaQ,WAAA,CAAA,CCpEJ,yBDuDJ,8BAgBQ,WAAA,CAAA,CC3EJ,0BD2DJ,8BAmBQ,YAAA,CAAA,CAEJ,aArBJ,8BAsBQ,YAAA,CAAA,CAGJ,mCIvFJ,iDJwFQ,CIvFR,8CJuFQ,CItFR,yCJsFQ,CACA,WAAA,CAEJ,wDK3FJ,0CL4FQ,CK3FR,wCL2FQ,CK1FR,6CL0FQ,CKzFR,qCLyFQ,CACA,eAAA,CACA,YAAA,CACA,6DACI,gBAAA,CACA,aAAA,CClFR,0BDgFI,6DAIQ,gBAAA,CAAA,CC5FZ,yBDwFI,6DAOQ,gBAAA,CAAA,CAIR,sEACI,eAAA,CACA,WAAA,CACA,aAAA,CACA,cAAA,CACA,kFACI,gBAAA,CAEJ,wEACI,aAAA,CACA,oBAAA,CACA,8EACI,yBAAA,CAGR,wFACI,YAAA,CACA,cAAA,CACA,2FACI,aAAA,CC9GhB,0BD6GY,2FAGQ,YAAA,CAAA,CCxHpB,yBDqHY,2FAMQ,MAAA,CAAA,CAEJ,6FACI,+BAAA,CACA,eAAA,CACA,oBAAA,CACA,mBAAA,CACA,aAAA,CAEJ,8FACI,SAAA,CACA,iGACI,kBAAA,CAMJ,+GACI,kBAAA,CAOxB,gDK5JJ,0CL6JQ,CK5JR,wCL4JQ,CK3JR,6CL2JQ,CK1JR,qCL0JQ,CACA,gBAAA,CACA,qBAAA,CACA,YAAA,CACA,eAAA,CACA,qDACI,eAAA,CAEJ,yGAEI,oBAAA,CACA,6BAAA,CACA,aAAA,CACA,oBAAA,CACA,aAAA,CACA,cAAA,CACA,WAAA,CACA,cAAA,CACA,kBAAA,CACA,kCEjLD,CFkLC,eAAA,CACA,qHACI,yBAAA,CAEJ,6IACI,6BAAA\",\"sourcesContent\":[\"@use \\\"../../../style/mixins/border-radius\\\";\\n@use \\\"../../../style/mixins/box-shadow\\\";\\n@use \\\"../../../style/mixins/breakpoints\\\";\\n@use \\\"../../../style/mixins/transition\\\";\\n@use \\\"../../../style/variables/typography\\\";\\n* {\\n box-sizing: border-box;\\n}\\n\\nbutton.menu-toggle-button {\\n border: none;\\n background-color: transparent;\\n color: #403f3f;\\n cursor: pointer;\\n width: 40px;\\n height: 32px;\\n display: flex;\\n gap: 6px;\\n align-items: center;\\n\\n @include breakpoints.breakpoint(phablet) {\\n width: 45px;\\n height: 37px;\\n }\\n @include breakpoints.breakpoint(laptop) {\\n width: 98px;\\n background-color: transparent;\\n color: #403f3f;\\n }\\n &.open {\\n background-color: transparent;\\n }\\n span {\\n padding: 2px 1px;\\n vertical-align: middle;\\n &.menu-title {\\n display: none;\\n font-weight: 500;\\n vertical-align: middle;\\n font-family: typography.$default-font;\\n font-size: 14px;\\n @include breakpoints.breakpoint(laptop) {\\n display: inline-block;\\n }\\n }\\n &.hidden {\\n display: none;\\n }\\n }\\n svg {\\n height: 24px;\\n width: 24px;\\n vertical-align: middle;\\n }\\n &:hover {\\n color: #1073bc;\\n }\\n}\\n.menu-wrapper {\\n position: absolute;\\n left: 0;\\n width: 100%;\\n\\n .menu-container {\\n @include border-radius.border-radius(0 0 3px 3px);\\n box-sizing: border-box;\\n width: 100%;\\n background-color: #fff;\\n margin: auto;\\n position: relative;\\n top: 56px;\\n @include breakpoints.breakpoint(phablet) {\\n top: 15px;\\n }\\n\\n @include breakpoints.breakpoint(tablet) {\\n width: 750px;\\n }\\n @include breakpoints.breakpoint(laptop) {\\n width: 970px;\\n }\\n @include breakpoints.breakpoint(desktop) {\\n width: 1170px;\\n }\\n @media print {\\n display: none;\\n }\\n\\n &.open {\\n @include box-shadow.box-shadow(0 5px 5px -2px rgba(0, 0, 0, 0.26));\\n height: auto;\\n }\\n .menu-item-list-container {\\n @include transition.transition(max-height 0.3s ease-in-out);\\n overflow: hidden;\\n max-height: 0;\\n &.open {\\n max-height: 300px;\\n overflow: auto;\\n @include breakpoints.breakpoint(phablet) {\\n max-height: 450px;\\n }\\n @include breakpoints.breakpoint(laptop) {\\n max-height: 300px;\\n }\\n }\\n\\n .menuItemList {\\n list-style: none;\\n margin: 15px;\\n color: #414042;\\n font-size: 15px;\\n &:first-child {\\n padding: 15px 0 0;\\n }\\n a {\\n color: #414042;\\n text-decoration: none;\\n &:hover {\\n text-decoration: underline;\\n }\\n }\\n &.hierarchy-level-0 {\\n display: flex;\\n flex-wrap: wrap;\\n > li {\\n flex: 1 0 100%;\\n @include breakpoints.breakpoint(phablet) {\\n flex: 1 0 50%;\\n }\\n @include breakpoints.breakpoint(laptop) {\\n flex: 1;\\n }\\n > a {\\n border-bottom: 1px solid #b6afa8;\\n font-weight: 700;\\n padding-bottom: 0.75em;\\n margin-bottom: 0.75em;\\n display: block;\\n }\\n > ul {\\n padding: 0;\\n li {\\n margin-bottom: 12px;\\n }\\n }\\n }\\n &.hierarchy-level-1 {\\n > li {\\n > a {\\n font-weight: normal;\\n }\\n }\\n }\\n }\\n }\\n }\\n .menu-actions-row {\\n @include transition.transition(max-height 0.3s ease-in-out);\\n text-align: right;\\n background-color: white;\\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: #414042;\\n cursor: pointer;\\n border: none;\\n font-size: 16px;\\n font-weight: normal;\\n font-family: typography.$default-font;\\n background: none;\\n &:hover {\\n text-decoration: underline;\\n }\\n &:not(:first-child) {\\n border-left: 1px solid #b6afa8;\\n }\\n }\\n }\\n }\\n}\\n\",\"@use \\\"../variables/breakpoints\\\";\\n\\n@mixin breakpoint($point) {\\n @if $point == desktop {\\n @media (min-width: breakpoints.$screen-desktop) {\\n @content;\\n }\\n } @else if $point == laptop {\\n @media (min-width: breakpoints.$screen-laptop) {\\n @content;\\n }\\n } @else if $point == tablet {\\n @media (min-width: breakpoints.$screen-tablet) {\\n @content;\\n }\\n } @else if $point == phablet {\\n @media (min-width: breakpoints.$screen-phablet) {\\n @content;\\n }\\n }\\n}\\n\",\"$default-font: \\\"Open Sans\\\", sans-serif;\\n$header-font: \\\"Raleway\\\", sans-serif;\\n$default-font-size: 15px;\\n\",\"@mixin border-radius($radius) {\\n -webkit-border-radius: $radius;\\n border-radius: $radius;\\n}\\n\\n// Single side border-radius\\n\\n@mixin border-top-radius($radius) {\\n -webkit-border-top-right-radius: $radius;\\n border-top-right-radius: $radius;\\n -webkit-border-top-left-radius: $radius;\\n border-top-left-radius: $radius;\\n}\\n@mixin border-right-radius($radius) {\\n -webkit-border-bottom-right-radius: $radius;\\n border-bottom-right-radius: $radius;\\n -webkit-border-top-right-radius: $radius;\\n border-top-right-radius: $radius;\\n}\\n@mixin border-bottom-radius($radius) {\\n -webkit-border-bottom-right-radius: $radius;\\n border-bottom-right-radius: $radius;\\n -webkit-border-bottom-left-radius: $radius;\\n border-bottom-left-radius: $radius;\\n}\\n@mixin border-left-radius($radius) {\\n -webkit-border-bottom-left-radius: $radius;\\n border-bottom-left-radius: $radius;\\n -webkit-border-top-left-radius: $radius;\\n border-top-left-radius: $radius;\\n}\",\"@mixin box-shadow($shadows...) {\\n -webkit-box-shadow: $shadows;\\n -moz-box-shadow: $shadows;\\n box-shadow: $shadows;\\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","// 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, `*{box-sizing:border-box}div.main-navigation{-webkit-box-shadow:0 2px 5px rgba(0,0,0,.26);-moz-box-shadow:0 2px 5px rgba(0,0,0,.26);box-shadow:0 2px 5px rgba(0,0,0,.26);background-color:#f7f7f7;font-family:\"Open Sans\",sans-serif;color:#2f3940;position:fixed;width:100%;top:0;left:0;z-index:2}@media print{div.main-navigation{position:relative;margin-bottom:-100px;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}}div.main-navigation.static-position{position:static}div.main-navigation.no-shadow{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}div.main-navigation a.main-content-link{display:block;color:#3767c7;padding:8px;text-align:center;text-decoration:none;font-size:19px;position:absolute;overflow:hidden;clip:rect(1px, 1px, 1px, 1px);width:1px;height:1px;word-wrap:normal}div.main-navigation a.main-content-link:focus,div.main-navigation a.main-content-link:active{position:static;overflow:visible;clip:auto;width:100%;height:auto;outline:none;color:#0056b3}div.main-navigation a.main-content-link:focus span,div.main-navigation a.main-content-link:active span{z-index:100;outline:3px solid #3767c7;outline-offset:2px;transition:none;text-decoration:none}div.main-navigation .main-navigation-container{margin:auto}@media(min-width: 768px){div.main-navigation .main-navigation-container{width:750px}}@media(min-width: 992px){div.main-navigation .main-navigation-container{width:970px}}@media(min-width: 1200px){div.main-navigation .main-navigation-container{width:1170px}}div.main-navigation .main-navigation-container .main-navigation-content{display:flex;flex-wrap:wrap;align-items:center;padding:10px 15px}@media(min-width: 37.5em){div.main-navigation .main-navigation-container .main-navigation-content{flex-wrap:nowrap}}div.main-navigation .main-navigation-container .main-navigation-content .logo{flex:1}div.main-navigation .main-navigation-container .main-navigation-content .logo a{display:inline-block}div.main-navigation .main-navigation-container .main-navigation-content .logo svg{height:37px;width:200px}@media(min-width: 37.5em){div.main-navigation .main-navigation-container .main-navigation-content .logo svg{width:200px}}@media(min-width: 992px){div.main-navigation .main-navigation-container .main-navigation-content .logo svg{width:248px}}div.main-navigation .main-navigation-container .main-navigation-content .search-container{flex:2;width:100%;order:2;display:flex;flex-direction:column;width:300px}@media print{div.main-navigation .main-navigation-container .main-navigation-content .search-container{display:none}}@media(min-width: 37.5em){div.main-navigation .main-navigation-container .main-navigation-content .search-container{order:0;padding:0 1em}}@media(min-width: 768px){div.main-navigation .main-navigation-container .main-navigation-content .search-container{flex-direction:row}}div.main-navigation .main-navigation-container .main-navigation-content .button-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between}`, \"\",{\"version\":3,\"sources\":[\"webpack://./stories/main-navigation/main-navigation.scss\",\"webpack://./style/mixins/_box-shadow.scss\",\"webpack://./style/variables/_colors.scss\",\"webpack://./style/variables/_typography.scss\",\"webpack://./style/mixins/_breakpoints.scss\"],\"names\":[],\"mappings\":\"AAKA,EACI,qBAAA,CAGJ,oBCRI,4CDSA,CCRA,yCDQA,CCPA,oCDOA,CACA,wBEVyB,CFWzB,kCGZW,CHaX,aENU,CFOV,cAAA,CACA,UAAA,CACA,KAAA,CACA,MAAA,CACA,SAAA,CACA,aAVJ,oBAWQ,iBAAA,CACA,oBAAA,CCpBJ,uBDqBI,CCpBJ,oBDoBI,CCnBJ,eDmBI,CAAA,CAGJ,oCACI,eAAA,CAGJ,8BC5BA,uBD6BI,CC5BJ,oBD4BI,CC3BJ,eD2BI,CAGJ,wCACI,aAAA,CACA,aEpBO,CFqBP,WAAA,CACA,iBAAA,CACA,oBAAA,CACA,cAAA,CACA,iBAAA,CACA,eAAA,CACA,6BAAA,CACA,SAAA,CACA,UAAA,CACA,gBAAA,CACA,6FAEI,eAAA,CACA,gBAAA,CACA,SAAA,CACA,UAAA,CACA,WAAA,CACA,YAAA,CACA,aEtCQ,CFuCR,uGACI,WAAA,CACA,yBAAA,CACA,kBAAA,CACA,eAAA,CACA,oBAAA,CAKZ,+CACI,WAAA,CItDA,yBJqDJ,+CAIQ,WAAA,CAAA,CI7DJ,yBJyDJ,+CAOQ,WAAA,CAAA,CIpEJ,0BJ6DJ,+CAUQ,YAAA,CAAA,CAEJ,wEACI,YAAA,CACA,cAAA,CACA,kBAAA,CACA,iBAAA,CIjEJ,0BJ6DA,wEAMQ,gBAAA,CAAA,CAGJ,8EACI,MAAA,CACA,gFACI,oBAAA,CAEJ,kFACI,WAAA,CACA,WAAA,CI7EZ,0BJ2EQ,kFAIQ,WAAA,CAAA,CIvFhB,yBJmFQ,kFAOQ,WAAA,CAAA,CAIZ,0FACI,MAAA,CACA,UAAA,CAIA,OAAA,CACA,YAAA,CACA,qBAAA,CASA,WAAA,CAdA,aAHJ,0FAIQ,YAAA,CAAA,CI1FZ,0BJsFI,0FAWQ,OAAA,CACA,aAAA,CAAA,CItGZ,yBJ0FI,0FAeQ,kBAAA,CAAA,CAIR,oFACI,YAAA,CACA,cAAA,CACA,kBAAA,CACA,6BAAA\",\"sourcesContent\":[\"@use \\\"../../style/mixins/box-shadow\\\";\\n@use \\\"../../style/mixins/breakpoints\\\";\\n@use \\\"../../style/variables/colors\\\";\\n@use \\\"../../style/variables/typography\\\";\\n\\n* {\\n box-sizing: border-box;\\n}\\n\\ndiv.main-navigation {\\n @include box-shadow.box-shadow(0 2px 5px rgba(0, 0, 0, 0.26));\\n background-color: colors.$navigation-bar-background;\\n font-family: typography.$default-font;\\n color: colors.$default-text;\\n position: fixed;\\n width: 100%;\\n top: 0;\\n left: 0;\\n z-index: 2;\\n @media print {\\n position: relative;\\n margin-bottom: -100px;\\n @include box-shadow.box-shadow(none);\\n }\\n\\n &.static-position {\\n position: static;\\n }\\n\\n &.no-shadow {\\n @include box-shadow.box-shadow(none);\\n }\\n\\n a.main-content-link {\\n display: block;\\n color: colors.$primary-text;\\n padding: 8px;\\n text-align: center;\\n text-decoration: none;\\n font-size: 19px;\\n position: absolute;\\n overflow: hidden;\\n clip: rect(1px, 1px, 1px, 1px);\\n width: 1px;\\n height: 1px;\\n word-wrap: normal;\\n &:focus,\\n &:active {\\n position: static;\\n overflow: visible;\\n clip: auto;\\n width: 100%;\\n height: auto;\\n outline: none;\\n color: colors.$primary-text-hover;\\n span {\\n z-index: 100;\\n outline: 3px solid colors.$primary-text;\\n outline-offset: 2px;\\n transition: none;\\n text-decoration: none;\\n }\\n }\\n }\\n\\n .main-navigation-container {\\n margin: auto;\\n\\n @include breakpoints.breakpoint(tablet) {\\n width: 750px;\\n }\\n @include breakpoints.breakpoint(laptop) {\\n width: 970px;\\n }\\n @include breakpoints.breakpoint(desktop) {\\n width: 1170px;\\n }\\n .main-navigation-content {\\n display: flex;\\n flex-wrap: wrap;\\n align-items: center;\\n padding: 10px 15px;\\n @include breakpoints.breakpoint(phablet) {\\n flex-wrap: nowrap;\\n }\\n\\n .logo {\\n flex: 1;\\n a {\\n display: inline-block;\\n }\\n svg {\\n height: 37px;\\n width: 200px;\\n @include breakpoints.breakpoint(phablet) {\\n width: 200px;\\n }\\n @include breakpoints.breakpoint(laptop) {\\n width: 248px;\\n }\\n }\\n }\\n .search-container {\\n flex: 2;\\n width: 100%;\\n @media print {\\n display: none;\\n }\\n order: 2;\\n display: flex;\\n flex-direction: column;\\n\\n @include breakpoints.breakpoint(phablet) {\\n order: 0;\\n padding: 0 1em;\\n }\\n @include breakpoints.breakpoint(tablet) {\\n flex-direction: row;\\n }\\n width: 300px;\\n }\\n .button-row {\\n display: flex;\\n flex-wrap: wrap;\\n align-items: center;\\n justify-content: space-between;\\n }\\n }\\n }\\n}\\n\",\"@mixin box-shadow($shadows...) {\\n -webkit-box-shadow: $shadows;\\n -moz-box-shadow: $shadows;\\n box-shadow: $shadows;\\n}\\n\",\"$body-background: #ffffff;\\n$navigation-bar-background: #f7f7f7;\\n$hover-background: rgba(0,0,0,.05);\\n$default-border: #d8d8d8;\\n\\n$default-background: #eee;\\n$default-background-hover: #ddd;\\n$default-text:#2F3940;\\n\\n$light-gray: #f6f5f4;\\n\\n$primary-brand: #FE5000;\\n\\n$primary-background: #3767C7;\\n$primary-background-hover: #FE5000;\\n$primary-text: #3767C7;\\n$primary-text-hover:#0056b3;\\n\\n\\n$success-background: #06A755;\\n$success-background-hover: #009745;\\n$success-text: #06A755;\\n\\n\\n$warning-background: #C38621;\\n$warning-background-hover: #B37611;\\n$warning-text: #C38621;\\n\\n$danger-background: #E00d0D;\\n$danger-background-hover: #D00000;\\n$danger-text: #E00d0D;\\n\\n$disabled-background: #f4f4f4;\\n$disabled-border: #dedede;\\n$disabled-text: #707070;\\n\\n\\n$light-green: #8fff33;\\n$light-yellow: #ffEb3b;\\n$light-red: #ff4a2e;\\n\",\"$default-font: \\\"Open Sans\\\", sans-serif;\\n$header-font: \\\"Raleway\\\", sans-serif;\\n$default-font-size: 15px;\\n\",\"@use \\\"../variables/breakpoints\\\";\\n\\n@mixin breakpoint($point) {\\n @if $point == desktop {\\n @media (min-width: breakpoints.$screen-desktop) {\\n @content;\\n }\\n } @else if $point == laptop {\\n @media (min-width: breakpoints.$screen-laptop) {\\n @content;\\n }\\n } @else if $point == tablet {\\n @media (min-width: breakpoints.$screen-tablet) {\\n @content;\\n }\\n } @else if $point == phablet {\\n @media (min-width: breakpoints.$screen-phablet) {\\n @content;\\n }\\n }\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `*{box-sizing:border-box}div.main-search-field{font-family:\"Open Sans\",sans-serif;display:flex;height:37px;margin-top:.25em;position:relative;width:100%;max-width:440px}@media(min-width: 37.5em){div.main-search-field{margin-top:0}}div.main-search-field .mainSearchLabel{width:0;height:0;overflow:hidden;opacity:0}div.main-search-field input{-webkit-appearance:none;-moz-appearance:none;appearance:none;-webkit-border-radius:4px 0 0 4px;border-radius:4px 0 0 4px;height:37px;width:100%;outline-offset:-2px;background:#fff;border:1px solid #dfdcda;border-right:0;font-family:\"Open Sans\",sans-serif;font-size:18px;font-weight:normal;flex:1;margin:0;padding:0 .75em}div.main-search-field button{-webkit-appearance:button;-moz-appearance:button;appearance:button;-webkit-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0;margin:0;background:#fff;border:1px solid #dfdcda;border-left:0;display:inline-block;padding:0 .75em;height:100%}div.main-search-field button svg{height:22px;width:21px}div.search-results-container{-webkit-box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12);-moz-box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12);box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12);-webkit-border-radius:0 0 3px 3px;border-radius:0 0 3px 3px;position:absolute;background:#fbfcfd;display:none;top:37px;z-index:1}div.search-results-container.open{display:block;width:100%;overflow-y:auto}div.search-results-container a{color:#3767c7;text-decoration:none}div.search-results-container a:hover{color:#0056b3;text-decoration:underline}div.search-results-container div.search-results-for-type:nth-child(odd){background-color:#fbfcfd}div.search-results-container div.search-results-for-type:nth-child(even){background-color:#f5f6f7}div.search-results-container div.search-results-for-type a.search-results-for-type-title{font-family:\"Open Sans\",sans-serif;padding:6px 16px;font-size:18px;display:inline-block;font-weight:normal}div.search-results-container div.search-results-for-type a.search-results-for-type-title span.search-results-for-type-number-badge{-webkit-border-radius:6px;border-radius:6px;padding:1px 4px;color:#fff;background-color:#fe5000;display:inline-block;font-size:.7em;vertical-align:middle;text-align:center;min-width:24px;font-weight:bold}div.search-results-container div.search-results-for-type ul.search-results-for-type-list{list-style:none;padding:0 16px 12px 32px;margin:0}div.search-results-container div.search-results-for-type ul.search-results-for-type-list li a{font-family:\"Open Sans\",sans-serif;padding:2px 0;display:block;font-size:14px;font-weight:normal}.hidden{height:0;width:0;position:absolute;color:rgba(0,0,0,0);overflow:hidden}`, \"\",{\"version\":3,\"sources\":[\"webpack://./stories/main-navigation/main-search-field/main-search-field.scss\",\"webpack://./style/variables/_typography.scss\",\"webpack://./style/mixins/_breakpoints.scss\",\"webpack://./style/mixins/_appearance.scss\",\"webpack://./style/mixins/_border-radius.scss\",\"webpack://./style/mixins/_box-shadow.scss\",\"webpack://./style/variables/_colors.scss\"],\"names\":[],\"mappings\":\"AAOA,EACE,qBAAA,CAGF,sBACE,kCCZa,CDab,YAAA,CACA,WAAA,CACA,gBAAA,CACA,iBAAA,CACA,UAAA,CACA,eAAA,CEFM,0BFLR,sBAUI,YAAA,CAAA,CAGF,uCACE,OAAA,CACA,QAAA,CACA,eAAA,CACA,SAAA,CAGF,4BG9BE,uBH+B+B,CG9B/B,oBH8B+B,CG7B/B,eH6B+B,CI/BjC,iCJgCuC,CI/BvC,yBJ+BuC,CACrC,WAAA,CACA,UAAA,CACA,mBAAA,CACA,eAAA,CACA,wBAAA,CACA,cAAA,CACA,kCCxCW,CDyCX,cAAA,CACA,kBAAA,CACA,MAAA,CACA,QAAA,CACA,eAAA,CAGF,6BG/CE,yBHgD+B,CG/C/B,sBH+C+B,CG9C/B,iBH8C+B,CIhDjC,iCJiDuC,CIhDvC,yBJgDuC,CACrC,QAAA,CACA,eAAA,CACA,wBAAA,CACA,aAAA,CACA,oBAAA,CACA,eAAA,CACA,WAAA,CAEA,iCACE,WAAA,CACA,UAAA,CAKN,6BKjEI,8GLkEF,CKjEE,2GLiEF,CKhEE,sGLgEF,CIlEA,iCJuEqC,CItErC,yBJsEqC,CACrC,iBAAA,CACA,kBAAA,CACA,YAAA,CACA,QAAA,CACA,SAAA,CAEA,kCACE,aAAA,CACA,UAAA,CACA,eAAA,CAGF,+BACE,aMvEW,CNwEX,oBAAA,CACA,qCACE,aMzEc,CN0Ed,yBAAA,CAKF,wEACE,wBAAA,CAEF,yEACE,wBAAA,CAEF,yFACE,kCCtGS,CDuGT,gBAAA,CACA,cAAA,CACA,oBAAA,CACA,kBAAA,CACA,mII1GJ,yBJ2G2C,CI1G3C,iBJ0G2C,CACrC,eAAA,CACA,UAAA,CACA,wBMpGQ,CNqGR,oBAAA,CACA,cAAA,CACA,qBAAA,CACA,iBAAA,CACA,cAAA,CACA,gBAAA,CAGJ,yFACE,eAAA,CACA,wBAAA,CACA,QAAA,CAEE,8FACE,kCC9HK,CD+HL,aAAA,CACA,aAAA,CACA,cAAA,CACA,kBAAA,CAOV,QACE,QAAA,CACA,OAAA,CACA,iBAAA,CACA,mBAAA,CACA,eAAA\",\"sourcesContent\":[\"@use \\\"../../../style/mixins/appearance\\\";\\n@use \\\"../../../style/mixins/border-radius\\\";\\n@use \\\"../../../style/mixins/box-shadow\\\";\\n@use \\\"../../../style/mixins/breakpoints\\\";\\n@use \\\"../../../style/variables/colors\\\";\\n@use \\\"../../../style/variables/typography\\\";\\n\\n* {\\n box-sizing: border-box;\\n}\\n\\ndiv.main-search-field {\\n font-family: typography.$default-font;\\n display: flex;\\n height: 37px;\\n margin-top: 0.25em;\\n position: relative;\\n width: 100%;\\n max-width: 440px;\\n\\n @include breakpoints.breakpoint(phablet) {\\n margin-top: 0;\\n }\\n\\n .mainSearchLabel {\\n width: 0;\\n height: 0;\\n overflow: hidden;\\n opacity: 0;\\n }\\n\\n input {\\n @include appearance.appearance(none);\\n @include border-radius.border-radius(4px 0 0 4px);\\n height: 37px;\\n width: 100%;\\n outline-offset: -2px;\\n background: #fff;\\n border: 1px solid #dfdcda;\\n border-right: 0;\\n font-family: typography.$default-font;\\n font-size: 18px;\\n font-weight: normal;\\n flex: 1;\\n margin: 0;\\n padding: 0 0.75em;\\n }\\n\\n button {\\n @include appearance.appearance(button);\\n @include border-radius.border-radius(0 4px 4px 0);\\n margin: 0;\\n background: #fff;\\n border: 1px solid #dfdcda;\\n border-left: 0;\\n display: inline-block;\\n padding: 0 0.75em;\\n height: 100%;\\n\\n svg {\\n height: 22px;\\n width: 21px;\\n }\\n }\\n}\\n\\ndiv.search-results-container {\\n @include box-shadow.box-shadow(\\n 0 5px 5px -3px rgba(0, 0, 0, 0.2),\\n 0 8px 10px 1px rgba(0, 0, 0, 0.14),\\n 0 3px 14px 2px rgba(0, 0, 0, 0.12)\\n );\\n @include border-radius.border-radius(0 0 3px 3px);\\n position: absolute;\\n background: #fbfcfd;\\n display: none;\\n top: 37px;\\n z-index: 1;\\n\\n &.open {\\n display: block;\\n width: 100%;\\n overflow-y: auto;\\n }\\n\\n a {\\n color: colors.$primary-text;\\n text-decoration: none;\\n &:hover {\\n color: colors.$primary-text-hover;\\n text-decoration: underline;\\n }\\n }\\n\\n div.search-results-for-type {\\n &:nth-child(odd) {\\n background-color: #fbfcfd;\\n }\\n &:nth-child(even) {\\n background-color: #f5f6f7;\\n }\\n a.search-results-for-type-title {\\n font-family: typography.$default-font;\\n padding: 6px 16px;\\n font-size: 18px;\\n display: inline-block;\\n font-weight: normal;\\n span.search-results-for-type-number-badge {\\n @include border-radius.border-radius(6px);\\n padding: 1px 4px;\\n color: #fff;\\n background-color: colors.$primary-brand;\\n display: inline-block;\\n font-size: 0.7em;\\n vertical-align: middle;\\n text-align: center;\\n min-width: 24px;\\n font-weight: bold;\\n }\\n }\\n ul.search-results-for-type-list {\\n list-style: none;\\n padding: 0 16px 12px 32px;\\n margin: 0;\\n li {\\n a {\\n font-family: typography.$default-font;\\n padding: 2px 0;\\n display: block;\\n font-size: 14px;\\n font-weight: normal;\\n }\\n }\\n }\\n }\\n}\\n\\n.hidden {\\n height: 0;\\n width: 0;\\n position: absolute;\\n color: transparent;\\n overflow: hidden;\\n}\\n\",\"$default-font: \\\"Open Sans\\\", sans-serif;\\n$header-font: \\\"Raleway\\\", sans-serif;\\n$default-font-size: 15px;\\n\",\"@use \\\"../variables/breakpoints\\\";\\n\\n@mixin breakpoint($point) {\\n @if $point == desktop {\\n @media (min-width: breakpoints.$screen-desktop) {\\n @content;\\n }\\n } @else if $point == laptop {\\n @media (min-width: breakpoints.$screen-laptop) {\\n @content;\\n }\\n } @else if $point == tablet {\\n @media (min-width: breakpoints.$screen-tablet) {\\n @content;\\n }\\n } @else if $point == phablet {\\n @media (min-width: breakpoints.$screen-phablet) {\\n @content;\\n }\\n }\\n}\\n\",\"@mixin appearance ($value) {\\n -webkit-appearance: $value;\\n -moz-appearance: $value;\\n appearance: $value;\\n}\\n\",\"@mixin border-radius($radius) {\\n -webkit-border-radius: $radius;\\n border-radius: $radius;\\n}\\n\\n// Single side border-radius\\n\\n@mixin border-top-radius($radius) {\\n -webkit-border-top-right-radius: $radius;\\n border-top-right-radius: $radius;\\n -webkit-border-top-left-radius: $radius;\\n border-top-left-radius: $radius;\\n}\\n@mixin border-right-radius($radius) {\\n -webkit-border-bottom-right-radius: $radius;\\n border-bottom-right-radius: $radius;\\n -webkit-border-top-right-radius: $radius;\\n border-top-right-radius: $radius;\\n}\\n@mixin border-bottom-radius($radius) {\\n -webkit-border-bottom-right-radius: $radius;\\n border-bottom-right-radius: $radius;\\n -webkit-border-bottom-left-radius: $radius;\\n border-bottom-left-radius: $radius;\\n}\\n@mixin border-left-radius($radius) {\\n -webkit-border-bottom-left-radius: $radius;\\n border-bottom-left-radius: $radius;\\n -webkit-border-top-left-radius: $radius;\\n border-top-left-radius: $radius;\\n}\",\"@mixin box-shadow($shadows...) {\\n -webkit-box-shadow: $shadows;\\n -moz-box-shadow: $shadows;\\n box-shadow: $shadows;\\n}\\n\",\"$body-background: #ffffff;\\n$navigation-bar-background: #f7f7f7;\\n$hover-background: rgba(0,0,0,.05);\\n$default-border: #d8d8d8;\\n\\n$default-background: #eee;\\n$default-background-hover: #ddd;\\n$default-text:#2F3940;\\n\\n$light-gray: #f6f5f4;\\n\\n$primary-brand: #FE5000;\\n\\n$primary-background: #3767C7;\\n$primary-background-hover: #FE5000;\\n$primary-text: #3767C7;\\n$primary-text-hover:#0056b3;\\n\\n\\n$success-background: #06A755;\\n$success-background-hover: #009745;\\n$success-text: #06A755;\\n\\n\\n$warning-background: #C38621;\\n$warning-background-hover: #B37611;\\n$warning-text: #C38621;\\n\\n$danger-background: #E00d0D;\\n$danger-background-hover: #D00000;\\n$danger-text: #E00d0D;\\n\\n$disabled-background: #f4f4f4;\\n$disabled-border: #dedede;\\n$disabled-text: #707070;\\n\\n\\n$light-green: #8fff33;\\n$light-yellow: #ffEb3b;\\n$light-red: #ff4a2e;\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `*{box-sizing:border-box}div.map-items-container{margin-right:8px}div.map-items-container .icon-toggle-button{margin-top:.4em;-moz-transition:all .1s ease-in-out;-o-transition:all .1s ease-in-out;-webkit-transition:all .1s ease-in-out;transition:all .1s ease-in-out;border:none;background:rgba(0,0,0,0);color:#403f3f;cursor:pointer;padding:0;position:relative}@media(min-width: 37.5em){div.map-items-container .icon-toggle-button{padding:0 4px}}div.map-items-container .icon-toggle-button.open{color:#414042}div.map-items-container .icon-toggle-button .counter{display:flex;justify-content:center;align-items:center;-webkit-border-radius:35%;border-radius:35%;background-color:#fe5000;color:#fff;margin-top:-0.35em;margin-right:.2em;position:absolute;text-align:center;left:1.4em;line-height:1.4;height:1.4em;font-size:.8em}@media(min-width: 37.5em){div.map-items-container .icon-toggle-button .counter{height:1.5em;min-width:2em;line-height:1.5;font-size:.8em}}div.map-items-container .icon-toggle-button .counter.hidden{display:none}div.map-items-container .icon-toggle-button .map-icon svg{width:21px;height:22px}@media(min-width: 37.5em){div.map-items-container .icon-toggle-button .map-icon svg{width:26px;height:27px}}div.map-items-container .icon-toggle-button .map-icon svg:hover{color:#1073bc;cursor:pointer}div.map-items-container .map-item-list-wrapper{position:absolute}div.map-items-container .map-item-list-wrapper .map-item-list-container{-webkit-border-radius:0 0 3px 3px;border-radius:0 0 3px 3px;-moz-transition:all .1s ease-in-out;-o-transition:all .1s ease-in-out;-webkit-transition:all .1s ease-in-out;transition:all .1s ease-in-out;box-sizing:border-box;overflow:hidden;max-height:0;position:relative;top:10px;background-color:#fbfcfd;right:205px;width:260px}@media(min-width: 37.5em){div.map-items-container .map-item-list-wrapper .map-item-list-container{right:245px;width:300px}}@media print{div.map-items-container .map-item-list-wrapper .map-item-list-container{display:none}}div.map-items-container .map-item-list-wrapper .map-item-list-container.open{-webkit-box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12);-moz-box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12);box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12);height:auto;max-height:300px;overflow:auto}div.map-items-container .map-item-list-wrapper .map-item-list-container .page-link-element{display:block;text-align:center;padding:8px 16px;color:#3767c7;text-decoration:none;cursor:pointer;border:none;font-size:16px;font-weight:400;width:100%;font-family:\"Open Sans\",sans-serif}div.map-items-container .map-item-list-wrapper .map-item-list-container .page-link-element:hover{text-decoration:underline;color:#0056b3}div.map-items-container .map-item-list-wrapper .map-item-list-container ul{list-style:none;padding:0;margin:0}div.map-items-container .map-item-list-wrapper .map-item-list-container ul li{-moz-transition:all .15s ease-in-out;-o-transition:all .15s ease-in-out;-webkit-transition:all .15s ease-in-out;transition:all .15s ease-in-out;display:flex;align-items:center;justify-content:space-between;padding:8px 16px;font-size:14px;font-weight:normal}div.map-items-container .map-item-list-wrapper .map-item-list-container ul li:hover{background-color:rgba(0,0,0,.05)}div.map-items-container .map-item-list-wrapper .map-item-list-container ul li .list-icon{margin-left:8px;cursor:pointer;background:none;border:none}div.map-items-container .map-item-list-wrapper .map-item-list-container ul li .list-icon svg{color:#e00d0d;width:20px}`, \"\",{\"version\":3,\"sources\":[\"webpack://./stories/main-navigation/map-items/map-items.scss\",\"webpack://./style/mixins/_transition.scss\",\"webpack://./style/mixins/_breakpoints.scss\",\"webpack://./style/mixins/_border-radius.scss\",\"webpack://./style/variables/_colors.scss\",\"webpack://./style/mixins/_box-shadow.scss\",\"webpack://./style/variables/_typography.scss\"],\"names\":[],\"mappings\":\"AAMA,EACI,qBAAA,CAGJ,wBACI,gBAAA,CACA,4CACI,eAAA,CCZJ,mCDaI,CCZJ,iCDYI,CCXJ,sCDWI,CCVJ,8BDUI,CACA,WAAA,CACA,wBAAA,CACA,aAAA,CACA,cAAA,CACA,SAAA,CACA,iBAAA,CEJA,0BFJJ,4CAUQ,aAAA,CAAA,CAEJ,iDACI,aAAA,CAEJ,qDACI,YAAA,CACA,sBAAA,CACA,kBAAA,CG7BV,yBH8B+C,CG7B/C,iBH6B+C,CACrC,wBIrBI,CJsBJ,UAAA,CACA,kBAAA,CACA,iBAAA,CACA,iBAAA,CACA,iBAAA,CACA,UAAA,CACA,eAAA,CACA,YAAA,CACA,cAAA,CEzBJ,0BFWA,qDAgBQ,YAAA,CACA,aAAA,CACA,eAAA,CACA,cAAA,CAAA,CAEJ,4DACI,YAAA,CAIJ,0DACI,UAAA,CACA,WAAA,CEvCR,0BFqCI,0DAKQ,UAAA,CACA,WAAA,CAAA,CAEJ,gEACI,aAAA,CACA,cAAA,CAKhB,+CACI,iBAAA,CACA,wEGrEN,iCHsE+C,CGrE/C,yBHqE+C,CCtE7C,mCDuEQ,CCtER,iCDsEQ,CCrER,sCDqEQ,CCpER,8BDoEQ,CACA,qBAAA,CACA,eAAA,CACA,YAAA,CACA,iBAAA,CACA,QAAA,CACA,wBAAA,CACA,WAAA,CACA,WAAA,CEhEJ,0BFsDA,wEAYQ,WAAA,CACA,WAAA,CAAA,CAEJ,aAfJ,wEAgBQ,YAAA,CAAA,CAEJ,6EKvFR,8GLwFY,CKvFZ,2GLuFY,CKtFZ,sGLsFY,CAKA,WAAA,CACA,gBAAA,CACA,aAAA,CAEJ,2FACI,aAAA,CACA,iBAAA,CACA,gBAAA,CACA,aIvFD,CJwFC,oBAAA,CACA,cAAA,CACA,WAAA,CACA,cAAA,CACA,eAAA,CACA,UAAA,CACA,kCM7GD,CN8GC,iGACI,yBAAA,CACA,aIhGA,CJmGR,2EACI,eAAA,CACA,SAAA,CACA,QAAA,CACA,8ECtHZ,oCDuHgB,CCtHhB,kCDsHgB,CCrHhB,uCDqHgB,CCpHhB,+BDoHgB,CACA,YAAA,CACA,kBAAA,CACA,6BAAA,CACA,gBAAA,CACA,cAAA,CACA,kBAAA,CACA,oFACI,gCI9HL,CJgIC,yFACI,eAAA,CACA,cAAA,CACA,eAAA,CACA,WAAA,CACA,6FACI,aI1Gd,CJ2Gc,UAAA\",\"sourcesContent\":[\"@use \\\"../../../style/mixins/border-radius\\\";\\n@use \\\"../../../style/mixins/box-shadow\\\";\\n@use \\\"../../../style/mixins/breakpoints\\\";\\n@use \\\"../../../style/mixins/transition\\\";\\n@use \\\"../../../style/variables/colors\\\";\\n@use \\\"../../../style/variables/typography\\\";\\n* {\\n box-sizing: border-box;\\n}\\n\\ndiv.map-items-container {\\n margin-right: 8px;\\n .icon-toggle-button {\\n margin-top: 0.4em;\\n @include transition.transition(all 0.1s ease-in-out);\\n border: none;\\n background: transparent;\\n color: #403f3f;\\n cursor: pointer;\\n padding: 0;\\n position: relative;\\n @include breakpoints.breakpoint(phablet) {\\n padding: 0 4px;\\n }\\n &.open {\\n color: #414042;\\n }\\n .counter {\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n @include border-radius.border-radius(35%);\\n background-color: colors.$primary-brand;\\n color: #fff;\\n margin-top: -0.35em;\\n margin-right: 0.2em;\\n position: absolute;\\n text-align: center;\\n left: 1.4em;\\n line-height: 1.4;\\n height: 1.4em;\\n font-size: 0.8em;\\n @include breakpoints.breakpoint(phablet) {\\n height: 1.5em;\\n min-width: 2em;\\n line-height: 1.5;\\n font-size: 0.8em;\\n }\\n &.hidden {\\n display: none;\\n }\\n }\\n .map-icon {\\n svg {\\n width: 21px;\\n height: 22px;\\n\\n @include breakpoints.breakpoint(phablet) {\\n width: 26px;\\n height: 27px;\\n }\\n &:hover {\\n color: #1073bc;\\n cursor: pointer;\\n }\\n }\\n }\\n }\\n .map-item-list-wrapper {\\n position: absolute;\\n .map-item-list-container {\\n @include border-radius.border-radius(0 0 3px 3px);\\n @include transition.transition(all 0.1s ease-in-out);\\n box-sizing: border-box;\\n overflow: hidden;\\n max-height: 0;\\n position: relative;\\n top: 10px;\\n background-color: #fbfcfd;\\n right: 205px;\\n width: 260px;\\n @include breakpoints.breakpoint(phablet) {\\n right: 245px;\\n width: 300px;\\n }\\n @media print {\\n display: none;\\n }\\n &.open {\\n @include box-shadow.box-shadow(\\n 0 5px 5px -3px rgba(0, 0, 0, 0.2),\\n 0 8px 10px 1px rgba(0, 0, 0, 0.14),\\n 0 3px 14px 2px rgba(0, 0, 0, 0.12)\\n );\\n height: auto;\\n max-height: 300px;\\n overflow: auto;\\n }\\n .page-link-element {\\n display: block;\\n text-align: center;\\n padding: 8px 16px;\\n color: colors.$primary-text;\\n text-decoration: none;\\n cursor: pointer;\\n border: none;\\n font-size: 16px;\\n font-weight: 400;\\n width: 100%;\\n font-family: typography.$default-font;\\n &:hover {\\n text-decoration: underline;\\n color: colors.$primary-text-hover;\\n }\\n }\\n ul {\\n list-style: none;\\n padding: 0;\\n margin: 0;\\n li {\\n @include transition.transition(all 0.15s ease-in-out);\\n display: flex;\\n align-items: center;\\n justify-content: space-between;\\n padding: 8px 16px;\\n font-size: 14px;\\n font-weight: normal;\\n &:hover {\\n background-color: colors.$hover-background;\\n }\\n .list-icon {\\n margin-left: 8px;\\n cursor: pointer;\\n background: none;\\n border: none;\\n svg {\\n color: colors.$danger-text;\\n width: 20px;\\n }\\n }\\n }\\n }\\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\",\"@use \\\"../variables/breakpoints\\\";\\n\\n@mixin breakpoint($point) {\\n @if $point == desktop {\\n @media (min-width: breakpoints.$screen-desktop) {\\n @content;\\n }\\n } @else if $point == laptop {\\n @media (min-width: breakpoints.$screen-laptop) {\\n @content;\\n }\\n } @else if $point == tablet {\\n @media (min-width: breakpoints.$screen-tablet) {\\n @content;\\n }\\n } @else if $point == phablet {\\n @media (min-width: breakpoints.$screen-phablet) {\\n @content;\\n }\\n }\\n}\\n\",\"@mixin border-radius($radius) {\\n -webkit-border-radius: $radius;\\n border-radius: $radius;\\n}\\n\\n// Single side border-radius\\n\\n@mixin border-top-radius($radius) {\\n -webkit-border-top-right-radius: $radius;\\n border-top-right-radius: $radius;\\n -webkit-border-top-left-radius: $radius;\\n border-top-left-radius: $radius;\\n}\\n@mixin border-right-radius($radius) {\\n -webkit-border-bottom-right-radius: $radius;\\n border-bottom-right-radius: $radius;\\n -webkit-border-top-right-radius: $radius;\\n border-top-right-radius: $radius;\\n}\\n@mixin border-bottom-radius($radius) {\\n -webkit-border-bottom-right-radius: $radius;\\n border-bottom-right-radius: $radius;\\n -webkit-border-bottom-left-radius: $radius;\\n border-bottom-left-radius: $radius;\\n}\\n@mixin border-left-radius($radius) {\\n -webkit-border-bottom-left-radius: $radius;\\n border-bottom-left-radius: $radius;\\n -webkit-border-top-left-radius: $radius;\\n border-top-left-radius: $radius;\\n}\",\"$body-background: #ffffff;\\n$navigation-bar-background: #f7f7f7;\\n$hover-background: rgba(0,0,0,.05);\\n$default-border: #d8d8d8;\\n\\n$default-background: #eee;\\n$default-background-hover: #ddd;\\n$default-text:#2F3940;\\n\\n$light-gray: #f6f5f4;\\n\\n$primary-brand: #FE5000;\\n\\n$primary-background: #3767C7;\\n$primary-background-hover: #FE5000;\\n$primary-text: #3767C7;\\n$primary-text-hover:#0056b3;\\n\\n\\n$success-background: #06A755;\\n$success-background-hover: #009745;\\n$success-text: #06A755;\\n\\n\\n$warning-background: #C38621;\\n$warning-background-hover: #B37611;\\n$warning-text: #C38621;\\n\\n$danger-background: #E00d0D;\\n$danger-background-hover: #D00000;\\n$danger-text: #E00d0D;\\n\\n$disabled-background: #f4f4f4;\\n$disabled-border: #dedede;\\n$disabled-text: #707070;\\n\\n\\n$light-green: #8fff33;\\n$light-yellow: #ffEb3b;\\n$light-red: #ff4a2e;\\n\",\"@mixin box-shadow($shadows...) {\\n -webkit-box-shadow: $shadows;\\n -moz-box-shadow: $shadows;\\n box-shadow: $shadows;\\n}\\n\",\"$default-font: \\\"Open Sans\\\", sans-serif;\\n$header-font: \\\"Raleway\\\", sans-serif;\\n$default-font-size: 15px;\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `div.search-type-selector{width:235px;display:none}@media(min-width: 37.5em){div.search-type-selector{display:block}}div.search-type-selector label{font-size:14px;display:block;cursor:pointer;height:18px;font-weight:normal}div.search-type-selector label .search-type-counter{font-size:.9em}div.search-type-selector label .search-type-counter::before{content:\"(\"}div.search-type-selector label .search-type-counter::after{content:\")\"}div.search-type-selector input[type=radio]{-webkit-border-radius:50%;border-radius:50%;-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0;font:inherit;color:currentColor;width:16px;height:16px;border:2px solid #7d746d;transform:translateY(-0.075em);display:inline-grid;place-content:center}div.search-type-selector input[type=radio]::before{-webkit-border-radius:50%;border-radius:50%;content:\"\";width:8px;height:8px;transform:scale(0);transition:120ms transform ease-in-out}div.search-type-selector input[type=radio]:checked{border-color:#3767c7}div.search-type-selector input[type=radio]:checked::before{transform:scale(1);background-color:#3767c7}div.search-type-selector input[type=radio]:focus-visible{outline:max(2px,.1em) solid #3767c7;outline-offset:max(2px,.1em)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./stories/main-navigation/search-type-selector/search-type-selector.scss\",\"webpack://./style/mixins/_breakpoints.scss\",\"webpack://./style/mixins/_border-radius.scss\",\"webpack://./style/mixins/_appearance.scss\",\"webpack://./style/variables/_colors.scss\"],\"names\":[],\"mappings\":\"AAKA,yBACI,WAAA,CACA,YAAA,CCSI,0BDXR,yBAIQ,aAAA,CAAA,CAEJ,+BACI,cAAA,CACA,aAAA,CACA,cAAA,CACA,WAAA,CACA,kBAAA,CACA,oDACI,cAAA,CACA,4DACI,WAAA,CAEJ,2DACI,WAAA,CAIZ,2CE1BF,yBF2B2C,CE1B3C,iBF0B2C,CG3BzC,uBH4BmC,CG3BnC,oBH2BmC,CG1BnC,eH0BmC,CAC/B,QAAA,CACA,YAAA,CACA,kBAAA,CACA,UAAA,CACA,WAAA,CACA,wBAAA,CACA,8BAAA,CACA,mBAAA,CACA,oBAAA,CAGJ,mDExCF,yBFyC2C,CExC3C,iBFwC2C,CACrC,UAAA,CACA,SAAA,CACA,UAAA,CACA,kBAAA,CACA,sCAAA,CAGJ,mDACI,oBIpCO,CJqCP,2DACI,kBAAA,CACA,wBIvCG,CJ2CX,yDACI,mCAAA,CACA,4BAAA\",\"sourcesContent\":[\"@use \\\"../../../style/mixins/appearance\\\";\\n@use \\\"../../../style/mixins/border-radius\\\";\\n@use \\\"../../../style/mixins/breakpoints\\\";\\n@use \\\"../../../style/variables/colors\\\";\\n\\ndiv.search-type-selector {\\n width: 235px;\\n display: none;\\n @include breakpoints.breakpoint(phablet) {\\n display: block;\\n }\\n label {\\n font-size: 14px;\\n display: block;\\n cursor: pointer;\\n height: 18px;\\n font-weight: normal;\\n .search-type-counter {\\n font-size: 0.9em;\\n &::before {\\n content: \\\"(\\\";\\n }\\n &::after {\\n content: \\\")\\\";\\n }\\n }\\n }\\n input[type=\\\"radio\\\"] {\\n @include border-radius.border-radius(50%);\\n @include appearance.appearance(none);\\n margin: 0;\\n font: inherit;\\n color: currentColor;\\n width: 16px;\\n height: 16px;\\n border: 2px solid rgb(125, 116, 109);\\n transform: translateY(-0.075em);\\n display: inline-grid;\\n place-content: center;\\n }\\n\\n input[type=\\\"radio\\\"]::before {\\n @include border-radius.border-radius(50%);\\n content: \\\"\\\";\\n width: 8px;\\n height: 8px;\\n transform: scale(0);\\n transition: 120ms transform ease-in-out;\\n }\\n\\n input[type=\\\"radio\\\"]:checked {\\n border-color: colors.$primary-text;\\n &::before {\\n transform: scale(1);\\n background-color: colors.$primary-text;\\n }\\n }\\n\\n input[type=\\\"radio\\\"]:focus-visible {\\n outline: max(2px, 0.1em) solid colors.$primary-text;\\n outline-offset: max(2px, 0.1em);\\n }\\n}\\n\",\"@use \\\"../variables/breakpoints\\\";\\n\\n@mixin breakpoint($point) {\\n @if $point == desktop {\\n @media (min-width: breakpoints.$screen-desktop) {\\n @content;\\n }\\n } @else if $point == laptop {\\n @media (min-width: breakpoints.$screen-laptop) {\\n @content;\\n }\\n } @else if $point == tablet {\\n @media (min-width: breakpoints.$screen-tablet) {\\n @content;\\n }\\n } @else if $point == phablet {\\n @media (min-width: breakpoints.$screen-phablet) {\\n @content;\\n }\\n }\\n}\\n\",\"@mixin border-radius($radius) {\\n -webkit-border-radius: $radius;\\n border-radius: $radius;\\n}\\n\\n// Single side border-radius\\n\\n@mixin border-top-radius($radius) {\\n -webkit-border-top-right-radius: $radius;\\n border-top-right-radius: $radius;\\n -webkit-border-top-left-radius: $radius;\\n border-top-left-radius: $radius;\\n}\\n@mixin border-right-radius($radius) {\\n -webkit-border-bottom-right-radius: $radius;\\n border-bottom-right-radius: $radius;\\n -webkit-border-top-right-radius: $radius;\\n border-top-right-radius: $radius;\\n}\\n@mixin border-bottom-radius($radius) {\\n -webkit-border-bottom-right-radius: $radius;\\n border-bottom-right-radius: $radius;\\n -webkit-border-bottom-left-radius: $radius;\\n border-bottom-left-radius: $radius;\\n}\\n@mixin border-left-radius($radius) {\\n -webkit-border-bottom-left-radius: $radius;\\n border-bottom-left-radius: $radius;\\n -webkit-border-top-left-radius: $radius;\\n border-top-left-radius: $radius;\\n}\",\"@mixin appearance ($value) {\\n -webkit-appearance: $value;\\n -moz-appearance: $value;\\n appearance: $value;\\n}\\n\",\"$body-background: #ffffff;\\n$navigation-bar-background: #f7f7f7;\\n$hover-background: rgba(0,0,0,.05);\\n$default-border: #d8d8d8;\\n\\n$default-background: #eee;\\n$default-background-hover: #ddd;\\n$default-text:#2F3940;\\n\\n$light-gray: #f6f5f4;\\n\\n$primary-brand: #FE5000;\\n\\n$primary-background: #3767C7;\\n$primary-background-hover: #FE5000;\\n$primary-text: #3767C7;\\n$primary-text-hover:#0056b3;\\n\\n\\n$success-background: #06A755;\\n$success-background-hover: #009745;\\n$success-text: #06A755;\\n\\n\\n$warning-background: #C38621;\\n$warning-background-hover: #B37611;\\n$warning-text: #C38621;\\n\\n$danger-background: #E00d0D;\\n$danger-background-hover: #D00000;\\n$danger-text: #E00d0D;\\n\\n$disabled-background: #f4f4f4;\\n$disabled-border: #dedede;\\n$disabled-text: #707070;\\n\\n\\n$light-green: #8fff33;\\n$light-yellow: #ffEb3b;\\n$light-red: #ff4a2e;\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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\":\"AAIA,sBACI,YAAA,CACA,kBAAA,CACA,uBAAA,CACA,UAAA,CACA,aAAA,CACA,OAAA,CACA,kCCXW,CDYX,cAAA,CACA,6BAAA,CACA,kBAAA,CACA,mBAAA,CACA,wBAAA,CAMA,WAAA,CALA,4BACI,aAAA,CACA,cAAA,CAIJ,sCACI,YAAA,CACA,kBAAA,CACA,kBAAA,CACA,eAAA,CACA,qBAAA,CACA,eAAA,CErBA,yBFeJ,sCAQQ,oBAAA,CAAA,CAIJ,2CACI,WAAA,CACA,UAAA,CACA,qBAAA,CAIZ,cACI,cAAA,CACA,kCC5CW,CD6CX,iBAAA,CG5CA,mCH6CA,CG5CA,iCH4CA,CG3CA,sCH2CA,CG1CA,8BH0CA,CAEA,kBACI,YAAA,CACA,eAAA,CGjDJ,mCHkDI,CGjDJ,iCHiDI,CGhDJ,sCHgDI,CG/CJ,8BH+CI,CACA,iBAAA,CACA,YAAA,CACA,qBAAA,CACA,qBAAA,CACA,kDAAA,CACA,WAAA,CACA,WAAA,CACA,QAAA,CACA,WAAA,CACA,uCACI,aAAA,CACA,kDACI,kBAAA,CAGR,qBACI,oBAAA,CACA,wBACI,aAAA,CACA,2FAGI,aAAA,CAKZ,mCACI,wBAAA,CACA,YAAA,CACA,YAAA,CACA,qBAAA,CACA,OAAA,CAEJ,oCACI,qBAAA,CACA,eAAA,CACA,YAAA,CACA,qBAAA,CACA,OAAA,CACA,cAAA,CAEJ,+BACI,YAAA,CAEJ,yEAGI,UAAA,CACA,YAAA,CACA,yBAAA,CAEJ,0BACI,cAAA,CAGA,sCACI,gBAAA,CACA,UAAA,CACA,WAAA,CACA,UAAA,CAKR,uBACI,iBAAA,CAIZ,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,CACA,kBAAA,CACA,wBAAA,CACA,6FACI,WAAA\",\"sourcesContent\":[\"@use \\\"../../../style/mixins/breakpoints\\\";\\n@use \\\"../../../style/mixins/transition\\\";\\n@use \\\"../../../style/variables/typography\\\";\\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: typography.$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 breakpoints.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.menu-wrapper {\\n font-size: 14px;\\n font-family: typography.$default-font;\\n position: relative;\\n @include transition.transition(all 0.3s ease-in-out);\\n\\n > div {\\n max-height: 0;\\n overflow: hidden;\\n @include transition.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,\\n a:link,\\n a:visited {\\n color: #1a589f;\\n }\\n }\\n }\\n\\n > *:nth-child(odd) {\\n background-color: #f9f9f9;\\n padding: 32px;\\n display: flex;\\n flex-direction: column;\\n gap: 5px;\\n }\\n > *:nth-child(even) {\\n background-color: white;\\n margin-top: 10px;\\n display: flex;\\n flex-direction: column;\\n gap: 5px;\\n padding: 0 32px;\\n }\\n > *:last-child {\\n padding: 32px;\\n }\\n a,\\n a:link,\\n 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.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 font-weight: normal;\\n background: transparent;\\n &:not(:first-child) {\\n border: none;\\n }\\n }\\n}\\n\",\"$default-font: \\\"Open Sans\\\", sans-serif;\\n$header-font: \\\"Raleway\\\", sans-serif;\\n$default-font-size: 15px;\\n\",\"@use \\\"../variables/breakpoints\\\";\\n\\n@mixin breakpoint($point) {\\n @if $point == desktop {\\n @media (min-width: breakpoints.$screen-desktop) {\\n @content;\\n }\\n } @else if $point == laptop {\\n @media (min-width: breakpoints.$screen-laptop) {\\n @content;\\n }\\n } @else if $point == tablet {\\n @media (min-width: breakpoints.$screen-tablet) {\\n @content;\\n }\\n } @else if $point == phablet {\\n @media (min-width: breakpoints.$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","export default \"<template>\\n <div class=\\\"download-items-container\\\">\\n <button id=\\\"download-toggle-button\\\" class=\\\"icon-toggle-button\\\">\\n <span id=\\\"download-toggle-button-counter\\\" class=\\\"counter\\\"></span>\\n <span id=\\\"download-toggle-button-icon\\\" class=\\\"download-icon\\\"></span>\\n </button>\\n <div class=\\\"download-item-list-wrapper\\\">\\n <div id=\\\"download-item-list-container\\\" class=\\\"download-item-list-container\\\"></div>\\n </div>\\n </div>\\n</template>\";","export default \"<template>\\n <button id=\\\"menu-toggle-button\\\" class=\\\"menu-toggle-button\\\">\\n \\n <span id=\\\"menu-icon\\\"></span>\\n <span id=\\\"close-icon\\\"></span>\\n <span id=\\\"menu-title\\\" class=\\\"menu-title\\\">\\n Meny\\n </span>\\n </button>\\n <div id=\\\"menu-wrapper\\\" class=\\\"menu-wrapper\\\">\\n <div id=\\\"menu-container\\\" class=\\\"menu-container open\\\">\\n <div id=\\\"menu-item-list-container\\\" class=\\\"menu-item-list-container\\\"></div>\\n <div id=\\\"menu-actions-row\\\" class=\\\"menu-actions-row\\\"></div>\\n </div>\\n </div>\\n</template>\";","export default \"<template>\\n <div id=\\\"main-navigation\\\" class=\\\"main-navigation\\\">\\n <a id=\\\"main-content-link\\\" class=\\\"main-content-link\\\">\\n <span id=\\\"main-content-link-text\\\">Hopp til hovedinnhold</span>\\n </a>\\n <div class=\\\"main-navigation-container\\\">\\n <div class=\\\"main-navigation-content\\\">\\n <a id=\\\"main-navigation-logo\\\" class=\\\"logo\\\"></a>\\n <main-search-field class=\\\"search-container\\\"></main-search-field>\\n <div class=\\\"button-row\\\">\\n <map-items id=\\\"map-items\\\"></map-items>\\n <download-items id=\\\"download-items\\\"></download-items>\\n <user-account id=\\\"user-account\\\"></user-account>\\n <main-menu id=\\\"main-menu\\\"></main-menu>\\n \\n </div>\\n </div>\\n </div>\\n </div>\\n</template>\";","export default \"<template>\\n <div class=\\\"main-search-field\\\" id=\\\"main-search-content\\\">\\n <label id=\\\"main-search-input-label\\\" for=\\\"main-search-input\\\" class=\\\"hidden\\\">søk</label>\\n <input id=\\\"main-search-input\\\" autocomplete=\\\"off\\\" type=\\\"search\\\" value=\\\"\\\" />\\n <button id=\\\"search-submit-button\\\"></button>\\n <div id=\\\"search-results-container\\\" class=\\\"search-results-container\\\"> \\n </div>\\n </div>\\n </template>\";","export default \"<template>\\n <div class=\\\"map-items-container\\\">\\n <button id=\\\"map-toggle-button\\\" class=\\\"icon-toggle-button\\\">\\n <span id=\\\"map-toggle-button-counter\\\" class=\\\"counter\\\"></span>\\n <span id=\\\"map-toggle-button-icon\\\" class=\\\"map-icon\\\"></span>\\n </button>\\n <div class=\\\"map-item-list-wrapper\\\">\\n <div id=\\\"map-item-list-container\\\" class=\\\"map-item-list-container\\\"></div>\\n </div>\\n </div>\\n</template>\";","export default \"<template>\\n <div id=\\\"search-type-selector\\\" class=\\\"search-type-selector\\\">\\n <label for=\\\"search-type-metadata\\\">\\n <input name=\\\"search-type\\\" type=\\\"radio\\\" id=\\\"search-type-metadata\\\" value=\\\"metadata\\\" />\\n <span id=\\\"search-type-metadata-name\\\">Kartkatalogen</span>\\n <span id=\\\"search-type-metadata-counter\\\" class=\\\"search-type-counter\\\"></span>\\n </label>\\n <label for=\\\"search-type-article\\\">\\n <input name=\\\"search-type\\\" type=\\\"radio\\\" id=\\\"search-type-article\\\" value=\\\"articles\\\" />\\n <span id=\\\"search-type-article-name\\\">Artikler</span>\\n <span id=\\\"search-type-article-counter\\\" class=\\\"search-type-counter\\\"></span>\\n </label>\\n </div>\\n</template>\";","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> \";","\"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};","\"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};","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 { 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","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};","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';","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, 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};","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","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","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};","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 -960 960 960\\\"><path fill=\\\"currentColor\\\" d=\\\"M160-240q-17 0-28.5-11.5T120-280q0-17 11.5-28.5T160-320h640q17 0 28.5 11.5T840-280q0 17-11.5 28.5T800-240H160Zm0-200q-17 0-28.5-11.5T120-480q0-17 11.5-28.5T160-520h640q17 0 28.5 11.5T840-480q0 17-11.5 28.5T800-440H160Zm0-200q-17 0-28.5-11.5T120-680q0-17 11.5-28.5T160-720h640q17 0 28.5 11.5T840-680q0 17-11.5 28.5T800-640H160Z\\\"></path></svg>\"","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 -960 960 960\\\"><path fill=\\\"currentColor\\\" d=\\\"m256-200-56-56 224-224-224-224 56-56 224 224 224-224 56 56-224 224 224 224-56 56-224-224-224 224Z\\\"></path></svg>\"","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 -960 960 960\\\"><path fill=\\\"currentColor\\\" d=\\\"M440-474v-242q-76 14-118 73.5T280-520h-20q-58 0-99 41t-41 99q0 58 41 99t99 41h480q42 0 71-29t29-71q0-42-29-71t-71-29h-60v-80q0-48-22-89.5T600-680v-93q74 35 117 103.5T760-520q69 8 114.5 59.5T920-340q0 75-52.5 127.5T740-160H260q-91 0-155.5-63T40-377q0-78 47-139t123-78q17-72 85-137t145-65q33 0 56.5 23.5T520-716v242l36-35q11-11 27.5-11t28.5 12q11 11 11 28t-11 28L508-348q-12 12-28 12t-28-12L348-452q-11-11-11.5-27.5T348-508q11-11 27.5-11.5T404-509l36 35Zm40-44Z\\\"></path></svg>\"","module.exports = \"<svg id=\\\"Layer_1\\\" data-name=\\\"Layer 1\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 415.11 55\\\" role=\\\"img\\\" aria-labelledby=\\\"GeonorgeNavbarLogoTitle\\\"><title id=\\\"GeonorgeNavbarLogoTitle\\\">Geonorge logo</title><defs><style>.__1Z-QegB__cls-1{fill:#4d4d4f;}.__1Z-QegB__cls-2{fill:#a6a8ab;}.__1Z-QegB__cls-3{fill:#bbbdbf;}.__1Z-QegB__cls-4{fill:#6d6e70;}.__1Z-QegB__cls-5{fill:#929497;}.__1Z-QegB__cls-6{fill:#fe5000;}.__1Z-QegB__cls-7{fill:#404041;}</style></defs><title>Artboard 1</title><polygon class=\\\"__1Z-QegB__cls-1 \\\" points=\\\"20.9 30.4 20.9 54.5 0 42.4 20.9 30.4\\\"></polygon><polygon class=\\\"__1Z-QegB__cls-2 \\\" points=\\\"20.9 6.3 20.9 30.4 0 18.3 20.9 6.3\\\"></polygon><polyline class=\\\"__1Z-QegB__cls-3 \\\" points=\\\"20.9 30.4 41.8 42.4 41.8 18.3 20.9 30.4\\\"></polyline><polyline class=\\\"__1Z-QegB__cls-4 \\\" points=\\\"20.9 30.4 0 42.4 0 18.3 20.9 30.4\\\"></polyline><polyline class=\\\"__1Z-QegB__cls-5 \\\" points=\\\"20.9 30.4 20.9 54.5 41.8 42.4 20.9 30.4\\\"></polyline><path class=\\\"__1Z-QegB__cls-6 \\\" d=\\\"M24.5,9.1a8.08,8.08,0,0,1,1.2-4.7,8.78,8.78,0,0,1,15.2,8.8,9.49,9.49,0,0,1-3.5,3.4L24.5,24Zm13,2.1a4.8,4.8,0,0,0-1.8-6.7A4.93,4.93,0,0,0,29,6.3a4.84,4.84,0,0,0-.7,2.6A5,5,0,0,0,30.8,13a4.84,4.84,0,0,0,4.8.1A3.9,3.9,0,0,0,37.5,11.2Z\\\"></path><path class=\\\"__1Z-QegB__cls-7 \\\" d=\\\"M274.2,48.7h4.6c.2,0,.3-.2.4-.3s.1-.2,0-.2c-.8-1.6-5.2-10.2-6.6-12.8l-.1-.3.3-.1a9.48,9.48,0,0,0,2.7-1.7,11,11,0,0,0,3.3-5.8,12.47,12.47,0,0,0,.1-4.7,10.29,10.29,0,0,0-4.1-6.7,9.75,9.75,0,0,0-5.1-1.9H253.3c-.6,0-.7.1-.7.7v33c0,.6.1.7.7.7h5c.6,0,.7-.1.7-.7V35.8h5.7a.87.87,0,0,1,.9.5c.1.2.9,1.7,1.8,3.6,1.3,2.6,3.1,6.1,4.1,8a1.16,1.16,0,0,0,1.2.8ZM259,29.9V20h9.2a4.27,4.27,0,0,1,4.1,3.3,6.65,6.65,0,0,1-.2,4.2,3.84,3.84,0,0,1-3.6,2.5h0Z\\\"></path><path class=\\\"__1Z-QegB__cls-7 \\\" d=\\\"M104.6,14.2c-.6,0-.7.1-.7.7v33c0,.6.1.7.7.7H127c.6,0,.7-.1.7-.7V43.6c0-.6-.1-.7-.7-.7H110.3V34.2h13.3c.6,0,.7-.1.7-.7V29.4c0-.6-.1-.7-.7-.7H110.3V20H127c.6,0,.7-.1.7-.7V15c0-.6-.1-.7-.7-.7H104.6Z\\\"></path><path class=\\\"__1Z-QegB__cls-7 \\\" d=\\\"M326.9,14.2c-.6,0-.7.1-.7.7v33c0,.6.1.7.7.7h22.4c.6,0,.7-.1.7-.7V43.6c0-.6-.1-.7-.7-.7H332.6V34.2h13.3c.6,0,.7-.1.7-.7V29.4c0-.6-.1-.7-.7-.7H332.6V20h16.7c.6,0,.7-.1.7-.7V15c0-.6-.1-.7-.7-.7H326.9Z\\\"></path><path class=\\\"__1Z-QegB__cls-7 \\\" d=\\\"M149.7,13.8a17.7,17.7,0,1,0,17.6,17.7A17.65,17.65,0,0,0,149.7,13.8Zm0,29.5c-6.2,0-11.2-5.3-11.2-11.9s5-11.9,11.2-11.9,11.2,5.3,11.2,11.9S155.9,43.3,149.7,43.3Z\\\"></path><path class=\\\"__1Z-QegB__cls-7 \\\" d=\\\"M228.2,13.8a17.7,17.7,0,1,0,17.6,17.7A17.65,17.65,0,0,0,228.2,13.8Zm0,29.5C222,43.3,217,38,217,31.5s5-11.9,11.2-11.9,11.2,5.3,11.2,11.9S234.4,43.3,228.2,43.3Z\\\"></path><path class=\\\"__1Z-QegB__cls-7 \\\" d=\\\"M80.2,13.8A17.7,17.7,0,1,0,97.8,31.5V29.4c0-.6-.1-.7-.7-.7H79.6c-.6,0-.7.1-.7.7v4.1c0,.3,0,.5.1.6s.3.1.6.1H91.1l-.1.6a11.38,11.38,0,0,1-10.8,8.5C74.1,43.3,69,38,69,31.5s5-11.9,11.2-11.9a10.91,10.91,0,0,1,7.3,2.8c.5.5.7.5,1.1,0l3.2-3.2c.5-.5.5-.6,0-1.1A17.53,17.53,0,0,0,80.2,13.8Z\\\"></path><path class=\\\"__1Z-QegB__cls-7 \\\" d=\\\"M302.6,13.8a17.7,17.7,0,1,0,17.6,17.7V29.4c0-.6-.1-.7-.7-.7H302c-.6,0-.7.1-.7.7v4.1c0,.3,0,.5.1.6s.3.1.6.1h11.5l-.1.6a11.38,11.38,0,0,1-10.8,8.5c-6.2,0-11.2-5.3-11.2-11.9s5-11.9,11.2-11.9a10.91,10.91,0,0,1,7.3,2.8c.5.5.7.5,1.1,0l3.2-3.2c.5-.5.5-.6,0-1.1A18.16,18.16,0,0,0,302.6,13.8Z\\\"></path><path class=\\\"__1Z-QegB__cls-7 \\\" d=\\\"M180.9,26c.1,0,.1,0,.2.1,2.2,1.4,12.7,8.3,15.6,10.2a1.25,1.25,0,0,1,.6,1.1V48.1c0,.6.1.7.7.7h5c.6,0,.7-.1.7-.7v-33c0-.6-.1-.7-.7-.7h-5c-.6,0-.7.1-.7.7V29.3L174.8,14.1a.76.76,0,0,0-.4-.1.52.52,0,0,0-.2.4V48.1c0,.6.1.7.7.7h5c.6,0,.7-.1.7-.7V26Z\\\"></path></svg>\"","module.exports = \"<svg id=\\\"Layer_1\\\" data-name=\\\"Layer 1\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 415.11 55\\\" role=\\\"img\\\" aria-labelledby=\\\"GeonorgeNavbarDevLogoTitle\\\"><title id=\\\"GeonorgeNavbarDevLogoTitle\\\">Geonorge logo for utviklingsmiljø</title><defs><style>.__1VEHdQg__cls-1{fill:#4d4d4f;}.__1VEHdQg__cls-2{fill:#a6a8ab;}.__1VEHdQg__cls-3{fill:#bbbdbf;}.__1VEHdQg__cls-4{fill:#6d6e70;}.__1VEHdQg__cls-5{fill:#929497;}.__1VEHdQg__cls-6{fill:#fe5000;}.__1VEHdQg__cls-7{fill:#404041;}.__1VEHdQg__cls-8{fill:#ee432a;}.__1VEHdQg__cls-9{font-size:21px;fill:#fff;font-family:Arial-BoldMT, Arial;font-weight:700;}</style></defs><title>Artboard 1</title><polygon class=\\\"__1VEHdQg__cls-1 \\\" points=\\\"20.9 30.4 20.9 54.5 0 42.4 20.9 30.4\\\"></polygon><polygon class=\\\"__1VEHdQg__cls-2 \\\" points=\\\"20.9 6.3 20.9 30.4 0 18.3 20.9 6.3\\\"></polygon><polyline class=\\\"__1VEHdQg__cls-3 \\\" points=\\\"20.9 30.4 41.8 42.4 41.8 18.3 20.9 30.4\\\"></polyline><polyline class=\\\"__1VEHdQg__cls-4 \\\" points=\\\"20.9 30.4 0 42.4 0 18.3 20.9 30.4\\\"></polyline><polyline class=\\\"__1VEHdQg__cls-5 \\\" points=\\\"20.9 30.4 20.9 54.5 41.8 42.4 20.9 30.4\\\"></polyline><path class=\\\"__1VEHdQg__cls-6 \\\" d=\\\"M24.5,9.1a8.08,8.08,0,0,1,1.2-4.7,8.78,8.78,0,0,1,15.2,8.8,9.49,9.49,0,0,1-3.5,3.4L24.5,24Zm13,2.1a4.8,4.8,0,0,0-1.8-6.7A4.93,4.93,0,0,0,29,6.3a4.84,4.84,0,0,0-.7,2.6A5,5,0,0,0,30.8,13a4.84,4.84,0,0,0,4.8.1A3.9,3.9,0,0,0,37.5,11.2Z\\\"></path><path class=\\\"__1VEHdQg__cls-7 \\\" d=\\\"M274.2,48.7h4.6c.2,0,.3-.2.4-.3s.1-.2,0-.2c-.8-1.6-5.2-10.2-6.6-12.8l-.1-.3.3-.1a9.48,9.48,0,0,0,2.7-1.7,11,11,0,0,0,3.3-5.8,12.47,12.47,0,0,0,.1-4.7,10.29,10.29,0,0,0-4.1-6.7,9.75,9.75,0,0,0-5.1-1.9H253.3c-.6,0-.7.1-.7.7v33c0,.6.1.7.7.7h5c.6,0,.7-.1.7-.7V35.8h5.7a.87.87,0,0,1,.9.5c.1.2.9,1.7,1.8,3.6,1.3,2.6,3.1,6.1,4.1,8a1.16,1.16,0,0,0,1.2.8ZM259,29.9V20h9.2a4.27,4.27,0,0,1,4.1,3.3,6.65,6.65,0,0,1-.2,4.2,3.84,3.84,0,0,1-3.6,2.5h0Z\\\"></path><path class=\\\"__1VEHdQg__cls-7 \\\" d=\\\"M104.6,14.2c-.6,0-.7.1-.7.7v33c0,.6.1.7.7.7H127c.6,0,.7-.1.7-.7V43.6c0-.6-.1-.7-.7-.7H110.3V34.2h13.3c.6,0,.7-.1.7-.7V29.4c0-.6-.1-.7-.7-.7H110.3V20H127c.6,0,.7-.1.7-.7V15c0-.6-.1-.7-.7-.7H104.6Z\\\"></path><path class=\\\"__1VEHdQg__cls-7 \\\" d=\\\"M326.9,14.2c-.6,0-.7.1-.7.7v33c0,.6.1.7.7.7h22.4c.6,0,.7-.1.7-.7V43.6c0-.6-.1-.7-.7-.7H332.6V34.2h13.3c.6,0,.7-.1.7-.7V29.4c0-.6-.1-.7-.7-.7H332.6V20h16.7c.6,0,.7-.1.7-.7V15c0-.6-.1-.7-.7-.7H326.9Z\\\"></path><path class=\\\"__1VEHdQg__cls-7 \\\" d=\\\"M149.7,13.8a17.7,17.7,0,1,0,17.6,17.7A17.65,17.65,0,0,0,149.7,13.8Zm0,29.5c-6.2,0-11.2-5.3-11.2-11.9s5-11.9,11.2-11.9,11.2,5.3,11.2,11.9S155.9,43.3,149.7,43.3Z\\\"></path><path class=\\\"__1VEHdQg__cls-7 \\\" d=\\\"M228.2,13.8a17.7,17.7,0,1,0,17.6,17.7A17.65,17.65,0,0,0,228.2,13.8Zm0,29.5C222,43.3,217,38,217,31.5s5-11.9,11.2-11.9,11.2,5.3,11.2,11.9S234.4,43.3,228.2,43.3Z\\\"></path><path class=\\\"__1VEHdQg__cls-7 \\\" d=\\\"M80.2,13.8A17.7,17.7,0,1,0,97.8,31.5V29.4c0-.6-.1-.7-.7-.7H79.6c-.6,0-.7.1-.7.7v4.1c0,.3,0,.5.1.6s.3.1.6.1H91.1l-.1.6a11.38,11.38,0,0,1-10.8,8.5C74.1,43.3,69,38,69,31.5s5-11.9,11.2-11.9a10.91,10.91,0,0,1,7.3,2.8c.5.5.7.5,1.1,0l3.2-3.2c.5-.5.5-.6,0-1.1A17.53,17.53,0,0,0,80.2,13.8Z\\\"></path><path class=\\\"__1VEHdQg__cls-7 \\\" d=\\\"M302.6,13.8a17.7,17.7,0,1,0,17.6,17.7V29.4c0-.6-.1-.7-.7-.7H302c-.6,0-.7.1-.7.7v4.1c0,.3,0,.5.1.6s.3.1.6.1h11.5l-.1.6a11.38,11.38,0,0,1-10.8,8.5c-6.2,0-11.2-5.3-11.2-11.9s5-11.9,11.2-11.9a10.91,10.91,0,0,1,7.3,2.8c.5.5.7.5,1.1,0l3.2-3.2c.5-.5.5-.6,0-1.1A18.16,18.16,0,0,0,302.6,13.8Z\\\"></path><path class=\\\"__1VEHdQg__cls-7 \\\" d=\\\"M180.9,26c.1,0,.1,0,.2.1,2.2,1.4,12.7,8.3,15.6,10.2a1.25,1.25,0,0,1,.6,1.1V48.1c0,.6.1.7.7.7h5c.6,0,.7-.1.7-.7v-33c0-.6-.1-.7-.7-.7h-5c-.6,0-.7.1-.7.7V29.3L174.8,14.1a.76.76,0,0,0-.4-.1.52.52,0,0,0-.2.4V48.1c0,.6.1.7.7.7h5c.6,0,.7-.1.7-.7V26Z\\\"></path><rect class=\\\"__1VEHdQg__cls-8 \\\" x=\\\"353.52\\\" y=\\\"0.02\\\" width=\\\"61.59\\\" height=\\\"22.72\\\" rx=\\\"4.67\\\"></rect><text class=\\\"__1VEHdQg__cls-9 \\\" transform=\\\"translate(363.76 19)\\\">DEV</text></svg>\"","module.exports = \"<svg id=\\\"Layer_1\\\" data-name=\\\"Layer 1\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 415.11 55\\\" role=\\\"img\\\" aria-labelledby=\\\"GeonorgeNavbarTestLogoTitle\\\"><title id=\\\"GeonorgeNavbarTestLogoTitle\\\">Geonorge logo for testmiljø</title><defs><style>.__1OLSYtO__cls-1{fill:#4d4d4f;}.__1OLSYtO__cls-2{fill:#a6a8ab;}.__1OLSYtO__cls-3{fill:#bbbdbf;}.__1OLSYtO__cls-4{fill:#6d6e70;}.__1OLSYtO__cls-5{fill:#929497;}.__1OLSYtO__cls-6{fill:#fe5000;}.__1OLSYtO__cls-7{fill:#404041;}.__1OLSYtO__cls-8{fill:#36c545;}.__1OLSYtO__cls-9{font-size:21px;fill:#fff;font-family:Arial-BoldMT, Arial;font-weight:700;}</style></defs><title>Artboard 1</title><polygon class=\\\"__1OLSYtO__cls-1 \\\" points=\\\"20.9 30.4 20.9 54.5 0 42.4 20.9 30.4\\\"></polygon><polygon class=\\\"__1OLSYtO__cls-2 \\\" points=\\\"20.9 6.3 20.9 30.4 0 18.3 20.9 6.3\\\"></polygon><polyline class=\\\"__1OLSYtO__cls-3 \\\" points=\\\"20.9 30.4 41.8 42.4 41.8 18.3 20.9 30.4\\\"></polyline><polyline class=\\\"__1OLSYtO__cls-4 \\\" points=\\\"20.9 30.4 0 42.4 0 18.3 20.9 30.4\\\"></polyline><polyline class=\\\"__1OLSYtO__cls-5 \\\" points=\\\"20.9 30.4 20.9 54.5 41.8 42.4 20.9 30.4\\\"></polyline><path class=\\\"__1OLSYtO__cls-6 \\\" d=\\\"M24.5,9.1a8.08,8.08,0,0,1,1.2-4.7,8.78,8.78,0,0,1,15.2,8.8,9.49,9.49,0,0,1-3.5,3.4L24.5,24Zm13,2.1a4.8,4.8,0,0,0-1.8-6.7A4.93,4.93,0,0,0,29,6.3a4.84,4.84,0,0,0-.7,2.6A5,5,0,0,0,30.8,13a4.84,4.84,0,0,0,4.8.1A3.9,3.9,0,0,0,37.5,11.2Z\\\"></path><path class=\\\"__1OLSYtO__cls-7 \\\" d=\\\"M274.2,48.7h4.6c.2,0,.3-.2.4-.3s.1-.2,0-.2c-.8-1.6-5.2-10.2-6.6-12.8l-.1-.3.3-.1a9.48,9.48,0,0,0,2.7-1.7,11,11,0,0,0,3.3-5.8,12.47,12.47,0,0,0,.1-4.7,10.29,10.29,0,0,0-4.1-6.7,9.75,9.75,0,0,0-5.1-1.9H253.3c-.6,0-.7.1-.7.7v33c0,.6.1.7.7.7h5c.6,0,.7-.1.7-.7V35.8h5.7a.87.87,0,0,1,.9.5c.1.2.9,1.7,1.8,3.6,1.3,2.6,3.1,6.1,4.1,8a1.16,1.16,0,0,0,1.2.8ZM259,29.9V20h9.2a4.27,4.27,0,0,1,4.1,3.3,6.65,6.65,0,0,1-.2,4.2,3.84,3.84,0,0,1-3.6,2.5h0Z\\\"></path><path class=\\\"__1OLSYtO__cls-7 \\\" d=\\\"M104.6,14.2c-.6,0-.7.1-.7.7v33c0,.6.1.7.7.7H127c.6,0,.7-.1.7-.7V43.6c0-.6-.1-.7-.7-.7H110.3V34.2h13.3c.6,0,.7-.1.7-.7V29.4c0-.6-.1-.7-.7-.7H110.3V20H127c.6,0,.7-.1.7-.7V15c0-.6-.1-.7-.7-.7H104.6Z\\\"></path><path class=\\\"__1OLSYtO__cls-7 \\\" d=\\\"M326.9,14.2c-.6,0-.7.1-.7.7v33c0,.6.1.7.7.7h22.4c.6,0,.7-.1.7-.7V43.6c0-.6-.1-.7-.7-.7H332.6V34.2h13.3c.6,0,.7-.1.7-.7V29.4c0-.6-.1-.7-.7-.7H332.6V20h16.7c.6,0,.7-.1.7-.7V15c0-.6-.1-.7-.7-.7H326.9Z\\\"></path><path class=\\\"__1OLSYtO__cls-7 \\\" d=\\\"M149.7,13.8a17.7,17.7,0,1,0,17.6,17.7A17.65,17.65,0,0,0,149.7,13.8Zm0,29.5c-6.2,0-11.2-5.3-11.2-11.9s5-11.9,11.2-11.9,11.2,5.3,11.2,11.9S155.9,43.3,149.7,43.3Z\\\"></path><path class=\\\"__1OLSYtO__cls-7 \\\" d=\\\"M228.2,13.8a17.7,17.7,0,1,0,17.6,17.7A17.65,17.65,0,0,0,228.2,13.8Zm0,29.5C222,43.3,217,38,217,31.5s5-11.9,11.2-11.9,11.2,5.3,11.2,11.9S234.4,43.3,228.2,43.3Z\\\"></path><path class=\\\"__1OLSYtO__cls-7 \\\" d=\\\"M80.2,13.8A17.7,17.7,0,1,0,97.8,31.5V29.4c0-.6-.1-.7-.7-.7H79.6c-.6,0-.7.1-.7.7v4.1c0,.3,0,.5.1.6s.3.1.6.1H91.1l-.1.6a11.38,11.38,0,0,1-10.8,8.5C74.1,43.3,69,38,69,31.5s5-11.9,11.2-11.9a10.91,10.91,0,0,1,7.3,2.8c.5.5.7.5,1.1,0l3.2-3.2c.5-.5.5-.6,0-1.1A17.53,17.53,0,0,0,80.2,13.8Z\\\"></path><path class=\\\"__1OLSYtO__cls-7 \\\" d=\\\"M302.6,13.8a17.7,17.7,0,1,0,17.6,17.7V29.4c0-.6-.1-.7-.7-.7H302c-.6,0-.7.1-.7.7v4.1c0,.3,0,.5.1.6s.3.1.6.1h11.5l-.1.6a11.38,11.38,0,0,1-10.8,8.5c-6.2,0-11.2-5.3-11.2-11.9s5-11.9,11.2-11.9a10.91,10.91,0,0,1,7.3,2.8c.5.5.7.5,1.1,0l3.2-3.2c.5-.5.5-.6,0-1.1A18.16,18.16,0,0,0,302.6,13.8Z\\\"></path><path class=\\\"__1OLSYtO__cls-7 \\\" d=\\\"M180.9,26c.1,0,.1,0,.2.1,2.2,1.4,12.7,8.3,15.6,10.2a1.25,1.25,0,0,1,.6,1.1V48.1c0,.6.1.7.7.7h5c.6,0,.7-.1.7-.7v-33c0-.6-.1-.7-.7-.7h-5c-.6,0-.7.1-.7.7V29.3L174.8,14.1a.76.76,0,0,0-.4-.1.52.52,0,0,0-.2.4V48.1c0,.6.1.7.7.7h5c.6,0,.7-.1.7-.7V26Z\\\"></path><rect class=\\\"__1OLSYtO__cls-8 \\\" x=\\\"353.52\\\" y=\\\"0.02\\\" width=\\\"61.59\\\" height=\\\"22.72\\\" rx=\\\"4.67\\\"></rect><text class=\\\"__1OLSYtO__cls-9 \\\" transform=\\\"translate(358.52 19)\\\">TEST</text></svg>\"","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 -960 960 960\\\"><path fill=\\\"currentColor\\\" d=\\\"M480-186q122-112 181-203.5T720-552q0-109-69.5-178.5T480-800q-101 0-170.5 69.5T240-552q0 71 59 162.5T480-186Zm0 79q-14 0-28-5t-25-15q-65-60-115-117t-83.5-110.5q-33.5-53.5-51-103T160-552q0-150 96.5-239T480-880q127 0 223.5 89T800-552q0 45-17.5 94.5t-51 103Q698-301 648-244T533-127q-11 10-25 15t-28 5Zm0-453Zm0 80q33 0 56.5-23.5T560-560q0-33-23.5-56.5T480-640q-33 0-56.5 23.5T400-560q0 33 23.5 56.5T480-480Z\\\"></path></svg>\"","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>\"","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>\"","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>\"","module.exports = \"<svg version=\\\"1.1\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" xmlns:xlink=\\\"http://www.w3.org/1999/xlink\\\" x=\\\"0px\\\" y=\\\"0px\\\" viewBox=\\\"0 0 34 35\\\" style=\\\"enable-background:new 0 0 34 35;\\\" xml:space=\\\"preserve\\\"><style type=\\\"text/css\\\"> .__24nL31r__st0{fill:#B0A9A2;} </style><g><path class=\\\"__24nL31r__st0 \\\" d=\\\"M23.6,22.8c2.2-2.4,3.6-5.7,3.6-9.2C27.2,6.1,21.1,0,13.6,0C6.1,0,0,6.1,0,13.6c0,7.5,6.1,13.6,13.6,13.6 c3.1,0,5.9-1,8.1-2.7l10.1,10.1c0.2,0.2,0.6,0.4,0.9,0.4c0.3,0,0.6-0.1,0.9-0.4c0.5-0.5,0.5-1.3,0-1.7L23.6,22.8z M2.5,13.6 c0-6.1,5-11.1,11.1-11.1c6.1,0,11.1,5,11.1,11.1s-5,11.1-11.1,11.1S2.5,19.7,2.5,13.6L2.5,13.6z\\\"></path></g></svg>\"","module.exports = \"<svg aria-hidden=\\\"true\\\" focusable=\\\"false\\\" data-prefix=\\\"far\\\" data-icon=\\\"trash\\\" class=\\\"__1FtTC55__svg-inline--fa __1FtTC55__fa-trash __1FtTC55__fa-w-14 __1FtTC55__ \\\" role=\\\"img\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 448 512\\\"><title>Soppelkasse ikon</title><path fill=\\\"currentColor\\\" d=\\\"M432 80h-82.4l-34-56.7A48 48 0 0 0 274.4 0H173.6a48 48 0 0 0-41.2 23.3L98.4 80H16A16 16 0 0 0 0 96v16a16 16 0 0 0 16 16h16l21.2 339a48 48 0 0 0 47.9 45h245.8a48 48 0 0 0 47.9-45L416 128h16a16 16 0 0 0 16-16V96a16 16 0 0 0-16-16zM173.6 48h100.8l19.2 32H154.4zm173.3 416H101.11l-21-336h287.8z\\\"></path></svg>\"","export const getKartkatalogApiUrl = (environment: string) => {\n const environmentSlug = environment === \"dev\" || environment === \"test\" ? environment + \".\" : \"\";\n return `https://kartkatalog.${environmentSlug}geonorge.no/api`;\n};\n\nexport const getMinSideShortcutApiUrl = (environment: string, shortcutUrl?: string) => {\n const environmentSlug = environment === \"dev\" || environment === \"test\" ? environment + \".\" : \"\";\n const urlParameterString = shortcutUrl?.length ? `?${new URLSearchParams({ url: shortcutUrl }).toString()}` : \"\";\n return `https://minside.${environmentSlug}geonorge.no/api/shortcut${urlParameterString}`;\n};\nexport const getMinSideShortcutUrl = (environment: string) => {\n const environmentSlug = environment === \"dev\" || environment === \"test\" ? environment + \".\" : \"\";\n return `https://minside.${environmentSlug}geonorge.no/shortcuts`;\n};\n\nexport const fetchShortcutItem = async (environment: string = \"\", token: string, shortcutUrl: string) => {\n const apiUrl = getMinSideShortcutApiUrl(environment, shortcutUrl);\n const fetchOptions = {\n method: \"GET\",\n headers: new Headers({\n Authorization: `Bearer ${token}`\n })\n };\n try {\n return fetch(apiUrl, fetchOptions).then((res) => {\n if (res.status === 200) {\n return res.json().then((shortcutItem) => {\n return shortcutItem;\n });\n } else {\n return null;\n }\n });\n } catch (error) {\n console.error(\"Error fetching shortcut items:\", error);\n return null;\n }\n};\n\nexport const postShortcutItem = async (\n environment: string = \"\",\n token: string,\n shortcutItem: { name: string; url: string }\n) => {\n const apiUrl = getMinSideShortcutApiUrl(environment);\n const fetchOptions = {\n method: \"POST\",\n headers: new Headers({\n Authorization: `Bearer ${token}`,\n \"Content-Type\": \"application/json\"\n }),\n body: JSON.stringify(shortcutItem)\n };\n return fetch(apiUrl, fetchOptions)\n .then((res) => res.json())\n .then((shortcutItem) => {\n return shortcutItem;\n });\n};\n\nexport const deleteShortcutItem = async (environment: string = \"\", token: string, shortcutItem: { url: string }) => {\n const apiUrl = getMinSideShortcutApiUrl(environment);\n const fetchOptions = {\n method: \"DELETE\",\n headers: new Headers({\n Authorization: `Bearer ${token}`,\n \"Content-Type\": \"application/json\"\n }),\n body: JSON.stringify(shortcutItem)\n };\n return fetch(apiUrl, fetchOptions);\n};\n\nexport const getGeonorgeMenuUrl = (language: string, environment: string) => {\n const environmentSlug = environment === \"dev\" || environment === \"test\" ? \"test.\" : \"\";\n const selectedLanguageSlug = language === \"en\" ? \"en/\" : \"\";\n if (environment === \"dev\") return `https://dev.geonorge.no/menu.xml`;\n else return `https://www.${environmentSlug}geonorge.no/${selectedLanguageSlug}api/menu/get?omitLinks=1`;\n};\n\nexport const fetchMenuItems = (language: string = \"no\", environment: string = \"\") => {\n const apiUrl = getGeonorgeMenuUrl(language, environment);\n return fetch(apiUrl)\n .then((res) => res.json())\n .then((menuItems) => {\n return menuItems;\n });\n};\n\nexport const fetchDropdownSearchResults = async (\n searchString: string = \"\",\n language: string = \"no\",\n environment: string = \"\"\n) => {\n searchString = searchString.toString();\n const urlParameterStrings = {\n dataset: `search?text=${searchString}&facets%5B1%5Dname=type&facets%5B1%5Dvalue=dataset`,\n series: `search?text=${searchString}&facets%5B1%5Dname=type&facets%5B1%5Dvalue=series`,\n service: `search?text=${searchString}&facets%5B1%5Dname=type&facets%5B1%5Dvalue=service`,\n servicelayer: `search?text=${searchString}&facets%5B1%5Dname=type&facets%5B1%5Dvalue=servicelayer`,\n software: `search?text=${searchString}&facets%5B1%5Dname=type&facets%5B1%5Dvalue=software`,\n articles: `articles?text=${searchString}`\n };\n const fetchOptions = {\n headers: new Headers({\n \"Accept-Language\": language\n })\n };\n const limitParameterString = \"limit=5\";\n\n return searchString && searchString.length\n ? await Promise.all(\n Object.keys(urlParameterStrings).map(async (searchResultsType) => {\n const kartkatalogApiUrl = getKartkatalogApiUrl(environment);\n let urlParameterString = urlParameterStrings[searchResultsType];\n return fetch(`${kartkatalogApiUrl}/${urlParameterString}&${limitParameterString}`, fetchOptions)\n .then((res) => res.json())\n .then((searchResults) => {\n return {\n ...searchResults,\n searchResultsType\n };\n });\n })\n )\n : null;\n};\n","export const getCookie = (cname: string) => {\n const name = `${cname}=`;\n const decodedCookie = decodeURIComponent(document.cookie);\n const ca = decodedCookie.split(';');\n for (var i = 0; i < ca.length; i++) {\n let c = ca[i];\n while (c.charAt(0) == ' ') {\n c = c.substring(1);\n }\n if (c.indexOf(name) == 0) {\n return c.substring(name.length, c.length);\n }\n }\n return \"\";\n}\n\nexport const setCookie = (cname: string, cvalue: string, exdays?: number) => {\n\n const domain = window.location.hostname === 'localhost' ? '' : 'domain=.geonorge.no';\n\n if (exdays === undefined) \n { \n document.cookie = `${cname}=${cvalue};path=/;${domain}`;\n } \n else \n {\n let expireDate = new Date();\n expireDate.setTime(expireDate.getTime() + (exdays * 24 * 60 * 60 * 1000));\n const expires = `expires=${expireDate.toUTCString()}`;\n document.cookie = `${cname}=${cvalue};${expires};path=/;${domain}`;\n }\n}\n\nexport const getLanguage = () => {\n return getCookie('_culture');\n}\n\nexport const setLanguage = (language: string) => {\n setCookie('_culture', language, 7);\n}\n","// Functions\nimport { getCookie, setCookie } from './cookieHelpers';\n\nexport const getDownloadItems = () => {\n return localStorage.orderItems && Array.isArray(JSON.parse(localStorage.orderItems))\n ? JSON.parse(localStorage.orderItems).filter(mapItem => {return mapItem})\n : [];\n}\n\nexport const getDownloadItemsCount = () => {\n const isKartkatalog = window.location.hostname.toLowerCase().indexOf('kartkatalog') !== -1;\n const isLocalKartkatalogEnvironment = window.sessionStorage.isLocalKartkatalogEnvironment;\n if (isKartkatalog || isLocalKartkatalogEnvironment) {\n return getDownloadItems().length;\n } else {\n const downloadItemsCount = parseInt(getCookie('orderItems'));\n return downloadItemsCount && !isNaN(downloadItemsCount) ? downloadItemsCount : 0;\n }\n}\n\nexport const getDownloadItemMetadata = (itemUuid: string) => {\n return localStorage[itemUuid + '.metadata']\n ? JSON.parse(localStorage[itemUuid + '.metadata'])\n : null;\n}\n\nexport const removeDownloadItem = (itemToRemove) => {\n let selectedItems = localStorage.orderItems && Array.isArray(JSON.parse(localStorage.orderItems))\n ? JSON.parse(localStorage.orderItems)\n : [];\n localStorage.orderItems = JSON.stringify(selectedItems.filter(itemToKeep => itemToKeep !== itemToRemove.uuid));\n localStorage.removeItem(itemToRemove.uuid + \".metadata\")\n\n const orderItemsCount = getDownloadItemsCount();\n setCookie('orderItems', orderItemsCount, 7);\n}\n","export const getFocusableElementsInsideElement = (element: HTMLElement) => {\n return element.querySelectorAll('button, [href], input, [tabindex=\"0\"]');\n};\n\nexport const getDocumentHeading = () => {\n let documentHeading = document.querySelector(\"heading-text\") as HTMLElement | null; // This assumes that the heading is wrapped in a custom element called \"heading-text\"\n if (!documentHeading) {\n documentHeading = document.querySelector(\"h1:not(.sb-nopreview_heading.sb-heading)\") as HTMLElement | null; // Exclude the heading used by Storybook\n }\n return documentHeading;\n};\n\nexport const addGlobalStylesheet = (styleElementId: string, styles: string) => {\n const style = document.createElement(\"style\");\n style.setAttribute(\"id\", styleElementId);\n style.textContent = styles;\n if (!document.getElementById(styleElementId)) {\n document.head.appendChild(style);\n }\n};\n\nexport const removeInnerHTML = (element: HTMLElement) => {\n while (element.firstChild) {\n if (element.contains(element.firstChild)) {\n element.removeChild(element.firstChild);\n } else {\n // If not a child, break to avoid infinite loop\n break;\n }\n }\n};\n","// Functions\nimport { getCookie, setCookie } from './cookieHelpers';\n\nexport const getMapItems = () => {\n return localStorage.mapItems && Array.isArray(JSON.parse(localStorage.mapItems))\n ? JSON.parse(localStorage.mapItems).filter(mapItem => {return mapItem})\n : [];\n}\n\nexport const getMapItemsCount = () => {\n const isKartkatalog = window.location.hostname.toLowerCase().indexOf('kartkatalog') !== -1;\n const isLocalKartkatalogEnvironment = window.sessionStorage.isLocalKartkatalogEnvironment;\n if (isKartkatalog || isLocalKartkatalogEnvironment) {\n return getMapItems().length;\n } else {\n const mapItemsCount = parseInt(getCookie('mapItems'));\n return mapItemsCount && !isNaN(mapItemsCount) ? mapItemsCount : 0;\n }\n}\n\nexport const removeMapItem = (itemToRemove) => {\n let selectedItems = localStorage.mapItems && Array.isArray(JSON.parse(localStorage.mapItems))\n ? JSON.parse(localStorage.mapItems)\n : [];\n localStorage.mapItems = JSON.stringify(selectedItems.filter(itemToKeep => itemToKeep.Uuid !== itemToRemove.Uuid));\n\n const mapItemsCount = getMapItemsCount();\n setCookie('mapItems', mapItemsCount, 7);\n}\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}","// Dependencies\nimport {\n Component, CustomElement, CustomElementOptions, Prop, Dispatch, DispatchEmitter,\n Listen, Watch, getElement, getShadowRootElement, Toggle\n} from 'super-custom-elements';\n\n\n// Assets\nimport DownloadIcon from '../../../assets/svg/download.svg';\nimport TrashIcon from '../../../assets/svg/trash-icon.svg';\n\n// Functions\nimport { getDownloadItems, getDownloadItemsCount, getDownloadItemMetadata, removeDownloadItem } from '../../../functions/downloadItemHelpers';\nimport { getKartkatalogUrl } from '../../../functions/urlHelpers';\nimport { getFocusableElementsInsideElement } from '../../../functions/guiHelpers';\n\ninterface DownloadItem extends Object {\n name: string,\n organizationName: string,\n uuid: string\n}\n\ninterface DownloadItemsOptions extends CustomElementOptions {\n active?: boolean,\n onDownloadItemsChange?: () => void\n}\n\n@Component({\n tag: 'download-items',\n template: import('./download-items.html'),\n style: import('./download-items.scss')\n})\n\nexport class DownloadItems extends CustomElement {\n private static readonly elementSelector = 'download-items';\n private downloadButton: HTMLButtonElement;\n private downloadIcon: HTMLElement;\n private downloadIconCounter: HTMLSpanElement;\n private downloadItemListContainer: HTMLDivElement;\n private downloadItems: Array<DownloadItem>;\n\n @Prop() id: string;\n @Prop() environment: string;\n @Prop() language: string;\n @Toggle() showList: boolean;\n @Toggle() preventRedirect: boolean;\n @Dispatch('onOpenEmptyDownloadItemsList') onOpenEmptyDownloadItemsList: DispatchEmitter;\n @Dispatch('onDownloadItemsChange') onDownloadItemsChange: DispatchEmitter;\n\n constructor() {\n super();\n this.clickOutsideDownloadItemsContainer = this.clickOutsideDownloadItemsContainer.bind(this);\n this.updateDomElements = this.updateDomElements.bind(this);\n this.getUpdatedDownloadItems = this.getUpdatedDownloadItems.bind(this);\n }\n\n setup(options?: DownloadItemsOptions): void {\n this.connect(options.container);\n if (options.id) {\n this.id = options.id;\n }\n }\n\n connectedCallback() {\n this.downloadButton = getShadowRootElement(this, '#download-toggle-button');\n this.downloadIcon = getShadowRootElement(this, '#download-toggle-button-icon');\n this.downloadIconCounter = getShadowRootElement(this, '#download-toggle-button-counter');\n this.downloadItemListContainer = getShadowRootElement(this, '#download-item-list-container');\n\n this.getUpdatedDownloadItems();\n this.downloadIcon.innerHTML = DownloadIcon;\n this.renderDownloadItemsCounter();\n\n document.addEventListener('click', this.clickOutsideDownloadItemsContainer);\n document.addEventListener('downloadItemsChanged', this.updateDomElements);\n }\n\n updateDomElements() {\n this.getUpdatedDownloadItems();\n this.renderDownloadItems(this.downloadItems);\n this.renderDownloadItemsCounter();\n }\n\n getUpdatedDownloadItems() {\n const downloadItemUuids = getDownloadItems();\n this.downloadItems = downloadItemUuids.map(uuid => {\n return getDownloadItemMetadata(uuid);\n }).filter(downloadItem => { return downloadItem });\n }\n\n disconnectedCallback() {\n document.removeEventListener('click', this.clickOutsideDownloadItemsContainer);\n }\n\n hideListContainer = () => {\n this.showList = false;\n }\n\n clickOutsideDownloadItemsContainer(event: MouseEvent) {\n const targetElement = event.composedPath()[0] as Element;\n if (targetElement.closest('#download-item-list-container') || targetElement.closest('#download-toggle-button')) return\n this.hideListContainer();\n }\n\n renderDownloadItemsCounter() {\n const downloadItemsCount = getDownloadItemsCount();\n if (downloadItemsCount) {\n this.downloadIconCounter.innerHTML = downloadItemsCount.toString();\n this.downloadIconCounter.classList.remove('hidden');\n this.downloadButton.setAttribute(\n 'aria-label',\n this.language === 'en'\n ? `Show ${downloadItemsCount} download ${downloadItemsCount === 1 ? 'item' : 'items'} in list`\n : `Vis liste med ${downloadItemsCount} ${downloadItemsCount === 1 ? 'element' : 'elementer'} til nedlasting`\n );\n } else {\n this.downloadIconCounter.innerHTML = '';\n this.downloadIconCounter.classList.add('hidden');\n this.downloadButton.setAttribute(\n 'aria-label',\n this.language === 'en' \n ? 'Go to download page' \n : 'Gå til nedlastingsside'\n );\n }\n }\n\n renderDownloadItems = (downloadItems: Array<DownloadItem>) => {\n const downloadItemsListElement = downloadItems.map((downloadItem: DownloadItem) => {\n if (downloadItem) {\n const downloadItemElement = document.createElement('span');\n downloadItemElement.innerText = downloadItem.name;\n\n const removeDownloadItemElement = document.createElement('button');\n removeDownloadItemElement.classList.add('list-icon');\n removeDownloadItemElement.innerHTML = TrashIcon;\n removeDownloadItemElement.dataset['downloadItem'] = JSON.stringify(downloadItem);\n removeDownloadItemElement.setAttribute('aria-label', this.language === 'en' ? `Remove ${downloadItem.name} from downloads` : `Fjern ${downloadItem.name} fra kurv`);\n if (!this.showList){\n removeDownloadItemElement.setAttribute('tabindex', '-1');\n }\n downloadItemElement.appendChild(removeDownloadItemElement);\n\n return `<li>${downloadItemElement.innerHTML}</li>`;\n } else return null;\n }).filter(downloadItem => { return downloadItem }).join('');\n\n let downloadItemLinkElement;\n if (this.preventRedirect) {\n downloadItemLinkElement = document.createElement('button');\n downloadItemLinkElement.addEventListener(\"click\", () => {\n this.onOpenEmptyDownloadItemsList.emit();\n });\n } else {\n downloadItemLinkElement = document.createElement('a');\n downloadItemLinkElement.href = `${getKartkatalogUrl(this.environment)}/nedlasting`;\n }\n downloadItemLinkElement.innerText = this.language === 'en' ? 'Go to download' : 'Til nedlasting';\n downloadItemLinkElement.classList.add('page-link-element');\n if (!this.showList){\n downloadItemLinkElement.setAttribute('tabindex', '-1');\n }\n this.downloadItemListContainer.innerHTML = !!downloadItemsListElement?.length ? `<ul>${downloadItemsListElement}</ul>` : '';\n this.downloadItemListContainer.prepend(downloadItemLinkElement);\n }\n\n @Listen('click', '#download-toggle-button')\n buttonClicked(event: MouseEvent) {\n if (this.downloadItems && this.downloadItems.length) {\n this.showList = !this.showList;\n } else {\n this.showList = false;\n if (this.preventRedirect) {\n this.onOpenEmptyDownloadItemsList.emit();\n } else {\n window.location.href = `${getKartkatalogUrl(this.environment)}/nedlasting`\n }\n }\n }\n\n @Listen('click', '#download-item-list-container')\n removeDownloadItemClicked(event: MouseEvent) {\n const targetElement = event.composedPath()[0] as Element;\n targetElement.closest('#menu-container');\n const removeDownloadItemButtonElement = targetElement.closest('button');\n\n if (removeDownloadItemButtonElement) {\n const downloadItem = removeDownloadItemButtonElement.dataset && removeDownloadItemButtonElement.dataset.downloadItem ? JSON.parse(removeDownloadItemButtonElement.dataset.downloadItem) : null;\n if (downloadItem) {\n event.stopPropagation();\n removeDownloadItem(downloadItem);\n this.getUpdatedDownloadItems();\n this.renderDownloadItems(this.downloadItems);\n this.renderDownloadItemsCounter();\n if (!this.downloadItems || !this.downloadItems.length) {\n this.showList = false;\n }\n }\n if (this.onDownloadItemsChange){\n this.onDownloadItemsChange.emit({detail: this.downloadItems});\n }\n }\n }\n\n @Watch('showlist')\n showListChanged() {\n this.showList ? this.downloadItemListContainer.classList.add('open') : this.downloadItemListContainer.classList.remove('open');\n this.showList ? this.downloadButton.classList.add('open') : this.downloadButton.classList.remove('open');\n const downloadItemListContainerButtons = getFocusableElementsInsideElement(this.downloadItemListContainer);\n downloadItemListContainerButtons.forEach(button => {\n if (!this.showList){\n button.setAttribute('tabindex', '-1');\n } else {\n button.removeAttribute('tabindex');\n }\n });\n }\n\n @Watch('downloadItems')\n downloadItemsChanged() {\n if (this.downloadItems && this.downloadItems.length) {\n this.renderDownloadItems(this.downloadItems);\n this.renderDownloadItemsCounter();\n }\n }\n\n @Watch('language')\n languageChanged() {\n if (this.downloadItems && this.downloadItems.length) {\n this.renderDownloadItems(this.downloadItems);\n this.renderDownloadItemsCounter();\n }\n }\n\n @Watch('preventredirect')\n preventRedirectChanged() {\n if (this.downloadItems && this.downloadItems.length) {\n this.renderDownloadItems(this.downloadItems);\n this.renderDownloadItemsCounter();\n }\n }\n\n public static setup(selector: string, options: DownloadItemsOptions) {\n const element = getElement<DownloadItems>(selector);\n if (options.active) {\n element.showList = options.active;\n }\n }\n}\n","// Dependencies\nimport {\n Component, CustomElement, CustomElementOptions, Prop, Dispatch, DispatchEmitter,\n Listen, Watch, getElement, getShadowRootElement, Toggle\n} from 'super-custom-elements';\n\n\n// Assets\nimport MenuIcon from '../../../assets/svg/burgerG.svg';\nimport CloseIcon from '../../../assets/svg/close-icon-black.svg';\n\n// Functions\nimport { fetchMenuItems } from '../../../functions/apiHelpers';\nimport { getFocusableElementsInsideElement } from '../../../functions/guiHelpers';\nimport { setCookie } from '../../../functions/cookieHelpers';\n\n\ninterface MainMenuOptions 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\n@Component({\n tag: 'main-menu',\n template: import('./main-menu.html'),\n style: import('./main-menu.scss')\n})\n\nexport class MainMenu extends CustomElement {\n private static readonly elementSelector = 'main-menu';\n private menuButton: HTMLButtonElement;\n private menuTitle: HTMLSpanElement;\n private menuIcon: HTMLSpanElement;\n private closeIcon: HTMLSpanElement;\n private menuContainer: HTMLElement;\n private menuItemListContainer: HTMLElement;\n private menuActionsRow: HTMLElement;\n\n @Prop() id: string;\n @Prop() language: string;\n @Prop() environment: string;\n @Prop() signinurl: string;\n @Prop() signouturl: string;\n @Prop() norwegianurl: string;\n @Prop() englishurl: string;\n @Toggle() isloggedin: boolean;\n @Toggle() showmenu: boolean;\n @Toggle() hasAuthenticationFunction: boolean;\n @Toggle() hasLanguageSelectFunctions: boolean;\n @Prop() menuitems: Array<MenuItem>;\n @Dispatch('onSignInClick') onSignInClick: DispatchEmitter;\n @Dispatch('onSignOutClick') onSignOutClick: DispatchEmitter;\n @Dispatch('onNorwegianLanguageSelect') onNorwegianLanguageSelect: DispatchEmitter;\n @Dispatch('onEnglishLanguageSelect') onEnglishLanguageSelect: DispatchEmitter;\n\n\n constructor() {\n super();\n this.clickOutsideMenuContainer = this.clickOutsideMenuContainer.bind(this);\n }\n\n setup(options?: MainMenuOptions): void {\n this.connect(options.container);\n if (options.id) {\n this.id = options.id;\n }\n }\n\n connectedCallback() {\n this.menuButton = getShadowRootElement(this, '#menu-toggle-button');\n this.menuTitle = getShadowRootElement(this, '#menu-title');\n this.menuIcon = getShadowRootElement(this, '#menu-icon');\n this.closeIcon = getShadowRootElement(this, '#close-icon');\n this.menuContainer = getShadowRootElement(this, '#menu-container');\n this.menuItemListContainer = getShadowRootElement(this, '#menu-item-list-container');\n this.menuActionsRow = getShadowRootElement(this, '#menu-actions-row');\n this.menuIcon.innerHTML = MenuIcon;\n this.closeIcon.innerHTML = CloseIcon;\n\n this.showmenu ? this.menuIcon.classList.add('hidden') : this.closeIcon.classList.add('hidden');\n\n fetchMenuItems(this.language, this.environment).then(menuItems => {\n this.menuitems = menuItems;\n });\n\n this.menuButton.setAttribute('aria-label', this.language === 'en' ? 'Show menu' : 'Vis meny');\n\n if (this.menuTitle) {\n this.menuTitle.innerText = this.language === 'en' ? 'Menu' : 'Meny';\n }\n\n const hasAuthenticationUrls = this.signinurl && this.signouturl;\n if (hasAuthenticationUrls) {\n this.addAuthenticationLinks();\n }\n\n const supportsLanguages = this.englishurl && this.norwegianurl;\n if (supportsLanguages) {\n this.addLanguageSelectLinks();\n\n }\n document.addEventListener('click', this.clickOutsideMenuContainer);\n }\n\n disconnectedCallback() {\n document.removeEventListener('click', this.clickOutsideMenuContainer);\n }\n\n hideMenuContainer = () => {\n this.showmenu = false;\n }\n\n\n clickOutsideMenuContainer(event: MouseEvent) {\n const targetElement = event.composedPath()[0] as Element;\n targetElement.closest('#menu-container');\n if (targetElement.closest('#menu-container') || targetElement.closest('#menu-toggle-button')) return\n this.hideMenuContainer();\n }\n\n renderMenuItems = (menuItems: Array<MenuItem>, hierarchyLevel: number = 0, maxHierarchyLevel: number = 1) => {\n const menuItemsListElement = menuItems.map((menuItem: MenuItem) => {\n const subItems = menuItem.SubMenuItem && menuItem.SubMenuItem.length ? menuItem.SubMenuItem : null;\n const menuItemElement = `<a href=\"${menuItem.Url}\" tabindex=\"${this.showmenu ? null : '-1'}\">${menuItem.Name}</a>`;\n const subItemElements = subItems && hierarchyLevel + 1 <= maxHierarchyLevel ? this.renderMenuItems(subItems, hierarchyLevel + 1, maxHierarchyLevel) : '';\n return `<li>${menuItemElement}${subItemElements}</li>`;\n }).join('');\n return `<ul class=\"menuItemList hierarchy-level-${hierarchyLevel}\">${menuItemsListElement}</ul>`;\n }\n\n addAuthenticationLinks(hasAuthenticationFunction = false) {\n let loginToggleElement;\n const hasAuthenticationLinks = this.signouturl && this.signinurl;\n\n if (!hasAuthenticationLinks && !hasAuthenticationFunction) {\n return '';\n }\n\n if (hasAuthenticationFunction) {\n loginToggleElement = document.createElement(\"button\");\n loginToggleElement.addEventListener(\"click\", () => {\n this.isloggedin ? this.onSignOutClick.emit() : this.onSignInClick.emit();\n });\n } else {\n loginToggleElement = document.createElement(\"a\");\n loginToggleElement.href = this.isloggedin ? this.signouturl : this.signinurl;\n }\n\n // Remove previously added login toggle element if exists\n for (const childElement of this.menuActionsRow.children) {\n if (childElement.getAttribute('id') === loginToggleElement.id) {\n childElement.remove()\n }\n }\n\n if (!this.showmenu){\n loginToggleElement.setAttribute('tabindex', '-1');\n }\n\n // Add login toggle element\n this.menuActionsRow.appendChild(loginToggleElement);\n }\n\n addLanguageSelectLinks(hasLanguageSelectFunctions = false) {\n let languageToggleElement;\n const hasLanguageSelectLinks = this.norwegianurl && this.englishurl;\n\n if (!hasLanguageSelectLinks && !hasLanguageSelectFunctions) {\n return '';\n }\n\n if (hasLanguageSelectFunctions) {\n languageToggleElement = document.createElement(\"button\");\n languageToggleElement.addEventListener(\"click\", () => {\n this.language === 'en' ? this.onNorwegianLanguageSelect.emit() : this.onEnglishLanguageSelect.emit();\n });\n } else {\n languageToggleElement = document.createElement(\"a\");\n languageToggleElement.href = this.language === 'en' ? this.norwegianurl : this.englishurl;\n }\n\n languageToggleElement.innerText = this.language === 'en' ? 'Norsk' : 'English';\n languageToggleElement.id = 'language-toggle-element';\n\n // Remove previously added language toggle element if exists\n for (const childElement of this.menuActionsRow.children) {\n if (childElement.getAttribute('id') === languageToggleElement.id) {\n childElement.remove()\n }\n }\n\n if (!this.showmenu){\n languageToggleElement.setAttribute('tabindex', '-1');\n }\n\n // Add language toggle element\n this.menuActionsRow.appendChild(languageToggleElement);\n }\n\n @Listen('click', '#menu-toggle-button')\n buttonClicked(event: MouseEvent) {\n this.showmenu = !this.showmenu;\n }\n\n @Watch('hasauthenticationfunction')\n hasAuthenticationFunctionChanged() {\n if (this.hasAuthenticationFunction) {\n this.addAuthenticationLinks(true);\n }\n }\n\n @Watch('isloggedin') \n isLoggedInChanged() {\n this.addAuthenticationLinks(this.hasAuthenticationFunction); \n }\n\n @Watch('haslanguageselectfunctions')\n hasLanguageSelectFunctionsChanged() {\n if (this.hasLanguageSelectFunctions) {\n this.addLanguageSelectLinks(true);\n }\n }\n\n @Watch('language')\n languageChanged() {\n this.addAuthenticationLinks(this.hasAuthenticationFunction);\n this.addLanguageSelectLinks(this.hasLanguageSelectFunctions);\n fetchMenuItems(this.language, this.environment).then(menuItems => {\n this.menuitems = menuItems;\n });\n if (this.menuTitle) {\n this.menuTitle.innerText = this.language === 'en' ? 'Menu' : 'Meny';\n }\n this.menuButton.setAttribute('aria-label', this.language === 'en' ? 'Show menu' : 'Vis meny');\n }\n\n @Watch('showmenu')\n showMenuChanged() {\n this.showmenu ? this.menuContainer.classList.add('open') : this.menuContainer.classList.remove('open');\n this.showmenu ? this.menuButton.classList.add('open') : this.menuButton.classList.remove('open');\n this.showmenu ? this.menuItemListContainer.classList.add('open') : this.menuItemListContainer.classList.remove('open');\n this.showmenu ? this.menuActionsRow.classList.add('open') : this.menuActionsRow.classList.remove('open');\n this.showmenu ? this.menuIcon.classList.add('hidden') : this.menuIcon.classList.remove('hidden');\n this.showmenu ? this.closeIcon.classList.remove('hidden') : this.closeIcon.classList.add('hidden');\n const focusableMenuContainerElements = getFocusableElementsInsideElement(this.menuContainer);\n focusableMenuContainerElements.forEach(focusableElement => {\n if (!this.showmenu){\n focusableElement.setAttribute('tabindex', '-1');\n } else {\n focusableElement.removeAttribute('tabindex');\n }\n });\n }\n\n @Watch('menuitems')\n menuItemsChanged() {\n if (this.menuitems && this.menuitems.length) {\n this.menuItemListContainer.innerHTML = this.renderMenuItems(this.menuitems);\n }\n }\n\n public static setup(selector: string, options: MainMenuOptions) {\n const element = getElement<MainMenu>(selector);\n\n if (options.onClick) {\n element.addEventListener('menuButtonClick', options.onClick);\n }\n if (options.active) {\n element.showmenu = options.active;\n }\n }\n}\n","// Dependencies\nimport {\n Component,\n CustomElement,\n CustomElementOptions,\n Prop,\n Dispatch,\n DispatchEmitter,\n Watch,\n getElement,\n getShadowRootElement,\n Toggle\n} from \"super-custom-elements\";\n\n// Components\nimport { MainSearchField } from \"./main-search-field/main-search-field\";\nimport { SearchTypeSelector } from \"./search-type-selector/search-type-selector\";\nimport { DownloadItems } from \"./download-items/download-items\";\nimport { MapItems } from \"./map-items/map-items\";\nimport { UserAccount } from \"./user-account/user-account\";\nimport { MainMenu } from \"./main-menu/main-menu\";\n\n// Assets\nimport GeonorgeLogo from \"../../assets/svg/geonorge-navbar-logo.svg\";\nimport GeonorgeLogoTest from \"../../assets/svg/geonorge-navbar-logo_test.svg\";\nimport GeonorgeLogoDev from \"../../assets/svg/geonorge-navbar-logo_dev.svg\";\n\n// Helpers\nimport { getGeonorgeUrl } from \"../../functions/urlHelpers\";\nimport { getLanguage, setCookie } from \"../../functions/cookieHelpers\";\ninterface MainNavigationOptions extends CustomElementOptions {\n active?: boolean;\n onClick?: () => void;\n onSearch?: () => void;\n onOpenEmptyMapItemsList?: () => void;\n onOpenEmptyDownloadItemsList?: () => void;\n onSearchTypeChange?: () => void;\n onSignInClick?: () => void;\n onSignOutClick?: () => void;\n onNorwegianLanguageSelect?: () => void;\n onEnglishLanguageSelect?: () => void;\n onDownloadItemsChange?: () => void;\n onMapItemsChange?: () => void;\n onUserAccountClick?: () => void;\n}\n\ninterface MenuItem extends Object {\n Name: string;\n SubMenuItem: Array<MenuItem>;\n Url: string;\n}\n\n@Component({\n tag: \"main-navigation\",\n template: import(\"./main-navigation.html\"),\n style: import(\"./main-navigation.scss\")\n})\nexport class MainNavigation extends CustomElement {\n private static readonly elementSelector = \"main-navigation\";\n private searchField: HTMLInputElement;\n private searchTypeSelector: HTMLElement;\n private logoElement: HTMLAnchorElement;\n private mainMenu: HTMLElement;\n private userAccount: HTMLElement;\n private mapItemsElement: HTMLElement;\n private downloadItemsElement: HTMLElement;\n\n @Prop() id: string;\n @Prop() environment: string;\n @Prop() language: string;\n @Prop() searchstring: string;\n @Prop() searchtype: string;\n @Prop() metadataresultsfound: string;\n @Prop() articlesresultsfound: string;\n @Prop() signinurl: string;\n @Prop() signouturl: string;\n @Prop() englishurl: string;\n @Prop() norwegianurl: string;\n @Prop() maincontentid: string;\n @Prop() organization: string\n @Prop() userinfo: string;\n @Toggle() isloggedin: boolean;\n @Toggle() showmenu: boolean;\n @Toggle() showsearchtypeselector: boolean;\n @Toggle() staticposition: boolean;\n @Toggle() noshadow: boolean;\n @Dispatch(\"onSearch\") onSearch: DispatchEmitter;\n @Dispatch(\"onSearchTypeChange\") onSearchTypeChange: DispatchEmitter;\n @Dispatch(\"onSignInClick\") onSignInClick: DispatchEmitter;\n @Dispatch(\"onSignOutClick\") onSignOutClick: DispatchEmitter;\n @Dispatch(\"onNorwegianLanguageSelect\") onNorwegianLanguageSelect: DispatchEmitter;\n @Dispatch(\"onEnglishLanguageSelect\") onEnglishLanguageSelect: DispatchEmitter;\n @Dispatch(\"onDownloadItemsChange\") onDownloadItemsChange: DispatchEmitter;\n @Dispatch(\"onMapItemsChange\") onMapItemsChange: DispatchEmitter;\n\n constructor() {\n super();\n }\n\n setup(options?: MainNavigationOptions): void {\n this.connect(options.container);\n if (options.id) {\n this.id = options.id;\n }\n }\n\n getGeonorgeLogoVariant(environment: string) {\n switch (environment) {\n case \"dev\":\n return GeonorgeLogoDev;\n case \"test\":\n return GeonorgeLogoTest;\n default:\n return GeonorgeLogo;\n }\n }\n\n shouldShowSearchTypeSelector(showsearchtypeselector) {\n return showsearchtypeselector?.toString() === \"\" || showsearchtypeselector?.toString() === \"true\";\n }\n\n connectedCallback() {\n this.logoElement = getShadowRootElement(this, \"#main-navigation-logo\");\n this.searchField = getShadowRootElement(this, \"main-search-field\");\n this.mainMenu = getShadowRootElement(this, \"#main-menu\");\n this.mapItemsElement = getShadowRootElement(this, \"#map-items\");\n this.downloadItemsElement = getShadowRootElement(this, \"#download-items\");\n this.userAccount = getShadowRootElement(this, \"#user-account\");\n this.searchTypeSelector ? this.searchField.classList.add(\"wide\") : this.searchField.classList.remove(\"wide\");\n\n if (this.searchField) {\n this.searchField.setAttribute(\n \"searchstring\",\n this.searchstring && this.searchstring.length ? this.searchstring : \"\"\n );\n this.searchField.setAttribute(\"environment\", this.environment);\n this.searchField.setAttribute(\"language\", this.language);\n }\n\n this.mapItemsElement.setAttribute(\"environment\", this.environment);\n this.mapItemsElement.setAttribute(\"language\", this.language);\n\n this.downloadItemsElement.setAttribute(\"environment\", this.environment);\n this.downloadItemsElement.setAttribute(\"language\", this.language);\n\n this.logoElement.innerHTML = this.getGeonorgeLogoVariant(this.environment);\n this.logoElement.href = getGeonorgeUrl(this.language, this.environment);\n\n if (this.staticposition) {\n getShadowRootElement(this, \"#main-navigation\").classList.add(\"static-position\");\n getShadowRootElement(this, \"main-menu\").setAttribute(\"staticposition\", \"\");\n }\n\n if (this.noshadow) {\n getShadowRootElement(this, \"#main-navigation\").classList.add(\"no-shadow\");\n }\n\n // Pass properties\n const language = this.language ? this.language : getLanguage();\n if (language) {\n this.mainMenu.setAttribute(\"language\", language);\n }\n if(this.organization) {\n this.userAccount.setAttribute(\"organization\", this.organization);\n }\n if(this.userinfo) {\n this.userAccount.setAttribute(\"userinfo\", this.userinfo);\n }\n if (this.environment) {\n this.mainMenu.setAttribute(\"environment\", this.environment);\n }\n if (this.englishurl) {\n this.mainMenu.setAttribute(\"englishurl\", this.englishurl);\n }\n if (this.norwegianurl) {\n this.mainMenu.setAttribute(\"norwegianurl\", this.norwegianurl);\n }\n if (this.signinurl) {\n this.userAccount.setAttribute(\"signinurl\", this.signinurl);\n }\n if (this.signouturl) {\n this.userAccount.setAttribute(\"signouturl\", this.signouturl);\n }\n if (this.isloggedin) {\n this.userAccount.setAttribute(\"isLoggedIn\", \"\");\n }\n if (this.shouldShowSearchTypeSelector(this.showsearchtypeselector)) {\n if (!this.searchTypeSelector) { \n this.searchTypeSelector = document.createElement(\"search-type-selector\"); \n }\n if (this.metadataresultsfound) {\n this.searchTypeSelector.setAttribute(\"metadataresultsfound\", this.metadataresultsfound);\n }\n if (this.articlesresultsfound) {\n this.searchTypeSelector.setAttribute(\"articlesresultsfound\", this.articlesresultsfound);\n }\n if (this.searchtype) {\n this.searchTypeSelector.setAttribute(\"searchtype\", this.searchtype);\n }\n if (language) {\n this.searchTypeSelector.setAttribute(\"language\", language);\n }\n if (!this.searchTypeSelector) {\n this.searchField.parentNode.insertBefore(this.searchTypeSelector, this.searchField.nextSibling);\n }\n } \n\n const mapItems = new MapItems();\n const downloadItemsElement = new DownloadItems();\n const mainSearchField = new MainSearchField();\n const userAccount = new UserAccount();\n const mainMenu = new MainMenu();\n }\n \n\n @Watch(\"isloggedin\")\n isLoggedInChanged() {\n if (this.isloggedin) {\n setCookie('_loggedIn', 'true');\n this.userAccount.setAttribute(\"isLoggedIn\", \"\");\n } else {\n setCookie('_loggedIn', 'false');\n this.userAccount.removeAttribute(\"isLoggedIn\");\n }\n }\n @Watch(\"organization\")\n organizationChanged() {\n this.userAccount.setAttribute(\"organization\", this.organization);\n }\n @Watch(\"userinfo\")\n userinfoChanged() {\n this.userAccount.setAttribute(\"userinfo\", this.userinfo);\n }\n @Watch(\"language\")\n languageChanged() {\n this.mainMenu.setAttribute(\"language\", this.language);\n this.mapItemsElement.setAttribute(\"language\", this.language);\n this.userAccount.setAttribute(\"language\", this.language);\n this.downloadItemsElement.setAttribute(\"language\", this.language);\n if (this.shouldShowSearchTypeSelector(this.showsearchtypeselector)) {\n this.searchTypeSelector.setAttribute(\"language\", this.language);\n }\n if (this.searchField) {\n this.searchField.setAttribute(\"language\", this.language);\n }\n\n const mainContentLinkText = getShadowRootElement(this, \"#main-content-link-text\");\n if (this.maincontentid?.length) {\n mainContentLinkText.innerText = this.language === \"en\" ? \"Skip to main content\" : \"Hopp til hovedinnhold\";\n }\n }\n\n @Watch(\"environment\")\n environmentChanged() {\n this.mainMenu.setAttribute(\"environment\", this.environment);\n this.userAccount.setAttribute(\"environment\", this.environment);\n this.mapItemsElement.setAttribute(\"environment\", this.environment);\n this.downloadItemsElement.setAttribute(\"environment\", this.environment);\n this.logoElement.innerHTML = this.getGeonorgeLogoVariant(this.environment);\n this.logoElement.href = getGeonorgeUrl(this.language, this.environment);\n if (this.searchField) {\n this.searchField.setAttribute(\"environment\", this.environment);\n }\n }\n\n @Watch(\"metadataresultsfound\")\n metadataResultsFoundChanged() {\n if (this.shouldShowSearchTypeSelector(this.showsearchtypeselector)) {\n this.searchTypeSelector.setAttribute(\"metadataresultsfound\", this.metadataresultsfound);\n }\n }\n\n @Watch(\"articlesresultsfound\")\n articlesResultsFoundChanged() {\n if (this.shouldShowSearchTypeSelector(this.showsearchtypeselector)) {\n this.searchTypeSelector.setAttribute(\"articlesresultsfound\", this.articlesresultsfound);\n }\n }\n\n @Watch(\"searchtype\")\n searchTypeChanged() {\n if (this.shouldShowSearchTypeSelector(this.showsearchtypeselector)) {\n this.searchTypeSelector.setAttribute(\"searchtype\", this.searchtype);\n }\n }\n\n @Watch(\"showsearchtypeselector\")\n showSearchTypeSelectorChanged() {\n const language = this.language ? this.language : getLanguage();\n\n \n if (this.shouldShowSearchTypeSelector(this.showsearchtypeselector)) {\n this.searchField.setAttribute(\"showsearchtypeselector\", \"\")\n if (!this.searchTypeSelector) {\n this.searchTypeSelector = document.createElement(\"search-type-selector\");\n this.searchField.classList.add(\"wide\");\n }\n if (this.metadataresultsfound) {\n this.searchTypeSelector.setAttribute(\"metadataresultsfound\", this.metadataresultsfound);\n }\n if (this.articlesresultsfound) {\n this.searchTypeSelector.setAttribute(\"articlesresultsfound\", this.articlesresultsfound);\n }\n if (this.searchtype) {\n this.searchTypeSelector.setAttribute(\"searchtype\", this.searchtype);\n }\n if (language) {\n this.searchTypeSelector.setAttribute(\"language\", language);\n }\n this.searchField.parentNode.insertBefore(this.searchTypeSelector, this.searchField.nextSibling);\n const searchTypeSelector = new SearchTypeSelector();\n } else {\n this.searchField.removeAttribute(\"showsearchtypeselector\")\n if (this.searchTypeSelector && this.searchTypeSelector.parentNode === this.searchField.parentNode) {\n this.searchField.parentNode.removeChild(this.searchTypeSelector);\n }\n }\n }\n\n @Watch(\"searchstring\")\n searchStringChanged() {\n if (this.searchField) {\n this.searchField.setAttribute(\n \"searchstring\",\n this.searchstring && this.searchstring.length ? this.searchstring : \"\"\n );\n }\n }\n\n @Watch(\"maincontentid\")\n mainContentIdChanged() {\n const mainContentLink = getShadowRootElement(this, \"#main-content-link\");\n if (this.maincontentid?.length) {\n mainContentLink.setAttribute(\"href\", `#${this.maincontentid}`);\n } else {\n mainContentLink.remove();\n }\n }\n\n public static setup(selector: string, options: MainNavigationOptions) {\n const element = getElement<MainNavigation>(selector);\n if (options.onSearch) {\n setTimeout(() => {\n const mainSearchField = getShadowRootElement<MainSearchField>(element, \"main-search-field\");\n mainSearchField.addEventListener(\"onSearch\", options.onSearch);\n mainSearchField.setAttribute(\"preventRedirect\", \"\");\n });\n }\n if (options.onOpenEmptyMapItemsList) {\n setTimeout(() => {\n const mapItemsElement = getShadowRootElement<MapItems>(element, \"map-items\");\n mapItemsElement.addEventListener(\"onOpenEmptyMapItemsList\", options.onOpenEmptyMapItemsList);\n mapItemsElement.setAttribute(\"preventRedirect\", \"\");\n });\n }\n if (options.onOpenEmptyDownloadItemsList) {\n setTimeout(() => {\n const downloadItemsElement = getShadowRootElement<DownloadItems>(element, \"download-items\");\n downloadItemsElement.addEventListener(\n \"onOpenEmptyDownloadItemsList\",\n options.onOpenEmptyDownloadItemsList\n );\n downloadItemsElement.setAttribute(\"preventRedirect\", \"\");\n });\n }\n if (options.onSearchTypeChange) {\n setTimeout(() => {\n const searchTypeSelector = getShadowRootElement<SearchTypeSelector>(element, \"search-type-selector\");\n searchTypeSelector.addEventListener(\"onSearchTypeChange\", options.onSearchTypeChange);\n });\n }\n if (options.onSignInClick && options.onSignOutClick) {\n setTimeout(() => {\n const userAccount = getShadowRootElement<UserAccount>(element, \"user-account\");\n userAccount.setAttribute(\"hasAuthenticationFunction\", \"\");\n userAccount.addEventListener(\"onSignInClick\", options.onSignInClick);\n userAccount.addEventListener(\"onSignOutClick\", options.onSignOutClick);\n });\n }\n if (options.onNorwegianLanguageSelect) {\n setTimeout(() => {\n const mainMenu = getShadowRootElement<MainMenu>(element, \"main-menu\");\n mainMenu.setAttribute(\"hasLanguageSelectFunctions\", \"\");\n mainMenu.addEventListener(\"onNorwegianLanguageSelect\", options.onNorwegianLanguageSelect);\n });\n }\n if (options.onEnglishLanguageSelect) {\n setTimeout(() => {\n const mainMenu = getShadowRootElement<MainMenu>(element, \"main-menu\");\n mainMenu.setAttribute(\"hasLanguageSelectFunctions\", \"\");\n mainMenu.addEventListener(\"onEnglishLanguageSelect\", options.onEnglishLanguageSelect);\n });\n }\n if (options.onDownloadItemsChange) {\n setTimeout(() => {\n const downloadItemsElement = getShadowRootElement<DownloadItems>(element, \"download-items\");\n downloadItemsElement.addEventListener(\"onDownloadItemsChange\", options.onDownloadItemsChange);\n });\n }\n if (options.onMapItemsChange) {\n setTimeout(() => {\n const mapItemsElement = getShadowRootElement<MapItems>(element, \"map-items\");\n mapItemsElement.addEventListener(\"onMapItemsChange\", options.onMapItemsChange);\n });\n }\n }\n}\n","import {\n Component, CustomElement, CustomElementOptions, Prop, Dispatch, DispatchEmitter,\n Listen, Watch, getElement, getShadowRootElement, Toggle\n} from 'super-custom-elements';\n\n// Interfaces\nimport { SearchResultsForType, SearchResultsResponseForType } from '../../../interfaces/search';\n\n// Functions\nimport { fetchDropdownSearchResults } from '../../../functions/apiHelpers';\nimport { renderDropdownResultLink, getKartkatalogUrl } from '../../../functions/urlHelpers';\n\n// Assets\nimport SearchIcon from '../../../assets/svg/search-icon.svg';\n\ninterface MainSearchFieldOptions extends CustomElementOptions {\n active?: boolean,\n value?: string,\n onSearchStringChange?: () => void,\n onClick?: () => void,\n onSearch?: () => void\n}\n\n@Component({\n tag: 'main-search-field',\n template: import('./main-search-field.html'),\n style: import('./main-search-field.scss')\n})\n\nexport class MainSearchField extends CustomElement {\n private static readonly elementSelector = 'main-search-field';\n private searchField: HTMLInputElement;\n private searchFieldLabel: HTMLInputElement;\n private searchButton: HTMLInputElement;\n private searchResultsContainer: HTMLInputElement;\n\n @Prop() id: string;\n @Prop() environment: string;\n @Toggle() showSearchResults: boolean;\n @Toggle() preventRedirect: boolean;\n @Prop() searchstring: string = '';\n @Prop() language: string;\n @Prop() searchResultsResponses: Array<SearchResultsResponseForType>;\n @Dispatch('searchResultsChanged') onTextChanged: DispatchEmitter;\n @Dispatch('onSearchStringChange') onSearchStringChange: DispatchEmitter;\n @Dispatch('onSearch') onSearch: DispatchEmitter;\n\n constructor() {\n super();\n this.clickOutsideSearchResultsContainer = this.clickOutsideSearchResultsContainer.bind(this);\n }\n\n setup(options?: MainSearchFieldOptions): void {\n this.connect(options.container);\n if (options.id) {\n this.id = options.id;\n }\n }\n\n connectedCallback() {\n this.searchField = getShadowRootElement(this, '#main-search-input');\n this.searchFieldLabel = getShadowRootElement(this, '#main-search-input-label');\n this.searchButton = getShadowRootElement(this, '#search-submit-button');\n\n this.searchFieldLabel.innerHTML = this.language === 'en' ? 'Search' : 'Søk';\n\n this.searchButton.innerHTML = SearchIcon;\n\n this.searchResultsContainer = getShadowRootElement(this, '#search-results-container');\n this.searchResultsContainer.style.maxHeight = `${window.innerHeight - 61}px`;\n if (this.searchField && this.searchstring) {\n this.searchField.setAttribute('value', this.searchstring);\n }\n document.addEventListener('click', this.clickOutsideSearchResultsContainer);\n }\n\n disconnectedCallback() {\n document.removeEventListener('click', this.clickOutsideSearchResultsContainer);\n }\n\n renderSearchResultsForType = (searchResultsResponseForType: SearchResultsResponseForType) => {\n const searchResultsTypeName = searchResultsResponseForType.Results[0].TypeTranslated;\n const searchResultsType = searchResultsResponseForType.searchResultsType;\n const searchResultsListElements = searchResultsResponseForType.Results.map((searchResult: SearchResultsForType) => {\n return `<li>${renderDropdownResultLink(searchResult, searchResultsType, this.searchstring, this.environment)}</li>`;\n }).join('');\n\n const searchResultsTypeLink = searchResultsType === 'articles'\n ? `${getKartkatalogUrl(this.environment)}/articles?text=${this.searchstring}`\n : `${getKartkatalogUrl(this.environment)}/metadata?text=${this.searchstring}&type=${searchResultsType}`;\n\n return `\n <div class=\"search-results-for-type\">\n <a href=\"${searchResultsTypeLink}\" class=\"search-results-for-type-title\">\n ${searchResultsTypeName}\n <span class=\"search-results-for-type-number-badge\">\n ${searchResultsResponseForType.NumFound}\n </span>\n </a>\n <ul class=\"search-results-for-type-list\">\n ${searchResultsListElements}\n </ul>\n </div>`;\n }\n\n renderSearchResults = (searchResultsResponses: Array<SearchResultsResponseForType>) => {\n const searchResultsListElements = searchResultsResponses.map((searchResultsResponseForType: SearchResultsResponseForType) => {\n return this.renderSearchResultsForType(searchResultsResponseForType);\n }).join('');\n return `<div>${searchResultsListElements}</div>`;\n }\n\n hideSearchResultsContainer = () => {\n this.showSearchResults = false;\n }\n\n clickOutsideSearchResultsContainer(event: MouseEvent) {\n const targetElement = event.composedPath()[0] as Element;\n if (targetElement.closest('#search-results-container') || targetElement.closest('#main-search-input')) {\n const closestLink = targetElement.closest('a');\n if (closestLink?.href?.length) {\n this.hideSearchResultsContainer();\n }\n return\n }\n this.hideSearchResultsContainer();\n }\n\n submitSearch() {\n this.hideSearchResultsContainer();\n if (this.preventRedirect) {\n this.onSearch.emit({\n detail: {\n searchString: this.searchstring\n }\n });\n } else {\n window.location.href = `${getKartkatalogUrl(this.environment)}/metadata?text=${this.searchstring?.length ? encodeURI(this.searchstring.toString()) : ''}`\n }\n\n }\n\n @Listen('keyup', 'input')\n searchFieldKeyUp(event: KeyboardEvent) {\n if (event.key && event.key === 'Enter' && this.searchstring?.toString().length) {\n this.submitSearch()\n } else {\n this.searchstring = this.searchField?.value?.toString() || '';\n }\n }\n\n @Listen('click', '#search-submit-button')\n onSearchSubmitted(event: MouseEvent) {\n this.submitSearch();\n }\n\n\n @Watch('searchstring')\n searchStringChanged() {\n if (this.searchField) {\n this.searchField.setAttribute('value', this.searchstring)\n }\n fetchDropdownSearchResults(this.searchstring, this.language, this.environment).then(searchResultsResponses => {\n this.searchResultsResponses = searchResultsResponses;\n });\n }\n\n @Watch('language')\n languageChanged() {\n if (this.searchField) {\n this.searchField.setAttribute('aria-label', this.language === 'en' ? 'Enter your search query' : 'Skriv inn det du vil søke etter');\n }\n if (this.searchFieldLabel) {\n this.searchFieldLabel.innerText = this.language === 'en' ? 'Search' : 'Søk';\n }\n if (this.searchButton) {\n this.searchButton.setAttribute('aria-label', this.language === 'en' ? 'Search' : 'Søk');\n }\n }\n\n\n @Watch('showsearchresults')\n showSearchResultsChanged() {\n this.showSearchResults ? this.searchResultsContainer.classList.add('open') : this.searchResultsContainer.classList.remove('open');\n }\n\n @Watch('searchResultsResponses')\n searchResultsResponseChanged() {\n const searchResults = this.searchResultsResponses && this.searchResultsResponses.length ? this.searchResultsResponses.filter(searchResultsResponseForType => {\n return searchResultsResponseForType.NumFound > 0\n }) : [];\n this.searchResultsContainer.innerHTML = searchResults.length ? this.renderSearchResults(searchResults) : '';\n this.showSearchResults = searchResults.length ? true : false;\n }\n\n public static setup(selector: string, options: MainSearchFieldOptions) {\n const element = getElement<MainSearchField>(selector);\n\n if (options.onClick) {\n element.addEventListener('searchButtonClick', options.onClick);\n }\n if (options.active) {\n element.showSearchResults = options.active;\n }\n }\n}\n","// Dependencies\nimport {\n Component, CustomElement, CustomElementOptions, Prop, Dispatch, DispatchEmitter,\n Listen, Watch, getElement, getShadowRootElement, Toggle\n} from 'super-custom-elements';\n\n\n// Assets\nimport MapIcon from '../../../assets/svg/location.svg';\nimport TrashIcon from '../../../assets/svg/trash-icon.svg';\n\n// Functions\nimport { getMapItems, getMapItemsCount, removeMapItem } from '../../../functions/mapItemHelpers';\nimport { getKartkatalogUrl } from '../../../functions/urlHelpers';\nimport { getFocusableElementsInsideElement } from '../../../functions/guiHelpers';\n\ninterface MapItem extends Object {\n Title: string,\n Uuid: string\n}\n\ninterface MapItemsOptions extends CustomElementOptions {\n active?: boolean,\n onMapItemsChange?: () => void\n}\n\n@Component({\n tag: 'map-items',\n template: import('./map-items.html'),\n style: import('./map-items.scss')\n})\n\nexport class MapItems extends CustomElement {\n private static readonly elementSelector = 'map-items';\n private mapButton: HTMLButtonElement;\n private mapIcon: HTMLElement;\n private mapIconCounter: HTMLSpanElement;\n private mapItemListContainer: HTMLDivElement;\n private mapItems: Array<MapItem>;\n\n @Prop() id: string;\n @Prop() environment: string;\n @Prop() language: string;\n @Toggle() showList: boolean;\n @Toggle() preventRedirect: boolean;\n @Dispatch('onOpenEmptyMapItemsList') onOpenEmptyMapItemsList: DispatchEmitter;\n @Dispatch('onMapItemsChange') onMapItemsChange: DispatchEmitter;\n\n constructor() {\n super();\n this.clickOutsideMapItemsContainer = this.clickOutsideMapItemsContainer.bind(this);\n this.updateDomElements = this.updateDomElements.bind(this);\n this.getUpdatedMapItems = this.getUpdatedMapItems.bind(this);\n }\n\n setup(options?: MapItemsOptions): void {\n this.connect(options.container);\n if (options.id) {\n this.id = options.id;\n }\n }\n\n connectedCallback() {\n this.mapButton = getShadowRootElement(this, '#map-toggle-button');\n this.mapIcon = getShadowRootElement(this, '#map-toggle-button-icon');\n this.mapIconCounter = getShadowRootElement(this, '#map-toggle-button-counter');\n this.mapItemListContainer = getShadowRootElement(this, '#map-item-list-container');\n\n this.getUpdatedMapItems();\n this.mapIcon.innerHTML = MapIcon;\n this.renderMapItemsCounter();\n\n document.addEventListener('click', this.clickOutsideMapItemsContainer);\n document.addEventListener('mapItemsChanged', this.updateDomElements);\n }\n\n updateDomElements() {\n this.getUpdatedMapItems();\n this.renderMapItems(this.mapItems);\n this.renderMapItemsCounter();\n }\n\n getUpdatedMapItems() {\n this.mapItems = getMapItems();\n }\n\n disconnectedCallback() {\n document.removeEventListener('click', this.clickOutsideMapItemsContainer);\n }\n\n hideListContainer = () => {\n this.showList = false;\n }\n\n clickOutsideMapItemsContainer(event: MouseEvent) {\n const targetElement = event.composedPath()[0] as Element;\n if (targetElement.closest('#map-item-list-container') || targetElement.closest('#map-toggle-button')) return\n this.hideListContainer();\n }\n\n renderMapItemsCounter() {\n const mapItemsCount = getMapItemsCount();\n if (mapItemsCount) {\n this.mapIconCounter.innerHTML = mapItemsCount.toString();\n this.mapIconCounter.classList.remove('hidden');\n this.mapButton.setAttribute(\n 'aria-label',\n this.language === 'en' \n ? `Show ${mapItemsCount} map ${mapItemsCount === 1 ? 'item' : 'items'} in list`\n : `Vis liste med ${mapItemsCount} ${mapItemsCount === 1 ? 'element' : 'elementer'} lagt til i kart`\n );\n } else {\n this.mapIconCounter.innerHTML = '';\n this.mapIconCounter.classList.add('hidden');\n this.mapButton.setAttribute(\n 'aria-label',\n this.language === 'en'\n ? 'Show map'\n : 'Vis kart'\n );\n }\n }\n\n renderMapItems = (mapItems: Array<MapItem>) => {\n const mapItemsListElement = mapItems.map((mapItem: MapItem) => {\n if (mapItem) {\n const mapItemElement = document.createElement('span');\n mapItemElement.innerText = mapItem.Title;\n\n const removeMapItemElement = document.createElement('button');\n removeMapItemElement.classList.add('list-icon');\n removeMapItemElement.innerHTML = TrashIcon;\n removeMapItemElement.dataset['mapItem'] = JSON.stringify(mapItem);\n removeMapItemElement.setAttribute('aria-label', this.language === 'en' ? `Remove ${mapItem.Title} from map` : `Fjern ${mapItem.Title} fra kart`);\n if (!this.showList){\n removeMapItemElement.setAttribute('tabindex', '-1');\n }\n mapItemElement.appendChild(removeMapItemElement);\n\n return `<li>${mapItemElement.innerHTML}</li>`;\n } else return null;\n }).filter(mapItem => { return mapItem }).join('');\n let mapItemLinkElement;\n if (this.preventRedirect) {\n mapItemLinkElement = document.createElement('button');\n mapItemLinkElement.addEventListener(\"click\", () => {\n this.onOpenEmptyMapItemsList.emit();\n });\n } else {\n mapItemLinkElement = document.createElement('a');\n mapItemLinkElement.href = `${getKartkatalogUrl(this.environment)}/kart`;\n }\n mapItemLinkElement.innerText = this.language === 'en' ? 'Show map' : 'Vis kart';\n mapItemLinkElement.classList.add('page-link-element');\n if (!this.showList){\n mapItemLinkElement.setAttribute('tabindex', '-1');\n }\n this.mapItemListContainer.innerHTML = !!mapItemsListElement?.length ? `<ul>${mapItemsListElement}</ul>` : '';\n this.mapItemListContainer.prepend(mapItemLinkElement);\n }\n\n @Listen('click', '#map-toggle-button')\n buttonClicked(event: MouseEvent) {\n\n if (this.mapItems && this.mapItems.length) {\n this.showList = !this.showList;\n } else {\n this.showList = false;\n if (this.preventRedirect) {\n this.onOpenEmptyMapItemsList.emit();\n } else {\n window.location.href = `${getKartkatalogUrl(this.environment)}/kart`\n }\n }\n }\n\n @Listen('click', '#map-item-list-container')\n removeMapItemClicked(event: MouseEvent) {\n const targetElement = event.composedPath()[0] as Element;\n targetElement.closest('#menu-container');\n const removeMapItemButtonElement = targetElement.closest('button');\n\n if (removeMapItemButtonElement) {\n const mapItem = removeMapItemButtonElement.dataset && removeMapItemButtonElement.dataset.mapItem ? JSON.parse(removeMapItemButtonElement.dataset.mapItem) : null;\n if (mapItem) {\n event.stopPropagation();\n removeMapItem(mapItem);\n this.getUpdatedMapItems();\n this.renderMapItems(this.mapItems);\n this.renderMapItemsCounter();\n if (!this.mapItems || !this.mapItems.length) {\n this.showList = false;\n }\n }\n if (this.onMapItemsChange){\n this.onMapItemsChange.emit({detail: this.onMapItemsChange});\n }\n }\n }\n\n @Watch('showlist')\n showMenuChanged() {\n this.showList ? this.mapItemListContainer.classList.add('open') : this.mapItemListContainer.classList.remove('open');\n this.showList ? this.mapButton.classList.add('open') : this.mapButton.classList.remove('open');\n const mapItemListContainerButtons = getFocusableElementsInsideElement(this.mapItemListContainer);\n mapItemListContainerButtons.forEach(button => {\n if (!this.showList){\n button.setAttribute('tabindex', '-1');\n } else {\n button.removeAttribute('tabindex');\n }\n });\n }\n\n @Watch('mapItems')\n mapItemsChanged() {\n if (this.mapItems && this.mapItems.length) {\n this.renderMapItems(this.mapItems);\n this.renderMapItemsCounter();\n }\n }\n\n @Watch('language')\n languageChanged() {\n if (this.mapItems && this.mapItems.length) {\n this.renderMapItems(this.mapItems);\n this.renderMapItemsCounter();\n }\n }\n\n @Watch('preventredirect')\n preventRedirectChanged() {\n if (this.mapItems && this.mapItems.length) {\n this.renderMapItems(this.mapItems);\n this.renderMapItemsCounter();\n }\n }\n\n public static setup(selector: string, options: MapItemsOptions) {\n const element = getElement<MapItems>(selector);\n if (options.active) {\n element.showList = options.active;\n }\n }\n}\n","import {\n Component, CustomElement, CustomElementOptions, Prop, Dispatch, DispatchEmitter,\n Listen, Watch, getElement, getShadowRootElement, Toggle\n} from 'super-custom-elements';\n\n\ninterface SearchTypeSelectorOptions extends CustomElementOptions {\n onSearchTypeChange?: () => void\n}\n\n@Component({\n tag: 'search-type-selector',\n template: import('./search-type-selector.html'),\n style: import('./search-type-selector.scss')\n})\n\nexport class SearchTypeSelector extends CustomElement {\n private static readonly elementSelector = 'search-type-selector';\n private searchTypeSelector: HTMLDivElement;\n private metadataNameElement: HTMLSpanElement;\n private metadataCounterElement: HTMLSpanElement;\n private articleNameElement: HTMLSpanElement;\n private articleCounterElement: HTMLSpanElement;\n\n @Prop() id: string;\n @Prop() metadataresultsfound: string;\n @Prop() articlesresultsfound: string;\n @Prop() language: string;\n @Prop() searchtype: string;\n @Dispatch('onSearchTypeChange') onSearchTypeChange: DispatchEmitter;\n\n constructor() {\n super();\n this.handleSearchTypeOnChange = this.handleSearchTypeOnChange.bind(this);\n\n }\n\n setup(options?: SearchTypeSelectorOptions): void {\n this.connect(options.container);\n if (options.id) {\n this.id = options.id;\n }\n }\n\n connectedCallback() {\n this.searchTypeSelector = getShadowRootElement(this, '#search-type-selector');\n\n this.metadataNameElement = getShadowRootElement(this, '#search-type-metadata-name');\n this.metadataCounterElement = getShadowRootElement(this, '#search-type-metadata-counter');\n this.articleNameElement = getShadowRootElement(this, '#search-type-article-name');\n this.articleCounterElement = getShadowRootElement(this, '#search-type-article-counter');\n\n this.searchTypeSelector.querySelectorAll('input[name=search-type]').forEach((element: HTMLInputElement) => {\n element.onchange = this.handleSearchTypeOnChange;\n });\n const selectedSearchTypeSelector = this.searchTypeSelector.querySelector(`input[value=${this.searchtype}]`);\n }\n\n disconnectedCallback() {\n }\n\n updateNameElements(language: string) {\n this.metadataNameElement.innerHTML = language === 'en' ? 'Map catalog' : 'Kartkatalogen';\n this.articleNameElement.innerHTML = language === 'en' ? 'Articles' : 'Artikler';\n }\n\n handleSearchTypeOnChange(event: InputEvent) {\n if (this.onSearchTypeChange) {\n const selectedElement = event.composedPath()[0] as HTMLInputElement;\n this.onSearchTypeChange.emit({\n detail: {\n value: selectedElement.value\n }\n });\n }\n }\n\n @Watch('language')\n languageChanged() {\n this.updateNameElements(this.language);\n }\n\n @Watch('metadataresultsfound')\n metadataResultsFoundChanged() {\n this.metadataCounterElement.innerHTML = this.metadataresultsfound;\n }\n\n @Watch('articlesresultsfound')\n articlesResultsFoundChanged() {\n this.articleCounterElement.innerHTML = this.articlesresultsfound;\n }\n\n @Watch('searchtype')\n searchTypeChanged() {\n const selectedSearchTypeSelector = <HTMLInputElement>this.searchTypeSelector.querySelector(`input[value=${this.searchtype}]`);\n if (selectedSearchTypeSelector){\n selectedSearchTypeSelector.checked = true;\n }\n }\n\n public static setup(selector: string, options: SearchTypeSelectorOptions) {\n const element = getElement<SearchTypeSelector>(selector);\n\n }\n}\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__(2936);\n"],"names":["root","factory","exports","module","define","amd","self","___CSS_LOADER_EXPORT___","push","id","cssWithMappingToString","list","toString","this","map","item","content","needLayer","concat","length","join","i","modules","media","dedupe","supports","layer","undefined","alreadyImportedModules","k","_k","cssMapping","btoa","base64","unescape","encodeURIComponent","JSON","stringify","data","sourceMapping","Component","args","target","tag","toKebabCase","prototype","constructor","name","customElement","super","props","showShadowRoot","shadow","shadowRoot","attachShadow","mode","observedAttributes","Object","keys","propsInit","x","attributeChangedCallback","oldValue","newValue","onAttributeChange","set","toCamelCase","watchAttributes","methodToCall","__connected","old","new","connectedCallback","render","addEventListeners","initializeProps","template","document","createElement","innerHTML","getStyle","Promise","appendChild","getExternalTemplate","cloneNode","markup","default","fragment","createRange","createContextualFragment","children","nodeName","firstChild","css","style","ready","resolve","_","customElements","get","CustomElement","HTMLElement","connect","selector","isConnected","querySelector","getElement","getShadowRootElement","Listen","eventName","methodName","listeners","handler","targetRoot","listener","eventTarget","addEventListener","e","call","Dispatch","propertyName","defineProperty","emit","options","evtName","toDotCase","dispatchEvent","CustomEvent","Prop","propName","attrName","getAttribute","value","tryParseInt","setAttribute","hasAttribute","prop","plainAttributes","forEach","v","cycleProps","getProps","attribValue","Toggle","attrValue","test","console","warn","removeAttribute","str","replace","toLowerCase","m","toUpperCase","parseInt","NaN","parseFloat","Watch","getKartkatalogApiUrl","environment","getMinSideShortcutApiUrl","shortcutUrl","URLSearchParams","url","getMinSideShortcutUrl","fetchShortcutItem","token","apiUrl","fetchOptions","method","headers","Headers","Authorization","fetch","then","res","status","json","shortcutItem","error","postShortcutItem","body","deleteShortcutItem","getGeonorgeMenuUrl","language","fetchMenuItems","menuItems","fetchDropdownSearchResults","searchString","urlParameterStrings","dataset","series","service","servicelayer","software","articles","all","searchResultsType","kartkatalogApiUrl","searchResults","getCookie","cname","ca","decodeURIComponent","cookie","split","c","charAt","substring","indexOf","setCookie","cvalue","exdays","domain","window","location","hostname","expireDate","Date","setTime","getTime","expires","toUTCString","getLanguage","setLanguage","getDownloadItems","localStorage","orderItems","Array","isArray","parse","filter","mapItem","getDownloadItemsCount","isKartkatalog","isLocalKartkatalogEnvironment","sessionStorage","downloadItemsCount","isNaN","getDownloadItemMetadata","itemUuid","removeDownloadItem","itemToRemove","selectedItems","itemToKeep","uuid","removeItem","orderItemsCount","getFocusableElementsInsideElement","element","querySelectorAll","getDocumentHeading","documentHeading","addGlobalStylesheet","styleElementId","styles","textContent","getElementById","head","removeInnerHTML","contains","removeChild","getMapItems","mapItems","getMapItemsCount","mapItemsCount","removeMapItem","Uuid","getKartkatalogUrl","getMinsideUrl","getGeonorgeUrl","getGeonorgeNedlastingUrl","replaceAndAddSpace","text","replaceWith","RegExp","convertTextToUrlSlug","handleSearchResultsClick","pushToDataLayer","event","category","activity","renderDropdownResultLink","searchResult","resultType","ShowDetailsUrl","Title","DownloadItems","hideListContainer","showList","renderDownloadItems","downloadItems","downloadItemsListElement","downloadItem","downloadItemElement","innerText","removeDownloadItemElement","classList","add","downloadItemLinkElement","preventRedirect","onOpenEmptyDownloadItemsList","href","downloadItemListContainer","prepend","clickOutsideDownloadItemsContainer","bind","updateDomElements","getUpdatedDownloadItems","setup","container","downloadButton","downloadIcon","downloadIconCounter","renderDownloadItemsCounter","downloadItemUuids","disconnectedCallback","removeEventListener","targetElement","composedPath","closest","remove","buttonClicked","removeDownloadItemClicked","removeDownloadItemButtonElement","stopPropagation","onDownloadItemsChange","detail","showListChanged","button","downloadItemsChanged","languageChanged","preventRedirectChanged","active","elementSelector","MainMenu","hideMenuContainer","showmenu","renderMenuItems","hierarchyLevel","maxHierarchyLevel","menuItemsListElement","menuItem","subItems","SubMenuItem","Url","Name","clickOutsideMenuContainer","menuButton","menuTitle","menuIcon","closeIcon","menuContainer","menuItemListContainer","menuActionsRow","menuitems","signinurl","signouturl","addAuthenticationLinks","englishurl","norwegianurl","addLanguageSelectLinks","hasAuthenticationFunction","loginToggleElement","isloggedin","onSignOutClick","onSignInClick","childElement","hasLanguageSelectFunctions","languageToggleElement","onNorwegianLanguageSelect","onEnglishLanguageSelect","hasAuthenticationFunctionChanged","isLoggedInChanged","hasLanguageSelectFunctionsChanged","showMenuChanged","focusableElement","menuItemsChanged","onClick","MainNavigation","getGeonorgeLogoVariant","shouldShowSearchTypeSelector","showsearchtypeselector","logoElement","searchField","mainMenu","mapItemsElement","downloadItemsElement","userAccount","searchTypeSelector","searchstring","staticposition","noshadow","organization","userinfo","metadataresultsfound","articlesresultsfound","searchtype","parentNode","insertBefore","nextSibling","MapItems","MainSearchField","UserAccount","organizationChanged","userinfoChanged","mainContentLinkText","maincontentid","environmentChanged","metadataResultsFoundChanged","articlesResultsFoundChanged","searchTypeChanged","showSearchTypeSelectorChanged","SearchTypeSelector","searchStringChanged","mainContentIdChanged","mainContentLink","onSearch","setTimeout","mainSearchField","onOpenEmptyMapItemsList","onSearchTypeChange","onMapItemsChange","renderSearchResultsForType","searchResultsResponseForType","searchResultsTypeName","Results","TypeTranslated","searchResultsListElements","NumFound","renderSearchResults","searchResultsResponses","hideSearchResultsContainer","showSearchResults","clickOutsideSearchResultsContainer","searchFieldLabel","searchButton","searchResultsContainer","maxHeight","innerHeight","closestLink","submitSearch","encodeURI","searchFieldKeyUp","key","onSearchSubmitted","showSearchResultsChanged","searchResultsResponseChanged","renderMapItems","mapItemsListElement","mapItemElement","removeMapItemElement","mapItemLinkElement","mapItemListContainer","clickOutsideMapItemsContainer","getUpdatedMapItems","mapButton","mapIcon","mapIconCounter","renderMapItemsCounter","removeMapItemClicked","removeMapItemButtonElement","mapItemsChanged","handleSearchTypeOnChange","metadataNameElement","metadataCounterElement","articleNameElement","articleCounterElement","onchange","updateNameElements","selectedElement","selectedSearchTypeSelector","checked","clickOutsideUserAccountItemsContainer","userAccountContent","userAccountItems","userAccountListContainer","shouldShowAuthenticationButton","renderLoginButton","loginIcon","loginbutton","append","renderLogoutButton","mypageContainer","mypagebutton","username","mypageicon","renderUserButton","renderUserAccountItems","hasAuthenticationUrls","userInfoContainer","userAccountListTitle","userNameSpan","userAccountListItems","createListItem","listItem","anchor","logOutBlock","marginTop","logOutLink","logOutText","onclick","preventDefault","userInfoChanged","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","n","getter","__esModule","d","a","definition","o","enumerable","obj","hasOwnProperty","r","Symbol","toStringTag"],"sourceRoot":""}
1
+ {"version":3,"file":"MainNavigation.js","mappings":"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","sources":["webpack://geonorge/webpack/universalModuleDefinition","webpack://geonorge/./stories/main-navigation/download-items/download-items.scss","webpack://geonorge/./stories/main-navigation/main-menu/main-menu.scss","webpack://geonorge/./stories/main-navigation/main-navigation.scss","webpack://geonorge/./stories/main-navigation/main-search-field/main-search-field.scss","webpack://geonorge/./stories/main-navigation/map-items/map-items.scss","webpack://geonorge/./stories/main-navigation/search-type-selector/search-type-selector.scss","webpack://geonorge/./stories/main-navigation/user-account/user-account.scss","webpack://geonorge/./stories/main-navigation/download-items/download-items.html","webpack://geonorge/./stories/main-navigation/main-menu/main-menu.html","webpack://geonorge/./stories/main-navigation/main-navigation.html","webpack://geonorge/./stories/main-navigation/main-search-field/main-search-field.html","webpack://geonorge/./stories/main-navigation/map-items/map-items.html","webpack://geonorge/./stories/main-navigation/search-type-selector/search-type-selector.html","webpack://geonorge/./stories/main-navigation/user-account/user-account.html","webpack://geonorge/../node_modules/css-loader/dist/runtime/api.js","webpack://geonorge/../node_modules/css-loader/dist/runtime/sourceMaps.js","webpack://geonorge/../node_modules/super-custom-elements/src/component.ts","webpack://geonorge/../node_modules/super-custom-elements/src/custom-element.ts","webpack://geonorge/../node_modules/super-custom-elements/src/helpers.ts","webpack://geonorge/../node_modules/super-custom-elements/src/index.ts","webpack://geonorge/../node_modules/super-custom-elements/src/listen.ts","webpack://geonorge/../node_modules/super-custom-elements/src/prop.ts","webpack://geonorge/../node_modules/super-custom-elements/src/toggle.ts","webpack://geonorge/../node_modules/super-custom-elements/src/util.ts","webpack://geonorge/../node_modules/super-custom-elements/src/watch.ts","webpack://geonorge/./assets/svg/burgerG.svg","webpack://geonorge/./assets/svg/close-icon-black.svg","webpack://geonorge/./assets/svg/download.svg","webpack://geonorge/./assets/svg/geonorge-navbar-logo.svg","webpack://geonorge/./assets/svg/geonorge-navbar-logo_dev.svg","webpack://geonorge/./assets/svg/geonorge-navbar-logo_test.svg","webpack://geonorge/./assets/svg/location.svg","webpack://geonorge/./assets/svg/login.svg","webpack://geonorge/./assets/svg/logout.svg","webpack://geonorge/./assets/svg/person.svg","webpack://geonorge/./assets/svg/search-icon.svg","webpack://geonorge/./assets/svg/trash-icon.svg","webpack://geonorge/./functions/apiHelpers.ts","webpack://geonorge/./functions/config.ts","webpack://geonorge/./functions/cookieHelpers.ts","webpack://geonorge/./functions/downloadItemHelpers.ts","webpack://geonorge/./functions/guiHelpers.ts","webpack://geonorge/./functions/mapItemHelpers.ts","webpack://geonorge/./functions/urlHelpers.ts","webpack://geonorge/./stories/main-navigation/download-items/download-items.ts","webpack://geonorge/./stories/main-navigation/main-menu/main-menu.ts","webpack://geonorge/./stories/main-navigation/main-navigation.ts","webpack://geonorge/./stories/main-navigation/main-search-field/main-search-field.ts","webpack://geonorge/./stories/main-navigation/map-items/map-items.ts","webpack://geonorge/./stories/main-navigation/search-type-selector/search-type-selector.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\"][\"MainNavigation\"] = factory();\n})(self, () => {\nreturn ","// 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, `*{box-sizing:border-box}.download-items-container .icon-toggle-button{margin-top:.4em;-moz-transition:all .1s ease-in-out;-o-transition:all .1s ease-in-out;-webkit-transition:all .1s ease-in-out;transition:all .1s ease-in-out;border:none;background:rgba(0,0,0,0);color:#403f3f;padding:0;position:relative;cursor:pointer}@media(min-width: 37.5em){.download-items-container .icon-toggle-button{padding:0 4px}}.download-items-container .icon-toggle-button.open{color:#414042}.download-items-container .icon-toggle-button .counter{display:flex;justify-content:center;align-items:center;-webkit-border-radius:35%;border-radius:35%;background-color:#fe5000;color:#fff;margin-top:-0.35em;margin-left:-0.2em;position:absolute;text-align:center;min-width:2em;left:2em;line-height:1.4;height:1.4em;font-size:.8em}@media(min-width: 37.5em){.download-items-container .icon-toggle-button .counter{height:1.5em;min-width:2em;line-height:1.5;font-size:.8em}}.download-items-container .icon-toggle-button .counter.hidden{display:none}.download-items-container .icon-toggle-button .download-icon svg{width:35px;height:22px}@media(min-width: 37.5em){.download-items-container .icon-toggle-button .download-icon svg{width:42px;height:27px}}.download-items-container .icon-toggle-button .download-icon svg:hover{color:#1073bc;cursor:pointer}.download-items-container .download-item-list-wrapper{position:absolute}.download-items-container .download-item-list-wrapper .download-item-list-container{-webkit-border-radius:0 0 3px 3px;border-radius:0 0 3px 3px;-moz-transition:all .1s ease-in-out;-o-transition:all .1s ease-in-out;-webkit-transition:all .1s ease-in-out;transition:all .1s ease-in-out;box-sizing:border-box;overflow:hidden;max-height:0;position:relative;top:10px;background-color:#fbfcfd;right:205px;width:260px}@media(min-width: 37.5em){.download-items-container .download-item-list-wrapper .download-item-list-container{right:245px;width:300px}}@media print{.download-items-container .download-item-list-wrapper .download-item-list-container{display:none}}.download-items-container .download-item-list-wrapper .download-item-list-container.open{-webkit-box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12);-moz-box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12);box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12);height:auto;max-height:300px;overflow:auto}.download-items-container .download-item-list-wrapper .download-item-list-container .page-link-element{display:block;text-align:center;padding:8px 16px;color:#3767c7;text-decoration:none;cursor:pointer;border:none;font-size:16px;font-weight:400;width:100%;font-family:\"Open Sans\",sans-serif}.download-items-container .download-item-list-wrapper .download-item-list-container .page-link-element:hover{text-decoration:underline;color:#0056b3}.download-items-container .download-item-list-wrapper .download-item-list-container ul{list-style:none;padding:0;margin:0}.download-items-container .download-item-list-wrapper .download-item-list-container ul li{-moz-transition:all .15s ease-in-out;-o-transition:all .15s ease-in-out;-webkit-transition:all .15s ease-in-out;transition:all .15s ease-in-out;display:flex;align-items:center;justify-content:space-between;padding:8px 16px;font-size:14px;font-weight:normal}.download-items-container .download-item-list-wrapper .download-item-list-container ul li:hover{background-color:rgba(0,0,0,.05)}.download-items-container .download-item-list-wrapper .download-item-list-container ul li .list-icon{margin-left:8px;cursor:pointer;background:none;border:none}.download-items-container .download-item-list-wrapper .download-item-list-container ul li .list-icon svg{color:#e00d0d;width:20px}`, \"\",{\"version\":3,\"sources\":[\"webpack://./stories/main-navigation/download-items/download-items.scss\",\"webpack://./style/mixins/_transition.scss\",\"webpack://./style/mixins/_breakpoints.scss\",\"webpack://./style/mixins/_border-radius.scss\",\"webpack://./style/variables/_colors.scss\",\"webpack://./style/mixins/_box-shadow.scss\",\"webpack://./style/variables/_typography.scss\"],\"names\":[],\"mappings\":\"AAOA,EACI,qBAAA,CAIA,8CACI,eAAA,CCZJ,mCDaI,CCZJ,iCDYI,CCXJ,sCDWI,CCVJ,8BDUI,CACA,WAAA,CACA,wBAAA,CACA,aAAA,CACA,SAAA,CACA,iBAAA,CAIA,cAAA,CEPA,0BFJJ,8CASQ,aAAA,CAAA,CAGJ,mDACI,aAAA,CAGJ,uDACI,YAAA,CACA,sBAAA,CACA,kBAAA,CG9BV,yBH+B+C,CG9B/C,iBH8B+C,CACrC,wBItBI,CJuBJ,UAAA,CACA,kBAAA,CACA,kBAAA,CACA,iBAAA,CACA,iBAAA,CACA,aAAA,CACA,QAAA,CACA,eAAA,CACA,YAAA,CACA,cAAA,CE3BJ,0BFYA,uDAiBQ,YAAA,CACA,aAAA,CACA,eAAA,CACA,cAAA,CAAA,CAEJ,8DACI,YAAA,CAIJ,iEACI,UAAA,CACA,WAAA,CEzCR,0BFuCI,iEAIQ,UAAA,CACA,WAAA,CAAA,CAEJ,uEACI,aAAA,CACA,cAAA,CAKhB,sDACI,iBAAA,CACA,oFGtEN,iCHuE+C,CGtE/C,yBHsE+C,CCvE7C,mCDwEQ,CCvER,iCDuEQ,CCtER,sCDsEQ,CCrER,8BDqEQ,CACA,qBAAA,CACA,eAAA,CACA,YAAA,CACA,iBAAA,CACA,QAAA,CACA,wBAAA,CACA,WAAA,CACA,WAAA,CEjEJ,0BFuDA,oFAYQ,WAAA,CACA,WAAA,CAAA,CAEJ,aAfJ,oFAgBQ,YAAA,CAAA,CAEJ,yFKxFR,8GLyFY,CKxFZ,2GLwFY,CKvFZ,sGLuFY,CAKA,WAAA,CACA,gBAAA,CACA,aAAA,CAEJ,uGACI,aAAA,CACA,iBAAA,CACA,gBAAA,CACA,aIxFD,CJyFC,oBAAA,CACA,cAAA,CACA,WAAA,CACA,cAAA,CACA,eAAA,CACA,UAAA,CACA,kCM9GD,CN+GC,6GACI,yBAAA,CACA,aIjGA,CJoGR,uFACI,eAAA,CACA,SAAA,CACA,QAAA,CACA,0FCvHZ,oCDwHgB,CCvHhB,kCDuHgB,CCtHhB,uCDsHgB,CCrHhB,+BDqHgB,CACA,YAAA,CACA,kBAAA,CACA,6BAAA,CACA,gBAAA,CACA,cAAA,CACA,kBAAA,CACA,gGACI,gCI/HL,CJiIC,qGACI,eAAA,CACA,cAAA,CACA,eAAA,CACA,WAAA,CACA,yGACI,aI3Gd,CJ4Gc,UAAA\",\"sourcesContent\":[\"@use \\\"../../../style/mixins/border-radius\\\";\\n@use \\\"../../../style/mixins/box-shadow\\\";\\n@use \\\"../../../style/mixins/breakpoints\\\";\\n@use \\\"../../../style/mixins/transition\\\";\\n@use \\\"../../../style/variables/colors\\\";\\n@use \\\"../../../style/variables/typography\\\";\\n\\n* {\\n box-sizing: border-box;\\n}\\n\\n.download-items-container {\\n .icon-toggle-button {\\n margin-top: 0.4em;\\n @include transition.transition(all 0.1s ease-in-out);\\n border: none;\\n background: transparent;\\n color: #403f3f;\\n padding: 0;\\n position: relative;\\n @include breakpoints.breakpoint(phablet) {\\n padding: 0 4px;\\n }\\n cursor: pointer;\\n &.open {\\n color: #414042;\\n }\\n\\n .counter {\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n @include border-radius.border-radius(35%);\\n background-color: colors.$primary-brand;\\n color: #fff;\\n margin-top: -0.35em;\\n margin-left: -0.2em;\\n position: absolute;\\n text-align: center;\\n min-width: 2em;\\n left: 2em;\\n line-height: 1.4;\\n height: 1.4em;\\n font-size: 0.8em;\\n @include breakpoints.breakpoint(phablet) {\\n height: 1.5em;\\n min-width: 2em;\\n line-height: 1.5;\\n font-size: 0.8em;\\n }\\n &.hidden {\\n display: none;\\n }\\n }\\n .download-icon {\\n svg {\\n width: 35px;\\n height: 22px;\\n @include breakpoints.breakpoint(phablet) {\\n width: 42px;\\n height: 27px;\\n }\\n &:hover {\\n color: #1073bc;\\n cursor: pointer;\\n }\\n }\\n }\\n }\\n .download-item-list-wrapper {\\n position: absolute;\\n .download-item-list-container {\\n @include border-radius.border-radius(0 0 3px 3px);\\n @include transition.transition(all 0.1s ease-in-out);\\n box-sizing: border-box;\\n overflow: hidden;\\n max-height: 0;\\n position: relative;\\n top: 10px;\\n background-color: #fbfcfd;\\n right: 205px;\\n width: 260px;\\n @include breakpoints.breakpoint(phablet) {\\n right: 245px;\\n width: 300px;\\n }\\n @media print {\\n display: none;\\n }\\n &.open {\\n @include box-shadow.box-shadow(\\n 0 5px 5px -3px rgba(0, 0, 0, 0.2),\\n 0 8px 10px 1px rgba(0, 0, 0, 0.14),\\n 0 3px 14px 2px rgba(0, 0, 0, 0.12)\\n );\\n height: auto;\\n max-height: 300px;\\n overflow: auto;\\n }\\n .page-link-element {\\n display: block;\\n text-align: center;\\n padding: 8px 16px;\\n color: colors.$primary-text;\\n text-decoration: none;\\n cursor: pointer;\\n border: none;\\n font-size: 16px;\\n font-weight: 400;\\n width: 100%;\\n font-family: typography.$default-font;\\n &:hover {\\n text-decoration: underline;\\n color: colors.$primary-text-hover;\\n }\\n }\\n ul {\\n list-style: none;\\n padding: 0;\\n margin: 0;\\n li {\\n @include transition.transition(all 0.15s ease-in-out);\\n display: flex;\\n align-items: center;\\n justify-content: space-between;\\n padding: 8px 16px;\\n font-size: 14px;\\n font-weight: normal;\\n &:hover {\\n background-color: colors.$hover-background;\\n }\\n .list-icon {\\n margin-left: 8px;\\n cursor: pointer;\\n background: none;\\n border: none;\\n svg {\\n color: colors.$danger-text;\\n width: 20px;\\n }\\n }\\n }\\n }\\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\",\"@use \\\"../variables/breakpoints\\\";\\n\\n@mixin breakpoint($point) {\\n @if $point == desktop {\\n @media (min-width: breakpoints.$screen-desktop) {\\n @content;\\n }\\n } @else if $point == laptop {\\n @media (min-width: breakpoints.$screen-laptop) {\\n @content;\\n }\\n } @else if $point == tablet {\\n @media (min-width: breakpoints.$screen-tablet) {\\n @content;\\n }\\n } @else if $point == phablet {\\n @media (min-width: breakpoints.$screen-phablet) {\\n @content;\\n }\\n }\\n}\\n\",\"@mixin border-radius($radius) {\\n -webkit-border-radius: $radius;\\n border-radius: $radius;\\n}\\n\\n// Single side border-radius\\n\\n@mixin border-top-radius($radius) {\\n -webkit-border-top-right-radius: $radius;\\n border-top-right-radius: $radius;\\n -webkit-border-top-left-radius: $radius;\\n border-top-left-radius: $radius;\\n}\\n@mixin border-right-radius($radius) {\\n -webkit-border-bottom-right-radius: $radius;\\n border-bottom-right-radius: $radius;\\n -webkit-border-top-right-radius: $radius;\\n border-top-right-radius: $radius;\\n}\\n@mixin border-bottom-radius($radius) {\\n -webkit-border-bottom-right-radius: $radius;\\n border-bottom-right-radius: $radius;\\n -webkit-border-bottom-left-radius: $radius;\\n border-bottom-left-radius: $radius;\\n}\\n@mixin border-left-radius($radius) {\\n -webkit-border-bottom-left-radius: $radius;\\n border-bottom-left-radius: $radius;\\n -webkit-border-top-left-radius: $radius;\\n border-top-left-radius: $radius;\\n}\",\"$body-background: #ffffff;\\n$navigation-bar-background: #f7f7f7;\\n$hover-background: rgba(0,0,0,.05);\\n$default-border: #d8d8d8;\\n\\n$default-background: #eee;\\n$default-background-hover: #ddd;\\n$default-text:#2F3940;\\n\\n$light-gray: #f6f5f4;\\n\\n$primary-brand: #FE5000;\\n\\n$primary-background: #3767C7;\\n$primary-background-hover: #FE5000;\\n$primary-text: #3767C7;\\n$primary-text-hover:#0056b3;\\n\\n\\n$success-background: #06A755;\\n$success-background-hover: #009745;\\n$success-text: #06A755;\\n\\n\\n$warning-background: #C38621;\\n$warning-background-hover: #B37611;\\n$warning-text: #C38621;\\n\\n$danger-background: #E00d0D;\\n$danger-background-hover: #D00000;\\n$danger-text: #E00d0D;\\n\\n$disabled-background: #f4f4f4;\\n$disabled-border: #dedede;\\n$disabled-text: #707070;\\n\\n\\n$light-green: #8fff33;\\n$light-yellow: #ffEb3b;\\n$light-red: #ff4a2e;\\n\",\"@mixin box-shadow($shadows...) {\\n -webkit-box-shadow: $shadows;\\n -moz-box-shadow: $shadows;\\n box-shadow: $shadows;\\n}\\n\",\"$default-font: \\\"Open Sans\\\", sans-serif;\\n$header-font: \\\"Raleway\\\", sans-serif;\\n$default-font-size: 15px;\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `*{box-sizing:border-box}button.menu-toggle-button{border:none;background-color:rgba(0,0,0,0);color:#403f3f;cursor:pointer;width:40px;height:32px;display:flex;gap:6px;align-items:center}@media(min-width: 37.5em){button.menu-toggle-button{width:45px;height:37px}}@media(min-width: 992px){button.menu-toggle-button{width:98px;background-color:rgba(0,0,0,0);color:#403f3f}}button.menu-toggle-button.open{background-color:rgba(0,0,0,0)}button.menu-toggle-button span{padding:2px 1px;vertical-align:middle}button.menu-toggle-button span.menu-title{display:none;font-weight:500;vertical-align:middle;font-family:\"Open Sans\",sans-serif;font-size:14px}@media(min-width: 992px){button.menu-toggle-button span.menu-title{display:inline-block}}button.menu-toggle-button span.hidden{display:none}button.menu-toggle-button svg{height:24px;width:24px;vertical-align:middle}button.menu-toggle-button:hover{color:#1073bc}.menu-wrapper{position:absolute;left:0;width:100%}.menu-wrapper .menu-container{-webkit-border-radius:0 0 3px 3px;border-radius:0 0 3px 3px;box-sizing:border-box;width:100%;background-color:#fff;margin:auto;position:relative;top:56px}@media(min-width: 37.5em){.menu-wrapper .menu-container{top:15px}}@media(min-width: 768px){.menu-wrapper .menu-container{width:750px}}@media(min-width: 992px){.menu-wrapper .menu-container{width:970px}}@media(min-width: 1200px){.menu-wrapper .menu-container{width:1170px}}@media print{.menu-wrapper .menu-container{display:none}}.menu-wrapper .menu-container.open{-webkit-box-shadow:0 5px 5px -2px rgba(0,0,0,.26);-moz-box-shadow:0 5px 5px -2px rgba(0,0,0,.26);box-shadow:0 5px 5px -2px rgba(0,0,0,.26);height:auto}.menu-wrapper .menu-container .menu-item-list-container{-moz-transition:max-height .3s ease-in-out;-o-transition:max-height .3s ease-in-out;-webkit-transition:max-height .3s ease-in-out;transition:max-height .3s ease-in-out;overflow:hidden;max-height:0}.menu-wrapper .menu-container .menu-item-list-container.open{max-height:300px;overflow:auto}@media(min-width: 37.5em){.menu-wrapper .menu-container .menu-item-list-container.open{max-height:450px}}@media(min-width: 992px){.menu-wrapper .menu-container .menu-item-list-container.open{max-height:300px}}.menu-wrapper .menu-container .menu-item-list-container .menuItemList{list-style:none;margin:15px;color:#414042;font-size:15px}.menu-wrapper .menu-container .menu-item-list-container .menuItemList:first-child{padding:15px 0 0}.menu-wrapper .menu-container .menu-item-list-container .menuItemList a{color:#414042;text-decoration:none}.menu-wrapper .menu-container .menu-item-list-container .menuItemList a:hover{text-decoration:underline}.menu-wrapper .menu-container .menu-item-list-container .menuItemList.hierarchy-level-0{display:flex;flex-wrap:wrap}.menu-wrapper .menu-container .menu-item-list-container .menuItemList.hierarchy-level-0>li{flex:1 0 100%}@media(min-width: 37.5em){.menu-wrapper .menu-container .menu-item-list-container .menuItemList.hierarchy-level-0>li{flex:1 0 50%}}@media(min-width: 992px){.menu-wrapper .menu-container .menu-item-list-container .menuItemList.hierarchy-level-0>li{flex:1}}.menu-wrapper .menu-container .menu-item-list-container .menuItemList.hierarchy-level-0>li>a{border-bottom:1px solid #b6afa8;font-weight:700;padding-bottom:.75em;margin-bottom:.75em;display:block}.menu-wrapper .menu-container .menu-item-list-container .menuItemList.hierarchy-level-0>li>ul{padding:0}.menu-wrapper .menu-container .menu-item-list-container .menuItemList.hierarchy-level-0>li>ul li{margin-bottom:12px}.menu-wrapper .menu-container .menu-item-list-container .menuItemList.hierarchy-level-0.hierarchy-level-1>li>a{font-weight:normal}.menu-wrapper .menu-container .menu-actions-row{-moz-transition:max-height .3s ease-in-out;-o-transition:max-height .3s ease-in-out;-webkit-transition:max-height .3s ease-in-out;transition:max-height .3s ease-in-out;text-align:right;background-color:#fff;max-height:0;overflow:hidden}.menu-wrapper .menu-container .menu-actions-row.open{max-height:56px}.menu-wrapper .menu-container .menu-actions-row a,.menu-wrapper .menu-container .menu-actions-row button{display:inline-block;padding:.25em 1em .25em 1.1em;margin:15px 0;text-decoration:none;color:#414042;cursor:pointer;border:none;font-size:16px;font-weight:normal;font-family:\"Open Sans\",sans-serif;background:none}.menu-wrapper .menu-container .menu-actions-row a:hover,.menu-wrapper .menu-container .menu-actions-row button:hover{text-decoration:underline}.menu-wrapper .menu-container .menu-actions-row a:not(:first-child),.menu-wrapper .menu-container .menu-actions-row button:not(:first-child){border-left:1px solid #b6afa8}`, \"\",{\"version\":3,\"sources\":[\"webpack://./stories/main-navigation/main-menu/main-menu.scss\",\"webpack://./style/mixins/_breakpoints.scss\",\"webpack://./style/variables/_typography.scss\",\"webpack://./style/mixins/_border-radius.scss\",\"webpack://./style/mixins/_box-shadow.scss\",\"webpack://./style/mixins/_transition.scss\"],\"names\":[],\"mappings\":\"AAKA,EACI,qBAAA,CAGJ,0BACI,WAAA,CACA,8BAAA,CACA,aAAA,CACA,cAAA,CACA,UAAA,CACA,WAAA,CACA,YAAA,CACA,OAAA,CACA,kBAAA,CCFI,0BDPR,0BAYQ,UAAA,CACA,WAAA,CAAA,CCdA,yBDCR,0BAgBQ,UAAA,CACA,8BAAA,CACA,aAAA,CAAA,CAEJ,+BACI,8BAAA,CAEJ,+BACI,eAAA,CACA,qBAAA,CACA,0CACI,YAAA,CACA,eAAA,CACA,qBAAA,CACA,kCEvCG,CFwCH,cAAA,CChCJ,yBD2BA,0CAOQ,oBAAA,CAAA,CAGR,sCACI,YAAA,CAGR,8BACI,WAAA,CACA,UAAA,CACA,qBAAA,CAEJ,gCACI,aAAA,CAGR,cACI,iBAAA,CACA,MAAA,CACA,UAAA,CAEA,8BG9DF,iCH+D2C,CG9D3C,yBH8D2C,CACrC,qBAAA,CACA,UAAA,CACA,qBAAA,CACA,WAAA,CACA,iBAAA,CACA,QAAA,CCtDA,0BD+CJ,8BASQ,QAAA,CAAA,CC5DJ,yBDmDJ,8BAaQ,WAAA,CAAA,CCpEJ,yBDuDJ,8BAgBQ,WAAA,CAAA,CC3EJ,0BD2DJ,8BAmBQ,YAAA,CAAA,CAEJ,aArBJ,8BAsBQ,YAAA,CAAA,CAGJ,mCIvFJ,iDJwFQ,CIvFR,8CJuFQ,CItFR,yCJsFQ,CACA,WAAA,CAEJ,wDK3FJ,0CL4FQ,CK3FR,wCL2FQ,CK1FR,6CL0FQ,CKzFR,qCLyFQ,CACA,eAAA,CACA,YAAA,CACA,6DACI,gBAAA,CACA,aAAA,CClFR,0BDgFI,6DAIQ,gBAAA,CAAA,CC5FZ,yBDwFI,6DAOQ,gBAAA,CAAA,CAIR,sEACI,eAAA,CACA,WAAA,CACA,aAAA,CACA,cAAA,CACA,kFACI,gBAAA,CAEJ,wEACI,aAAA,CACA,oBAAA,CACA,8EACI,yBAAA,CAGR,wFACI,YAAA,CACA,cAAA,CACA,2FACI,aAAA,CC9GhB,0BD6GY,2FAGQ,YAAA,CAAA,CCxHpB,yBDqHY,2FAMQ,MAAA,CAAA,CAEJ,6FACI,+BAAA,CACA,eAAA,CACA,oBAAA,CACA,mBAAA,CACA,aAAA,CAEJ,8FACI,SAAA,CACA,iGACI,kBAAA,CAMJ,+GACI,kBAAA,CAOxB,gDK5JJ,0CL6JQ,CK5JR,wCL4JQ,CK3JR,6CL2JQ,CK1JR,qCL0JQ,CACA,gBAAA,CACA,qBAAA,CACA,YAAA,CACA,eAAA,CACA,qDACI,eAAA,CAEJ,yGAEI,oBAAA,CACA,6BAAA,CACA,aAAA,CACA,oBAAA,CACA,aAAA,CACA,cAAA,CACA,WAAA,CACA,cAAA,CACA,kBAAA,CACA,kCEjLD,CFkLC,eAAA,CACA,qHACI,yBAAA,CAEJ,6IACI,6BAAA\",\"sourcesContent\":[\"@use \\\"../../../style/mixins/border-radius\\\";\\n@use \\\"../../../style/mixins/box-shadow\\\";\\n@use \\\"../../../style/mixins/breakpoints\\\";\\n@use \\\"../../../style/mixins/transition\\\";\\n@use \\\"../../../style/variables/typography\\\";\\n* {\\n box-sizing: border-box;\\n}\\n\\nbutton.menu-toggle-button {\\n border: none;\\n background-color: transparent;\\n color: #403f3f;\\n cursor: pointer;\\n width: 40px;\\n height: 32px;\\n display: flex;\\n gap: 6px;\\n align-items: center;\\n\\n @include breakpoints.breakpoint(phablet) {\\n width: 45px;\\n height: 37px;\\n }\\n @include breakpoints.breakpoint(laptop) {\\n width: 98px;\\n background-color: transparent;\\n color: #403f3f;\\n }\\n &.open {\\n background-color: transparent;\\n }\\n span {\\n padding: 2px 1px;\\n vertical-align: middle;\\n &.menu-title {\\n display: none;\\n font-weight: 500;\\n vertical-align: middle;\\n font-family: typography.$default-font;\\n font-size: 14px;\\n @include breakpoints.breakpoint(laptop) {\\n display: inline-block;\\n }\\n }\\n &.hidden {\\n display: none;\\n }\\n }\\n svg {\\n height: 24px;\\n width: 24px;\\n vertical-align: middle;\\n }\\n &:hover {\\n color: #1073bc;\\n }\\n}\\n.menu-wrapper {\\n position: absolute;\\n left: 0;\\n width: 100%;\\n\\n .menu-container {\\n @include border-radius.border-radius(0 0 3px 3px);\\n box-sizing: border-box;\\n width: 100%;\\n background-color: #fff;\\n margin: auto;\\n position: relative;\\n top: 56px;\\n @include breakpoints.breakpoint(phablet) {\\n top: 15px;\\n }\\n\\n @include breakpoints.breakpoint(tablet) {\\n width: 750px;\\n }\\n @include breakpoints.breakpoint(laptop) {\\n width: 970px;\\n }\\n @include breakpoints.breakpoint(desktop) {\\n width: 1170px;\\n }\\n @media print {\\n display: none;\\n }\\n\\n &.open {\\n @include box-shadow.box-shadow(0 5px 5px -2px rgba(0, 0, 0, 0.26));\\n height: auto;\\n }\\n .menu-item-list-container {\\n @include transition.transition(max-height 0.3s ease-in-out);\\n overflow: hidden;\\n max-height: 0;\\n &.open {\\n max-height: 300px;\\n overflow: auto;\\n @include breakpoints.breakpoint(phablet) {\\n max-height: 450px;\\n }\\n @include breakpoints.breakpoint(laptop) {\\n max-height: 300px;\\n }\\n }\\n\\n .menuItemList {\\n list-style: none;\\n margin: 15px;\\n color: #414042;\\n font-size: 15px;\\n &:first-child {\\n padding: 15px 0 0;\\n }\\n a {\\n color: #414042;\\n text-decoration: none;\\n &:hover {\\n text-decoration: underline;\\n }\\n }\\n &.hierarchy-level-0 {\\n display: flex;\\n flex-wrap: wrap;\\n > li {\\n flex: 1 0 100%;\\n @include breakpoints.breakpoint(phablet) {\\n flex: 1 0 50%;\\n }\\n @include breakpoints.breakpoint(laptop) {\\n flex: 1;\\n }\\n > a {\\n border-bottom: 1px solid #b6afa8;\\n font-weight: 700;\\n padding-bottom: 0.75em;\\n margin-bottom: 0.75em;\\n display: block;\\n }\\n > ul {\\n padding: 0;\\n li {\\n margin-bottom: 12px;\\n }\\n }\\n }\\n &.hierarchy-level-1 {\\n > li {\\n > a {\\n font-weight: normal;\\n }\\n }\\n }\\n }\\n }\\n }\\n .menu-actions-row {\\n @include transition.transition(max-height 0.3s ease-in-out);\\n text-align: right;\\n background-color: white;\\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: #414042;\\n cursor: pointer;\\n border: none;\\n font-size: 16px;\\n font-weight: normal;\\n font-family: typography.$default-font;\\n background: none;\\n &:hover {\\n text-decoration: underline;\\n }\\n &:not(:first-child) {\\n border-left: 1px solid #b6afa8;\\n }\\n }\\n }\\n }\\n}\\n\",\"@use \\\"../variables/breakpoints\\\";\\n\\n@mixin breakpoint($point) {\\n @if $point == desktop {\\n @media (min-width: breakpoints.$screen-desktop) {\\n @content;\\n }\\n } @else if $point == laptop {\\n @media (min-width: breakpoints.$screen-laptop) {\\n @content;\\n }\\n } @else if $point == tablet {\\n @media (min-width: breakpoints.$screen-tablet) {\\n @content;\\n }\\n } @else if $point == phablet {\\n @media (min-width: breakpoints.$screen-phablet) {\\n @content;\\n }\\n }\\n}\\n\",\"$default-font: \\\"Open Sans\\\", sans-serif;\\n$header-font: \\\"Raleway\\\", sans-serif;\\n$default-font-size: 15px;\\n\",\"@mixin border-radius($radius) {\\n -webkit-border-radius: $radius;\\n border-radius: $radius;\\n}\\n\\n// Single side border-radius\\n\\n@mixin border-top-radius($radius) {\\n -webkit-border-top-right-radius: $radius;\\n border-top-right-radius: $radius;\\n -webkit-border-top-left-radius: $radius;\\n border-top-left-radius: $radius;\\n}\\n@mixin border-right-radius($radius) {\\n -webkit-border-bottom-right-radius: $radius;\\n border-bottom-right-radius: $radius;\\n -webkit-border-top-right-radius: $radius;\\n border-top-right-radius: $radius;\\n}\\n@mixin border-bottom-radius($radius) {\\n -webkit-border-bottom-right-radius: $radius;\\n border-bottom-right-radius: $radius;\\n -webkit-border-bottom-left-radius: $radius;\\n border-bottom-left-radius: $radius;\\n}\\n@mixin border-left-radius($radius) {\\n -webkit-border-bottom-left-radius: $radius;\\n border-bottom-left-radius: $radius;\\n -webkit-border-top-left-radius: $radius;\\n border-top-left-radius: $radius;\\n}\",\"@mixin box-shadow($shadows...) {\\n -webkit-box-shadow: $shadows;\\n -moz-box-shadow: $shadows;\\n box-shadow: $shadows;\\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","// 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, `*{box-sizing:border-box}div.main-navigation{-webkit-box-shadow:0 2px 5px rgba(0,0,0,.26);-moz-box-shadow:0 2px 5px rgba(0,0,0,.26);box-shadow:0 2px 5px rgba(0,0,0,.26);background-color:#f7f7f7;font-family:\"Open Sans\",sans-serif;color:#2f3940;position:fixed;width:100%;top:0;left:0;z-index:2}@media print{div.main-navigation{position:relative;margin-bottom:-100px;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}}div.main-navigation.static-position{position:static}div.main-navigation.no-shadow{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}div.main-navigation a.main-content-link{display:block;color:#3767c7;padding:8px;text-align:center;text-decoration:none;font-size:19px;position:absolute;overflow:hidden;clip:rect(1px, 1px, 1px, 1px);width:1px;height:1px;word-wrap:normal}div.main-navigation a.main-content-link:focus,div.main-navigation a.main-content-link:active{position:static;overflow:visible;clip:auto;width:100%;height:auto;outline:none;color:#0056b3}div.main-navigation a.main-content-link:focus span,div.main-navigation a.main-content-link:active span{z-index:100;outline:3px solid #3767c7;outline-offset:2px;transition:none;text-decoration:none}div.main-navigation .main-navigation-container{margin:auto}@media(min-width: 768px){div.main-navigation .main-navigation-container{width:750px}}@media(min-width: 992px){div.main-navigation .main-navigation-container{width:970px}}@media(min-width: 1200px){div.main-navigation .main-navigation-container{width:1170px}}div.main-navigation .main-navigation-container .main-navigation-content{display:flex;flex-wrap:wrap;align-items:center;padding:10px 15px}@media(min-width: 37.5em){div.main-navigation .main-navigation-container .main-navigation-content{flex-wrap:nowrap}}div.main-navigation .main-navigation-container .main-navigation-content .logo{flex:1}div.main-navigation .main-navigation-container .main-navigation-content .logo a{display:inline-block}div.main-navigation .main-navigation-container .main-navigation-content .logo svg{height:37px;width:200px}@media(min-width: 37.5em){div.main-navigation .main-navigation-container .main-navigation-content .logo svg{width:200px}}@media(min-width: 992px){div.main-navigation .main-navigation-container .main-navigation-content .logo svg{width:248px}}div.main-navigation .main-navigation-container .main-navigation-content .search-container{flex:2;width:100%;order:2;display:flex;flex-direction:column;width:300px}@media print{div.main-navigation .main-navigation-container .main-navigation-content .search-container{display:none}}@media(min-width: 37.5em){div.main-navigation .main-navigation-container .main-navigation-content .search-container{order:0;padding:0 1em}}@media(min-width: 768px){div.main-navigation .main-navigation-container .main-navigation-content .search-container{flex-direction:row}}div.main-navigation .main-navigation-container .main-navigation-content .button-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between}`, \"\",{\"version\":3,\"sources\":[\"webpack://./stories/main-navigation/main-navigation.scss\",\"webpack://./style/mixins/_box-shadow.scss\",\"webpack://./style/variables/_colors.scss\",\"webpack://./style/variables/_typography.scss\",\"webpack://./style/mixins/_breakpoints.scss\"],\"names\":[],\"mappings\":\"AAKA,EACI,qBAAA,CAGJ,oBCRI,4CDSA,CCRA,yCDQA,CCPA,oCDOA,CACA,wBEVyB,CFWzB,kCGZW,CHaX,aENU,CFOV,cAAA,CACA,UAAA,CACA,KAAA,CACA,MAAA,CACA,SAAA,CACA,aAVJ,oBAWQ,iBAAA,CACA,oBAAA,CCpBJ,uBDqBI,CCpBJ,oBDoBI,CCnBJ,eDmBI,CAAA,CAGJ,oCACI,eAAA,CAGJ,8BC5BA,uBD6BI,CC5BJ,oBD4BI,CC3BJ,eD2BI,CAGJ,wCACI,aAAA,CACA,aEpBO,CFqBP,WAAA,CACA,iBAAA,CACA,oBAAA,CACA,cAAA,CACA,iBAAA,CACA,eAAA,CACA,6BAAA,CACA,SAAA,CACA,UAAA,CACA,gBAAA,CACA,6FAEI,eAAA,CACA,gBAAA,CACA,SAAA,CACA,UAAA,CACA,WAAA,CACA,YAAA,CACA,aEtCQ,CFuCR,uGACI,WAAA,CACA,yBAAA,CACA,kBAAA,CACA,eAAA,CACA,oBAAA,CAKZ,+CACI,WAAA,CItDA,yBJqDJ,+CAIQ,WAAA,CAAA,CI7DJ,yBJyDJ,+CAOQ,WAAA,CAAA,CIpEJ,0BJ6DJ,+CAUQ,YAAA,CAAA,CAEJ,wEACI,YAAA,CACA,cAAA,CACA,kBAAA,CACA,iBAAA,CIjEJ,0BJ6DA,wEAMQ,gBAAA,CAAA,CAGJ,8EACI,MAAA,CACA,gFACI,oBAAA,CAEJ,kFACI,WAAA,CACA,WAAA,CI7EZ,0BJ2EQ,kFAIQ,WAAA,CAAA,CIvFhB,yBJmFQ,kFAOQ,WAAA,CAAA,CAIZ,0FACI,MAAA,CACA,UAAA,CAIA,OAAA,CACA,YAAA,CACA,qBAAA,CASA,WAAA,CAdA,aAHJ,0FAIQ,YAAA,CAAA,CI1FZ,0BJsFI,0FAWQ,OAAA,CACA,aAAA,CAAA,CItGZ,yBJ0FI,0FAeQ,kBAAA,CAAA,CAIR,oFACI,YAAA,CACA,cAAA,CACA,kBAAA,CACA,6BAAA\",\"sourcesContent\":[\"@use \\\"../../style/mixins/box-shadow\\\";\\n@use \\\"../../style/mixins/breakpoints\\\";\\n@use \\\"../../style/variables/colors\\\";\\n@use \\\"../../style/variables/typography\\\";\\n\\n* {\\n box-sizing: border-box;\\n}\\n\\ndiv.main-navigation {\\n @include box-shadow.box-shadow(0 2px 5px rgba(0, 0, 0, 0.26));\\n background-color: colors.$navigation-bar-background;\\n font-family: typography.$default-font;\\n color: colors.$default-text;\\n position: fixed;\\n width: 100%;\\n top: 0;\\n left: 0;\\n z-index: 2;\\n @media print {\\n position: relative;\\n margin-bottom: -100px;\\n @include box-shadow.box-shadow(none);\\n }\\n\\n &.static-position {\\n position: static;\\n }\\n\\n &.no-shadow {\\n @include box-shadow.box-shadow(none);\\n }\\n\\n a.main-content-link {\\n display: block;\\n color: colors.$primary-text;\\n padding: 8px;\\n text-align: center;\\n text-decoration: none;\\n font-size: 19px;\\n position: absolute;\\n overflow: hidden;\\n clip: rect(1px, 1px, 1px, 1px);\\n width: 1px;\\n height: 1px;\\n word-wrap: normal;\\n &:focus,\\n &:active {\\n position: static;\\n overflow: visible;\\n clip: auto;\\n width: 100%;\\n height: auto;\\n outline: none;\\n color: colors.$primary-text-hover;\\n span {\\n z-index: 100;\\n outline: 3px solid colors.$primary-text;\\n outline-offset: 2px;\\n transition: none;\\n text-decoration: none;\\n }\\n }\\n }\\n\\n .main-navigation-container {\\n margin: auto;\\n\\n @include breakpoints.breakpoint(tablet) {\\n width: 750px;\\n }\\n @include breakpoints.breakpoint(laptop) {\\n width: 970px;\\n }\\n @include breakpoints.breakpoint(desktop) {\\n width: 1170px;\\n }\\n .main-navigation-content {\\n display: flex;\\n flex-wrap: wrap;\\n align-items: center;\\n padding: 10px 15px;\\n @include breakpoints.breakpoint(phablet) {\\n flex-wrap: nowrap;\\n }\\n\\n .logo {\\n flex: 1;\\n a {\\n display: inline-block;\\n }\\n svg {\\n height: 37px;\\n width: 200px;\\n @include breakpoints.breakpoint(phablet) {\\n width: 200px;\\n }\\n @include breakpoints.breakpoint(laptop) {\\n width: 248px;\\n }\\n }\\n }\\n .search-container {\\n flex: 2;\\n width: 100%;\\n @media print {\\n display: none;\\n }\\n order: 2;\\n display: flex;\\n flex-direction: column;\\n\\n @include breakpoints.breakpoint(phablet) {\\n order: 0;\\n padding: 0 1em;\\n }\\n @include breakpoints.breakpoint(tablet) {\\n flex-direction: row;\\n }\\n width: 300px;\\n }\\n .button-row {\\n display: flex;\\n flex-wrap: wrap;\\n align-items: center;\\n justify-content: space-between;\\n }\\n }\\n }\\n}\\n\",\"@mixin box-shadow($shadows...) {\\n -webkit-box-shadow: $shadows;\\n -moz-box-shadow: $shadows;\\n box-shadow: $shadows;\\n}\\n\",\"$body-background: #ffffff;\\n$navigation-bar-background: #f7f7f7;\\n$hover-background: rgba(0,0,0,.05);\\n$default-border: #d8d8d8;\\n\\n$default-background: #eee;\\n$default-background-hover: #ddd;\\n$default-text:#2F3940;\\n\\n$light-gray: #f6f5f4;\\n\\n$primary-brand: #FE5000;\\n\\n$primary-background: #3767C7;\\n$primary-background-hover: #FE5000;\\n$primary-text: #3767C7;\\n$primary-text-hover:#0056b3;\\n\\n\\n$success-background: #06A755;\\n$success-background-hover: #009745;\\n$success-text: #06A755;\\n\\n\\n$warning-background: #C38621;\\n$warning-background-hover: #B37611;\\n$warning-text: #C38621;\\n\\n$danger-background: #E00d0D;\\n$danger-background-hover: #D00000;\\n$danger-text: #E00d0D;\\n\\n$disabled-background: #f4f4f4;\\n$disabled-border: #dedede;\\n$disabled-text: #707070;\\n\\n\\n$light-green: #8fff33;\\n$light-yellow: #ffEb3b;\\n$light-red: #ff4a2e;\\n\",\"$default-font: \\\"Open Sans\\\", sans-serif;\\n$header-font: \\\"Raleway\\\", sans-serif;\\n$default-font-size: 15px;\\n\",\"@use \\\"../variables/breakpoints\\\";\\n\\n@mixin breakpoint($point) {\\n @if $point == desktop {\\n @media (min-width: breakpoints.$screen-desktop) {\\n @content;\\n }\\n } @else if $point == laptop {\\n @media (min-width: breakpoints.$screen-laptop) {\\n @content;\\n }\\n } @else if $point == tablet {\\n @media (min-width: breakpoints.$screen-tablet) {\\n @content;\\n }\\n } @else if $point == phablet {\\n @media (min-width: breakpoints.$screen-phablet) {\\n @content;\\n }\\n }\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `*{box-sizing:border-box}div.main-search-field{font-family:\"Open Sans\",sans-serif;display:flex;height:37px;margin-top:.25em;position:relative;width:100%;max-width:440px}@media(min-width: 37.5em){div.main-search-field{margin-top:0}}div.main-search-field .mainSearchLabel{width:0;height:0;overflow:hidden;opacity:0}div.main-search-field input{-webkit-appearance:none;-moz-appearance:none;appearance:none;-webkit-border-radius:4px 0 0 4px;border-radius:4px 0 0 4px;height:37px;width:100%;outline-offset:-2px;background:#fff;border:1px solid #dfdcda;border-right:0;font-family:\"Open Sans\",sans-serif;font-size:18px;font-weight:normal;flex:1;margin:0;padding:0 .75em}div.main-search-field button{-webkit-appearance:button;-moz-appearance:button;appearance:button;-webkit-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0;margin:0;background:#fff;border:1px solid #dfdcda;border-left:0;display:inline-block;padding:0 .75em;height:100%}div.main-search-field button svg{height:22px;width:21px}div.search-results-container{-webkit-box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12);-moz-box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12);box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12);-webkit-border-radius:0 0 3px 3px;border-radius:0 0 3px 3px;position:absolute;background:#fbfcfd;display:none;top:37px;z-index:1}div.search-results-container.open{display:block;width:100%;overflow-y:auto}div.search-results-container a{color:#3767c7;text-decoration:none}div.search-results-container a:hover{color:#0056b3;text-decoration:underline}div.search-results-container div.search-results-for-type:nth-child(odd){background-color:#fbfcfd}div.search-results-container div.search-results-for-type:nth-child(even){background-color:#f5f6f7}div.search-results-container div.search-results-for-type a.search-results-for-type-title{font-family:\"Open Sans\",sans-serif;padding:6px 16px;font-size:18px;display:inline-block;font-weight:normal}div.search-results-container div.search-results-for-type a.search-results-for-type-title span.search-results-for-type-number-badge{-webkit-border-radius:6px;border-radius:6px;padding:1px 4px;color:#fff;background-color:#fe5000;display:inline-block;font-size:.7em;vertical-align:middle;text-align:center;min-width:24px;font-weight:bold}div.search-results-container div.search-results-for-type ul.search-results-for-type-list{list-style:none;padding:0 16px 12px 32px;margin:0}div.search-results-container div.search-results-for-type ul.search-results-for-type-list li a{font-family:\"Open Sans\",sans-serif;padding:2px 0;display:block;font-size:14px;font-weight:normal}.hidden{height:0;width:0;position:absolute;color:rgba(0,0,0,0);overflow:hidden}`, \"\",{\"version\":3,\"sources\":[\"webpack://./stories/main-navigation/main-search-field/main-search-field.scss\",\"webpack://./style/variables/_typography.scss\",\"webpack://./style/mixins/_breakpoints.scss\",\"webpack://./style/mixins/_appearance.scss\",\"webpack://./style/mixins/_border-radius.scss\",\"webpack://./style/mixins/_box-shadow.scss\",\"webpack://./style/variables/_colors.scss\"],\"names\":[],\"mappings\":\"AAOA,EACE,qBAAA,CAGF,sBACE,kCCZa,CDab,YAAA,CACA,WAAA,CACA,gBAAA,CACA,iBAAA,CACA,UAAA,CACA,eAAA,CEFM,0BFLR,sBAUI,YAAA,CAAA,CAGF,uCACE,OAAA,CACA,QAAA,CACA,eAAA,CACA,SAAA,CAGF,4BG9BE,uBH+B+B,CG9B/B,oBH8B+B,CG7B/B,eH6B+B,CI/BjC,iCJgCuC,CI/BvC,yBJ+BuC,CACrC,WAAA,CACA,UAAA,CACA,mBAAA,CACA,eAAA,CACA,wBAAA,CACA,cAAA,CACA,kCCxCW,CDyCX,cAAA,CACA,kBAAA,CACA,MAAA,CACA,QAAA,CACA,eAAA,CAGF,6BG/CE,yBHgD+B,CG/C/B,sBH+C+B,CG9C/B,iBH8C+B,CIhDjC,iCJiDuC,CIhDvC,yBJgDuC,CACrC,QAAA,CACA,eAAA,CACA,wBAAA,CACA,aAAA,CACA,oBAAA,CACA,eAAA,CACA,WAAA,CAEA,iCACE,WAAA,CACA,UAAA,CAKN,6BKjEI,8GLkEF,CKjEE,2GLiEF,CKhEE,sGLgEF,CIlEA,iCJuEqC,CItErC,yBJsEqC,CACrC,iBAAA,CACA,kBAAA,CACA,YAAA,CACA,QAAA,CACA,SAAA,CAEA,kCACE,aAAA,CACA,UAAA,CACA,eAAA,CAGF,+BACE,aMvEW,CNwEX,oBAAA,CACA,qCACE,aMzEc,CN0Ed,yBAAA,CAKF,wEACE,wBAAA,CAEF,yEACE,wBAAA,CAEF,yFACE,kCCtGS,CDuGT,gBAAA,CACA,cAAA,CACA,oBAAA,CACA,kBAAA,CACA,mII1GJ,yBJ2G2C,CI1G3C,iBJ0G2C,CACrC,eAAA,CACA,UAAA,CACA,wBMpGQ,CNqGR,oBAAA,CACA,cAAA,CACA,qBAAA,CACA,iBAAA,CACA,cAAA,CACA,gBAAA,CAGJ,yFACE,eAAA,CACA,wBAAA,CACA,QAAA,CAEE,8FACE,kCC9HK,CD+HL,aAAA,CACA,aAAA,CACA,cAAA,CACA,kBAAA,CAOV,QACE,QAAA,CACA,OAAA,CACA,iBAAA,CACA,mBAAA,CACA,eAAA\",\"sourcesContent\":[\"@use \\\"../../../style/mixins/appearance\\\";\\n@use \\\"../../../style/mixins/border-radius\\\";\\n@use \\\"../../../style/mixins/box-shadow\\\";\\n@use \\\"../../../style/mixins/breakpoints\\\";\\n@use \\\"../../../style/variables/colors\\\";\\n@use \\\"../../../style/variables/typography\\\";\\n\\n* {\\n box-sizing: border-box;\\n}\\n\\ndiv.main-search-field {\\n font-family: typography.$default-font;\\n display: flex;\\n height: 37px;\\n margin-top: 0.25em;\\n position: relative;\\n width: 100%;\\n max-width: 440px;\\n\\n @include breakpoints.breakpoint(phablet) {\\n margin-top: 0;\\n }\\n\\n .mainSearchLabel {\\n width: 0;\\n height: 0;\\n overflow: hidden;\\n opacity: 0;\\n }\\n\\n input {\\n @include appearance.appearance(none);\\n @include border-radius.border-radius(4px 0 0 4px);\\n height: 37px;\\n width: 100%;\\n outline-offset: -2px;\\n background: #fff;\\n border: 1px solid #dfdcda;\\n border-right: 0;\\n font-family: typography.$default-font;\\n font-size: 18px;\\n font-weight: normal;\\n flex: 1;\\n margin: 0;\\n padding: 0 0.75em;\\n }\\n\\n button {\\n @include appearance.appearance(button);\\n @include border-radius.border-radius(0 4px 4px 0);\\n margin: 0;\\n background: #fff;\\n border: 1px solid #dfdcda;\\n border-left: 0;\\n display: inline-block;\\n padding: 0 0.75em;\\n height: 100%;\\n\\n svg {\\n height: 22px;\\n width: 21px;\\n }\\n }\\n}\\n\\ndiv.search-results-container {\\n @include box-shadow.box-shadow(\\n 0 5px 5px -3px rgba(0, 0, 0, 0.2),\\n 0 8px 10px 1px rgba(0, 0, 0, 0.14),\\n 0 3px 14px 2px rgba(0, 0, 0, 0.12)\\n );\\n @include border-radius.border-radius(0 0 3px 3px);\\n position: absolute;\\n background: #fbfcfd;\\n display: none;\\n top: 37px;\\n z-index: 1;\\n\\n &.open {\\n display: block;\\n width: 100%;\\n overflow-y: auto;\\n }\\n\\n a {\\n color: colors.$primary-text;\\n text-decoration: none;\\n &:hover {\\n color: colors.$primary-text-hover;\\n text-decoration: underline;\\n }\\n }\\n\\n div.search-results-for-type {\\n &:nth-child(odd) {\\n background-color: #fbfcfd;\\n }\\n &:nth-child(even) {\\n background-color: #f5f6f7;\\n }\\n a.search-results-for-type-title {\\n font-family: typography.$default-font;\\n padding: 6px 16px;\\n font-size: 18px;\\n display: inline-block;\\n font-weight: normal;\\n span.search-results-for-type-number-badge {\\n @include border-radius.border-radius(6px);\\n padding: 1px 4px;\\n color: #fff;\\n background-color: colors.$primary-brand;\\n display: inline-block;\\n font-size: 0.7em;\\n vertical-align: middle;\\n text-align: center;\\n min-width: 24px;\\n font-weight: bold;\\n }\\n }\\n ul.search-results-for-type-list {\\n list-style: none;\\n padding: 0 16px 12px 32px;\\n margin: 0;\\n li {\\n a {\\n font-family: typography.$default-font;\\n padding: 2px 0;\\n display: block;\\n font-size: 14px;\\n font-weight: normal;\\n }\\n }\\n }\\n }\\n}\\n\\n.hidden {\\n height: 0;\\n width: 0;\\n position: absolute;\\n color: transparent;\\n overflow: hidden;\\n}\\n\",\"$default-font: \\\"Open Sans\\\", sans-serif;\\n$header-font: \\\"Raleway\\\", sans-serif;\\n$default-font-size: 15px;\\n\",\"@use \\\"../variables/breakpoints\\\";\\n\\n@mixin breakpoint($point) {\\n @if $point == desktop {\\n @media (min-width: breakpoints.$screen-desktop) {\\n @content;\\n }\\n } @else if $point == laptop {\\n @media (min-width: breakpoints.$screen-laptop) {\\n @content;\\n }\\n } @else if $point == tablet {\\n @media (min-width: breakpoints.$screen-tablet) {\\n @content;\\n }\\n } @else if $point == phablet {\\n @media (min-width: breakpoints.$screen-phablet) {\\n @content;\\n }\\n }\\n}\\n\",\"@mixin appearance ($value) {\\n -webkit-appearance: $value;\\n -moz-appearance: $value;\\n appearance: $value;\\n}\\n\",\"@mixin border-radius($radius) {\\n -webkit-border-radius: $radius;\\n border-radius: $radius;\\n}\\n\\n// Single side border-radius\\n\\n@mixin border-top-radius($radius) {\\n -webkit-border-top-right-radius: $radius;\\n border-top-right-radius: $radius;\\n -webkit-border-top-left-radius: $radius;\\n border-top-left-radius: $radius;\\n}\\n@mixin border-right-radius($radius) {\\n -webkit-border-bottom-right-radius: $radius;\\n border-bottom-right-radius: $radius;\\n -webkit-border-top-right-radius: $radius;\\n border-top-right-radius: $radius;\\n}\\n@mixin border-bottom-radius($radius) {\\n -webkit-border-bottom-right-radius: $radius;\\n border-bottom-right-radius: $radius;\\n -webkit-border-bottom-left-radius: $radius;\\n border-bottom-left-radius: $radius;\\n}\\n@mixin border-left-radius($radius) {\\n -webkit-border-bottom-left-radius: $radius;\\n border-bottom-left-radius: $radius;\\n -webkit-border-top-left-radius: $radius;\\n border-top-left-radius: $radius;\\n}\",\"@mixin box-shadow($shadows...) {\\n -webkit-box-shadow: $shadows;\\n -moz-box-shadow: $shadows;\\n box-shadow: $shadows;\\n}\\n\",\"$body-background: #ffffff;\\n$navigation-bar-background: #f7f7f7;\\n$hover-background: rgba(0,0,0,.05);\\n$default-border: #d8d8d8;\\n\\n$default-background: #eee;\\n$default-background-hover: #ddd;\\n$default-text:#2F3940;\\n\\n$light-gray: #f6f5f4;\\n\\n$primary-brand: #FE5000;\\n\\n$primary-background: #3767C7;\\n$primary-background-hover: #FE5000;\\n$primary-text: #3767C7;\\n$primary-text-hover:#0056b3;\\n\\n\\n$success-background: #06A755;\\n$success-background-hover: #009745;\\n$success-text: #06A755;\\n\\n\\n$warning-background: #C38621;\\n$warning-background-hover: #B37611;\\n$warning-text: #C38621;\\n\\n$danger-background: #E00d0D;\\n$danger-background-hover: #D00000;\\n$danger-text: #E00d0D;\\n\\n$disabled-background: #f4f4f4;\\n$disabled-border: #dedede;\\n$disabled-text: #707070;\\n\\n\\n$light-green: #8fff33;\\n$light-yellow: #ffEb3b;\\n$light-red: #ff4a2e;\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `*{box-sizing:border-box}div.map-items-container{margin-right:8px}div.map-items-container .icon-toggle-button{margin-top:.4em;-moz-transition:all .1s ease-in-out;-o-transition:all .1s ease-in-out;-webkit-transition:all .1s ease-in-out;transition:all .1s ease-in-out;border:none;background:rgba(0,0,0,0);color:#403f3f;cursor:pointer;padding:0;position:relative}@media(min-width: 37.5em){div.map-items-container .icon-toggle-button{padding:0 4px}}div.map-items-container .icon-toggle-button.open{color:#414042}div.map-items-container .icon-toggle-button .counter{display:flex;justify-content:center;align-items:center;-webkit-border-radius:35%;border-radius:35%;background-color:#fe5000;color:#fff;margin-top:-0.35em;margin-right:.2em;position:absolute;text-align:center;left:1.4em;line-height:1.4;height:1.4em;font-size:.8em}@media(min-width: 37.5em){div.map-items-container .icon-toggle-button .counter{height:1.5em;min-width:2em;line-height:1.5;font-size:.8em}}div.map-items-container .icon-toggle-button .counter.hidden{display:none}div.map-items-container .icon-toggle-button .map-icon svg{width:21px;height:22px}@media(min-width: 37.5em){div.map-items-container .icon-toggle-button .map-icon svg{width:26px;height:27px}}div.map-items-container .icon-toggle-button .map-icon svg:hover{color:#1073bc;cursor:pointer}div.map-items-container .map-item-list-wrapper{position:absolute}div.map-items-container .map-item-list-wrapper .map-item-list-container{-webkit-border-radius:0 0 3px 3px;border-radius:0 0 3px 3px;-moz-transition:all .1s ease-in-out;-o-transition:all .1s ease-in-out;-webkit-transition:all .1s ease-in-out;transition:all .1s ease-in-out;box-sizing:border-box;overflow:hidden;max-height:0;position:relative;top:10px;background-color:#fbfcfd;right:205px;width:260px}@media(min-width: 37.5em){div.map-items-container .map-item-list-wrapper .map-item-list-container{right:245px;width:300px}}@media print{div.map-items-container .map-item-list-wrapper .map-item-list-container{display:none}}div.map-items-container .map-item-list-wrapper .map-item-list-container.open{-webkit-box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12);-moz-box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12);box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12);height:auto;max-height:300px;overflow:auto}div.map-items-container .map-item-list-wrapper .map-item-list-container .page-link-element{display:block;text-align:center;padding:8px 16px;color:#3767c7;text-decoration:none;cursor:pointer;border:none;font-size:16px;font-weight:400;width:100%;font-family:\"Open Sans\",sans-serif}div.map-items-container .map-item-list-wrapper .map-item-list-container .page-link-element:hover{text-decoration:underline;color:#0056b3}div.map-items-container .map-item-list-wrapper .map-item-list-container ul{list-style:none;padding:0;margin:0}div.map-items-container .map-item-list-wrapper .map-item-list-container ul li{-moz-transition:all .15s ease-in-out;-o-transition:all .15s ease-in-out;-webkit-transition:all .15s ease-in-out;transition:all .15s ease-in-out;display:flex;align-items:center;justify-content:space-between;padding:8px 16px;font-size:14px;font-weight:normal}div.map-items-container .map-item-list-wrapper .map-item-list-container ul li:hover{background-color:rgba(0,0,0,.05)}div.map-items-container .map-item-list-wrapper .map-item-list-container ul li .list-icon{margin-left:8px;cursor:pointer;background:none;border:none}div.map-items-container .map-item-list-wrapper .map-item-list-container ul li .list-icon svg{color:#e00d0d;width:20px}`, \"\",{\"version\":3,\"sources\":[\"webpack://./stories/main-navigation/map-items/map-items.scss\",\"webpack://./style/mixins/_transition.scss\",\"webpack://./style/mixins/_breakpoints.scss\",\"webpack://./style/mixins/_border-radius.scss\",\"webpack://./style/variables/_colors.scss\",\"webpack://./style/mixins/_box-shadow.scss\",\"webpack://./style/variables/_typography.scss\"],\"names\":[],\"mappings\":\"AAMA,EACI,qBAAA,CAGJ,wBACI,gBAAA,CACA,4CACI,eAAA,CCZJ,mCDaI,CCZJ,iCDYI,CCXJ,sCDWI,CCVJ,8BDUI,CACA,WAAA,CACA,wBAAA,CACA,aAAA,CACA,cAAA,CACA,SAAA,CACA,iBAAA,CEJA,0BFJJ,4CAUQ,aAAA,CAAA,CAEJ,iDACI,aAAA,CAEJ,qDACI,YAAA,CACA,sBAAA,CACA,kBAAA,CG7BV,yBH8B+C,CG7B/C,iBH6B+C,CACrC,wBIrBI,CJsBJ,UAAA,CACA,kBAAA,CACA,iBAAA,CACA,iBAAA,CACA,iBAAA,CACA,UAAA,CACA,eAAA,CACA,YAAA,CACA,cAAA,CEzBJ,0BFWA,qDAgBQ,YAAA,CACA,aAAA,CACA,eAAA,CACA,cAAA,CAAA,CAEJ,4DACI,YAAA,CAIJ,0DACI,UAAA,CACA,WAAA,CEvCR,0BFqCI,0DAKQ,UAAA,CACA,WAAA,CAAA,CAEJ,gEACI,aAAA,CACA,cAAA,CAKhB,+CACI,iBAAA,CACA,wEGrEN,iCHsE+C,CGrE/C,yBHqE+C,CCtE7C,mCDuEQ,CCtER,iCDsEQ,CCrER,sCDqEQ,CCpER,8BDoEQ,CACA,qBAAA,CACA,eAAA,CACA,YAAA,CACA,iBAAA,CACA,QAAA,CACA,wBAAA,CACA,WAAA,CACA,WAAA,CEhEJ,0BFsDA,wEAYQ,WAAA,CACA,WAAA,CAAA,CAEJ,aAfJ,wEAgBQ,YAAA,CAAA,CAEJ,6EKvFR,8GLwFY,CKvFZ,2GLuFY,CKtFZ,sGLsFY,CAKA,WAAA,CACA,gBAAA,CACA,aAAA,CAEJ,2FACI,aAAA,CACA,iBAAA,CACA,gBAAA,CACA,aIvFD,CJwFC,oBAAA,CACA,cAAA,CACA,WAAA,CACA,cAAA,CACA,eAAA,CACA,UAAA,CACA,kCM7GD,CN8GC,iGACI,yBAAA,CACA,aIhGA,CJmGR,2EACI,eAAA,CACA,SAAA,CACA,QAAA,CACA,8ECtHZ,oCDuHgB,CCtHhB,kCDsHgB,CCrHhB,uCDqHgB,CCpHhB,+BDoHgB,CACA,YAAA,CACA,kBAAA,CACA,6BAAA,CACA,gBAAA,CACA,cAAA,CACA,kBAAA,CACA,oFACI,gCI9HL,CJgIC,yFACI,eAAA,CACA,cAAA,CACA,eAAA,CACA,WAAA,CACA,6FACI,aI1Gd,CJ2Gc,UAAA\",\"sourcesContent\":[\"@use \\\"../../../style/mixins/border-radius\\\";\\n@use \\\"../../../style/mixins/box-shadow\\\";\\n@use \\\"../../../style/mixins/breakpoints\\\";\\n@use \\\"../../../style/mixins/transition\\\";\\n@use \\\"../../../style/variables/colors\\\";\\n@use \\\"../../../style/variables/typography\\\";\\n* {\\n box-sizing: border-box;\\n}\\n\\ndiv.map-items-container {\\n margin-right: 8px;\\n .icon-toggle-button {\\n margin-top: 0.4em;\\n @include transition.transition(all 0.1s ease-in-out);\\n border: none;\\n background: transparent;\\n color: #403f3f;\\n cursor: pointer;\\n padding: 0;\\n position: relative;\\n @include breakpoints.breakpoint(phablet) {\\n padding: 0 4px;\\n }\\n &.open {\\n color: #414042;\\n }\\n .counter {\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n @include border-radius.border-radius(35%);\\n background-color: colors.$primary-brand;\\n color: #fff;\\n margin-top: -0.35em;\\n margin-right: 0.2em;\\n position: absolute;\\n text-align: center;\\n left: 1.4em;\\n line-height: 1.4;\\n height: 1.4em;\\n font-size: 0.8em;\\n @include breakpoints.breakpoint(phablet) {\\n height: 1.5em;\\n min-width: 2em;\\n line-height: 1.5;\\n font-size: 0.8em;\\n }\\n &.hidden {\\n display: none;\\n }\\n }\\n .map-icon {\\n svg {\\n width: 21px;\\n height: 22px;\\n\\n @include breakpoints.breakpoint(phablet) {\\n width: 26px;\\n height: 27px;\\n }\\n &:hover {\\n color: #1073bc;\\n cursor: pointer;\\n }\\n }\\n }\\n }\\n .map-item-list-wrapper {\\n position: absolute;\\n .map-item-list-container {\\n @include border-radius.border-radius(0 0 3px 3px);\\n @include transition.transition(all 0.1s ease-in-out);\\n box-sizing: border-box;\\n overflow: hidden;\\n max-height: 0;\\n position: relative;\\n top: 10px;\\n background-color: #fbfcfd;\\n right: 205px;\\n width: 260px;\\n @include breakpoints.breakpoint(phablet) {\\n right: 245px;\\n width: 300px;\\n }\\n @media print {\\n display: none;\\n }\\n &.open {\\n @include box-shadow.box-shadow(\\n 0 5px 5px -3px rgba(0, 0, 0, 0.2),\\n 0 8px 10px 1px rgba(0, 0, 0, 0.14),\\n 0 3px 14px 2px rgba(0, 0, 0, 0.12)\\n );\\n height: auto;\\n max-height: 300px;\\n overflow: auto;\\n }\\n .page-link-element {\\n display: block;\\n text-align: center;\\n padding: 8px 16px;\\n color: colors.$primary-text;\\n text-decoration: none;\\n cursor: pointer;\\n border: none;\\n font-size: 16px;\\n font-weight: 400;\\n width: 100%;\\n font-family: typography.$default-font;\\n &:hover {\\n text-decoration: underline;\\n color: colors.$primary-text-hover;\\n }\\n }\\n ul {\\n list-style: none;\\n padding: 0;\\n margin: 0;\\n li {\\n @include transition.transition(all 0.15s ease-in-out);\\n display: flex;\\n align-items: center;\\n justify-content: space-between;\\n padding: 8px 16px;\\n font-size: 14px;\\n font-weight: normal;\\n &:hover {\\n background-color: colors.$hover-background;\\n }\\n .list-icon {\\n margin-left: 8px;\\n cursor: pointer;\\n background: none;\\n border: none;\\n svg {\\n color: colors.$danger-text;\\n width: 20px;\\n }\\n }\\n }\\n }\\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\",\"@use \\\"../variables/breakpoints\\\";\\n\\n@mixin breakpoint($point) {\\n @if $point == desktop {\\n @media (min-width: breakpoints.$screen-desktop) {\\n @content;\\n }\\n } @else if $point == laptop {\\n @media (min-width: breakpoints.$screen-laptop) {\\n @content;\\n }\\n } @else if $point == tablet {\\n @media (min-width: breakpoints.$screen-tablet) {\\n @content;\\n }\\n } @else if $point == phablet {\\n @media (min-width: breakpoints.$screen-phablet) {\\n @content;\\n }\\n }\\n}\\n\",\"@mixin border-radius($radius) {\\n -webkit-border-radius: $radius;\\n border-radius: $radius;\\n}\\n\\n// Single side border-radius\\n\\n@mixin border-top-radius($radius) {\\n -webkit-border-top-right-radius: $radius;\\n border-top-right-radius: $radius;\\n -webkit-border-top-left-radius: $radius;\\n border-top-left-radius: $radius;\\n}\\n@mixin border-right-radius($radius) {\\n -webkit-border-bottom-right-radius: $radius;\\n border-bottom-right-radius: $radius;\\n -webkit-border-top-right-radius: $radius;\\n border-top-right-radius: $radius;\\n}\\n@mixin border-bottom-radius($radius) {\\n -webkit-border-bottom-right-radius: $radius;\\n border-bottom-right-radius: $radius;\\n -webkit-border-bottom-left-radius: $radius;\\n border-bottom-left-radius: $radius;\\n}\\n@mixin border-left-radius($radius) {\\n -webkit-border-bottom-left-radius: $radius;\\n border-bottom-left-radius: $radius;\\n -webkit-border-top-left-radius: $radius;\\n border-top-left-radius: $radius;\\n}\",\"$body-background: #ffffff;\\n$navigation-bar-background: #f7f7f7;\\n$hover-background: rgba(0,0,0,.05);\\n$default-border: #d8d8d8;\\n\\n$default-background: #eee;\\n$default-background-hover: #ddd;\\n$default-text:#2F3940;\\n\\n$light-gray: #f6f5f4;\\n\\n$primary-brand: #FE5000;\\n\\n$primary-background: #3767C7;\\n$primary-background-hover: #FE5000;\\n$primary-text: #3767C7;\\n$primary-text-hover:#0056b3;\\n\\n\\n$success-background: #06A755;\\n$success-background-hover: #009745;\\n$success-text: #06A755;\\n\\n\\n$warning-background: #C38621;\\n$warning-background-hover: #B37611;\\n$warning-text: #C38621;\\n\\n$danger-background: #E00d0D;\\n$danger-background-hover: #D00000;\\n$danger-text: #E00d0D;\\n\\n$disabled-background: #f4f4f4;\\n$disabled-border: #dedede;\\n$disabled-text: #707070;\\n\\n\\n$light-green: #8fff33;\\n$light-yellow: #ffEb3b;\\n$light-red: #ff4a2e;\\n\",\"@mixin box-shadow($shadows...) {\\n -webkit-box-shadow: $shadows;\\n -moz-box-shadow: $shadows;\\n box-shadow: $shadows;\\n}\\n\",\"$default-font: \\\"Open Sans\\\", sans-serif;\\n$header-font: \\\"Raleway\\\", sans-serif;\\n$default-font-size: 15px;\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `div.search-type-selector{width:235px;display:none}@media(min-width: 37.5em){div.search-type-selector{display:block}}div.search-type-selector label{font-size:14px;display:block;cursor:pointer;height:18px;font-weight:normal}div.search-type-selector label .search-type-counter{font-size:.9em}div.search-type-selector label .search-type-counter::before{content:\"(\"}div.search-type-selector label .search-type-counter::after{content:\")\"}div.search-type-selector input[type=radio]{-webkit-border-radius:50%;border-radius:50%;-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0;font:inherit;color:currentColor;width:16px;height:16px;border:2px solid #7d746d;transform:translateY(-0.075em);display:inline-grid;place-content:center}div.search-type-selector input[type=radio]::before{-webkit-border-radius:50%;border-radius:50%;content:\"\";width:8px;height:8px;transform:scale(0);transition:120ms transform ease-in-out}div.search-type-selector input[type=radio]:checked{border-color:#3767c7}div.search-type-selector input[type=radio]:checked::before{transform:scale(1);background-color:#3767c7}div.search-type-selector input[type=radio]:focus-visible{outline:max(2px,.1em) solid #3767c7;outline-offset:max(2px,.1em)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./stories/main-navigation/search-type-selector/search-type-selector.scss\",\"webpack://./style/mixins/_breakpoints.scss\",\"webpack://./style/mixins/_border-radius.scss\",\"webpack://./style/mixins/_appearance.scss\",\"webpack://./style/variables/_colors.scss\"],\"names\":[],\"mappings\":\"AAKA,yBACI,WAAA,CACA,YAAA,CCSI,0BDXR,yBAIQ,aAAA,CAAA,CAEJ,+BACI,cAAA,CACA,aAAA,CACA,cAAA,CACA,WAAA,CACA,kBAAA,CACA,oDACI,cAAA,CACA,4DACI,WAAA,CAEJ,2DACI,WAAA,CAIZ,2CE1BF,yBF2B2C,CE1B3C,iBF0B2C,CG3BzC,uBH4BmC,CG3BnC,oBH2BmC,CG1BnC,eH0BmC,CAC/B,QAAA,CACA,YAAA,CACA,kBAAA,CACA,UAAA,CACA,WAAA,CACA,wBAAA,CACA,8BAAA,CACA,mBAAA,CACA,oBAAA,CAGJ,mDExCF,yBFyC2C,CExC3C,iBFwC2C,CACrC,UAAA,CACA,SAAA,CACA,UAAA,CACA,kBAAA,CACA,sCAAA,CAGJ,mDACI,oBIpCO,CJqCP,2DACI,kBAAA,CACA,wBIvCG,CJ2CX,yDACI,mCAAA,CACA,4BAAA\",\"sourcesContent\":[\"@use \\\"../../../style/mixins/appearance\\\";\\n@use \\\"../../../style/mixins/border-radius\\\";\\n@use \\\"../../../style/mixins/breakpoints\\\";\\n@use \\\"../../../style/variables/colors\\\";\\n\\ndiv.search-type-selector {\\n width: 235px;\\n display: none;\\n @include breakpoints.breakpoint(phablet) {\\n display: block;\\n }\\n label {\\n font-size: 14px;\\n display: block;\\n cursor: pointer;\\n height: 18px;\\n font-weight: normal;\\n .search-type-counter {\\n font-size: 0.9em;\\n &::before {\\n content: \\\"(\\\";\\n }\\n &::after {\\n content: \\\")\\\";\\n }\\n }\\n }\\n input[type=\\\"radio\\\"] {\\n @include border-radius.border-radius(50%);\\n @include appearance.appearance(none);\\n margin: 0;\\n font: inherit;\\n color: currentColor;\\n width: 16px;\\n height: 16px;\\n border: 2px solid rgb(125, 116, 109);\\n transform: translateY(-0.075em);\\n display: inline-grid;\\n place-content: center;\\n }\\n\\n input[type=\\\"radio\\\"]::before {\\n @include border-radius.border-radius(50%);\\n content: \\\"\\\";\\n width: 8px;\\n height: 8px;\\n transform: scale(0);\\n transition: 120ms transform ease-in-out;\\n }\\n\\n input[type=\\\"radio\\\"]:checked {\\n border-color: colors.$primary-text;\\n &::before {\\n transform: scale(1);\\n background-color: colors.$primary-text;\\n }\\n }\\n\\n input[type=\\\"radio\\\"]:focus-visible {\\n outline: max(2px, 0.1em) solid colors.$primary-text;\\n outline-offset: max(2px, 0.1em);\\n }\\n}\\n\",\"@use \\\"../variables/breakpoints\\\";\\n\\n@mixin breakpoint($point) {\\n @if $point == desktop {\\n @media (min-width: breakpoints.$screen-desktop) {\\n @content;\\n }\\n } @else if $point == laptop {\\n @media (min-width: breakpoints.$screen-laptop) {\\n @content;\\n }\\n } @else if $point == tablet {\\n @media (min-width: breakpoints.$screen-tablet) {\\n @content;\\n }\\n } @else if $point == phablet {\\n @media (min-width: breakpoints.$screen-phablet) {\\n @content;\\n }\\n }\\n}\\n\",\"@mixin border-radius($radius) {\\n -webkit-border-radius: $radius;\\n border-radius: $radius;\\n}\\n\\n// Single side border-radius\\n\\n@mixin border-top-radius($radius) {\\n -webkit-border-top-right-radius: $radius;\\n border-top-right-radius: $radius;\\n -webkit-border-top-left-radius: $radius;\\n border-top-left-radius: $radius;\\n}\\n@mixin border-right-radius($radius) {\\n -webkit-border-bottom-right-radius: $radius;\\n border-bottom-right-radius: $radius;\\n -webkit-border-top-right-radius: $radius;\\n border-top-right-radius: $radius;\\n}\\n@mixin border-bottom-radius($radius) {\\n -webkit-border-bottom-right-radius: $radius;\\n border-bottom-right-radius: $radius;\\n -webkit-border-bottom-left-radius: $radius;\\n border-bottom-left-radius: $radius;\\n}\\n@mixin border-left-radius($radius) {\\n -webkit-border-bottom-left-radius: $radius;\\n border-bottom-left-radius: $radius;\\n -webkit-border-top-left-radius: $radius;\\n border-top-left-radius: $radius;\\n}\",\"@mixin appearance ($value) {\\n -webkit-appearance: $value;\\n -moz-appearance: $value;\\n appearance: $value;\\n}\\n\",\"$body-background: #ffffff;\\n$navigation-bar-background: #f7f7f7;\\n$hover-background: rgba(0,0,0,.05);\\n$default-border: #d8d8d8;\\n\\n$default-background: #eee;\\n$default-background-hover: #ddd;\\n$default-text:#2F3940;\\n\\n$light-gray: #f6f5f4;\\n\\n$primary-brand: #FE5000;\\n\\n$primary-background: #3767C7;\\n$primary-background-hover: #FE5000;\\n$primary-text: #3767C7;\\n$primary-text-hover:#0056b3;\\n\\n\\n$success-background: #06A755;\\n$success-background-hover: #009745;\\n$success-text: #06A755;\\n\\n\\n$warning-background: #C38621;\\n$warning-background-hover: #B37611;\\n$warning-text: #C38621;\\n\\n$danger-background: #E00d0D;\\n$danger-background-hover: #D00000;\\n$danger-text: #E00d0D;\\n\\n$disabled-background: #f4f4f4;\\n$disabled-border: #dedede;\\n$disabled-text: #707070;\\n\\n\\n$light-green: #8fff33;\\n$light-yellow: #ffEb3b;\\n$light-red: #ff4a2e;\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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\":\"AAIA,sBACI,YAAA,CACA,kBAAA,CACA,uBAAA,CACA,UAAA,CACA,aAAA,CACA,OAAA,CACA,kCCXW,CDYX,cAAA,CACA,6BAAA,CACA,kBAAA,CACA,mBAAA,CACA,wBAAA,CAMA,WAAA,CALA,4BACI,aAAA,CACA,cAAA,CAIJ,sCACI,YAAA,CACA,kBAAA,CACA,kBAAA,CACA,eAAA,CACA,qBAAA,CACA,eAAA,CErBA,yBFeJ,sCAQQ,oBAAA,CAAA,CAIJ,2CACI,WAAA,CACA,UAAA,CACA,qBAAA,CAIZ,cACI,cAAA,CACA,kCC5CW,CD6CX,iBAAA,CG5CA,mCH6CA,CG5CA,iCH4CA,CG3CA,sCH2CA,CG1CA,8BH0CA,CAEA,kBACI,YAAA,CACA,eAAA,CGjDJ,mCHkDI,CGjDJ,iCHiDI,CGhDJ,sCHgDI,CG/CJ,8BH+CI,CACA,iBAAA,CACA,YAAA,CACA,qBAAA,CACA,qBAAA,CACA,kDAAA,CACA,WAAA,CACA,WAAA,CACA,QAAA,CACA,WAAA,CACA,uCACI,aAAA,CACA,kDACI,kBAAA,CAGR,qBACI,oBAAA,CACA,wBACI,aAAA,CACA,2FAGI,aAAA,CAKZ,mCACI,wBAAA,CACA,YAAA,CACA,YAAA,CACA,qBAAA,CACA,OAAA,CAEJ,oCACI,qBAAA,CACA,eAAA,CACA,YAAA,CACA,qBAAA,CACA,OAAA,CACA,cAAA,CAEJ,+BACI,YAAA,CAEJ,yEAGI,UAAA,CACA,YAAA,CACA,yBAAA,CAEJ,0BACI,cAAA,CAGA,sCACI,gBAAA,CACA,UAAA,CACA,WAAA,CACA,UAAA,CAKR,uBACI,iBAAA,CAIZ,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,CACA,kBAAA,CACA,wBAAA,CACA,6FACI,WAAA\",\"sourcesContent\":[\"@use \\\"../../../style/mixins/breakpoints\\\";\\n@use \\\"../../../style/mixins/transition\\\";\\n@use \\\"../../../style/variables/typography\\\";\\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: typography.$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 breakpoints.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.menu-wrapper {\\n font-size: 14px;\\n font-family: typography.$default-font;\\n position: relative;\\n @include transition.transition(all 0.3s ease-in-out);\\n\\n > div {\\n max-height: 0;\\n overflow: hidden;\\n @include transition.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,\\n a:link,\\n a:visited {\\n color: #1a589f;\\n }\\n }\\n }\\n\\n > *:nth-child(odd) {\\n background-color: #f9f9f9;\\n padding: 32px;\\n display: flex;\\n flex-direction: column;\\n gap: 5px;\\n }\\n > *:nth-child(even) {\\n background-color: white;\\n margin-top: 10px;\\n display: flex;\\n flex-direction: column;\\n gap: 5px;\\n padding: 0 32px;\\n }\\n > *:last-child {\\n padding: 32px;\\n }\\n a,\\n a:link,\\n 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.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 font-weight: normal;\\n background: transparent;\\n &:not(:first-child) {\\n border: none;\\n }\\n }\\n}\\n\",\"$default-font: \\\"Open Sans\\\", sans-serif;\\n$header-font: \\\"Raleway\\\", sans-serif;\\n$default-font-size: 15px;\\n\",\"@use \\\"../variables/breakpoints\\\";\\n\\n@mixin breakpoint($point) {\\n @if $point == desktop {\\n @media (min-width: breakpoints.$screen-desktop) {\\n @content;\\n }\\n } @else if $point == laptop {\\n @media (min-width: breakpoints.$screen-laptop) {\\n @content;\\n }\\n } @else if $point == tablet {\\n @media (min-width: breakpoints.$screen-tablet) {\\n @content;\\n }\\n } @else if $point == phablet {\\n @media (min-width: breakpoints.$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","export default \"<template>\\n <div class=\\\"download-items-container\\\">\\n <button id=\\\"download-toggle-button\\\" class=\\\"icon-toggle-button\\\">\\n <span id=\\\"download-toggle-button-counter\\\" class=\\\"counter\\\"></span>\\n <span id=\\\"download-toggle-button-icon\\\" class=\\\"download-icon\\\"></span>\\n </button>\\n <div class=\\\"download-item-list-wrapper\\\">\\n <div id=\\\"download-item-list-container\\\" class=\\\"download-item-list-container\\\"></div>\\n </div>\\n </div>\\n</template>\";","export default \"<template>\\n <button id=\\\"menu-toggle-button\\\" class=\\\"menu-toggle-button\\\">\\n \\n <span id=\\\"menu-icon\\\"></span>\\n <span id=\\\"close-icon\\\"></span>\\n <span id=\\\"menu-title\\\" class=\\\"menu-title\\\">\\n Meny\\n </span>\\n </button>\\n <div id=\\\"menu-wrapper\\\" class=\\\"menu-wrapper\\\">\\n <div id=\\\"menu-container\\\" class=\\\"menu-container open\\\">\\n <div id=\\\"menu-item-list-container\\\" class=\\\"menu-item-list-container\\\"></div>\\n <div id=\\\"menu-actions-row\\\" class=\\\"menu-actions-row\\\"></div>\\n </div>\\n </div>\\n</template>\";","export default \"<template>\\n <div id=\\\"main-navigation\\\" class=\\\"main-navigation\\\">\\n <a id=\\\"main-content-link\\\" class=\\\"main-content-link\\\">\\n <span id=\\\"main-content-link-text\\\">Hopp til hovedinnhold</span>\\n </a>\\n <div class=\\\"main-navigation-container\\\">\\n <div class=\\\"main-navigation-content\\\">\\n <a id=\\\"main-navigation-logo\\\" class=\\\"logo\\\"></a>\\n <main-search-field class=\\\"search-container\\\"></main-search-field>\\n <div class=\\\"button-row\\\">\\n <map-items id=\\\"map-items\\\"></map-items>\\n <download-items id=\\\"download-items\\\"></download-items>\\n <user-account id=\\\"user-account\\\"></user-account>\\n <main-menu id=\\\"main-menu\\\"></main-menu>\\n \\n </div>\\n </div>\\n </div>\\n </div>\\n</template>\";","export default \"<template>\\n <div class=\\\"main-search-field\\\" id=\\\"main-search-content\\\">\\n <label id=\\\"main-search-input-label\\\" for=\\\"main-search-input\\\" class=\\\"hidden\\\">søk</label>\\n <input id=\\\"main-search-input\\\" autocomplete=\\\"off\\\" type=\\\"search\\\" value=\\\"\\\" />\\n <button id=\\\"search-submit-button\\\"></button>\\n <div id=\\\"search-results-container\\\" class=\\\"search-results-container\\\"> \\n </div>\\n </div>\\n </template>\";","export default \"<template>\\n <div class=\\\"map-items-container\\\">\\n <button id=\\\"map-toggle-button\\\" class=\\\"icon-toggle-button\\\">\\n <span id=\\\"map-toggle-button-counter\\\" class=\\\"counter\\\"></span>\\n <span id=\\\"map-toggle-button-icon\\\" class=\\\"map-icon\\\"></span>\\n </button>\\n <div class=\\\"map-item-list-wrapper\\\">\\n <div id=\\\"map-item-list-container\\\" class=\\\"map-item-list-container\\\"></div>\\n </div>\\n </div>\\n</template>\";","export default \"<template>\\n <div id=\\\"search-type-selector\\\" class=\\\"search-type-selector\\\">\\n <label for=\\\"search-type-metadata\\\">\\n <input name=\\\"search-type\\\" type=\\\"radio\\\" id=\\\"search-type-metadata\\\" value=\\\"metadata\\\" />\\n <span id=\\\"search-type-metadata-name\\\">Kartkatalogen</span>\\n <span id=\\\"search-type-metadata-counter\\\" class=\\\"search-type-counter\\\"></span>\\n </label>\\n <label for=\\\"search-type-article\\\">\\n <input name=\\\"search-type\\\" type=\\\"radio\\\" id=\\\"search-type-article\\\" value=\\\"articles\\\" />\\n <span id=\\\"search-type-article-name\\\">Artikler</span>\\n <span id=\\\"search-type-article-counter\\\" class=\\\"search-type-counter\\\"></span>\\n </label>\\n </div>\\n</template>\";","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> \";","\"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};","\"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};","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 { 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","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};","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';","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, 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};","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","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","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};","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 -960 960 960\\\"><path fill=\\\"currentColor\\\" d=\\\"M160-240q-17 0-28.5-11.5T120-280q0-17 11.5-28.5T160-320h640q17 0 28.5 11.5T840-280q0 17-11.5 28.5T800-240H160Zm0-200q-17 0-28.5-11.5T120-480q0-17 11.5-28.5T160-520h640q17 0 28.5 11.5T840-480q0 17-11.5 28.5T800-440H160Zm0-200q-17 0-28.5-11.5T120-680q0-17 11.5-28.5T160-720h640q17 0 28.5 11.5T840-680q0 17-11.5 28.5T800-640H160Z\\\"></path></svg>\"","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 -960 960 960\\\"><path fill=\\\"currentColor\\\" d=\\\"m256-200-56-56 224-224-224-224 56-56 224 224 224-224 56 56-224 224 224 224-56 56-224-224-224 224Z\\\"></path></svg>\"","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 -960 960 960\\\"><path fill=\\\"currentColor\\\" d=\\\"M440-474v-242q-76 14-118 73.5T280-520h-20q-58 0-99 41t-41 99q0 58 41 99t99 41h480q42 0 71-29t29-71q0-42-29-71t-71-29h-60v-80q0-48-22-89.5T600-680v-93q74 35 117 103.5T760-520q69 8 114.5 59.5T920-340q0 75-52.5 127.5T740-160H260q-91 0-155.5-63T40-377q0-78 47-139t123-78q17-72 85-137t145-65q33 0 56.5 23.5T520-716v242l36-35q11-11 27.5-11t28.5 12q11 11 11 28t-11 28L508-348q-12 12-28 12t-28-12L348-452q-11-11-11.5-27.5T348-508q11-11 27.5-11.5T404-509l36 35Zm40-44Z\\\"></path></svg>\"","module.exports = \"<svg id=\\\"Layer_1\\\" data-name=\\\"Layer 1\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 415.11 55\\\" role=\\\"img\\\" aria-labelledby=\\\"GeonorgeNavbarLogoTitle\\\"><title id=\\\"GeonorgeNavbarLogoTitle\\\">Geonorge logo</title><defs><style>.__1Z-QegB__cls-1{fill:#4d4d4f;}.__1Z-QegB__cls-2{fill:#a6a8ab;}.__1Z-QegB__cls-3{fill:#bbbdbf;}.__1Z-QegB__cls-4{fill:#6d6e70;}.__1Z-QegB__cls-5{fill:#929497;}.__1Z-QegB__cls-6{fill:#fe5000;}.__1Z-QegB__cls-7{fill:#404041;}</style></defs><title>Artboard 1</title><polygon class=\\\"__1Z-QegB__cls-1 \\\" points=\\\"20.9 30.4 20.9 54.5 0 42.4 20.9 30.4\\\"></polygon><polygon class=\\\"__1Z-QegB__cls-2 \\\" points=\\\"20.9 6.3 20.9 30.4 0 18.3 20.9 6.3\\\"></polygon><polyline class=\\\"__1Z-QegB__cls-3 \\\" points=\\\"20.9 30.4 41.8 42.4 41.8 18.3 20.9 30.4\\\"></polyline><polyline class=\\\"__1Z-QegB__cls-4 \\\" points=\\\"20.9 30.4 0 42.4 0 18.3 20.9 30.4\\\"></polyline><polyline class=\\\"__1Z-QegB__cls-5 \\\" points=\\\"20.9 30.4 20.9 54.5 41.8 42.4 20.9 30.4\\\"></polyline><path class=\\\"__1Z-QegB__cls-6 \\\" d=\\\"M24.5,9.1a8.08,8.08,0,0,1,1.2-4.7,8.78,8.78,0,0,1,15.2,8.8,9.49,9.49,0,0,1-3.5,3.4L24.5,24Zm13,2.1a4.8,4.8,0,0,0-1.8-6.7A4.93,4.93,0,0,0,29,6.3a4.84,4.84,0,0,0-.7,2.6A5,5,0,0,0,30.8,13a4.84,4.84,0,0,0,4.8.1A3.9,3.9,0,0,0,37.5,11.2Z\\\"></path><path class=\\\"__1Z-QegB__cls-7 \\\" d=\\\"M274.2,48.7h4.6c.2,0,.3-.2.4-.3s.1-.2,0-.2c-.8-1.6-5.2-10.2-6.6-12.8l-.1-.3.3-.1a9.48,9.48,0,0,0,2.7-1.7,11,11,0,0,0,3.3-5.8,12.47,12.47,0,0,0,.1-4.7,10.29,10.29,0,0,0-4.1-6.7,9.75,9.75,0,0,0-5.1-1.9H253.3c-.6,0-.7.1-.7.7v33c0,.6.1.7.7.7h5c.6,0,.7-.1.7-.7V35.8h5.7a.87.87,0,0,1,.9.5c.1.2.9,1.7,1.8,3.6,1.3,2.6,3.1,6.1,4.1,8a1.16,1.16,0,0,0,1.2.8ZM259,29.9V20h9.2a4.27,4.27,0,0,1,4.1,3.3,6.65,6.65,0,0,1-.2,4.2,3.84,3.84,0,0,1-3.6,2.5h0Z\\\"></path><path class=\\\"__1Z-QegB__cls-7 \\\" d=\\\"M104.6,14.2c-.6,0-.7.1-.7.7v33c0,.6.1.7.7.7H127c.6,0,.7-.1.7-.7V43.6c0-.6-.1-.7-.7-.7H110.3V34.2h13.3c.6,0,.7-.1.7-.7V29.4c0-.6-.1-.7-.7-.7H110.3V20H127c.6,0,.7-.1.7-.7V15c0-.6-.1-.7-.7-.7H104.6Z\\\"></path><path class=\\\"__1Z-QegB__cls-7 \\\" d=\\\"M326.9,14.2c-.6,0-.7.1-.7.7v33c0,.6.1.7.7.7h22.4c.6,0,.7-.1.7-.7V43.6c0-.6-.1-.7-.7-.7H332.6V34.2h13.3c.6,0,.7-.1.7-.7V29.4c0-.6-.1-.7-.7-.7H332.6V20h16.7c.6,0,.7-.1.7-.7V15c0-.6-.1-.7-.7-.7H326.9Z\\\"></path><path class=\\\"__1Z-QegB__cls-7 \\\" d=\\\"M149.7,13.8a17.7,17.7,0,1,0,17.6,17.7A17.65,17.65,0,0,0,149.7,13.8Zm0,29.5c-6.2,0-11.2-5.3-11.2-11.9s5-11.9,11.2-11.9,11.2,5.3,11.2,11.9S155.9,43.3,149.7,43.3Z\\\"></path><path class=\\\"__1Z-QegB__cls-7 \\\" d=\\\"M228.2,13.8a17.7,17.7,0,1,0,17.6,17.7A17.65,17.65,0,0,0,228.2,13.8Zm0,29.5C222,43.3,217,38,217,31.5s5-11.9,11.2-11.9,11.2,5.3,11.2,11.9S234.4,43.3,228.2,43.3Z\\\"></path><path class=\\\"__1Z-QegB__cls-7 \\\" d=\\\"M80.2,13.8A17.7,17.7,0,1,0,97.8,31.5V29.4c0-.6-.1-.7-.7-.7H79.6c-.6,0-.7.1-.7.7v4.1c0,.3,0,.5.1.6s.3.1.6.1H91.1l-.1.6a11.38,11.38,0,0,1-10.8,8.5C74.1,43.3,69,38,69,31.5s5-11.9,11.2-11.9a10.91,10.91,0,0,1,7.3,2.8c.5.5.7.5,1.1,0l3.2-3.2c.5-.5.5-.6,0-1.1A17.53,17.53,0,0,0,80.2,13.8Z\\\"></path><path class=\\\"__1Z-QegB__cls-7 \\\" d=\\\"M302.6,13.8a17.7,17.7,0,1,0,17.6,17.7V29.4c0-.6-.1-.7-.7-.7H302c-.6,0-.7.1-.7.7v4.1c0,.3,0,.5.1.6s.3.1.6.1h11.5l-.1.6a11.38,11.38,0,0,1-10.8,8.5c-6.2,0-11.2-5.3-11.2-11.9s5-11.9,11.2-11.9a10.91,10.91,0,0,1,7.3,2.8c.5.5.7.5,1.1,0l3.2-3.2c.5-.5.5-.6,0-1.1A18.16,18.16,0,0,0,302.6,13.8Z\\\"></path><path class=\\\"__1Z-QegB__cls-7 \\\" d=\\\"M180.9,26c.1,0,.1,0,.2.1,2.2,1.4,12.7,8.3,15.6,10.2a1.25,1.25,0,0,1,.6,1.1V48.1c0,.6.1.7.7.7h5c.6,0,.7-.1.7-.7v-33c0-.6-.1-.7-.7-.7h-5c-.6,0-.7.1-.7.7V29.3L174.8,14.1a.76.76,0,0,0-.4-.1.52.52,0,0,0-.2.4V48.1c0,.6.1.7.7.7h5c.6,0,.7-.1.7-.7V26Z\\\"></path></svg>\"","module.exports = \"<svg id=\\\"Layer_1\\\" data-name=\\\"Layer 1\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 415.11 55\\\" role=\\\"img\\\" aria-labelledby=\\\"GeonorgeNavbarDevLogoTitle\\\"><title id=\\\"GeonorgeNavbarDevLogoTitle\\\">Geonorge logo for utviklingsmiljø</title><defs><style>.__1VEHdQg__cls-1{fill:#4d4d4f;}.__1VEHdQg__cls-2{fill:#a6a8ab;}.__1VEHdQg__cls-3{fill:#bbbdbf;}.__1VEHdQg__cls-4{fill:#6d6e70;}.__1VEHdQg__cls-5{fill:#929497;}.__1VEHdQg__cls-6{fill:#fe5000;}.__1VEHdQg__cls-7{fill:#404041;}.__1VEHdQg__cls-8{fill:#ee432a;}.__1VEHdQg__cls-9{font-size:21px;fill:#fff;font-family:Arial-BoldMT, Arial;font-weight:700;}</style></defs><title>Artboard 1</title><polygon class=\\\"__1VEHdQg__cls-1 \\\" points=\\\"20.9 30.4 20.9 54.5 0 42.4 20.9 30.4\\\"></polygon><polygon class=\\\"__1VEHdQg__cls-2 \\\" points=\\\"20.9 6.3 20.9 30.4 0 18.3 20.9 6.3\\\"></polygon><polyline class=\\\"__1VEHdQg__cls-3 \\\" points=\\\"20.9 30.4 41.8 42.4 41.8 18.3 20.9 30.4\\\"></polyline><polyline class=\\\"__1VEHdQg__cls-4 \\\" points=\\\"20.9 30.4 0 42.4 0 18.3 20.9 30.4\\\"></polyline><polyline class=\\\"__1VEHdQg__cls-5 \\\" points=\\\"20.9 30.4 20.9 54.5 41.8 42.4 20.9 30.4\\\"></polyline><path class=\\\"__1VEHdQg__cls-6 \\\" d=\\\"M24.5,9.1a8.08,8.08,0,0,1,1.2-4.7,8.78,8.78,0,0,1,15.2,8.8,9.49,9.49,0,0,1-3.5,3.4L24.5,24Zm13,2.1a4.8,4.8,0,0,0-1.8-6.7A4.93,4.93,0,0,0,29,6.3a4.84,4.84,0,0,0-.7,2.6A5,5,0,0,0,30.8,13a4.84,4.84,0,0,0,4.8.1A3.9,3.9,0,0,0,37.5,11.2Z\\\"></path><path class=\\\"__1VEHdQg__cls-7 \\\" d=\\\"M274.2,48.7h4.6c.2,0,.3-.2.4-.3s.1-.2,0-.2c-.8-1.6-5.2-10.2-6.6-12.8l-.1-.3.3-.1a9.48,9.48,0,0,0,2.7-1.7,11,11,0,0,0,3.3-5.8,12.47,12.47,0,0,0,.1-4.7,10.29,10.29,0,0,0-4.1-6.7,9.75,9.75,0,0,0-5.1-1.9H253.3c-.6,0-.7.1-.7.7v33c0,.6.1.7.7.7h5c.6,0,.7-.1.7-.7V35.8h5.7a.87.87,0,0,1,.9.5c.1.2.9,1.7,1.8,3.6,1.3,2.6,3.1,6.1,4.1,8a1.16,1.16,0,0,0,1.2.8ZM259,29.9V20h9.2a4.27,4.27,0,0,1,4.1,3.3,6.65,6.65,0,0,1-.2,4.2,3.84,3.84,0,0,1-3.6,2.5h0Z\\\"></path><path class=\\\"__1VEHdQg__cls-7 \\\" d=\\\"M104.6,14.2c-.6,0-.7.1-.7.7v33c0,.6.1.7.7.7H127c.6,0,.7-.1.7-.7V43.6c0-.6-.1-.7-.7-.7H110.3V34.2h13.3c.6,0,.7-.1.7-.7V29.4c0-.6-.1-.7-.7-.7H110.3V20H127c.6,0,.7-.1.7-.7V15c0-.6-.1-.7-.7-.7H104.6Z\\\"></path><path class=\\\"__1VEHdQg__cls-7 \\\" d=\\\"M326.9,14.2c-.6,0-.7.1-.7.7v33c0,.6.1.7.7.7h22.4c.6,0,.7-.1.7-.7V43.6c0-.6-.1-.7-.7-.7H332.6V34.2h13.3c.6,0,.7-.1.7-.7V29.4c0-.6-.1-.7-.7-.7H332.6V20h16.7c.6,0,.7-.1.7-.7V15c0-.6-.1-.7-.7-.7H326.9Z\\\"></path><path class=\\\"__1VEHdQg__cls-7 \\\" d=\\\"M149.7,13.8a17.7,17.7,0,1,0,17.6,17.7A17.65,17.65,0,0,0,149.7,13.8Zm0,29.5c-6.2,0-11.2-5.3-11.2-11.9s5-11.9,11.2-11.9,11.2,5.3,11.2,11.9S155.9,43.3,149.7,43.3Z\\\"></path><path class=\\\"__1VEHdQg__cls-7 \\\" d=\\\"M228.2,13.8a17.7,17.7,0,1,0,17.6,17.7A17.65,17.65,0,0,0,228.2,13.8Zm0,29.5C222,43.3,217,38,217,31.5s5-11.9,11.2-11.9,11.2,5.3,11.2,11.9S234.4,43.3,228.2,43.3Z\\\"></path><path class=\\\"__1VEHdQg__cls-7 \\\" d=\\\"M80.2,13.8A17.7,17.7,0,1,0,97.8,31.5V29.4c0-.6-.1-.7-.7-.7H79.6c-.6,0-.7.1-.7.7v4.1c0,.3,0,.5.1.6s.3.1.6.1H91.1l-.1.6a11.38,11.38,0,0,1-10.8,8.5C74.1,43.3,69,38,69,31.5s5-11.9,11.2-11.9a10.91,10.91,0,0,1,7.3,2.8c.5.5.7.5,1.1,0l3.2-3.2c.5-.5.5-.6,0-1.1A17.53,17.53,0,0,0,80.2,13.8Z\\\"></path><path class=\\\"__1VEHdQg__cls-7 \\\" d=\\\"M302.6,13.8a17.7,17.7,0,1,0,17.6,17.7V29.4c0-.6-.1-.7-.7-.7H302c-.6,0-.7.1-.7.7v4.1c0,.3,0,.5.1.6s.3.1.6.1h11.5l-.1.6a11.38,11.38,0,0,1-10.8,8.5c-6.2,0-11.2-5.3-11.2-11.9s5-11.9,11.2-11.9a10.91,10.91,0,0,1,7.3,2.8c.5.5.7.5,1.1,0l3.2-3.2c.5-.5.5-.6,0-1.1A18.16,18.16,0,0,0,302.6,13.8Z\\\"></path><path class=\\\"__1VEHdQg__cls-7 \\\" d=\\\"M180.9,26c.1,0,.1,0,.2.1,2.2,1.4,12.7,8.3,15.6,10.2a1.25,1.25,0,0,1,.6,1.1V48.1c0,.6.1.7.7.7h5c.6,0,.7-.1.7-.7v-33c0-.6-.1-.7-.7-.7h-5c-.6,0-.7.1-.7.7V29.3L174.8,14.1a.76.76,0,0,0-.4-.1.52.52,0,0,0-.2.4V48.1c0,.6.1.7.7.7h5c.6,0,.7-.1.7-.7V26Z\\\"></path><rect class=\\\"__1VEHdQg__cls-8 \\\" x=\\\"353.52\\\" y=\\\"0.02\\\" width=\\\"61.59\\\" height=\\\"22.72\\\" rx=\\\"4.67\\\"></rect><text class=\\\"__1VEHdQg__cls-9 \\\" transform=\\\"translate(363.76 19)\\\">DEV</text></svg>\"","module.exports = \"<svg id=\\\"Layer_1\\\" data-name=\\\"Layer 1\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 415.11 55\\\" role=\\\"img\\\" aria-labelledby=\\\"GeonorgeNavbarTestLogoTitle\\\"><title id=\\\"GeonorgeNavbarTestLogoTitle\\\">Geonorge logo for testmiljø</title><defs><style>.__1OLSYtO__cls-1{fill:#4d4d4f;}.__1OLSYtO__cls-2{fill:#a6a8ab;}.__1OLSYtO__cls-3{fill:#bbbdbf;}.__1OLSYtO__cls-4{fill:#6d6e70;}.__1OLSYtO__cls-5{fill:#929497;}.__1OLSYtO__cls-6{fill:#fe5000;}.__1OLSYtO__cls-7{fill:#404041;}.__1OLSYtO__cls-8{fill:#36c545;}.__1OLSYtO__cls-9{font-size:21px;fill:#fff;font-family:Arial-BoldMT, Arial;font-weight:700;}</style></defs><title>Artboard 1</title><polygon class=\\\"__1OLSYtO__cls-1 \\\" points=\\\"20.9 30.4 20.9 54.5 0 42.4 20.9 30.4\\\"></polygon><polygon class=\\\"__1OLSYtO__cls-2 \\\" points=\\\"20.9 6.3 20.9 30.4 0 18.3 20.9 6.3\\\"></polygon><polyline class=\\\"__1OLSYtO__cls-3 \\\" points=\\\"20.9 30.4 41.8 42.4 41.8 18.3 20.9 30.4\\\"></polyline><polyline class=\\\"__1OLSYtO__cls-4 \\\" points=\\\"20.9 30.4 0 42.4 0 18.3 20.9 30.4\\\"></polyline><polyline class=\\\"__1OLSYtO__cls-5 \\\" points=\\\"20.9 30.4 20.9 54.5 41.8 42.4 20.9 30.4\\\"></polyline><path class=\\\"__1OLSYtO__cls-6 \\\" d=\\\"M24.5,9.1a8.08,8.08,0,0,1,1.2-4.7,8.78,8.78,0,0,1,15.2,8.8,9.49,9.49,0,0,1-3.5,3.4L24.5,24Zm13,2.1a4.8,4.8,0,0,0-1.8-6.7A4.93,4.93,0,0,0,29,6.3a4.84,4.84,0,0,0-.7,2.6A5,5,0,0,0,30.8,13a4.84,4.84,0,0,0,4.8.1A3.9,3.9,0,0,0,37.5,11.2Z\\\"></path><path class=\\\"__1OLSYtO__cls-7 \\\" d=\\\"M274.2,48.7h4.6c.2,0,.3-.2.4-.3s.1-.2,0-.2c-.8-1.6-5.2-10.2-6.6-12.8l-.1-.3.3-.1a9.48,9.48,0,0,0,2.7-1.7,11,11,0,0,0,3.3-5.8,12.47,12.47,0,0,0,.1-4.7,10.29,10.29,0,0,0-4.1-6.7,9.75,9.75,0,0,0-5.1-1.9H253.3c-.6,0-.7.1-.7.7v33c0,.6.1.7.7.7h5c.6,0,.7-.1.7-.7V35.8h5.7a.87.87,0,0,1,.9.5c.1.2.9,1.7,1.8,3.6,1.3,2.6,3.1,6.1,4.1,8a1.16,1.16,0,0,0,1.2.8ZM259,29.9V20h9.2a4.27,4.27,0,0,1,4.1,3.3,6.65,6.65,0,0,1-.2,4.2,3.84,3.84,0,0,1-3.6,2.5h0Z\\\"></path><path class=\\\"__1OLSYtO__cls-7 \\\" d=\\\"M104.6,14.2c-.6,0-.7.1-.7.7v33c0,.6.1.7.7.7H127c.6,0,.7-.1.7-.7V43.6c0-.6-.1-.7-.7-.7H110.3V34.2h13.3c.6,0,.7-.1.7-.7V29.4c0-.6-.1-.7-.7-.7H110.3V20H127c.6,0,.7-.1.7-.7V15c0-.6-.1-.7-.7-.7H104.6Z\\\"></path><path class=\\\"__1OLSYtO__cls-7 \\\" d=\\\"M326.9,14.2c-.6,0-.7.1-.7.7v33c0,.6.1.7.7.7h22.4c.6,0,.7-.1.7-.7V43.6c0-.6-.1-.7-.7-.7H332.6V34.2h13.3c.6,0,.7-.1.7-.7V29.4c0-.6-.1-.7-.7-.7H332.6V20h16.7c.6,0,.7-.1.7-.7V15c0-.6-.1-.7-.7-.7H326.9Z\\\"></path><path class=\\\"__1OLSYtO__cls-7 \\\" d=\\\"M149.7,13.8a17.7,17.7,0,1,0,17.6,17.7A17.65,17.65,0,0,0,149.7,13.8Zm0,29.5c-6.2,0-11.2-5.3-11.2-11.9s5-11.9,11.2-11.9,11.2,5.3,11.2,11.9S155.9,43.3,149.7,43.3Z\\\"></path><path class=\\\"__1OLSYtO__cls-7 \\\" d=\\\"M228.2,13.8a17.7,17.7,0,1,0,17.6,17.7A17.65,17.65,0,0,0,228.2,13.8Zm0,29.5C222,43.3,217,38,217,31.5s5-11.9,11.2-11.9,11.2,5.3,11.2,11.9S234.4,43.3,228.2,43.3Z\\\"></path><path class=\\\"__1OLSYtO__cls-7 \\\" d=\\\"M80.2,13.8A17.7,17.7,0,1,0,97.8,31.5V29.4c0-.6-.1-.7-.7-.7H79.6c-.6,0-.7.1-.7.7v4.1c0,.3,0,.5.1.6s.3.1.6.1H91.1l-.1.6a11.38,11.38,0,0,1-10.8,8.5C74.1,43.3,69,38,69,31.5s5-11.9,11.2-11.9a10.91,10.91,0,0,1,7.3,2.8c.5.5.7.5,1.1,0l3.2-3.2c.5-.5.5-.6,0-1.1A17.53,17.53,0,0,0,80.2,13.8Z\\\"></path><path class=\\\"__1OLSYtO__cls-7 \\\" d=\\\"M302.6,13.8a17.7,17.7,0,1,0,17.6,17.7V29.4c0-.6-.1-.7-.7-.7H302c-.6,0-.7.1-.7.7v4.1c0,.3,0,.5.1.6s.3.1.6.1h11.5l-.1.6a11.38,11.38,0,0,1-10.8,8.5c-6.2,0-11.2-5.3-11.2-11.9s5-11.9,11.2-11.9a10.91,10.91,0,0,1,7.3,2.8c.5.5.7.5,1.1,0l3.2-3.2c.5-.5.5-.6,0-1.1A18.16,18.16,0,0,0,302.6,13.8Z\\\"></path><path class=\\\"__1OLSYtO__cls-7 \\\" d=\\\"M180.9,26c.1,0,.1,0,.2.1,2.2,1.4,12.7,8.3,15.6,10.2a1.25,1.25,0,0,1,.6,1.1V48.1c0,.6.1.7.7.7h5c.6,0,.7-.1.7-.7v-33c0-.6-.1-.7-.7-.7h-5c-.6,0-.7.1-.7.7V29.3L174.8,14.1a.76.76,0,0,0-.4-.1.52.52,0,0,0-.2.4V48.1c0,.6.1.7.7.7h5c.6,0,.7-.1.7-.7V26Z\\\"></path><rect class=\\\"__1OLSYtO__cls-8 \\\" x=\\\"353.52\\\" y=\\\"0.02\\\" width=\\\"61.59\\\" height=\\\"22.72\\\" rx=\\\"4.67\\\"></rect><text class=\\\"__1OLSYtO__cls-9 \\\" transform=\\\"translate(358.52 19)\\\">TEST</text></svg>\"","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 -960 960 960\\\"><path fill=\\\"currentColor\\\" d=\\\"M480-186q122-112 181-203.5T720-552q0-109-69.5-178.5T480-800q-101 0-170.5 69.5T240-552q0 71 59 162.5T480-186Zm0 79q-14 0-28-5t-25-15q-65-60-115-117t-83.5-110.5q-33.5-53.5-51-103T160-552q0-150 96.5-239T480-880q127 0 223.5 89T800-552q0 45-17.5 94.5t-51 103Q698-301 648-244T533-127q-11 10-25 15t-28 5Zm0-453Zm0 80q33 0 56.5-23.5T560-560q0-33-23.5-56.5T480-640q-33 0-56.5 23.5T400-560q0 33 23.5 56.5T480-480Z\\\"></path></svg>\"","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>\"","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>\"","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>\"","module.exports = \"<svg version=\\\"1.1\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" xmlns:xlink=\\\"http://www.w3.org/1999/xlink\\\" x=\\\"0px\\\" y=\\\"0px\\\" viewBox=\\\"0 0 34 35\\\" style=\\\"enable-background:new 0 0 34 35;\\\" xml:space=\\\"preserve\\\"><style type=\\\"text/css\\\"> .__24nL31r__st0{fill:#B0A9A2;} </style><g><path class=\\\"__24nL31r__st0 \\\" d=\\\"M23.6,22.8c2.2-2.4,3.6-5.7,3.6-9.2C27.2,6.1,21.1,0,13.6,0C6.1,0,0,6.1,0,13.6c0,7.5,6.1,13.6,13.6,13.6 c3.1,0,5.9-1,8.1-2.7l10.1,10.1c0.2,0.2,0.6,0.4,0.9,0.4c0.3,0,0.6-0.1,0.9-0.4c0.5-0.5,0.5-1.3,0-1.7L23.6,22.8z M2.5,13.6 c0-6.1,5-11.1,11.1-11.1c6.1,0,11.1,5,11.1,11.1s-5,11.1-11.1,11.1S2.5,19.7,2.5,13.6L2.5,13.6z\\\"></path></g></svg>\"","module.exports = \"<svg aria-hidden=\\\"true\\\" focusable=\\\"false\\\" data-prefix=\\\"far\\\" data-icon=\\\"trash\\\" class=\\\"__1FtTC55__svg-inline--fa __1FtTC55__fa-trash __1FtTC55__fa-w-14 __1FtTC55__ \\\" role=\\\"img\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 448 512\\\"><title>Soppelkasse ikon</title><path fill=\\\"currentColor\\\" d=\\\"M432 80h-82.4l-34-56.7A48 48 0 0 0 274.4 0H173.6a48 48 0 0 0-41.2 23.3L98.4 80H16A16 16 0 0 0 0 96v16a16 16 0 0 0 16 16h16l21.2 339a48 48 0 0 0 47.9 45h245.8a48 48 0 0 0 47.9-45L416 128h16a16 16 0 0 0 16-16V96a16 16 0 0 0-16-16zM173.6 48h100.8l19.2 32H154.4zm173.3 416H101.11l-21-336h287.8z\\\"></path></svg>\"","import { getConfig } from './config';\n\nexport const getKartkatalogApiUrl = (environment: string) => {\n const config = getConfig();\n if (config.kartkatalogApiUrl) return config.kartkatalogApiUrl;\n const environmentSlug = environment === \"dev\" || environment === \"test\" ? environment + \".\" : \"\";\n return `https://kartkatalog.${environmentSlug}geonorge.no/api`;\n};\n\nexport const getMinSideShortcutApiUrl = (environment: string, shortcutUrl?: string) => {\n const config = getConfig();\n const urlParameterString = shortcutUrl?.length ? `?${new URLSearchParams({ url: shortcutUrl }).toString()}` : \"\";\n if (config.minsideUrl) return `${config.minsideUrl}/api/shortcut${urlParameterString}`;\n const environmentSlug = environment === \"dev\" || environment === \"test\" ? environment + \".\" : \"\";\n return `https://minside.${environmentSlug}geonorge.no/api/shortcut${urlParameterString}`;\n};\nexport const getMinSideShortcutUrl = (environment: string) => {\n const config = getConfig();\n if (config.minsideUrl) return `${config.minsideUrl}/shortcuts`;\n const environmentSlug = environment === \"dev\" || environment === \"test\" ? environment + \".\" : \"\";\n return `https://minside.${environmentSlug}geonorge.no/shortcuts`;\n};\n\nexport const fetchShortcutItem = async (environment: string = \"\", token: string, shortcutUrl: string) => {\n const apiUrl = getMinSideShortcutApiUrl(environment, shortcutUrl);\n const fetchOptions = {\n method: \"GET\",\n headers: new Headers({\n Authorization: `Bearer ${token}`\n })\n };\n try {\n return fetch(apiUrl, fetchOptions).then((res) => {\n if (res.status === 200) {\n return res.json().then((shortcutItem) => {\n return shortcutItem;\n });\n } else {\n return null;\n }\n });\n } catch (error) {\n console.error(\"Error fetching shortcut items:\", error);\n return null;\n }\n};\n\nexport const postShortcutItem = async (\n environment: string = \"\",\n token: string,\n shortcutItem: { name: string; url: string }\n) => {\n const apiUrl = getMinSideShortcutApiUrl(environment);\n const fetchOptions = {\n method: \"POST\",\n headers: new Headers({\n Authorization: `Bearer ${token}`,\n \"Content-Type\": \"application/json\"\n }),\n body: JSON.stringify(shortcutItem)\n };\n return fetch(apiUrl, fetchOptions)\n .then((res) => res.json())\n .then((shortcutItem) => {\n return shortcutItem;\n });\n};\n\nexport const deleteShortcutItem = async (environment: string = \"\", token: string, shortcutItem: { url: string }) => {\n const apiUrl = getMinSideShortcutApiUrl(environment);\n const fetchOptions = {\n method: \"DELETE\",\n headers: new Headers({\n Authorization: `Bearer ${token}`,\n \"Content-Type\": \"application/json\"\n }),\n body: JSON.stringify(shortcutItem)\n };\n return fetch(apiUrl, fetchOptions);\n};\n\nexport const getGeonorgeMenuUrl = (language: string, environment: string) => {\n const config = getConfig();\n const selectedLanguageSlug = language === \"en\" ? \"en/\" : \"\";\n if (config.geonorgeUrl) return `${config.geonorgeUrl}/${selectedLanguageSlug}api/menu/get?omitLinks=1`;\n const environmentSlug = environment === \"dev\" || environment === \"test\" ? \"test.\" : \"\";\n if (environment === \"dev\") return `https://dev.geonorge.no/menu.xml`;\n else return `https://www.${environmentSlug}geonorge.no/${selectedLanguageSlug}api/menu/get?omitLinks=1`;\n};\n\nexport const fetchMenuItems = (language: string = \"no\", environment: string = \"\") => {\n const apiUrl = getGeonorgeMenuUrl(language, environment);\n return fetch(apiUrl)\n .then((res) => res.json())\n .then((menuItems) => {\n return menuItems;\n });\n};\n\nexport const fetchDropdownSearchResults = async (\n searchString: string = \"\",\n language: string = \"no\",\n environment: string = \"\"\n) => {\n searchString = searchString.toString();\n const urlParameterStrings = {\n dataset: `search?text=${searchString}&facets%5B1%5Dname=type&facets%5B1%5Dvalue=dataset`,\n series: `search?text=${searchString}&facets%5B1%5Dname=type&facets%5B1%5Dvalue=series`,\n service: `search?text=${searchString}&facets%5B1%5Dname=type&facets%5B1%5Dvalue=service`,\n servicelayer: `search?text=${searchString}&facets%5B1%5Dname=type&facets%5B1%5Dvalue=servicelayer`,\n software: `search?text=${searchString}&facets%5B1%5Dname=type&facets%5B1%5Dvalue=software`,\n articles: `articles?text=${searchString}`\n };\n const fetchOptions = {\n headers: new Headers({\n \"Accept-Language\": language\n })\n };\n const limitParameterString = \"limit=5\";\n\n return searchString && searchString.length\n ? await Promise.all(\n Object.keys(urlParameterStrings).map(async (searchResultsType) => {\n const kartkatalogApiUrl = getKartkatalogApiUrl(environment);\n let urlParameterString = urlParameterStrings[searchResultsType];\n return fetch(`${kartkatalogApiUrl}/${urlParameterString}&${limitParameterString}`, fetchOptions)\n .then((res) => res.json())\n .then((searchResults) => {\n return {\n ...searchResults,\n searchResultsType\n };\n });\n })\n )\n : null;\n};\n","export interface GeonorgeConfig {\n kartkatalogUrl?: string;\n kartkatalogApiUrl?: string;\n minsideUrl?: string;\n geonorgeUrl?: string;\n nedlastingUrl?: string;\n}\n\nlet currentConfig: GeonorgeConfig = {};\n\nexport const configure = (config: Partial<GeonorgeConfig>) => {\n currentConfig = { ...currentConfig, ...config };\n};\n\nexport const getConfig = (): GeonorgeConfig => currentConfig;\n","export const getCookie = (cname: string) => {\n const name = `${cname}=`;\n const decodedCookie = decodeURIComponent(document.cookie);\n const ca = decodedCookie.split(';');\n for (var i = 0; i < ca.length; i++) {\n let c = ca[i];\n while (c.charAt(0) == ' ') {\n c = c.substring(1);\n }\n if (c.indexOf(name) == 0) {\n return c.substring(name.length, c.length);\n }\n }\n return \"\";\n}\n\nexport const setCookie = (cname: string, cvalue: string, exdays?: number) => {\n\n const domain = window.location.hostname === 'localhost' ? '' : 'domain=.geonorge.no';\n\n if (exdays === undefined) \n { \n document.cookie = `${cname}=${cvalue};path=/;${domain}`;\n } \n else \n {\n let expireDate = new Date();\n expireDate.setTime(expireDate.getTime() + (exdays * 24 * 60 * 60 * 1000));\n const expires = `expires=${expireDate.toUTCString()}`;\n document.cookie = `${cname}=${cvalue};${expires};path=/;${domain}`;\n }\n}\n\nexport const getLanguage = () => {\n return getCookie('_culture');\n}\n\nexport const setLanguage = (language: string) => {\n setCookie('_culture', language, 7);\n}\n","// Functions\nimport { getCookie, setCookie } from './cookieHelpers';\n\nexport const getDownloadItems = () => {\n return localStorage.orderItems && Array.isArray(JSON.parse(localStorage.orderItems))\n ? JSON.parse(localStorage.orderItems).filter(mapItem => {return mapItem})\n : [];\n}\n\nexport const getDownloadItemsCount = () => {\n const isKartkatalog = window.location.hostname.toLowerCase().indexOf('kartkatalog') !== -1;\n const isLocalKartkatalogEnvironment = window.sessionStorage.isLocalKartkatalogEnvironment;\n if (isKartkatalog || isLocalKartkatalogEnvironment) {\n return getDownloadItems().length;\n } else {\n const downloadItemsCount = parseInt(getCookie('orderItems'));\n return downloadItemsCount && !isNaN(downloadItemsCount) ? downloadItemsCount : 0;\n }\n}\n\nexport const getDownloadItemMetadata = (itemUuid: string) => {\n return localStorage[itemUuid + '.metadata']\n ? JSON.parse(localStorage[itemUuid + '.metadata'])\n : null;\n}\n\nexport const removeDownloadItem = (itemToRemove) => {\n let selectedItems = localStorage.orderItems && Array.isArray(JSON.parse(localStorage.orderItems))\n ? JSON.parse(localStorage.orderItems)\n : [];\n localStorage.orderItems = JSON.stringify(selectedItems.filter(itemToKeep => itemToKeep !== itemToRemove.uuid));\n localStorage.removeItem(itemToRemove.uuid + \".metadata\")\n\n const orderItemsCount = getDownloadItemsCount();\n setCookie('orderItems', orderItemsCount, 7);\n}\n","export const getFocusableElementsInsideElement = (element: HTMLElement) => {\n return element.querySelectorAll('button, [href], input, [tabindex=\"0\"]');\n};\n\nexport const getDocumentHeading = () => {\n let documentHeading = document.querySelector(\"heading-text\") as HTMLElement | null; // This assumes that the heading is wrapped in a custom element called \"heading-text\"\n if (!documentHeading) {\n documentHeading = document.querySelector(\"h1:not(.sb-nopreview_heading.sb-heading)\") as HTMLElement | null; // Exclude the heading used by Storybook\n }\n return documentHeading;\n};\n\nexport const addGlobalStylesheet = (styleElementId: string, styles: string) => {\n const style = document.createElement(\"style\");\n style.setAttribute(\"id\", styleElementId);\n style.textContent = styles;\n if (!document.getElementById(styleElementId)) {\n document.head.appendChild(style);\n }\n};\n\nexport const removeInnerHTML = (element: HTMLElement) => {\n while (element.firstChild) {\n if (element.contains(element.firstChild)) {\n element.removeChild(element.firstChild);\n } else {\n // If not a child, break to avoid infinite loop\n break;\n }\n }\n};\n","// Functions\nimport { getCookie, setCookie } from './cookieHelpers';\n\nexport const getMapItems = () => {\n return localStorage.mapItems && Array.isArray(JSON.parse(localStorage.mapItems))\n ? JSON.parse(localStorage.mapItems).filter(mapItem => {return mapItem})\n : [];\n}\n\nexport const getMapItemsCount = () => {\n const isKartkatalog = window.location.hostname.toLowerCase().indexOf('kartkatalog') !== -1;\n const isLocalKartkatalogEnvironment = window.sessionStorage.isLocalKartkatalogEnvironment;\n if (isKartkatalog || isLocalKartkatalogEnvironment) {\n return getMapItems().length;\n } else {\n const mapItemsCount = parseInt(getCookie('mapItems'));\n return mapItemsCount && !isNaN(mapItemsCount) ? mapItemsCount : 0;\n }\n}\n\nexport const removeMapItem = (itemToRemove) => {\n let selectedItems = localStorage.mapItems && Array.isArray(JSON.parse(localStorage.mapItems))\n ? JSON.parse(localStorage.mapItems)\n : [];\n localStorage.mapItems = JSON.stringify(selectedItems.filter(itemToKeep => itemToKeep.Uuid !== itemToRemove.Uuid));\n\n const mapItemsCount = getMapItemsCount();\n setCookie('mapItems', mapItemsCount, 7);\n}\n","// Interfaces\nimport { SearchResultsForType } from 'interfaces/search';\nimport { getConfig } from './config';\n\nexport const getKartkatalogUrl = (environment: string) => {\n const config = getConfig();\n if (config.kartkatalogUrl) return config.kartkatalogUrl;\n const environmentSlug = environment === 'dev' || environment === 'test' ? environment + '.' : '';\n return `https://kartkatalog.${environmentSlug}geonorge.no`;\n};\nexport const getMinsideUrl = (environment: string) => {\n const config = getConfig();\n if (config.minsideUrl) return config.minsideUrl;\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 config = getConfig();\n if (config.geonorgeUrl) {\n const selectedLanguageSlug = language === 'en' ? 'en/' : '';\n return `${config.geonorgeUrl}/${selectedLanguageSlug}`;\n }\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 config = getConfig();\n if (config.nedlastingUrl) return config.nedlastingUrl;\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}","// Dependencies\nimport {\n Component, CustomElement, CustomElementOptions, Prop, Dispatch, DispatchEmitter,\n Listen, Watch, getElement, getShadowRootElement, Toggle\n} from 'super-custom-elements';\n\n\n// Assets\nimport DownloadIcon from '../../../assets/svg/download.svg';\nimport TrashIcon from '../../../assets/svg/trash-icon.svg';\n\n// Functions\nimport { getDownloadItems, getDownloadItemsCount, getDownloadItemMetadata, removeDownloadItem } from '../../../functions/downloadItemHelpers';\nimport { getKartkatalogUrl } from '../../../functions/urlHelpers';\nimport { getFocusableElementsInsideElement } from '../../../functions/guiHelpers';\n\ninterface DownloadItem extends Object {\n name: string,\n organizationName: string,\n uuid: string\n}\n\ninterface DownloadItemsOptions extends CustomElementOptions {\n active?: boolean,\n onDownloadItemsChange?: () => void\n}\n\n@Component({\n tag: 'download-items',\n template: import('./download-items.html'),\n style: import('./download-items.scss')\n})\n\nexport class DownloadItems extends CustomElement {\n private static readonly elementSelector = 'download-items';\n private downloadButton: HTMLButtonElement;\n private downloadIcon: HTMLElement;\n private downloadIconCounter: HTMLSpanElement;\n private downloadItemListContainer: HTMLDivElement;\n private downloadItems: Array<DownloadItem>;\n\n @Prop() id: string;\n @Prop() environment: string;\n @Prop() language: string;\n @Toggle() showList: boolean;\n @Toggle() preventRedirect: boolean;\n @Dispatch('onOpenEmptyDownloadItemsList') onOpenEmptyDownloadItemsList: DispatchEmitter;\n @Dispatch('onDownloadItemsChange') onDownloadItemsChange: DispatchEmitter;\n\n constructor() {\n super();\n this.clickOutsideDownloadItemsContainer = this.clickOutsideDownloadItemsContainer.bind(this);\n this.updateDomElements = this.updateDomElements.bind(this);\n this.getUpdatedDownloadItems = this.getUpdatedDownloadItems.bind(this);\n }\n\n setup(options?: DownloadItemsOptions): void {\n this.connect(options.container);\n if (options.id) {\n this.id = options.id;\n }\n }\n\n connectedCallback() {\n this.downloadButton = getShadowRootElement(this, '#download-toggle-button');\n this.downloadIcon = getShadowRootElement(this, '#download-toggle-button-icon');\n this.downloadIconCounter = getShadowRootElement(this, '#download-toggle-button-counter');\n this.downloadItemListContainer = getShadowRootElement(this, '#download-item-list-container');\n\n this.getUpdatedDownloadItems();\n this.downloadIcon.innerHTML = DownloadIcon;\n this.renderDownloadItemsCounter();\n\n document.addEventListener('click', this.clickOutsideDownloadItemsContainer);\n document.addEventListener('downloadItemsChanged', this.updateDomElements);\n }\n\n updateDomElements() {\n this.getUpdatedDownloadItems();\n this.renderDownloadItems(this.downloadItems);\n this.renderDownloadItemsCounter();\n }\n\n getUpdatedDownloadItems() {\n const downloadItemUuids = getDownloadItems();\n this.downloadItems = downloadItemUuids.map(uuid => {\n return getDownloadItemMetadata(uuid);\n }).filter(downloadItem => { return downloadItem });\n }\n\n disconnectedCallback() {\n document.removeEventListener('click', this.clickOutsideDownloadItemsContainer);\n }\n\n hideListContainer = () => {\n this.showList = false;\n }\n\n clickOutsideDownloadItemsContainer(event: MouseEvent) {\n const targetElement = event.composedPath()[0] as Element;\n if (targetElement.closest('#download-item-list-container') || targetElement.closest('#download-toggle-button')) return\n this.hideListContainer();\n }\n\n renderDownloadItemsCounter() {\n const downloadItemsCount = getDownloadItemsCount();\n if (downloadItemsCount) {\n this.downloadIconCounter.innerHTML = downloadItemsCount.toString();\n this.downloadIconCounter.classList.remove('hidden');\n this.downloadButton.setAttribute(\n 'aria-label',\n this.language === 'en'\n ? `Show ${downloadItemsCount} download ${downloadItemsCount === 1 ? 'item' : 'items'} in list`\n : `Vis liste med ${downloadItemsCount} ${downloadItemsCount === 1 ? 'element' : 'elementer'} til nedlasting`\n );\n } else {\n this.downloadIconCounter.innerHTML = '';\n this.downloadIconCounter.classList.add('hidden');\n this.downloadButton.setAttribute(\n 'aria-label',\n this.language === 'en' \n ? 'Go to download page' \n : 'Gå til nedlastingsside'\n );\n }\n }\n\n renderDownloadItems = (downloadItems: Array<DownloadItem>) => {\n const downloadItemsListElement = downloadItems.map((downloadItem: DownloadItem) => {\n if (downloadItem) {\n const downloadItemElement = document.createElement('span');\n downloadItemElement.innerText = downloadItem.name;\n\n const removeDownloadItemElement = document.createElement('button');\n removeDownloadItemElement.classList.add('list-icon');\n removeDownloadItemElement.innerHTML = TrashIcon;\n removeDownloadItemElement.dataset['downloadItem'] = JSON.stringify(downloadItem);\n removeDownloadItemElement.setAttribute('aria-label', this.language === 'en' ? `Remove ${downloadItem.name} from downloads` : `Fjern ${downloadItem.name} fra kurv`);\n if (!this.showList){\n removeDownloadItemElement.setAttribute('tabindex', '-1');\n }\n downloadItemElement.appendChild(removeDownloadItemElement);\n\n return `<li>${downloadItemElement.innerHTML}</li>`;\n } else return null;\n }).filter(downloadItem => { return downloadItem }).join('');\n\n let downloadItemLinkElement;\n if (this.preventRedirect) {\n downloadItemLinkElement = document.createElement('button');\n downloadItemLinkElement.addEventListener(\"click\", () => {\n this.onOpenEmptyDownloadItemsList.emit();\n });\n } else {\n downloadItemLinkElement = document.createElement('a');\n downloadItemLinkElement.href = `${getKartkatalogUrl(this.environment)}/nedlasting`;\n }\n downloadItemLinkElement.innerText = this.language === 'en' ? 'Go to download' : 'Til nedlasting';\n downloadItemLinkElement.classList.add('page-link-element');\n if (!this.showList){\n downloadItemLinkElement.setAttribute('tabindex', '-1');\n }\n this.downloadItemListContainer.innerHTML = !!downloadItemsListElement?.length ? `<ul>${downloadItemsListElement}</ul>` : '';\n this.downloadItemListContainer.prepend(downloadItemLinkElement);\n }\n\n @Listen('click', '#download-toggle-button')\n buttonClicked(event: MouseEvent) {\n if (this.downloadItems && this.downloadItems.length) {\n this.showList = !this.showList;\n } else {\n this.showList = false;\n if (this.preventRedirect) {\n this.onOpenEmptyDownloadItemsList.emit();\n } else {\n window.location.href = `${getKartkatalogUrl(this.environment)}/nedlasting`\n }\n }\n }\n\n @Listen('click', '#download-item-list-container')\n removeDownloadItemClicked(event: MouseEvent) {\n const targetElement = event.composedPath()[0] as Element;\n targetElement.closest('#menu-container');\n const removeDownloadItemButtonElement = targetElement.closest('button');\n\n if (removeDownloadItemButtonElement) {\n const downloadItem = removeDownloadItemButtonElement.dataset && removeDownloadItemButtonElement.dataset.downloadItem ? JSON.parse(removeDownloadItemButtonElement.dataset.downloadItem) : null;\n if (downloadItem) {\n event.stopPropagation();\n removeDownloadItem(downloadItem);\n this.getUpdatedDownloadItems();\n this.renderDownloadItems(this.downloadItems);\n this.renderDownloadItemsCounter();\n if (!this.downloadItems || !this.downloadItems.length) {\n this.showList = false;\n }\n }\n if (this.onDownloadItemsChange){\n this.onDownloadItemsChange.emit({detail: this.downloadItems});\n }\n }\n }\n\n @Watch('showlist')\n showListChanged() {\n this.showList ? this.downloadItemListContainer.classList.add('open') : this.downloadItemListContainer.classList.remove('open');\n this.showList ? this.downloadButton.classList.add('open') : this.downloadButton.classList.remove('open');\n const downloadItemListContainerButtons = getFocusableElementsInsideElement(this.downloadItemListContainer);\n downloadItemListContainerButtons.forEach(button => {\n if (!this.showList){\n button.setAttribute('tabindex', '-1');\n } else {\n button.removeAttribute('tabindex');\n }\n });\n }\n\n @Watch('downloadItems')\n downloadItemsChanged() {\n if (this.downloadItems && this.downloadItems.length) {\n this.renderDownloadItems(this.downloadItems);\n this.renderDownloadItemsCounter();\n }\n }\n\n @Watch('language')\n languageChanged() {\n if (this.downloadItems && this.downloadItems.length) {\n this.renderDownloadItems(this.downloadItems);\n this.renderDownloadItemsCounter();\n }\n }\n\n @Watch('preventredirect')\n preventRedirectChanged() {\n if (this.downloadItems && this.downloadItems.length) {\n this.renderDownloadItems(this.downloadItems);\n this.renderDownloadItemsCounter();\n }\n }\n\n public static setup(selector: string, options: DownloadItemsOptions) {\n const element = getElement<DownloadItems>(selector);\n if (options.active) {\n element.showList = options.active;\n }\n }\n}\n","// Dependencies\nimport {\n Component, CustomElement, CustomElementOptions, Prop, Dispatch, DispatchEmitter,\n Listen, Watch, getElement, getShadowRootElement, Toggle\n} from 'super-custom-elements';\n\n\n// Assets\nimport MenuIcon from '../../../assets/svg/burgerG.svg';\nimport CloseIcon from '../../../assets/svg/close-icon-black.svg';\n\n// Functions\nimport { fetchMenuItems } from '../../../functions/apiHelpers';\nimport { getFocusableElementsInsideElement } from '../../../functions/guiHelpers';\nimport { setCookie } from '../../../functions/cookieHelpers';\n\n\ninterface MainMenuOptions 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\n@Component({\n tag: 'main-menu',\n template: import('./main-menu.html'),\n style: import('./main-menu.scss')\n})\n\nexport class MainMenu extends CustomElement {\n private static readonly elementSelector = 'main-menu';\n private menuButton: HTMLButtonElement;\n private menuTitle: HTMLSpanElement;\n private menuIcon: HTMLSpanElement;\n private closeIcon: HTMLSpanElement;\n private menuContainer: HTMLElement;\n private menuItemListContainer: HTMLElement;\n private menuActionsRow: HTMLElement;\n\n @Prop() id: string;\n @Prop() language: string;\n @Prop() environment: string;\n @Prop() signinurl: string;\n @Prop() signouturl: string;\n @Prop() norwegianurl: string;\n @Prop() englishurl: string;\n @Toggle() isloggedin: boolean;\n @Toggle() showmenu: boolean;\n @Toggle() hasAuthenticationFunction: boolean;\n @Toggle() hasLanguageSelectFunctions: boolean;\n @Prop() menuitems: Array<MenuItem>;\n @Dispatch('onSignInClick') onSignInClick: DispatchEmitter;\n @Dispatch('onSignOutClick') onSignOutClick: DispatchEmitter;\n @Dispatch('onNorwegianLanguageSelect') onNorwegianLanguageSelect: DispatchEmitter;\n @Dispatch('onEnglishLanguageSelect') onEnglishLanguageSelect: DispatchEmitter;\n\n\n constructor() {\n super();\n this.clickOutsideMenuContainer = this.clickOutsideMenuContainer.bind(this);\n }\n\n setup(options?: MainMenuOptions): void {\n this.connect(options.container);\n if (options.id) {\n this.id = options.id;\n }\n }\n\n connectedCallback() {\n this.menuButton = getShadowRootElement(this, '#menu-toggle-button');\n this.menuTitle = getShadowRootElement(this, '#menu-title');\n this.menuIcon = getShadowRootElement(this, '#menu-icon');\n this.closeIcon = getShadowRootElement(this, '#close-icon');\n this.menuContainer = getShadowRootElement(this, '#menu-container');\n this.menuItemListContainer = getShadowRootElement(this, '#menu-item-list-container');\n this.menuActionsRow = getShadowRootElement(this, '#menu-actions-row');\n this.menuIcon.innerHTML = MenuIcon;\n this.closeIcon.innerHTML = CloseIcon;\n\n this.showmenu ? this.menuIcon.classList.add('hidden') : this.closeIcon.classList.add('hidden');\n\n fetchMenuItems(this.language, this.environment).then(menuItems => {\n this.menuitems = menuItems;\n });\n\n this.menuButton.setAttribute('aria-label', this.language === 'en' ? 'Show menu' : 'Vis meny');\n\n if (this.menuTitle) {\n this.menuTitle.innerText = this.language === 'en' ? 'Menu' : 'Meny';\n }\n\n const hasAuthenticationUrls = this.signinurl && this.signouturl;\n if (hasAuthenticationUrls) {\n this.addAuthenticationLinks();\n }\n\n const supportsLanguages = this.englishurl && this.norwegianurl;\n if (supportsLanguages) {\n this.addLanguageSelectLinks();\n\n }\n document.addEventListener('click', this.clickOutsideMenuContainer);\n }\n\n disconnectedCallback() {\n document.removeEventListener('click', this.clickOutsideMenuContainer);\n }\n\n hideMenuContainer = () => {\n this.showmenu = false;\n }\n\n\n clickOutsideMenuContainer(event: MouseEvent) {\n const targetElement = event.composedPath()[0] as Element;\n targetElement.closest('#menu-container');\n if (targetElement.closest('#menu-container') || targetElement.closest('#menu-toggle-button')) return\n this.hideMenuContainer();\n }\n\n renderMenuItems = (menuItems: Array<MenuItem>, hierarchyLevel: number = 0, maxHierarchyLevel: number = 1) => {\n const menuItemsListElement = menuItems.map((menuItem: MenuItem) => {\n const subItems = menuItem.SubMenuItem && menuItem.SubMenuItem.length ? menuItem.SubMenuItem : null;\n const menuItemElement = `<a href=\"${menuItem.Url}\" tabindex=\"${this.showmenu ? null : '-1'}\">${menuItem.Name}</a>`;\n const subItemElements = subItems && hierarchyLevel + 1 <= maxHierarchyLevel ? this.renderMenuItems(subItems, hierarchyLevel + 1, maxHierarchyLevel) : '';\n return `<li>${menuItemElement}${subItemElements}</li>`;\n }).join('');\n return `<ul class=\"menuItemList hierarchy-level-${hierarchyLevel}\">${menuItemsListElement}</ul>`;\n }\n\n addAuthenticationLinks(hasAuthenticationFunction = false) {\n let loginToggleElement;\n const hasAuthenticationLinks = this.signouturl && this.signinurl;\n\n if (!hasAuthenticationLinks && !hasAuthenticationFunction) {\n return '';\n }\n\n if (hasAuthenticationFunction) {\n loginToggleElement = document.createElement(\"button\");\n loginToggleElement.addEventListener(\"click\", () => {\n this.isloggedin ? this.onSignOutClick.emit() : this.onSignInClick.emit();\n });\n } else {\n loginToggleElement = document.createElement(\"a\");\n loginToggleElement.href = this.isloggedin ? this.signouturl : this.signinurl;\n }\n\n // Remove previously added login toggle element if exists\n for (const childElement of this.menuActionsRow.children) {\n if (childElement.getAttribute('id') === loginToggleElement.id) {\n childElement.remove()\n }\n }\n\n if (!this.showmenu){\n loginToggleElement.setAttribute('tabindex', '-1');\n }\n\n // Add login toggle element\n this.menuActionsRow.appendChild(loginToggleElement);\n }\n\n addLanguageSelectLinks(hasLanguageSelectFunctions = false) {\n let languageToggleElement;\n const hasLanguageSelectLinks = this.norwegianurl && this.englishurl;\n\n if (!hasLanguageSelectLinks && !hasLanguageSelectFunctions) {\n return '';\n }\n\n if (hasLanguageSelectFunctions) {\n languageToggleElement = document.createElement(\"button\");\n languageToggleElement.addEventListener(\"click\", () => {\n this.language === 'en' ? this.onNorwegianLanguageSelect.emit() : this.onEnglishLanguageSelect.emit();\n });\n } else {\n languageToggleElement = document.createElement(\"a\");\n languageToggleElement.href = this.language === 'en' ? this.norwegianurl : this.englishurl;\n }\n\n languageToggleElement.innerText = this.language === 'en' ? 'Norsk' : 'English';\n languageToggleElement.id = 'language-toggle-element';\n\n // Remove previously added language toggle element if exists\n for (const childElement of this.menuActionsRow.children) {\n if (childElement.getAttribute('id') === languageToggleElement.id) {\n childElement.remove()\n }\n }\n\n if (!this.showmenu){\n languageToggleElement.setAttribute('tabindex', '-1');\n }\n\n // Add language toggle element\n this.menuActionsRow.appendChild(languageToggleElement);\n }\n\n @Listen('click', '#menu-toggle-button')\n buttonClicked(event: MouseEvent) {\n this.showmenu = !this.showmenu;\n }\n\n @Watch('hasauthenticationfunction')\n hasAuthenticationFunctionChanged() {\n if (this.hasAuthenticationFunction) {\n this.addAuthenticationLinks(true);\n }\n }\n\n @Watch('isloggedin') \n isLoggedInChanged() {\n this.addAuthenticationLinks(this.hasAuthenticationFunction); \n }\n\n @Watch('haslanguageselectfunctions')\n hasLanguageSelectFunctionsChanged() {\n if (this.hasLanguageSelectFunctions) {\n this.addLanguageSelectLinks(true);\n }\n }\n\n @Watch('language')\n languageChanged() {\n this.addAuthenticationLinks(this.hasAuthenticationFunction);\n this.addLanguageSelectLinks(this.hasLanguageSelectFunctions);\n fetchMenuItems(this.language, this.environment).then(menuItems => {\n this.menuitems = menuItems;\n });\n if (this.menuTitle) {\n this.menuTitle.innerText = this.language === 'en' ? 'Menu' : 'Meny';\n }\n this.menuButton.setAttribute('aria-label', this.language === 'en' ? 'Show menu' : 'Vis meny');\n }\n\n @Watch('showmenu')\n showMenuChanged() {\n this.showmenu ? this.menuContainer.classList.add('open') : this.menuContainer.classList.remove('open');\n this.showmenu ? this.menuButton.classList.add('open') : this.menuButton.classList.remove('open');\n this.showmenu ? this.menuItemListContainer.classList.add('open') : this.menuItemListContainer.classList.remove('open');\n this.showmenu ? this.menuActionsRow.classList.add('open') : this.menuActionsRow.classList.remove('open');\n this.showmenu ? this.menuIcon.classList.add('hidden') : this.menuIcon.classList.remove('hidden');\n this.showmenu ? this.closeIcon.classList.remove('hidden') : this.closeIcon.classList.add('hidden');\n const focusableMenuContainerElements = getFocusableElementsInsideElement(this.menuContainer);\n focusableMenuContainerElements.forEach(focusableElement => {\n if (!this.showmenu){\n focusableElement.setAttribute('tabindex', '-1');\n } else {\n focusableElement.removeAttribute('tabindex');\n }\n });\n }\n\n @Watch('menuitems')\n menuItemsChanged() {\n if (this.menuitems && this.menuitems.length) {\n this.menuItemListContainer.innerHTML = this.renderMenuItems(this.menuitems);\n }\n }\n\n public static setup(selector: string, options: MainMenuOptions) {\n const element = getElement<MainMenu>(selector);\n\n if (options.onClick) {\n element.addEventListener('menuButtonClick', options.onClick);\n }\n if (options.active) {\n element.showmenu = options.active;\n }\n }\n}\n","// Dependencies\nimport {\n Component,\n CustomElement,\n CustomElementOptions,\n Prop,\n Dispatch,\n DispatchEmitter,\n Watch,\n getElement,\n getShadowRootElement,\n Toggle\n} from \"super-custom-elements\";\n\n// Components\nimport { MainSearchField } from \"./main-search-field/main-search-field\";\nimport { SearchTypeSelector } from \"./search-type-selector/search-type-selector\";\nimport { DownloadItems } from \"./download-items/download-items\";\nimport { MapItems } from \"./map-items/map-items\";\nimport { UserAccount } from \"./user-account/user-account\";\nimport { MainMenu } from \"./main-menu/main-menu\";\n\n// Assets\nimport GeonorgeLogo from \"../../assets/svg/geonorge-navbar-logo.svg\";\nimport GeonorgeLogoTest from \"../../assets/svg/geonorge-navbar-logo_test.svg\";\nimport GeonorgeLogoDev from \"../../assets/svg/geonorge-navbar-logo_dev.svg\";\n\n// Helpers\nimport { getGeonorgeUrl } from \"../../functions/urlHelpers\";\nimport { getLanguage, setCookie } from \"../../functions/cookieHelpers\";\ninterface MainNavigationOptions extends CustomElementOptions {\n active?: boolean;\n onClick?: () => void;\n onSearch?: () => void;\n onOpenEmptyMapItemsList?: () => void;\n onOpenEmptyDownloadItemsList?: () => void;\n onSearchTypeChange?: () => void;\n onSignInClick?: () => void;\n onSignOutClick?: () => void;\n onNorwegianLanguageSelect?: () => void;\n onEnglishLanguageSelect?: () => void;\n onDownloadItemsChange?: () => void;\n onMapItemsChange?: () => void;\n onUserAccountClick?: () => void;\n}\n\ninterface MenuItem extends Object {\n Name: string;\n SubMenuItem: Array<MenuItem>;\n Url: string;\n}\n\n@Component({\n tag: \"main-navigation\",\n template: import(\"./main-navigation.html\"),\n style: import(\"./main-navigation.scss\")\n})\nexport class MainNavigation extends CustomElement {\n private static readonly elementSelector = \"main-navigation\";\n private searchField: HTMLInputElement;\n private searchTypeSelector: HTMLElement;\n private logoElement: HTMLAnchorElement;\n private mainMenu: HTMLElement;\n private userAccount: HTMLElement;\n private mapItemsElement: HTMLElement;\n private downloadItemsElement: HTMLElement;\n\n @Prop() id: string;\n @Prop() environment: string;\n @Prop() language: string;\n @Prop() searchstring: string;\n @Prop() searchtype: string;\n @Prop() metadataresultsfound: string;\n @Prop() articlesresultsfound: string;\n @Prop() signinurl: string;\n @Prop() signouturl: string;\n @Prop() englishurl: string;\n @Prop() norwegianurl: string;\n @Prop() maincontentid: string;\n @Prop() organization: string\n @Prop() userinfo: string;\n @Toggle() isloggedin: boolean;\n @Toggle() showmenu: boolean;\n @Toggle() showsearchtypeselector: boolean;\n @Toggle() staticposition: boolean;\n @Toggle() noshadow: boolean;\n @Dispatch(\"onSearch\") onSearch: DispatchEmitter;\n @Dispatch(\"onSearchTypeChange\") onSearchTypeChange: DispatchEmitter;\n @Dispatch(\"onSignInClick\") onSignInClick: DispatchEmitter;\n @Dispatch(\"onSignOutClick\") onSignOutClick: DispatchEmitter;\n @Dispatch(\"onNorwegianLanguageSelect\") onNorwegianLanguageSelect: DispatchEmitter;\n @Dispatch(\"onEnglishLanguageSelect\") onEnglishLanguageSelect: DispatchEmitter;\n @Dispatch(\"onDownloadItemsChange\") onDownloadItemsChange: DispatchEmitter;\n @Dispatch(\"onMapItemsChange\") onMapItemsChange: DispatchEmitter;\n\n constructor() {\n super();\n }\n\n setup(options?: MainNavigationOptions): void {\n this.connect(options.container);\n if (options.id) {\n this.id = options.id;\n }\n }\n\n getGeonorgeLogoVariant(environment: string) {\n switch (environment) {\n case \"dev\":\n return GeonorgeLogoDev;\n case \"test\":\n return GeonorgeLogoTest;\n default:\n return GeonorgeLogo;\n }\n }\n\n shouldShowSearchTypeSelector(showsearchtypeselector) {\n return showsearchtypeselector?.toString() === \"\" || showsearchtypeselector?.toString() === \"true\";\n }\n\n connectedCallback() {\n this.logoElement = getShadowRootElement(this, \"#main-navigation-logo\");\n this.searchField = getShadowRootElement(this, \"main-search-field\");\n this.mainMenu = getShadowRootElement(this, \"#main-menu\");\n this.mapItemsElement = getShadowRootElement(this, \"#map-items\");\n this.downloadItemsElement = getShadowRootElement(this, \"#download-items\");\n this.userAccount = getShadowRootElement(this, \"#user-account\");\n this.searchTypeSelector ? this.searchField.classList.add(\"wide\") : this.searchField.classList.remove(\"wide\");\n\n if (this.searchField) {\n this.searchField.setAttribute(\n \"searchstring\",\n this.searchstring && this.searchstring.length ? this.searchstring : \"\"\n );\n this.searchField.setAttribute(\"environment\", this.environment);\n this.searchField.setAttribute(\"language\", this.language);\n }\n\n this.mapItemsElement.setAttribute(\"environment\", this.environment);\n this.mapItemsElement.setAttribute(\"language\", this.language);\n\n this.downloadItemsElement.setAttribute(\"environment\", this.environment);\n this.downloadItemsElement.setAttribute(\"language\", this.language);\n\n this.logoElement.innerHTML = this.getGeonorgeLogoVariant(this.environment);\n this.logoElement.href = getGeonorgeUrl(this.language, this.environment);\n\n if (this.staticposition) {\n getShadowRootElement(this, \"#main-navigation\").classList.add(\"static-position\");\n getShadowRootElement(this, \"main-menu\").setAttribute(\"staticposition\", \"\");\n }\n\n if (this.noshadow) {\n getShadowRootElement(this, \"#main-navigation\").classList.add(\"no-shadow\");\n }\n\n // Pass properties\n const language = this.language ? this.language : getLanguage();\n if (language) {\n this.mainMenu.setAttribute(\"language\", language);\n }\n if(this.organization) {\n this.userAccount.setAttribute(\"organization\", this.organization);\n }\n if(this.userinfo) {\n this.userAccount.setAttribute(\"userinfo\", this.userinfo);\n }\n if (this.environment) {\n this.mainMenu.setAttribute(\"environment\", this.environment);\n }\n if (this.englishurl) {\n this.mainMenu.setAttribute(\"englishurl\", this.englishurl);\n }\n if (this.norwegianurl) {\n this.mainMenu.setAttribute(\"norwegianurl\", this.norwegianurl);\n }\n if (this.signinurl) {\n this.userAccount.setAttribute(\"signinurl\", this.signinurl);\n }\n if (this.signouturl) {\n this.userAccount.setAttribute(\"signouturl\", this.signouturl);\n }\n if (this.isloggedin) {\n this.userAccount.setAttribute(\"isLoggedIn\", \"\");\n }\n if (this.shouldShowSearchTypeSelector(this.showsearchtypeselector)) {\n if (!this.searchTypeSelector) { \n this.searchTypeSelector = document.createElement(\"search-type-selector\"); \n }\n if (this.metadataresultsfound) {\n this.searchTypeSelector.setAttribute(\"metadataresultsfound\", this.metadataresultsfound);\n }\n if (this.articlesresultsfound) {\n this.searchTypeSelector.setAttribute(\"articlesresultsfound\", this.articlesresultsfound);\n }\n if (this.searchtype) {\n this.searchTypeSelector.setAttribute(\"searchtype\", this.searchtype);\n }\n if (language) {\n this.searchTypeSelector.setAttribute(\"language\", language);\n }\n if (!this.searchTypeSelector) {\n this.searchField.parentNode.insertBefore(this.searchTypeSelector, this.searchField.nextSibling);\n }\n } \n\n const mapItems = new MapItems();\n const downloadItemsElement = new DownloadItems();\n const mainSearchField = new MainSearchField();\n const userAccount = new UserAccount();\n const mainMenu = new MainMenu();\n }\n \n\n @Watch(\"isloggedin\")\n isLoggedInChanged() {\n if (this.isloggedin) {\n setCookie('_loggedIn', 'true');\n this.userAccount.setAttribute(\"isLoggedIn\", \"\");\n } else {\n setCookie('_loggedIn', 'false');\n this.userAccount.removeAttribute(\"isLoggedIn\");\n }\n }\n @Watch(\"organization\")\n organizationChanged() {\n this.userAccount.setAttribute(\"organization\", this.organization);\n }\n @Watch(\"userinfo\")\n userinfoChanged() {\n this.userAccount.setAttribute(\"userinfo\", this.userinfo);\n }\n @Watch(\"language\")\n languageChanged() {\n this.mainMenu.setAttribute(\"language\", this.language);\n this.mapItemsElement.setAttribute(\"language\", this.language);\n this.userAccount.setAttribute(\"language\", this.language);\n this.downloadItemsElement.setAttribute(\"language\", this.language);\n if (this.shouldShowSearchTypeSelector(this.showsearchtypeselector)) {\n this.searchTypeSelector.setAttribute(\"language\", this.language);\n }\n if (this.searchField) {\n this.searchField.setAttribute(\"language\", this.language);\n }\n\n const mainContentLinkText = getShadowRootElement(this, \"#main-content-link-text\");\n if (this.maincontentid?.length) {\n mainContentLinkText.innerText = this.language === \"en\" ? \"Skip to main content\" : \"Hopp til hovedinnhold\";\n }\n }\n\n @Watch(\"environment\")\n environmentChanged() {\n this.mainMenu.setAttribute(\"environment\", this.environment);\n this.userAccount.setAttribute(\"environment\", this.environment);\n this.mapItemsElement.setAttribute(\"environment\", this.environment);\n this.downloadItemsElement.setAttribute(\"environment\", this.environment);\n this.logoElement.innerHTML = this.getGeonorgeLogoVariant(this.environment);\n this.logoElement.href = getGeonorgeUrl(this.language, this.environment);\n if (this.searchField) {\n this.searchField.setAttribute(\"environment\", this.environment);\n }\n }\n\n @Watch(\"metadataresultsfound\")\n metadataResultsFoundChanged() {\n if (this.shouldShowSearchTypeSelector(this.showsearchtypeselector)) {\n this.searchTypeSelector.setAttribute(\"metadataresultsfound\", this.metadataresultsfound);\n }\n }\n\n @Watch(\"articlesresultsfound\")\n articlesResultsFoundChanged() {\n if (this.shouldShowSearchTypeSelector(this.showsearchtypeselector)) {\n this.searchTypeSelector.setAttribute(\"articlesresultsfound\", this.articlesresultsfound);\n }\n }\n\n @Watch(\"searchtype\")\n searchTypeChanged() {\n if (this.shouldShowSearchTypeSelector(this.showsearchtypeselector)) {\n this.searchTypeSelector.setAttribute(\"searchtype\", this.searchtype);\n }\n }\n\n @Watch(\"showsearchtypeselector\")\n showSearchTypeSelectorChanged() {\n const language = this.language ? this.language : getLanguage();\n\n \n if (this.shouldShowSearchTypeSelector(this.showsearchtypeselector)) {\n this.searchField.setAttribute(\"showsearchtypeselector\", \"\")\n if (!this.searchTypeSelector) {\n this.searchTypeSelector = document.createElement(\"search-type-selector\");\n this.searchField.classList.add(\"wide\");\n }\n if (this.metadataresultsfound) {\n this.searchTypeSelector.setAttribute(\"metadataresultsfound\", this.metadataresultsfound);\n }\n if (this.articlesresultsfound) {\n this.searchTypeSelector.setAttribute(\"articlesresultsfound\", this.articlesresultsfound);\n }\n if (this.searchtype) {\n this.searchTypeSelector.setAttribute(\"searchtype\", this.searchtype);\n }\n if (language) {\n this.searchTypeSelector.setAttribute(\"language\", language);\n }\n this.searchField.parentNode.insertBefore(this.searchTypeSelector, this.searchField.nextSibling);\n const searchTypeSelector = new SearchTypeSelector();\n } else {\n this.searchField.removeAttribute(\"showsearchtypeselector\")\n if (this.searchTypeSelector && this.searchTypeSelector.parentNode === this.searchField.parentNode) {\n this.searchField.parentNode.removeChild(this.searchTypeSelector);\n }\n }\n }\n\n @Watch(\"searchstring\")\n searchStringChanged() {\n if (this.searchField) {\n this.searchField.setAttribute(\n \"searchstring\",\n this.searchstring && this.searchstring.length ? this.searchstring : \"\"\n );\n }\n }\n\n @Watch(\"maincontentid\")\n mainContentIdChanged() {\n const mainContentLink = getShadowRootElement(this, \"#main-content-link\");\n if (this.maincontentid?.length) {\n mainContentLink.setAttribute(\"href\", `#${this.maincontentid}`);\n } else {\n mainContentLink.remove();\n }\n }\n\n public static setup(selector: string, options: MainNavigationOptions) {\n const element = getElement<MainNavigation>(selector);\n if (options.onSearch) {\n setTimeout(() => {\n const mainSearchField = getShadowRootElement<MainSearchField>(element, \"main-search-field\");\n mainSearchField.addEventListener(\"onSearch\", options.onSearch);\n mainSearchField.setAttribute(\"preventRedirect\", \"\");\n });\n }\n if (options.onOpenEmptyMapItemsList) {\n setTimeout(() => {\n const mapItemsElement = getShadowRootElement<MapItems>(element, \"map-items\");\n mapItemsElement.addEventListener(\"onOpenEmptyMapItemsList\", options.onOpenEmptyMapItemsList);\n mapItemsElement.setAttribute(\"preventRedirect\", \"\");\n });\n }\n if (options.onOpenEmptyDownloadItemsList) {\n setTimeout(() => {\n const downloadItemsElement = getShadowRootElement<DownloadItems>(element, \"download-items\");\n downloadItemsElement.addEventListener(\n \"onOpenEmptyDownloadItemsList\",\n options.onOpenEmptyDownloadItemsList\n );\n downloadItemsElement.setAttribute(\"preventRedirect\", \"\");\n });\n }\n if (options.onSearchTypeChange) {\n setTimeout(() => {\n const searchTypeSelector = getShadowRootElement<SearchTypeSelector>(element, \"search-type-selector\");\n searchTypeSelector.addEventListener(\"onSearchTypeChange\", options.onSearchTypeChange);\n });\n }\n if (options.onSignInClick && options.onSignOutClick) {\n setTimeout(() => {\n const userAccount = getShadowRootElement<UserAccount>(element, \"user-account\");\n userAccount.setAttribute(\"hasAuthenticationFunction\", \"\");\n userAccount.addEventListener(\"onSignInClick\", options.onSignInClick);\n userAccount.addEventListener(\"onSignOutClick\", options.onSignOutClick);\n });\n }\n if (options.onNorwegianLanguageSelect) {\n setTimeout(() => {\n const mainMenu = getShadowRootElement<MainMenu>(element, \"main-menu\");\n mainMenu.setAttribute(\"hasLanguageSelectFunctions\", \"\");\n mainMenu.addEventListener(\"onNorwegianLanguageSelect\", options.onNorwegianLanguageSelect);\n });\n }\n if (options.onEnglishLanguageSelect) {\n setTimeout(() => {\n const mainMenu = getShadowRootElement<MainMenu>(element, \"main-menu\");\n mainMenu.setAttribute(\"hasLanguageSelectFunctions\", \"\");\n mainMenu.addEventListener(\"onEnglishLanguageSelect\", options.onEnglishLanguageSelect);\n });\n }\n if (options.onDownloadItemsChange) {\n setTimeout(() => {\n const downloadItemsElement = getShadowRootElement<DownloadItems>(element, \"download-items\");\n downloadItemsElement.addEventListener(\"onDownloadItemsChange\", options.onDownloadItemsChange);\n });\n }\n if (options.onMapItemsChange) {\n setTimeout(() => {\n const mapItemsElement = getShadowRootElement<MapItems>(element, \"map-items\");\n mapItemsElement.addEventListener(\"onMapItemsChange\", options.onMapItemsChange);\n });\n }\n }\n}\n","import {\n Component, CustomElement, CustomElementOptions, Prop, Dispatch, DispatchEmitter,\n Listen, Watch, getElement, getShadowRootElement, Toggle\n} from 'super-custom-elements';\n\n// Interfaces\nimport { SearchResultsForType, SearchResultsResponseForType } from '../../../interfaces/search';\n\n// Functions\nimport { fetchDropdownSearchResults } from '../../../functions/apiHelpers';\nimport { renderDropdownResultLink, getKartkatalogUrl } from '../../../functions/urlHelpers';\n\n// Assets\nimport SearchIcon from '../../../assets/svg/search-icon.svg';\n\ninterface MainSearchFieldOptions extends CustomElementOptions {\n active?: boolean,\n value?: string,\n onSearchStringChange?: () => void,\n onClick?: () => void,\n onSearch?: () => void\n}\n\n@Component({\n tag: 'main-search-field',\n template: import('./main-search-field.html'),\n style: import('./main-search-field.scss')\n})\n\nexport class MainSearchField extends CustomElement {\n private static readonly elementSelector = 'main-search-field';\n private searchField: HTMLInputElement;\n private searchFieldLabel: HTMLInputElement;\n private searchButton: HTMLInputElement;\n private searchResultsContainer: HTMLInputElement;\n\n @Prop() id: string;\n @Prop() environment: string;\n @Toggle() showSearchResults: boolean;\n @Toggle() preventRedirect: boolean;\n @Prop() searchstring: string = '';\n @Prop() language: string;\n @Prop() searchResultsResponses: Array<SearchResultsResponseForType>;\n @Dispatch('searchResultsChanged') onTextChanged: DispatchEmitter;\n @Dispatch('onSearchStringChange') onSearchStringChange: DispatchEmitter;\n @Dispatch('onSearch') onSearch: DispatchEmitter;\n\n constructor() {\n super();\n this.clickOutsideSearchResultsContainer = this.clickOutsideSearchResultsContainer.bind(this);\n }\n\n setup(options?: MainSearchFieldOptions): void {\n this.connect(options.container);\n if (options.id) {\n this.id = options.id;\n }\n }\n\n connectedCallback() {\n this.searchField = getShadowRootElement(this, '#main-search-input');\n this.searchFieldLabel = getShadowRootElement(this, '#main-search-input-label');\n this.searchButton = getShadowRootElement(this, '#search-submit-button');\n\n this.searchFieldLabel.innerHTML = this.language === 'en' ? 'Search' : 'Søk';\n\n this.searchButton.innerHTML = SearchIcon;\n\n this.searchResultsContainer = getShadowRootElement(this, '#search-results-container');\n this.searchResultsContainer.style.maxHeight = `${window.innerHeight - 61}px`;\n if (this.searchField && this.searchstring) {\n this.searchField.setAttribute('value', this.searchstring);\n }\n document.addEventListener('click', this.clickOutsideSearchResultsContainer);\n }\n\n disconnectedCallback() {\n document.removeEventListener('click', this.clickOutsideSearchResultsContainer);\n }\n\n renderSearchResultsForType = (searchResultsResponseForType: SearchResultsResponseForType) => {\n const searchResultsTypeName = searchResultsResponseForType.Results[0].TypeTranslated;\n const searchResultsType = searchResultsResponseForType.searchResultsType;\n const searchResultsListElements = searchResultsResponseForType.Results.map((searchResult: SearchResultsForType) => {\n return `<li>${renderDropdownResultLink(searchResult, searchResultsType, this.searchstring, this.environment)}</li>`;\n }).join('');\n\n const searchResultsTypeLink = searchResultsType === 'articles'\n ? `${getKartkatalogUrl(this.environment)}/articles?text=${this.searchstring}`\n : `${getKartkatalogUrl(this.environment)}/metadata?text=${this.searchstring}&type=${searchResultsType}`;\n\n return `\n <div class=\"search-results-for-type\">\n <a href=\"${searchResultsTypeLink}\" class=\"search-results-for-type-title\">\n ${searchResultsTypeName}\n <span class=\"search-results-for-type-number-badge\">\n ${searchResultsResponseForType.NumFound}\n </span>\n </a>\n <ul class=\"search-results-for-type-list\">\n ${searchResultsListElements}\n </ul>\n </div>`;\n }\n\n renderSearchResults = (searchResultsResponses: Array<SearchResultsResponseForType>) => {\n const searchResultsListElements = searchResultsResponses.map((searchResultsResponseForType: SearchResultsResponseForType) => {\n return this.renderSearchResultsForType(searchResultsResponseForType);\n }).join('');\n return `<div>${searchResultsListElements}</div>`;\n }\n\n hideSearchResultsContainer = () => {\n this.showSearchResults = false;\n }\n\n clickOutsideSearchResultsContainer(event: MouseEvent) {\n const targetElement = event.composedPath()[0] as Element;\n if (targetElement.closest('#search-results-container') || targetElement.closest('#main-search-input')) {\n const closestLink = targetElement.closest('a');\n if (closestLink?.href?.length) {\n this.hideSearchResultsContainer();\n }\n return\n }\n this.hideSearchResultsContainer();\n }\n\n submitSearch() {\n this.hideSearchResultsContainer();\n if (this.preventRedirect) {\n this.onSearch.emit({\n detail: {\n searchString: this.searchstring\n }\n });\n } else {\n window.location.href = `${getKartkatalogUrl(this.environment)}/metadata?text=${this.searchstring?.length ? encodeURI(this.searchstring.toString()) : ''}`\n }\n\n }\n\n @Listen('keyup', 'input')\n searchFieldKeyUp(event: KeyboardEvent) {\n if (event.key && event.key === 'Enter' && this.searchstring?.toString().length) {\n this.submitSearch()\n } else {\n this.searchstring = this.searchField?.value?.toString() || '';\n }\n }\n\n @Listen('click', '#search-submit-button')\n onSearchSubmitted(event: MouseEvent) {\n this.submitSearch();\n }\n\n\n @Watch('searchstring')\n searchStringChanged() {\n if (this.searchField) {\n this.searchField.setAttribute('value', this.searchstring)\n }\n fetchDropdownSearchResults(this.searchstring, this.language, this.environment).then(searchResultsResponses => {\n this.searchResultsResponses = searchResultsResponses;\n });\n }\n\n @Watch('language')\n languageChanged() {\n if (this.searchField) {\n this.searchField.setAttribute('aria-label', this.language === 'en' ? 'Enter your search query' : 'Skriv inn det du vil søke etter');\n }\n if (this.searchFieldLabel) {\n this.searchFieldLabel.innerText = this.language === 'en' ? 'Search' : 'Søk';\n }\n if (this.searchButton) {\n this.searchButton.setAttribute('aria-label', this.language === 'en' ? 'Search' : 'Søk');\n }\n }\n\n\n @Watch('showsearchresults')\n showSearchResultsChanged() {\n this.showSearchResults ? this.searchResultsContainer.classList.add('open') : this.searchResultsContainer.classList.remove('open');\n }\n\n @Watch('searchResultsResponses')\n searchResultsResponseChanged() {\n const searchResults = this.searchResultsResponses && this.searchResultsResponses.length ? this.searchResultsResponses.filter(searchResultsResponseForType => {\n return searchResultsResponseForType.NumFound > 0\n }) : [];\n this.searchResultsContainer.innerHTML = searchResults.length ? this.renderSearchResults(searchResults) : '';\n this.showSearchResults = searchResults.length ? true : false;\n }\n\n public static setup(selector: string, options: MainSearchFieldOptions) {\n const element = getElement<MainSearchField>(selector);\n\n if (options.onClick) {\n element.addEventListener('searchButtonClick', options.onClick);\n }\n if (options.active) {\n element.showSearchResults = options.active;\n }\n }\n}\n","// Dependencies\nimport {\n Component, CustomElement, CustomElementOptions, Prop, Dispatch, DispatchEmitter,\n Listen, Watch, getElement, getShadowRootElement, Toggle\n} from 'super-custom-elements';\n\n\n// Assets\nimport MapIcon from '../../../assets/svg/location.svg';\nimport TrashIcon from '../../../assets/svg/trash-icon.svg';\n\n// Functions\nimport { getMapItems, getMapItemsCount, removeMapItem } from '../../../functions/mapItemHelpers';\nimport { getKartkatalogUrl } from '../../../functions/urlHelpers';\nimport { getFocusableElementsInsideElement } from '../../../functions/guiHelpers';\n\ninterface MapItem extends Object {\n Title: string,\n Uuid: string\n}\n\ninterface MapItemsOptions extends CustomElementOptions {\n active?: boolean,\n onMapItemsChange?: () => void\n}\n\n@Component({\n tag: 'map-items',\n template: import('./map-items.html'),\n style: import('./map-items.scss')\n})\n\nexport class MapItems extends CustomElement {\n private static readonly elementSelector = 'map-items';\n private mapButton: HTMLButtonElement;\n private mapIcon: HTMLElement;\n private mapIconCounter: HTMLSpanElement;\n private mapItemListContainer: HTMLDivElement;\n private mapItems: Array<MapItem>;\n\n @Prop() id: string;\n @Prop() environment: string;\n @Prop() language: string;\n @Toggle() showList: boolean;\n @Toggle() preventRedirect: boolean;\n @Dispatch('onOpenEmptyMapItemsList') onOpenEmptyMapItemsList: DispatchEmitter;\n @Dispatch('onMapItemsChange') onMapItemsChange: DispatchEmitter;\n\n constructor() {\n super();\n this.clickOutsideMapItemsContainer = this.clickOutsideMapItemsContainer.bind(this);\n this.updateDomElements = this.updateDomElements.bind(this);\n this.getUpdatedMapItems = this.getUpdatedMapItems.bind(this);\n }\n\n setup(options?: MapItemsOptions): void {\n this.connect(options.container);\n if (options.id) {\n this.id = options.id;\n }\n }\n\n connectedCallback() {\n this.mapButton = getShadowRootElement(this, '#map-toggle-button');\n this.mapIcon = getShadowRootElement(this, '#map-toggle-button-icon');\n this.mapIconCounter = getShadowRootElement(this, '#map-toggle-button-counter');\n this.mapItemListContainer = getShadowRootElement(this, '#map-item-list-container');\n\n this.getUpdatedMapItems();\n this.mapIcon.innerHTML = MapIcon;\n this.renderMapItemsCounter();\n\n document.addEventListener('click', this.clickOutsideMapItemsContainer);\n document.addEventListener('mapItemsChanged', this.updateDomElements);\n }\n\n updateDomElements() {\n this.getUpdatedMapItems();\n this.renderMapItems(this.mapItems);\n this.renderMapItemsCounter();\n }\n\n getUpdatedMapItems() {\n this.mapItems = getMapItems();\n }\n\n disconnectedCallback() {\n document.removeEventListener('click', this.clickOutsideMapItemsContainer);\n }\n\n hideListContainer = () => {\n this.showList = false;\n }\n\n clickOutsideMapItemsContainer(event: MouseEvent) {\n const targetElement = event.composedPath()[0] as Element;\n if (targetElement.closest('#map-item-list-container') || targetElement.closest('#map-toggle-button')) return\n this.hideListContainer();\n }\n\n renderMapItemsCounter() {\n const mapItemsCount = getMapItemsCount();\n if (mapItemsCount) {\n this.mapIconCounter.innerHTML = mapItemsCount.toString();\n this.mapIconCounter.classList.remove('hidden');\n this.mapButton.setAttribute(\n 'aria-label',\n this.language === 'en' \n ? `Show ${mapItemsCount} map ${mapItemsCount === 1 ? 'item' : 'items'} in list`\n : `Vis liste med ${mapItemsCount} ${mapItemsCount === 1 ? 'element' : 'elementer'} lagt til i kart`\n );\n } else {\n this.mapIconCounter.innerHTML = '';\n this.mapIconCounter.classList.add('hidden');\n this.mapButton.setAttribute(\n 'aria-label',\n this.language === 'en'\n ? 'Show map'\n : 'Vis kart'\n );\n }\n }\n\n renderMapItems = (mapItems: Array<MapItem>) => {\n const mapItemsListElement = mapItems.map((mapItem: MapItem) => {\n if (mapItem) {\n const mapItemElement = document.createElement('span');\n mapItemElement.innerText = mapItem.Title;\n\n const removeMapItemElement = document.createElement('button');\n removeMapItemElement.classList.add('list-icon');\n removeMapItemElement.innerHTML = TrashIcon;\n removeMapItemElement.dataset['mapItem'] = JSON.stringify(mapItem);\n removeMapItemElement.setAttribute('aria-label', this.language === 'en' ? `Remove ${mapItem.Title} from map` : `Fjern ${mapItem.Title} fra kart`);\n if (!this.showList){\n removeMapItemElement.setAttribute('tabindex', '-1');\n }\n mapItemElement.appendChild(removeMapItemElement);\n\n return `<li>${mapItemElement.innerHTML}</li>`;\n } else return null;\n }).filter(mapItem => { return mapItem }).join('');\n let mapItemLinkElement;\n if (this.preventRedirect) {\n mapItemLinkElement = document.createElement('button');\n mapItemLinkElement.addEventListener(\"click\", () => {\n this.onOpenEmptyMapItemsList.emit();\n });\n } else {\n mapItemLinkElement = document.createElement('a');\n mapItemLinkElement.href = `${getKartkatalogUrl(this.environment)}/kart`;\n }\n mapItemLinkElement.innerText = this.language === 'en' ? 'Show map' : 'Vis kart';\n mapItemLinkElement.classList.add('page-link-element');\n if (!this.showList){\n mapItemLinkElement.setAttribute('tabindex', '-1');\n }\n this.mapItemListContainer.innerHTML = !!mapItemsListElement?.length ? `<ul>${mapItemsListElement}</ul>` : '';\n this.mapItemListContainer.prepend(mapItemLinkElement);\n }\n\n @Listen('click', '#map-toggle-button')\n buttonClicked(event: MouseEvent) {\n\n if (this.mapItems && this.mapItems.length) {\n this.showList = !this.showList;\n } else {\n this.showList = false;\n if (this.preventRedirect) {\n this.onOpenEmptyMapItemsList.emit();\n } else {\n window.location.href = `${getKartkatalogUrl(this.environment)}/kart`\n }\n }\n }\n\n @Listen('click', '#map-item-list-container')\n removeMapItemClicked(event: MouseEvent) {\n const targetElement = event.composedPath()[0] as Element;\n targetElement.closest('#menu-container');\n const removeMapItemButtonElement = targetElement.closest('button');\n\n if (removeMapItemButtonElement) {\n const mapItem = removeMapItemButtonElement.dataset && removeMapItemButtonElement.dataset.mapItem ? JSON.parse(removeMapItemButtonElement.dataset.mapItem) : null;\n if (mapItem) {\n event.stopPropagation();\n removeMapItem(mapItem);\n this.getUpdatedMapItems();\n this.renderMapItems(this.mapItems);\n this.renderMapItemsCounter();\n if (!this.mapItems || !this.mapItems.length) {\n this.showList = false;\n }\n }\n if (this.onMapItemsChange){\n this.onMapItemsChange.emit({detail: this.onMapItemsChange});\n }\n }\n }\n\n @Watch('showlist')\n showMenuChanged() {\n this.showList ? this.mapItemListContainer.classList.add('open') : this.mapItemListContainer.classList.remove('open');\n this.showList ? this.mapButton.classList.add('open') : this.mapButton.classList.remove('open');\n const mapItemListContainerButtons = getFocusableElementsInsideElement(this.mapItemListContainer);\n mapItemListContainerButtons.forEach(button => {\n if (!this.showList){\n button.setAttribute('tabindex', '-1');\n } else {\n button.removeAttribute('tabindex');\n }\n });\n }\n\n @Watch('mapItems')\n mapItemsChanged() {\n if (this.mapItems && this.mapItems.length) {\n this.renderMapItems(this.mapItems);\n this.renderMapItemsCounter();\n }\n }\n\n @Watch('language')\n languageChanged() {\n if (this.mapItems && this.mapItems.length) {\n this.renderMapItems(this.mapItems);\n this.renderMapItemsCounter();\n }\n }\n\n @Watch('preventredirect')\n preventRedirectChanged() {\n if (this.mapItems && this.mapItems.length) {\n this.renderMapItems(this.mapItems);\n this.renderMapItemsCounter();\n }\n }\n\n public static setup(selector: string, options: MapItemsOptions) {\n const element = getElement<MapItems>(selector);\n if (options.active) {\n element.showList = options.active;\n }\n }\n}\n","import {\n Component, CustomElement, CustomElementOptions, Prop, Dispatch, DispatchEmitter,\n Listen, Watch, getElement, getShadowRootElement, Toggle\n} from 'super-custom-elements';\n\n\ninterface SearchTypeSelectorOptions extends CustomElementOptions {\n onSearchTypeChange?: () => void\n}\n\n@Component({\n tag: 'search-type-selector',\n template: import('./search-type-selector.html'),\n style: import('./search-type-selector.scss')\n})\n\nexport class SearchTypeSelector extends CustomElement {\n private static readonly elementSelector = 'search-type-selector';\n private searchTypeSelector: HTMLDivElement;\n private metadataNameElement: HTMLSpanElement;\n private metadataCounterElement: HTMLSpanElement;\n private articleNameElement: HTMLSpanElement;\n private articleCounterElement: HTMLSpanElement;\n\n @Prop() id: string;\n @Prop() metadataresultsfound: string;\n @Prop() articlesresultsfound: string;\n @Prop() language: string;\n @Prop() searchtype: string;\n @Dispatch('onSearchTypeChange') onSearchTypeChange: DispatchEmitter;\n\n constructor() {\n super();\n this.handleSearchTypeOnChange = this.handleSearchTypeOnChange.bind(this);\n\n }\n\n setup(options?: SearchTypeSelectorOptions): void {\n this.connect(options.container);\n if (options.id) {\n this.id = options.id;\n }\n }\n\n connectedCallback() {\n this.searchTypeSelector = getShadowRootElement(this, '#search-type-selector');\n\n this.metadataNameElement = getShadowRootElement(this, '#search-type-metadata-name');\n this.metadataCounterElement = getShadowRootElement(this, '#search-type-metadata-counter');\n this.articleNameElement = getShadowRootElement(this, '#search-type-article-name');\n this.articleCounterElement = getShadowRootElement(this, '#search-type-article-counter');\n\n this.searchTypeSelector.querySelectorAll('input[name=search-type]').forEach((element: HTMLInputElement) => {\n element.onchange = this.handleSearchTypeOnChange;\n });\n const selectedSearchTypeSelector = this.searchTypeSelector.querySelector(`input[value=${this.searchtype}]`);\n }\n\n disconnectedCallback() {\n }\n\n updateNameElements(language: string) {\n this.metadataNameElement.innerHTML = language === 'en' ? 'Map catalog' : 'Kartkatalogen';\n this.articleNameElement.innerHTML = language === 'en' ? 'Articles' : 'Artikler';\n }\n\n handleSearchTypeOnChange(event: InputEvent) {\n if (this.onSearchTypeChange) {\n const selectedElement = event.composedPath()[0] as HTMLInputElement;\n this.onSearchTypeChange.emit({\n detail: {\n value: selectedElement.value\n }\n });\n }\n }\n\n @Watch('language')\n languageChanged() {\n this.updateNameElements(this.language);\n }\n\n @Watch('metadataresultsfound')\n metadataResultsFoundChanged() {\n this.metadataCounterElement.innerHTML = this.metadataresultsfound;\n }\n\n @Watch('articlesresultsfound')\n articlesResultsFoundChanged() {\n this.articleCounterElement.innerHTML = this.articlesresultsfound;\n }\n\n @Watch('searchtype')\n searchTypeChanged() {\n const selectedSearchTypeSelector = <HTMLInputElement>this.searchTypeSelector.querySelector(`input[value=${this.searchtype}]`);\n if (selectedSearchTypeSelector){\n selectedSearchTypeSelector.checked = true;\n }\n }\n\n public static setup(selector: string, options: SearchTypeSelectorOptions) {\n const element = getElement<SearchTypeSelector>(selector);\n\n }\n}\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__(2936);\n"],"names":["root","factory","exports","module","define","amd","self","___CSS_LOADER_EXPORT___","push","id","cssWithMappingToString","list","toString","this","map","item","content","needLayer","concat","length","join","i","modules","media","dedupe","supports","layer","undefined","alreadyImportedModules","k","_k","cssMapping","btoa","base64","unescape","encodeURIComponent","JSON","stringify","data","sourceMapping","Component","args","target","tag","toKebabCase","prototype","constructor","name","customElement","super","props","showShadowRoot","shadow","shadowRoot","attachShadow","mode","observedAttributes","Object","keys","propsInit","x","attributeChangedCallback","oldValue","newValue","onAttributeChange","set","toCamelCase","watchAttributes","methodToCall","__connected","old","new","connectedCallback","render","addEventListeners","initializeProps","template","document","createElement","innerHTML","getStyle","Promise","appendChild","getExternalTemplate","cloneNode","markup","default","fragment","createRange","createContextualFragment","children","nodeName","firstChild","css","style","ready","resolve","_","customElements","get","CustomElement","HTMLElement","connect","selector","isConnected","querySelector","getElement","getShadowRootElement","Listen","eventName","methodName","listeners","handler","targetRoot","listener","eventTarget","addEventListener","e","call","Dispatch","propertyName","defineProperty","emit","options","evtName","toDotCase","dispatchEvent","CustomEvent","Prop","propName","attrName","getAttribute","value","tryParseInt","setAttribute","hasAttribute","prop","plainAttributes","forEach","v","cycleProps","getProps","attribValue","Toggle","attrValue","test","console","warn","removeAttribute","str","replace","toLowerCase","m","toUpperCase","parseInt","NaN","parseFloat","Watch","getKartkatalogApiUrl","environment","config","getConfig","kartkatalogApiUrl","getMinSideShortcutApiUrl","shortcutUrl","urlParameterString","URLSearchParams","url","minsideUrl","getMinSideShortcutUrl","fetchShortcutItem","token","apiUrl","fetchOptions","method","headers","Headers","Authorization","fetch","then","res","status","json","shortcutItem","error","postShortcutItem","body","deleteShortcutItem","getGeonorgeMenuUrl","language","selectedLanguageSlug","geonorgeUrl","fetchMenuItems","menuItems","fetchDropdownSearchResults","searchString","urlParameterStrings","dataset","series","service","servicelayer","software","articles","all","searchResultsType","searchResults","currentConfig","configure","getCookie","cname","ca","decodeURIComponent","cookie","split","c","charAt","substring","indexOf","setCookie","cvalue","exdays","domain","window","location","hostname","expireDate","Date","setTime","getTime","expires","toUTCString","getLanguage","setLanguage","getDownloadItems","localStorage","orderItems","Array","isArray","parse","filter","mapItem","getDownloadItemsCount","isKartkatalog","isLocalKartkatalogEnvironment","sessionStorage","downloadItemsCount","isNaN","getDownloadItemMetadata","itemUuid","removeDownloadItem","itemToRemove","selectedItems","itemToKeep","uuid","removeItem","orderItemsCount","getFocusableElementsInsideElement","element","querySelectorAll","getDocumentHeading","documentHeading","addGlobalStylesheet","styleElementId","styles","textContent","getElementById","head","removeInnerHTML","contains","removeChild","getMapItems","mapItems","getMapItemsCount","mapItemsCount","removeMapItem","Uuid","getKartkatalogUrl","kartkatalogUrl","getMinsideUrl","getGeonorgeUrl","getGeonorgeNedlastingUrl","nedlastingUrl","replaceAndAddSpace","text","replaceWith","RegExp","convertTextToUrlSlug","handleSearchResultsClick","pushToDataLayer","event","category","activity","renderDropdownResultLink","searchResult","resultType","ShowDetailsUrl","Title","DownloadItems","hideListContainer","showList","renderDownloadItems","downloadItems","downloadItemsListElement","downloadItem","downloadItemElement","innerText","removeDownloadItemElement","classList","add","downloadItemLinkElement","preventRedirect","onOpenEmptyDownloadItemsList","href","downloadItemListContainer","prepend","clickOutsideDownloadItemsContainer","bind","updateDomElements","getUpdatedDownloadItems","setup","container","downloadButton","downloadIcon","downloadIconCounter","renderDownloadItemsCounter","downloadItemUuids","disconnectedCallback","removeEventListener","targetElement","composedPath","closest","remove","buttonClicked","removeDownloadItemClicked","removeDownloadItemButtonElement","stopPropagation","onDownloadItemsChange","detail","showListChanged","button","downloadItemsChanged","languageChanged","preventRedirectChanged","active","elementSelector","MainMenu","hideMenuContainer","showmenu","renderMenuItems","hierarchyLevel","maxHierarchyLevel","menuItemsListElement","menuItem","subItems","SubMenuItem","Url","Name","clickOutsideMenuContainer","menuButton","menuTitle","menuIcon","closeIcon","menuContainer","menuItemListContainer","menuActionsRow","menuitems","signinurl","signouturl","addAuthenticationLinks","englishurl","norwegianurl","addLanguageSelectLinks","hasAuthenticationFunction","loginToggleElement","isloggedin","onSignOutClick","onSignInClick","childElement","hasLanguageSelectFunctions","languageToggleElement","onNorwegianLanguageSelect","onEnglishLanguageSelect","hasAuthenticationFunctionChanged","isLoggedInChanged","hasLanguageSelectFunctionsChanged","showMenuChanged","focusableElement","menuItemsChanged","onClick","MainNavigation","getGeonorgeLogoVariant","shouldShowSearchTypeSelector","showsearchtypeselector","logoElement","searchField","mainMenu","mapItemsElement","downloadItemsElement","userAccount","searchTypeSelector","searchstring","staticposition","noshadow","organization","userinfo","metadataresultsfound","articlesresultsfound","searchtype","parentNode","insertBefore","nextSibling","MapItems","MainSearchField","UserAccount","organizationChanged","userinfoChanged","mainContentLinkText","maincontentid","environmentChanged","metadataResultsFoundChanged","articlesResultsFoundChanged","searchTypeChanged","showSearchTypeSelectorChanged","SearchTypeSelector","searchStringChanged","mainContentIdChanged","mainContentLink","onSearch","setTimeout","mainSearchField","onOpenEmptyMapItemsList","onSearchTypeChange","onMapItemsChange","renderSearchResultsForType","searchResultsResponseForType","searchResultsTypeName","Results","TypeTranslated","searchResultsListElements","NumFound","renderSearchResults","searchResultsResponses","hideSearchResultsContainer","showSearchResults","clickOutsideSearchResultsContainer","searchFieldLabel","searchButton","searchResultsContainer","maxHeight","innerHeight","closestLink","submitSearch","encodeURI","searchFieldKeyUp","key","onSearchSubmitted","showSearchResultsChanged","searchResultsResponseChanged","renderMapItems","mapItemsListElement","mapItemElement","removeMapItemElement","mapItemLinkElement","mapItemListContainer","clickOutsideMapItemsContainer","getUpdatedMapItems","mapButton","mapIcon","mapIconCounter","renderMapItemsCounter","removeMapItemClicked","removeMapItemButtonElement","mapItemsChanged","handleSearchTypeOnChange","metadataNameElement","metadataCounterElement","articleNameElement","articleCounterElement","onchange","updateNameElements","selectedElement","selectedSearchTypeSelector","checked","clickOutsideUserAccountItemsContainer","userAccountContent","userAccountItems","userAccountListContainer","shouldShowAuthenticationButton","renderLoginButton","loginIcon","loginbutton","append","renderLogoutButton","mypageContainer","mypagebutton","username","mypageicon","renderUserButton","renderUserAccountItems","hasAuthenticationUrls","userInfoContainer","userAccountListTitle","userNameSpan","userAccountListItems","createListItem","listItem","anchor","logOutBlock","marginTop","logOutLink","logOutText","onclick","preventDefault","userInfoChanged","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","n","getter","__esModule","d","a","definition","o","enumerable","obj","hasOwnProperty","r","Symbol","toStringTag"],"sourceRoot":""}