@kartverket/geonorge-web-components 0.2.12 → 0.2.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/DownloadItem.js +1 -1
- package/DownloadItem.js.map +1 -1
- package/GnTable.js +1 -1
- package/GnTable.js.map +1 -1
- package/MainMenu.js +1 -1
- package/MainMenu.js.map +1 -1
- package/MainNavigation.js +1 -1
- package/MainNavigation.js.map +1 -1
- package/MapItem.js +1 -1
- package/MapItem.js.map +1 -1
- package/guiHelpers.d.ts +2 -1
- package/index.js +1 -1
- package/index.js.map +1 -1
- package/init.js +1 -1
- package/init.js.map +1 -1
- package/package.json +1 -1
package/MainMenu.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MainMenu.js","mappings":"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","sources":["webpack://geonorge/webpack/universalModuleDefinition","webpack://geonorge/./custom-elements/main-navigation/main-menu/main-menu.scss","webpack://geonorge/./custom-elements/main-navigation/main-menu/main-menu.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/close-icon.svg","webpack://geonorge/./assets/svg/menu-icon.svg","webpack://geonorge/./custom-elements/main-navigation/main-menu/main-menu.ts","webpack://geonorge/./functions/apiHelpers.ts","webpack://geonorge/./functions/guiHelpers.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\"][\"MainMenu\"] = 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}button.menu-toggle-button{border:none;background:rgba(0,0,0,0);background-color:#7d746d;border-radius:2px;color:#fff;cursor:pointer;width:40px;height:32px;margin-left:4px}@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:#7d746d;color:#fff}}button.menu-toggle-button.open{background-color:#414042}button.menu-toggle-button span{font-size:1.2em;font-weight:700;padding:2px 1px;vertical-align:middle}button.menu-toggle-button span.menu-title{display:none}@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;padding:2px;vertical-align:middle}@media(min-width: 37.5em){button.menu-toggle-button svg{height:29px;width:29px}}.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:#dfdcda;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}.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-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:#d2cecb;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:300;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://./custom-elements/main-navigation/main-menu/main-menu.scss\",\"webpack://./style/mixins/_breakpoints.scss\",\"webpack://./style/mixins/_border-radius.scss\",\"webpack://./style/mixins/_box-shadow.scss\",\"webpack://./style/mixins/_transition.scss\",\"webpack://./style/variables/_typography.scss\"],\"names\":[],\"mappings\":\"AAEA,EACI,qBAAA,CAGJ,0BACI,WAAA,CACA,wBAAA,CACA,wBAAA,CACA,iBAAA,CACA,UAAA,CACA,cAAA,CACA,UAAA,CACA,WAAA,CACA,eAAA,CCDI,0BDRR,0BAWQ,UAAA,CACA,WAAA,CAAA,CCZA,yBAAA,0BDeA,UAAA,CACA,wBAAA,CACA,UAAA,CAAA,CAEJ,+BACI,wBAAA,CAEJ,+BACI,eAAA,CACA,eAAA,CACA,eAAA,CACA,qBAAA,CACA,0CACI,YAAA,CC5BJ,yBD2BA,0CAGQ,oBAAA,CAAA,CAGR,sCACI,YAAA,CAGR,8BACI,WAAA,CACA,UAAA,CACA,WAAA,CACA,qBAAA,CCjCA,0BD6BJ,8BAMQ,WAAA,CACA,UAAA,CAAA,CAIZ,cACI,iBAAA,CACA,MAAA,CACA,UAAA,CAEA,8BE1DF,iCF2D6B,CE1D7B,yBF0D6B,CACvB,qBAAA,CACA,UAAA,CACA,wBAAA,CACA,WAAA,CACA,iBAAA,CACA,QAAA,CCpDA,0BD6CJ,8BASQ,QAAA,CAAA,CC1DJ,yBDiDJ,8BAaQ,WAAA,CAAA,CClEJ,yBDqDJ,8BAgBQ,WAAA,CAAA,CCzEJ,0BDyDJ,8BAmBQ,YAAA,CAAA,CAEJ,aArBJ,8BAsBQ,YAAA,CAAA,CAGJ,mCGnFJ,iDHoFQ,CGnFR,8CHmFQ,CGlFR,yCHkFQ,CACA,WAAA,CAEJ,wDIvFJ,0CJwFQ,CIvFR,wCJuFQ,CItFR,6CJsFQ,CIrFR,qCJqFQ,CACA,eAAA,CACA,YAAA,CACA,6DACI,gBAAA,CACA,aAAA,CChFR,0BD8EI,6DAIQ,gBAAA,CAAA,CC1FZ,yBDsFI,6DAOQ,gBAAA,CAAA,CAIR,sEACI,eAAA,CACA,WAAA,CACA,aAAA,CACA,kFACI,gBAAA,CAEJ,wEACI,aAAA,CACA,oBAAA,CACA,8EACI,yBAAA,CAGR,wFACI,YAAA,CACA,cAAA,CACA,2FACI,aAAA,CC3GhB,0BD0GY,2FAGQ,YAAA,CAAA,CCrHpB,yBDkHY,2FAMQ,MAAA,CAAA,CAEJ,6FACI,+BAAA,CACA,eAAA,CACA,oBAAA,CACA,mBAAA,CACA,aAAA,CAEJ,8FACI,SAAA,CACA,iGACI,kBAAA,CAOxB,gDIhJJ,0CJiJQ,CIhJR,wCJgJQ,CI/IR,6CJ+IQ,CI9IR,qCJ8IQ,CACA,gBAAA,CACA,wBAAA,CACA,YAAA,CACA,eAAA,CACA,qDACI,eAAA,CAEJ,yGACI,oBAAA,CACA,6BAAA,CACA,aAAA,CACA,oBAAA,CACA,aAAA,CACA,cAAA,CACA,WAAA,CACA,cAAA,CACA,eAAA,CACA,kCKpKD,CLqKC,eAAA,CACA,qHACI,yBAAA,CAEJ,6IACI,6BAAA\",\"sourcesContent\":[\"@import \\\"../../../style/all\\\";\\n\\n* {\\n box-sizing: border-box;\\n}\\n\\nbutton.menu-toggle-button {\\n border: none;\\n background: transparent;\\n background-color: rgb(125, 116, 109);\\n border-radius: 2px;\\n color: rgb(255, 255, 255);\\n cursor: pointer;\\n width: 40px;\\n height: 32px;\\n margin-left: 4px;\\n @include breakpoint(phablet) {\\n width: 45px;\\n height: 37px;\\n }\\n @include breakpoint(laptop) {\\n width: 98px;\\n background-color: rgb(125, 116, 109);\\n color: #fff;\\n }\\n &.open {\\n background-color: #414042;\\n }\\n span {\\n font-size: 1.2em;\\n font-weight: 700;\\n padding: 2px 1px;\\n vertical-align: middle;\\n &.menu-title {\\n display: none;\\n @include breakpoint(laptop) {\\n display: inline-block;\\n }\\n }\\n &.hidden {\\n display: none;\\n }\\n }\\n svg {\\n height: 24px;\\n width: 24px;\\n padding: 2px;\\n vertical-align: middle;\\n @include breakpoint(phablet) {\\n height: 29px;\\n width: 29px;\\n }\\n }\\n}\\n.menu-wrapper {\\n position: absolute;\\n left: 0;\\n width: 100%;\\n\\n .menu-container {\\n @include border-radius(0 0 3px 3px);\\n box-sizing: border-box;\\n width: 100%;\\n background-color: #dfdcda;\\n margin: auto;\\n position: relative;\\n top: 56px;\\n @include breakpoint(phablet) {\\n top: 15px;\\n }\\n\\n @include breakpoint(tablet) {\\n width: 750px;\\n }\\n @include breakpoint(laptop) {\\n width: 970px;\\n }\\n @include breakpoint(desktop) {\\n width: 1170px;\\n }\\n @media print {\\n display: none;\\n }\\n\\n &.open {\\n @include box-shadow(0 5px 5px -2px rgba(0, 0, 0, 0.26));\\n height: auto;\\n }\\n .menu-item-list-container {\\n @include 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 breakpoint(phablet) {\\n max-height: 450px;\\n }\\n @include breakpoint(laptop) {\\n max-height: 300px;\\n }\\n }\\n\\n .menuItemList {\\n list-style: none;\\n margin: 15px;\\n color: #414042;\\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 breakpoint(phablet) {\\n flex: 1 0 50%;\\n }\\n @include 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 }\\n }\\n }\\n .menu-actions-row {\\n @include transition(max-height 0.3s ease-in-out);\\n text-align: right;\\n background-color: #d2cecb;\\n max-height: 0;\\n overflow: hidden;\\n &.open {\\n max-height: 56px;\\n }\\n a, 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: 300;\\n font-family: $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\",\"@mixin breakpoint($point) {\\n @if $point == desktop {\\n @media (min-width: $screen-desktop) {\\n @content;\\n }\\n } @else if $point == laptop {\\n @media (min-width: $screen-laptop) {\\n @content;\\n }\\n } @else if $point == tablet {\\n @media (min-width: $screen-tablet) {\\n @content;\\n }\\n } @else if $point == phablet {\\n @media (min-width: $screen-phablet) {\\n @content;\\n }\\n }\\n}\\n\",\"@mixin 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\",\"$default-font: \\\"Open Sans\\\", sans-serif;\\n$header-font: \\\"Raleway\\\", sans-serif;\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","export default \"<template>\\n <button id=\\\"menu-toggle-button\\\" class=\\\"menu-toggle-button\\\">\\n <span id=\\\"menu-title\\\" class=\\\"menu-title\\\">\\n Meny\\n </span>\\n <span id=\\\"menu-icon\\\"></span>\\n <span id=\\\"close-icon\\\"></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>\";","\"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 = []; // return the list of modules as css string\n\n list.toString = function toString() {\n return this.map(function (item) {\n var content = \"\";\n var needLayer = typeof item[5] !== \"undefined\";\n\n if (item[4]) {\n content += \"@supports (\".concat(item[4], \") {\");\n }\n\n if (item[2]) {\n content += \"@media \".concat(item[2], \" {\");\n }\n\n if (needLayer) {\n content += \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\");\n }\n\n content += cssWithMappingToString(item);\n\n if (needLayer) {\n content += \"}\";\n }\n\n if (item[2]) {\n content += \"}\";\n }\n\n if (item[4]) {\n content += \"}\";\n }\n\n return content;\n }).join(\"\");\n }; // import a list of modules into the list\n\n\n list.i = function i(modules, media, dedupe, supports, layer) {\n if (typeof modules === \"string\") {\n modules = [[null, modules, undefined]];\n }\n\n var alreadyImportedModules = {};\n\n if (dedupe) {\n for (var k = 0; k < this.length; k++) {\n var id = this[k][0];\n\n if (id != null) {\n alreadyImportedModules[id] = true;\n }\n }\n }\n\n for (var _k = 0; _k < modules.length; _k++) {\n var item = [].concat(modules[_k]);\n\n if (dedupe && alreadyImportedModules[item[0]]) {\n continue;\n }\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\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\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\n list.push(item);\n }\n };\n\n return list;\n};","\"use strict\";\n\nmodule.exports = function (item) {\n var content = item[1];\n var cssMapping = item[3];\n\n if (!cssMapping) {\n return content;\n }\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 var sourceURLs = cssMapping.sources.map(function (source) {\n return \"/*# sourceURL=\".concat(cssMapping.sourceRoot || \"\").concat(source, \" */\");\n });\n return [content].concat(sourceURLs).concat([sourceMapping]).join(\"\\n\");\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 aria-labelledby=\\\"svg-inline--fa-title-DQErafiATQyz\\\" data-prefix=\\\"fas\\\" data-icon=\\\"times\\\" class=\\\"__2_2taji__svg-inline--fa __2_2taji__fa-times __2_2taji__fa-w-11 __2_2taji__ \\\" role=\\\"img\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 352 512\\\"><title id=\\\"svg-inline--fa-title-DQErafiATQyz\\\">Vis meny</title><path fill=\\\"#fff\\\" d=\\\"M242.72 256l100.07-100.07c12.28-12.28 12.28-32.19 0-44.48l-22.24-22.24c-12.28-12.28-32.19-12.28-44.48 0L176 189.28 75.93 89.21c-12.28-12.28-32.19-12.28-44.48 0L9.21 111.45c-12.28 12.28-12.28 32.19 0 44.48L109.28 256 9.21 356.07c-12.28 12.28-12.28 32.19 0 44.48l22.24 22.24c12.28 12.28 32.2 12.28 44.48 0L176 322.72l100.07 100.07c12.28 12.28 32.2 12.28 44.48 0l22.24-22.24c12.28-12.28 12.28-32.19 0-44.48L242.72 256z\\\"></path></svg>\"","module.exports = \"<svg aria-labelledby=\\\"svg-inline--fa-title-rqezCtUcjPlp\\\" data-prefix=\\\"fas\\\" data-icon=\\\"bars\\\" class=\\\"__1-Ii6EJ__svg-inline--fa __1-Ii6EJ__fa-bars __1-Ii6EJ__fa-w-14 __1-Ii6EJ__ \\\" role=\\\"img\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 448 512\\\"><title id=\\\"svg-inline--fa-title-rqezCtUcjPlp\\\">Vis meny</title><path fill=\\\"#fff\\\" d=\\\"M16 132h416c8.837 0 16-7.163 16-16V76c0-8.837-7.163-16-16-16H16C7.163 60 0 67.163 0 76v40c0 8.837 7.163 16 16 16zm0 160h416c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H16c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16zm0 160h416c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H16c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16z\\\"></path></svg>\"","// 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/menu-icon.svg';\nimport CloseIcon from 'assets/svg/close-icon.svg';\n\n// Functions\nimport { fetchMenuItems } from 'functions/apiHelpers';\nimport { getFocusableElementsInsideElement } from 'functions/guiHelpers';\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 const logInString = this.language === 'en' ? 'Log in' : 'Logg inn';\n const logOutString = this.language === 'en' ? 'Log out' : 'Logg ut';\n loginToggleElement.innerText = this.isloggedin ? logOutString : logInString\n loginToggleElement.id = 'authentication-toggle-element';\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","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 getGeonorgeMenuUrl = (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}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).then(res => res.json()).then(menuItems => {\n return menuItems;\n });\n}\n\nexport const fetchDropdownSearchResults = async (searchString: string = \"\", language: string = \"no\", environment: string = '') => {\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 ? await Promise.all(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 })) : null;\n};","export const getFocusableElementsInsideElement = (element) => {\n return element.querySelectorAll('button, [href], input, [tabindex=\"0\"]');\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__(4709);\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","sourceURLs","sources","source","sourceRoot","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","MainMenu","hideMenuContainer","showmenu","renderMenuItems","menuItems","hierarchyLevel","maxHierarchyLevel","menuItemsListElement","menuItem","subItems","SubMenuItem","Url","Name","clickOutsideMenuContainer","bind","setup","container","menuButton","menuTitle","menuIcon","closeIcon","menuContainer","menuItemListContainer","menuActionsRow","classList","add","fetchMenuItems","language","environment","then","menuitems","innerText","signinurl","signouturl","addAuthenticationLinks","englishurl","norwegianurl","addLanguageSelectLinks","disconnectedCallback","removeEventListener","event","targetElement","composedPath","closest","hasAuthenticationFunction","loginToggleElement","isloggedin","onSignOutClick","onSignInClick","href","logInString","logOutString","childElement","remove","hasLanguageSelectFunctions","languageToggleElement","onNorwegianLanguageSelect","onEnglishLanguageSelect","buttonClicked","hasAuthenticationFunctionChanged","isLoggedInChanged","hasLanguageSelectFunctionsChanged","languageChanged","showMenuChanged","getFocusableElementsInsideElement","focusableElement","menuItemsChanged","static","element","onClick","active","elementSelector","getKartkatalogApiUrl","getGeonorgeMenuUrl","apiUrl","fetch","res","json","fetchDropdownSearchResults","searchString","urlParameterStrings","dataset","series","service","servicelayer","software","articles","fetchOptions","headers","Headers","all","searchResultsType","kartkatalogApiUrl","searchResults","querySelectorAll","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","n","getter","__esModule","d","a","definition","key","o","enumerable","obj","hasOwnProperty","r","Symbol","toStringTag"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"file":"MainMenu.js","mappings":"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","sources":["webpack://geonorge/webpack/universalModuleDefinition","webpack://geonorge/./custom-elements/main-navigation/main-menu/main-menu.scss","webpack://geonorge/./custom-elements/main-navigation/main-menu/main-menu.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/close-icon.svg","webpack://geonorge/./assets/svg/menu-icon.svg","webpack://geonorge/./custom-elements/main-navigation/main-menu/main-menu.ts","webpack://geonorge/./functions/apiHelpers.ts","webpack://geonorge/./functions/guiHelpers.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\"][\"MainMenu\"] = 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}button.menu-toggle-button{border:none;background:rgba(0,0,0,0);background-color:#7d746d;border-radius:2px;color:#fff;cursor:pointer;width:40px;height:32px;margin-left:4px}@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:#7d746d;color:#fff}}button.menu-toggle-button.open{background-color:#414042}button.menu-toggle-button span{font-size:1.2em;font-weight:700;padding:2px 1px;vertical-align:middle}button.menu-toggle-button span.menu-title{display:none}@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;padding:2px;vertical-align:middle}@media(min-width: 37.5em){button.menu-toggle-button svg{height:29px;width:29px}}.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:#dfdcda;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}.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-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:#d2cecb;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:300;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://./custom-elements/main-navigation/main-menu/main-menu.scss\",\"webpack://./style/mixins/_breakpoints.scss\",\"webpack://./style/mixins/_border-radius.scss\",\"webpack://./style/mixins/_box-shadow.scss\",\"webpack://./style/mixins/_transition.scss\",\"webpack://./style/variables/_typography.scss\"],\"names\":[],\"mappings\":\"AAEA,EACI,qBAAA,CAGJ,0BACI,WAAA,CACA,wBAAA,CACA,wBAAA,CACA,iBAAA,CACA,UAAA,CACA,cAAA,CACA,UAAA,CACA,WAAA,CACA,eAAA,CCDI,0BDRR,0BAWQ,UAAA,CACA,WAAA,CAAA,CCZA,yBAAA,0BDeA,UAAA,CACA,wBAAA,CACA,UAAA,CAAA,CAEJ,+BACI,wBAAA,CAEJ,+BACI,eAAA,CACA,eAAA,CACA,eAAA,CACA,qBAAA,CACA,0CACI,YAAA,CC5BJ,yBD2BA,0CAGQ,oBAAA,CAAA,CAGR,sCACI,YAAA,CAGR,8BACI,WAAA,CACA,UAAA,CACA,WAAA,CACA,qBAAA,CCjCA,0BD6BJ,8BAMQ,WAAA,CACA,UAAA,CAAA,CAIZ,cACI,iBAAA,CACA,MAAA,CACA,UAAA,CAEA,8BE1DF,iCF2D6B,CE1D7B,yBF0D6B,CACvB,qBAAA,CACA,UAAA,CACA,wBAAA,CACA,WAAA,CACA,iBAAA,CACA,QAAA,CCpDA,0BD6CJ,8BASQ,QAAA,CAAA,CC1DJ,yBDiDJ,8BAaQ,WAAA,CAAA,CClEJ,yBDqDJ,8BAgBQ,WAAA,CAAA,CCzEJ,0BDyDJ,8BAmBQ,YAAA,CAAA,CAEJ,aArBJ,8BAsBQ,YAAA,CAAA,CAGJ,mCGnFJ,iDHoFQ,CGnFR,8CHmFQ,CGlFR,yCHkFQ,CACA,WAAA,CAEJ,wDIvFJ,0CJwFQ,CIvFR,wCJuFQ,CItFR,6CJsFQ,CIrFR,qCJqFQ,CACA,eAAA,CACA,YAAA,CACA,6DACI,gBAAA,CACA,aAAA,CChFR,0BD8EI,6DAIQ,gBAAA,CAAA,CC1FZ,yBDsFI,6DAOQ,gBAAA,CAAA,CAIR,sEACI,eAAA,CACA,WAAA,CACA,aAAA,CACA,kFACI,gBAAA,CAEJ,wEACI,aAAA,CACA,oBAAA,CACA,8EACI,yBAAA,CAGR,wFACI,YAAA,CACA,cAAA,CACA,2FACI,aAAA,CC3GhB,0BD0GY,2FAGQ,YAAA,CAAA,CCrHpB,yBDkHY,2FAMQ,MAAA,CAAA,CAEJ,6FACI,+BAAA,CACA,eAAA,CACA,oBAAA,CACA,mBAAA,CACA,aAAA,CAEJ,8FACI,SAAA,CACA,iGACI,kBAAA,CAOxB,gDIhJJ,0CJiJQ,CIhJR,wCJgJQ,CI/IR,6CJ+IQ,CI9IR,qCJ8IQ,CACA,gBAAA,CACA,wBAAA,CACA,YAAA,CACA,eAAA,CACA,qDACI,eAAA,CAEJ,yGACI,oBAAA,CACA,6BAAA,CACA,aAAA,CACA,oBAAA,CACA,aAAA,CACA,cAAA,CACA,WAAA,CACA,cAAA,CACA,eAAA,CACA,kCKpKD,CLqKC,eAAA,CACA,qHACI,yBAAA,CAEJ,6IACI,6BAAA\",\"sourcesContent\":[\"@import \\\"../../../style/all\\\";\\n\\n* {\\n box-sizing: border-box;\\n}\\n\\nbutton.menu-toggle-button {\\n border: none;\\n background: transparent;\\n background-color: rgb(125, 116, 109);\\n border-radius: 2px;\\n color: rgb(255, 255, 255);\\n cursor: pointer;\\n width: 40px;\\n height: 32px;\\n margin-left: 4px;\\n @include breakpoint(phablet) {\\n width: 45px;\\n height: 37px;\\n }\\n @include breakpoint(laptop) {\\n width: 98px;\\n background-color: rgb(125, 116, 109);\\n color: #fff;\\n }\\n &.open {\\n background-color: #414042;\\n }\\n span {\\n font-size: 1.2em;\\n font-weight: 700;\\n padding: 2px 1px;\\n vertical-align: middle;\\n &.menu-title {\\n display: none;\\n @include breakpoint(laptop) {\\n display: inline-block;\\n }\\n }\\n &.hidden {\\n display: none;\\n }\\n }\\n svg {\\n height: 24px;\\n width: 24px;\\n padding: 2px;\\n vertical-align: middle;\\n @include breakpoint(phablet) {\\n height: 29px;\\n width: 29px;\\n }\\n }\\n}\\n.menu-wrapper {\\n position: absolute;\\n left: 0;\\n width: 100%;\\n\\n .menu-container {\\n @include border-radius(0 0 3px 3px);\\n box-sizing: border-box;\\n width: 100%;\\n background-color: #dfdcda;\\n margin: auto;\\n position: relative;\\n top: 56px;\\n @include breakpoint(phablet) {\\n top: 15px;\\n }\\n\\n @include breakpoint(tablet) {\\n width: 750px;\\n }\\n @include breakpoint(laptop) {\\n width: 970px;\\n }\\n @include breakpoint(desktop) {\\n width: 1170px;\\n }\\n @media print {\\n display: none;\\n }\\n\\n &.open {\\n @include box-shadow(0 5px 5px -2px rgba(0, 0, 0, 0.26));\\n height: auto;\\n }\\n .menu-item-list-container {\\n @include 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 breakpoint(phablet) {\\n max-height: 450px;\\n }\\n @include breakpoint(laptop) {\\n max-height: 300px;\\n }\\n }\\n\\n .menuItemList {\\n list-style: none;\\n margin: 15px;\\n color: #414042;\\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 breakpoint(phablet) {\\n flex: 1 0 50%;\\n }\\n @include 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 }\\n }\\n }\\n .menu-actions-row {\\n @include transition(max-height 0.3s ease-in-out);\\n text-align: right;\\n background-color: #d2cecb;\\n max-height: 0;\\n overflow: hidden;\\n &.open {\\n max-height: 56px;\\n }\\n a, 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: 300;\\n font-family: $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\",\"@mixin breakpoint($point) {\\n @if $point == desktop {\\n @media (min-width: $screen-desktop) {\\n @content;\\n }\\n } @else if $point == laptop {\\n @media (min-width: $screen-laptop) {\\n @content;\\n }\\n } @else if $point == tablet {\\n @media (min-width: $screen-tablet) {\\n @content;\\n }\\n } @else if $point == phablet {\\n @media (min-width: $screen-phablet) {\\n @content;\\n }\\n }\\n}\\n\",\"@mixin 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\",\"$default-font: \\\"Open Sans\\\", sans-serif;\\n$header-font: \\\"Raleway\\\", sans-serif;\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","export default \"<template>\\n <button id=\\\"menu-toggle-button\\\" class=\\\"menu-toggle-button\\\">\\n <span id=\\\"menu-title\\\" class=\\\"menu-title\\\">\\n Meny\\n </span>\\n <span id=\\\"menu-icon\\\"></span>\\n <span id=\\\"close-icon\\\"></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>\";","\"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 = []; // return the list of modules as css string\n\n list.toString = function toString() {\n return this.map(function (item) {\n var content = \"\";\n var needLayer = typeof item[5] !== \"undefined\";\n\n if (item[4]) {\n content += \"@supports (\".concat(item[4], \") {\");\n }\n\n if (item[2]) {\n content += \"@media \".concat(item[2], \" {\");\n }\n\n if (needLayer) {\n content += \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\");\n }\n\n content += cssWithMappingToString(item);\n\n if (needLayer) {\n content += \"}\";\n }\n\n if (item[2]) {\n content += \"}\";\n }\n\n if (item[4]) {\n content += \"}\";\n }\n\n return content;\n }).join(\"\");\n }; // import a list of modules into the list\n\n\n list.i = function i(modules, media, dedupe, supports, layer) {\n if (typeof modules === \"string\") {\n modules = [[null, modules, undefined]];\n }\n\n var alreadyImportedModules = {};\n\n if (dedupe) {\n for (var k = 0; k < this.length; k++) {\n var id = this[k][0];\n\n if (id != null) {\n alreadyImportedModules[id] = true;\n }\n }\n }\n\n for (var _k = 0; _k < modules.length; _k++) {\n var item = [].concat(modules[_k]);\n\n if (dedupe && alreadyImportedModules[item[0]]) {\n continue;\n }\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\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\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\n list.push(item);\n }\n };\n\n return list;\n};","\"use strict\";\n\nmodule.exports = function (item) {\n var content = item[1];\n var cssMapping = item[3];\n\n if (!cssMapping) {\n return content;\n }\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 var sourceURLs = cssMapping.sources.map(function (source) {\n return \"/*# sourceURL=\".concat(cssMapping.sourceRoot || \"\").concat(source, \" */\");\n });\n return [content].concat(sourceURLs).concat([sourceMapping]).join(\"\\n\");\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 aria-labelledby=\\\"svg-inline--fa-title-DQErafiATQyz\\\" data-prefix=\\\"fas\\\" data-icon=\\\"times\\\" class=\\\"__2_2taji__svg-inline--fa __2_2taji__fa-times __2_2taji__fa-w-11 __2_2taji__ \\\" role=\\\"img\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 352 512\\\"><title id=\\\"svg-inline--fa-title-DQErafiATQyz\\\">Vis meny</title><path fill=\\\"#fff\\\" d=\\\"M242.72 256l100.07-100.07c12.28-12.28 12.28-32.19 0-44.48l-22.24-22.24c-12.28-12.28-32.19-12.28-44.48 0L176 189.28 75.93 89.21c-12.28-12.28-32.19-12.28-44.48 0L9.21 111.45c-12.28 12.28-12.28 32.19 0 44.48L109.28 256 9.21 356.07c-12.28 12.28-12.28 32.19 0 44.48l22.24 22.24c12.28 12.28 32.2 12.28 44.48 0L176 322.72l100.07 100.07c12.28 12.28 32.2 12.28 44.48 0l22.24-22.24c12.28-12.28 12.28-32.19 0-44.48L242.72 256z\\\"></path></svg>\"","module.exports = \"<svg aria-labelledby=\\\"svg-inline--fa-title-rqezCtUcjPlp\\\" data-prefix=\\\"fas\\\" data-icon=\\\"bars\\\" class=\\\"__1-Ii6EJ__svg-inline--fa __1-Ii6EJ__fa-bars __1-Ii6EJ__fa-w-14 __1-Ii6EJ__ \\\" role=\\\"img\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 448 512\\\"><title id=\\\"svg-inline--fa-title-rqezCtUcjPlp\\\">Vis meny</title><path fill=\\\"#fff\\\" d=\\\"M16 132h416c8.837 0 16-7.163 16-16V76c0-8.837-7.163-16-16-16H16C7.163 60 0 67.163 0 76v40c0 8.837 7.163 16 16 16zm0 160h416c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H16c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16zm0 160h416c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H16c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16z\\\"></path></svg>\"","// 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/menu-icon.svg';\nimport CloseIcon from 'assets/svg/close-icon.svg';\n\n// Functions\nimport { fetchMenuItems } from 'functions/apiHelpers';\nimport { getFocusableElementsInsideElement } from 'functions/guiHelpers';\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 const logInString = this.language === 'en' ? 'Log in' : 'Logg inn';\n const logOutString = this.language === 'en' ? 'Log out' : 'Logg ut';\n loginToggleElement.innerText = this.isloggedin ? logOutString : logInString\n loginToggleElement.id = 'authentication-toggle-element';\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","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 getGeonorgeMenuUrl = (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}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).then(res => res.json()).then(menuItems => {\n return menuItems;\n });\n}\n\nexport const fetchDropdownSearchResults = async (searchString: string = \"\", language: string = \"no\", environment: string = '') => {\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 ? await Promise.all(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 })) : null;\n};","export const getFocusableElementsInsideElement = (element: HTMLElement) => {\n return element.querySelectorAll('button, [href], input, [tabindex=\"0\"]');\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","// 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__(4709);\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","sourceURLs","sources","source","sourceRoot","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","MainMenu","hideMenuContainer","showmenu","renderMenuItems","menuItems","hierarchyLevel","maxHierarchyLevel","menuItemsListElement","menuItem","subItems","SubMenuItem","Url","Name","clickOutsideMenuContainer","bind","setup","container","menuButton","menuTitle","menuIcon","closeIcon","menuContainer","menuItemListContainer","menuActionsRow","classList","add","fetchMenuItems","language","environment","then","menuitems","innerText","signinurl","signouturl","addAuthenticationLinks","englishurl","norwegianurl","addLanguageSelectLinks","disconnectedCallback","removeEventListener","event","targetElement","composedPath","closest","hasAuthenticationFunction","loginToggleElement","isloggedin","onSignOutClick","onSignInClick","href","logInString","logOutString","childElement","remove","hasLanguageSelectFunctions","languageToggleElement","onNorwegianLanguageSelect","onEnglishLanguageSelect","buttonClicked","hasAuthenticationFunctionChanged","isLoggedInChanged","hasLanguageSelectFunctionsChanged","languageChanged","showMenuChanged","getFocusableElementsInsideElement","focusableElement","menuItemsChanged","static","element","onClick","active","elementSelector","getKartkatalogApiUrl","getGeonorgeMenuUrl","apiUrl","fetch","res","json","fetchDropdownSearchResults","searchString","urlParameterStrings","dataset","series","service","servicelayer","software","articles","fetchOptions","headers","Headers","all","searchResultsType","kartkatalogApiUrl","searchResults","querySelectorAll","addGlobalStylesheet","styleElementId","styles","textContent","getElementById","head","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","n","getter","__esModule","d","a","definition","key","o","enumerable","obj","hasOwnProperty","r","Symbol","toStringTag"],"sourceRoot":""}
|