{"version":3,"sources":["webpack:///./node_modules/core-js/internals/array-method-has-species-support.js","webpack:///./node_modules/core-js/internals/engine-v8-version.js","webpack:///./node_modules/core-js/internals/engine-user-agent.js","webpack:///./node_modules/vue-mixin-decorator/dist/vue-mixin-decorator.umd.js","webpack:///./node_modules/core-js/modules/es.string.trim.js","webpack:///./node_modules/core-js/modules/es.array.filter.js","webpack:///./node_modules/core-js/internals/whitespaces.js","webpack:///./node_modules/core-js/internals/string-trim.js","webpack:///./node_modules/core-js/modules/es.array.find.js","webpack:///./node_modules/core-js/internals/create-property.js","webpack:///./node_modules/core-js/modules/es.array.concat.js","webpack:///./node_modules/core-js/modules/es.array.join.js","webpack:///./node_modules/core-js/modules/es.array.splice.js","webpack:///./src/views/Preferences.vue?1b0d","webpack:///./src/common/ApiErrorHandler.ts","webpack:///./src/directives/Scroll.ts","webpack:///./node_modules/@frontiers-vue/side-menu/node_modules/@frontiers-vue/common/dist/vue-common.esm.js","webpack:///./node_modules/@frontiers-vue/side-menu/dist/side-menu.esm.js","webpack:///./node_modules/@frontiers-vue/layout/node_modules/@frontiers-vue/common/dist/vue-common.esm.js","webpack:///./node_modules/@frontiers-vue/layout/dist/layout.esm.js","webpack:///./node_modules/@frontiers-vue/switcher/dist/switcher.esm.js","webpack:///./src/components/PreferencesBlock.vue?1832","webpack:///./node_modules/@frontiers-vue/search-input/node_modules/@frontiers-vue/common/dist/vue-common.esm.js","webpack:///./node_modules/@frontiers-vue/search-input/dist/search-input.esm.js","webpack:///./node_modules/@frontiers-vue/tag-cloud/dist/tag-cloud.esm.js","webpack:///./node_modules/@frontiers-vue/tooltip/dist/tooltip.esm.js","webpack:///./src/components/PreferencesBlock.vue?147a","webpack:///./src/components/PreferencesBlock.vue?e11e","webpack:///./src/components/PreferencesBlock.vue","webpack:///./src/views/Preferences.vue?3d5a","webpack:///./src/views/Preferences.vue?1ef8","webpack:///./src/views/Preferences.vue","webpack:///./node_modules/core-js/internals/array-method-is-strict.js","webpack:///./node_modules/core-js/internals/array-method-uses-to-length.js","webpack:///./node_modules/core-js/modules/es.object.keys.js","webpack:///./node_modules/core-js/internals/string-trim-forced.js"],"names":["fails","wellKnownSymbol","V8_VERSION","SPECIES","module","exports","METHOD_NAME","array","constructor","foo","Boolean","match","version","global","userAgent","process","versions","v8","split","getBuiltIn","factory","this","VCComponent","Mixins","parent","mixins","_i","arguments","length","extend","Component","options","hasOwnProperty","Mixin","Object","defineProperty","value","$","$trim","trim","forcedStringTrimMethod","target","proto","forced","$filter","filter","arrayMethodHasSpeciesSupport","arrayMethodUsesToLength","HAS_SPECIES_SUPPORT","USES_TO_LENGTH","callbackfn","undefined","requireObjectCoercible","whitespaces","whitespace","ltrim","RegExp","rtrim","createMethod","TYPE","$this","string","String","replace","start","end","$find","find","addToUnscopables","FIND","SKIPS_HOLES","Array","toPrimitive","definePropertyModule","createPropertyDescriptor","object","key","propertyKey","f","isArray","isObject","toObject","toLength","createProperty","arraySpeciesCreate","IS_CONCAT_SPREADABLE","MAX_SAFE_INTEGER","MAXIMUM_ALLOWED_INDEX_EXCEEDED","IS_CONCAT_SPREADABLE_SUPPORT","concat","SPECIES_SUPPORT","isConcatSpreadable","O","spreadable","FORCED","arg","i","k","len","E","A","n","TypeError","IndexedObject","toIndexedObject","arrayMethodIsStrict","nativeJoin","join","ES3_STRINGS","STRICT_METHOD","separator","call","toAbsoluteIndex","toInteger","ACCESSORS","0","1","max","Math","min","MAXIMUM_ALLOWED_LENGTH_EXCEEDED","splice","deleteCount","insertCount","actualDeleteCount","from","to","actualStart","argumentsLength","render","_vm","_h","$createElement","_c","_self","attrs","scopedSlots","_u","fn","_v","proxy","_l","block","categoryId","categoryName","getPathWithHash","on","$event","smoothScroll","getRefName","index","directives","name","rawName","getRefNameLastBlock","expression","ref","refInFor","staticClass","isFromEmail","domProps","email","_e","_s","categoryDesc","subscriptionTypes","subscriptionTypeDesc","isOnGlobalSwitcher","globalSwitcher_changed","allDisabled","staticRenderFns","error","router","onErrorFunc","console","log","iError","ApiErrorHandler","getMappedError","parseInt","request","status","errorMessage","message","response","statusText","reload","window","location","code","property","data","redirect","Error","push","params","errorCode","toString","errors","genericError","error404","error403","error401","error400","el","binding","vnode","context","Scroll","CALLBACK_FUNC","innerWidth","isElActive","scrollDirection","newLocation","screenPosition","getBoundingClientRect","top","offset","pageYOffset","scrollY","lastScrollDirection","topAppearsOnTopScreen","offsetTop","bottomAppearsOnBottomScreen","offsetHeight","innerHeight","document","body","lastLocation","addEventListener","removeEventListener","LockScroll","getShadowDomRoot","isShadowDom","lastParent","parentElement","tagName","getScrollbarWidth","outer","createElement","style","visibility","overflow","msOverflowStyle","appendChild","inner","scrollbarWidth","offsetWidth","parentNode","removeChild","isThereScrollbar","documentHeight","documentElement","scrollHeight","windowHeight","checkBindingValue","lockBodyScroll","html","wrap","isScroll","scrollTop","setAttribute","display","height","width","position","unlockBodyScroll","dataScrollTopValue","getAttribute","DATA_SCROLL_TOP_ATTR","scrollTo","setTimeout","isValidContext","siblings","firstChild","warn","getComputedStyle","prototype","update","oldValue","getElementsByTagName","bodyChildren","querySelectorAll","delayUnlockScroll","bind","ClickOutside","staticAccessors","configurable","get","isVisible","getClientRects","e","stopPropagation","contains","inserted","shadowRoot","unbind","defineProperties","CheckPosition","clearInlinePosition","bottom","left","right","isOverflownVertically","margin","isOverflownHorizontally","EscapePress","staticAccessors$1","ESCAPE_KEY","onKeyUp","callbackFunc","keyCode","Directives","__decorate","decorators","desc","d","c","r","getOwnPropertyDescriptor","Reflect","decorate","styleInject","css","insertAt","head","type","insertBefore","styleSheet","cssText","createTextNode","tryGetTag","component","$vnode","componentOptions","tag","SideMenu","Vue","apply","isResponsiveOpen","isMenuCollapsed","breadCrumbs","__proto__","create","prototypeAccessors","getClassList","isHeaderProvided","collapseArrowClasses","aux","$slots","resetScrollResponsive","timeLeftTransition","refSideMenuNav","$refs","toggleResponsiveMenu","resetBreadCrumbsScroll","toggleCollapse","$emit","refBreadCrubms","scrollLeft","close","watch_isCollapsed","newVal","closeAfterNavigate","mounted","this$1","isCollapsed","$router","afterEach","autoOpen","checkMenuItem","beforeDestroy","afterHooks","hooks","$children","child","isActive","open","default","script","normalizeComponent","template","scopeId","isFunctionalTemplate","moduleIdentifier","shadowMode","createInjector","createInjectorSSR","createInjectorShadow","hook","_compiled","functional","_scopeId","ssrContext","__VUE_SSR_CONTEXT__","_registeredComponents","add","_ssrRegister","$root","$options","originalRender","h","existing","beforeCreate","normalizeComponent_1","__vue_script__","__vue_render__","class","click","title","bread","_t","collapsable","__vue_staticRenderFns__","_withStripped","__vue_inject_styles__","__vue_scope_id__","__vue_module_identifier__","__vue_is_functional_template__","SideMenu$1","SideMenuGroup","isOpen","locked","toggle","calculateHeight","container","suboptions","link","menuItemHeight","clientHeight","classList","script$1","__vue_script__$1","__vue_render__$1","__vue_staticRenderFns__$1","Targets","FrontiersIcon","__vue_inject_styles__$1","__vue_scope_id__$1","__vue_module_identifier__$1","__vue_is_functional_template__$1","ieURL","url","protocol","hostname","port","pathname","search","hash","substr","indexOf","SideMenuItem","detectHashChangeInIE11","anchorIconClass","icon","wRoute","toLowerCase","wHash","vRoute","getCurrentPath","myPath","path","isNestedVueRoute","pathUrl","c1","c2","c3","$route","navigate","t","VueRouter","setSideMenuBreadCrumbs","href","Self","Blank","$parent","breadcrumbs","$props","reverse","$data","parents","loop","location_hashChangeInIE11","$nextTick","isIE","navigator","created","URL","script$2","__vue_script__$2","__vue_render__$2","__vue_staticRenderFns__$2","__vue_inject_styles__$2","__vue_scope_id__$2","__vue_module_identifier__$2","__vue_is_functional_template__$2","SideMenuItem$1","SideMenuLink","script$3","__vue_script__$3","__vue_render__$3","__vue_staticRenderFns__$3","__vue_inject_styles__$3","__vue_scope_id__$3","__vue_module_identifier__$3","__vue_is_functional_template__$3","LAYOUT_RESIZE_EVENT_NAME","VueComponentResizeEvent","dispatch","details","Event","dispatchEvent","TwoBoxesMixin","endPointX","maxWidth","widthComputedParsed","menuCollapsed","stylesCollapsable","isCollapsing","lockScroll","getCollapsedWidth","sliderVisible_update","dispatchResizeEvent","sliderVisible","isDesktop","myMatchMedia","media","matchMedia","matches","refsLeft","getPropertyValue","resizing","isInternetExplorer11","MSInputMethodContext","documentMode","isEdge","appVersion","isIFirefox","collapsedWidthPx","dragging","event","isIE11","isFirefox","pageX","collapsedWidthPxAsNumber","firstFlow","secondFlow","thirdFlow","fourFlow","collapsing","dragstarting","dataTransfer","refsHandlerImg","handlerImg","setDragImage","dragending","autoExpanding","collapseState","newWidth","timeCollapsing","timeTransitionCollapsing","wait","TwoBoxesMixin$1","Layout","collapsingLeft","isResizable","draggable","drag","dragstart","dblclick","dragend","maxWidthLeft","isCollapsable","css$1","LayoutSideMenu","collapsingSideMenu","components","slot","LayoutSideMenu$1","css$2","css$3","LayoutSingle","sliderTitle","sliderFooterVisible","LayoutSlider","Switcher","isSwitching","stateOn","className","allowClick","isOn","classNames","isDisabled","switchToggle","switchClick","state","switchChange","isOn_updated","newValue","timeTransitionSwitch","Switcher$1","SwitchBlock","hasChildren","switch_change","updated","required","label","SwitcherBlock","description","allowFOSResources","subscriptionTypeId","subscriptionTypeName","isSubscribed","switcherBlock_changed","filteredFOSs","isDisabledFOSSelection","searchDropDown_selectOption","searchDropDown_reset","model","callback","$$v","inputText","currentFOSs","tagCloud_remove","tooltip_show","tooltipDirection","reactivate_all","tooltipIsVisible","tooltip_close","getObjectProperty","option","dataText","keys","debounce","func","callable","args","clearTimeout","SearchInput","showOptions","isSearching","gotFocus","arrowCurrentIndex","dbncSearch","alreadyBinded","showActions","disabled","displayReset","displaySpinner","displayOptions","displaySearchIcon","displayHint","showEmptyCase","footer","searchOnChange","allowReset","emptyCase","hint","validationFunc","focusUpdated","inputEl","searchControl","focus","blur","forceSearch_updated","input_focus","input_blur","updateValue","input","bindArrowFunc","pasteValue","copiedText","clipboardData","getData","preventDefault","selectOption","searchFunc","then","finally","reset","closeSuggestions","onKeyDownListener","containerMenu","maxItems","activeLi","filters","placeholder","keyup","_k","paste","op","_f","SearchDropDown","filteredOptions","selectedOption","strictMode","SearchDropDown$1","TagType","tooltipDiv","Tooltip","injectHtml","mouseover","text","rect","innerText","remove","mouseout","mouseOverFunc","TagCloud","internalTags","getTagClass","Warn","removeTag","setInternalTags","tags","map","m","Info","tags_updated","tooltip","TagCloud$1","Mode","Direction","internalIsVisible","showButton","isOnDemandMode","isOnMouseOverMode","buttonText","mode","OnDemand","OnMouseOver","list","$el","button_click","buttonAction","isVisible_updated","element","showTooltip","hideTooltip","onmouseenter","onmouseleave","Button","color","Tooltip$1","Enums","windowWidth","raiseError","articleAlertsFOS","newTag","elClickedParent","okCallback","koCallback","manageSubscription","subscriptionType","resourceType","isOptIn","currentTarget","selectedTag","subscribedToResources","resource","id","a","sort","b","catch","reason","setWindowWidth","$on","loadKeywords","subscriptionId","switchOn","resourceId","resourceValue","errCallback","token","encodeURIComponent","urlKey","UrlKey","SubscriptionTypeId","ResourceId","ResourceValue","post","Right","Bottom","topPosition","result","f2","articleAlertsType","subscriptionPreferences","queryString","stateOff","saveGlobalStatus","globalUnsubscribeDisabled","refId","section","adjustmentTop","timeOutMenu","sectionPosition","offsetPosition","supportsNativeSmoothScroll","behavior","isGloballyUnsubscribed","categories","setStatusBaseOnUrl","handleApiError","queryParts","query","prop","substring","meta","loadSubcriptionPreferences","activateGlobalSwitcher","PreferencesBlock","scroll","argument","method","DESCRIPTORS","has","cache","thrower","it","argument0","argument1","enumerable","nativeKeys","FAILS_ON_PRIMITIVES","stat","non"],"mappings":"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","file":"js/chunk-38ece642.5069391b.js","sourcesContent":["var fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (METHOD_NAME) {\n // We can't use this feature detection in V8 since it causes\n // deoptimization and serious performance degradation\n // https://github.com/zloirock/core-js/issues/677\n return V8_VERSION >= 51 || !fails(function () {\n var array = [];\n var constructor = array.constructor = {};\n constructor[SPECIES] = function () {\n return { foo: 1 };\n };\n return array[METHOD_NAME](Boolean).foo !== 1;\n });\n};\n","var global = require('../internals/global');\nvar userAgent = require('../internals/engine-user-agent');\n\nvar process = global.process;\nvar versions = process && process.versions;\nvar v8 = versions && versions.v8;\nvar match, version;\n\nif (v8) {\n match = v8.split('.');\n version = match[0] + match[1];\n} else if (userAgent) {\n match = userAgent.match(/Edge\\/(\\d+)/);\n if (!match || match[1] >= 74) {\n match = userAgent.match(/Chrome\\/(\\d+)/);\n if (match) version = match[1];\n }\n}\n\nmodule.exports = version && +version;\n","var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('navigator', 'userAgent') || '';\n","(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('vue-class-component')) :\n typeof define === 'function' && define.amd ? define(['exports', 'vue-class-component'], factory) :\n (global = global || self, factory(global['vue-mixin-decorator'] = {}, global.VueClassComponent));\n}(this, function (exports, VCComponent) { 'use strict';\n\n VCComponent = VCComponent && VCComponent.hasOwnProperty('default') ? VCComponent['default'] : VCComponent;\n\n /**\n * @file Mixins Vue Extension\n * @see https://github.com/vuejs/vue-class-component/issues/91#issuecomment-312534798\n */\n /**\n *\n * @param {typeof Vue} parent\n * @param {typeof Vue} mixins\n * @returns {VueClass}\n * @constructor\n */\n function Mixins(parent) {\n var mixins = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n mixins[_i - 1] = arguments[_i];\n }\n return parent.extend({ mixins: mixins });\n }\n\n /**\n * @file Component Decorator\n * @see https://github.com/vuejs/vue-class-component/issues/91#issuecomment-312534798\n */\n /**\n * Component decorator\n * @param {ComponentOptions | V} options\n * @returns {any}\n * @constructor\n */\n function Component(options) {\n return VCComponent(options);\n }\n\n exports.Mixin = VCComponent;\n exports.Component = Component;\n exports.Mixins = Mixins;\n\n Object.defineProperty(exports, '__esModule', { value: true });\n\n}));\n","'use strict';\nvar $ = require('../internals/export');\nvar $trim = require('../internals/string-trim').trim;\nvar forcedStringTrimMethod = require('../internals/string-trim-forced');\n\n// `String.prototype.trim` method\n// https://tc39.github.io/ecma262/#sec-string.prototype.trim\n$({ target: 'String', proto: true, forced: forcedStringTrimMethod('trim') }, {\n trim: function trim() {\n return $trim(this);\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar $filter = require('../internals/array-iteration').filter;\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('filter');\n// Edge 14- issue\nvar USES_TO_LENGTH = arrayMethodUsesToLength('filter');\n\n// `Array.prototype.filter` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.filter\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT || !USES_TO_LENGTH }, {\n filter: function filter(callbackfn /* , thisArg */) {\n return $filter(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","// a string of all valid unicode whitespaces\n// eslint-disable-next-line max-len\nmodule.exports = '\\u0009\\u000A\\u000B\\u000C\\u000D\\u0020\\u00A0\\u1680\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200A\\u202F\\u205F\\u3000\\u2028\\u2029\\uFEFF';\n","var requireObjectCoercible = require('../internals/require-object-coercible');\nvar whitespaces = require('../internals/whitespaces');\n\nvar whitespace = '[' + whitespaces + ']';\nvar ltrim = RegExp('^' + whitespace + whitespace + '*');\nvar rtrim = RegExp(whitespace + whitespace + '*$');\n\n// `String.prototype.{ trim, trimStart, trimEnd, trimLeft, trimRight }` methods implementation\nvar createMethod = function (TYPE) {\n return function ($this) {\n var string = String(requireObjectCoercible($this));\n if (TYPE & 1) string = string.replace(ltrim, '');\n if (TYPE & 2) string = string.replace(rtrim, '');\n return string;\n };\n};\n\nmodule.exports = {\n // `String.prototype.{ trimLeft, trimStart }` methods\n // https://tc39.github.io/ecma262/#sec-string.prototype.trimstart\n start: createMethod(1),\n // `String.prototype.{ trimRight, trimEnd }` methods\n // https://tc39.github.io/ecma262/#sec-string.prototype.trimend\n end: createMethod(2),\n // `String.prototype.trim` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.trim\n trim: createMethod(3)\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar $find = require('../internals/array-iteration').find;\nvar addToUnscopables = require('../internals/add-to-unscopables');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar FIND = 'find';\nvar SKIPS_HOLES = true;\n\nvar USES_TO_LENGTH = arrayMethodUsesToLength(FIND);\n\n// Shouldn't skip holes\nif (FIND in []) Array(1)[FIND](function () { SKIPS_HOLES = false; });\n\n// `Array.prototype.find` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.find\n$({ target: 'Array', proto: true, forced: SKIPS_HOLES || !USES_TO_LENGTH }, {\n find: function find(callbackfn /* , that = undefined */) {\n return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n\n// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables(FIND);\n","'use strict';\nvar toPrimitive = require('../internals/to-primitive');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = function (object, key, value) {\n var propertyKey = toPrimitive(key);\n if (propertyKey in object) definePropertyModule.f(object, propertyKey, createPropertyDescriptor(0, value));\n else object[propertyKey] = value;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar fails = require('../internals/fails');\nvar isArray = require('../internals/is-array');\nvar isObject = require('../internals/is-object');\nvar toObject = require('../internals/to-object');\nvar toLength = require('../internals/to-length');\nvar createProperty = require('../internals/create-property');\nvar arraySpeciesCreate = require('../internals/array-species-create');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar IS_CONCAT_SPREADABLE = wellKnownSymbol('isConcatSpreadable');\nvar MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF;\nvar MAXIMUM_ALLOWED_INDEX_EXCEEDED = 'Maximum allowed index exceeded';\n\n// We can't use this feature detection in V8 since it causes\n// deoptimization and serious performance degradation\n// https://github.com/zloirock/core-js/issues/679\nvar IS_CONCAT_SPREADABLE_SUPPORT = V8_VERSION >= 51 || !fails(function () {\n var array = [];\n array[IS_CONCAT_SPREADABLE] = false;\n return array.concat()[0] !== array;\n});\n\nvar SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('concat');\n\nvar isConcatSpreadable = function (O) {\n if (!isObject(O)) return false;\n var spreadable = O[IS_CONCAT_SPREADABLE];\n return spreadable !== undefined ? !!spreadable : isArray(O);\n};\n\nvar FORCED = !IS_CONCAT_SPREADABLE_SUPPORT || !SPECIES_SUPPORT;\n\n// `Array.prototype.concat` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.concat\n// with adding support of @@isConcatSpreadable and @@species\n$({ target: 'Array', proto: true, forced: FORCED }, {\n concat: function concat(arg) { // eslint-disable-line no-unused-vars\n var O = toObject(this);\n var A = arraySpeciesCreate(O, 0);\n var n = 0;\n var i, k, length, len, E;\n for (i = -1, length = arguments.length; i < length; i++) {\n E = i === -1 ? O : arguments[i];\n if (isConcatSpreadable(E)) {\n len = toLength(E.length);\n if (n + len > MAX_SAFE_INTEGER) throw TypeError(MAXIMUM_ALLOWED_INDEX_EXCEEDED);\n for (k = 0; k < len; k++, n++) if (k in E) createProperty(A, n, E[k]);\n } else {\n if (n >= MAX_SAFE_INTEGER) throw TypeError(MAXIMUM_ALLOWED_INDEX_EXCEEDED);\n createProperty(A, n++, E);\n }\n }\n A.length = n;\n return A;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar IndexedObject = require('../internals/indexed-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\n\nvar nativeJoin = [].join;\n\nvar ES3_STRINGS = IndexedObject != Object;\nvar STRICT_METHOD = arrayMethodIsStrict('join', ',');\n\n// `Array.prototype.join` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.join\n$({ target: 'Array', proto: true, forced: ES3_STRINGS || !STRICT_METHOD }, {\n join: function join(separator) {\n return nativeJoin.call(toIndexedObject(this), separator === undefined ? ',' : separator);\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar toInteger = require('../internals/to-integer');\nvar toLength = require('../internals/to-length');\nvar toObject = require('../internals/to-object');\nvar arraySpeciesCreate = require('../internals/array-species-create');\nvar createProperty = require('../internals/create-property');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('splice');\nvar USES_TO_LENGTH = arrayMethodUsesToLength('splice', { ACCESSORS: true, 0: 0, 1: 2 });\n\nvar max = Math.max;\nvar min = Math.min;\nvar MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF;\nvar MAXIMUM_ALLOWED_LENGTH_EXCEEDED = 'Maximum allowed length exceeded';\n\n// `Array.prototype.splice` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.splice\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT || !USES_TO_LENGTH }, {\n splice: function splice(start, deleteCount /* , ...items */) {\n var O = toObject(this);\n var len = toLength(O.length);\n var actualStart = toAbsoluteIndex(start, len);\n var argumentsLength = arguments.length;\n var insertCount, actualDeleteCount, A, k, from, to;\n if (argumentsLength === 0) {\n insertCount = actualDeleteCount = 0;\n } else if (argumentsLength === 1) {\n insertCount = 0;\n actualDeleteCount = len - actualStart;\n } else {\n insertCount = argumentsLength - 2;\n actualDeleteCount = min(max(toInteger(deleteCount), 0), len - actualStart);\n }\n if (len + insertCount - actualDeleteCount > MAX_SAFE_INTEGER) {\n throw TypeError(MAXIMUM_ALLOWED_LENGTH_EXCEEDED);\n }\n A = arraySpeciesCreate(O, actualDeleteCount);\n for (k = 0; k < actualDeleteCount; k++) {\n from = actualStart + k;\n if (from in O) createProperty(A, k, O[from]);\n }\n A.length = actualDeleteCount;\n if (insertCount < actualDeleteCount) {\n for (k = actualStart; k < len - actualDeleteCount; k++) {\n from = k + actualDeleteCount;\n to = k + insertCount;\n if (from in O) O[to] = O[from];\n else delete O[to];\n }\n for (k = len; k > len - actualDeleteCount + insertCount; k--) delete O[k - 1];\n } else if (insertCount > actualDeleteCount) {\n for (k = len - actualDeleteCount; k > actualStart; k--) {\n from = k + actualDeleteCount - 1;\n to = k + insertCount - 1;\n if (from in O) O[to] = O[from];\n else delete O[to];\n }\n }\n for (k = 0; k < insertCount; k++) {\n O[k + actualStart] = arguments[k + 2];\n }\n O.length = len - actualDeleteCount + insertCount;\n return A;\n }\n});\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{attrs:{\"id\":\"preferences\"}},[_c('layout-side-menu',{attrs:{\"title\":\"Email Preferences\",\"top\":\"66\",\"collapsedWidthPx\":\"260px\",\"widthLeft\":\"260px\",\"max-width-left\":\"250px\",\"is-collapsable\":false,\"is-resizable\":false},scopedSlots:_vm._u([{key:\"sideMenuHeader\",fn:function(){return [_vm._v(\" Email Preferences \")]},proxy:true},{key:\"sideMenuItems\",fn:function(){return _vm._l((_vm.subscriptionPreferences),function(block){return _c('side-menu-item',{key:block.categoryId,attrs:{\"title\":block.categoryName,\"path\":_vm.getPathWithHash(block),\"show-hash\":\"true\",\"target\":\"Self\"},on:{\"click\":function($event){_vm.smoothScroll(_vm.getRefName(block))}}})})},proxy:true},{key:\"right\",fn:function(){return _vm._l((_vm.subscriptionPreferences),function(block,index){return _c('div',{directives:[{name:\"scroll\",rawName:\"v-scroll\",value:({ 'location' : '#' + _vm.getRefName(block), 'lastLocation': '#' + _vm.getRefNameLastBlock }),expression:\"{ 'location' : '#' + getRefName(block), 'lastLocation': '#' + getRefNameLastBlock }\"}],key:index,ref:_vm.getRefName(block),refInFor:true,staticClass:\"Backoffice__section\"},[(_vm.isFromEmail && index === 0)?[_c('div',{staticClass:\"Backoffice__forms Backoffice__forms--connect Backoffice__forms--fromEmail\"},[_c('div',{staticClass:\"Backoffice__forms__title\"},[_vm._v(\"Email Address\")]),_c('input',{staticClass:\"Input is-disabled\",attrs:{\"type\":\"text\",\"id\":\"emailInput\"},domProps:{\"value\":_vm.email}})])]:_vm._e(),(block.categoryId === 0)?[_c('div',{staticClass:\"Backoffice__forms Backoffice__forms--connect\"},[_c('div',{staticClass:\"Backoffice__forms__title\"},[_vm._v(_vm._s(block.categoryName))]),_c('div',{staticClass:\"Backoffice__forms__text\"},[_vm._v(_vm._s(block.categoryDesc))]),_c('switcher-block',{attrs:{\"code\":\"global-switcher\",\"label\":block.subscriptionTypes[0].subscriptionTypeDesc,\"is-on\":_vm.isOnGlobalSwitcher},on:{\"switch-block-change\":_vm.globalSwitcher_changed}})],1)]:[_c('preferences-block',{attrs:{\"id\":block.categoryId,\"title\":block.categoryName,\"description\":block.categoryDesc,\"subscription-types\":block.subscriptionTypes,\"is-disabled\":_vm.allDisabled}})]],2)})},proxy:true}])})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { AxiosError, AxiosResponse } from 'axios';\nimport VueRouter from 'vue-router';\n\nexport class ApiErrorHandler {\n\n public static handleApiError(error: AxiosError, router: VueRouter | null = null, onErrorFunc: any = null): void {\n console.log(error);\n const iError = ApiErrorHandler.getMappedError(parseInt(error.request.status, 0));\n // @ts-ignore\n let errorMessage = iError.message || error.response.statusText;\n\n if (iError.reload) {\n window.location.reload();\n }\n\n if (typeof onErrorFunc === 'function') {\n onErrorFunc(iError);\n } else {\n if (iError.code === 400) {\n // @ts-ignore\n for (const property in error.response.data) {\n // @ts-ignore\n errorMessage += property + ':' + error.response.data[property];\n }\n }\n\n if (iError.redirect) {\n if (router) {\n router.push({\n name: 'Error Page',\n params: {\n errorCode: iError.code.toString(),\n errorMessage,\n },\n });\n } else {\n // @ts-ignore\n throw new Error(error.message);\n }\n }\n }\n }\n private static genericError: IInternalError = { code: 500, message: 'Error 500', reload: false, redirect: true };\n private static error404: IInternalError = { code: 404, message: 'Resource not found', reload: false, redirect: true };\n private static error403: IInternalError = { code: 403, message: 'You don\\'t have permissions to view this page.', reload: false, redirect: true };\n private static error401: IInternalError = { code: 401, message: 'Unauthorized', reload: true, redirect: false };\n private static error400: IInternalError = { code: 400, message: 'API error', reload: false, redirect: true };\n private static errors: IInternalError[] = [ApiErrorHandler.error404, ApiErrorHandler.error403,\n ApiErrorHandler.error401, ApiErrorHandler.error400];\n\n private static getMappedError(code: number): IInternalError {\n for (let i = 0; i < ApiErrorHandler.errors.length; i += 1) {\n if (code === ApiErrorHandler.errors[i].code) {\n return ApiErrorHandler.errors[i];\n }\n }\n return this.genericError;\n }\n}\n\ninterface IInternalError {\n code: number;\n message: string;\n reload: boolean;\n redirect: boolean;\n}\n","/**\n * The DocScroll directive is only enable when the binded offset is greater than zero.\n */\nexport class Scroll {\n private static get CALLBACK_FUNC(): string { return 'setWindowLocation'; }\n\n private static lastScrollDirection: string = 'down';\n private static scrollY: number = 0;\n\n public bind(el: HTMLElement, binding: any, vnode: any): void {\n\n vnode.context[Scroll.CALLBACK_FUNC] = () => {\n if (window.innerWidth < 769) { return; }\n\n let scrollDirection: string = '';\n let isElActive;\n\n const newLocation = binding.value.location;\n const screenPosition = el.getBoundingClientRect().top;\n const offset = 51;\n\n // checking scroll direction\n if (window.pageYOffset > Scroll.scrollY) {\n scrollDirection = 'down';\n\n } else if (window.pageYOffset < Scroll.scrollY) {\n scrollDirection = 'up';\n\n } else if (window.pageYOffset === Scroll.scrollY) {\n scrollDirection = Scroll.lastScrollDirection;\n }\n\n // checking if the element can be affected, this means is visible partially in the screen\n const topAppearsOnTopScreen = window.pageYOffset >= el.offsetTop - offset;\n const bottomAppearsOnBottomScreen = window.pageYOffset < (el.offsetHeight + el.offsetTop - offset);\n if (topAppearsOnTopScreen && bottomAppearsOnBottomScreen) {\n isElActive = true;\n } else {\n isElActive = false;\n }\n\n if (isElActive) {\n if (scrollDirection === 'down') {\n window.location = newLocation;\n\n if (window.innerHeight + window.scrollY >= document.body.offsetHeight) {\n window.location = binding.value.lastLocation;\n }\n\n } else if (scrollDirection === 'up' && screenPosition >= offset) {\n window.location = newLocation;\n }\n }\n\n Scroll.lastScrollDirection = scrollDirection;\n Scroll.scrollY = window.pageYOffset;\n };\n\n document.addEventListener('scroll', vnode.context[Scroll.CALLBACK_FUNC]);\n }\n\n public unbind(el: HTMLElement, binding: any, vnode: any): void {\n document.removeEventListener('scroll', vnode.context[Scroll.CALLBACK_FUNC]);\n }\n}\n","function ___$insertStyle(css) {\n if (!css) {\n return;\n }\n if (typeof window === 'undefined') {\n return;\n }\n\n var style = document.createElement('style');\n\n style.setAttribute('type', 'text/css');\n style.innerHTML = css;\n document.head.appendChild(style);\n return css;\n}\n\nvar LockScroll = function LockScroll () {};\n\nLockScroll.getScrollbarWidth = function getScrollbarWidth () {\r\n var outer = document.createElement('div');\r\n outer.style.visibility = 'hidden';\r\n outer.style.overflow = 'scroll';\r\n outer.style.msOverflowStyle = 'scrollbar';\r\n document.body.appendChild(outer);\r\n var inner = document.createElement('div');\r\n outer.appendChild(inner);\r\n var scrollbarWidth = outer.offsetWidth - inner.offsetWidth;\r\n if (outer.parentNode !== null) {\r\n outer.parentNode.removeChild(outer);\r\n }\r\n return scrollbarWidth;\r\n};\r\nLockScroll.isThereScrollbar = function isThereScrollbar () {\r\n var documentHeight = document.documentElement.scrollHeight;\r\n var windowHeight = window.innerHeight;\r\n if (documentHeight > windowHeight) {\r\n return true;\r\n }\r\n return false;\r\n};\r\nLockScroll.checkBindingValue = function checkBindingValue (binding) {\r\n if (typeof binding.value !== 'boolean') {\r\n throw new Error('The binding of lock-scroll directive must be a boolean value.');\r\n }\r\n};\r\n/**\r\n * This function saves the current position of the scroll in an attribute in body tag and remove the scroll\r\n */\r\nLockScroll.lockBodyScroll = function lockBodyScroll (html, body, wrap) {\r\n var isScroll = this.isThereScrollbar();\r\n if (window.pageYOffset) {\r\n var scrollTop = window.pageYOffset;\r\n wrap.style.top = (-scrollTop) + \"px\";\r\n body.setAttribute('data-scroll-top', scrollTop.toString());\r\n }\r\n else {\r\n body.setAttribute('data-scroll-top', '');\r\n }\r\n wrap.style.display = 'block';\r\n body.style.height = '100%';\r\n body.style.width = '100%';\r\n body.style.overflow = 'hidden';\r\n body.style.position = 'fixed';\r\n if (isScroll) {\r\n body.style.width = \"calc(100% - \" + (this.getScrollbarWidth()) + \"px\";\r\n }\r\n html.style.height = '100%';\r\n html.style.overflow = 'hidden';\r\n};\r\n/**\r\n * This function unlock the scroll and gets the scroll back to its previous position before it was locked\r\n */\r\nLockScroll.unlockBodyScroll = function unlockBodyScroll (html, body, wrap) {\r\n var dataScrollTopValue = body.getAttribute(LockScroll.DATA_SCROLL_TOP_ATTR);\r\n body.style.height = '';\r\n body.style.width = '';\r\n body.style.overflow = '';\r\n body.style.position = '';\r\n html.style.height = '';\r\n html.style.overflow = '';\r\n wrap.style.top = '';\r\n wrap.style.display = '';\r\n if (dataScrollTopValue) {\r\n window.scrollTo(0, parseInt(dataScrollTopValue, 10));\r\n window.setTimeout(function () {\r\n body.setAttribute('data-scroll-top', '');\r\n }, 0);\r\n }\r\n};\r\nLockScroll.isValidContext = function isValidContext (siblings, firstChild) {\r\n if (siblings.length === 0) {\r\n throw new Error('[directive:lock-scroll] no valid siblings of body have been found');\r\n }\r\n if (siblings.length > 1) {\r\n console.warn('[directive:lock-scroll] the body must only contain one div element');\r\n }\r\n if (firstChild) {\r\n if (getComputedStyle(firstChild).position !== 'relative') {\r\n console.warn('[directive:lock-scroll] the sibling element must have position relative');\r\n }\r\n }\r\n};\r\nLockScroll.prototype.update = function update (el, binding, vnode) {\r\n if (binding.oldValue === binding.value) {\r\n return;\r\n }\r\n var body = document.getElementsByTagName('body')[0];\r\n var html = document.getElementsByTagName('html')[0];\r\n var bodyChildren = document.querySelectorAll('body > *:not(script):not(noscript)');\r\n var firstChild = (bodyChildren.length > 0 ? bodyChildren[0] : null);\r\n var delayUnlockScroll = 400;\r\n LockScroll.isValidContext(bodyChildren, firstChild);\r\n if (binding.value === true) {\r\n LockScroll.lockBodyScroll(html, body, firstChild);\r\n }\r\n else {\r\n setTimeout(function () {\r\n LockScroll.unlockBodyScroll(html, body, firstChild);\r\n }, delayUnlockScroll);\r\n }\r\n};\r\nLockScroll.prototype.bind = function bind (el, binding, vnode) {\r\n LockScroll.checkBindingValue(binding);\r\n};\r\nLockScroll.DATA_SCROLL_TOP_ATTR = 'data-scroll-top';\n\n/*\r\n * This function checks if the element is in Shadow DOM and returns its root element\r\n * Othewise it returns null\r\n * @param {HTMLElement} el Element to check if it is in a Shadow DOM\r\n * @returns {HTMLElement | null} Root element of the shadow DOM or null\r\n */\r\nfunction getShadowDomRoot(el) {\r\n var isShadowDom = true;\r\n var lastParent = el;\r\n while (lastParent.parentElement != null) {\r\n lastParent = lastParent.parentElement;\r\n if (lastParent.tagName === 'BODY') {\r\n isShadowDom = false;\r\n break;\r\n }\r\n }\r\n return isShadowDom ? lastParent : null;\r\n}\n\nvar ClickOutside = function ClickOutside () {};\n\nvar staticAccessors = { CALLBACK_FUNC: { configurable: true } };\n\nstaticAccessors.CALLBACK_FUNC.get = function () { return 'ClickOutsideFunc'; };\r\nClickOutside.isVisible = function isVisible (el) {\r\n if (el !== null) {\r\n return el.getClientRects().length !== 0;\r\n }\r\n else {\r\n return false;\r\n }\r\n};\r\nClickOutside.prototype.bind = function bind (el, binding, vnode) {\r\n vnode.context[ClickOutside.CALLBACK_FUNC] = function (e) {\r\n e.stopPropagation();\r\n // @ts-ignore\r\n if (ClickOutside.isVisible(el) && !el.contains(e.target)) {\r\n binding.value();\r\n }\r\n };\r\n};\r\nClickOutside.prototype.inserted = function inserted (el, binding, vnode) {\r\n var shadowRoot = getShadowDomRoot(el);\r\n if (shadowRoot !== null) {\r\n shadowRoot.addEventListener('click', vnode.context[ClickOutside.CALLBACK_FUNC]);\r\n shadowRoot.addEventListener('touchstart', vnode.context[ClickOutside.CALLBACK_FUNC]);\r\n }\r\n document.addEventListener('click', vnode.context[ClickOutside.CALLBACK_FUNC]);\r\n document.addEventListener('touchstart', vnode.context[ClickOutside.CALLBACK_FUNC]);\r\n};\r\nClickOutside.prototype.unbind = function unbind (el, binding, vnode) {\r\n var shadowRoot = getShadowDomRoot(el);\r\n if (shadowRoot !== null) {\r\n shadowRoot.removeEventListener('click', vnode.context[ClickOutside.CALLBACK_FUNC]);\r\n shadowRoot.removeEventListener('touchstart', vnode.context[ClickOutside.CALLBACK_FUNC]);\r\n }\r\n document.removeEventListener('click', vnode.context[ClickOutside.CALLBACK_FUNC]);\r\n document.removeEventListener('touchstart', vnode.context[ClickOutside.CALLBACK_FUNC]);\r\n};\n\nObject.defineProperties( ClickOutside, staticAccessors );\n\nvar CheckPosition = function CheckPosition () {};\n\nCheckPosition.clearInlinePosition = function clearInlinePosition (el) {\r\n el.style.top = '';\r\n el.style.bottom = '';\r\n el.style.left = '';\r\n el.style.right = '';\r\n};\r\nCheckPosition.isOverflownVertically = function isOverflownVertically (el) {\r\n var offset = el.getBoundingClientRect().top;\r\n var height = el.offsetHeight;\r\n var margin = 10;\r\n if (offset + height + margin > window.innerHeight) {\r\n return true;\r\n }\r\n else {\r\n return false;\r\n }\r\n};\r\nCheckPosition.isOverflownHorizontally = function isOverflownHorizontally (el) {\r\n var offset = el.getBoundingClientRect().left;\r\n var width = el.offsetWidth;\r\n var margin = 20;\r\n if (offset + width + margin > window.innerWidth) {\r\n return true;\r\n }\r\n else {\r\n return false;\r\n }\r\n};\r\nCheckPosition.checkBindingValue = function checkBindingValue (binding) {\r\n if (typeof binding.value !== 'boolean') {\r\n throw new Error('The binding of check-position directive must be a boolean value.');\r\n }\r\n};\r\nCheckPosition.prototype.update = function update (el, binding, vnode) {\r\n if (binding.oldValue === binding.value) {\r\n return;\r\n }\r\n if (binding.value === false) {\r\n CheckPosition.clearInlinePosition(el);\r\n }\r\n else {\r\n if (CheckPosition.isOverflownVertically(el)) {\r\n el.style.top = 'auto';\r\n el.style.bottom = '100%';\r\n }\r\n if (CheckPosition.isOverflownHorizontally(el)) {\r\n el.style.left = 'auto';\r\n el.style.right = '0';\r\n }\r\n }\r\n};\r\nCheckPosition.prototype.bind = function bind (el, binding, vnode) {\r\n CheckPosition.checkBindingValue(binding);\r\n};\n\nvar EscapePress = function EscapePress () {};\n\nvar staticAccessors$1 = { ESCAPE_KEY: { configurable: true },CALLBACK_FUNC: { configurable: true } };\n\nstaticAccessors$1.ESCAPE_KEY.get = function () { return 27; };\r\nstaticAccessors$1.CALLBACK_FUNC.get = function () { return 'EscapePressFunc'; };\r\nEscapePress.onKeyUp = function onKeyUp (callbackFunc, $event) {\r\n if ($event.keyCode === EscapePress.ESCAPE_KEY && callbackFunc != null) {\r\n callbackFunc();\r\n }\r\n};\r\nEscapePress.prototype.update = function update (el, binding, vnode) {\r\n if (binding.arg === false) {\r\n document.removeEventListener('keyup', vnode.context[EscapePress.CALLBACK_FUNC]);\r\n }\r\n else {\r\n document.addEventListener('keyup', vnode.context[EscapePress.CALLBACK_FUNC]);\r\n }\r\n};\r\nEscapePress.prototype.bind = function bind (el, binding, vnode) {\r\n if (typeof binding.value !== 'function') {\r\n throw new Error('[directive:on-escape] The binding value must be a function');\r\n }\r\n vnode.context[EscapePress.CALLBACK_FUNC] = EscapePress.onKeyUp.bind(this, binding.value);\r\n};\r\nEscapePress.prototype.unbind = function unbind (el, binding, vnode) {\r\n document.removeEventListener('keyup', vnode.context[EscapePress.CALLBACK_FUNC]);\r\n};\n\nObject.defineProperties( EscapePress, staticAccessors$1 );\n\nvar Directives = {\r\n LockScroll: LockScroll,\r\n ClickOutside: ClickOutside,\r\n CheckPosition: CheckPosition,\r\n EscapePress: EscapePress,\r\n};\r\nvar Helpers = {\r\n getShadowDomRoot: getShadowDomRoot,\r\n};\n\nexport { Directives, Helpers };\n","import { Prop, Watch, Component, Vue, Emit } from 'vue-property-decorator';\nimport { Directives } from '@frontiers-vue/common';\n\n/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n\r\nfunction __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\n\nfunction styleInject(css, ref) {\n if ( ref === void 0 ) { ref = {}; }\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nvar css = \"@charset \\\"UTF-8\\\";\\n/*------------------------------------------------------------------ Colors */\\n/*------------------------------------------------------------------ Filters */\\n/*------------------------------------------------------------------ Filters Grey IE11 */\\n/*------------------------------------------------------------------ Dimensions */\\n/*------------------------------------------------------------------ Bezier */\\n/*------------------------------------------------------------------ Media Queries */\\n/*------------------------------------------------------------------ Media Queries CSS Hacks */\\n@import url(\\\"https://9d0dd7a648345f19af83-877d2ecaf11b88d5e17327c758e17ef6.ssl.cf2.rackcdn.com/museo-sans-1.0.1/css/museo-sans.css\\\");\\n@font-face {\\n font-family: \\\"Frontiers-Iconography\\\";\\n src: url(data:font/truetype;charset=utf-8;base64,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) format(\\\"truetype\\\");\\n font-weight: normal;\\n font-style: normal;\\n}\\n.SideMenu {\\n position: fixed;\\n top: 0;\\n left: 0;\\n height: 100%;\\n width: 240px;\\n background: #ffffff;\\n display: -webkit-box;\\n display: -ms-flexbox;\\n display: flex;\\n -webkit-box-orient: vertical;\\n -webkit-box-direction: normal;\\n -ms-flex-direction: column;\\n flex-direction: column;\\n -webkit-transition: width 400ms ease-in-out;\\n transition: width 400ms ease-in-out;\\n min-width: 0;\\n}\\n.SideMenu--collapsed {\\n width: 50px;\\n -webkit-transition: width 400ms ease-in-out;\\n transition: width 400ms ease-in-out;\\n}\\n.SideMenu--collapsed .SideMenu__collapseArrow {\\n -webkit-transform: rotate(0deg);\\n transform: rotate(0deg);\\n}\\n.SideMenu--collapsed .SideMenu__nav {\\n opacity: 0;\\n}\\n@media only screen and (max-width:768px) {\\n .SideMenu {\\n position: static;\\n height: auto !important;\\n }\\n .SideMenu__overlay {\\n display: none;\\n top: 0;\\n left: 0;\\n position: fixed;\\n background: rgba(0, 0, 0, 0.5);\\n width: 100vw;\\n height: 100vh;\\n opacity: 0;\\n z-index: 199;\\n -webkit-transition: opacity 400ms ease-in-out;\\n transition: opacity 400ms ease-in-out;\\n }\\n .SideMenu--open {\\n left: 0;\\n }\\n .SideMenu--open .SideMenu__overlay {\\n opacity: 1;\\n pointer-events: all;\\n display: block;\\n }\\n .SideMenu--open .SideMenu__nav {\\n left: 0;\\n }\\n .SideMenu--open .SideMenu__breadCrumbsWay:before {\\n -webkit-transform: rotate(180deg);\\n transform: rotate(180deg);\\n }\\n}\\n.SideMenu__header {\\n padding: 20px 20px 15px 20px;\\n}\\n@media only screen and (max-width:768px) {\\n .SideMenu__header {\\n display: none;\\n }\\n}\\n.SideMenu__title {\\n font-size: 13px;\\n line-height: 18px;\\n font-weight: 300;\\n color: #020202;\\n white-space: unset;\\n}\\n.SideMenu__title span {\\n width: 2px;\\n height: 14px;\\n background: #999999;\\n display: inline-block;\\n margin: 0 5px;\\n vertical-align: text-top;\\n}\\n.SideMenu__backTo {\\n font-size: 11px;\\n line-height: 13px;\\n font-weight: 300;\\n color: #00a0d2;\\n margin-bottom: 5px;\\n padding-left: 11px;\\n position: relative;\\n cursor: pointer;\\n}\\n.SideMenu__backTo:after {\\n content: \\\"\\\";\\n font-family: \\\"Frontiers-Iconography\\\" !important;\\n color: #00a0d2;\\n font-size: 11px;\\n line-height: 11px;\\n position: absolute;\\n top: 0;\\n left: -2px;\\n}\\n.SideMenu__breadCrumbsWay {\\n cursor: pointer;\\n padding: 0 0px 0 40px;\\n top: 0;\\n left: 0;\\n width: 100%;\\n position: fixed;\\n background-color: #ffffff;\\n border-bottom: 1px solid #e0e0e0;\\n -webkit-box-shadow: 0 0 7px rgba(0, 0, 0, 0.13);\\n box-shadow: 0 0 7px rgba(0, 0, 0, 0.13);\\n -webkit-box-sizing: border-box;\\n box-sizing: border-box;\\n z-index: 201;\\n display: none;\\n -webkit-box-flex: 0;\\n -ms-flex: 0 0 auto;\\n flex: 0 0 auto;\\n -webkit-box-orient: horizontal;\\n -webkit-box-direction: normal;\\n -ms-flex-flow: row nowrap;\\n flex-flow: row nowrap;\\n -webkit-box-pack: start;\\n -ms-flex-pack: start;\\n justify-content: flex-start;\\n overflow: hidden;\\n font-size: 13px;\\n line-height: 42px;\\n font-weight: 300;\\n color: #555555;\\n}\\n.SideMenu__breadCrumbsWay:before {\\n content: \\\"\\\";\\n font-family: \\\"Frontiers-Iconography\\\" !important;\\n color: #bababa;\\n font-size: 14px;\\n line-height: 14px;\\n position: absolute;\\n top: 14px;\\n left: 20px;\\n -webkit-transition: -webkit-transform 400ms cubic-bezier(0.37, 0.74, 0.15, 1);\\n transition: -webkit-transform 400ms cubic-bezier(0.37, 0.74, 0.15, 1);\\n transition: transform 400ms cubic-bezier(0.37, 0.74, 0.15, 1);\\n transition: transform 400ms cubic-bezier(0.37, 0.74, 0.15, 1), -webkit-transform 400ms cubic-bezier(0.37, 0.74, 0.15, 1);\\n}\\n@media only screen and (max-width:768px) {\\n .SideMenu__breadCrumbsWay {\\n display: -webkit-box;\\n display: -ms-flexbox;\\n display: flex;\\n }\\n}\\n.SideMenu__breadCrumbsWay:after {\\n content: \\\"\\\";\\n position: absolute;\\n right: 0;\\n width: 35px;\\n height: 100%;\\n background-image: -webkit-gradient(linear, left top, right top, from(rgba(255, 255, 255, 0)), to(#ffffff));\\n background-image: linear-gradient(to right, rgba(255, 255, 255, 0), #ffffff);\\n}\\n.SideMenu__breadCrumbsWay ul {\\n white-space: nowrap;\\n overflow-x: auto;\\n overflow-y: hidden;\\n scroll-behavior: smooth;\\n}\\n.SideMenu__breadCrumbsWay ul li {\\n display: inline;\\n margin-right: 20px;\\n position: relative;\\n}\\n.SideMenu__breadCrumbsWay ul li:after {\\n content: \\\"\\\";\\n font-family: \\\"Frontiers-Iconography\\\" !important;\\n color: #bababa;\\n font-size: 11px;\\n line-height: 11px;\\n position: absolute;\\n top: 2px;\\n right: -16px;\\n}\\n.SideMenu__breadCrumbsWay ul li:last-child:after {\\n display: none;\\n}\\n.SideMenu__nav {\\n width: 100%;\\n height: 100%;\\n -webkit-box-flex: 1;\\n -ms-flex: 1 0 auto;\\n flex: 1 0 auto;\\n -webkit-transition: opacity 400ms ease-in-out;\\n transition: opacity 400ms ease-in-out;\\n -webkit-box-sizing: border-box;\\n box-sizing: border-box;\\n overflow: auto;\\n padding-bottom: 40px;\\n}\\n.SideMenu__nav::-webkit-scrollbar {\\n background: #ffffff;\\n -webkit-appearance: none;\\n width: 7px;\\n height: 7px;\\n}\\n.SideMenu__nav::-webkit-scrollbar-thumb {\\n border-radius: 0;\\n background-color: transparent;\\n -webkit-box-shadow: 0 0 1px rgba(255, 255, 255, 0.5);\\n}\\n.SideMenu__nav:hover::-webkit-scrollbar {\\n background: #ffffff;\\n -webkit-appearance: none;\\n width: 7px;\\n height: 7px;\\n}\\n.SideMenu__nav:hover::-webkit-scrollbar-thumb {\\n border-radius: 0;\\n background-color: #e0e0e0;\\n -webkit-box-shadow: 0 0 1px rgba(255, 255, 255, 0.5);\\n}\\n@media only screen and (max-width:768px) {\\n .SideMenu__nav {\\n padding-top: 42px;\\n position: fixed;\\n top: 0;\\n left: 0;\\n width: 85vw;\\n background: #ffffff;\\n -webkit-transition: left 400ms cubic-bezier(0.37, 0.74, 0.15, 1), opacity 0ms;\\n transition: left 400ms cubic-bezier(0.37, 0.74, 0.15, 1), opacity 0ms;\\n left: -85vw;\\n z-index: 200;\\n }\\n .SideMenu__nav::-webkit-scrollbar {\\n display: none;\\n }\\n}\\n@media only screen and (max-width:1024px) {\\n .SideMenu__nav::-webkit-scrollbar {\\n display: none;\\n }\\n}\\n.SideMenu__nav__item {\\n padding: 0;\\n display: list-item;\\n}\\n.SideMenu__nav__item:last-child {\\n margin-bottom: 45px;\\n}\\n.SideMenu__nav__item a {\\n white-space: nowrap;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n font-size: 13px;\\n line-height: 48px;\\n font-weight: 300;\\n color: #555555;\\n cursor: pointer;\\n position: relative;\\n display: block;\\n}\\n.SideMenu__nav__item a:hover {\\n background: #F0F0F0;\\n}\\n.SideMenu__nav__item--active {\\n position: relative;\\n}\\n.SideMenu__nav__item--active:after {\\n content: \\\"\\\";\\n width: 3px;\\n height: 100%;\\n background: #00a0d2;\\n position: absolute;\\n top: 0;\\n left: 0;\\n}\\n.SideMenu__nav__item--active > a, .SideMenu__nav__item--active > a:hover {\\n background: #e5f5fa;\\n color: #00a0d2;\\n font-weight: 700;\\n}\\n.SideMenu__nav__item--group {\\n height: 42px;\\n overflow: hidden;\\n -webkit-transition: height 700ms cubic-bezier(0.37, 0.74, 0.15, 1);\\n transition: height 700ms cubic-bezier(0.37, 0.74, 0.15, 1);\\n}\\n.SideMenu__nav__item--group > a:before {\\n content: \\\"\\\";\\n font-family: \\\"Frontiers-Iconography\\\" !important;\\n color: #bababa;\\n font-size: 12px;\\n line-height: 12px;\\n position: absolute;\\n top: 17px;\\n left: -1px;\\n -webkit-transition: -webkit-transform 400ms 0 cubic-bezier(0.37, 0.74, 0.15, 1);\\n transition: -webkit-transform 400ms 0 cubic-bezier(0.37, 0.74, 0.15, 1);\\n transition: transform 400ms 0 cubic-bezier(0.37, 0.74, 0.15, 1);\\n transition: transform 400ms 0 cubic-bezier(0.37, 0.74, 0.15, 1), -webkit-transform 400ms 0 cubic-bezier(0.37, 0.74, 0.15, 1);\\n}\\n.SideMenu__nav__item--open > a:before {\\n -webkit-transform: rotate(90deg);\\n transform: rotate(90deg);\\n}\\n.SideMenu__collapseArrow {\\n position: absolute;\\n bottom: 12px;\\n right: 12px;\\n cursor: pointer;\\n width: 30px;\\n height: 30px;\\n background: #ffffff;\\n}\\n.SideMenu__collapseArrow:after {\\n content: \\\"\\\";\\n font-family: \\\"Frontiers-Iconography\\\" !important;\\n color: #bababa;\\n font-size: 14px;\\n line-height: 14px;\\n position: absolute;\\n top: 8px;\\n left: 8px;\\n text-align: center;\\n -webkit-transition: -webkit-transform 400ms 400ms cubic-bezier(0.37, 0.74, 0.15, 1);\\n transition: -webkit-transform 400ms 400ms cubic-bezier(0.37, 0.74, 0.15, 1);\\n transition: transform 400ms 400ms cubic-bezier(0.37, 0.74, 0.15, 1);\\n transition: transform 400ms 400ms cubic-bezier(0.37, 0.74, 0.15, 1), -webkit-transform 400ms 400ms cubic-bezier(0.37, 0.74, 0.15, 1);\\n}\\n.SideMenu__collapseArrow--collapsed:after {\\n -webkit-transform: rotate(180deg);\\n transform: rotate(180deg);\\n}\\n@media only screen and (max-width:768px) {\\n .SideMenu__collapseArrow {\\n display: none;\\n }\\n}\\n.SideMenu__divider {\\n width: 100%;\\n height: 1px;\\n background: #e0e0e0;\\n margin: 16px 0;\\n}\\n.SideMenu__divider--noMargin {\\n margin: 0;\\n}\\n.SideMenu__block {\\n padding: 0 16px;\\n}\\n.SideMenu__info {\\n font-size: 13px;\\n line-height: 20px;\\n font-weight: 300;\\n color: #555555;\\n}\\n.SideMenu__info strong {\\n font-weight: 900;\\n}\\n.SideMenu__linkGrey {\\n font-size: 13px;\\n line-height: 20px;\\n font-weight: 300;\\n color: #bababa;\\n line-height: 32px;\\n display: block;\\n padding: 0 !important;\\n}\\n.SideMenu__linkGrey:hover, .SideMenu__linkGrey:active {\\n color: #bababa;\\n}\\n.SideMenu__link {\\n font-size: 13px;\\n line-height: 20px;\\n font-weight: 300;\\n color: #00a0d2;\\n line-height: 48px;\\n}\\n.SideMenu__link--icon {\\n position: relative;\\n padding-left: 40px;\\n}\\n.SideMenu__link--icon:before {\\n content: \\\"\\\";\\n position: absolute;\\n left: 20px;\\n top: calc(50% - 8px);\\n width: 16px;\\n height: 16px;\\n font-size: 16px;\\n line-height: 16px;\\n color: #00a0d2;\\n font-family: \\\"Frontiers-Iconography\\\" !important;\\n}\\n.SideMenu__link:hover:before {\\n color: #00a0d2;\\n}\\n.SideMenu__link--back:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--add:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--reject:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--validate:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--delete:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--export:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--upload:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--download:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--addPeople:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--view:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--message:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--bookmark:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--bookmarked:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--link:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--flag:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--alert:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--profile:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--user:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--deactivateUser:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--invitation:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--unavailable:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--request:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--manage:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--home:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--window:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--impact:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--library:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--edit:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--revieForum:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--submit:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--rss:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--twitter:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--files:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--people:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--inbox:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--discussion:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--review:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--approve:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--eye:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--warning:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--warningOutline:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--blocked:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--blockedOutline:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--calendar:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--delay:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--endorsed:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--error:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--errorOutline:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--help:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--helpOutline:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--info:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--infoOutline:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--swap:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--more:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--noResponse:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--openNew:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--public:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--search:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--stopped:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--stoppedOutline:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--variousContent:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--withDrawn:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--published:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--verified:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--moreHorizontal:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--contactList:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--editSimple:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--power:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__link--active:before {\\n color: #00a0d2;\\n}\\n.SideMenu__link a {\\n display: block;\\n color: #00a0d2;\\n}\\n.SideMenu__link a:hover, .SideMenu__link a:active {\\n color: #00a0d2;\\n}\\n.SideMenu__link--icon {\\n padding-left: 0px;\\n}\\n.SideMenu__link--icon:before {\\n left: 18px;\\n line-height: 14px;\\n}\\n.SideMenu__link--icon a {\\n padding-left: 43px !important;\\n}\\n\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--icon {\\n position: relative;\\n padding-left: 44px;\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--icon:before {\\n content: \\\"\\\";\\n position: absolute;\\n left: 24px;\\n top: calc(50% - 8px);\\n width: 16px;\\n height: 16px;\\n font-size: 16px;\\n line-height: 16px;\\n color: #999999;\\n font-family: \\\"Frontiers-Iconography\\\" !important;\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor:hover:before {\\n color: #999999;\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--back:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--add:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--reject:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--validate:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--delete:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--export:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--upload:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--download:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--addPeople:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--view:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--message:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--bookmark:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--bookmarked:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--link:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--flag:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--alert:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--profile:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--user:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--deactivateUser:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--invitation:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--unavailable:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--request:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--manage:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--home:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--window:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--impact:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--library:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--edit:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--revieForum:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--submit:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--rss:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--twitter:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--files:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--people:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--inbox:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--discussion:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--review:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--approve:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--eye:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--warning:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--warningOutline:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--blocked:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--blockedOutline:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--calendar:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--delay:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--endorsed:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--error:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--errorOutline:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--help:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--helpOutline:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--info:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--infoOutline:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--swap:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--more:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--noResponse:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--openNew:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--public:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--search:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--stopped:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--stoppedOutline:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--variousContent:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--withDrawn:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--published:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--verified:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--moreHorizontal:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--contactList:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--editSimple:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--power:before {\\n content: \\\"\\\";\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--active:before {\\n color: #00a0d2;\\n}\\n.SideMenu__nav > .SideMenu__nav__item a.SideMenu__anchor--icon:before {\\n left: 18px;\\n line-height: 14px;\\n}\\n\\n.SideMenu__nav > .SideMenu__nav__item--active a.SideMenu__anchor--icon:before {\\n color: #00a0d2;\\n}\\n\\n.SideMenu__nav > .SideMenu__nav__item--active:hover > a.SideMenu__anchor--icon:before {\\n color: #00a0d2;\\n}\\n\\n.SideMenu > ul > li > a {\\n padding: 0 0 0 20px;\\n}\\n.SideMenu > ul > li > a:before {\\n left: 0px;\\n}\\n.SideMenu > ul > li > ul > li > a {\\n padding: 0 0 0 42px;\\n}\\n.SideMenu > ul > li > ul > li > a:before {\\n left: 20px;\\n}\\n.SideMenu > ul > li > ul > li > ul > li > a {\\n padding: 0 0 0 62px;\\n}\\n.SideMenu > ul > li > ul > li > ul > li > a:before {\\n left: 40px;\\n}\\n.SideMenu > ul > li > ul > li > ul > li > ul > li > a {\\n padding: 0 0 0 82px;\\n}\\n.SideMenu > ul > li > ul > li > ul > li > ul > li > a:before {\\n left: 60px;\\n}\\n.SideMenu > ul > li > ul > li > ul > li > ul > li > ul > li > a {\\n padding: 0 0 0 102px;\\n}\\n.SideMenu > ul > li > ul > li > ul > li > ul > li > ul > li > a:before {\\n left: 80px;\\n}\\n.SideMenu > ul > li > ul > li > ul > li > ul > li > ul .SideMenu__nav__item--group > a {\\n padding: 0 0 0 122px;\\n}\\n.SideMenu > ul > li > ul > li > ul > li > ul > li > ul .SideMenu__nav__item--group > a:before {\\n left: 102px;\\n}\\n.SideMenu > ul > li > ul > li > ul > li > ul .SideMenu__nav__item--group > a {\\n padding: 0 0 0 102px;\\n}\\n.SideMenu > ul > li > ul > li > ul > li > ul .SideMenu__nav__item--group > a:before {\\n left: 82px;\\n}\\n.SideMenu > ul > li > ul > li > ul .SideMenu__nav__item--group > a {\\n padding: 0 0 0 82px;\\n}\\n.SideMenu > ul > li > ul > li > ul .SideMenu__nav__item--group > a:before {\\n left: 62px;\\n}\\n.SideMenu > ul > li > ul .SideMenu__nav__item--group > a {\\n padding: 0 0 0 62px;\\n}\\n.SideMenu > ul > li > ul .SideMenu__nav__item--group > a:before {\\n left: 42px;\\n}\\n.SideMenu > ul .SideMenu__nav__item--group > a {\\n padding: 0 0 0 40px;\\n}\\n.SideMenu > ul .SideMenu__nav__item--group > a:before {\\n left: 20px;\\n}\";\nstyleInject(css);\n\nfunction tryGetTag(component) {\r\n if (component !== null\r\n && component.$vnode\r\n && component.$vnode.componentOptions) {\r\n return component.$vnode.componentOptions.tag;\r\n }\r\n return '';\r\n}\n\nvar SideMenu = /*@__PURE__*/(function (Vue) {\n function SideMenu() {\r\n Vue.apply(this, arguments);\r\n this.isResponsiveOpen = false;\r\n this.isMenuCollapsed = false;\r\n this.breadCrumbs = [];\r\n }\n\n if ( Vue ) SideMenu.__proto__ = Vue;\n SideMenu.prototype = Object.create( Vue && Vue.prototype );\n SideMenu.prototype.constructor = SideMenu;\n\n var prototypeAccessors = { getClassList: { configurable: true },isHeaderProvided: { configurable: true },collapseArrowClasses: { configurable: true } };\r\n prototypeAccessors.getClassList.get = function () {\r\n var aux = ['SideMenu'];\r\n if (this.isResponsiveOpen === true) {\r\n aux.push('SideMenu--open');\r\n }\r\n if (this.isMenuCollapsed === true) {\r\n aux.push('SideMenu--collapsed');\r\n }\r\n return aux;\r\n };\r\n prototypeAccessors.isHeaderProvided.get = function () {\r\n return this.$slots['header'] !== undefined;\r\n };\r\n prototypeAccessors.collapseArrowClasses.get = function () {\r\n var aux = ['SideMenu__collapseArrow'];\r\n if (this.isMenuCollapsed === true) {\r\n aux.push('SideMenu__collapseArrow--collapsed');\r\n }\r\n return aux;\r\n };\r\n SideMenu.prototype.resetScrollResponsive = function resetScrollResponsive () {\r\n var timeLeftTransition = 400;\r\n var refSideMenuNav = this.$refs.refSideMenuNav;\r\n if (typeof refSideMenuNav.scrollTo === 'function') {\r\n setTimeout(function () { refSideMenuNav.scrollTo(0, 0); }, timeLeftTransition);\r\n }\r\n };\r\n SideMenu.prototype.toggleResponsiveMenu = function toggleResponsiveMenu () {\r\n this.isMenuCollapsed = false;\r\n this.isResponsiveOpen = !this.isResponsiveOpen;\r\n if (this.isResponsiveOpen === false) {\r\n this.resetBreadCrumbsScroll();\r\n this.resetScrollResponsive();\r\n }\r\n };\r\n SideMenu.prototype.toggleCollapse = function toggleCollapse () {\r\n this.isResponsiveOpen = false;\r\n this.isMenuCollapsed = !this.isMenuCollapsed;\r\n this.$emit('collapse-state-change', this.isMenuCollapsed);\r\n };\r\n SideMenu.prototype.resetBreadCrumbsScroll = function resetBreadCrumbsScroll () {\r\n var refBreadCrubms = this.$refs.refBreadCrubms;\r\n refBreadCrubms.scrollLeft = 0;\r\n };\r\n SideMenu.prototype.close = function close () {\r\n this.isResponsiveOpen = false;\r\n this.resetBreadCrumbsScroll();\r\n this.resetScrollResponsive();\r\n };\r\n SideMenu.prototype.watch_isCollapsed = function watch_isCollapsed (newVal, oldValue) {\r\n this.isResponsiveOpen = false;\r\n this.isMenuCollapsed = newVal;\r\n };\r\n SideMenu.prototype.closeAfterNavigate = function closeAfterNavigate (to, from) {\r\n this.close();\r\n };\r\n SideMenu.prototype.mounted = function mounted () {\n var this$1 = this;\n\r\n this.isMenuCollapsed = this.isCollapsed;\r\n if (this.$router) {\r\n this.$router.afterEach(this.closeAfterNavigate);\r\n }\r\n if (this.autoOpen) {\r\n setTimeout(function () {\r\n this$1.checkMenuItem(this$1);\r\n }, 100);\r\n }\r\n };\r\n /**\r\n * In case the component is destroyed we need to remove the afterEach hook from the router\r\n * to avoid problems with this function. Detected working in Layout component.\r\n */\r\n SideMenu.prototype.beforeDestroy = function beforeDestroy () {\r\n // @ts-ignore\r\n if (this.$router && Array.isArray(this.$router.afterHooks)) {\r\n // @ts-ignore\r\n var hooks = this.$router.afterHooks;\r\n for (var i = 0; i < hooks.length; i += 1) {\r\n if (hooks[i] && hooks[i] === this.closeAfterNavigate) {\r\n // @ts-ignore\r\n this.$router.afterHooks.splice(i, 1);\r\n break;\r\n }\r\n }\r\n }\r\n };\r\n SideMenu.prototype.checkMenuItem = function checkMenuItem (component) {\r\n for (var i = 0; i < component.$children.length; i += 1) {\r\n var child = component.$children[i];\r\n var tag = tryGetTag(child);\r\n if (tag === 'side-menu-item') {\r\n //@ts-ignore \r\n if (child.isActive === true) {\r\n //@ts-ignore\r\n child.open();\r\n break;\r\n }\r\n }\r\n else if (tag === 'side-menu-group') {\r\n this.checkMenuItem(child);\r\n }\r\n }\r\n };\n\n Object.defineProperties( SideMenu.prototype, prototypeAccessors );\n\n return SideMenu;\n}(Vue));\r\n__decorate([\r\n Prop({ default: 0 })\r\n], SideMenu.prototype, \"top\", void 0);\r\n__decorate([\r\n Prop()\r\n], SideMenu.prototype, \"title\", void 0);\r\n__decorate([\r\n Prop({ default: true })\r\n], SideMenu.prototype, \"collapsable\", void 0);\r\n__decorate([\r\n Prop({ default: true })\r\n], SideMenu.prototype, \"autoOpen\", void 0);\r\n__decorate([\r\n Prop({ default: false })\r\n], SideMenu.prototype, \"isCollapsed\", void 0);\r\n__decorate([\r\n Watch('isCollapsed')\r\n], SideMenu.prototype, \"watch_isCollapsed\", null);\r\nSideMenu = __decorate([\r\n Component({\r\n directives: {\r\n 'lock-body-scroll': new Directives.LockScroll(),\r\n }\r\n })\r\n], SideMenu);\r\nvar script = SideMenu;\n\nfunction normalizeComponent(template, style, script, scopeId, isFunctionalTemplate, moduleIdentifier\n/* server only */\n, shadowMode, createInjector, createInjectorSSR, createInjectorShadow) {\n if (typeof shadowMode !== 'boolean') {\n createInjectorSSR = createInjector;\n createInjector = shadowMode;\n shadowMode = false;\n } // Vue.extend constructor export interop.\n\n\n var options = typeof script === 'function' ? script.options : script; // render functions\n\n if (template && template.render) {\n options.render = template.render;\n options.staticRenderFns = template.staticRenderFns;\n options._compiled = true; // functional template\n\n if (isFunctionalTemplate) {\n options.functional = true;\n }\n } // scopedId\n\n\n if (scopeId) {\n options._scopeId = scopeId;\n }\n\n var hook;\n\n if (moduleIdentifier) {\n // server build\n hook = function hook(context) {\n // 2.3 injection\n context = context || // cached call\n this.$vnode && this.$vnode.ssrContext || // stateful\n this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext; // functional\n // 2.2 with runInNewContext: true\n\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n context = __VUE_SSR_CONTEXT__;\n } // inject component styles\n\n\n if (style) {\n style.call(this, createInjectorSSR(context));\n } // register component module identifier for async chunk inference\n\n\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier);\n }\n }; // used by ssr in case component is cached and beforeCreate\n // never gets called\n\n\n options._ssrRegister = hook;\n } else if (style) {\n hook = shadowMode ? function () {\n style.call(this, createInjectorShadow(this.$root.$options.shadowRoot));\n } : function (context) {\n style.call(this, createInjector(context));\n };\n }\n\n if (hook) {\n if (options.functional) {\n // register for functional component in vue file\n var originalRender = options.render;\n\n options.render = function renderWithStyleInjection(h, context) {\n hook.call(context);\n return originalRender(h, context);\n };\n } else {\n // inject component registration as beforeCreate hook\n var existing = options.beforeCreate;\n options.beforeCreate = existing ? [].concat(existing, hook) : [hook];\n }\n }\n\n return script;\n}\n\nvar normalizeComponent_1 = normalizeComponent;\n\n/* script */\nvar __vue_script__ = script;\n\n/* template */\nvar __vue_render__ = function() {\n var _vm = this;\n var _h = _vm.$createElement;\n var _c = _vm._self._c || _h;\n return _c(\n \"div\",\n {\n directives: [\n {\n name: \"lock-body-scroll\",\n rawName: \"v-lock-body-scroll\",\n value: _vm.isResponsiveOpen,\n expression: \"isResponsiveOpen\"\n }\n ],\n class: _vm.getClassList,\n style: { top: _vm.top + \"px\", height: \"calc(100vh - \" + _vm.top + \"px)\" }\n },\n [\n _c(\"div\", { staticClass: \"SideMenu__overlay\", on: { click: _vm.close } }),\n _vm._v(\" \"),\n _c(\n \"div\",\n {\n staticClass: \"SideMenu__breadCrumbsWay\",\n style: { top: _vm.top + \"px\" },\n on: { click: _vm.toggleResponsiveMenu }\n },\n [\n _c(\n \"ul\",\n { ref: \"refBreadCrubms\" },\n [\n _c(\"li\", [_vm._v(_vm._s(_vm.title))]),\n _vm._v(\" \"),\n _vm._l(_vm.breadCrumbs, function(bread, index) {\n return _c(\"li\", { key: index }, [_vm._v(_vm._s(bread))])\n })\n ],\n 2\n )\n ]\n ),\n _vm._v(\" \"),\n _c(\n \"ul\",\n {\n ref: \"refSideMenuNav\",\n staticClass: \"SideMenu__nav\",\n style: {\n top: _vm.top + \"px\",\n height: \"calc(100% - \" + _vm.top + \"px)\"\n }\n },\n [\n _vm.isHeaderProvided\n ? _c(\n \"li\",\n { staticClass: \"SideMenu__header\" },\n [_vm._t(\"header\")],\n 2\n )\n : _vm._e(),\n _vm._v(\" \"),\n _vm._t(\"menu\")\n ],\n 2\n ),\n _vm._v(\" \"),\n _vm.collapsable\n ? _c(\"div\", {\n class: _vm.collapseArrowClasses,\n on: { click: _vm.toggleCollapse }\n })\n : _vm._e()\n ]\n )\n};\nvar __vue_staticRenderFns__ = [];\n__vue_render__._withStripped = true;\n\n /* style */\n var __vue_inject_styles__ = undefined;\n /* scoped */\n var __vue_scope_id__ = undefined;\n /* module identifier */\n var __vue_module_identifier__ = undefined;\n /* functional template */\n var __vue_is_functional_template__ = false;\n /* style inject */\n \n /* style inject SSR */\n \n\n \n var SideMenu$1 = normalizeComponent_1(\n { render: __vue_render__, staticRenderFns: __vue_staticRenderFns__ },\n __vue_inject_styles__,\n __vue_script__,\n __vue_scope_id__,\n __vue_is_functional_template__,\n __vue_module_identifier__,\n undefined,\n undefined\n );\n\nvar SideMenuGroup = /*@__PURE__*/(function (Vue) {\n function SideMenuGroup() {\r\n Vue.apply(this, arguments);\r\n this.isOpen = false;\r\n this.locked = false;\r\n }\n\n if ( Vue ) SideMenuGroup.__proto__ = Vue;\n SideMenuGroup.prototype = Object.create( Vue && Vue.prototype );\n SideMenuGroup.prototype.constructor = SideMenuGroup;\n\n var prototypeAccessors = { getClassList: { configurable: true } };\r\n prototypeAccessors.getClassList.get = function () {\r\n var aux = ['SideMenu__nav__item', 'SideMenu__nav__item--group'];\r\n if (this.isOpen) {\r\n aux.push('SideMenu__nav__item--open');\r\n }\r\n return aux;\r\n };\r\n SideMenuGroup.prototype.toggle = function toggle () {\n var this$1 = this;\n\r\n if (this.locked === false) {\r\n this.locked = true;\r\n this.calculateHeight();\r\n this.isOpen = !this.isOpen;\r\n setTimeout(function () {\r\n this$1.locked = false;\r\n // If the timing is change in here, please update SideMenu.scss > &--group \r\n }, 700);\r\n }\r\n };\r\n SideMenuGroup.prototype.open = function open () {\r\n this.isOpen = false;\r\n this.calculateHeight();\r\n this.isOpen = true;\r\n };\r\n SideMenuGroup.prototype.calculateHeight = function calculateHeight () {\r\n var container = this.$refs.container;\r\n var suboptions = this.$refs.suboptions;\r\n var link = this.$refs.link;\r\n var parent = container.parentElement;\r\n var menuItemHeight = link.clientHeight;\r\n var height = 0;\r\n if (this.isOpen === false) {\r\n height = suboptions.offsetHeight + container.offsetHeight;\r\n container.style.height = height + \"px\";\r\n while (parent !== null) {\r\n if (parent.classList.contains('SideMenu__nav__item--open')) {\r\n height += parent.offsetHeight;\r\n parent.style.height = (height - menuItemHeight) + \"px\";\r\n }\r\n parent = parent.parentElement;\r\n }\r\n }\r\n else {\r\n container.style.height = menuItemHeight + \"px\";\r\n while (parent !== null) {\r\n if (parent.classList.contains('SideMenu__nav__item--open')) {\r\n height = parent.offsetHeight - suboptions.offsetHeight;\r\n parent.style.height = height + \"px\";\r\n }\r\n parent = parent.parentElement;\r\n }\r\n }\r\n };\n\n Object.defineProperties( SideMenuGroup.prototype, prototypeAccessors );\n\n return SideMenuGroup;\n}(Vue));\r\n__decorate([\r\n Prop({ default: 'Menu Group' })\r\n], SideMenuGroup.prototype, \"title\", void 0);\r\nSideMenuGroup = __decorate([\r\n Component\r\n], SideMenuGroup);\r\nvar script$1 = SideMenuGroup;\n\n/* script */\nvar __vue_script__$1 = script$1;\n\n/* template */\nvar __vue_render__$1 = function() {\n var _vm = this;\n var _h = _vm.$createElement;\n var _c = _vm._self._c || _h;\n return _c(\n \"li\",\n {\n ref: \"container\",\n class: _vm.getClassList,\n on: {\n click: function($event) {\n $event.stopPropagation();\n return _vm.toggle($event)\n }\n }\n },\n [\n _c(\"a\", { ref: \"link\" }, [_vm._v(_vm._s(_vm.title))]),\n _vm._v(\" \"),\n _c(\"ul\", { ref: \"suboptions\" }, [_vm._t(\"default\")], 2)\n ]\n )\n};\nvar __vue_staticRenderFns__$1 = [];\n__vue_render__$1._withStripped = true;\n\n /* style */\n var __vue_inject_styles__$1 = undefined;\n /* scoped */\n var __vue_scope_id__$1 = undefined;\n /* module identifier */\n var __vue_module_identifier__$1 = undefined;\n /* functional template */\n var __vue_is_functional_template__$1 = false;\n /* style inject */\n \n /* style inject SSR */\n \n\n \n var SideMenuGroup$1 = normalizeComponent_1(\n { render: __vue_render__$1, staticRenderFns: __vue_staticRenderFns__$1 },\n __vue_inject_styles__$1,\n __vue_script__$1,\n __vue_scope_id__$1,\n __vue_is_functional_template__$1,\n __vue_module_identifier__$1,\n undefined,\n undefined\n );\n\nvar Targets;\r\n(function (Targets) {\r\n Targets[\"VueRouter\"] = \"vue-router\";\r\n Targets[\"Self\"] = \"_self\";\r\n Targets[\"Blank\"] = \"_blank\";\r\n})(Targets || (Targets = {}));\n\nvar FrontiersIcon;\r\n(function (FrontiersIcon) {\r\n FrontiersIcon[\"None\"] = \"none\";\r\n FrontiersIcon[\"Delete\"] = \"delete\";\r\n FrontiersIcon[\"View\"] = \"view\";\r\n FrontiersIcon[\"Activate\"] = \"validate\";\r\n FrontiersIcon[\"Exclude\"] = \"reject\";\r\n FrontiersIcon[\"Export\"] = \"export\";\r\n FrontiersIcon[\"AddPeople\"] = \"addPeople\";\r\n FrontiersIcon[\"Edit\"] = \"edit\";\r\n FrontiersIcon[\"Message\"] = \"message\";\r\n FrontiersIcon[\"Download\"] = \"download\";\r\n FrontiersIcon[\"Upload\"] = \"upload\";\r\n FrontiersIcon[\"Alert\"] = \"alert\";\r\n FrontiersIcon[\"Link\"] = \"link\";\r\n FrontiersIcon[\"Bookmark\"] = \"bookmark\";\r\n FrontiersIcon[\"Bookmarked\"] = \"bookmarked\";\r\n FrontiersIcon[\"Profile\"] = \"profile\";\r\n FrontiersIcon[\"DeactivateUser\"] = \"deactivateUser\";\r\n FrontiersIcon[\"Invitation\"] = \"invitation\";\r\n FrontiersIcon[\"Unavailable\"] = \"unavailable\";\r\n FrontiersIcon[\"Manage\"] = \"manage\";\r\n FrontiersIcon[\"Request\"] = \"request\";\r\n FrontiersIcon[\"Back\"] = \"back\";\r\n FrontiersIcon[\"Add\"] = \"add\";\r\n FrontiersIcon[\"Flag\"] = \"flag\";\r\n FrontiersIcon[\"Home\"] = \"home\";\r\n FrontiersIcon[\"Window\"] = \"window\";\r\n FrontiersIcon[\"Impact\"] = \"impact\";\r\n FrontiersIcon[\"Library\"] = \"library\";\r\n FrontiersIcon[\"ReviewForum\"] = \"revieForum\";\r\n FrontiersIcon[\"Submit\"] = \"submit\";\r\n FrontiersIcon[\"Rss\"] = \"rss\";\r\n FrontiersIcon[\"Twitter\"] = \"twitter\";\r\n FrontiersIcon[\"Files\"] = \"files\";\r\n FrontiersIcon[\"People\"] = \"people\";\r\n FrontiersIcon[\"Inbox\"] = \"inbox\";\r\n FrontiersIcon[\"Discussion\"] = \"discussion\";\r\n FrontiersIcon[\"Review\"] = \"review\";\r\n FrontiersIcon[\"Approve\"] = \"approve\";\r\n FrontiersIcon[\"Eye\"] = \"eye\";\r\n FrontiersIcon[\"Warning\"] = \"warning\";\r\n FrontiersIcon[\"WarningOutline\"] = \"warningOutline\";\r\n FrontiersIcon[\"Blocked\"] = \"blocked\";\r\n FrontiersIcon[\"BlockedOutline\"] = \"blockedOutline\";\r\n FrontiersIcon[\"Calendar\"] = \"calendar\";\r\n FrontiersIcon[\"Delay\"] = \"delay\";\r\n FrontiersIcon[\"Endorsed\"] = \"endorsed\";\r\n FrontiersIcon[\"Error\"] = \"error\";\r\n FrontiersIcon[\"ErrorOutline\"] = \"errorOutline\";\r\n FrontiersIcon[\"Help\"] = \"help\";\r\n FrontiersIcon[\"HelpOutline\"] = \"helpOutline\";\r\n FrontiersIcon[\"Info\"] = \"info\";\r\n FrontiersIcon[\"InfoOutline\"] = \"infoOutline\";\r\n FrontiersIcon[\"Swap\"] = \"swap\";\r\n FrontiersIcon[\"More\"] = \"more\";\r\n FrontiersIcon[\"NoResponse\"] = \"noResponse\";\r\n FrontiersIcon[\"OpenNew\"] = \"openNew\";\r\n FrontiersIcon[\"Public\"] = \"public\";\r\n FrontiersIcon[\"Search\"] = \"search\";\r\n FrontiersIcon[\"Stopped\"] = \"stopped\";\r\n FrontiersIcon[\"StoppedOutline\"] = \"stoppedOutline\";\r\n FrontiersIcon[\"VariousContent\"] = \"variousContent\";\r\n FrontiersIcon[\"WithDrawn\"] = \"withDrawn\";\r\n FrontiersIcon[\"Published\"] = \"published\";\r\n FrontiersIcon[\"Verified\"] = \"verified\";\r\n FrontiersIcon[\"MoreHorizontal\"] = \"moreHorizontal\";\r\n FrontiersIcon[\"ContactList\"] = \"contactList\";\r\n FrontiersIcon[\"EditSimple\"] = \"editSimple\";\r\n FrontiersIcon[\"Power\"] = \"power\";\r\n})(FrontiersIcon || (FrontiersIcon = {}));\n\nvar ieURL = function ieURL(url) {\r\n this.protocol = '';\r\n this.hostname = '';\r\n this.port = '';\r\n this.pathname = '';\r\n this.search = '';\r\n this.hash = '';\r\n this.protocol = url.substr(0, url.indexOf(':') + 1);\r\n url = url.substr(url.indexOf(':') + 3);\r\n if (url.indexOf('/') > -1) {\r\n this.hostname = url.substr(0, url.indexOf('/'));\r\n url = url.substr(url.indexOf('/'));\r\n }\r\n else {\r\n this.hostname = url;\r\n if (url.indexOf('#') > -1 || url.indexOf('?') > -1) {\r\n if (url.indexOf('#') > -1) {\r\n url = url.substr(0, url.indexOf('#'));\r\n }\r\n else {\r\n url = url.substr(0, url.indexOf('?'));\r\n }\r\n }\r\n else {\r\n url = \"\";\r\n }\r\n }\r\n if (this.hostname.indexOf(':') > -1) {\r\n this.port = this.hostname.substr(this.hostname.indexOf(':') + 1);\r\n this.hostname = this.hostname.substr(0, this.hostname.indexOf(':'));\r\n }\r\n if (url.indexOf(\"#\") > -1) {\r\n this.hash = url.substr(url.indexOf(\"#\"));\r\n url = url.substr(0, url.indexOf(\"#\"));\r\n }\r\n if (url.indexOf(\"?\") > -1) {\r\n this.search = url.substr(url.indexOf(\"?\"));\r\n url = url.substr(0, url.indexOf(\"?\"));\r\n }\r\n this.pathname = url;\r\n};\n\nvar SideMenuItem = /*@__PURE__*/(function (Vue) {\n function SideMenuItem() {\r\n Vue.apply(this, arguments);\r\n this.detectHashChangeInIE11 = false;\r\n }\n\n if ( Vue ) SideMenuItem.__proto__ = Vue;\n SideMenuItem.prototype = Object.create( Vue && Vue.prototype );\n SideMenuItem.prototype.constructor = SideMenuItem;\n\n var prototypeAccessors = { getClassList: { configurable: true },anchorIconClass: { configurable: true },isActive: { configurable: true } };\r\n prototypeAccessors.getClassList.get = function () {\r\n var aux = ['SideMenu__nav__item'];\r\n if (this.isActive) {\r\n aux.push('SideMenu__nav__item--active');\r\n }\r\n return aux;\r\n };\r\n prototypeAccessors.anchorIconClass.get = function () {\r\n //@ts-ignore\r\n if (FrontiersIcon[this.icon] === undefined || FrontiersIcon[this.icon] === 'none')\r\n { return; }\r\n var aux = ['SideMenu__anchor'];\r\n aux.push('SideMenu__anchor--icon');\r\n //@ts-ignore\r\n aux.push((\"SideMenu__anchor--\" + (FrontiersIcon[this.icon])));\r\n return aux;\r\n };\r\n prototypeAccessors.isActive.get = function () {\r\n this.detectHashChangeInIE11;\r\n // This allows to get the correct path the first time the page is loaded\r\n var wRoute = window.location.pathname.trim().toLowerCase();\r\n var wHash = window.location.hash.trim().toLowerCase();\r\n // Support for nested Vue routers\r\n var vRoute = this.getCurrentPath();\r\n var myPath = this.path.trim().toLowerCase();\r\n var isNestedVueRoute = wRoute.indexOf('#/') > -1;\r\n if (this.pathUrl.hash.length > 0) {\r\n // Nested routes use hash so, it cannot be checked \r\n var c1 = vRoute === this.pathUrl.pathname.trim().toLowerCase();\r\n var c2 = wRoute === this.pathUrl.pathname.trim().toLowerCase();\r\n var c3 = wHash === this.pathUrl.hash.trim().toLowerCase();\r\n return (c1 || c2) && c3;\r\n }\r\n else {\r\n if (isNestedVueRoute) {\r\n return vRoute === myPath;\r\n }\r\n else {\r\n return vRoute === myPath || wRoute === myPath;\r\n }\r\n }\r\n };\r\n SideMenuItem.prototype.getCurrentPath = function getCurrentPath () {\r\n if (this.$router) {\r\n return this.$route.path.trim().toLowerCase();\r\n }\r\n else {\r\n return location.pathname.trim().toLowerCase();\r\n }\r\n };\r\n SideMenuItem.prototype.navigate = function navigate () {\r\n // @ts-ignore\r\n var t = Targets[this.target];\r\n if (this.path.trim().length > 0) {\r\n switch (t) {\r\n case Targets.VueRouter:\r\n if (this.$router) {\r\n if (this.isActive === false) {\r\n this.$router.push(this.path);\r\n this.setSideMenuBreadCrumbs();\r\n }\r\n }\r\n else {\r\n location.href = this.path;\r\n }\r\n break;\r\n case Targets.Self:\r\n this.setSideMenuBreadCrumbs();\r\n location.href = this.path;\r\n break;\r\n case Targets.Blank:\r\n window.open(this.path, this.title);\r\n break;\r\n }\r\n }\r\n };\r\n SideMenuItem.prototype.setSideMenuBreadCrumbs = function setSideMenuBreadCrumbs () {\r\n var parent = this.$parent;\r\n var tag = tryGetTag(parent);\r\n var breadcrumbs = [];\r\n while (parent) {\r\n if (tag === 'side-menu-group') {\r\n breadcrumbs.push(parent.$props.title);\r\n }\r\n else if (tag === 'side-menu') {\r\n breadcrumbs = breadcrumbs.reverse();\r\n breadcrumbs.push(this.title);\r\n parent.$data.breadCrumbs = breadcrumbs;\r\n break;\r\n }\r\n parent = parent.$parent;\r\n tag = tryGetTag(parent);\r\n }\r\n };\r\n SideMenuItem.prototype.open = function open () {\r\n var parent = this.$parent;\r\n var tag = tryGetTag(parent);\r\n var parents = [];\r\n do {\r\n if (tag === 'side-menu-group') {\r\n parents.push(parent);\r\n }\r\n parent = parent.$parent;\r\n tag = tryGetTag(parent);\r\n } while (tag === 'side-menu-group');\r\n var loop = function ( i ) {\r\n setTimeout(function () {\r\n parents[i].open();\r\n }, 200 * (i + 1));\r\n };\n\n for (var i = parents.length - 1; i >= 0; i--) loop( i );\r\n this.setSideMenuBreadCrumbs();\r\n };\r\n SideMenuItem.prototype.location_hashChangeInIE11 = function location_hashChangeInIE11 (e) {\n var this$1 = this;\n\r\n this.$nextTick(function () { return this$1.detectHashChangeInIE11 = !this$1.detectHashChangeInIE11; });\r\n };\r\n SideMenuItem.prototype.isIE = function isIE () {\r\n return window.navigator.userAgent.indexOf('Trident') > -1;\r\n };\r\n SideMenuItem.prototype.created = function created () {\r\n if (this.isIE()) {\r\n if (typeof URL !== 'function') {\r\n // @ts-ignore \r\n URL = ieURL;\r\n }\r\n if (this.path.indexOf('#') > -1) {\r\n window.addEventListener('hashchange', this.location_hashChangeInIE11);\r\n }\r\n }\r\n if (this.path.indexOf('http') === 0) {\r\n this.pathUrl = new URL(this.path);\r\n }\r\n else {\r\n var port = location.port !== '80' ? ':' + location.port : '';\r\n if (typeof URL === 'function') {\r\n this.pathUrl = new URL(((window.location.protocol) + \"//\" + (window.location.hostname) + port + (this.path.indexOf('/') > -1 ? '' : '/') + (this.path)));\r\n }\r\n }\r\n };\r\n SideMenuItem.prototype.beforeDestroy = function beforeDestroy () {\r\n if (this.isIE && this.path.indexOf('#') > -1) {\r\n window.removeEventListener('hashchange', this.location_hashChangeInIE11);\r\n }\r\n };\n\n Object.defineProperties( SideMenuItem.prototype, prototypeAccessors );\n\n return SideMenuItem;\n}(Vue));\r\n__decorate([\r\n Prop({ default: '' })\r\n], SideMenuItem.prototype, \"path\", void 0);\r\n__decorate([\r\n Prop({ default: 'Menu Item' })\r\n], SideMenuItem.prototype, \"title\", void 0);\r\n__decorate([\r\n Prop({ default: 'VueRouter' })\r\n], SideMenuItem.prototype, \"target\", void 0);\r\n__decorate([\r\n Prop({ default: '' })\r\n], SideMenuItem.prototype, \"icon\", void 0);\r\n__decorate([\r\n Emit('click')\r\n], SideMenuItem.prototype, \"navigate\", null);\r\nSideMenuItem = __decorate([\r\n Component\r\n], SideMenuItem);\r\nvar script$2 = SideMenuItem;\n\n/* script */\nvar __vue_script__$2 = script$2;\n\n/* template */\nvar __vue_render__$2 = function() {\n var _vm = this;\n var _h = _vm.$createElement;\n var _c = _vm._self._c || _h;\n return _c(\n \"li\",\n {\n class: _vm.getClassList,\n on: {\n click: function($event) {\n $event.stopPropagation();\n return _vm.navigate($event)\n }\n }\n },\n [_c(\"a\", { class: _vm.anchorIconClass }, [_vm._v(_vm._s(_vm.title))])]\n )\n};\nvar __vue_staticRenderFns__$2 = [];\n__vue_render__$2._withStripped = true;\n\n /* style */\n var __vue_inject_styles__$2 = undefined;\n /* scoped */\n var __vue_scope_id__$2 = undefined;\n /* module identifier */\n var __vue_module_identifier__$2 = undefined;\n /* functional template */\n var __vue_is_functional_template__$2 = false;\n /* style inject */\n \n /* style inject SSR */\n \n\n \n var SideMenuItem$1 = normalizeComponent_1(\n { render: __vue_render__$2, staticRenderFns: __vue_staticRenderFns__$2 },\n __vue_inject_styles__$2,\n __vue_script__$2,\n __vue_scope_id__$2,\n __vue_is_functional_template__$2,\n __vue_module_identifier__$2,\n undefined,\n undefined\n );\n\nvar SideMenuLink = /*@__PURE__*/(function (Vue) {\n function SideMenuLink () {\n Vue.apply(this, arguments);\n }\n\n if ( Vue ) SideMenuLink.__proto__ = Vue;\n SideMenuLink.prototype = Object.create( Vue && Vue.prototype );\n SideMenuLink.prototype.constructor = SideMenuLink;\n\n var prototypeAccessors = { getClassList: { configurable: true } };\n\n prototypeAccessors.getClassList.get = function () {\r\n var aux = ['SideMenu__link'];\r\n //@ts-ignore\r\n if (FrontiersIcon[this.icon] !== undefined && FrontiersIcon[this.icon] !== 'none') {\r\n aux.push('SideMenu__link--icon');\r\n //@ts-ignore\r\n aux.push((\"SideMenu__link--\" + (FrontiersIcon[this.icon])));\r\n }\r\n return aux;\r\n };\n\n Object.defineProperties( SideMenuLink.prototype, prototypeAccessors );\n\n return SideMenuLink;\n}(Vue));\r\n__decorate([\r\n Prop({ default: 'Link Item' })\r\n], SideMenuLink.prototype, \"title\", void 0);\r\n__decorate([\r\n Prop({ default: '' })\r\n], SideMenuLink.prototype, \"href\", void 0);\r\n__decorate([\r\n Prop({ default: '' })\r\n], SideMenuLink.prototype, \"icon\", void 0);\r\nSideMenuLink = __decorate([\r\n Component\r\n], SideMenuLink);\r\nvar script$3 = SideMenuLink;\n\n/* script */\nvar __vue_script__$3 = script$3;\n\n/* template */\nvar __vue_render__$3 = function() {\n var _vm = this;\n var _h = _vm.$createElement;\n var _c = _vm._self._c || _h;\n return _c(\"li\", { class: _vm.getClassList }, [\n _c(\"a\", { attrs: { href: _vm.href, target: \"_blank\" } }, [\n _vm._v(_vm._s(_vm.title))\n ])\n ])\n};\nvar __vue_staticRenderFns__$3 = [];\n__vue_render__$3._withStripped = true;\n\n /* style */\n var __vue_inject_styles__$3 = undefined;\n /* scoped */\n var __vue_scope_id__$3 = undefined;\n /* module identifier */\n var __vue_module_identifier__$3 = undefined;\n /* functional template */\n var __vue_is_functional_template__$3 = false;\n /* style inject */\n \n /* style inject SSR */\n \n\n \n var SideMenuLink$1 = normalizeComponent_1(\n { render: __vue_render__$3, staticRenderFns: __vue_staticRenderFns__$3 },\n __vue_inject_styles__$3,\n __vue_script__$3,\n __vue_scope_id__$3,\n __vue_is_functional_template__$3,\n __vue_module_identifier__$3,\n undefined,\n undefined\n );\n\nexport { FrontiersIcon, SideMenu$1 as SideMenu, SideMenuGroup$1 as SideMenuGroup, SideMenuItem$1 as SideMenuItem, SideMenuLink$1 as SideMenuLink };\n","function ___$insertStyle(css) {\n if (!css) {\n return;\n }\n if (typeof window === 'undefined') {\n return;\n }\n\n var style = document.createElement('style');\n\n style.setAttribute('type', 'text/css');\n style.innerHTML = css;\n document.head.appendChild(style);\n return css;\n}\n\nvar LockScroll = function LockScroll () {};\n\nLockScroll.getScrollbarWidth = function getScrollbarWidth () {\r\n var outer = document.createElement('div');\r\n outer.style.visibility = 'hidden';\r\n outer.style.overflow = 'scroll';\r\n outer.style.msOverflowStyle = 'scrollbar';\r\n document.body.appendChild(outer);\r\n var inner = document.createElement('div');\r\n outer.appendChild(inner);\r\n var scrollbarWidth = outer.offsetWidth - inner.offsetWidth;\r\n if (outer.parentNode !== null) {\r\n outer.parentNode.removeChild(outer);\r\n }\r\n return scrollbarWidth;\r\n};\r\nLockScroll.isThereScrollbar = function isThereScrollbar () {\r\n var documentHeight = document.documentElement.scrollHeight;\r\n var windowHeight = window.innerHeight;\r\n if (documentHeight > windowHeight) {\r\n return true;\r\n }\r\n return false;\r\n};\r\nLockScroll.checkBindingValue = function checkBindingValue (binding) {\r\n if (typeof binding.value !== 'boolean') {\r\n throw new Error('The binding of lock-scroll directive must be a boolean value.');\r\n }\r\n};\r\n/**\r\n * This function saves the current position of the scroll in an attribute in body tag and remove the scroll\r\n */\r\nLockScroll.lockBodyScroll = function lockBodyScroll (html, body, wrap) {\r\n var isScroll = this.isThereScrollbar();\r\n if (window.pageYOffset) {\r\n var scrollTop = window.pageYOffset;\r\n wrap.style.top = (-scrollTop) + \"px\";\r\n body.setAttribute('data-scroll-top', scrollTop.toString());\r\n }\r\n else {\r\n body.setAttribute('data-scroll-top', '');\r\n }\r\n wrap.style.display = 'block';\r\n body.style.height = '100%';\r\n body.style.width = '100%';\r\n body.style.overflow = 'hidden';\r\n body.style.position = 'fixed';\r\n if (isScroll) {\r\n body.style.width = \"calc(100% - \" + (this.getScrollbarWidth()) + \"px\";\r\n }\r\n html.style.height = '100%';\r\n html.style.overflow = 'hidden';\r\n};\r\n/**\r\n * This function unlock the scroll and gets the scroll back to its previous position before it was locked\r\n */\r\nLockScroll.unlockBodyScroll = function unlockBodyScroll (html, body, wrap) {\r\n var dataScrollTopValue = body.getAttribute(LockScroll.DATA_SCROLL_TOP_ATTR);\r\n body.style.height = '';\r\n body.style.width = '';\r\n body.style.overflow = '';\r\n body.style.position = '';\r\n html.style.height = '';\r\n html.style.overflow = '';\r\n wrap.style.top = '';\r\n wrap.style.display = '';\r\n if (dataScrollTopValue) {\r\n window.scrollTo(0, parseInt(dataScrollTopValue, 10));\r\n window.setTimeout(function () {\r\n body.setAttribute('data-scroll-top', '');\r\n }, 0);\r\n }\r\n};\r\nLockScroll.isValidContext = function isValidContext (siblings, firstChild) {\r\n if (siblings.length === 0) {\r\n throw new Error('[directive:lock-scroll] no valid siblings of body have been found');\r\n }\r\n if (siblings.length > 1) {\r\n console.warn('[directive:lock-scroll] the body must only contain one div element');\r\n }\r\n if (firstChild) {\r\n if (getComputedStyle(firstChild).position !== 'relative') {\r\n console.warn('[directive:lock-scroll] the sibling element must have position relative');\r\n }\r\n }\r\n};\r\nLockScroll.prototype.update = function update (el, binding, vnode) {\r\n if (binding.oldValue === binding.value) {\r\n return;\r\n }\r\n var body = document.getElementsByTagName('body')[0];\r\n var html = document.getElementsByTagName('html')[0];\r\n var bodyChildren = document.querySelectorAll('body > *:not(script):not(noscript)');\r\n var firstChild = (bodyChildren.length > 0 ? bodyChildren[0] : null);\r\n var delayUnlockScroll = 400;\r\n LockScroll.isValidContext(bodyChildren, firstChild);\r\n if (binding.value === true) {\r\n LockScroll.lockBodyScroll(html, body, firstChild);\r\n }\r\n else {\r\n setTimeout(function () {\r\n LockScroll.unlockBodyScroll(html, body, firstChild);\r\n }, delayUnlockScroll);\r\n }\r\n};\r\nLockScroll.prototype.bind = function bind (el, binding, vnode) {\r\n LockScroll.checkBindingValue(binding);\r\n};\r\nLockScroll.DATA_SCROLL_TOP_ATTR = 'data-scroll-top';\n\n/*\r\n * This function checks if the element is in Shadow DOM and returns its root element\r\n * Othewise it returns null\r\n * @param {HTMLElement} el Element to check if it is in a Shadow DOM\r\n * @returns {HTMLElement | null} Root element of the shadow DOM or null\r\n */\r\nfunction getShadowDomRoot(el) {\r\n var isShadowDom = true;\r\n var lastParent = el;\r\n while (lastParent.parentElement != null) {\r\n lastParent = lastParent.parentElement;\r\n if (lastParent.tagName === 'BODY') {\r\n isShadowDom = false;\r\n break;\r\n }\r\n }\r\n return isShadowDom ? lastParent : null;\r\n}\n\nvar ClickOutside = function ClickOutside () {};\n\nvar staticAccessors = { CALLBACK_FUNC: { configurable: true } };\n\nstaticAccessors.CALLBACK_FUNC.get = function () { return 'ClickOutsideFunc'; };\r\nClickOutside.isVisible = function isVisible (el) {\r\n if (el !== null) {\r\n return el.getClientRects().length !== 0;\r\n }\r\n else {\r\n return false;\r\n }\r\n};\r\nClickOutside.prototype.bind = function bind (el, binding, vnode) {\r\n vnode.context[ClickOutside.CALLBACK_FUNC] = function (e) {\r\n e.stopPropagation();\r\n // @ts-ignore\r\n if (ClickOutside.isVisible(el) && !el.contains(e.target)) {\r\n binding.value();\r\n }\r\n };\r\n};\r\nClickOutside.prototype.inserted = function inserted (el, binding, vnode) {\r\n var shadowRoot = getShadowDomRoot(el);\r\n if (shadowRoot !== null) {\r\n shadowRoot.addEventListener('click', vnode.context[ClickOutside.CALLBACK_FUNC]);\r\n shadowRoot.addEventListener('touchstart', vnode.context[ClickOutside.CALLBACK_FUNC]);\r\n }\r\n document.addEventListener('click', vnode.context[ClickOutside.CALLBACK_FUNC]);\r\n document.addEventListener('touchstart', vnode.context[ClickOutside.CALLBACK_FUNC]);\r\n};\r\nClickOutside.prototype.unbind = function unbind (el, binding, vnode) {\r\n var shadowRoot = getShadowDomRoot(el);\r\n if (shadowRoot !== null) {\r\n shadowRoot.removeEventListener('click', vnode.context[ClickOutside.CALLBACK_FUNC]);\r\n shadowRoot.removeEventListener('touchstart', vnode.context[ClickOutside.CALLBACK_FUNC]);\r\n }\r\n document.removeEventListener('click', vnode.context[ClickOutside.CALLBACK_FUNC]);\r\n document.removeEventListener('touchstart', vnode.context[ClickOutside.CALLBACK_FUNC]);\r\n};\n\nObject.defineProperties( ClickOutside, staticAccessors );\n\nvar CheckPosition = function CheckPosition () {};\n\nCheckPosition.clearInlinePosition = function clearInlinePosition (el) {\r\n el.style.top = '';\r\n el.style.bottom = '';\r\n el.style.left = '';\r\n el.style.right = '';\r\n};\r\nCheckPosition.isOverflownVertically = function isOverflownVertically (el) {\r\n var offset = el.getBoundingClientRect().top;\r\n var height = el.offsetHeight;\r\n var margin = 10;\r\n if (offset + height + margin > window.innerHeight) {\r\n return true;\r\n }\r\n else {\r\n return false;\r\n }\r\n};\r\nCheckPosition.isOverflownHorizontally = function isOverflownHorizontally (el) {\r\n var offset = el.getBoundingClientRect().left;\r\n var width = el.offsetWidth;\r\n var margin = 20;\r\n if (offset + width + margin > window.innerWidth) {\r\n return true;\r\n }\r\n else {\r\n return false;\r\n }\r\n};\r\nCheckPosition.checkBindingValue = function checkBindingValue (binding) {\r\n if (typeof binding.value !== 'boolean') {\r\n throw new Error('The binding of check-position directive must be a boolean value.');\r\n }\r\n};\r\nCheckPosition.prototype.update = function update (el, binding, vnode) {\r\n if (binding.oldValue === binding.value) {\r\n return;\r\n }\r\n if (binding.value === false) {\r\n CheckPosition.clearInlinePosition(el);\r\n }\r\n else {\r\n if (CheckPosition.isOverflownVertically(el)) {\r\n el.style.top = 'auto';\r\n el.style.bottom = '100%';\r\n }\r\n if (CheckPosition.isOverflownHorizontally(el)) {\r\n el.style.left = 'auto';\r\n el.style.right = '0';\r\n }\r\n }\r\n};\r\nCheckPosition.prototype.bind = function bind (el, binding, vnode) {\r\n CheckPosition.checkBindingValue(binding);\r\n};\n\nvar EscapePress = function EscapePress () {};\n\nvar staticAccessors$1 = { ESCAPE_KEY: { configurable: true },CALLBACK_FUNC: { configurable: true } };\n\nstaticAccessors$1.ESCAPE_KEY.get = function () { return 27; };\r\nstaticAccessors$1.CALLBACK_FUNC.get = function () { return 'EscapePressFunc'; };\r\nEscapePress.onKeyUp = function onKeyUp (callbackFunc, $event) {\r\n if ($event.keyCode === EscapePress.ESCAPE_KEY && callbackFunc != null) {\r\n callbackFunc();\r\n }\r\n};\r\nEscapePress.prototype.update = function update (el, binding, vnode) {\r\n if (binding.arg === false) {\r\n document.removeEventListener('keyup', vnode.context[EscapePress.CALLBACK_FUNC]);\r\n }\r\n else {\r\n document.addEventListener('keyup', vnode.context[EscapePress.CALLBACK_FUNC]);\r\n }\r\n};\r\nEscapePress.prototype.bind = function bind (el, binding, vnode) {\r\n if (typeof binding.value !== 'function') {\r\n throw new Error('[directive:on-escape] The binding value must be a function');\r\n }\r\n vnode.context[EscapePress.CALLBACK_FUNC] = EscapePress.onKeyUp.bind(this, binding.value);\r\n};\r\nEscapePress.prototype.unbind = function unbind (el, binding, vnode) {\r\n document.removeEventListener('keyup', vnode.context[EscapePress.CALLBACK_FUNC]);\r\n};\n\nObject.defineProperties( EscapePress, staticAccessors$1 );\n\nvar Directives = {\r\n LockScroll: LockScroll,\r\n ClickOutside: ClickOutside,\r\n CheckPosition: CheckPosition,\r\n EscapePress: EscapePress,\r\n};\r\nvar Helpers = {\r\n getShadowDomRoot: getShadowDomRoot,\r\n};\n\nexport { Directives, Helpers };\n","import { Prop, Watch, Vue, Component, Emit } from 'vue-property-decorator';\nimport { Mixin } from 'vue-mixin-decorator';\nimport { SideMenu } from '@frontiers-vue/side-menu';\nimport { Directives } from '@frontiers-vue/common';\n\n/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n\r\nfunction __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\n\nfunction styleInject(css, ref) {\n if ( ref === void 0 ) { ref = {}; }\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nvar css = \"@charset \\\"UTF-8\\\";\\n/*------------------------------------------------------------------ Colors */\\n/*------------------------------------------------------------------ Filters */\\n/*------------------------------------------------------------------ Filters Grey IE11 */\\n/*------------------------------------------------------------------ Dimensions */\\n/*------------------------------------------------------------------ Bezier */\\n/*------------------------------------------------------------------ Media Queries */\\n/*------------------------------------------------------------------ Media Queries CSS Hacks */\\n@-webkit-keyframes rotate {\\n 0% {\\n -webkit-transform: rotate(0deg);\\n transform: rotate(0deg);\\n }\\n 100% {\\n -webkit-transform: rotate(1080deg);\\n transform: rotate(1080deg);\\n }\\n}\\n@keyframes rotate {\\n 0% {\\n -webkit-transform: rotate(0deg);\\n transform: rotate(0deg);\\n }\\n 100% {\\n -webkit-transform: rotate(1080deg);\\n transform: rotate(1080deg);\\n }\\n}\\n@-webkit-keyframes bounce {\\n 0% {\\n -webkit-transform: translateY(0px);\\n transform: translateY(0px);\\n }\\n 100% {\\n -webkit-transform: translateY(5px);\\n transform: translateY(5px);\\n }\\n}\\n@keyframes bounce {\\n 0% {\\n -webkit-transform: translateY(0px);\\n transform: translateY(0px);\\n }\\n 100% {\\n -webkit-transform: translateY(5px);\\n transform: translateY(5px);\\n }\\n}\\n@-webkit-keyframes pulse {\\n 0% {\\n -webkit-transform: scale(0);\\n transform: scale(0);\\n opacity: 1;\\n }\\n 100% {\\n -webkit-transform: scale(1);\\n transform: scale(1);\\n opacity: 0;\\n }\\n}\\n@keyframes pulse {\\n 0% {\\n -webkit-transform: scale(0);\\n transform: scale(0);\\n opacity: 1;\\n }\\n 100% {\\n -webkit-transform: scale(1);\\n transform: scale(1);\\n opacity: 0;\\n }\\n}\\n@-webkit-keyframes shake {\\n from, to {\\n -webkit-transform: translate3d(0, 0, 0);\\n transform: translate3d(0, 0, 0);\\n }\\n 10%, 30%, 50%, 70%, 90% {\\n -webkit-transform: translate3d(-10px, 0, 0);\\n transform: translate3d(-10px, 0, 0);\\n }\\n 20%, 40%, 60%, 80% {\\n -webkit-transform: translate3d(10px, 0, 0);\\n transform: translate3d(10px, 0, 0);\\n }\\n}\\n@keyframes shake {\\n from, to {\\n -webkit-transform: translate3d(0, 0, 0);\\n transform: translate3d(0, 0, 0);\\n }\\n 10%, 30%, 50%, 70%, 90% {\\n -webkit-transform: translate3d(-10px, 0, 0);\\n transform: translate3d(-10px, 0, 0);\\n }\\n 20%, 40%, 60%, 80% {\\n -webkit-transform: translate3d(10px, 0, 0);\\n transform: translate3d(10px, 0, 0);\\n }\\n}\\n@-webkit-keyframes loading {\\n 0% {\\n -webkit-transform: rotate(-90deg) translate(0, 0);\\n transform: rotate(-90deg) translate(0, 0);\\n -webkit-transform-origin: 50%;\\n transform-origin: 50%;\\n stroke-dashoffset: 140px;\\n }\\n 50% {\\n stroke-dashoffset: 70px;\\n }\\n 100% {\\n -webkit-transform: rotate(270deg) translate(0, 0);\\n transform: rotate(270deg) translate(0, 0);\\n -webkit-transform-origin: 50%;\\n transform-origin: 50%;\\n stroke-dashoffset: 0;\\n }\\n}\\n@keyframes loading {\\n 0% {\\n -webkit-transform: rotate(-90deg) translate(0, 0);\\n transform: rotate(-90deg) translate(0, 0);\\n -webkit-transform-origin: 50%;\\n transform-origin: 50%;\\n stroke-dashoffset: 140px;\\n }\\n 50% {\\n stroke-dashoffset: 70px;\\n }\\n 100% {\\n -webkit-transform: rotate(270deg) translate(0, 0);\\n transform: rotate(270deg) translate(0, 0);\\n -webkit-transform-origin: 50%;\\n transform-origin: 50%;\\n stroke-dashoffset: 0;\\n }\\n}\\n@-webkit-keyframes color-load {\\n 0% {\\n stroke: #00a0d2;\\n }\\n 10% {\\n stroke: #00a0d2;\\n }\\n 20% {\\n stroke: #d2f4ff;\\n }\\n 30% {\\n stroke: #00a0d2;\\n }\\n 40% {\\n stroke: #00a0d2;\\n }\\n 50% {\\n stroke: #d2f4ff;\\n }\\n 60% {\\n stroke: #00a0d2;\\n }\\n 70% {\\n stroke: #00a0d2;\\n }\\n 80% {\\n stroke: #d2f4ff;\\n }\\n 90% {\\n stroke: #00a0d2;\\n }\\n 100% {\\n stroke: #d2f4ff;\\n }\\n}\\n@keyframes color-load {\\n 0% {\\n stroke: #00a0d2;\\n }\\n 10% {\\n stroke: #00a0d2;\\n }\\n 20% {\\n stroke: #d2f4ff;\\n }\\n 30% {\\n stroke: #00a0d2;\\n }\\n 40% {\\n stroke: #00a0d2;\\n }\\n 50% {\\n stroke: #d2f4ff;\\n }\\n 60% {\\n stroke: #00a0d2;\\n }\\n 70% {\\n stroke: #00a0d2;\\n }\\n 80% {\\n stroke: #d2f4ff;\\n }\\n 90% {\\n stroke: #00a0d2;\\n }\\n 100% {\\n stroke: #d2f4ff;\\n }\\n}\\n@font-face {\\n font-family: \\\"Frontiers-Iconography\\\";\\n src: url(data:font/truetype;charset=utf-8;base64,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) format(\\\"truetype\\\");\\n font-weight: normal;\\n font-style: normal;\\n}\\n.LayoutTwoBoxes--framed {\\n position: relative;\\n background: lightblue;\\n width: 100%;\\n height: 100%;\\n overflow-y: auto;\\n overflow-x: hidden;\\n}\\n.LayoutTwoBoxes--framed .LayoutTwoBoxes__handler {\\n position: absolute;\\n}\\n.LayoutTwoBoxes--framed .LayoutTwoBoxes__left {\\n position: absolute;\\n height: 100%;\\n overflow-y: auto;\\n}\\n.LayoutTwoBoxes__handler {\\n position: fixed;\\n top: 0;\\n left: 20vw;\\n margin-left: -10px;\\n width: 20px;\\n height: 100%;\\n opacity: 0.5;\\n z-index: 1;\\n cursor: col-resize;\\n}\\n@-moz-document url-prefix() {\\n .LayoutTwoBoxes__handler {\\n display: none;\\n }\\n}\\n@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {\\n .LayoutTwoBoxes__handler {\\n display: none;\\n }\\n}\\n@media (-ms-ime-align:auto) {\\n .LayoutTwoBoxes__handler {\\n display: none;\\n }\\n}\\n@media only screen and (max-width:768px) {\\n .LayoutTwoBoxes__handler {\\n display: none;\\n }\\n}\\n.LayoutTwoBoxes__handler:after, .LayoutTwoBoxes__handler:before {\\n content: \\\"\\\";\\n position: absolute;\\n top: 50%;\\n left: 4px;\\n width: 2px;\\n height: 12px;\\n background: #bababa;\\n}\\n.LayoutTwoBoxes__handler:before {\\n left: 7px;\\n}\\n.LayoutTwoBoxes__left {\\n width: 20vw;\\n position: fixed;\\n top: 0;\\n left: 0;\\n height: 100vh;\\n background: #ffffff;\\n -webkit-box-sizing: border-box;\\n box-sizing: border-box;\\n max-width: 40vw;\\n padding-right: 8px;\\n}\\n.LayoutTwoBoxes__left::-webkit-scrollbar {\\n background: #ffffff;\\n -webkit-appearance: none;\\n width: 10px;\\n height: 10px;\\n}\\n.LayoutTwoBoxes__left::-webkit-scrollbar-thumb {\\n border-radius: 0;\\n background-color: #bababa;\\n -webkit-box-shadow: 0 0 1px rgba(255, 255, 255, 0.5);\\n}\\n.LayoutTwoBoxes__left--noResizable {\\n padding-right: 0;\\n}\\n@media only screen and (max-width:768px) {\\n .LayoutTwoBoxes__left {\\n width: 100% !important;\\n max-width: none !important;\\n height: auto;\\n position: relative;\\n }\\n}\\n.LayoutTwoBoxes__left > *:not(.LayoutTwoBoxes__left__collapse) {\\n opacity: 1;\\n -webkit-transition: opacity 400ms linear;\\n transition: opacity 400ms linear;\\n}\\n.LayoutTwoBoxes__left--collapsed {\\n overflow-x: hidden;\\n overflow-y: hidden;\\n}\\n.LayoutTwoBoxes__left--collapsed > *:not(.LayoutTwoBoxes__left__collapse) {\\n opacity: 0;\\n}\\n.LayoutTwoBoxes__left--collapsed .LayoutTwoBoxes__left__collapse {\\n -webkit-transform: rotate(180deg);\\n transform: rotate(180deg);\\n}\\n.LayoutTwoBoxes__left__scrollable {\\n overflow-x: hidden;\\n overflow-y: auto;\\n max-height: 100%;\\n -webkit-box-sizing: border-box;\\n box-sizing: border-box;\\n}\\n.LayoutTwoBoxes__left__scrollable::-webkit-scrollbar {\\n background: #ffffff;\\n -webkit-appearance: none;\\n width: 7px;\\n height: 7px;\\n}\\n.LayoutTwoBoxes__left__scrollable::-webkit-scrollbar-thumb {\\n border-radius: 0;\\n background-color: #ffffff;\\n -webkit-box-shadow: 0 0 1px rgba(255, 255, 255, 0.5);\\n}\\n.LayoutTwoBoxes__left__scrollable:hover::-webkit-scrollbar {\\n background: #ffffff;\\n -webkit-appearance: none;\\n width: 7px;\\n height: 7px;\\n}\\n.LayoutTwoBoxes__left__scrollable:hover::-webkit-scrollbar-thumb {\\n border-radius: 0;\\n background-color: #e0e0e0;\\n -webkit-box-shadow: 0 0 1px rgba(255, 255, 255, 0.5);\\n}\\n.LayoutTwoBoxes__left__scrollable > *:last-child {\\n margin-bottom: 35px;\\n}\\n.LayoutTwoBoxes__left__collapse {\\n position: absolute;\\n bottom: 15px;\\n right: 15px;\\n cursor: pointer;\\n width: 30px;\\n height: 30px;\\n background: #ffffff;\\n -webkit-transition: -webkit-transform 400ms 400ms cubic-bezier(0.37, 0.74, 0.15, 1);\\n transition: -webkit-transform 400ms 400ms cubic-bezier(0.37, 0.74, 0.15, 1);\\n transition: transform 400ms 400ms cubic-bezier(0.37, 0.74, 0.15, 1);\\n transition: transform 400ms 400ms cubic-bezier(0.37, 0.74, 0.15, 1), -webkit-transform 400ms 400ms cubic-bezier(0.37, 0.74, 0.15, 1);\\n -webkit-filter: none;\\n filter: none;\\n}\\n.LayoutTwoBoxes__left__collapse:after {\\n content: \\\"\\\";\\n font-family: \\\"Frontiers-Iconography\\\" !important;\\n color: #bababa;\\n font-size: 16px;\\n line-height: 16px;\\n position: absolute;\\n top: calc(50% - 8px);\\n left: calc(50% - 8px);\\n}\\n@media only screen and (max-width:768px) {\\n .LayoutTwoBoxes__left__collapse {\\n display: none;\\n }\\n}\\n.LayoutTwoBoxes__right {\\n margin-left: 20vw;\\n -webkit-box-sizing: border-box;\\n box-sizing: border-box;\\n -webkit-transition: margin-right 400ms cubic-bezier(0.37, 0.74, 0.15, 1);\\n transition: margin-right 400ms cubic-bezier(0.37, 0.74, 0.15, 1);\\n}\\n@media only screen and (max-width:768px) {\\n .LayoutTwoBoxes__right {\\n margin-left: 0px !important;\\n }\\n}\\n.LayoutTwoBoxes__right--slider {\\n margin-right: 240px;\\n}\\n@media only screen and (max-width:768px) {\\n .LayoutTwoBoxes__right--slider {\\n margin-right: 0;\\n }\\n}\\n.LayoutTwoBoxes--collapsable .LayoutTwoBoxes__handler {\\n -webkit-transition: left 400ms ease-in-out;\\n transition: left 400ms ease-in-out;\\n}\\n.LayoutTwoBoxes--collapsable .LayoutTwoBoxes__left {\\n -webkit-transition: width 400ms ease-in-out, min-width 400ms ease-in-out;\\n transition: width 400ms ease-in-out, min-width 400ms ease-in-out;\\n}\\n.LayoutTwoBoxes--collapsable .LayoutTwoBoxes__right {\\n -webkit-transition: margin-left 400ms ease-in-out;\\n transition: margin-left 400ms ease-in-out;\\n}\";\nstyleInject(css);\n\nvar LAYOUT_RESIZE_EVENT_NAME = 'LayoutResizeEvent';\n\nvar VueComponentResizeEvent = function VueComponentResizeEvent () {};\n\nVueComponentResizeEvent.prototype.dispatch = function dispatch (details) {\n if ( details === void 0 ) details = null;\n\r\n var e = new Event(LAYOUT_RESIZE_EVENT_NAME, details);\r\n window.dispatchEvent(e);\r\n};\n\nvar TwoBoxesMixin = /*@__PURE__*/(function (Vue) {\n function TwoBoxesMixin() {\r\n Vue.apply(this, arguments);\r\n this.endPointX = 260;\r\n this.maxWidth = 500;\r\n this.widthComputedParsed = 260;\r\n this.menuCollapsed = false;\r\n this.stylesCollapsable = false;\r\n this.isCollapsing = false;\r\n }\n\n if ( Vue ) TwoBoxesMixin.__proto__ = Vue;\n TwoBoxesMixin.prototype = Object.create( Vue && Vue.prototype );\n TwoBoxesMixin.prototype.constructor = TwoBoxesMixin;\n\n var prototypeAccessors = { lockScroll: { configurable: true },getCollapsedWidth: { configurable: true } };\r\n TwoBoxesMixin.prototype.sliderVisible_update = function sliderVisible_update () {\r\n this.dispatchResizeEvent(400);\r\n };\r\n prototypeAccessors.lockScroll.get = function () {\r\n return this.sliderVisible === true && this.isDesktop() === false;\r\n };\r\n TwoBoxesMixin.prototype.myMatchMedia = function myMatchMedia (media) {\r\n return window.matchMedia(media).matches;\r\n };\r\n TwoBoxesMixin.prototype.isDesktop = function isDesktop () {\r\n return this.myMatchMedia('(min-width: 769px)');\r\n };\r\n TwoBoxesMixin.prototype.mounted = function mounted () {\r\n var refsLeft = this.$refs.left;\r\n this.widthComputedParsed = parseInt(getComputedStyle(refsLeft, null).getPropertyValue('width'), 10);\r\n this.maxWidth = parseInt(getComputedStyle(refsLeft, null).getPropertyValue('max-width'), 10);\r\n this.endPointX = this.widthComputedParsed;\r\n window.addEventListener('resize', this.resizing);\r\n };\r\n TwoBoxesMixin.prototype.resizing = function resizing () {\r\n if (!this.$refs.left)\r\n { return; }\r\n var refsLeft = this.$refs.left;\r\n this.widthComputedParsed = parseInt(getComputedStyle(refsLeft, null).getPropertyValue('width'), 10);\r\n this.endPointX = this.widthComputedParsed;\r\n };\r\n TwoBoxesMixin.prototype.isInternetExplorer11 = function isInternetExplorer11 () {\r\n // @ts-ignore\r\n return !!window.MSInputMethodContext && !!document.documentMode;\r\n };\r\n TwoBoxesMixin.prototype.isEdge = function isEdge () {\r\n // @ts-ignore\r\n return navigator.appVersion.indexOf('Edge') !== -1;\r\n };\r\n TwoBoxesMixin.prototype.isIFirefox = function isIFirefox () {\r\n // @ts-ignore\r\n return navigator.userAgent.toLowerCase().indexOf('firefox') > -1;\r\n };\r\n prototypeAccessors.getCollapsedWidth.get = function () {\r\n return parseInt(this.collapsedWidthPx.toString());\r\n };\r\n TwoBoxesMixin.prototype.dragging = function dragging (event) {\r\n var isIE11 = this.isInternetExplorer11();\r\n var isFirefox = this.isIFirefox();\r\n var isEdge = this.isEdge();\r\n var refsLeft = this.$refs.left;\r\n this.maxWidth ? parseInt(getComputedStyle(refsLeft, null).getPropertyValue('max-width'), 10) > 400 : 400;\r\n if (!isIE11 && !isEdge && !isFirefox && this.isDesktop() && !this.isCollapsing && event.pageX !== 0) {\r\n var collapsedWidthPxAsNumber = this.getCollapsedWidth;\r\n var firstFlow = event.pageX >= collapsedWidthPxAsNumber && event.pageX < parseInt(this.maxWidth.toString());\r\n var secondFlow = event.pageX < collapsedWidthPxAsNumber;\r\n if (firstFlow) {\r\n this.endPointX = event.pageX;\r\n var thirdFlow = this.endPointX <= collapsedWidthPxAsNumber + 10;\r\n var fourFlow = this.endPointX >= collapsedWidthPxAsNumber && this.menuCollapsed;\r\n if (thirdFlow) {\r\n this.collapsing(true, collapsedWidthPxAsNumber, 0);\r\n this.menuCollapsed = true;\r\n }\r\n else if (fourFlow) {\r\n this.collapsing(false, this.endPointX, 0);\r\n this.menuCollapsed = false;\r\n }\r\n else { // fiveFlow\r\n this.dispatchResizeEvent();\r\n }\r\n }\r\n else if (secondFlow) {\r\n this.collapsing(true, collapsedWidthPxAsNumber, 0);\r\n this.menuCollapsed = true;\r\n }\r\n }\r\n };\r\n TwoBoxesMixin.prototype.dragstarting = function dragstarting (event) {\r\n if (!(event && event.dataTransfer))\r\n { return; }\r\n var isIE11 = this.isInternetExplorer11();\r\n var isFirefox = this.isIFirefox();\r\n var isEdge = this.isEdge();\r\n var refsHandlerImg = this.$refs.handlerImg;\r\n if (!isIE11 && !isEdge && !isFirefox && this.isDesktop()) {\r\n event.dataTransfer.setDragImage(refsHandlerImg, 0, 0);\r\n }\r\n };\r\n TwoBoxesMixin.prototype.dragending = function dragending (event) {\r\n this.dispatchResizeEvent();\r\n };\r\n TwoBoxesMixin.prototype.autoExpanding = function autoExpanding () {\r\n this.collapsing(false, this.widthComputedParsed);\r\n this.menuCollapsed = false;\r\n };\r\n TwoBoxesMixin.prototype.collapsing = function collapsing (collapseState, newWidth, timeCollapsing) {\n var this$1 = this;\n if ( newWidth === void 0 ) newWidth = this.widthComputedParsed;\n if ( timeCollapsing === void 0 ) timeCollapsing = 400;\n\r\n var timeTransitionCollapsing = 400;\r\n this.stylesCollapsable = true;\r\n this.menuCollapsed = !this.menuCollapsed;\r\n this.isCollapsing = true;\r\n if (!collapseState) {\r\n this.endPointX = newWidth;\r\n setTimeout(function () {\r\n this$1.stylesCollapsable = false;\r\n this$1.dispatchResizeEvent(timeTransitionCollapsing);\r\n }, timeTransitionCollapsing);\r\n }\r\n else {\r\n this.endPointX = this.getCollapsedWidth;\r\n }\r\n setTimeout(function () {\r\n this$1.isCollapsing = false;\r\n this$1.dispatchResizeEvent(timeTransitionCollapsing);\r\n }, timeCollapsing);\r\n };\r\n TwoBoxesMixin.prototype.dispatchResizeEvent = function dispatchResizeEvent (wait) {\n if ( wait === void 0 ) wait = 0;\n\r\n if (wait > 0) {\r\n setTimeout(function () { return new VueComponentResizeEvent().dispatch(); }, wait);\r\n }\r\n else {\r\n new VueComponentResizeEvent().dispatch();\r\n }\r\n };\n\n Object.defineProperties( TwoBoxesMixin.prototype, prototypeAccessors );\n\n return TwoBoxesMixin;\n}(Vue));\r\n__decorate([\r\n Prop({ default: 51 })\r\n], TwoBoxesMixin.prototype, \"top\", void 0);\r\n__decorate([\r\n Prop({ default: 50 })\r\n], TwoBoxesMixin.prototype, \"collapsedWidthPx\", void 0);\r\n__decorate([\r\n Prop({ default: '260px' })\r\n], TwoBoxesMixin.prototype, \"widthLeft\", void 0);\r\n__decorate([\r\n Prop({ default: '50vw' })\r\n], TwoBoxesMixin.prototype, \"maxWidthLeft\", void 0);\r\n__decorate([\r\n Prop({ default: false })\r\n], TwoBoxesMixin.prototype, \"sliderVisible\", void 0);\r\n__decorate([\r\n Prop({ default: true })\r\n], TwoBoxesMixin.prototype, \"isCollapsable\", void 0);\r\n__decorate([\r\n Prop({ default: true })\r\n], TwoBoxesMixin.prototype, \"isResizable\", void 0);\r\n__decorate([\r\n Watch('sliderVisible')\r\n], TwoBoxesMixin.prototype, \"sliderVisible_update\", null);\r\nTwoBoxesMixin = __decorate([\r\n Mixin\r\n], TwoBoxesMixin);\r\nvar TwoBoxesMixin$1 = TwoBoxesMixin;\n\nvar Layout = /*@__PURE__*/(function (TwoBoxesMixin) {\n function Layout () {\n TwoBoxesMixin.apply(this, arguments);\n }\n\n if ( TwoBoxesMixin ) Layout.__proto__ = TwoBoxesMixin;\n Layout.prototype = Object.create( TwoBoxesMixin && TwoBoxesMixin.prototype );\n Layout.prototype.constructor = Layout;\n\n Layout.prototype.collapsingLeft = function collapsingLeft () {\r\n this.collapsing(!this.menuCollapsed);\r\n };\n\n return Layout;\n}(TwoBoxesMixin$1));\r\nLayout = __decorate([\r\n Component\r\n], Layout);\r\nvar script = Layout;\n\nfunction normalizeComponent(template, style, script, scopeId, isFunctionalTemplate, moduleIdentifier\n/* server only */\n, shadowMode, createInjector, createInjectorSSR, createInjectorShadow) {\n if (typeof shadowMode !== 'boolean') {\n createInjectorSSR = createInjector;\n createInjector = shadowMode;\n shadowMode = false;\n } // Vue.extend constructor export interop.\n\n\n var options = typeof script === 'function' ? script.options : script; // render functions\n\n if (template && template.render) {\n options.render = template.render;\n options.staticRenderFns = template.staticRenderFns;\n options._compiled = true; // functional template\n\n if (isFunctionalTemplate) {\n options.functional = true;\n }\n } // scopedId\n\n\n if (scopeId) {\n options._scopeId = scopeId;\n }\n\n var hook;\n\n if (moduleIdentifier) {\n // server build\n hook = function hook(context) {\n // 2.3 injection\n context = context || // cached call\n this.$vnode && this.$vnode.ssrContext || // stateful\n this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext; // functional\n // 2.2 with runInNewContext: true\n\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n context = __VUE_SSR_CONTEXT__;\n } // inject component styles\n\n\n if (style) {\n style.call(this, createInjectorSSR(context));\n } // register component module identifier for async chunk inference\n\n\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier);\n }\n }; // used by ssr in case component is cached and beforeCreate\n // never gets called\n\n\n options._ssrRegister = hook;\n } else if (style) {\n hook = shadowMode ? function () {\n style.call(this, createInjectorShadow(this.$root.$options.shadowRoot));\n } : function (context) {\n style.call(this, createInjector(context));\n };\n }\n\n if (hook) {\n if (options.functional) {\n // register for functional component in vue file\n var originalRender = options.render;\n\n options.render = function renderWithStyleInjection(h, context) {\n hook.call(context);\n return originalRender(h, context);\n };\n } else {\n // inject component registration as beforeCreate hook\n var existing = options.beforeCreate;\n options.beforeCreate = existing ? [].concat(existing, hook) : [hook];\n }\n }\n\n return script;\n}\n\nvar normalizeComponent_1 = normalizeComponent;\n\n/* script */\nvar __vue_script__ = script;\n\n/* template */\nvar __vue_render__ = function() {\n var _vm = this;\n var _h = _vm.$createElement;\n var _c = _vm._self._c || _h;\n return _c(\n \"div\",\n {\n staticClass: \"LayoutTwoBoxes\",\n class: { \"LayoutTwoBoxes--collapsable\": _vm.stylesCollapsable }\n },\n [\n _vm.isResizable\n ? _c(\n \"a\",\n {\n ref: \"handler\",\n staticClass: \"LayoutTwoBoxes__handler\",\n style: { left: _vm.endPointX + \"px\" },\n attrs: { draggable: \"true\" },\n on: {\n drag: _vm.dragging,\n dragstart: _vm.dragstarting,\n dblclick: _vm.autoExpanding,\n dragend: _vm.dragending\n }\n },\n [_c(\"span\", { ref: \"handlerImg\" })]\n )\n : _vm._e(),\n _vm._v(\" \"),\n _c(\n \"div\",\n {\n ref: \"left\",\n staticClass: \"LayoutTwoBoxes__left\",\n class: {\n \"LayoutTwoBoxes__left--collapsed\": _vm.menuCollapsed,\n \"LayoutTwoBoxes__left--noResizable\": !_vm.isResizable\n },\n style: {\n width: _vm.endPointX + \"px\",\n \"max-width\": _vm.maxWidthLeft,\n top: _vm.top + \"px\",\n \"max-height\": \"calc(100% - \" + _vm.top + \"px)\"\n }\n },\n [\n _c(\n \"div\",\n { staticClass: \"LayoutTwoBoxes__left__scrollable\" },\n [_vm._t(\"left\")],\n 2\n ),\n _vm._v(\" \"),\n _vm.isCollapsable\n ? _c(\"div\", {\n ref: \"collapse\",\n staticClass: \"LayoutTwoBoxes__left__collapse\",\n on: { click: _vm.collapsingLeft }\n })\n : _vm._e()\n ]\n ),\n _vm._v(\" \"),\n _c(\n \"div\",\n {\n ref: \"right\",\n staticClass: \"LayoutTwoBoxes__right\",\n class: { \"LayoutTwoBoxes__right--slider\": _vm.sliderVisible },\n style: { \"margin-left\": this.endPointX + \"px\" }\n },\n [_vm._t(\"right\")],\n 2\n )\n ]\n )\n};\nvar __vue_staticRenderFns__ = [];\n__vue_render__._withStripped = true;\n\n /* style */\n var __vue_inject_styles__ = undefined;\n /* scoped */\n var __vue_scope_id__ = undefined;\n /* module identifier */\n var __vue_module_identifier__ = undefined;\n /* functional template */\n var __vue_is_functional_template__ = false;\n /* style inject */\n \n /* style inject SSR */\n \n\n \n var LayoutTwoBoxes = normalizeComponent_1(\n { render: __vue_render__, staticRenderFns: __vue_staticRenderFns__ },\n __vue_inject_styles__,\n __vue_script__,\n __vue_scope_id__,\n __vue_is_functional_template__,\n __vue_module_identifier__,\n undefined,\n undefined\n );\n\nvar css$1 = \"/*------------------------------------------------------------------ Colors */\\n/*------------------------------------------------------------------ Filters */\\n/*------------------------------------------------------------------ Filters Grey IE11 */\\n/*------------------------------------------------------------------ Dimensions */\\n/*------------------------------------------------------------------ Bezier */\\n/*------------------------------------------------------------------ Media Queries */\\n/*------------------------------------------------------------------ Media Queries CSS Hacks */\\n@-webkit-keyframes rotate {\\n 0% {\\n -webkit-transform: rotate(0deg);\\n transform: rotate(0deg);\\n }\\n 100% {\\n -webkit-transform: rotate(1080deg);\\n transform: rotate(1080deg);\\n }\\n}\\n@keyframes rotate {\\n 0% {\\n -webkit-transform: rotate(0deg);\\n transform: rotate(0deg);\\n }\\n 100% {\\n -webkit-transform: rotate(1080deg);\\n transform: rotate(1080deg);\\n }\\n}\\n@-webkit-keyframes bounce {\\n 0% {\\n -webkit-transform: translateY(0px);\\n transform: translateY(0px);\\n }\\n 100% {\\n -webkit-transform: translateY(5px);\\n transform: translateY(5px);\\n }\\n}\\n@keyframes bounce {\\n 0% {\\n -webkit-transform: translateY(0px);\\n transform: translateY(0px);\\n }\\n 100% {\\n -webkit-transform: translateY(5px);\\n transform: translateY(5px);\\n }\\n}\\n@-webkit-keyframes pulse {\\n 0% {\\n -webkit-transform: scale(0);\\n transform: scale(0);\\n opacity: 1;\\n }\\n 100% {\\n -webkit-transform: scale(1);\\n transform: scale(1);\\n opacity: 0;\\n }\\n}\\n@keyframes pulse {\\n 0% {\\n -webkit-transform: scale(0);\\n transform: scale(0);\\n opacity: 1;\\n }\\n 100% {\\n -webkit-transform: scale(1);\\n transform: scale(1);\\n opacity: 0;\\n }\\n}\\n@-webkit-keyframes shake {\\n from, to {\\n -webkit-transform: translate3d(0, 0, 0);\\n transform: translate3d(0, 0, 0);\\n }\\n 10%, 30%, 50%, 70%, 90% {\\n -webkit-transform: translate3d(-10px, 0, 0);\\n transform: translate3d(-10px, 0, 0);\\n }\\n 20%, 40%, 60%, 80% {\\n -webkit-transform: translate3d(10px, 0, 0);\\n transform: translate3d(10px, 0, 0);\\n }\\n}\\n@keyframes shake {\\n from, to {\\n -webkit-transform: translate3d(0, 0, 0);\\n transform: translate3d(0, 0, 0);\\n }\\n 10%, 30%, 50%, 70%, 90% {\\n -webkit-transform: translate3d(-10px, 0, 0);\\n transform: translate3d(-10px, 0, 0);\\n }\\n 20%, 40%, 60%, 80% {\\n -webkit-transform: translate3d(10px, 0, 0);\\n transform: translate3d(10px, 0, 0);\\n }\\n}\\n@-webkit-keyframes loading {\\n 0% {\\n -webkit-transform: rotate(-90deg) translate(0, 0);\\n transform: rotate(-90deg) translate(0, 0);\\n -webkit-transform-origin: 50%;\\n transform-origin: 50%;\\n stroke-dashoffset: 140px;\\n }\\n 50% {\\n stroke-dashoffset: 70px;\\n }\\n 100% {\\n -webkit-transform: rotate(270deg) translate(0, 0);\\n transform: rotate(270deg) translate(0, 0);\\n -webkit-transform-origin: 50%;\\n transform-origin: 50%;\\n stroke-dashoffset: 0;\\n }\\n}\\n@keyframes loading {\\n 0% {\\n -webkit-transform: rotate(-90deg) translate(0, 0);\\n transform: rotate(-90deg) translate(0, 0);\\n -webkit-transform-origin: 50%;\\n transform-origin: 50%;\\n stroke-dashoffset: 140px;\\n }\\n 50% {\\n stroke-dashoffset: 70px;\\n }\\n 100% {\\n -webkit-transform: rotate(270deg) translate(0, 0);\\n transform: rotate(270deg) translate(0, 0);\\n -webkit-transform-origin: 50%;\\n transform-origin: 50%;\\n stroke-dashoffset: 0;\\n }\\n}\\n@-webkit-keyframes color-load {\\n 0% {\\n stroke: #00a0d2;\\n }\\n 10% {\\n stroke: #00a0d2;\\n }\\n 20% {\\n stroke: #d2f4ff;\\n }\\n 30% {\\n stroke: #00a0d2;\\n }\\n 40% {\\n stroke: #00a0d2;\\n }\\n 50% {\\n stroke: #d2f4ff;\\n }\\n 60% {\\n stroke: #00a0d2;\\n }\\n 70% {\\n stroke: #00a0d2;\\n }\\n 80% {\\n stroke: #d2f4ff;\\n }\\n 90% {\\n stroke: #00a0d2;\\n }\\n 100% {\\n stroke: #d2f4ff;\\n }\\n}\\n@keyframes color-load {\\n 0% {\\n stroke: #00a0d2;\\n }\\n 10% {\\n stroke: #00a0d2;\\n }\\n 20% {\\n stroke: #d2f4ff;\\n }\\n 30% {\\n stroke: #00a0d2;\\n }\\n 40% {\\n stroke: #00a0d2;\\n }\\n 50% {\\n stroke: #d2f4ff;\\n }\\n 60% {\\n stroke: #00a0d2;\\n }\\n 70% {\\n stroke: #00a0d2;\\n }\\n 80% {\\n stroke: #d2f4ff;\\n }\\n 90% {\\n stroke: #00a0d2;\\n }\\n 100% {\\n stroke: #d2f4ff;\\n }\\n}\\n@font-face {\\n font-family: \\\"Frontiers-Iconography\\\";\\n src: url(data:font/truetype;charset=utf-8;base64,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) format(\\\"truetype\\\");\\n font-weight: normal;\\n font-style: normal;\\n}\\n.LayoutSideMenu__handler {\\n position: fixed;\\n top: 0;\\n left: 20vw;\\n margin-left: -10px;\\n width: 20px;\\n height: 100%;\\n opacity: 0.5;\\n z-index: 1;\\n cursor: col-resize;\\n}\\n@-moz-document url-prefix() {\\n .LayoutSideMenu__handler {\\n display: none;\\n }\\n}\\n@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {\\n .LayoutSideMenu__handler {\\n display: none;\\n }\\n}\\n@media (-ms-ime-align:auto) {\\n .LayoutSideMenu__handler {\\n display: none;\\n }\\n}\\n@media only screen and (max-width:768px) {\\n .LayoutSideMenu__handler {\\n display: none;\\n }\\n}\\n.LayoutSideMenu__handler:after, .LayoutSideMenu__handler:before {\\n content: \\\"\\\";\\n position: absolute;\\n top: 50%;\\n left: 4px;\\n width: 2px;\\n height: 12px;\\n background: #bababa;\\n}\\n.LayoutSideMenu__handler:before {\\n left: 7px;\\n}\\n.LayoutSideMenu__left {\\n width: 20vw;\\n position: fixed;\\n top: 0;\\n left: 0;\\n height: 100vh;\\n -webkit-box-sizing: border-box;\\n box-sizing: border-box;\\n overflow: auto;\\n}\\n.LayoutSideMenu__left::-webkit-scrollbar {\\n background: #ffffff;\\n -webkit-appearance: none;\\n width: 10px;\\n height: 10px;\\n}\\n.LayoutSideMenu__left::-webkit-scrollbar-thumb {\\n border-radius: 0;\\n background-color: #bababa;\\n -webkit-box-shadow: 0 0 1px rgba(255, 255, 255, 0.5);\\n}\\n.LayoutSideMenu__left--noResizable .SideMenu.SideMenu {\\n padding-right: 0;\\n}\\n@media only screen and (max-width:768px) {\\n .LayoutSideMenu__left {\\n width: 100% !important;\\n max-width: none !important;\\n height: auto;\\n position: relative;\\n }\\n}\\n.LayoutSideMenu__right {\\n margin-left: 20vw;\\n -webkit-box-sizing: border-box;\\n box-sizing: border-box;\\n -webkit-transition: margin-right 400ms cubic-bezier(0.37, 0.74, 0.15, 1);\\n transition: margin-right 400ms cubic-bezier(0.37, 0.74, 0.15, 1);\\n}\\n@media only screen and (max-width:768px) {\\n .LayoutSideMenu__right {\\n margin-left: 0px !important;\\n }\\n}\\n.LayoutSideMenu__right--slider {\\n margin-right: 240px;\\n}\\n@media only screen and (max-width:768px) {\\n .LayoutSideMenu__right--slider {\\n margin-right: 0;\\n }\\n}\\n.LayoutSideMenu--collapsable .LayoutSideMenu__handler {\\n -webkit-transition: left 400ms ease-in-out;\\n transition: left 400ms ease-in-out;\\n}\\n.LayoutSideMenu--collapsable .LayoutSideMenu__left {\\n -webkit-transition: width 400ms ease-in-out, min-width 400ms ease-in-out;\\n transition: width 400ms ease-in-out, min-width 400ms ease-in-out;\\n}\\n.LayoutSideMenu--collapsable .LayoutSideMenu__right {\\n -webkit-transition: margin-left 400ms ease-in-out;\\n transition: margin-left 400ms ease-in-out;\\n}\\n\\n.LayoutSideMenu .SideMenu {\\n position: relative;\\n width: 100%;\\n -webkit-box-sizing: border-box;\\n box-sizing: border-box;\\n background: #ffffff;\\n padding-right: 8px;\\n border-right: 0px;\\n border-top: 0px;\\n}\\n@media only screen and (min-width: 769px) {\\n .LayoutSideMenu .SideMenu {\\n top: 0 !important;\\n }\\n}\\n\\n.sortable-fallback {\\n visibility: hidden;\\n}\";\nstyleInject(css$1);\n\nvar LayoutSideMenu = /*@__PURE__*/(function (TwoBoxesMixin) {\n function LayoutSideMenu () {\n TwoBoxesMixin.apply(this, arguments);\n }\n\n if ( TwoBoxesMixin ) LayoutSideMenu.__proto__ = TwoBoxesMixin;\n LayoutSideMenu.prototype = Object.create( TwoBoxesMixin && TwoBoxesMixin.prototype );\n LayoutSideMenu.prototype.constructor = LayoutSideMenu;\n\n LayoutSideMenu.prototype.collapsingSideMenu = function collapsingSideMenu (collapseState) {\r\n this.collapsing(collapseState);\r\n };\n\n return LayoutSideMenu;\n}(TwoBoxesMixin$1));\r\n__decorate([\r\n Prop({ default: '' })\r\n], LayoutSideMenu.prototype, \"title\", void 0);\r\nLayoutSideMenu = __decorate([\r\n Component({\r\n components: { SideMenu: SideMenu }\r\n })\r\n], LayoutSideMenu);\r\nvar script$1 = LayoutSideMenu;\n\n/* script */\nvar __vue_script__$1 = script$1;\n\n/* template */\nvar __vue_render__$1 = function() {\n var _vm = this;\n var _h = _vm.$createElement;\n var _c = _vm._self._c || _h;\n return _c(\n \"div\",\n {\n staticClass: \"LayoutSideMenu\",\n class: { \"LayoutSideMenu--collapsable\": _vm.stylesCollapsable }\n },\n [\n _vm.isResizable\n ? _c(\n \"a\",\n {\n ref: \"handler\",\n staticClass: \"LayoutSideMenu__handler\",\n style: { left: this.endPointX + \"px\" },\n attrs: { draggable: \"true\" },\n on: {\n drag: _vm.dragging,\n dragstart: _vm.dragstarting,\n dblclick: _vm.autoExpanding,\n dragend: _vm.dragending\n }\n },\n [_c(\"span\", { ref: \"handlerImg\" })]\n )\n : _vm._e(),\n _vm._v(\" \"),\n _c(\n \"div\",\n {\n ref: \"left\",\n staticClass: \"LayoutSideMenu__left\",\n class: { \"LayoutSideMenu__left--noResizable\": !_vm.isResizable },\n style: {\n width: this.endPointX + \"px\",\n \"max-width\": this.maxWidthLeft,\n \"padding-top\": this.top + \"px\"\n }\n },\n [\n _c(\n \"side-menu\",\n {\n attrs: {\n title: _vm.title,\n top: _vm.top,\n collapsable: _vm.isCollapsable,\n \"is-collapsed\": _vm.menuCollapsed\n },\n on: { \"collapse-state-change\": _vm.collapsingSideMenu }\n },\n [\n _c(\"template\", { slot: \"header\" }, [_vm._t(\"sideMenuHeader\")], 2),\n _vm._v(\" \"),\n _c(\"template\", { slot: \"menu\" }, [_vm._t(\"sideMenuItems\")], 2)\n ],\n 2\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"div\",\n {\n ref: \"right\",\n staticClass: \"LayoutSideMenu__right\",\n class: { \"LayoutSideMenu__right--slider\": _vm.sliderVisible },\n style: { \"margin-left\": this.endPointX + \"px\" }\n },\n [_vm._t(\"right\")],\n 2\n )\n ]\n )\n};\nvar __vue_staticRenderFns__$1 = [];\n__vue_render__$1._withStripped = true;\n\n /* style */\n var __vue_inject_styles__$1 = undefined;\n /* scoped */\n var __vue_scope_id__$1 = undefined;\n /* module identifier */\n var __vue_module_identifier__$1 = undefined;\n /* functional template */\n var __vue_is_functional_template__$1 = false;\n /* style inject */\n \n /* style inject SSR */\n \n\n \n var LayoutSideMenu$1 = normalizeComponent_1(\n { render: __vue_render__$1, staticRenderFns: __vue_staticRenderFns__$1 },\n __vue_inject_styles__$1,\n __vue_script__$1,\n __vue_scope_id__$1,\n __vue_is_functional_template__$1,\n __vue_module_identifier__$1,\n undefined,\n undefined\n );\n\nvar css$2 = \"/*------------------------------------------------------------------ Colors */\\n/*------------------------------------------------------------------ Filters */\\n/*------------------------------------------------------------------ Filters Grey IE11 */\\n/*------------------------------------------------------------------ Dimensions */\\n/*------------------------------------------------------------------ Bezier */\\n/*------------------------------------------------------------------ Media Queries */\\n/*------------------------------------------------------------------ Media Queries CSS Hacks */\\n@-webkit-keyframes rotate {\\n 0% {\\n -webkit-transform: rotate(0deg);\\n transform: rotate(0deg);\\n }\\n 100% {\\n -webkit-transform: rotate(1080deg);\\n transform: rotate(1080deg);\\n }\\n}\\n@keyframes rotate {\\n 0% {\\n -webkit-transform: rotate(0deg);\\n transform: rotate(0deg);\\n }\\n 100% {\\n -webkit-transform: rotate(1080deg);\\n transform: rotate(1080deg);\\n }\\n}\\n@-webkit-keyframes bounce {\\n 0% {\\n -webkit-transform: translateY(0px);\\n transform: translateY(0px);\\n }\\n 100% {\\n -webkit-transform: translateY(5px);\\n transform: translateY(5px);\\n }\\n}\\n@keyframes bounce {\\n 0% {\\n -webkit-transform: translateY(0px);\\n transform: translateY(0px);\\n }\\n 100% {\\n -webkit-transform: translateY(5px);\\n transform: translateY(5px);\\n }\\n}\\n@-webkit-keyframes pulse {\\n 0% {\\n -webkit-transform: scale(0);\\n transform: scale(0);\\n opacity: 1;\\n }\\n 100% {\\n -webkit-transform: scale(1);\\n transform: scale(1);\\n opacity: 0;\\n }\\n}\\n@keyframes pulse {\\n 0% {\\n -webkit-transform: scale(0);\\n transform: scale(0);\\n opacity: 1;\\n }\\n 100% {\\n -webkit-transform: scale(1);\\n transform: scale(1);\\n opacity: 0;\\n }\\n}\\n@-webkit-keyframes shake {\\n from, to {\\n -webkit-transform: translate3d(0, 0, 0);\\n transform: translate3d(0, 0, 0);\\n }\\n 10%, 30%, 50%, 70%, 90% {\\n -webkit-transform: translate3d(-10px, 0, 0);\\n transform: translate3d(-10px, 0, 0);\\n }\\n 20%, 40%, 60%, 80% {\\n -webkit-transform: translate3d(10px, 0, 0);\\n transform: translate3d(10px, 0, 0);\\n }\\n}\\n@keyframes shake {\\n from, to {\\n -webkit-transform: translate3d(0, 0, 0);\\n transform: translate3d(0, 0, 0);\\n }\\n 10%, 30%, 50%, 70%, 90% {\\n -webkit-transform: translate3d(-10px, 0, 0);\\n transform: translate3d(-10px, 0, 0);\\n }\\n 20%, 40%, 60%, 80% {\\n -webkit-transform: translate3d(10px, 0, 0);\\n transform: translate3d(10px, 0, 0);\\n }\\n}\\n@-webkit-keyframes loading {\\n 0% {\\n -webkit-transform: rotate(-90deg) translate(0, 0);\\n transform: rotate(-90deg) translate(0, 0);\\n -webkit-transform-origin: 50%;\\n transform-origin: 50%;\\n stroke-dashoffset: 140px;\\n }\\n 50% {\\n stroke-dashoffset: 70px;\\n }\\n 100% {\\n -webkit-transform: rotate(270deg) translate(0, 0);\\n transform: rotate(270deg) translate(0, 0);\\n -webkit-transform-origin: 50%;\\n transform-origin: 50%;\\n stroke-dashoffset: 0;\\n }\\n}\\n@keyframes loading {\\n 0% {\\n -webkit-transform: rotate(-90deg) translate(0, 0);\\n transform: rotate(-90deg) translate(0, 0);\\n -webkit-transform-origin: 50%;\\n transform-origin: 50%;\\n stroke-dashoffset: 140px;\\n }\\n 50% {\\n stroke-dashoffset: 70px;\\n }\\n 100% {\\n -webkit-transform: rotate(270deg) translate(0, 0);\\n transform: rotate(270deg) translate(0, 0);\\n -webkit-transform-origin: 50%;\\n transform-origin: 50%;\\n stroke-dashoffset: 0;\\n }\\n}\\n@-webkit-keyframes color-load {\\n 0% {\\n stroke: #00a0d2;\\n }\\n 10% {\\n stroke: #00a0d2;\\n }\\n 20% {\\n stroke: #d2f4ff;\\n }\\n 30% {\\n stroke: #00a0d2;\\n }\\n 40% {\\n stroke: #00a0d2;\\n }\\n 50% {\\n stroke: #d2f4ff;\\n }\\n 60% {\\n stroke: #00a0d2;\\n }\\n 70% {\\n stroke: #00a0d2;\\n }\\n 80% {\\n stroke: #d2f4ff;\\n }\\n 90% {\\n stroke: #00a0d2;\\n }\\n 100% {\\n stroke: #d2f4ff;\\n }\\n}\\n@keyframes color-load {\\n 0% {\\n stroke: #00a0d2;\\n }\\n 10% {\\n stroke: #00a0d2;\\n }\\n 20% {\\n stroke: #d2f4ff;\\n }\\n 30% {\\n stroke: #00a0d2;\\n }\\n 40% {\\n stroke: #00a0d2;\\n }\\n 50% {\\n stroke: #d2f4ff;\\n }\\n 60% {\\n stroke: #00a0d2;\\n }\\n 70% {\\n stroke: #00a0d2;\\n }\\n 80% {\\n stroke: #d2f4ff;\\n }\\n 90% {\\n stroke: #00a0d2;\\n }\\n 100% {\\n stroke: #d2f4ff;\\n }\\n}\\n@font-face {\\n font-family: \\\"Frontiers-Iconography\\\";\\n src: url(data:font/truetype;charset=utf-8;base64,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) format(\\\"truetype\\\");\\n font-weight: normal;\\n font-style: normal;\\n}\\n.LayoutSingle__main {\\n -webkit-box-sizing: border-box;\\n box-sizing: border-box;\\n -webkit-transition: margin-right 400ms cubic-bezier(0.37, 0.74, 0.15, 1);\\n transition: margin-right 400ms cubic-bezier(0.37, 0.74, 0.15, 1);\\n}\\n@media only screen and (max-width:768px) {\\n .LayoutSingle__main {\\n margin-left: 0px !important;\\n }\\n}\\n.LayoutSingle__main--slider {\\n margin-right: 240px;\\n}\\n@media only screen and (max-width:768px) {\\n .LayoutSingle__main--slider {\\n margin-right: 0;\\n }\\n}\";\nstyleInject(css$2);\n\nvar css$3 = \"@charset \\\"UTF-8\\\";\\n/*------------------------------------------------------------------ Colors */\\n/*------------------------------------------------------------------ Filters */\\n/*------------------------------------------------------------------ Filters Grey IE11 */\\n/*------------------------------------------------------------------ Dimensions */\\n/*------------------------------------------------------------------ Bezier */\\n/*------------------------------------------------------------------ Media Queries */\\n/*------------------------------------------------------------------ Media Queries CSS Hacks */\\n@-webkit-keyframes rotate {\\n 0% {\\n -webkit-transform: rotate(0deg);\\n transform: rotate(0deg);\\n }\\n 100% {\\n -webkit-transform: rotate(1080deg);\\n transform: rotate(1080deg);\\n }\\n}\\n@keyframes rotate {\\n 0% {\\n -webkit-transform: rotate(0deg);\\n transform: rotate(0deg);\\n }\\n 100% {\\n -webkit-transform: rotate(1080deg);\\n transform: rotate(1080deg);\\n }\\n}\\n@-webkit-keyframes bounce {\\n 0% {\\n -webkit-transform: translateY(0px);\\n transform: translateY(0px);\\n }\\n 100% {\\n -webkit-transform: translateY(5px);\\n transform: translateY(5px);\\n }\\n}\\n@keyframes bounce {\\n 0% {\\n -webkit-transform: translateY(0px);\\n transform: translateY(0px);\\n }\\n 100% {\\n -webkit-transform: translateY(5px);\\n transform: translateY(5px);\\n }\\n}\\n@-webkit-keyframes pulse {\\n 0% {\\n -webkit-transform: scale(0);\\n transform: scale(0);\\n opacity: 1;\\n }\\n 100% {\\n -webkit-transform: scale(1);\\n transform: scale(1);\\n opacity: 0;\\n }\\n}\\n@keyframes pulse {\\n 0% {\\n -webkit-transform: scale(0);\\n transform: scale(0);\\n opacity: 1;\\n }\\n 100% {\\n -webkit-transform: scale(1);\\n transform: scale(1);\\n opacity: 0;\\n }\\n}\\n@-webkit-keyframes shake {\\n from, to {\\n -webkit-transform: translate3d(0, 0, 0);\\n transform: translate3d(0, 0, 0);\\n }\\n 10%, 30%, 50%, 70%, 90% {\\n -webkit-transform: translate3d(-10px, 0, 0);\\n transform: translate3d(-10px, 0, 0);\\n }\\n 20%, 40%, 60%, 80% {\\n -webkit-transform: translate3d(10px, 0, 0);\\n transform: translate3d(10px, 0, 0);\\n }\\n}\\n@keyframes shake {\\n from, to {\\n -webkit-transform: translate3d(0, 0, 0);\\n transform: translate3d(0, 0, 0);\\n }\\n 10%, 30%, 50%, 70%, 90% {\\n -webkit-transform: translate3d(-10px, 0, 0);\\n transform: translate3d(-10px, 0, 0);\\n }\\n 20%, 40%, 60%, 80% {\\n -webkit-transform: translate3d(10px, 0, 0);\\n transform: translate3d(10px, 0, 0);\\n }\\n}\\n@-webkit-keyframes loading {\\n 0% {\\n -webkit-transform: rotate(-90deg) translate(0, 0);\\n transform: rotate(-90deg) translate(0, 0);\\n -webkit-transform-origin: 50%;\\n transform-origin: 50%;\\n stroke-dashoffset: 140px;\\n }\\n 50% {\\n stroke-dashoffset: 70px;\\n }\\n 100% {\\n -webkit-transform: rotate(270deg) translate(0, 0);\\n transform: rotate(270deg) translate(0, 0);\\n -webkit-transform-origin: 50%;\\n transform-origin: 50%;\\n stroke-dashoffset: 0;\\n }\\n}\\n@keyframes loading {\\n 0% {\\n -webkit-transform: rotate(-90deg) translate(0, 0);\\n transform: rotate(-90deg) translate(0, 0);\\n -webkit-transform-origin: 50%;\\n transform-origin: 50%;\\n stroke-dashoffset: 140px;\\n }\\n 50% {\\n stroke-dashoffset: 70px;\\n }\\n 100% {\\n -webkit-transform: rotate(270deg) translate(0, 0);\\n transform: rotate(270deg) translate(0, 0);\\n -webkit-transform-origin: 50%;\\n transform-origin: 50%;\\n stroke-dashoffset: 0;\\n }\\n}\\n@-webkit-keyframes color-load {\\n 0% {\\n stroke: #00a0d2;\\n }\\n 10% {\\n stroke: #00a0d2;\\n }\\n 20% {\\n stroke: #d2f4ff;\\n }\\n 30% {\\n stroke: #00a0d2;\\n }\\n 40% {\\n stroke: #00a0d2;\\n }\\n 50% {\\n stroke: #d2f4ff;\\n }\\n 60% {\\n stroke: #00a0d2;\\n }\\n 70% {\\n stroke: #00a0d2;\\n }\\n 80% {\\n stroke: #d2f4ff;\\n }\\n 90% {\\n stroke: #00a0d2;\\n }\\n 100% {\\n stroke: #d2f4ff;\\n }\\n}\\n@keyframes color-load {\\n 0% {\\n stroke: #00a0d2;\\n }\\n 10% {\\n stroke: #00a0d2;\\n }\\n 20% {\\n stroke: #d2f4ff;\\n }\\n 30% {\\n stroke: #00a0d2;\\n }\\n 40% {\\n stroke: #00a0d2;\\n }\\n 50% {\\n stroke: #d2f4ff;\\n }\\n 60% {\\n stroke: #00a0d2;\\n }\\n 70% {\\n stroke: #00a0d2;\\n }\\n 80% {\\n stroke: #d2f4ff;\\n }\\n 90% {\\n stroke: #00a0d2;\\n }\\n 100% {\\n stroke: #d2f4ff;\\n }\\n}\\n@font-face {\\n font-family: \\\"Frontiers-Iconography\\\";\\n src: url(data:font/truetype;charset=utf-8;base64,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) format(\\\"truetype\\\");\\n font-weight: normal;\\n font-style: normal;\\n}\\n.Layout__slider {\\n position: fixed;\\n top: 0px;\\n right: -250px;\\n height: 100%;\\n width: 240px;\\n border-left: 1px solid #e0e0e0;\\n border-right: 1px solid #e0e0e0;\\n background: #F9F9F9;\\n -webkit-transition: right 400ms cubic-bezier(0.37, 0.74, 0.15, 1);\\n transition: right 400ms cubic-bezier(0.37, 0.74, 0.15, 1);\\n z-index: 1;\\n display: -webkit-box;\\n display: -ms-flexbox;\\n display: flex;\\n -webkit-box-orient: vertical;\\n -webkit-box-direction: normal;\\n -ms-flex-direction: column;\\n flex-direction: column;\\n}\\n.Layout__slider--open {\\n right: 0;\\n}\\n@media only screen and (max-width:768px) {\\n .Layout__slider {\\n z-index: 1401;\\n }\\n}\\n.Layout__slider__close {\\n cursor: pointer;\\n width: 30px;\\n height: 30px;\\n position: relative;\\n margin-right: -8px;\\n}\\n.Layout__slider__close:before {\\n content: \\\"\\\";\\n font-family: \\\"Frontiers-Iconography\\\" !important;\\n color: #999999;\\n font-size: 16px;\\n line-height: 16px;\\n position: absolute;\\n top: calc(50% - 8px);\\n left: calc(50% - 8px);\\n}\\n.Layout__slider__header, .Layout__slider__footer {\\n background: #FAFAFA;\\n -webkit-box-flex: 0;\\n -ms-flex: 0 0 auto;\\n flex: 0 0 auto;\\n}\\n.Layout__slider__header {\\n border-bottom: 1px solid #e0e0e0;\\n height: 59px;\\n display: -webkit-box;\\n display: -ms-flexbox;\\n display: flex;\\n -webkit-box-align: center;\\n -ms-flex-align: center;\\n align-items: center;\\n -webkit-box-pack: justify;\\n -ms-flex-pack: justify;\\n justify-content: space-between;\\n padding: 0 20px;\\n}\\n.Layout__slider__title {\\n text-transform: uppercase;\\n font-size: 13px;\\n line-height: 31px;\\n font-weight: 500;\\n color: #555555;\\n}\\n.Layout__slider__title__arrow-right {\\n cursor: pointer;\\n}\\n.Layout__slider__footer {\\n border-top: 1px solid #e0e0e0;\\n display: -webkit-box;\\n display: -ms-flexbox;\\n display: flex;\\n -webkit-box-align: center;\\n -ms-flex-align: center;\\n align-items: center;\\n -webkit-box-pack: end;\\n -ms-flex-pack: end;\\n justify-content: flex-end;\\n padding: 0 20px;\\n height: 0px;\\n overflow: hidden;\\n -webkit-transition: all 0.4s ease-in;\\n transition: all 0.4s ease-in;\\n}\\n.Layout__slider__footer--visible {\\n height: 73px;\\n overflow: visible;\\n}\\n@media only screen and (max-width:768px) {\\n .Layout__slider__footer--visible {\\n height: 60px;\\n }\\n}\\n.Layout__slider__body {\\n padding: 20px 22px 20px 0px;\\n -webkit-box-flex: 1;\\n -ms-flex-positive: 1;\\n flex-grow: 1;\\n background: #F0F0F0;\\n}\\n@media only screen and (max-width:1024px) {\\n .Layout__slider__body {\\n -ms-flex-negative: 1;\\n flex-shrink: 1;\\n overflow: auto;\\n }\\n .Layout__slider__body::-webkit-scrollbar {\\n background: transparent;\\n -webkit-appearance: none;\\n width: 7px;\\n height: 7px;\\n }\\n .Layout__slider__body::-webkit-scrollbar-thumb {\\n border-radius: 0;\\n background-color: #e0e0e0;\\n -webkit-box-shadow: 0 0 1px rgba(255, 255, 255, 0.5);\\n }\\n}\\n@media only screen and (max-width:768px) {\\n .Layout__slider__overlay {\\n position: fixed;\\n top: 0;\\n left: 0;\\n width: 100%;\\n height: 100%;\\n background: rgba(0, 0, 0, 0.2);\\n -webkit-transition: opacity 400ms 0ms ease-in-out;\\n transition: opacity 400ms 0ms ease-in-out;\\n z-index: 0;\\n opacity: 0;\\n pointer-events: none;\\n }\\n .Layout__slider__overlay--visible {\\n opacity: 1;\\n z-index: 1400;\\n pointer-events: all;\\n }\\n}\\n.Layout--collapsable .LayoutSideMenu__handler {\\n -webkit-transition: left 400ms ease-in-out;\\n transition: left 400ms ease-in-out;\\n}\\n.Layout--collapsable .LayoutSideMenu__left {\\n -webkit-transition: width 400ms ease-in-out, min-width 400ms ease-in-out;\\n transition: width 400ms ease-in-out, min-width 400ms ease-in-out;\\n}\\n.Layout--collapsable .LayoutSideMenu__right {\\n -webkit-transition: margin-left 400ms ease-in-out;\\n transition: margin-left 400ms ease-in-out;\\n}\";\nstyleInject(css$3);\n\nvar LayoutSingle = /*@__PURE__*/(function (Vue) {\n function LayoutSingle () {\n Vue.apply(this, arguments);\n }\n\n if ( Vue ) LayoutSingle.__proto__ = Vue;\n LayoutSingle.prototype = Object.create( Vue && Vue.prototype );\n LayoutSingle.prototype.constructor = LayoutSingle;\n\n var prototypeAccessors = { lockScroll: { configurable: true } };\n\n LayoutSingle.prototype.close = function close () {\r\n };\r\n LayoutSingle.prototype.sliderVisible_update = function sliderVisible_update () {\r\n this.dispatchResizeEvent(400);\r\n };\r\n LayoutSingle.prototype.isDesktop = function isDesktop () {\r\n return window.matchMedia('(min-width: 768px)').matches;\r\n };\r\n prototypeAccessors.lockScroll.get = function () {\r\n return this.sliderVisible === true && this.isDesktop() === false;\r\n };\r\n LayoutSingle.prototype.dispatchResizeEvent = function dispatchResizeEvent (wait) {\n if ( wait === void 0 ) wait = 0;\n\r\n if (wait > 0) {\r\n setTimeout(function () { return new VueComponentResizeEvent().dispatch(); }, wait);\r\n }\r\n else {\r\n new VueComponentResizeEvent().dispatch();\r\n }\r\n };\n\n Object.defineProperties( LayoutSingle.prototype, prototypeAccessors );\n\n return LayoutSingle;\n}(Vue));\r\n__decorate([\r\n Prop({ default: 51 })\r\n], LayoutSingle.prototype, \"top\", void 0);\r\n__decorate([\r\n Prop({ default: false })\r\n], LayoutSingle.prototype, \"sliderVisible\", void 0);\r\n__decorate([\r\n Prop({ default: 'Slider Title' })\r\n], LayoutSingle.prototype, \"sliderTitle\", void 0);\r\n__decorate([\r\n Prop({ default: false })\r\n], LayoutSingle.prototype, \"sliderFooterVisible\", void 0);\r\n__decorate([\r\n Emit('close')\r\n], LayoutSingle.prototype, \"close\", null);\r\n__decorate([\r\n Watch('sliderVisible')\r\n], LayoutSingle.prototype, \"sliderVisible_update\", null);\r\nLayoutSingle = __decorate([\r\n Component({\r\n directives: {\r\n 'lock-scroll': new Directives.LockScroll(),\r\n }\r\n })\r\n], LayoutSingle);\r\nvar script$2 = LayoutSingle;\n\n/* script */\nvar __vue_script__$2 = script$2;\n\n/* template */\nvar __vue_render__$2 = function() {\n var _vm = this;\n var _h = _vm.$createElement;\n var _c = _vm._self._c || _h;\n return _c(\n \"div\",\n {\n directives: [\n {\n name: \"lock-scroll\",\n rawName: \"v-lock-scroll\",\n value: _vm.lockScroll,\n expression: \"lockScroll\"\n }\n ],\n staticClass: \"LayoutSingle\"\n },\n [\n _c(\n \"div\",\n {\n staticClass: \"LayoutSingle__main\",\n class: { \"LayoutSingle__main--slider\": _vm.sliderVisible }\n },\n [_vm._t(\"main\")],\n 2\n ),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"Layout__slider__wrapper\" }, [\n _c(\"div\", {\n staticClass: \"Layout__slider__overlay\",\n class: { \"Layout__slider__overlay--visible\": _vm.sliderVisible },\n style: { top: this.top + \"px\" },\n on: { click: _vm.close }\n }),\n _vm._v(\" \"),\n _c(\n \"div\",\n {\n staticClass: \"Layout__slider\",\n class: { \"Layout__slider--open\": _vm.sliderVisible },\n style: {\n top: this.top + \"px\",\n height: \"calc(100% - \" + this.top + \"px\"\n }\n },\n [\n _c(\"div\", { staticClass: \"Layout__slider__header\" }, [\n _c(\"div\", { staticClass: \"Layout__slider__title\" }, [\n _vm._v(_vm._s(_vm.sliderTitle))\n ]),\n _vm._v(\" \"),\n _c(\"div\", {\n staticClass: \"Layout__slider__close\",\n on: { click: _vm.close }\n })\n ]),\n _vm._v(\" \"),\n _c(\n \"div\",\n { staticClass: \"Layout__slider__body\" },\n [_vm._t(\"sliderBody\")],\n 2\n ),\n _vm._v(\" \"),\n _c(\n \"div\",\n {\n staticClass: \"Layout__slider__footer\",\n class: {\n \"Layout__slider__footer--visible\": _vm.sliderFooterVisible\n }\n },\n [_vm._t(\"sliderFooter\")],\n 2\n )\n ]\n )\n ])\n ]\n )\n};\nvar __vue_staticRenderFns__$2 = [];\n__vue_render__$2._withStripped = true;\n\n /* style */\n var __vue_inject_styles__$2 = undefined;\n /* scoped */\n var __vue_scope_id__$2 = undefined;\n /* module identifier */\n var __vue_module_identifier__$2 = undefined;\n /* functional template */\n var __vue_is_functional_template__$2 = false;\n /* style inject */\n \n /* style inject SSR */\n \n\n \n var LayoutSingle$1 = normalizeComponent_1(\n { render: __vue_render__$2, staticRenderFns: __vue_staticRenderFns__$2 },\n __vue_inject_styles__$2,\n __vue_script__$2,\n __vue_scope_id__$2,\n __vue_is_functional_template__$2,\n __vue_module_identifier__$2,\n undefined,\n undefined\n );\n\nvar LayoutSlider = /*@__PURE__*/(function (Vue) {\n function LayoutSlider () {\n Vue.apply(this, arguments);\n }\n\n if ( Vue ) LayoutSlider.__proto__ = Vue;\n LayoutSlider.prototype = Object.create( Vue && Vue.prototype );\n LayoutSlider.prototype.constructor = LayoutSlider;\n\n var prototypeAccessors = { lockScroll: { configurable: true } };\n\n LayoutSlider.prototype.close = function close () {\r\n };\r\n LayoutSlider.prototype.isDesktop = function isDesktop () {\r\n return window.matchMedia('(min-width: 768px)').matches;\r\n };\r\n prototypeAccessors.lockScroll.get = function () {\r\n return this.isVisible === true && this.isDesktop() === false;\r\n };\n\n Object.defineProperties( LayoutSlider.prototype, prototypeAccessors );\n\n return LayoutSlider;\n}(Vue));\r\n__decorate([\r\n Prop({ default: 51 })\r\n], LayoutSlider.prototype, \"top\", void 0);\r\n__decorate([\r\n Prop({ default: false })\r\n], LayoutSlider.prototype, \"isVisible\", void 0);\r\n__decorate([\r\n Prop({ default: 'Filters' })\r\n], LayoutSlider.prototype, \"title\", void 0);\r\n__decorate([\r\n Prop({ default: true })\r\n], LayoutSlider.prototype, \"footerVisible\", void 0);\r\n__decorate([\r\n Emit('close')\r\n], LayoutSlider.prototype, \"close\", null);\r\nLayoutSlider = __decorate([\r\n Component({\r\n directives: {\r\n 'lock-scroll': new Directives.LockScroll(),\r\n }\r\n })\r\n], LayoutSlider);\r\nvar script$3 = LayoutSlider;\n\n/* script */\nvar __vue_script__$3 = script$3;\n\n/* template */\nvar __vue_render__$3 = function() {\n var _vm = this;\n var _h = _vm.$createElement;\n var _c = _vm._self._c || _h;\n return _c(\n \"div\",\n {\n directives: [\n {\n name: \"lock-scroll\",\n rawName: \"v-lock-scroll\",\n value: _vm.lockScroll,\n expression: \"lockScroll\"\n }\n ],\n staticClass: \"Layout__slider__wrapper\"\n },\n [\n _c(\"div\", {\n staticClass: \"Layout__slider__overlay\",\n class: { \"Layout__slider__overlay--visible\": _vm.isVisible },\n style: { top: this.top + \"px\" },\n on: { click: _vm.close }\n }),\n _vm._v(\" \"),\n _c(\n \"div\",\n {\n staticClass: \"Layout__slider\",\n class: { \"Layout__slider--open\": _vm.isVisible },\n style: {\n top: this.top + \"px\",\n height: \"calc(100% - \" + this.top + \"px\"\n }\n },\n [\n _c(\"div\", { staticClass: \"Layout__slider__header\" }, [\n _c(\"div\", { staticClass: \"Layout__slider__title\" }, [\n _vm._v(_vm._s(_vm.title))\n ]),\n _vm._v(\" \"),\n _c(\"div\", {\n staticClass: \"Layout__slider__close\",\n on: { click: _vm.close }\n })\n ]),\n _vm._v(\" \"),\n _c(\n \"div\",\n { staticClass: \"Layout__slider__body\" },\n [_vm._t(\"body\")],\n 2\n ),\n _vm._v(\" \"),\n _c(\n \"div\",\n {\n staticClass: \"Layout__slider__footer\",\n class: { \"Layout__slider__footer--visible\": _vm.isVisible }\n },\n [_vm._t(\"footer\")],\n 2\n )\n ]\n )\n ]\n )\n};\nvar __vue_staticRenderFns__$3 = [];\n__vue_render__$3._withStripped = true;\n\n /* style */\n var __vue_inject_styles__$3 = undefined;\n /* scoped */\n var __vue_scope_id__$3 = undefined;\n /* module identifier */\n var __vue_module_identifier__$3 = undefined;\n /* functional template */\n var __vue_is_functional_template__$3 = false;\n /* style inject */\n \n /* style inject SSR */\n \n\n \n var LayoutSlider$1 = normalizeComponent_1(\n { render: __vue_render__$3, staticRenderFns: __vue_staticRenderFns__$3 },\n __vue_inject_styles__$3,\n __vue_script__$3,\n __vue_scope_id__$3,\n __vue_is_functional_template__$3,\n __vue_module_identifier__$3,\n undefined,\n undefined\n );\n\nexport { LAYOUT_RESIZE_EVENT_NAME, LayoutSideMenu$1 as LayoutSideMenu, LayoutSingle$1 as LayoutSingle, LayoutSlider$1 as LayoutSlider, LayoutTwoBoxes };\n","import { Prop, Watch, Component, Vue } from 'vue-property-decorator';\n\n/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n\r\nfunction __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\n\nfunction styleInject(css, ref) {\n if ( ref === void 0 ) { ref = {}; }\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nvar css = \"/*------------------------------------------------------------------ Colors */\\n/*------------------------------------------------------------------ Filters */\\n/*------------------------------------------------------------------ Filters Grey IE11 */\\n/*------------------------------------------------------------------ Dimensions */\\n/*------------------------------------------------------------------ Bezier */\\n/*------------------------------------------------------------------ Media Queries */\\n/*------------------------------------------------------------------ Media Queries CSS Hacks */\\n.is-disabled {\\n pointer-events: none;\\n opacity: 0.5;\\n}\\n\\n.is-hidden {\\n display: none;\\n}\\n\\n.is-visible {\\n display: block;\\n}\\n\\n.Switcher {\\n position: relative;\\n height: 16px;\\n width: 30px;\\n cursor: pointer;\\n}\\n.Switcher__handler {\\n width: 16px;\\n height: 16px;\\n border-radius: 50%;\\n position: absolute;\\n top: 0px;\\n left: 0px;\\n -webkit-box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.35), inset 0px -1px 0px 0px rgba(0, 0, 0, 0.08);\\n box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.35), inset 0px -1px 0px 0px rgba(0, 0, 0, 0.08);\\n background: #ffffff;\\n -webkit-transition: background-color 400ms cubic-bezier(0.37, 0.74, 0.15, 1), left 400ms cubic-bezier(0.37, 0.74, 0.15, 1);\\n transition: background-color 400ms cubic-bezier(0.37, 0.74, 0.15, 1), left 400ms cubic-bezier(0.37, 0.74, 0.15, 1);\\n}\\n.Switcher__guide {\\n width: 30px;\\n height: 10px;\\n border-radius: 5px;\\n background: #bababa;\\n position: absolute;\\n top: 3px;\\n left: 0px;\\n -webkit-transition: background-color 400ms cubic-bezier(0.37, 0.74, 0.15, 1);\\n transition: background-color 400ms cubic-bezier(0.37, 0.74, 0.15, 1);\\n}\\n.Switcher--isOn .Switcher__handler {\\n background: #00a0d2;\\n left: calc(100% - 16px);\\n}\\n.Switcher--isOn .Switcher__guide {\\n background: #98d9ed;\\n}\";\nstyleInject(css);\n\nvar Switcher = /*@__PURE__*/(function (Vue) {\n function Switcher() {\r\n Vue.apply(this, arguments);\r\n this.isSwitching = false;\r\n this.stateOn = false;\r\n }\n\n if ( Vue ) Switcher.__proto__ = Vue;\n Switcher.prototype = Object.create( Vue && Vue.prototype );\n Switcher.prototype.constructor = Switcher;\n\n var prototypeAccessors = { className: { configurable: true },allowClick: { configurable: true } };\r\n Switcher.prototype.mounted = function mounted () {\r\n this.stateOn = this.isOn;\r\n };\r\n prototypeAccessors.className.get = function () {\r\n var classNames = ['Switcher'];\r\n if (this.isDisabled) {\r\n classNames.push('is-disabled');\r\n }\r\n if (this.stateOn) {\r\n classNames.push('Switcher--isOn');\r\n }\r\n return classNames;\r\n };\r\n prototypeAccessors.allowClick.get = function () {\r\n return this.isSwitching === false && this.isDisabled === false;\r\n };\r\n Switcher.prototype.switchToggle = function switchToggle () {\r\n this.switchClick(!this.stateOn);\r\n };\r\n Switcher.prototype.switchClick = function switchClick (state) {\r\n if (this.allowClick) {\r\n this.switchChange(state);\r\n this.$emit('switch-change', state);\r\n }\r\n };\r\n Switcher.prototype.isOn_updated = function isOn_updated (newValue) {\r\n this.switchChange(newValue);\r\n };\r\n Switcher.prototype.switchChange = function switchChange (value) {\n var this$1 = this;\n\r\n var timeTransitionSwitch = 400;\r\n this.isSwitching = true;\r\n this.stateOn = value;\r\n setTimeout(function () {\r\n this$1.isSwitching = false;\r\n }, timeTransitionSwitch);\r\n };\n\n Object.defineProperties( Switcher.prototype, prototypeAccessors );\n\n return Switcher;\n}(Vue));\r\n__decorate([\r\n Prop({ default: false })\r\n], Switcher.prototype, \"isDisabled\", void 0);\r\n__decorate([\r\n Prop({ default: false })\r\n], Switcher.prototype, \"isOn\", void 0);\r\n__decorate([\r\n Watch('isOn')\r\n], Switcher.prototype, \"isOn_updated\", null);\r\nSwitcher = __decorate([\r\n Component\r\n], Switcher);\r\nvar script = Switcher;\n\nfunction normalizeComponent(template, style, script, scopeId, isFunctionalTemplate, moduleIdentifier\n/* server only */\n, shadowMode, createInjector, createInjectorSSR, createInjectorShadow) {\n if (typeof shadowMode !== 'boolean') {\n createInjectorSSR = createInjector;\n createInjector = shadowMode;\n shadowMode = false;\n } // Vue.extend constructor export interop.\n\n\n var options = typeof script === 'function' ? script.options : script; // render functions\n\n if (template && template.render) {\n options.render = template.render;\n options.staticRenderFns = template.staticRenderFns;\n options._compiled = true; // functional template\n\n if (isFunctionalTemplate) {\n options.functional = true;\n }\n } // scopedId\n\n\n if (scopeId) {\n options._scopeId = scopeId;\n }\n\n var hook;\n\n if (moduleIdentifier) {\n // server build\n hook = function hook(context) {\n // 2.3 injection\n context = context || // cached call\n this.$vnode && this.$vnode.ssrContext || // stateful\n this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext; // functional\n // 2.2 with runInNewContext: true\n\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n context = __VUE_SSR_CONTEXT__;\n } // inject component styles\n\n\n if (style) {\n style.call(this, createInjectorSSR(context));\n } // register component module identifier for async chunk inference\n\n\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier);\n }\n }; // used by ssr in case component is cached and beforeCreate\n // never gets called\n\n\n options._ssrRegister = hook;\n } else if (style) {\n hook = shadowMode ? function () {\n style.call(this, createInjectorShadow(this.$root.$options.shadowRoot));\n } : function (context) {\n style.call(this, createInjector(context));\n };\n }\n\n if (hook) {\n if (options.functional) {\n // register for functional component in vue file\n var originalRender = options.render;\n\n options.render = function renderWithStyleInjection(h, context) {\n hook.call(context);\n return originalRender(h, context);\n };\n } else {\n // inject component registration as beforeCreate hook\n var existing = options.beforeCreate;\n options.beforeCreate = existing ? [].concat(existing, hook) : [hook];\n }\n }\n\n return script;\n}\n\nvar normalizeComponent_1 = normalizeComponent;\n\n/* script */\nvar __vue_script__ = script;\n\n/* template */\nvar __vue_render__ = function() {\n var _vm = this;\n var _h = _vm.$createElement;\n var _c = _vm._self._c || _h;\n return _c(\"div\", { class: _vm.className, on: { click: _vm.switchToggle } }, [\n _c(\"div\", { staticClass: \"Switcher__guide\" }),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"Switcher__handler\" })\n ])\n};\nvar __vue_staticRenderFns__ = [];\n__vue_render__._withStripped = true;\n\n /* style */\n var __vue_inject_styles__ = undefined;\n /* scoped */\n var __vue_scope_id__ = undefined;\n /* module identifier */\n var __vue_module_identifier__ = undefined;\n /* functional template */\n var __vue_is_functional_template__ = false;\n /* style inject */\n \n /* style inject SSR */\n \n\n \n var Switcher$1 = normalizeComponent_1(\n { render: __vue_render__, staticRenderFns: __vue_staticRenderFns__ },\n __vue_inject_styles__,\n __vue_script__,\n __vue_scope_id__,\n __vue_is_functional_template__,\n __vue_module_identifier__,\n undefined,\n undefined\n );\n\nvar css$1 = \"/*------------------------------------------------------------------ Colors */\\n/*------------------------------------------------------------------ Filters */\\n/*------------------------------------------------------------------ Filters Grey IE11 */\\n/*------------------------------------------------------------------ Dimensions */\\n/*------------------------------------------------------------------ Bezier */\\n/*------------------------------------------------------------------ Media Queries */\\n/*------------------------------------------------------------------ Media Queries CSS Hacks */\\n.SwitchBlock {\\n display: -webkit-box;\\n display: -ms-flexbox;\\n display: flex;\\n min-height: 65px;\\n -webkit-box-align: center;\\n -ms-flex-align: center;\\n align-items: center;\\n -webkit-box-sizing: border-box;\\n box-sizing: border-box;\\n background-color: #ffffff;\\n padding: 20px;\\n border-bottom: 1px solid #e0e0e0;\\n -webkit-box-shadow: 0px 3px 7px 0px rgba(0, 0, 0, 0.1);\\n box-shadow: 0px 3px 7px 0px rgba(0, 0, 0, 0.1);\\n}\\n.SwitchBlock.is-disabled {\\n opacity: 1;\\n}\\n.SwitchBlock.is-disabled .SwitchBlock__label {\\n opacity: 0.5;\\n}\\n.SwitchBlock--spacer {\\n -webkit-box-flex: 1;\\n -ms-flex: 1 0 auto;\\n flex: 1 0 auto;\\n}\\n.SwitchBlock > .FiltersContainer, .SwitchBlock > .Switcher {\\n -webkit-box-flex: 0;\\n -ms-flex: 0 0 auto;\\n flex: 0 0 auto;\\n -ms-flex-item-align: baseline;\\n align-self: baseline;\\n margin-top: 4px;\\n}\\n.SwitchBlock__flex {\\n display: -webkit-box;\\n display: -ms-flexbox;\\n display: flex;\\n -webkit-box-flex: 1;\\n -ms-flex: 1 1 auto;\\n flex: 1 1 auto;\\n padding-right: 20px;\\n}\\n.SwitchBlock__label {\\n font-size: 13px;\\n line-height: 16px;\\n font-weight: 300;\\n color: #020202;\\n display: -webkit-box;\\n max-width: 100%;\\n -webkit-line-clamp: 3;\\n -webkit-box-orient: vertical;\\n -moz-line-clamp: 3;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n line-height: 16px;\\n max-height: 48px;\\n padding-right: 30px;\\n}\\n.SwitchBlock .DropDown__selectedValue {\\n font-size: 13px;\\n line-height: 16px;\\n font-weight: 300;\\n color: #555555;\\n}\\n@media only screen and (max-width: 740px) {\\n .SwitchBlock .DropDown__selectedValue {\\n font-size: 13px;\\n }\\n}\\n.SwitchBlock--is-off .SwitchBlock__label {\\n color: #555555;\\n}\\n@media only screen and (max-width: 740px) {\\n .SwitchBlock--two-rows {\\n -ms-flex-wrap: wrap;\\n flex-wrap: wrap;\\n height: auto;\\n padding: 15px;\\n }\\n .SwitchBlock--two-rows .SwitchBlock__label {\\n -webkit-box-flex: 0;\\n -ms-flex: 0 0 100%;\\n flex: 0 0 100%;\\n margin-bottom: 10px;\\n }\\n .SwitchBlock--two-rows .Switcher {\\n margin: 4px 0;\\n }\\n}\\n.SwitchBlock:last-child {\\n border-bottom-style: none;\\n}\\n.SwitchBlock .FiltersContainer {\\n margin-right: 20px;\\n}\\n.SwitchBlock .FiltersContainer .DropDown__selectedValue {\\n font-weight: 500;\\n color: #555555;\\n}\\n.SwitchBlock .FiltersContainer .DropDown__titleContainer.is-filtered:after {\\n -webkit-filter: invert(36%) sepia(0%) saturate(397%) hue-rotate(180deg) brightness(83%) contrast(82%);\\n filter: invert(36%) sepia(0%) saturate(397%) hue-rotate(180deg) brightness(83%) contrast(82%);\\n}\\n@media explorer {\\n .SwitchBlock .FiltersContainer .DropDown__titleContainer.is-filtered:after {\\n -webkit-filter: none;\\n filter: none;\\n opacity: 0.6666666667;\\n }\\n}\";\nstyleInject(css$1);\n\nvar SwitchBlock = /*@__PURE__*/(function (Vue) {\n function SwitchBlock() {\r\n Vue.apply(this, arguments);\r\n this.hasChildren = false;\r\n }\n\n if ( Vue ) SwitchBlock.__proto__ = Vue;\n SwitchBlock.prototype = Object.create( Vue && Vue.prototype );\n SwitchBlock.prototype.constructor = SwitchBlock;\r\n SwitchBlock.prototype.switch_change = function switch_change (stateOn) {\r\n this.$emit('switch-block-change', this.code, stateOn);\r\n };\r\n SwitchBlock.prototype.updated = function updated () {\r\n this.hasChildren = !!this.$slots.default;\r\n };\n\n return SwitchBlock;\n}(Vue));\r\n__decorate([\r\n Prop({ required: true })\r\n], SwitchBlock.prototype, \"code\", void 0);\r\n__decorate([\r\n Prop({ required: true })\r\n], SwitchBlock.prototype, \"label\", void 0);\r\n__decorate([\r\n Prop({ default: false })\r\n], SwitchBlock.prototype, \"isOn\", void 0);\r\n__decorate([\r\n Prop({ default: false })\r\n], SwitchBlock.prototype, \"isDisabled\", void 0);\r\nSwitchBlock = __decorate([\r\n Component({\r\n components: { Switcher: Switcher$1 },\r\n })\r\n], SwitchBlock);\r\nvar script$1 = SwitchBlock;\n\n/* script */\nvar __vue_script__$1 = script$1;\n\n/* template */\nvar __vue_render__$1 = function() {\n var _vm = this;\n var _h = _vm.$createElement;\n var _c = _vm._self._c || _h;\n return _c(\n \"div\",\n {\n staticClass: \"SwitchBlock\",\n class: {\n \"SwitchBlock--two-rows\": _vm.hasChildren === true,\n \"SwitchBlock--is-off\": _vm.isOn === false,\n \"is-disabled\": _vm.isDisabled\n }\n },\n [\n _c(\n \"div\",\n { staticClass: \"SwitchBlock__flex\" },\n [\n _c(\"div\", { staticClass: \"SwitchBlock__label\" }, [\n _vm._v(_vm._s(_vm.label))\n ]),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"SwitchBlock--spacer\" }),\n _vm._v(\" \"),\n _vm._t(\"default\")\n ],\n 2\n ),\n _vm._v(\" \"),\n _c(\"switcher\", {\n attrs: { \"is-on\": _vm.isOn, \"is-disabled\": _vm.isDisabled },\n on: { \"switch-change\": _vm.switch_change }\n })\n ],\n 1\n )\n};\nvar __vue_staticRenderFns__$1 = [];\n__vue_render__$1._withStripped = true;\n\n /* style */\n var __vue_inject_styles__$1 = undefined;\n /* scoped */\n var __vue_scope_id__$1 = undefined;\n /* module identifier */\n var __vue_module_identifier__$1 = undefined;\n /* functional template */\n var __vue_is_functional_template__$1 = false;\n /* style inject */\n \n /* style inject SSR */\n \n\n \n var SwitcherBlock = normalizeComponent_1(\n { render: __vue_render__$1, staticRenderFns: __vue_staticRenderFns__$1 },\n __vue_inject_styles__$1,\n __vue_script__$1,\n __vue_scope_id__$1,\n __vue_is_functional_template__$1,\n __vue_module_identifier__$1,\n undefined,\n undefined\n );\n\nexport { Switcher$1 as Switcher, SwitcherBlock };\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"PreferencesBlock Backoffice__forms Backoffice__forms--connect\"},[_c('div',{staticClass:\"Backoffice__forms__title\"},[_vm._v(_vm._s(_vm.title))]),_c('div',{staticClass:\"Backoffice__forms__text\"},[_vm._v(_vm._s(_vm.description))]),_c('div',{staticClass:\"SwitchBlock__wrapper PreferencesBlock__block\"},[_vm._l((_vm.subscriptionTypes),function(type,index){return _c('div',{key:index,staticClass:\"SwitchBlock__wrapper\",class:{\n 'PreferencesBlock__block--tag-cloud': _vm.allowFOSResources(type)\n }},[_c('switcher-block',{attrs:{\"code\":type.subscriptionTypeId,\"label\":type.subscriptionTypeName,\"is-disabled\":_vm.isDisabled,\"is-on\":type.isSubscribed},on:{\"switch-block-change\":_vm.switcherBlock_changed}},[_c('div',{staticClass:\"SwitchBlock__text\"},[_vm._v(\" \"+_vm._s(type.subscriptionTypeDesc)+\" \")]),(_vm.allowFOSResources(type))?_c('div',{staticClass:\"SwitchBlock__slotWrapper\"},[_c('search-drop-down',{attrs:{\"placeholder\":\"Select a field ....\",\"options\":_vm.filteredFOSs,\"data-text\":\"value\",\"is-disabled\":_vm.isDisabledFOSSelection},on:{\"select-option\":function($event){return _vm.searchDropDown_selectOption(type, $event)},\"reset\":_vm.searchDropDown_reset},model:{value:(_vm.inputText),callback:function ($$v) {_vm.inputText=$$v},expression:\"inputText\"}}),_c('tag-cloud',{attrs:{\"tags\":_vm.currentFOSs,\"is-disabled\":_vm.isDisabledFOSSelection},on:{\"remove-tag\":function($event){return _vm.tagCloud_remove(type, $event)}}})],1):_vm._e()]),(_vm.isDisabled)?_c('div',{staticClass:\"SwitchBlock__clickDisabled\",on:{\"click\":_vm.tooltip_show}}):_vm._e()],1)}),_c('tooltip',{style:(_vm.tooltipStyles),attrs:{\"mode\":\"OnDemand\",\"title\":\"Globally unsubscribed\",\"button-text\":\"Reactivate\",\"direction\":_vm.tooltipDirection,\"button-action\":_vm.reactivate_all,\"is-visible\":_vm.tooltipIsVisible},on:{\"close\":_vm.tooltip_close}},[_vm._v(\" Your invitations and updates are disabled. Please reactivate them before modifying this subscription \")])],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","function ___$insertStyle(css) {\n if (!css) {\n return;\n }\n if (typeof window === 'undefined') {\n return;\n }\n\n var style = document.createElement('style');\n\n style.setAttribute('type', 'text/css');\n style.innerHTML = css;\n document.head.appendChild(style);\n return css;\n}\n\nvar LockScroll = function LockScroll () {};\n\nLockScroll.getScrollbarWidth = function getScrollbarWidth () {\r\n var outer = document.createElement('div');\r\n outer.style.visibility = 'hidden';\r\n outer.style.overflow = 'scroll';\r\n outer.style.msOverflowStyle = 'scrollbar';\r\n document.body.appendChild(outer);\r\n var inner = document.createElement('div');\r\n outer.appendChild(inner);\r\n var scrollbarWidth = outer.offsetWidth - inner.offsetWidth;\r\n if (outer.parentNode !== null) {\r\n outer.parentNode.removeChild(outer);\r\n }\r\n return scrollbarWidth;\r\n};\r\nLockScroll.isThereScrollbar = function isThereScrollbar () {\r\n var documentHeight = document.documentElement.scrollHeight;\r\n var windowHeight = window.innerHeight;\r\n if (documentHeight > windowHeight) {\r\n return true;\r\n }\r\n return false;\r\n};\r\nLockScroll.checkBindingValue = function checkBindingValue (binding) {\r\n if (typeof binding.value !== 'boolean') {\r\n throw new Error('The binding of lock-scroll directive must be a boolean value.');\r\n }\r\n};\r\n/**\r\n * This function saves the current position of the scroll in an attribute in body tag and remove the scroll\r\n */\r\nLockScroll.lockBodyScroll = function lockBodyScroll (html, body, wrap) {\r\n var isScroll = this.isThereScrollbar();\r\n if (window.pageYOffset) {\r\n var scrollTop = window.pageYOffset;\r\n wrap.style.top = (-scrollTop) + \"px\";\r\n body.setAttribute('data-scroll-top', scrollTop.toString());\r\n }\r\n else {\r\n body.setAttribute('data-scroll-top', '');\r\n }\r\n wrap.style.display = 'block';\r\n body.style.height = '100%';\r\n body.style.width = '100%';\r\n body.style.overflow = 'hidden';\r\n body.style.position = 'fixed';\r\n if (isScroll) {\r\n body.style.width = \"calc(100% - \" + (this.getScrollbarWidth()) + \"px\";\r\n }\r\n html.style.height = '100%';\r\n html.style.overflow = 'hidden';\r\n};\r\n/**\r\n * This function unlock the scroll and gets the scroll back to its previous position before it was locked\r\n */\r\nLockScroll.unlockBodyScroll = function unlockBodyScroll (html, body, wrap) {\r\n var dataScrollTopValue = body.getAttribute(LockScroll.DATA_SCROLL_TOP_ATTR);\r\n body.style.height = '';\r\n body.style.width = '';\r\n body.style.overflow = '';\r\n body.style.position = '';\r\n html.style.height = '';\r\n html.style.overflow = '';\r\n wrap.style.top = '';\r\n wrap.style.display = '';\r\n if (dataScrollTopValue) {\r\n window.scrollTo(0, parseInt(dataScrollTopValue, 10));\r\n window.setTimeout(function () {\r\n body.setAttribute('data-scroll-top', '');\r\n }, 0);\r\n }\r\n};\r\nLockScroll.isValidContext = function isValidContext (siblings, firstChild) {\r\n if (siblings.length === 0) {\r\n throw new Error('[directive:lock-scroll] no valid siblings of body have been found');\r\n }\r\n if (siblings.length > 1) {\r\n console.warn('[directive:lock-scroll] the body must only contain one div element');\r\n }\r\n if (firstChild) {\r\n if (getComputedStyle(firstChild).position !== 'relative') {\r\n console.warn('[directive:lock-scroll] the sibling element must have position relative');\r\n }\r\n }\r\n};\r\nLockScroll.prototype.update = function update (el, binding, vnode) {\r\n if (binding.oldValue === binding.value) {\r\n return;\r\n }\r\n var body = document.getElementsByTagName('body')[0];\r\n var html = document.getElementsByTagName('html')[0];\r\n var bodyChildren = document.querySelectorAll('body > *:not(script):not(noscript)');\r\n var firstChild = (bodyChildren.length > 0 ? bodyChildren[0] : null);\r\n var delayUnlockScroll = 400;\r\n LockScroll.isValidContext(bodyChildren, firstChild);\r\n if (binding.value === true) {\r\n LockScroll.lockBodyScroll(html, body, firstChild);\r\n }\r\n else {\r\n setTimeout(function () {\r\n LockScroll.unlockBodyScroll(html, body, firstChild);\r\n }, delayUnlockScroll);\r\n }\r\n};\r\nLockScroll.prototype.bind = function bind (el, binding, vnode) {\r\n LockScroll.checkBindingValue(binding);\r\n};\r\nLockScroll.DATA_SCROLL_TOP_ATTR = 'data-scroll-top';\n\n/*\r\n * This function checks if the element is in Shadow DOM and returns its root element\r\n * Othewise it returns null\r\n * @param {HTMLElement} el Element to check if it is in a Shadow DOM\r\n * @returns {HTMLElement | null} Root element of the shadow DOM or null\r\n */\r\nfunction getShadowDomRoot(el) {\r\n var isShadowDom = true;\r\n var lastParent = el;\r\n while (lastParent.parentElement != null) {\r\n lastParent = lastParent.parentElement;\r\n if (lastParent.tagName === 'BODY') {\r\n isShadowDom = false;\r\n break;\r\n }\r\n }\r\n return isShadowDom ? lastParent : null;\r\n}\n\nvar ClickOutside = function ClickOutside () {};\n\nvar staticAccessors = { CALLBACK_FUNC: { configurable: true } };\n\nstaticAccessors.CALLBACK_FUNC.get = function () { return 'ClickOutsideFunc'; };\r\nClickOutside.isVisible = function isVisible (el) {\r\n if (el !== null) {\r\n return el.getClientRects().length !== 0;\r\n }\r\n else {\r\n return false;\r\n }\r\n};\r\nClickOutside.prototype.bind = function bind (el, binding, vnode) {\r\n vnode.context[ClickOutside.CALLBACK_FUNC] = function (e) {\r\n e.stopPropagation();\r\n // @ts-ignore\r\n if (ClickOutside.isVisible(el) && !el.contains(e.target)) {\r\n binding.value();\r\n }\r\n };\r\n};\r\nClickOutside.prototype.inserted = function inserted (el, binding, vnode) {\r\n var shadowRoot = getShadowDomRoot(el);\r\n if (shadowRoot !== null) {\r\n shadowRoot.addEventListener('click', vnode.context[ClickOutside.CALLBACK_FUNC]);\r\n shadowRoot.addEventListener('touchstart', vnode.context[ClickOutside.CALLBACK_FUNC]);\r\n }\r\n document.addEventListener('click', vnode.context[ClickOutside.CALLBACK_FUNC]);\r\n document.addEventListener('touchstart', vnode.context[ClickOutside.CALLBACK_FUNC]);\r\n};\r\nClickOutside.prototype.unbind = function unbind (el, binding, vnode) {\r\n var shadowRoot = getShadowDomRoot(el);\r\n if (shadowRoot !== null) {\r\n shadowRoot.removeEventListener('click', vnode.context[ClickOutside.CALLBACK_FUNC]);\r\n shadowRoot.removeEventListener('touchstart', vnode.context[ClickOutside.CALLBACK_FUNC]);\r\n }\r\n document.removeEventListener('click', vnode.context[ClickOutside.CALLBACK_FUNC]);\r\n document.removeEventListener('touchstart', vnode.context[ClickOutside.CALLBACK_FUNC]);\r\n};\n\nObject.defineProperties( ClickOutside, staticAccessors );\n\nvar CheckPosition = function CheckPosition () {};\n\nCheckPosition.clearInlinePosition = function clearInlinePosition (el) {\r\n el.style.top = '';\r\n el.style.bottom = '';\r\n el.style.left = '';\r\n el.style.right = '';\r\n};\r\nCheckPosition.isOverflownVertically = function isOverflownVertically (el) {\r\n var offset = el.getBoundingClientRect().top;\r\n var height = el.offsetHeight;\r\n var margin = 10;\r\n if (offset + height + margin > window.innerHeight) {\r\n return true;\r\n }\r\n else {\r\n return false;\r\n }\r\n};\r\nCheckPosition.isOverflownHorizontally = function isOverflownHorizontally (el) {\r\n var offset = el.getBoundingClientRect().left;\r\n var width = el.offsetWidth;\r\n var margin = 20;\r\n if (offset + width + margin > window.innerWidth) {\r\n return true;\r\n }\r\n else {\r\n return false;\r\n }\r\n};\r\nCheckPosition.checkBindingValue = function checkBindingValue (binding) {\r\n if (typeof binding.value !== 'boolean') {\r\n throw new Error('The binding of check-position directive must be a boolean value.');\r\n }\r\n};\r\nCheckPosition.prototype.update = function update (el, binding, vnode) {\r\n if (binding.oldValue === binding.value) {\r\n return;\r\n }\r\n if (binding.value === false) {\r\n CheckPosition.clearInlinePosition(el);\r\n }\r\n else {\r\n if (CheckPosition.isOverflownVertically(el)) {\r\n el.style.top = 'auto';\r\n el.style.bottom = '100%';\r\n }\r\n if (CheckPosition.isOverflownHorizontally(el)) {\r\n el.style.left = 'auto';\r\n el.style.right = '0';\r\n }\r\n }\r\n};\r\nCheckPosition.prototype.bind = function bind (el, binding, vnode) {\r\n CheckPosition.checkBindingValue(binding);\r\n};\n\nvar EscapePress = function EscapePress () {};\n\nvar staticAccessors$1 = { ESCAPE_KEY: { configurable: true },CALLBACK_FUNC: { configurable: true } };\n\nstaticAccessors$1.ESCAPE_KEY.get = function () { return 27; };\r\nstaticAccessors$1.CALLBACK_FUNC.get = function () { return 'EscapePressFunc'; };\r\nEscapePress.onKeyUp = function onKeyUp (callbackFunc, $event) {\r\n if ($event.keyCode === EscapePress.ESCAPE_KEY && callbackFunc != null) {\r\n callbackFunc();\r\n }\r\n};\r\nEscapePress.prototype.update = function update (el, binding, vnode) {\r\n if (binding.arg === false) {\r\n document.removeEventListener('keyup', vnode.context[EscapePress.CALLBACK_FUNC]);\r\n }\r\n else {\r\n document.addEventListener('keyup', vnode.context[EscapePress.CALLBACK_FUNC]);\r\n }\r\n};\r\nEscapePress.prototype.bind = function bind (el, binding, vnode) {\r\n if (typeof binding.value !== 'function') {\r\n throw new Error('[directive:on-escape] The binding value must be a function');\r\n }\r\n vnode.context[EscapePress.CALLBACK_FUNC] = EscapePress.onKeyUp.bind(this, binding.value);\r\n};\r\nEscapePress.prototype.unbind = function unbind (el, binding, vnode) {\r\n document.removeEventListener('keyup', vnode.context[EscapePress.CALLBACK_FUNC]);\r\n};\n\nObject.defineProperties( EscapePress, staticAccessors$1 );\n\nvar Directives = {\r\n LockScroll: LockScroll,\r\n ClickOutside: ClickOutside,\r\n CheckPosition: CheckPosition,\r\n EscapePress: EscapePress,\r\n};\r\nvar Helpers = {\r\n getShadowDomRoot: getShadowDomRoot,\r\n};\n\nexport { Directives, Helpers };\n","import { Prop, Watch, Emit, Component, Vue } from 'vue-property-decorator';\nimport { Directives } from '@frontiers-vue/common';\n\n/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n\r\nfunction __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\n\nfunction styleInject(css, ref) {\n if ( ref === void 0 ) { ref = {}; }\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nvar css = \"@charset \\\"UTF-8\\\";\\n/*------------------------------------------------------------------ Colors */\\n/*------------------------------------------------------------------ Filters */\\n/*------------------------------------------------------------------ Filters Grey IE11 */\\n/*------------------------------------------------------------------ Dimensions */\\n/*------------------------------------------------------------------ Bezier */\\n/*------------------------------------------------------------------ Media Queries */\\n/*------------------------------------------------------------------ Media Queries CSS Hacks */\\n@-webkit-keyframes rotate {\\n 0% {\\n -webkit-transform: rotate(0deg);\\n transform: rotate(0deg);\\n }\\n 100% {\\n -webkit-transform: rotate(1080deg);\\n transform: rotate(1080deg);\\n }\\n}\\n@keyframes rotate {\\n 0% {\\n -webkit-transform: rotate(0deg);\\n transform: rotate(0deg);\\n }\\n 100% {\\n -webkit-transform: rotate(1080deg);\\n transform: rotate(1080deg);\\n }\\n}\\n@-webkit-keyframes bounce {\\n 0% {\\n -webkit-transform: translateY(0px);\\n transform: translateY(0px);\\n }\\n 100% {\\n -webkit-transform: translateY(5px);\\n transform: translateY(5px);\\n }\\n}\\n@keyframes bounce {\\n 0% {\\n -webkit-transform: translateY(0px);\\n transform: translateY(0px);\\n }\\n 100% {\\n -webkit-transform: translateY(5px);\\n transform: translateY(5px);\\n }\\n}\\n@-webkit-keyframes pulse {\\n 0% {\\n -webkit-transform: scale(0);\\n transform: scale(0);\\n opacity: 1;\\n }\\n 100% {\\n -webkit-transform: scale(1);\\n transform: scale(1);\\n opacity: 0;\\n }\\n}\\n@keyframes pulse {\\n 0% {\\n -webkit-transform: scale(0);\\n transform: scale(0);\\n opacity: 1;\\n }\\n 100% {\\n -webkit-transform: scale(1);\\n transform: scale(1);\\n opacity: 0;\\n }\\n}\\n@-webkit-keyframes shake {\\n from, to {\\n -webkit-transform: translate3d(0, 0, 0);\\n transform: translate3d(0, 0, 0);\\n }\\n 10%, 30%, 50%, 70%, 90% {\\n -webkit-transform: translate3d(-10px, 0, 0);\\n transform: translate3d(-10px, 0, 0);\\n }\\n 20%, 40%, 60%, 80% {\\n -webkit-transform: translate3d(10px, 0, 0);\\n transform: translate3d(10px, 0, 0);\\n }\\n}\\n@keyframes shake {\\n from, to {\\n -webkit-transform: translate3d(0, 0, 0);\\n transform: translate3d(0, 0, 0);\\n }\\n 10%, 30%, 50%, 70%, 90% {\\n -webkit-transform: translate3d(-10px, 0, 0);\\n transform: translate3d(-10px, 0, 0);\\n }\\n 20%, 40%, 60%, 80% {\\n -webkit-transform: translate3d(10px, 0, 0);\\n transform: translate3d(10px, 0, 0);\\n }\\n}\\n@-webkit-keyframes loading {\\n 0% {\\n -webkit-transform: rotate(-90deg) translate(0, 0);\\n transform: rotate(-90deg) translate(0, 0);\\n -webkit-transform-origin: 50%;\\n transform-origin: 50%;\\n stroke-dashoffset: 140px;\\n }\\n 50% {\\n stroke-dashoffset: 70px;\\n }\\n 100% {\\n -webkit-transform: rotate(270deg) translate(0, 0);\\n transform: rotate(270deg) translate(0, 0);\\n -webkit-transform-origin: 50%;\\n transform-origin: 50%;\\n stroke-dashoffset: 0;\\n }\\n}\\n@keyframes loading {\\n 0% {\\n -webkit-transform: rotate(-90deg) translate(0, 0);\\n transform: rotate(-90deg) translate(0, 0);\\n -webkit-transform-origin: 50%;\\n transform-origin: 50%;\\n stroke-dashoffset: 140px;\\n }\\n 50% {\\n stroke-dashoffset: 70px;\\n }\\n 100% {\\n -webkit-transform: rotate(270deg) translate(0, 0);\\n transform: rotate(270deg) translate(0, 0);\\n -webkit-transform-origin: 50%;\\n transform-origin: 50%;\\n stroke-dashoffset: 0;\\n }\\n}\\n@-webkit-keyframes color-load {\\n 0% {\\n stroke: #00a0d2;\\n }\\n 10% {\\n stroke: #00a0d2;\\n }\\n 20% {\\n stroke: #d2f4ff;\\n }\\n 30% {\\n stroke: #00a0d2;\\n }\\n 40% {\\n stroke: #00a0d2;\\n }\\n 50% {\\n stroke: #d2f4ff;\\n }\\n 60% {\\n stroke: #00a0d2;\\n }\\n 70% {\\n stroke: #00a0d2;\\n }\\n 80% {\\n stroke: #d2f4ff;\\n }\\n 90% {\\n stroke: #00a0d2;\\n }\\n 100% {\\n stroke: #d2f4ff;\\n }\\n}\\n@keyframes color-load {\\n 0% {\\n stroke: #00a0d2;\\n }\\n 10% {\\n stroke: #00a0d2;\\n }\\n 20% {\\n stroke: #d2f4ff;\\n }\\n 30% {\\n stroke: #00a0d2;\\n }\\n 40% {\\n stroke: #00a0d2;\\n }\\n 50% {\\n stroke: #d2f4ff;\\n }\\n 60% {\\n stroke: #00a0d2;\\n }\\n 70% {\\n stroke: #00a0d2;\\n }\\n 80% {\\n stroke: #d2f4ff;\\n }\\n 90% {\\n stroke: #00a0d2;\\n }\\n 100% {\\n stroke: #d2f4ff;\\n }\\n}\\n@font-face {\\n font-family: \\\"Frontiers-Iconography\\\";\\n src: url(data:font/truetype;charset=utf-8;base64,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) format(\\\"truetype\\\");\\n font-weight: normal;\\n font-style: normal;\\n}\\n.SearchInput {\\n width: 100%;\\n padding-right: 24px;\\n -webkit-box-sizing: border-box;\\n box-sizing: border-box;\\n border: 1px solid #e0e0e0;\\n font-size: 13px;\\n line-height: 36px;\\n font-weight: 300;\\n color: #020202;\\n height: 38px;\\n outline: medium none;\\n border-radius: 0;\\n -webkit-transition: all 200ms ease-in-out;\\n transition: all 200ms ease-in-out;\\n background: #ffffff;\\n word-break: normal;\\n padding: 0 36px 0 10px;\\n}\\n.SearchInput::-webkit-input-placeholder {\\n color: #999999;\\n font-size: 13px;\\n}\\n.SearchInput:-moz-placeholder {\\n color: #999999;\\n font-size: 13px;\\n}\\n.SearchInput :-ms-input-placeholder {\\n color: #999999;\\n font-size: 13px;\\n}\\n.SearchInput[disabled] ~ .SearchInput__icon {\\n cursor: auto;\\n}\\n@media only screen and (max-width:1441px) {\\n .SearchInput {\\n font-size: 12px;\\n line-height: 30px;\\n height: 32px;\\n padding-right: 30px;\\n }\\n}\\n.SearchInput[disabled=disabled] {\\n background: #F0F0F0;\\n color: #999999;\\n}\\n.SearchInput__wrapper {\\n min-width: 100px;\\n max-width: 100%;\\n margin-bottom: 15px;\\n position: relative;\\n}\\n.SearchInput__hint {\\n position: absolute;\\n top: calc(100% + 4px);\\n left: 1px;\\n font-size: 11px;\\n line-height: 11px;\\n font-weight: 300;\\n color: #999999;\\n}\\n.SearchInput__icon {\\n position: absolute;\\n z-index: 10;\\n right: 2px;\\n top: 0;\\n cursor: pointer;\\n}\\n.SearchInput__icon--search {\\n width: 36px;\\n height: 36px;\\n}\\n@media only screen and (max-width:1441px) {\\n .SearchInput__icon--search {\\n width: 30px;\\n height: 30px;\\n }\\n}\\n.SearchInput__icon--search:after {\\n content: \\\"\\\";\\n font-family: \\\"Frontiers-Iconography\\\" !important;\\n color: #bababa;\\n font-size: 20px;\\n line-height: 20px;\\n position: absolute;\\n top: calc(50% - 10px);\\n left: calc(50% - 10px);\\n}\\n@media only screen and (max-width:1441px) {\\n .SearchInput__icon--search:after {\\n font-size: 18px;\\n line-height: 18px;\\n top: calc(50% - 9px);\\n left: calc(50% - 9px);\\n }\\n}\\n.SearchInput__icon--spinner {\\n width: 36px;\\n height: 36px;\\n}\\n@media only screen and (max-width:1441px) {\\n .SearchInput__icon--spinner {\\n width: 30px;\\n height: 30px;\\n }\\n}\\n.SearchInput__icon--spinner:after {\\n content: \\\"\\\";\\n font-family: \\\"Frontiers-Iconography\\\" !important;\\n color: #bababa;\\n font-size: 16px;\\n line-height: 16px;\\n position: absolute;\\n top: calc(50% - 8px);\\n left: calc(50% - 8px);\\n -webkit-animation: rotate 1.5s linear infinite backwards;\\n animation: rotate 1.5s linear infinite backwards;\\n}\\n.SearchInput__icon--reset {\\n width: 36px;\\n height: 36px;\\n}\\n@media only screen and (max-width:1441px) {\\n .SearchInput__icon--reset {\\n width: 30px;\\n height: 30px;\\n }\\n}\\n.SearchInput__icon--reset:after {\\n content: \\\"\\\";\\n font-family: \\\"Frontiers-Iconography\\\" !important;\\n color: #bababa;\\n font-size: 16px;\\n line-height: 16px;\\n position: absolute;\\n top: calc(50% - 8px);\\n left: calc(50% - 8px);\\n}\\n.SearchInput__suggestionsWrapper {\\n position: absolute;\\n top: calc(100% - 1px);\\n z-index: 10;\\n opacity: 0;\\n pointer-events: none;\\n width: 100%;\\n border: 1px solid #e0e0e0;\\n background: #ffffff;\\n -webkit-box-sizing: border-box;\\n box-sizing: border-box;\\n}\\n.SearchInput__suggestionsWrapper--show {\\n opacity: 1;\\n pointer-events: all;\\n position: absolute;\\n z-index: 220;\\n -webkit-box-shadow: rgba(0, 0, 0, 0.12) 0px 7px 18px;\\n box-shadow: rgba(0, 0, 0, 0.12) 0px 7px 18px;\\n}\\n.SearchInput__suggestions {\\n max-height: 252px;\\n overflow: auto;\\n}\\n.SearchInput__suggestions::-webkit-scrollbar {\\n background: #e0e0e0;\\n -webkit-appearance: none;\\n width: 7px;\\n height: 7px;\\n}\\n.SearchInput__suggestions::-webkit-scrollbar-thumb {\\n border-radius: 0;\\n background-color: #bababa;\\n -webkit-box-shadow: 0 0 1px rgba(255, 255, 255, 0.5);\\n}\\n.SearchInput__suggestions__item {\\n display: -webkit-box;\\n display: -ms-flexbox;\\n display: flex;\\n padding: 8px 10px;\\n cursor: pointer;\\n position: relative;\\n font-size: 12px;\\n line-height: 15px;\\n font-weight: 300;\\n color: #555555;\\n}\\n.SearchInput__suggestions__item--hover, .SearchInput__suggestions__item:hover {\\n background-color: #F0F0F0;\\n}\\n.SearchInput__suggestions__item--empty-case {\\n color: #555555;\\n cursor: default;\\n pointer-events: none;\\n}\\n.SearchInput__suggestions__item--empty-case:hover {\\n background-color: #ffffff;\\n}\\n.SearchInput__footer {\\n display: -webkit-box;\\n display: -ms-flexbox;\\n display: flex;\\n -webkit-box-pack: end;\\n -ms-flex-pack: end;\\n justify-content: flex-end;\\n -webkit-box-sizing: border-box;\\n box-sizing: border-box;\\n background-color: #F5F5F5;\\n padding: 2px 10px;\\n height: 28px;\\n line-height: 24px;\\n}\";\nstyleInject(css);\n\nfunction getObjectProperty(option, dataText) {\r\n if (dataText !== \"\") {\r\n return option[dataText];\r\n }\r\n if (typeof option === \"object\") {\r\n if (!Array.isArray(option)) {\r\n return option[Object.keys(option)[0]];\r\n }\r\n else if (option.length > 0) {\r\n return option[0];\r\n }\r\n else {\r\n return \"array length 0\";\r\n }\r\n }\r\n return option;\r\n}\r\n/**\r\n * @param func Function to be called after waiting\r\n * @param wait Time in milliseconds\r\n */\r\nfunction debounce(func, wait) {\n if ( wait === void 0 ) wait = 20;\n\r\n var h = 0;\r\n var callable = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\r\n clearTimeout(h);\r\n h = setTimeout(function () { return func.apply(void 0, args); }, wait);\r\n };\r\n return callable;\r\n}\n\nvar SearchInput = /*@__PURE__*/(function (Vue) {\n function SearchInput() {\r\n Vue.apply(this, arguments);\r\n this.options = [];\r\n this.showOptions = false;\r\n this.isSearching = false;\r\n this.gotFocus = false;\r\n this.arrowCurrentIndex = -1;\r\n this.dbncSearch = null;\r\n this.alreadyBinded = false;\r\n }\n\n if ( Vue ) SearchInput.__proto__ = Vue;\n SearchInput.prototype = Object.create( Vue && Vue.prototype );\n SearchInput.prototype.constructor = SearchInput;\n\n var prototypeAccessors = { showActions: { configurable: true },disabled: { configurable: true },displayReset: { configurable: true },displaySpinner: { configurable: true },displayOptions: { configurable: true },displaySearchIcon: { configurable: true },displayHint: { configurable: true },showEmptyCase: { configurable: true } };\r\n prototypeAccessors.showActions.get = function () {\r\n return this.$slots.footer !== undefined;\r\n };\r\n prototypeAccessors.disabled.get = function () {\r\n return this.isDisabled || (this.isSearching === true && this.searchOnChange === false);\r\n };\r\n prototypeAccessors.displayReset.get = function () {\r\n return this.allowReset === true && !this.isSearching && this.value.trim().length > 0;\r\n };\r\n prototypeAccessors.displaySpinner.get = function () {\r\n return this.isSearching;\r\n };\r\n prototypeAccessors.displayOptions.get = function () {\r\n if (this.emptyCase.length > 0) {\r\n return this.isSearching === false && this.showOptions === true;\r\n }\r\n else {\r\n return this.isSearching === false && this.showOptions === true && this.options.length > 0;\r\n }\r\n };\r\n prototypeAccessors.displaySearchIcon.get = function () {\r\n return this.isSearching === false && this.displayReset === false;\r\n };\r\n prototypeAccessors.displayHint.get = function () {\r\n if (this.hint.trim().length === 0) {\r\n return false;\r\n }\r\n if (typeof this.validationFunc === 'function') {\r\n return this.gotFocus === true && this.validationFunc(this.value) === false;\r\n }\r\n return this.gotFocus === true;\r\n };\r\n prototypeAccessors.showEmptyCase.get = function () {\r\n return this.options.length === 0;\r\n };\r\n SearchInput.prototype.focusUpdated = function focusUpdated () {\r\n var inputEl = this.$refs.searchControl;\r\n if (this.focus === true) {\r\n inputEl.focus();\r\n }\r\n else {\r\n inputEl.blur();\r\n }\r\n };\r\n SearchInput.prototype.forceSearch_updated = function forceSearch_updated () {\r\n this.search();\r\n };\r\n SearchInput.prototype.input_focus = function input_focus () {\r\n this.gotFocus = true;\r\n };\r\n SearchInput.prototype.input_blur = function input_blur () {\r\n this.gotFocus = false;\r\n };\r\n SearchInput.prototype.updateValue = function updateValue () {\r\n var input = this.$refs.searchControl;\r\n this.$emit('input', input.value);\r\n this.showOptions = false;\r\n this.bindArrowFunc();\r\n if (this.dbncSearch) {\r\n this.dbncSearch();\r\n }\r\n };\r\n SearchInput.prototype.pasteValue = function pasteValue (e) {\r\n var copiedText = \"\";\r\n if (e.clipboardData) {\r\n copiedText = e.clipboardData.getData(\"text\");\r\n //@ts-ignore\r\n }\r\n else if (window.clipboardData) { // IE Fix\r\n //@ts-ignore\r\n copiedText = window.clipboardData.getData('Text');\r\n }\r\n this.$emit(\"paste\", copiedText);\r\n e.preventDefault();\r\n };\r\n SearchInput.prototype.search = function search () {\n var this$1 = this;\n\r\n if (this.disabled)\r\n { return; }\r\n if (this.showOptions === true && this.arrowCurrentIndex > -1) {\r\n this.selectOption(this.options[this.arrowCurrentIndex]);\r\n return;\r\n }\r\n if (typeof this.searchFunc !== 'function') {\r\n return;\r\n }\r\n if (typeof this.validationFunc === \"function\") {\r\n if (this.validationFunc(this.value) === false) {\r\n return;\r\n }\r\n }\r\n this.isSearching = true;\r\n this.searchFunc(this.value)\r\n .then(function (options) {\r\n if (options) {\r\n this$1.options = options;\r\n this$1.showOptions = true;\r\n this$1.bindArrowFunc();\r\n }\r\n })\r\n .finally(function () {\r\n this$1.isSearching = false;\r\n var inputEl = this$1.$refs.searchControl;\r\n setTimeout(function () {\r\n inputEl.focus();\r\n }, 100);\r\n });\r\n };\r\n SearchInput.prototype.reset = function reset () {\r\n var input = this.$refs.searchControl;\r\n input.value = \"\";\r\n this.options = [];\r\n this.showOptions = false;\r\n this.bindArrowFunc();\r\n };\r\n SearchInput.prototype.selectOption = function selectOption (option) {\r\n this.$emit(\"select-option\", option);\r\n this.showOptions = false;\r\n this.bindArrowFunc();\r\n };\r\n SearchInput.prototype.closeSuggestions = function closeSuggestions () {\r\n this.showOptions = false;\r\n this.bindArrowFunc();\r\n };\r\n SearchInput.prototype.bindArrowFunc = function bindArrowFunc () {\r\n if (this.showOptions === true) {\r\n if (this.alreadyBinded)\r\n { return; }\r\n this.alreadyBinded = true;\r\n window.addEventListener(\"keydown\", this.onKeyDownListener);\r\n var container = this.$refs.containerMenu;\r\n container.scrollTop = 0;\r\n }\r\n else {\r\n this.alreadyBinded = false;\r\n this.arrowCurrentIndex = -1;\r\n window.removeEventListener(\"keydown\", this.onKeyDownListener);\r\n }\r\n };\r\n SearchInput.prototype.onKeyDownListener = function onKeyDownListener (e) {\r\n var maxItems = this.options.length - 1;\r\n if (this.arrowCurrentIndex > maxItems) {\r\n this.arrowCurrentIndex = 0;\r\n }\r\n if (e.keyCode === 38 && this.arrowCurrentIndex > 0) {\r\n //UP\r\n this.arrowCurrentIndex--;\r\n e.preventDefault();\r\n }\r\n else if (e.keyCode === 40 && this.arrowCurrentIndex < maxItems) {\r\n //DOWN\r\n this.arrowCurrentIndex++;\r\n e.preventDefault();\r\n }\r\n else if (e.keyCode === 27) {\r\n //ESC\r\n this.showOptions = false;\r\n this.bindArrowFunc();\r\n e.preventDefault();\r\n }\r\n var container = this.$refs.containerMenu;\r\n var activeLi = container.getElementsByTagName(\"li\")[this.arrowCurrentIndex];\r\n if (activeLi) {\r\n if (container.clientHeight <= activeLi.offsetTop) {\r\n //SCROLL DOWN\r\n container.scrollTop =\r\n activeLi.clientHeight + activeLi.offsetTop - container.clientHeight;\r\n }\r\n if (container.scrollTop >= activeLi.offsetTop) {\r\n //SCROLL UP\r\n container.scrollTop = container.scrollTop - activeLi.clientHeight;\r\n }\r\n }\r\n };\r\n SearchInput.prototype.created = function created () {\r\n if (this.searchOnChange === true) {\r\n this.dbncSearch = debounce(this.search, 300);\r\n }\r\n };\n\n Object.defineProperties( SearchInput.prototype, prototypeAccessors );\n\n return SearchInput;\n}(Vue));\r\n__decorate([\r\n Prop({ default: '' })\r\n], SearchInput.prototype, \"value\", void 0);\r\n__decorate([\r\n Prop({ default: \"text\" })\r\n], SearchInput.prototype, \"type\", void 0);\r\n__decorate([\r\n Prop({ default: 'Search by text...' })\r\n], SearchInput.prototype, \"placeholder\", void 0);\r\n__decorate([\r\n Prop({ default: '' })\r\n], SearchInput.prototype, \"emptyCase\", void 0);\r\n__decorate([\r\n Prop({ default: '' })\r\n], SearchInput.prototype, \"hint\", void 0);\r\n__decorate([\r\n Prop({ default: null })\r\n], SearchInput.prototype, \"searchFunc\", void 0);\r\n__decorate([\r\n Prop({ default: null })\r\n], SearchInput.prototype, \"validationFunc\", void 0);\r\n__decorate([\r\n Prop({ default: false })\r\n], SearchInput.prototype, \"isDisabled\", void 0);\r\n__decorate([\r\n Prop({ default: true })\r\n], SearchInput.prototype, \"allowReset\", void 0);\r\n__decorate([\r\n Prop({ default: false })\r\n], SearchInput.prototype, \"focus\", void 0);\r\n__decorate([\r\n Prop({ default: false })\r\n], SearchInput.prototype, \"forceSearch\", void 0);\r\n__decorate([\r\n Prop({ default: false })\r\n], SearchInput.prototype, \"searchOnChange\", void 0);\r\n__decorate([\r\n Prop({ default: '' })\r\n], SearchInput.prototype, \"dataText\", void 0);\r\n__decorate([\r\n Watch(\"focus\")\r\n], SearchInput.prototype, \"focusUpdated\", null);\r\n__decorate([\r\n Watch('forceSearch')\r\n], SearchInput.prototype, \"forceSearch_updated\", null);\r\n__decorate([\r\n Emit(\"reset\")\r\n], SearchInput.prototype, \"reset\", null);\r\nSearchInput = __decorate([\r\n Component({\r\n directives: {\r\n \"check-position\": new Directives.CheckPosition(),\r\n \"click-outside\": new Directives.ClickOutside()\r\n },\r\n filters: {\r\n getObjectProperty: getObjectProperty\r\n }\r\n })\r\n], SearchInput);\r\nvar script = SearchInput;\n\nfunction normalizeComponent(template, style, script, scopeId, isFunctionalTemplate, moduleIdentifier\n/* server only */\n, shadowMode, createInjector, createInjectorSSR, createInjectorShadow) {\n if (typeof shadowMode !== 'boolean') {\n createInjectorSSR = createInjector;\n createInjector = shadowMode;\n shadowMode = false;\n } // Vue.extend constructor export interop.\n\n\n var options = typeof script === 'function' ? script.options : script; // render functions\n\n if (template && template.render) {\n options.render = template.render;\n options.staticRenderFns = template.staticRenderFns;\n options._compiled = true; // functional template\n\n if (isFunctionalTemplate) {\n options.functional = true;\n }\n } // scopedId\n\n\n if (scopeId) {\n options._scopeId = scopeId;\n }\n\n var hook;\n\n if (moduleIdentifier) {\n // server build\n hook = function hook(context) {\n // 2.3 injection\n context = context || // cached call\n this.$vnode && this.$vnode.ssrContext || // stateful\n this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext; // functional\n // 2.2 with runInNewContext: true\n\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n context = __VUE_SSR_CONTEXT__;\n } // inject component styles\n\n\n if (style) {\n style.call(this, createInjectorSSR(context));\n } // register component module identifier for async chunk inference\n\n\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier);\n }\n }; // used by ssr in case component is cached and beforeCreate\n // never gets called\n\n\n options._ssrRegister = hook;\n } else if (style) {\n hook = shadowMode ? function () {\n style.call(this, createInjectorShadow(this.$root.$options.shadowRoot));\n } : function (context) {\n style.call(this, createInjector(context));\n };\n }\n\n if (hook) {\n if (options.functional) {\n // register for functional component in vue file\n var originalRender = options.render;\n\n options.render = function renderWithStyleInjection(h, context) {\n hook.call(context);\n return originalRender(h, context);\n };\n } else {\n // inject component registration as beforeCreate hook\n var existing = options.beforeCreate;\n options.beforeCreate = existing ? [].concat(existing, hook) : [hook];\n }\n }\n\n return script;\n}\n\nvar normalizeComponent_1 = normalizeComponent;\n\n/* script */\nvar __vue_script__ = script;\n\n/* template */\nvar __vue_render__ = function() {\n var _vm = this;\n var _h = _vm.$createElement;\n var _c = _vm._self._c || _h;\n return _c(\n \"div\",\n {\n directives: [\n {\n name: \"click-outside\",\n rawName: \"v-click-outside\",\n value: _vm.closeSuggestions,\n expression: \"closeSuggestions\"\n }\n ],\n staticClass: \"SearchInput__wrapper\"\n },\n [\n _c(\"input\", {\n ref: \"searchControl\",\n staticClass: \"SearchInput\",\n attrs: {\n type: _vm.type,\n placeholder: _vm.placeholder,\n disabled: _vm.disabled\n },\n domProps: { value: _vm.value },\n on: {\n input: _vm.updateValue,\n keyup: function($event) {\n if (\n !$event.type.indexOf(\"key\") &&\n _vm._k($event.keyCode, \"enter\", 13, $event.key, \"Enter\")\n ) {\n return null\n }\n return _vm.search($event)\n },\n paste: _vm.pasteValue,\n focus: _vm.input_focus,\n blur: _vm.input_blur\n }\n }),\n _vm._v(\" \"),\n _c(\"div\", {\n directives: [\n {\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.displaySpinner,\n expression: \"displaySpinner\"\n }\n ],\n staticClass: \"SearchInput__icon SearchInput__icon--spinner\"\n }),\n _vm._v(\" \"),\n _c(\"div\", {\n directives: [\n {\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.displayReset,\n expression: \"displayReset\"\n }\n ],\n staticClass: \"SearchInput__icon SearchInput__icon--reset\",\n on: { click: _vm.reset }\n }),\n _vm._v(\" \"),\n _c(\"div\", {\n directives: [\n {\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.displaySearchIcon,\n expression: \"displaySearchIcon\"\n }\n ],\n staticClass: \"SearchInput__icon SearchInput__icon--search\",\n on: { click: _vm.search }\n }),\n _vm._v(\" \"),\n _c(\n \"div\",\n {\n directives: [\n {\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.displayHint,\n expression: \"displayHint\"\n }\n ],\n staticClass: \"SearchInput__hint\"\n },\n [_vm._v(_vm._s(_vm.hint))]\n ),\n _vm._v(\" \"),\n _c(\n \"div\",\n {\n staticClass: \"SearchInput__suggestionsWrapper\",\n class: { \"SearchInput__suggestionsWrapper--show\": _vm.displayOptions }\n },\n [\n _c(\n \"ul\",\n {\n directives: [\n {\n name: \"check-position\",\n rawName: \"v-check-position\",\n value: _vm.displayOptions,\n expression: \"displayOptions\"\n }\n ],\n ref: \"containerMenu\",\n staticClass: \"SearchInput__suggestions\"\n },\n [\n _vm._l(_vm.options, function(op, index) {\n return _c(\n \"li\",\n {\n key: index,\n staticClass: \"SearchInput__suggestions__item\",\n class: {\n \"SearchInput__suggestions__item--hover\":\n _vm.arrowCurrentIndex === index\n },\n on: {\n click: function($event) {\n return _vm.selectOption(op)\n }\n }\n },\n [\n _vm._t(\n \"suggested-item\",\n [\n _vm._v(\n \"\\n \" +\n _vm._s(\n _vm._f(\"getObjectProperty\")(op, _vm.dataText)\n ) +\n \"\\n \"\n )\n ],\n { data: op }\n )\n ],\n 2\n )\n }),\n _vm._v(\" \"),\n _c(\n \"li\",\n {\n directives: [\n {\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.showEmptyCase,\n expression: \"showEmptyCase\"\n }\n ],\n staticClass:\n \"SearchInput__suggestions__item SearchInput__suggestions__item--empty-case\"\n },\n [_vm._v(_vm._s(_vm.emptyCase))]\n )\n ],\n 2\n ),\n _vm._v(\" \"),\n _vm.showActions\n ? _c(\n \"div\",\n { staticClass: \"SearchInput__footer\" },\n [_vm._t(\"footer\")],\n 2\n )\n : _vm._e()\n ]\n )\n ]\n )\n};\nvar __vue_staticRenderFns__ = [];\n__vue_render__._withStripped = true;\n\n /* style */\n var __vue_inject_styles__ = undefined;\n /* scoped */\n var __vue_scope_id__ = undefined;\n /* module identifier */\n var __vue_module_identifier__ = undefined;\n /* functional template */\n var __vue_is_functional_template__ = false;\n /* style inject */\n \n /* style inject SSR */\n \n\n \n var SearchInput$1 = normalizeComponent_1(\n { render: __vue_render__, staticRenderFns: __vue_staticRenderFns__ },\n __vue_inject_styles__,\n __vue_script__,\n __vue_scope_id__,\n __vue_is_functional_template__,\n __vue_module_identifier__,\n undefined,\n undefined\n );\n\nvar SearchDropDown = /*@__PURE__*/(function (Vue) {\n function SearchDropDown() {\r\n Vue.apply(this, arguments);\r\n this.showOptions = false;\r\n this.isSearching = false;\r\n this.gotFocus = false;\r\n this.arrowCurrentIndex = -1;\r\n this.alreadyBinded = false;\r\n }\n\n if ( Vue ) SearchDropDown.__proto__ = Vue;\n SearchDropDown.prototype = Object.create( Vue && Vue.prototype );\n SearchDropDown.prototype.constructor = SearchDropDown;\n\n var prototypeAccessors = { showActions: { configurable: true },disabled: { configurable: true },displayReset: { configurable: true },displaySpinner: { configurable: true },displayOptions: { configurable: true },displaySearchIcon: { configurable: true },filteredOptions: { configurable: true },showEmptyCase: { configurable: true } };\r\n prototypeAccessors.showActions.get = function () {\r\n return this.$slots.footer !== undefined;\r\n };\r\n prototypeAccessors.disabled.get = function () {\r\n return this.isDisabled || this.isSearching;\r\n };\r\n prototypeAccessors.displayReset.get = function () {\r\n return this.isSearching === false && this.value.trim().length > 0;\r\n };\r\n prototypeAccessors.displaySpinner.get = function () {\r\n return this.isSearching;\r\n };\r\n prototypeAccessors.displayOptions.get = function () {\r\n return this.isSearching === false && this.showOptions === true && this.options.length > 0;\r\n };\r\n prototypeAccessors.displaySearchIcon.get = function () {\r\n return this.isSearching === false && this.displayReset === false;\r\n };\r\n prototypeAccessors.filteredOptions.get = function () {\n var this$1 = this;\n\r\n if (this.value.trim().length > 0) {\r\n var aux = this.value.trim().toLowerCase();\r\n return this.options.filter(function (f) {\r\n return getObjectProperty(f, this$1.dataText).trim().toLowerCase().indexOf(aux) > -1;\r\n });\r\n }\r\n return this.options;\r\n };\r\n prototypeAccessors.showEmptyCase.get = function () {\r\n return this.filteredOptions.length === 0;\r\n };\r\n SearchDropDown.prototype.focusUpdated = function focusUpdated () {\r\n var inputEl = this.$refs.searchControl;\r\n if (this.focus === true) {\r\n inputEl.focus();\r\n }\r\n else {\r\n inputEl.blur();\r\n }\r\n };\r\n SearchDropDown.prototype.input_focus = function input_focus () {\r\n this.gotFocus = true;\r\n this.showOptions = true;\r\n this.bindArrowFunc();\r\n };\r\n SearchDropDown.prototype.input_blur = function input_blur () {\r\n this.gotFocus = false;\r\n };\r\n SearchDropDown.prototype.updateValue = function updateValue () {\r\n var input = this.$refs.searchControl;\r\n this.$emit('input', input.value);\r\n this.showOptions = true;\r\n this.bindArrowFunc();\r\n };\r\n SearchDropDown.prototype.pasteValue = function pasteValue (e) {\r\n var copiedText = \"\";\r\n if (e.clipboardData) {\r\n copiedText = e.clipboardData.getData(\"text\");\r\n //@ts-ignore\r\n }\r\n else if (window.clipboardData) { // IE Fix\r\n //@ts-ignore\r\n copiedText = window.clipboardData.getData('Text');\r\n }\r\n this.$emit(\"paste\", copiedText);\r\n e.preventDefault();\r\n };\r\n SearchDropDown.prototype.search = function search () {\n var this$1 = this;\n\r\n if (this.disabled)\r\n { return; }\r\n if (this.arrowCurrentIndex > -1) {\r\n this.selectOption(this.filteredOptions[this.arrowCurrentIndex]);\r\n return;\r\n }\r\n this.isSearching = true;\r\n var selectedOption;\r\n var aux = this.value.trim().toLowerCase();\r\n selectedOption = this.options.find(function (f) { return getObjectProperty(f, this$1.dataText).trim().toLowerCase() === aux; });\r\n if (this.strictMode === false && selectedOption === undefined) {\r\n selectedOption = this.value;\r\n }\r\n if (selectedOption) {\r\n this.$emit(\"select-option\", selectedOption);\r\n this.showOptions = false;\r\n }\r\n else {\r\n this.showOptions = true;\r\n }\r\n this.isSearching = false;\r\n this.bindArrowFunc();\r\n };\r\n SearchDropDown.prototype.reset = function reset () {\r\n var input = this.$refs.searchControl;\r\n input.value = \"\";\r\n this.showOptions = false;\r\n this.bindArrowFunc();\r\n };\r\n SearchDropDown.prototype.selectOption = function selectOption (option) {\r\n this.$emit(\"select-option\", option);\r\n this.showOptions = false;\r\n this.bindArrowFunc();\r\n };\r\n SearchDropDown.prototype.closeSuggestions = function closeSuggestions () {\r\n this.showOptions = false;\r\n this.bindArrowFunc();\r\n };\r\n SearchDropDown.prototype.bindArrowFunc = function bindArrowFunc () {\r\n if (this.showOptions === true) {\r\n if (this.alreadyBinded)\r\n { return; }\r\n this.alreadyBinded = true;\r\n window.addEventListener(\"keydown\", this.onKeyDownListener);\r\n var container = this.$refs.containerMenu;\r\n container.scrollTop = 0;\r\n }\r\n else {\r\n this.alreadyBinded = false;\r\n this.arrowCurrentIndex = -1;\r\n window.removeEventListener(\"keydown\", this.onKeyDownListener);\r\n }\r\n };\r\n SearchDropDown.prototype.onKeyDownListener = function onKeyDownListener (e) {\r\n var maxItems = this.filteredOptions.length - 1;\r\n if (this.arrowCurrentIndex > maxItems) {\r\n this.arrowCurrentIndex = 0;\r\n }\r\n if (e.keyCode === 38 && this.arrowCurrentIndex > 0) {\r\n //UP\r\n this.arrowCurrentIndex--;\r\n e.preventDefault();\r\n }\r\n else if (e.keyCode === 40 && this.arrowCurrentIndex < maxItems) {\r\n //DOWN\r\n this.arrowCurrentIndex++;\r\n e.preventDefault();\r\n }\r\n else if (e.keyCode === 27) {\r\n //ESC\r\n this.showOptions = false;\r\n this.bindArrowFunc();\r\n e.preventDefault();\r\n }\r\n var container = this.$refs.containerMenu;\r\n var activeLi = container.getElementsByTagName(\"li\")[this.arrowCurrentIndex];\r\n if (activeLi) {\r\n if (container.clientHeight <= activeLi.offsetTop) {\r\n //SCROLL DOWN\r\n container.scrollTop =\r\n activeLi.clientHeight + activeLi.offsetTop - container.clientHeight;\r\n }\r\n if (container.scrollTop >= activeLi.offsetTop) {\r\n //SCROLL UP\r\n container.scrollTop = container.scrollTop - activeLi.clientHeight;\r\n }\r\n }\r\n };\n\n Object.defineProperties( SearchDropDown.prototype, prototypeAccessors );\n\n return SearchDropDown;\n}(Vue));\r\n__decorate([\r\n Prop({ default: '' })\r\n], SearchDropDown.prototype, \"value\", void 0);\r\n__decorate([\r\n Prop({ default: 'Search by text...' })\r\n], SearchDropDown.prototype, \"placeholder\", void 0);\r\n__decorate([\r\n Prop({ default: 'No matches found' })\r\n], SearchDropDown.prototype, \"emptyCase\", void 0);\r\n__decorate([\r\n Prop({ default: function () { return []; } })\r\n], SearchDropDown.prototype, \"options\", void 0);\r\n__decorate([\r\n Prop({ default: '' })\r\n], SearchDropDown.prototype, \"dataText\", void 0);\r\n__decorate([\r\n Prop({ default: false })\r\n], SearchDropDown.prototype, \"focus\", void 0);\r\n__decorate([\r\n Prop({ default: true })\r\n], SearchDropDown.prototype, \"strictMode\", void 0);\r\n__decorate([\r\n Prop({ default: false })\r\n], SearchDropDown.prototype, \"isDisabled\", void 0);\r\n__decorate([\r\n Watch(\"focus\")\r\n], SearchDropDown.prototype, \"focusUpdated\", null);\r\n__decorate([\r\n Emit(\"reset\")\r\n], SearchDropDown.prototype, \"reset\", null);\r\nSearchDropDown = __decorate([\r\n Component({\r\n directives: {\r\n \"check-position\": new Directives.CheckPosition(),\r\n \"click-outside\": new Directives.ClickOutside()\r\n },\r\n filters: {\r\n getObjectProperty: getObjectProperty\r\n }\r\n })\r\n], SearchDropDown);\r\nvar script$1 = SearchDropDown;\n\n/* script */\nvar __vue_script__$1 = script$1;\n\n/* template */\nvar __vue_render__$1 = function() {\n var _vm = this;\n var _h = _vm.$createElement;\n var _c = _vm._self._c || _h;\n return _c(\n \"div\",\n {\n directives: [\n {\n name: \"click-outside\",\n rawName: \"v-click-outside\",\n value: _vm.closeSuggestions,\n expression: \"closeSuggestions\"\n }\n ],\n staticClass: \"SearchInput__wrapper\"\n },\n [\n _c(\"input\", {\n ref: \"searchControl\",\n staticClass: \"SearchInput\",\n attrs: {\n type: \"text\",\n placeholder: _vm.placeholder,\n disabled: _vm.disabled\n },\n domProps: { value: _vm.value },\n on: {\n input: _vm.updateValue,\n keyup: [\n function($event) {\n if (\n !$event.type.indexOf(\"key\") &&\n _vm._k($event.keyCode, \"enter\", 13, $event.key, \"Enter\")\n ) {\n return null\n }\n return _vm.search($event)\n },\n function($event) {\n if (\n !$event.type.indexOf(\"key\") &&\n _vm._k($event.keyCode, \"down\", 40, $event.key, [\n \"Down\",\n \"ArrowDown\"\n ])\n ) {\n return null\n }\n return _vm.input_focus($event)\n }\n ],\n paste: _vm.pasteValue,\n focus: _vm.input_focus,\n blur: _vm.input_blur\n }\n }),\n _vm._v(\" \"),\n _c(\"div\", {\n directives: [\n {\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.displaySpinner,\n expression: \"displaySpinner\"\n }\n ],\n staticClass: \"SearchInput__icon SearchInput__icon--spinner\"\n }),\n _vm._v(\" \"),\n _c(\"div\", {\n directives: [\n {\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.displayReset,\n expression: \"displayReset\"\n }\n ],\n staticClass: \"SearchInput__icon SearchInput__icon--reset\",\n on: { click: _vm.reset }\n }),\n _vm._v(\" \"),\n _c(\"div\", {\n directives: [\n {\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.displaySearchIcon,\n expression: \"displaySearchIcon\"\n }\n ],\n staticClass: \"SearchInput__icon SearchInput__icon--search\",\n on: { click: _vm.search }\n }),\n _vm._v(\" \"),\n _c(\n \"div\",\n {\n staticClass: \"SearchInput__suggestionsWrapper\",\n class: { \"SearchInput__suggestionsWrapper--show\": _vm.displayOptions }\n },\n [\n _c(\n \"ul\",\n {\n directives: [\n {\n name: \"check-position\",\n rawName: \"v-check-position\",\n value: _vm.displayOptions,\n expression: \"displayOptions\"\n }\n ],\n ref: \"containerMenu\",\n staticClass: \"SearchInput__suggestions\"\n },\n [\n _vm._l(_vm.filteredOptions, function(op, index) {\n return _c(\n \"li\",\n {\n key: index,\n staticClass: \"SearchInput__suggestions__item\",\n class: {\n \"SearchInput__suggestions__item--hover\":\n _vm.arrowCurrentIndex === index\n },\n on: {\n click: function($event) {\n return _vm.selectOption(op)\n }\n }\n },\n [\n _vm._t(\n \"suggested-item\",\n [\n _vm._v(\n \"\\n \" +\n _vm._s(\n _vm._f(\"getObjectProperty\")(op, _vm.dataText)\n ) +\n \"\\n \"\n )\n ],\n { data: op }\n )\n ],\n 2\n )\n }),\n _vm._v(\" \"),\n _c(\n \"li\",\n {\n directives: [\n {\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.showEmptyCase,\n expression: \"showEmptyCase\"\n }\n ],\n staticClass:\n \"SearchInput__suggestions__item SearchInput__suggestions__item--empty-case\"\n },\n [_vm._v(_vm._s(_vm.emptyCase))]\n )\n ],\n 2\n ),\n _vm._v(\" \"),\n _vm.showActions\n ? _c(\n \"div\",\n { staticClass: \"SearchInput__footer\" },\n [_vm._t(\"footer\")],\n 2\n )\n : _vm._e()\n ]\n )\n ]\n )\n};\nvar __vue_staticRenderFns__$1 = [];\n__vue_render__$1._withStripped = true;\n\n /* style */\n var __vue_inject_styles__$1 = undefined;\n /* scoped */\n var __vue_scope_id__$1 = undefined;\n /* module identifier */\n var __vue_module_identifier__$1 = undefined;\n /* functional template */\n var __vue_is_functional_template__$1 = false;\n /* style inject */\n \n /* style inject SSR */\n \n\n \n var SearchDropDown$1 = normalizeComponent_1(\n { render: __vue_render__$1, staticRenderFns: __vue_staticRenderFns__$1 },\n __vue_inject_styles__$1,\n __vue_script__$1,\n __vue_scope_id__$1,\n __vue_is_functional_template__$1,\n __vue_module_identifier__$1,\n undefined,\n undefined\n );\n\nexport { SearchDropDown$1 as SearchDropDown, SearchInput$1 as SearchInput };\n","import { Prop, Watch, Component, Vue } from 'vue-property-decorator';\n\n/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n\r\nfunction __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\n\nfunction styleInject(css, ref) {\n if ( ref === void 0 ) { ref = {}; }\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nvar css = \"@charset \\\"UTF-8\\\";\\n/*------------------------------------------------------------------ Colors */\\n/*------------------------------------------------------------------ Filters */\\n/*------------------------------------------------------------------ Filters Grey IE11 */\\n/*------------------------------------------------------------------ Dimensions */\\n/*------------------------------------------------------------------ Bezier */\\n/*------------------------------------------------------------------ Media Queries */\\n/*------------------------------------------------------------------ Media Queries CSS Hacks */\\n@-webkit-keyframes rotate {\\n 0% {\\n -webkit-transform: rotate(0deg);\\n transform: rotate(0deg);\\n }\\n 100% {\\n -webkit-transform: rotate(1080deg);\\n transform: rotate(1080deg);\\n }\\n}\\n@keyframes rotate {\\n 0% {\\n -webkit-transform: rotate(0deg);\\n transform: rotate(0deg);\\n }\\n 100% {\\n -webkit-transform: rotate(1080deg);\\n transform: rotate(1080deg);\\n }\\n}\\n@-webkit-keyframes bounce {\\n 0% {\\n -webkit-transform: translateY(0px);\\n transform: translateY(0px);\\n }\\n 100% {\\n -webkit-transform: translateY(5px);\\n transform: translateY(5px);\\n }\\n}\\n@keyframes bounce {\\n 0% {\\n -webkit-transform: translateY(0px);\\n transform: translateY(0px);\\n }\\n 100% {\\n -webkit-transform: translateY(5px);\\n transform: translateY(5px);\\n }\\n}\\n@-webkit-keyframes pulse {\\n 0% {\\n -webkit-transform: scale(0);\\n transform: scale(0);\\n opacity: 1;\\n }\\n 100% {\\n -webkit-transform: scale(1);\\n transform: scale(1);\\n opacity: 0;\\n }\\n}\\n@keyframes pulse {\\n 0% {\\n -webkit-transform: scale(0);\\n transform: scale(0);\\n opacity: 1;\\n }\\n 100% {\\n -webkit-transform: scale(1);\\n transform: scale(1);\\n opacity: 0;\\n }\\n}\\n@-webkit-keyframes shake {\\n from, to {\\n -webkit-transform: translate3d(0, 0, 0);\\n transform: translate3d(0, 0, 0);\\n }\\n 10%, 30%, 50%, 70%, 90% {\\n -webkit-transform: translate3d(-10px, 0, 0);\\n transform: translate3d(-10px, 0, 0);\\n }\\n 20%, 40%, 60%, 80% {\\n -webkit-transform: translate3d(10px, 0, 0);\\n transform: translate3d(10px, 0, 0);\\n }\\n}\\n@keyframes shake {\\n from, to {\\n -webkit-transform: translate3d(0, 0, 0);\\n transform: translate3d(0, 0, 0);\\n }\\n 10%, 30%, 50%, 70%, 90% {\\n -webkit-transform: translate3d(-10px, 0, 0);\\n transform: translate3d(-10px, 0, 0);\\n }\\n 20%, 40%, 60%, 80% {\\n -webkit-transform: translate3d(10px, 0, 0);\\n transform: translate3d(10px, 0, 0);\\n }\\n}\\n@-webkit-keyframes loading {\\n 0% {\\n -webkit-transform: rotate(-90deg) translate(0, 0);\\n transform: rotate(-90deg) translate(0, 0);\\n -webkit-transform-origin: 50%;\\n transform-origin: 50%;\\n stroke-dashoffset: 140px;\\n }\\n 50% {\\n stroke-dashoffset: 70px;\\n }\\n 100% {\\n -webkit-transform: rotate(270deg) translate(0, 0);\\n transform: rotate(270deg) translate(0, 0);\\n -webkit-transform-origin: 50%;\\n transform-origin: 50%;\\n stroke-dashoffset: 0;\\n }\\n}\\n@keyframes loading {\\n 0% {\\n -webkit-transform: rotate(-90deg) translate(0, 0);\\n transform: rotate(-90deg) translate(0, 0);\\n -webkit-transform-origin: 50%;\\n transform-origin: 50%;\\n stroke-dashoffset: 140px;\\n }\\n 50% {\\n stroke-dashoffset: 70px;\\n }\\n 100% {\\n -webkit-transform: rotate(270deg) translate(0, 0);\\n transform: rotate(270deg) translate(0, 0);\\n -webkit-transform-origin: 50%;\\n transform-origin: 50%;\\n stroke-dashoffset: 0;\\n }\\n}\\n@-webkit-keyframes color-load {\\n 0% {\\n stroke: #00a0d2;\\n }\\n 10% {\\n stroke: #00a0d2;\\n }\\n 20% {\\n stroke: #d2f4ff;\\n }\\n 30% {\\n stroke: #00a0d2;\\n }\\n 40% {\\n stroke: #00a0d2;\\n }\\n 50% {\\n stroke: #d2f4ff;\\n }\\n 60% {\\n stroke: #00a0d2;\\n }\\n 70% {\\n stroke: #00a0d2;\\n }\\n 80% {\\n stroke: #d2f4ff;\\n }\\n 90% {\\n stroke: #00a0d2;\\n }\\n 100% {\\n stroke: #d2f4ff;\\n }\\n}\\n@keyframes color-load {\\n 0% {\\n stroke: #00a0d2;\\n }\\n 10% {\\n stroke: #00a0d2;\\n }\\n 20% {\\n stroke: #d2f4ff;\\n }\\n 30% {\\n stroke: #00a0d2;\\n }\\n 40% {\\n stroke: #00a0d2;\\n }\\n 50% {\\n stroke: #d2f4ff;\\n }\\n 60% {\\n stroke: #00a0d2;\\n }\\n 70% {\\n stroke: #00a0d2;\\n }\\n 80% {\\n stroke: #d2f4ff;\\n }\\n 90% {\\n stroke: #00a0d2;\\n }\\n 100% {\\n stroke: #d2f4ff;\\n }\\n}\\n@font-face {\\n font-family: \\\"Frontiers-Iconography\\\";\\n src: url(data:font/truetype;charset=utf-8;base64,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) format(\\\"truetype\\\");\\n font-weight: normal;\\n font-style: normal;\\n}\\na,\\na:hover,\\na:active {\\n text-decoration: none;\\n}\\n\\n*:focus {\\n outline: none;\\n}\\n\\nul {\\n list-style: none;\\n margin: 0;\\n padding: 0;\\n}\\n\\ninput, textarea {\\n font-family: \\\"MuseoSans\\\", Helvetica, Arial, sans-serif;\\n}\\n\\ninput[type=number]::-webkit-inner-spin-Button,\\ninput[type=number]::-webkit-outer-spin-Button {\\n -webkit-appearance: none;\\n margin: 0;\\n}\\n\\ninput[type=number] {\\n -moz-appearance: textfield;\\n}\\n\\ninput::-ms-clear {\\n display: none;\\n}\\n\\n.cb {\\n clear: both;\\n}\\n.cb:before {\\n content: \\\" \\\";\\n display: table;\\n}\\n.cb:after {\\n content: \\\" \\\";\\n display: table;\\n clear: both;\\n}\\n\\n.is-disabled {\\n pointer-events: none;\\n opacity: 0.5;\\n}\\n\\n.is-hidden {\\n display: none;\\n}\\n\\n.is-visible {\\n display: block;\\n}\\n\\n.TagCloud {\\n width: 100%;\\n display: -webkit-box;\\n display: -ms-flexbox;\\n display: flex;\\n -ms-flex-wrap: wrap;\\n flex-wrap: wrap;\\n margin: -5px 0;\\n cursor: default;\\n}\\n.TagCloud.is-disabled {\\n opacity: 1;\\n}\\n.TagCloud.is-disabled .TagCloud__tag {\\n background: #F0F0F0;\\n color: #bababa;\\n}\\n@media only screen and (max-width:1080px) {\\n .TagCloud.is-disabled .TagCloud__tag {\\n padding-right: 15px;\\n }\\n .TagCloud.is-disabled .TagCloud__tag__close {\\n display: none;\\n }\\n}\\n.TagCloud__tag {\\n background: #c3e9f4;\\n font-size: 13px;\\n line-height: 20px;\\n font-weight: 500;\\n color: #00a0d2;\\n padding: 4px 15px;\\n margin: 5px 10px 5px 0;\\n position: relative;\\n overflow: hidden;\\n}\\n.TagCloud__tag:last-child {\\n margin-right: 0;\\n}\\n@media only screen and (max-width:1080px) {\\n .TagCloud__tag {\\n padding-right: calc(15px + 15px);\\n }\\n}\\n.TagCloud__tag:hover .TagCloud__tag__close {\\n opacity: 1;\\n right: 0;\\n}\\n.TagCloud__tag__close {\\n position: absolute;\\n top: 0px;\\n right: 0px;\\n height: 100%;\\n width: 28px;\\n background: #c3e9f4;\\n opacity: 0;\\n right: -100%;\\n cursor: pointer;\\n -webkit-transition: opacity 200ms cubic-bezier(0.37, 0.74, 0.15, 1), right 200ms cubic-bezier(0.13, 0.42, 0.56, 1.01);\\n transition: opacity 200ms cubic-bezier(0.37, 0.74, 0.15, 1), right 200ms cubic-bezier(0.13, 0.42, 0.56, 1.01);\\n}\\n.TagCloud__tag__close:before {\\n content: \\\"\\\";\\n font-family: \\\"Frontiers-Iconography\\\" !important;\\n color: #00a0d2;\\n font-size: 14px;\\n line-height: 14px;\\n position: absolute;\\n top: calc(50% - 7px);\\n left: calc(50% - 7px);\\n}\\n@media only screen and (max-width:1080px) {\\n .TagCloud__tag__close {\\n -webkit-transition: none;\\n transition: none;\\n opacity: 1;\\n right: 0;\\n }\\n}\\n.TagCloud__tag--warn {\\n background: #f9efde;\\n font-size: 13px;\\n line-height: 20px;\\n font-weight: 500;\\n color: #F29400;\\n}\\n.TagCloud__tag--warn .TagCloud__tag__close {\\n background: #f9efde;\\n}\\n.TagCloud__tag--warn .TagCloud__tag__close:before {\\n color: #F29400;\\n}\\n.TagCloud__tag--error {\\n background: #f7d8dc;\\n font-size: 13px;\\n line-height: 20px;\\n font-weight: 500;\\n color: #e40521;\\n}\\n.TagCloud__tag--error .TagCloud__tag__close {\\n background: #f7d8dc;\\n}\\n.TagCloud__tag--error .TagCloud__tag__close:before {\\n color: #e40521;\\n}\";\nstyleInject(css);\n\nvar css$1 = \"/*------------------------------------------------------------------ Colors */\\n/*------------------------------------------------------------------ Filters */\\n/*------------------------------------------------------------------ Filters Grey IE11 */\\n/*------------------------------------------------------------------ Dimensions */\\n/*------------------------------------------------------------------ Bezier */\\n/*------------------------------------------------------------------ Media Queries */\\n/*------------------------------------------------------------------ Media Queries CSS Hacks */\\n.Tooltip {\\n position: fixed;\\n background-color: #020202;\\n font-size: 13px;\\n line-height: 16px;\\n font-weight: 300;\\n color: #ffffff;\\n padding: 8px 14px;\\n min-width: 100px;\\n max-width: 200px;\\n text-align: center;\\n z-index: 200;\\n visibility: visible;\\n opacity: 1;\\n -webkit-transform: translate(-50%, -100%);\\n transform: translate(-50%, -100%);\\n -webkit-transition: opacity 200ms ease-in-out;\\n transition: opacity 200ms ease-in-out;\\n}\\n.Tooltip:after {\\n content: \\\"\\\";\\n position: absolute;\\n bottom: -8px;\\n right: calc(50% - 8px);\\n width: 0;\\n height: 0;\\n border-style: solid;\\n border-width: 8px 7.5px 0 7.5px;\\n border-color: #020202 transparent transparent transparent;\\n}\\n.Tooltip--hidden {\\n opacity: 0;\\n visibility: hidden;\\n}\";\nstyleInject(css$1);\n\nvar TagType;\r\n(function (TagType) {\r\n TagType[\"Info\"] = \"info\";\r\n TagType[\"Warn\"] = \"warn\";\r\n TagType[\"Error\"] = \"error\";\r\n})(TagType || (TagType = {}));\n\nvar tooltipDiv = null;\r\nvar Tooltip = {\r\n injectHtml: function injectHtml() {\r\n tooltipDiv = document.createElement('div');\r\n tooltipDiv.classList.add('Tooltip');\r\n tooltipDiv.classList.add('Tooltip--hidden');\r\n document.getElementsByTagName('body')[0].appendChild(tooltipDiv);\r\n },\r\n mouseover: function mouseover(el, text) {\r\n if (tooltipDiv) {\r\n var rect = el.getBoundingClientRect();\r\n tooltipDiv.innerText = text;\r\n tooltipDiv.style.top = (rect.top - 10) + 'px';\r\n tooltipDiv.style.left = (rect.left + (rect.width / 2)) + 'px';\r\n tooltipDiv.classList.remove('Tooltip--hidden');\r\n }\r\n },\r\n mouseout: function mouseout() {\r\n if (tooltipDiv) {\r\n tooltipDiv.classList.add('Tooltip--hidden');\r\n }\r\n },\r\n update: function update(el, binding, vnode) {\r\n Tooltip.mouseout();\r\n // @ts-ignore\r\n el.removeEventListener('mouseover', el.mouseOverFunc);\r\n if (typeof binding.value === 'string' && binding.value.trim().length > 0) {\r\n // @ts-ignore\r\n el.mouseOverFunc = Tooltip.mouseover.bind(this, el, binding.value);\r\n // @ts-ignore\r\n el.addEventListener('mouseover', el.mouseOverFunc);\r\n }\r\n else {\r\n // @ts-ignore\r\n el.mouseOverFunc = null;\r\n }\r\n },\r\n bind: function bind(el, binding, vnode) {\r\n if (tooltipDiv === null) {\r\n Tooltip.injectHtml();\r\n }\r\n if (typeof binding.value === 'string' && binding.value.trim().length > 0) {\r\n // @ts-ignore\r\n el.mouseOverFunc = Tooltip.mouseover.bind(this, el, binding.value);\r\n // @ts-ignore\r\n el.addEventListener('mouseover', el.mouseOverFunc);\r\n }\r\n el.addEventListener('mouseout', Tooltip.mouseout);\r\n },\r\n unbind: function unbind(el, binding, vnode) {\r\n if (typeof binding.value === 'string' && binding.value.trim().length > 0) {\r\n Tooltip.mouseout();\r\n // @ts-ignore\r\n el.removeEventListener('mouseover', el.mouseOverFunc);\r\n el.removeEventListener('mouseout', Tooltip.mouseout);\r\n }\r\n }\r\n};\n\nvar TagCloud = /*@__PURE__*/(function (Vue) {\n function TagCloud() {\r\n Vue.apply(this, arguments);\r\n this.internalTags = [];\r\n }\n\n if ( Vue ) TagCloud.__proto__ = Vue;\n TagCloud.prototype = Object.create( Vue && Vue.prototype );\n TagCloud.prototype.constructor = TagCloud;\r\n TagCloud.prototype.getTagClass = function getTagClass (tag) {\r\n switch (tag.type) {\r\n case TagType.Error: return 'TagCloud__tag--error';\r\n case TagType.Warn: return 'TagCloud__tag--warn';\r\n default: return 'TagCloud__tag--info';\r\n }\r\n };\r\n TagCloud.prototype.removeTag = function removeTag (key) {\r\n if (!this.isDisabled) {\r\n this.$emit(\"remove-tag\", key);\r\n }\r\n };\r\n TagCloud.prototype.setInternalTags = function setInternalTags () {\r\n if (this.tags.length > 0 && typeof this.tags[0] === 'string') {\r\n this.internalTags = this.tags.map(function (m) {\r\n if (typeof m !== 'string')\r\n { throw new Error('All elements in tags property must have the same type'); }\r\n return {\r\n text: m,\r\n type: TagType.Info\r\n };\r\n });\r\n }\r\n else {\r\n this.internalTags = this.tags;\r\n }\r\n };\r\n TagCloud.prototype.tags_updated = function tags_updated () {\r\n this.setInternalTags();\r\n };\r\n TagCloud.prototype.created = function created () {\r\n this.setInternalTags();\r\n };\n\n return TagCloud;\n}(Vue));\r\n__decorate([\r\n Prop()\r\n], TagCloud.prototype, \"tags\", void 0);\r\n__decorate([\r\n Prop({ default: false })\r\n], TagCloud.prototype, \"isDisabled\", void 0);\r\n__decorate([\r\n Watch('tags')\r\n], TagCloud.prototype, \"tags_updated\", null);\r\nTagCloud = __decorate([\r\n Component({\r\n directives: { 'tooltip': Tooltip }\r\n })\r\n], TagCloud);\r\nvar script = TagCloud;\n\nfunction normalizeComponent(template, style, script, scopeId, isFunctionalTemplate, moduleIdentifier\n/* server only */\n, shadowMode, createInjector, createInjectorSSR, createInjectorShadow) {\n if (typeof shadowMode !== 'boolean') {\n createInjectorSSR = createInjector;\n createInjector = shadowMode;\n shadowMode = false;\n } // Vue.extend constructor export interop.\n\n\n var options = typeof script === 'function' ? script.options : script; // render functions\n\n if (template && template.render) {\n options.render = template.render;\n options.staticRenderFns = template.staticRenderFns;\n options._compiled = true; // functional template\n\n if (isFunctionalTemplate) {\n options.functional = true;\n }\n } // scopedId\n\n\n if (scopeId) {\n options._scopeId = scopeId;\n }\n\n var hook;\n\n if (moduleIdentifier) {\n // server build\n hook = function hook(context) {\n // 2.3 injection\n context = context || // cached call\n this.$vnode && this.$vnode.ssrContext || // stateful\n this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext; // functional\n // 2.2 with runInNewContext: true\n\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n context = __VUE_SSR_CONTEXT__;\n } // inject component styles\n\n\n if (style) {\n style.call(this, createInjectorSSR(context));\n } // register component module identifier for async chunk inference\n\n\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier);\n }\n }; // used by ssr in case component is cached and beforeCreate\n // never gets called\n\n\n options._ssrRegister = hook;\n } else if (style) {\n hook = shadowMode ? function () {\n style.call(this, createInjectorShadow(this.$root.$options.shadowRoot));\n } : function (context) {\n style.call(this, createInjector(context));\n };\n }\n\n if (hook) {\n if (options.functional) {\n // register for functional component in vue file\n var originalRender = options.render;\n\n options.render = function renderWithStyleInjection(h, context) {\n hook.call(context);\n return originalRender(h, context);\n };\n } else {\n // inject component registration as beforeCreate hook\n var existing = options.beforeCreate;\n options.beforeCreate = existing ? [].concat(existing, hook) : [hook];\n }\n }\n\n return script;\n}\n\nvar normalizeComponent_1 = normalizeComponent;\n\n/* script */\nvar __vue_script__ = script;\n\n/* template */\nvar __vue_render__ = function() {\n var _vm = this;\n var _h = _vm.$createElement;\n var _c = _vm._self._c || _h;\n return _c(\n \"ul\",\n { staticClass: \"TagCloud\", class: { \"is-disabled\": _vm.isDisabled } },\n _vm._l(_vm.internalTags, function(tag, index) {\n return _c(\n \"li\",\n {\n directives: [\n {\n name: \"tooltip\",\n rawName: \"v-tooltip\",\n value: tag.tooltip,\n expression: \"tag.tooltip\"\n }\n ],\n key: index,\n staticClass: \"TagCloud__tag\",\n class: _vm.getTagClass(tag)\n },\n [\n _vm._v(\"\\n \" + _vm._s(tag.text) + \" \\n \"),\n _c(\"div\", {\n staticClass: \"TagCloud__tag__close\",\n on: {\n click: function($event) {\n return _vm.removeTag(index)\n }\n }\n })\n ]\n )\n }),\n 0\n )\n};\nvar __vue_staticRenderFns__ = [];\n__vue_render__._withStripped = true;\n\n /* style */\n var __vue_inject_styles__ = undefined;\n /* scoped */\n var __vue_scope_id__ = undefined;\n /* module identifier */\n var __vue_module_identifier__ = undefined;\n /* functional template */\n var __vue_is_functional_template__ = false;\n /* style inject */\n \n /* style inject SSR */\n \n\n \n var TagCloud$1 = normalizeComponent_1(\n { render: __vue_render__, staticRenderFns: __vue_staticRenderFns__ },\n __vue_inject_styles__,\n __vue_script__,\n __vue_scope_id__,\n __vue_is_functional_template__,\n __vue_module_identifier__,\n undefined,\n undefined\n );\n\nexport { TagCloud$1 as TagCloud, TagType };\n","import { Prop, Emit, Watch, Component, Vue } from 'vue-property-decorator';\nimport { Button } from '@frontiers-vue/button';\n\n/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n\r\nfunction __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\n\nfunction styleInject(css, ref) {\n if ( ref === void 0 ) { ref = {}; }\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nvar css = \"/*------------------------------------------------------------------ Colors */\\n/*------------------------------------------------------------------ Filters */\\n/*------------------------------------------------------------------ Filters Grey IE11 */\\n/*------------------------------------------------------------------ Dimensions */\\n/*------------------------------------------------------------------ Bezier */\\n/*------------------------------------------------------------------ Media Queries */\\n/*------------------------------------------------------------------ Media Queries CSS Hacks */\\n.is-disabled {\\n pointer-events: none;\\n opacity: 0.5;\\n}\\n\\n.is-hidden {\\n display: none;\\n}\\n\\n.is-visible {\\n display: block;\\n}\\n\\n.Tooltip {\\n position: absolute;\\n background-color: #020202;\\n font-size: 13px;\\n line-height: 16px;\\n font-weight: 300;\\n color: #ffffff;\\n padding: 8px 14px;\\n min-width: 100px;\\n max-width: 300px;\\n z-index: 200;\\n visibility: visible;\\n opacity: 1;\\n -webkit-transition: opacity 200ms ease-in-out;\\n transition: opacity 200ms ease-in-out;\\n}\\n.Tooltip:after {\\n content: \\\"\\\";\\n position: absolute;\\n bottom: -8px;\\n right: calc(50% - 8px);\\n width: 0;\\n height: 0;\\n border-style: solid;\\n border-width: 8px 7.5px 0 7.5px;\\n border-color: #020202 transparent transparent transparent;\\n}\\n.Tooltip--hidden {\\n opacity: 0;\\n visibility: hidden;\\n}\\n.Tooltip--Top {\\n bottom: calc(100% + 12px);\\n left: 50%;\\n -webkit-transform: translateX(-50%);\\n transform: translateX(-50%);\\n}\\n.Tooltip--Bottom {\\n top: calc(100% + 12px);\\n left: 50%;\\n -webkit-transform: translateX(-50%);\\n transform: translateX(-50%);\\n}\\n.Tooltip--Bottom:after {\\n -webkit-transform: rotate(180deg);\\n transform: rotate(180deg);\\n bottom: auto;\\n top: -7px;\\n}\\n.Tooltip--Right {\\n right: -13px;\\n top: 50%;\\n -webkit-transform: translate(100%, -50%);\\n transform: translate(100%, -50%);\\n}\\n.Tooltip--Right:after {\\n -webkit-transform: rotate(90deg);\\n transform: rotate(90deg);\\n bottom: auto;\\n top: calc(50% - 4px);\\n left: -11px;\\n right: auto;\\n}\\n.Tooltip--Left {\\n left: -13px;\\n top: 50%;\\n -webkit-transform: translate(-100%, -50%);\\n transform: translate(-100%, -50%);\\n}\\n.Tooltip--Left:after {\\n -webkit-transform: rotate(-90deg);\\n transform: rotate(-90deg);\\n bottom: auto;\\n top: calc(50% - 4px);\\n right: -11px;\\n left: auto;\\n}\\n.Tooltip__title {\\n position: relative;\\n font-weight: 600;\\n white-space: nowrap;\\n padding-right: 20px;\\n margin-top: 2px;\\n}\\n.Tooltip__title__close {\\n position: absolute;\\n top: -3px;\\n right: -6px;\\n width: 10px;\\n height: 10px;\\n background: url(data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJMYXllcl8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAxNCAxNCI+Cgk8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJCS5zdDB7ZmlsbDojMDAwMDAwO30KCTwvc3R5bGU+Cgk8cG9seWdvbiBjbGFzcz0ic3QwIiBwb2ludHM9IjguNCw3IDE0LDEyLjYgMTIuNiwxNCA3LDguNCAxLjQsMTQgMCwxMi42IDUuNiw3IDAsMS40IDEuNCwwIDcsNS42IDEyLjYsMCAxNCwxLjQgIi8+Cjwvc3ZnPg==) no-repeat 50% 50%;\\n -webkit-filter: invert(96%) sepia(84%) saturate(5%) hue-rotate(82deg) brightness(110%) contrast(100%);\\n filter: invert(96%) sepia(84%) saturate(5%) hue-rotate(82deg) brightness(110%) contrast(100%);\\n cursor: pointer;\\n}\\n@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {\\n .Tooltip__title__close {\\n -webkit-filter: none;\\n filter: none;\\n background: url(data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJMYXllcl8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAxNCAxNCI+Cgk8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJCS5zdDB7ZmlsbDojRkZGRkZGO30KCTwvc3R5bGU+Cgk8cG9seWdvbiBjbGFzcz0ic3QwIiBwb2ludHM9IjguNCw3IDE0LDEyLjYgMTIuNiwxNCA3LDguNCAxLjQsMTQgMCwxMi42IDUuNiw3IDAsMS40IDEuNCwwIDcsNS42IDEyLjYsMCAxNCwxLjQgIi8+Cjwvc3ZnPg==) no-repeat 50%;\\n }\\n}\\n@supports (-ms-ime-align:auto) {\\n .Tooltip__title__close {\\n -webkit-filter: none;\\n filter: none;\\n background: url(data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJMYXllcl8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAxNCAxNCI+Cgk8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJCS5zdDB7ZmlsbDojRkZGRkZGO30KCTwvc3R5bGU+Cgk8cG9seWdvbiBjbGFzcz0ic3QwIiBwb2ludHM9IjguNCw3IDE0LDEyLjYgMTIuNiwxNCA3LDguNCAxLjQsMTQgMCwxMi42IDUuNiw3IDAsMS40IDEuNCwwIDcsNS42IDEyLjYsMCAxNCwxLjQgIi8+Cjwvc3ZnPg==) no-repeat 50%;\\n }\\n}\\n.Tooltip__body {\\n margin: 10px 0 5px 0;\\n}\\n.Tooltip__footer {\\n display: -webkit-box;\\n display: -ms-flexbox;\\n display: flex;\\n -webkit-box-pack: end;\\n -ms-flex-pack: end;\\n justify-content: flex-end;\\n margin-top: 10px;\\n}\\n.Tooltip__footer .Button--linkMaincolor {\\n color: #ffffff;\\n}\";\nstyleInject(css);\n\nvar Mode;\r\n(function (Mode) {\r\n Mode[\"OnMouseOver\"] = \"OnMouseOver\";\r\n Mode[\"OnDemand\"] = \"OnDemand\";\r\n})(Mode || (Mode = {}));\r\nvar Direction;\r\n(function (Direction) {\r\n Direction[\"Right\"] = \"Right\";\r\n Direction[\"Left\"] = \"Left\";\r\n Direction[\"Top\"] = \"Top\";\r\n Direction[\"Bottom\"] = \"Bottom\";\r\n})(Direction || (Direction = {}));\n\nvar Tooltip = /*@__PURE__*/(function (Vue) {\n function Tooltip() {\r\n Vue.apply(this, arguments);\r\n this.internalIsVisible = false;\r\n }\n\n if ( Vue ) Tooltip.__proto__ = Vue;\n Tooltip.prototype = Object.create( Vue && Vue.prototype );\n Tooltip.prototype.constructor = Tooltip;\n\n var prototypeAccessors = { showButton: { configurable: true },isOnDemandMode: { configurable: true },isOnMouseOverMode: { configurable: true },classList: { configurable: true },parentElement: { configurable: true } };\r\n prototypeAccessors.showButton.get = function () {\r\n return typeof this.buttonText === 'string' && this.buttonText.trim().length > 0;\r\n };\r\n prototypeAccessors.isOnDemandMode.get = function () {\r\n // @ts-ignore\r\n return Mode[this.mode] === Mode.OnDemand;\r\n };\r\n prototypeAccessors.isOnMouseOverMode.get = function () {\r\n // @ts-ignore\r\n return Mode[this.mode] === Mode.OnMouseOver;\r\n };\r\n prototypeAccessors.classList.get = function () {\r\n var list = ['Tooltip', (\"Tooltip--\" + (this.direction))];\r\n if (this.internalIsVisible === false) {\r\n list.push('Tooltip--hidden');\r\n }\r\n return list;\r\n };\r\n prototypeAccessors.parentElement.get = function () {\r\n // @ts-ignore\r\n return this.$el.parentElement;\r\n };\r\n Tooltip.prototype.button_click = function button_click () {\r\n if (typeof this.buttonAction === 'function') {\r\n this.buttonAction();\r\n }\r\n };\r\n Tooltip.prototype.close = function close () {\r\n this.internalIsVisible = false;\r\n };\r\n Tooltip.prototype.isVisible_updated = function isVisible_updated (value) {\r\n if (value === this.internalIsVisible)\r\n { return; }\r\n this.internalIsVisible = value;\r\n };\r\n Tooltip.prototype.getComputedStyle = function getComputedStyle (element) {\r\n return window.getComputedStyle(element);\r\n };\r\n Tooltip.prototype.showTooltip = function showTooltip () {\r\n this.internalIsVisible = true;\r\n };\r\n Tooltip.prototype.hideTooltip = function hideTooltip () {\r\n this.internalIsVisible = false;\r\n };\r\n Tooltip.prototype.mounted = function mounted () {\r\n if (this.parentElement === null) {\r\n throw new Error('Parent element cannot be null');\r\n }\r\n var position = this.getComputedStyle(this.parentElement).position;\r\n if ((position === 'relative' || position === 'absolute') === false) {\r\n throw new Error('The parent element must have relative or absolute position');\r\n }\r\n this.internalIsVisible = this.isVisible;\r\n if (this.isOnMouseOverMode) {\r\n this.parentElement.onmouseenter = this.showTooltip;\r\n this.parentElement.onmouseleave = this.hideTooltip;\r\n }\r\n };\n\n Object.defineProperties( Tooltip.prototype, prototypeAccessors );\n\n return Tooltip;\n}(Vue));\r\n__decorate([\r\n Prop({ default: 'OnDemand' })\r\n], Tooltip.prototype, \"mode\", void 0);\r\n__decorate([\r\n Prop()\r\n], Tooltip.prototype, \"title\", void 0);\r\n__decorate([\r\n Prop()\r\n], Tooltip.prototype, \"buttonText\", void 0);\r\n__decorate([\r\n Prop({ default: null })\r\n], Tooltip.prototype, \"buttonAction\", void 0);\r\n__decorate([\r\n Prop({ default: 'Right' })\r\n], Tooltip.prototype, \"direction\", void 0);\r\n__decorate([\r\n Prop({ default: false })\r\n], Tooltip.prototype, \"isVisible\", void 0);\r\n__decorate([\r\n Emit('close')\r\n], Tooltip.prototype, \"close\", null);\r\n__decorate([\r\n Watch('isVisible')\r\n], Tooltip.prototype, \"isVisible_updated\", null);\r\nTooltip = __decorate([\r\n Component({\r\n components: { Button: Button }\r\n })\r\n], Tooltip);\r\nvar script = Tooltip;\n\nfunction normalizeComponent(template, style, script, scopeId, isFunctionalTemplate, moduleIdentifier\n/* server only */\n, shadowMode, createInjector, createInjectorSSR, createInjectorShadow) {\n if (typeof shadowMode !== 'boolean') {\n createInjectorSSR = createInjector;\n createInjector = shadowMode;\n shadowMode = false;\n } // Vue.extend constructor export interop.\n\n\n var options = typeof script === 'function' ? script.options : script; // render functions\n\n if (template && template.render) {\n options.render = template.render;\n options.staticRenderFns = template.staticRenderFns;\n options._compiled = true; // functional template\n\n if (isFunctionalTemplate) {\n options.functional = true;\n }\n } // scopedId\n\n\n if (scopeId) {\n options._scopeId = scopeId;\n }\n\n var hook;\n\n if (moduleIdentifier) {\n // server build\n hook = function hook(context) {\n // 2.3 injection\n context = context || // cached call\n this.$vnode && this.$vnode.ssrContext || // stateful\n this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext; // functional\n // 2.2 with runInNewContext: true\n\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n context = __VUE_SSR_CONTEXT__;\n } // inject component styles\n\n\n if (style) {\n style.call(this, createInjectorSSR(context));\n } // register component module identifier for async chunk inference\n\n\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier);\n }\n }; // used by ssr in case component is cached and beforeCreate\n // never gets called\n\n\n options._ssrRegister = hook;\n } else if (style) {\n hook = shadowMode ? function () {\n style.call(this, createInjectorShadow(this.$root.$options.shadowRoot));\n } : function (context) {\n style.call(this, createInjector(context));\n };\n }\n\n if (hook) {\n if (options.functional) {\n // register for functional component in vue file\n var originalRender = options.render;\n\n options.render = function renderWithStyleInjection(h, context) {\n hook.call(context);\n return originalRender(h, context);\n };\n } else {\n // inject component registration as beforeCreate hook\n var existing = options.beforeCreate;\n options.beforeCreate = existing ? [].concat(existing, hook) : [hook];\n }\n }\n\n return script;\n}\n\nvar normalizeComponent_1 = normalizeComponent;\n\n/* script */\nvar __vue_script__ = script;\n\n/* template */\nvar __vue_render__ = function() {\n var _vm = this;\n var _h = _vm.$createElement;\n var _c = _vm._self._c || _h;\n return _c(\"div\", { class: _vm.classList }, [\n _c(\"div\", { staticClass: \"Tooltip__title\" }, [\n _vm._v(\"\\n \" + _vm._s(_vm.title) + \" \\n \"),\n _vm.isOnDemandMode\n ? _c(\"div\", {\n staticClass: \"Tooltip__title__close\",\n on: { click: _vm.close }\n })\n : _vm._e()\n ]),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"Tooltip__body\" }, [_vm._t(\"default\")], 2),\n _vm._v(\" \"),\n _vm.showButton\n ? _c(\n \"div\",\n { staticClass: \"Tooltip__footer\" },\n [\n _c(\"Button\", {\n attrs: { text: _vm.buttonText, type: \"Link\", color: \"Main\" },\n on: { click: _vm.button_click }\n })\n ],\n 1\n )\n : _vm._e()\n ])\n};\nvar __vue_staticRenderFns__ = [];\n__vue_render__._withStripped = true;\n\n /* style */\n var __vue_inject_styles__ = undefined;\n /* scoped */\n var __vue_scope_id__ = undefined;\n /* module identifier */\n var __vue_module_identifier__ = undefined;\n /* functional template */\n var __vue_is_functional_template__ = false;\n /* style inject */\n \n /* style inject SSR */\n \n\n \n var Tooltip$1 = normalizeComponent_1(\n { render: __vue_render__, staticRenderFns: __vue_staticRenderFns__ },\n __vue_inject_styles__,\n __vue_script__,\n __vue_scope_id__,\n __vue_is_functional_template__,\n __vue_module_identifier__,\n undefined,\n undefined\n );\n\nvar Enums = {\r\n Direction: Direction, Mode: Mode\r\n};\n\nexport { Enums, Tooltip$1 as Tooltip };\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport \"../scss/components/preferencesBlock.scss\";\nimport axios, { AxiosResponse, AxiosError } from \"axios\";\n\nimport { Watch, Prop, Component, Vue } from \"vue-property-decorator\";\nimport { SwitcherBlock } from \"@frontiers-vue/switcher\";\nimport { SearchDropDown } from \"@frontiers-vue/search-input\";\nimport { TagCloud, ITag, TagType } from \"@frontiers-vue/tag-cloud\";\nimport { Tooltip, Enums } from \"@frontiers-vue/tooltip\";\n\nimport { ISubscriptionType, ISubscriptionResource } from \"../core/models\";\nimport EventBus, {\n HIDE_TOOLTIP_EVENT,\n ACTIVATE_ALL_EVENT,\n SHOW_TOAST_MESSAGE\n} from \"../core/event-bus\";\n\n@Component({\n components: { SwitcherBlock, SearchDropDown, TagCloud, Tooltip }\n})\nexport default class PreferencesBlock extends Vue {\n private get tooltipDirection(): any {\n return this.windowWidth > 1420\n ? Enums.Direction.Right\n : Enums.Direction.Bottom;\n }\n\n private get tooltipStyles(): any {\n if (this.windowWidth > 1420 && this.elClickedParent !== null) {\n const topPosition = this.elClickedParent.offsetTop + 32;\n return { top: `${topPosition}px` };\n } else if (this.elClickedParent !== null) {\n const topPosition = this.elClickedParent.offsetTop + 55;\n return { top: `${topPosition}px` };\n }\n return null;\n }\n\n private get filteredFOSs(): any {\n const currentFOSs = this.currentFOSs;\n if (currentFOSs) {\n let result = this.articleAlertsFOS.filter(f => {\n return currentFOSs.find(f2 => f2.data.id === f.id) === undefined;\n });\n return result;\n } else {\n return [];\n }\n }\n\n private get currentFOSs(): any[] {\n const articleAlertsType = this.subscriptionTypes.find(f =>\n this.allowFOSResources(f)\n );\n\n return articleAlertsType ? articleAlertsType.subscribedToResources : [];\n }\n\n private get isDisabledFOSSelection(): boolean {\n const articleAlertsType = this.subscriptionTypes.find(f =>\n this.allowFOSResources(f)\n );\n return articleAlertsType ? !articleAlertsType?.isSubscribed : true;\n }\n\n @Prop({ required: true }) public id!: string;\n @Prop({ required: true }) public title!: string;\n @Prop({ required: true }) public description!: string;\n @Prop({ required: true }) public subscriptionTypes!: ISubscriptionType[];\n @Prop({ default: false }) private isDisabled!: boolean;\n\n private windowWidth: number = 0;\n private tooltipIsVisible: boolean = false;\n\n private inputText: string = \"\";\n private raiseError: boolean = false;\n\n private articleAlertsFOS: ISubscriptionResource[] = [];\n\n private newTag: string = \"\";\n\n private elClickedParent: HTMLElement | null = null;\n\n private switcherBlock_changed(\n subscriptionTypeId: number,\n stateOn: boolean\n ): void {\n const type = this.subscriptionTypes.find(\n f => f.subscriptionTypeId === subscriptionTypeId\n );\n if (type) {\n const okCallback = () => {\n type.isSubscribed = stateOn;\n };\n const koCallback = () => {\n stateOn = !stateOn;\n };\n\n this.manageSubscription(\n subscriptionTypeId,\n stateOn,\n okCallback,\n \"\",\n \"\",\n koCallback\n );\n } else {\n EventBus.$emit(SHOW_TOAST_MESSAGE, \"You miss some reference\", \"Error\");\n }\n }\n\n private allowFOSResources(subscriptionType: ISubscriptionType): boolean {\n return (\n subscriptionType.resourceType?.toLowerCase()?.trim() === \"fieldofstudy\" &&\n subscriptionType.isOptIn === true\n );\n }\n\n private tooltip_show(event: any): void {\n EventBus.$emit(HIDE_TOOLTIP_EVENT);\n this.tooltipIsVisible = true;\n this.elClickedParent = event.currentTarget.parentElement;\n }\n\n private reactivate_all(): void {\n EventBus.$emit(ACTIVATE_ALL_EVENT);\n this.tooltipIsVisible = false;\n }\n\n private tooltip_close(): void {\n this.tooltipIsVisible = false;\n }\n\n private searchDropDown_selectOption(\n type: ISubscriptionType,\n option: any\n ): void {\n const selectedTag: ITag = {\n text: option.value,\n type: TagType.Info,\n data: option\n };\n if (\n !type.subscribedToResources.find(\n resource => resource.data.id === option.id\n )\n ) {\n const okCallback = () => {\n type.subscribedToResources.push(selectedTag);\n };\n\n this.manageSubscription(\n type.subscriptionTypeId,\n true,\n okCallback,\n option.id,\n option.value\n );\n } else {\n EventBus.$emit(SHOW_TOAST_MESSAGE, \"You miss some reference\", \"Error\");\n }\n this.inputText = \"\";\n }\n\n private searchDropDown_reset(): void {\n this.inputText = \"\";\n }\n\n private tagCloud_remove(type: ISubscriptionType, index: number): void {\n let element = type.subscribedToResources[index].data;\n const okCallback = () => {\n type.subscribedToResources.splice(index, 1);\n };\n\n this.manageSubscription(\n type.subscriptionTypeId,\n false,\n okCallback,\n element.id,\n element.value\n );\n }\n\n private loadKeywords(): void { \n const url = `/emails/api/v1/fieldsOfStudy`;\n axios\n .get(url)\n .then((response: AxiosResponse) => {\n this.articleAlertsFOS = response.data as ISubscriptionResource[];\n this.articleAlertsFOS.sort((a, b) => (a.value > b.value) ? 1 : ((b.value > a.value) ? -1 : 0)); \n })\n .catch((reason: AxiosError) => {\n EventBus.$emit(SHOW_TOAST_MESSAGE, \"Something went wrong retrieving Article Alerts fields\", \"Error\");\n });\n }\n\n @Watch(\"subscriptionTypes\")\n private subscriptionTypes_updated(): void {\n //tTHIS.SELECTEDFOS = his.subscriptionTypes.find('ARTICLES')?.resources.MAP(M => M);\n }\n\n @Watch(\"isDisabled\")\n private desactivateAllSwitchers(value: boolean): void {\n if (!value) {\n this.tooltipIsVisible = false;\n }\n }\n\n private setWindowWidth(): void {\n this.windowWidth = window.innerWidth;\n }\n\n private mounted(): void {\n window.addEventListener(\"resize\", this.setWindowWidth);\n EventBus.$on(HIDE_TOOLTIP_EVENT, () => {\n this.tooltipIsVisible = false;\n });\n }\n\n private created(): void {\n if (this.subscriptionTypes.find(f =>\n this.allowFOSResources(f))){\n this.loadKeywords();\n }\n this.setWindowWidth();\n this.tooltipIsVisible = false;\n }\n\n private beforeDestroy(): void {\n window.removeEventListener(\"resize\", this.setWindowWidth);\n }\n\n private manageSubscription(\n subscriptionId: number,\n switchOn: boolean,\n okCallback: any,\n resourceId: string = \"\",\n resourceValue: string = \"\",\n errCallback: any = undefined\n ): void {\n let token = encodeURIComponent(this.$route.params.urlKey) as string | null;\n\n if (!token || token === \"undefined\") {\n token = null;\n }\n\n let url = \"/emails/api/v1/\";\n let data: any = {\n UrlKey: token,\n SubscriptionTypeId: subscriptionId,\n ResourceId: resourceId.toString()\n };\n\n if (switchOn) {\n url += `subscribe`;\n data.ResourceValue = resourceValue.toString();\n } else {\n url += `unsubscribe`;\n }\n\n axios\n .post(url, data)\n .then(response => {\n EventBus.$emit(\n SHOW_TOAST_MESSAGE,\n \"Your changes are saved automatically\",\n \"Info\"\n );\n if (typeof okCallback === \"function\") {\n okCallback();\n }\n })\n .catch((error: AxiosError) => {\n // rollback the change\n EventBus.$emit(SHOW_TOAST_MESSAGE, \"Something went wrong\", \"Error\");\n if (typeof errCallback === \"function\") {\n errCallback();\n }\n });\n }\n}\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PreferencesBlock.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PreferencesBlock.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PreferencesBlock.vue?vue&type=template&id=c2dbe91e&\"\nimport script from \"./PreferencesBlock.vue?vue&type=script&lang=ts&\"\nexport * from \"./PreferencesBlock.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport axios, { AxiosResponse, AxiosError } from 'axios';\nimport EventBus, { ACTIVATE_ALL_EVENT, SHOW_TOAST_MESSAGE } from '../core/event-bus';\nimport { ApiErrorHandler } from '../common/ApiErrorHandler';\nimport { Component, Vue } from 'vue-property-decorator';\nimport { Scroll } from '../directives/Scroll';\nimport { LayoutSideMenu } from '@frontiers-vue/layout';\nimport { SideMenu, SideMenuItem } from '@frontiers-vue/side-menu';\nimport { SwitcherBlock } from '@frontiers-vue/switcher';\nimport PreferencesBlock from '../components/PreferencesBlock.vue';\nimport { ISubscriptionBlock, ISubscriptionPreferences } from '../core/models';\n\n@Component({\n components: {\n LayoutSideMenu, SideMenu, SideMenuItem, SwitcherBlock,\n PreferencesBlock,\n },\n directives: {\n scroll: new Scroll(),\n },\n})\nexport default class Preferences extends Vue {\n private get getRefNameLastBlock(): string {\n return this.getRefName(this.subscriptionPreferences[this.subscriptionPreferences.length - 1]);\n }\n\n private isFromEmail: boolean = false;\n private subscriptionPreferences: ISubscriptionBlock[] = [];\n private isOnGlobalSwitcher: boolean = true; \n private allDisabled: boolean = false;\n private queryString: string = '';\n private email: string = '';\n\n private globalSwitcher_changed(code: string, stateOff: boolean): void {\n this.isOnGlobalSwitcher = stateOff;\n this.allDisabled = !stateOff;\n this.saveGlobalStatus(!stateOff);\n }\n\n private activateGlobalSwitcher(): void {\n this.isOnGlobalSwitcher = true;\n this.allDisabled = false;\n this.saveGlobalStatus(false);\n }\n\n private saveGlobalStatus(globalUnsubscribeDisabled: boolean): void {\n\n let url = '';\n\n if (!globalUnsubscribeDisabled) {\n url = `/emails/api/v1/global-unsubscribe-remove`;\n } else {\n url = `/emails/api/v1/global-unsubscribe-add`;\n }\n\n const token = encodeURIComponent(this.$route.params.urlKey);\n\n let data;\n if (token && token !== 'undefined') {\n data = {\n UrlKey: token\n };\n } else {\n data = {\n UrlKey: null\n };\n }\n\n axios.post(url, data)\n .then((response) => {\n EventBus.$emit(SHOW_TOAST_MESSAGE, 'Your changes are saved automatically', 'Info');\n })\n .catch((error: AxiosError) => {\n EventBus.$emit(SHOW_TOAST_MESSAGE, 'Something went wrong', 'Error');\n });\n }\n\n private getPathWithHash(block: ISubscriptionBlock): string {\n return `${window.location.pathname}${this.queryString.length > 0 ?\n '?' : ''}${this.queryString}#${this.getRefName(block)}`;\n }\n\n private smoothScroll(refId: string): void {\n const section = this.$refs[refId] as HTMLElement[];\n const windowWidth = window.innerWidth;\n\n const adjustmentTop = windowWidth > 768 ? 80 : 66;\n // in mobile we have to wait until the menu is closed\n const timeOutMenu = windowWidth > 768 ? 0 : 410; // 400: time transition to hide the menu\n\n setTimeout(() => {\n const sectionPosition = section[0].offsetTop;\n const offsetPosition = sectionPosition - adjustmentTop;\n\n const supportsNativeSmoothScroll = 'scrollBehavior' in document.documentElement.style;\n\n if (supportsNativeSmoothScroll) {\n window.scrollTo({\n top: offsetPosition,\n behavior: 'smooth',\n });\n } else {\n window.scrollTo(0, offsetPosition);\n }\n\n }, timeOutMenu);\n }\n\n private loadSubcriptionPreferences(): void {\n const token = encodeURIComponent(this.$route.params.urlKey);\n let url = `/emails/api/v1/preferences`;\n\n if (token && token !== 'undefined') {\n this.isFromEmail = true;\n url = url + `/${token}`;\n }\n\n axios.get(url)\n .then((response: AxiosResponse) => {\n this.email = response.data.email;\n this.isOnGlobalSwitcher = !response.data.isGloballyUnsubscribed;\n this.allDisabled = response.data.isGloballyUnsubscribed;\n this.subscriptionPreferences = response.data.categories;\n this.setStatusBaseOnUrl();\n })\n .catch((error: AxiosError) => {\n ApiErrorHandler.handleApiError(error, this.$router); \n });\n }\n\n private getRefName(block: ISubscriptionBlock) {\n return 'block' + block.categoryId;\n }\n\n private setStatusBaseOnUrl(): void {\n const queryParts = [];\n for (const prop of Object.keys(this.$route.query)) {\n queryParts.push(`${prop}=${this.$route.query[prop]}`);\n }\n this.queryString = queryParts.join('&');\n\n if (this.queryString === 'wf=fromEmail') { this.isFromEmail = true; }\n\n let hash = this.$route.hash.toLowerCase();\n\n if (!hash) {\n hash = '#block' + this.subscriptionPreferences[0].categoryId;\n this.$router.push({ hash });\n }\n setTimeout(() => {\n this.smoothScroll(hash.substring(1));\n }, 10);\n }\n\n private created(): void {\n document.title = this.$route.meta.title;\n this.loadSubcriptionPreferences();\n EventBus.$on(ACTIVATE_ALL_EVENT, this.activateGlobalSwitcher);\n }\n}\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Preferences.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Preferences.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Preferences.vue?vue&type=template&id=4ae1131c&\"\nimport script from \"./Preferences.vue?vue&type=script&lang=ts&\"\nexport * from \"./Preferences.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = function (METHOD_NAME, argument) {\n var method = [][METHOD_NAME];\n return !!method && fails(function () {\n // eslint-disable-next-line no-useless-call,no-throw-literal\n method.call(null, argument || function () { throw 1; }, 1);\n });\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar has = require('../internals/has');\n\nvar defineProperty = Object.defineProperty;\nvar cache = {};\n\nvar thrower = function (it) { throw it; };\n\nmodule.exports = function (METHOD_NAME, options) {\n if (has(cache, METHOD_NAME)) return cache[METHOD_NAME];\n if (!options) options = {};\n var method = [][METHOD_NAME];\n var ACCESSORS = has(options, 'ACCESSORS') ? options.ACCESSORS : false;\n var argument0 = has(options, 0) ? options[0] : thrower;\n var argument1 = has(options, 1) ? options[1] : undefined;\n\n return cache[METHOD_NAME] = !!method && !fails(function () {\n if (ACCESSORS && !DESCRIPTORS) return true;\n var O = { length: -1 };\n\n if (ACCESSORS) defineProperty(O, 1, { enumerable: true, get: thrower });\n else O[1] = 1;\n\n method.call(O, argument0, argument1);\n });\n};\n","var $ = require('../internals/export');\nvar toObject = require('../internals/to-object');\nvar nativeKeys = require('../internals/object-keys');\nvar fails = require('../internals/fails');\n\nvar FAILS_ON_PRIMITIVES = fails(function () { nativeKeys(1); });\n\n// `Object.keys` method\n// https://tc39.github.io/ecma262/#sec-object.keys\n$({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES }, {\n keys: function keys(it) {\n return nativeKeys(toObject(it));\n }\n});\n","var fails = require('../internals/fails');\nvar whitespaces = require('../internals/whitespaces');\n\nvar non = '\\u200B\\u0085\\u180E';\n\n// check that a method works with the correct list\n// of whitespaces and has a correct name\nmodule.exports = function (METHOD_NAME) {\n return fails(function () {\n return !!whitespaces[METHOD_NAME]() || non[METHOD_NAME]() != non || whitespaces[METHOD_NAME].name !== METHOD_NAME;\n });\n};\n"],"sourceRoot":""}