{"version":3,"sources":["../node_modules/core-js/modules/_global.js","../node_modules/core-js/modules/_has.js","../node_modules/core-js/modules/_fails.js","../node_modules/core-js/modules/_descriptors.js","../node_modules/core-js/modules/_core.js","../node_modules/core-js/modules/_is-object.js","../node_modules/core-js/modules/_an-object.js","../node_modules/core-js/modules/_dom-create.js","../node_modules/core-js/modules/_ie8-dom-define.js","../node_modules/core-js/modules/_to-primitive.js","../node_modules/core-js/modules/_object-dp.js","../node_modules/core-js/modules/_property-desc.js","../node_modules/core-js/modules/_hide.js","../node_modules/core-js/modules/_uid.js","../node_modules/core-js/modules/_library.js","../node_modules/core-js/modules/_shared.js","../node_modules/core-js/modules/_function-to-string.js","../node_modules/core-js/modules/_redefine.js","../node_modules/core-js/modules/_a-function.js","../node_modules/core-js/modules/_ctx.js","../node_modules/core-js/modules/_export.js","../node_modules/core-js/modules/_meta.js","../node_modules/core-js/modules/_wks.js","../node_modules/core-js/modules/_set-to-string-tag.js","../node_modules/core-js/modules/_wks-ext.js","../node_modules/core-js/modules/_wks-define.js","../node_modules/core-js/modules/_cof.js","../node_modules/core-js/modules/_iobject.js","../node_modules/core-js/modules/_defined.js","../node_modules/core-js/modules/_to-iobject.js","../node_modules/core-js/modules/_to-integer.js","../node_modules/core-js/modules/_to-length.js","../node_modules/core-js/modules/_to-absolute-index.js","../node_modules/core-js/modules/_array-includes.js","../node_modules/core-js/modules/_shared-key.js","../node_modules/core-js/modules/_object-keys-internal.js","../node_modules/core-js/modules/_enum-bug-keys.js","../node_modules/core-js/modules/_object-keys.js","../node_modules/core-js/modules/_object-gops.js","../node_modules/core-js/modules/_object-pie.js","../node_modules/core-js/modules/_enum-keys.js","../node_modules/core-js/modules/_is-array.js","../node_modules/core-js/modules/_object-dps.js","../node_modules/core-js/modules/_html.js","../node_modules/core-js/modules/_object-create.js","../node_modules/core-js/modules/_object-gopn.js","../node_modules/core-js/modules/_object-gopn-ext.js","../node_modules/core-js/modules/_object-gopd.js","../node_modules/core-js/modules/es6.symbol.js","../node_modules/core-js/modules/_classof.js","../node_modules/core-js/modules/es6.object.to-string.js","../node_modules/core-js/es6/symbol.js","../node_modules/core-js/modules/_string-at.js","../node_modules/core-js/modules/_iterators.js","../node_modules/core-js/modules/_iter-create.js","../node_modules/core-js/modules/_to-object.js","../node_modules/core-js/modules/_object-gpo.js","../node_modules/core-js/modules/_iter-define.js","../node_modules/core-js/modules/es6.string.iterator.js","../node_modules/core-js/modules/_add-to-unscopables.js","../node_modules/core-js/modules/_iter-step.js","../node_modules/core-js/modules/es6.array.iterator.js","../node_modules/core-js/modules/web.dom.iterable.js","../node_modules/core-js/fn/symbol/iterator.js","lib/Utilities.js","lib/Filter.js","lib/InsertScriptFilter.js","lib/ScriptTagFilter.js","lib/WrapperFilter.js","lib/LocalCookieFilter.js","../node_modules/redom/dist/redom.es.js","lib/Language.js","lib/Interface.js","lib/Configuration.js","lib/RemoveCookies.js","lib/CookieConsent.js","index.js"],"names":["Utilities","fn","document","attachEvent","readyState","addEventListener","obj","Object","prototype","toString","call","slice","col","amt","usePound","num","parseInt","r","b","g","cookie","category","categories","window","CookieConsent","key","config","services","push","elem","event","Event","createEvent","initEvent","dispatchEvent","Filter","type","service","needed","wanted","blacklist","objectType","search","i","length","InsertScriptFilter","overrideAppendChild","overrideInsertBefore","Element","appendChild","arguments","tagName","outerHTML","indexOf","buffer","undefined","Node","apply","insertBefore","ScriptTagFilter","filterTags","ready","scriptTags","querySelectorAll","scriptTag","dataset","consent","newtag","createElement","parentNode","attributes","attribute","setAttribute","nodeName","nodeValue","innerHTML","removeChild","WrapperFilter","filterWrappers","wrapper","name","callback","LocalCookieFilter","filterlocalCookies","cookieDescriptor","getOwnPropertyDescriptor","HTMLDocument","get","__lookupGetter__","set","__lookupSetter__","getCookieDescriptor","defineProperty","configurable","cookieArguments","cookieName","split","Array","forEach","blacklistItem","HASH","charCodeAt","DOT","TAG_NAME","ID","CLASS_NAME","parseQuery","query","tag","id","className","mode","offset","char","isHash","isDot","isEnd","substring","ns","ref","element","createElementNS","unmount","parent","child","parentEl","getEl","childEl","__redom_view","doUnmount","hooks","__redom_lifecycle","hooksAreEmpty","__redom_mounted","traverse","trigger","parentHooks","hook","hookNames","shadowRootAvailable","mount","before","replace","wasMounted","oldParent","replaceChild","doMount","remount","hooksFound","list","hookName","triggered","ShadowRoot","el","eventName","view","hookCount","firstChild","next","nextSibling","setStyle","arg1","arg2","style","xlinkns","setAttr","isSVG","SVGElement","isFunc","setData","setXlink","setAttributeNS","text","str","createTextNode","parseArguments","args","arg","isNode","ensureEl","html","nodeType","a","htmlCache","memoizeHTML","len","cloneNode","Query","Function","bind","concat","Error","extend","clone","h","setChildren","children","current","_current","childEls","i$1","exists","__redom_index","propKey","item","listPool","View","initData","ListPool","oldLookup","lookup","oldViews","views","update","data","context","keySet","newLookup","newViews","__redom_id","List","__redom_list","pool","ref$1","oldView","place","Place","visible","_placeholder","_el","_View","_initData","placeholder","router","Views","Router","route","svgCache","memoizeSVG","svg","s","Language","locale","language","object","currentLocale","hasOwnProperty","Interface","elements","theme","barColor","barTextColor","barMainButtonTextColor","barMainButtonColor","modalMainButtonColor","modalMainButtonTextColor","lightenDarkenColor","getTranslation","showRejectAllButton","listCookies","listItems","modalTabGroups","contentItems","checked","version","preserveAspectRatio","viewBox","class","d","modalMainTextMoreLink","href","target","rel","tabGroups","tabGroup","classList","contains","add","querySelector","remove","insertedElem","body","that","render","buildStyle","buildBar","bar","cookieExists","setTimeout","barTimeout","buildModal","buttonConsentGive","button","writeBufferToDOM","buildCookie","setCookie","modalRedrawIcons","buttonConsentReject","getElementsByClassName","edit","getDlParent","eventTarget","parentDl","dt","getElementById","switchElements","switchElement","action","this","lastChild","cookieVersion","listGlobalServices","expires_in","Date","now","toUTCString","JSON","stringify","Configuration","configObject","setConfiguration","active","en","barMainText","barLinkSetting","barBtnAcceptAll","barBtnRejectAll","modalMainTitle","modalMainText","modalBtnSave","modalBtnAcceptAll","modalBtnRejectAll","modalAffectedSolutions","learnMore","on","off","cs","hu","console","log","mergeDeep","cookieToConfig","removeReload","removeCookie","location","reload","filter","cookieData","parse","isArray","sources","source","shift","isObject","assign","RemoveCookies","removeUnwantedCookies","cookieList","map","cookies","cookieDef","c","match","domain","removeCookies","insertScriptFilter","scriptTagFilter","wrapperFilter","localCookieFilter","init","UI","buildInterface","addEventListeners","cookieConsent"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;;ACJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACPA;AACA;AACA;AACA;AACA;;ACJA;AACA;AACA;;ACFA;AACA;AACA;AACA;;ACHA;AACA;AACA;AACA;AACA;AACA;;ACLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACPA;AACA;AACA;AACA;;ACHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACRA;AACA;AACA;AACA;AACA;AACA;;ACLA;AACA;;;ACDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACZA;AACA;;;ACDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC/BA;AACA;AACA;AACA;AACA;;ACJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;ACpBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACPA;AACA;;;ACDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACTA;AACA;AACA;AACA;AACA;AACA;;ACLA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;;ACLA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvBA;AACA;AACA;AACA;AACA;AACA;;ACLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;;ACJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACPA;AACA;;ACDA;AACA;;ACDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACfA;AACA;AACA;AACA;AACA;AACA;;ACLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACbA;AACA;AACA;;ACFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1OA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACVA;AACA;AACA;AACA;;ACHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;;ACDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACbA;AACA;AACA;AACA;AACA;AACA;;ACLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACbA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACPA;AACA;AACA;AACA;;ACHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AClCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1DA;AACA;AACA;AACA;;;;;;;;;;;;;;;ICHqBA;;;;;;;WAEnB,eAAaC,EAAb,EAAiB;AACf,UAAIC,QAAQ,CAACC,WAAT,GAAuBD,QAAQ,CAACE,UAAT,KAAwB,UAA/C,GAA4DF,QAAQ,CAACE,UAAT,KAAwB,SAAxF,EAAkG;AAChGH,QAAAA,EAAE;AACH,OAFD,MAEO;AACLC,QAAAA,QAAQ,CAACG,gBAAT,CAA0B,kBAA1B,EAA8CJ,EAA9C;AACD;AACF;;;WAED,oBAAkBK,GAAlB,EAAsB;AACpB,aAAOC,MAAM,CAACC,SAAP,CAAiBC,QAAjB,CAA0BC,IAA1B,CAA+BJ,GAA/B,EAAoCK,KAApC,CAA0C,CAA1C,EAA6C,CAAC,CAA9C,CAAP;AACD;;;WAED,4BAA0BC,GAA1B,EAA+B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","file":"cookieconsent.js","sourceRoot":"..\\src","sourcesContent":["// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nvar global = module.exports = typeof window != 'undefined' && window.Math == Math\n ? window : typeof self != 'undefined' && self.Math == Math ? self\n // eslint-disable-next-line no-new-func\n : Function('return this')();\nif (typeof __g == 'number') __g = global; // eslint-disable-line no-undef\n","var hasOwnProperty = {}.hasOwnProperty;\nmodule.exports = function (it, key) {\n return hasOwnProperty.call(it, key);\n};\n","module.exports = function (exec) {\n try {\n return !!exec();\n } catch (e) {\n return true;\n }\n};\n","// Thank's IE8 for his funny defineProperty\nmodule.exports = !require('./_fails')(function () {\n return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;\n});\n","var core = module.exports = { version: '2.6.5' };\nif (typeof __e == 'number') __e = core; // eslint-disable-line no-undef\n","module.exports = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n","var isObject = require('./_is-object');\nmodule.exports = function (it) {\n if (!isObject(it)) throw TypeError(it + ' is not an object!');\n return it;\n};\n","var isObject = require('./_is-object');\nvar document = require('./_global').document;\n// typeof document.createElement is 'object' in old IE\nvar is = isObject(document) && isObject(document.createElement);\nmodule.exports = function (it) {\n return is ? document.createElement(it) : {};\n};\n","module.exports = !require('./_descriptors') && !require('./_fails')(function () {\n return Object.defineProperty(require('./_dom-create')('div'), 'a', { get: function () { return 7; } }).a != 7;\n});\n","// 7.1.1 ToPrimitive(input [, PreferredType])\nvar isObject = require('./_is-object');\n// instead of the ES6 spec version, we didn't implement @@toPrimitive case\n// and the second argument - flag - preferred type is a string\nmodule.exports = function (it, S) {\n if (!isObject(it)) return it;\n var fn, val;\n if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;\n if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;\n if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;\n throw TypeError(\"Can't convert object to primitive value\");\n};\n","var anObject = require('./_an-object');\nvar IE8_DOM_DEFINE = require('./_ie8-dom-define');\nvar toPrimitive = require('./_to-primitive');\nvar dP = Object.defineProperty;\n\nexports.f = require('./_descriptors') ? Object.defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPrimitive(P, true);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return dP(O, P, Attributes);\n } catch (e) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","module.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","var dP = require('./_object-dp');\nvar createDesc = require('./_property-desc');\nmodule.exports = require('./_descriptors') ? function (object, key, value) {\n return dP.f(object, key, createDesc(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","var id = 0;\nvar px = Math.random();\nmodule.exports = function (key) {\n return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));\n};\n","module.exports = false;\n","var core = require('./_core');\nvar global = require('./_global');\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || (global[SHARED] = {});\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: core.version,\n mode: require('./_library') ? 'pure' : 'global',\n copyright: '© 2019 Denis Pushkarev (zloirock.ru)'\n});\n","module.exports = require('./_shared')('native-function-to-string', Function.toString);\n","var global = require('./_global');\nvar hide = require('./_hide');\nvar has = require('./_has');\nvar SRC = require('./_uid')('src');\nvar $toString = require('./_function-to-string');\nvar TO_STRING = 'toString';\nvar TPL = ('' + $toString).split(TO_STRING);\n\nrequire('./_core').inspectSource = function (it) {\n return $toString.call(it);\n};\n\n(module.exports = function (O, key, val, safe) {\n var isFunction = typeof val == 'function';\n if (isFunction) has(val, 'name') || hide(val, 'name', key);\n if (O[key] === val) return;\n if (isFunction) has(val, SRC) || hide(val, SRC, O[key] ? '' + O[key] : TPL.join(String(key)));\n if (O === global) {\n O[key] = val;\n } else if (!safe) {\n delete O[key];\n hide(O, key, val);\n } else if (O[key]) {\n O[key] = val;\n } else {\n hide(O, key, val);\n }\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n})(Function.prototype, TO_STRING, function toString() {\n return typeof this == 'function' && this[SRC] || $toString.call(this);\n});\n","module.exports = function (it) {\n if (typeof it != 'function') throw TypeError(it + ' is not a function!');\n return it;\n};\n","// optional / simple context binding\nvar aFunction = require('./_a-function');\nmodule.exports = function (fn, that, length) {\n aFunction(fn);\n if (that === undefined) return fn;\n switch (length) {\n case 1: return function (a) {\n return fn.call(that, a);\n };\n case 2: return function (a, b) {\n return fn.call(that, a, b);\n };\n case 3: return function (a, b, c) {\n return fn.call(that, a, b, c);\n };\n }\n return function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","var global = require('./_global');\nvar core = require('./_core');\nvar hide = require('./_hide');\nvar redefine = require('./_redefine');\nvar ctx = require('./_ctx');\nvar PROTOTYPE = 'prototype';\n\nvar $export = function (type, name, source) {\n var IS_FORCED = type & $export.F;\n var IS_GLOBAL = type & $export.G;\n var IS_STATIC = type & $export.S;\n var IS_PROTO = type & $export.P;\n var IS_BIND = type & $export.B;\n var target = IS_GLOBAL ? global : IS_STATIC ? global[name] || (global[name] = {}) : (global[name] || {})[PROTOTYPE];\n var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});\n var expProto = exports[PROTOTYPE] || (exports[PROTOTYPE] = {});\n var key, own, out, exp;\n if (IS_GLOBAL) source = name;\n for (key in source) {\n // contains in native\n own = !IS_FORCED && target && target[key] !== undefined;\n // export native or passed\n out = (own ? target : source)[key];\n // bind timers to global for call from export context\n exp = IS_BIND && own ? ctx(out, global) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;\n // extend global\n if (target) redefine(target, key, out, type & $export.U);\n // export\n if (exports[key] != out) hide(exports, key, exp);\n if (IS_PROTO && expProto[key] != out) expProto[key] = out;\n }\n};\nglobal.core = core;\n// type bitmap\n$export.F = 1; // forced\n$export.G = 2; // global\n$export.S = 4; // static\n$export.P = 8; // proto\n$export.B = 16; // bind\n$export.W = 32; // wrap\n$export.U = 64; // safe\n$export.R = 128; // real proto method for `library`\nmodule.exports = $export;\n","var META = require('./_uid')('meta');\nvar isObject = require('./_is-object');\nvar has = require('./_has');\nvar setDesc = require('./_object-dp').f;\nvar id = 0;\nvar isExtensible = Object.isExtensible || function () {\n return true;\n};\nvar FREEZE = !require('./_fails')(function () {\n return isExtensible(Object.preventExtensions({}));\n});\nvar setMeta = function (it) {\n setDesc(it, META, { value: {\n i: 'O' + ++id, // object ID\n w: {} // weak collections IDs\n } });\n};\nvar fastKey = function (it, create) {\n // return primitive with prefix\n if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;\n if (!has(it, META)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return 'F';\n // not necessary to add metadata\n if (!create) return 'E';\n // add missing metadata\n setMeta(it);\n // return object ID\n } return it[META].i;\n};\nvar getWeak = function (it, create) {\n if (!has(it, META)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return true;\n // not necessary to add metadata\n if (!create) return false;\n // add missing metadata\n setMeta(it);\n // return hash weak collections IDs\n } return it[META].w;\n};\n// add metadata on freeze-family methods calling\nvar onFreeze = function (it) {\n if (FREEZE && meta.NEED && isExtensible(it) && !has(it, META)) setMeta(it);\n return it;\n};\nvar meta = module.exports = {\n KEY: META,\n NEED: false,\n fastKey: fastKey,\n getWeak: getWeak,\n onFreeze: onFreeze\n};\n","var store = require('./_shared')('wks');\nvar uid = require('./_uid');\nvar Symbol = require('./_global').Symbol;\nvar USE_SYMBOL = typeof Symbol == 'function';\n\nvar $exports = module.exports = function (name) {\n return store[name] || (store[name] =\n USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));\n};\n\n$exports.store = store;\n","var def = require('./_object-dp').f;\nvar has = require('./_has');\nvar TAG = require('./_wks')('toStringTag');\n\nmodule.exports = function (it, tag, stat) {\n if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag });\n};\n","exports.f = require('./_wks');\n","var global = require('./_global');\nvar core = require('./_core');\nvar LIBRARY = require('./_library');\nvar wksExt = require('./_wks-ext');\nvar defineProperty = require('./_object-dp').f;\nmodule.exports = function (name) {\n var $Symbol = core.Symbol || (core.Symbol = LIBRARY ? {} : global.Symbol || {});\n if (name.charAt(0) != '_' && !(name in $Symbol)) defineProperty($Symbol, name, { value: wksExt.f(name) });\n};\n","var toString = {}.toString;\n\nmodule.exports = function (it) {\n return toString.call(it).slice(8, -1);\n};\n","// fallback for non-array-like ES3 and non-enumerable old V8 strings\nvar cof = require('./_cof');\n// eslint-disable-next-line no-prototype-builtins\nmodule.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {\n return cof(it) == 'String' ? it.split('') : Object(it);\n};\n","// 7.2.1 RequireObjectCoercible(argument)\nmodule.exports = function (it) {\n if (it == undefined) throw TypeError(\"Can't call method on \" + it);\n return it;\n};\n","// to indexed object, toObject with fallback for non-array-like ES3 strings\nvar IObject = require('./_iobject');\nvar defined = require('./_defined');\nmodule.exports = function (it) {\n return IObject(defined(it));\n};\n","// 7.1.4 ToInteger\nvar ceil = Math.ceil;\nvar floor = Math.floor;\nmodule.exports = function (it) {\n return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);\n};\n","// 7.1.15 ToLength\nvar toInteger = require('./_to-integer');\nvar min = Math.min;\nmodule.exports = function (it) {\n return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991\n};\n","var toInteger = require('./_to-integer');\nvar max = Math.max;\nvar min = Math.min;\nmodule.exports = function (index, length) {\n index = toInteger(index);\n return index < 0 ? max(index + length, 0) : min(index, length);\n};\n","// false -> Array#indexOf\n// true -> Array#includes\nvar toIObject = require('./_to-iobject');\nvar toLength = require('./_to-length');\nvar toAbsoluteIndex = require('./_to-absolute-index');\nmodule.exports = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIObject($this);\n var length = toLength(O.length);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare\n if (IS_INCLUDES && el != el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare\n if (value != value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) if (IS_INCLUDES || index in O) {\n if (O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n","var shared = require('./_shared')('keys');\nvar uid = require('./_uid');\nmodule.exports = function (key) {\n return shared[key] || (shared[key] = uid(key));\n};\n","var has = require('./_has');\nvar toIObject = require('./_to-iobject');\nvar arrayIndexOf = require('./_array-includes')(false);\nvar IE_PROTO = require('./_shared-key')('IE_PROTO');\n\nmodule.exports = function (object, names) {\n var O = toIObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (has(O, key = names[i++])) {\n ~arrayIndexOf(result, key) || result.push(key);\n }\n return result;\n};\n","// IE 8- don't enum bug keys\nmodule.exports = (\n 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'\n).split(',');\n","// 19.1.2.14 / 15.2.3.14 Object.keys(O)\nvar $keys = require('./_object-keys-internal');\nvar enumBugKeys = require('./_enum-bug-keys');\n\nmodule.exports = Object.keys || function keys(O) {\n return $keys(O, enumBugKeys);\n};\n","exports.f = Object.getOwnPropertySymbols;\n","exports.f = {}.propertyIsEnumerable;\n","// all enumerable object keys, includes symbols\nvar getKeys = require('./_object-keys');\nvar gOPS = require('./_object-gops');\nvar pIE = require('./_object-pie');\nmodule.exports = function (it) {\n var result = getKeys(it);\n var getSymbols = gOPS.f;\n if (getSymbols) {\n var symbols = getSymbols(it);\n var isEnum = pIE.f;\n var i = 0;\n var key;\n while (symbols.length > i) if (isEnum.call(it, key = symbols[i++])) result.push(key);\n } return result;\n};\n","// 7.2.2 IsArray(argument)\nvar cof = require('./_cof');\nmodule.exports = Array.isArray || function isArray(arg) {\n return cof(arg) == 'Array';\n};\n","var dP = require('./_object-dp');\nvar anObject = require('./_an-object');\nvar getKeys = require('./_object-keys');\n\nmodule.exports = require('./_descriptors') ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var keys = getKeys(Properties);\n var length = keys.length;\n var i = 0;\n var P;\n while (length > i) dP.f(O, P = keys[i++], Properties[P]);\n return O;\n};\n","var document = require('./_global').document;\nmodule.exports = document && document.documentElement;\n","// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])\nvar anObject = require('./_an-object');\nvar dPs = require('./_object-dps');\nvar enumBugKeys = require('./_enum-bug-keys');\nvar IE_PROTO = require('./_shared-key')('IE_PROTO');\nvar Empty = function () { /* empty */ };\nvar PROTOTYPE = 'prototype';\n\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\nvar createDict = function () {\n // Thrash, waste and sodomy: IE GC bug\n var iframe = require('./_dom-create')('iframe');\n var i = enumBugKeys.length;\n var lt = '<';\n var gt = '>';\n var iframeDocument;\n iframe.style.display = 'none';\n require('./_html').appendChild(iframe);\n iframe.src = 'javascript:'; // eslint-disable-line no-script-url\n // createDict = iframe.contentWindow.Object;\n // html.removeChild(iframe);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt);\n iframeDocument.close();\n createDict = iframeDocument.F;\n while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]];\n return createDict();\n};\n\nmodule.exports = Object.create || function create(O, Properties) {\n var result;\n if (O !== null) {\n Empty[PROTOTYPE] = anObject(O);\n result = new Empty();\n Empty[PROTOTYPE] = null;\n // add \"__proto__\" for Object.getPrototypeOf polyfill\n result[IE_PROTO] = O;\n } else result = createDict();\n return Properties === undefined ? result : dPs(result, Properties);\n};\n","// 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)\nvar $keys = require('./_object-keys-internal');\nvar hiddenKeys = require('./_enum-bug-keys').concat('length', 'prototype');\n\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return $keys(O, hiddenKeys);\n};\n","// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window\nvar toIObject = require('./_to-iobject');\nvar gOPN = require('./_object-gopn').f;\nvar toString = {}.toString;\n\nvar windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames\n ? Object.getOwnPropertyNames(window) : [];\n\nvar getWindowNames = function (it) {\n try {\n return gOPN(it);\n } catch (e) {\n return windowNames.slice();\n }\n};\n\nmodule.exports.f = function getOwnPropertyNames(it) {\n return windowNames && toString.call(it) == '[object Window]' ? getWindowNames(it) : gOPN(toIObject(it));\n};\n","var pIE = require('./_object-pie');\nvar createDesc = require('./_property-desc');\nvar toIObject = require('./_to-iobject');\nvar toPrimitive = require('./_to-primitive');\nvar has = require('./_has');\nvar IE8_DOM_DEFINE = require('./_ie8-dom-define');\nvar gOPD = Object.getOwnPropertyDescriptor;\n\nexports.f = require('./_descriptors') ? gOPD : function getOwnPropertyDescriptor(O, P) {\n O = toIObject(O);\n P = toPrimitive(P, true);\n if (IE8_DOM_DEFINE) try {\n return gOPD(O, P);\n } catch (e) { /* empty */ }\n if (has(O, P)) return createDesc(!pIE.f.call(O, P), O[P]);\n};\n","'use strict';\n// ECMAScript 6 symbols shim\nvar global = require('./_global');\nvar has = require('./_has');\nvar DESCRIPTORS = require('./_descriptors');\nvar $export = require('./_export');\nvar redefine = require('./_redefine');\nvar META = require('./_meta').KEY;\nvar $fails = require('./_fails');\nvar shared = require('./_shared');\nvar setToStringTag = require('./_set-to-string-tag');\nvar uid = require('./_uid');\nvar wks = require('./_wks');\nvar wksExt = require('./_wks-ext');\nvar wksDefine = require('./_wks-define');\nvar enumKeys = require('./_enum-keys');\nvar isArray = require('./_is-array');\nvar anObject = require('./_an-object');\nvar isObject = require('./_is-object');\nvar toIObject = require('./_to-iobject');\nvar toPrimitive = require('./_to-primitive');\nvar createDesc = require('./_property-desc');\nvar _create = require('./_object-create');\nvar gOPNExt = require('./_object-gopn-ext');\nvar $GOPD = require('./_object-gopd');\nvar $DP = require('./_object-dp');\nvar $keys = require('./_object-keys');\nvar gOPD = $GOPD.f;\nvar dP = $DP.f;\nvar gOPN = gOPNExt.f;\nvar $Symbol = global.Symbol;\nvar $JSON = global.JSON;\nvar _stringify = $JSON && $JSON.stringify;\nvar PROTOTYPE = 'prototype';\nvar HIDDEN = wks('_hidden');\nvar TO_PRIMITIVE = wks('toPrimitive');\nvar isEnum = {}.propertyIsEnumerable;\nvar SymbolRegistry = shared('symbol-registry');\nvar AllSymbols = shared('symbols');\nvar OPSymbols = shared('op-symbols');\nvar ObjectProto = Object[PROTOTYPE];\nvar USE_NATIVE = typeof $Symbol == 'function';\nvar QObject = global.QObject;\n// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173\nvar setter = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;\n\n// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687\nvar setSymbolDesc = DESCRIPTORS && $fails(function () {\n return _create(dP({}, 'a', {\n get: function () { return dP(this, 'a', { value: 7 }).a; }\n })).a != 7;\n}) ? function (it, key, D) {\n var protoDesc = gOPD(ObjectProto, key);\n if (protoDesc) delete ObjectProto[key];\n dP(it, key, D);\n if (protoDesc && it !== ObjectProto) dP(ObjectProto, key, protoDesc);\n} : dP;\n\nvar wrap = function (tag) {\n var sym = AllSymbols[tag] = _create($Symbol[PROTOTYPE]);\n sym._k = tag;\n return sym;\n};\n\nvar isSymbol = USE_NATIVE && typeof $Symbol.iterator == 'symbol' ? function (it) {\n return typeof it == 'symbol';\n} : function (it) {\n return it instanceof $Symbol;\n};\n\nvar $defineProperty = function defineProperty(it, key, D) {\n if (it === ObjectProto) $defineProperty(OPSymbols, key, D);\n anObject(it);\n key = toPrimitive(key, true);\n anObject(D);\n if (has(AllSymbols, key)) {\n if (!D.enumerable) {\n if (!has(it, HIDDEN)) dP(it, HIDDEN, createDesc(1, {}));\n it[HIDDEN][key] = true;\n } else {\n if (has(it, HIDDEN) && it[HIDDEN][key]) it[HIDDEN][key] = false;\n D = _create(D, { enumerable: createDesc(0, false) });\n } return setSymbolDesc(it, key, D);\n } return dP(it, key, D);\n};\nvar $defineProperties = function defineProperties(it, P) {\n anObject(it);\n var keys = enumKeys(P = toIObject(P));\n var i = 0;\n var l = keys.length;\n var key;\n while (l > i) $defineProperty(it, key = keys[i++], P[key]);\n return it;\n};\nvar $create = function create(it, P) {\n return P === undefined ? _create(it) : $defineProperties(_create(it), P);\n};\nvar $propertyIsEnumerable = function propertyIsEnumerable(key) {\n var E = isEnum.call(this, key = toPrimitive(key, true));\n if (this === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return false;\n return E || !has(this, key) || !has(AllSymbols, key) || has(this, HIDDEN) && this[HIDDEN][key] ? E : true;\n};\nvar $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(it, key) {\n it = toIObject(it);\n key = toPrimitive(key, true);\n if (it === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return;\n var D = gOPD(it, key);\n if (D && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) D.enumerable = true;\n return D;\n};\nvar $getOwnPropertyNames = function getOwnPropertyNames(it) {\n var names = gOPN(toIObject(it));\n var result = [];\n var i = 0;\n var key;\n while (names.length > i) {\n if (!has(AllSymbols, key = names[i++]) && key != HIDDEN && key != META) result.push(key);\n } return result;\n};\nvar $getOwnPropertySymbols = function getOwnPropertySymbols(it) {\n var IS_OP = it === ObjectProto;\n var names = gOPN(IS_OP ? OPSymbols : toIObject(it));\n var result = [];\n var i = 0;\n var key;\n while (names.length > i) {\n if (has(AllSymbols, key = names[i++]) && (IS_OP ? has(ObjectProto, key) : true)) result.push(AllSymbols[key]);\n } return result;\n};\n\n// 19.4.1.1 Symbol([description])\nif (!USE_NATIVE) {\n $Symbol = function Symbol() {\n if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor!');\n var tag = uid(arguments.length > 0 ? arguments[0] : undefined);\n var $set = function (value) {\n if (this === ObjectProto) $set.call(OPSymbols, value);\n if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false;\n setSymbolDesc(this, tag, createDesc(1, value));\n };\n if (DESCRIPTORS && setter) setSymbolDesc(ObjectProto, tag, { configurable: true, set: $set });\n return wrap(tag);\n };\n redefine($Symbol[PROTOTYPE], 'toString', function toString() {\n return this._k;\n });\n\n $GOPD.f = $getOwnPropertyDescriptor;\n $DP.f = $defineProperty;\n require('./_object-gopn').f = gOPNExt.f = $getOwnPropertyNames;\n require('./_object-pie').f = $propertyIsEnumerable;\n require('./_object-gops').f = $getOwnPropertySymbols;\n\n if (DESCRIPTORS && !require('./_library')) {\n redefine(ObjectProto, 'propertyIsEnumerable', $propertyIsEnumerable, true);\n }\n\n wksExt.f = function (name) {\n return wrap(wks(name));\n };\n}\n\n$export($export.G + $export.W + $export.F * !USE_NATIVE, { Symbol: $Symbol });\n\nfor (var es6Symbols = (\n // 19.4.2.2, 19.4.2.3, 19.4.2.4, 19.4.2.6, 19.4.2.8, 19.4.2.9, 19.4.2.10, 19.4.2.11, 19.4.2.12, 19.4.2.13, 19.4.2.14\n 'hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables'\n).split(','), j = 0; es6Symbols.length > j;)wks(es6Symbols[j++]);\n\nfor (var wellKnownSymbols = $keys(wks.store), k = 0; wellKnownSymbols.length > k;) wksDefine(wellKnownSymbols[k++]);\n\n$export($export.S + $export.F * !USE_NATIVE, 'Symbol', {\n // 19.4.2.1 Symbol.for(key)\n 'for': function (key) {\n return has(SymbolRegistry, key += '')\n ? SymbolRegistry[key]\n : SymbolRegistry[key] = $Symbol(key);\n },\n // 19.4.2.5 Symbol.keyFor(sym)\n keyFor: function keyFor(sym) {\n if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol!');\n for (var key in SymbolRegistry) if (SymbolRegistry[key] === sym) return key;\n },\n useSetter: function () { setter = true; },\n useSimple: function () { setter = false; }\n});\n\n$export($export.S + $export.F * !USE_NATIVE, 'Object', {\n // 19.1.2.2 Object.create(O [, Properties])\n create: $create,\n // 19.1.2.4 Object.defineProperty(O, P, Attributes)\n defineProperty: $defineProperty,\n // 19.1.2.3 Object.defineProperties(O, Properties)\n defineProperties: $defineProperties,\n // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)\n getOwnPropertyDescriptor: $getOwnPropertyDescriptor,\n // 19.1.2.7 Object.getOwnPropertyNames(O)\n getOwnPropertyNames: $getOwnPropertyNames,\n // 19.1.2.8 Object.getOwnPropertySymbols(O)\n getOwnPropertySymbols: $getOwnPropertySymbols\n});\n\n// 24.3.2 JSON.stringify(value [, replacer [, space]])\n$JSON && $export($export.S + $export.F * (!USE_NATIVE || $fails(function () {\n var S = $Symbol();\n // MS Edge converts symbol values to JSON as {}\n // WebKit converts symbol values to JSON as null\n // V8 throws on boxed symbols\n return _stringify([S]) != '[null]' || _stringify({ a: S }) != '{}' || _stringify(Object(S)) != '{}';\n})), 'JSON', {\n stringify: function stringify(it) {\n var args = [it];\n var i = 1;\n var replacer, $replacer;\n while (arguments.length > i) args.push(arguments[i++]);\n $replacer = replacer = args[1];\n if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined\n if (!isArray(replacer)) replacer = function (key, value) {\n if (typeof $replacer == 'function') value = $replacer.call(this, key, value);\n if (!isSymbol(value)) return value;\n };\n args[1] = replacer;\n return _stringify.apply($JSON, args);\n }\n});\n\n// 19.4.3.4 Symbol.prototype[@@toPrimitive](hint)\n$Symbol[PROTOTYPE][TO_PRIMITIVE] || require('./_hide')($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);\n// 19.4.3.5 Symbol.prototype[@@toStringTag]\nsetToStringTag($Symbol, 'Symbol');\n// 20.2.1.9 Math[@@toStringTag]\nsetToStringTag(Math, 'Math', true);\n// 24.3.3 JSON[@@toStringTag]\nsetToStringTag(global.JSON, 'JSON', true);\n","// getting tag from 19.1.3.6 Object.prototype.toString()\nvar cof = require('./_cof');\nvar TAG = require('./_wks')('toStringTag');\n// ES3 wrong here\nvar ARG = cof(function () { return arguments; }()) == 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (e) { /* empty */ }\n};\n\nmodule.exports = function (it) {\n var O, T, B;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T\n // builtinTag case\n : ARG ? cof(O)\n // ES3 arguments fallback\n : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;\n};\n","'use strict';\n// 19.1.3.6 Object.prototype.toString()\nvar classof = require('./_classof');\nvar test = {};\ntest[require('./_wks')('toStringTag')] = 'z';\nif (test + '' != '[object z]') {\n require('./_redefine')(Object.prototype, 'toString', function toString() {\n return '[object ' + classof(this) + ']';\n }, true);\n}\n","require('../modules/es6.symbol');\nrequire('../modules/es6.object.to-string');\nmodule.exports = require('../modules/_core').Symbol;\n","var toInteger = require('./_to-integer');\nvar defined = require('./_defined');\n// true -> String#at\n// false -> String#codePointAt\nmodule.exports = function (TO_STRING) {\n return function (that, pos) {\n var s = String(defined(that));\n var i = toInteger(pos);\n var l = s.length;\n var a, b;\n if (i < 0 || i >= l) return TO_STRING ? '' : undefined;\n a = s.charCodeAt(i);\n return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff\n ? TO_STRING ? s.charAt(i) : a\n : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;\n };\n};\n","module.exports = {};\n","'use strict';\nvar create = require('./_object-create');\nvar descriptor = require('./_property-desc');\nvar setToStringTag = require('./_set-to-string-tag');\nvar IteratorPrototype = {};\n\n// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()\nrequire('./_hide')(IteratorPrototype, require('./_wks')('iterator'), function () { return this; });\n\nmodule.exports = function (Constructor, NAME, next) {\n Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) });\n setToStringTag(Constructor, NAME + ' Iterator');\n};\n","// 7.1.13 ToObject(argument)\nvar defined = require('./_defined');\nmodule.exports = function (it) {\n return Object(defined(it));\n};\n","// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)\nvar has = require('./_has');\nvar toObject = require('./_to-object');\nvar IE_PROTO = require('./_shared-key')('IE_PROTO');\nvar ObjectProto = Object.prototype;\n\nmodule.exports = Object.getPrototypeOf || function (O) {\n O = toObject(O);\n if (has(O, IE_PROTO)) return O[IE_PROTO];\n if (typeof O.constructor == 'function' && O instanceof O.constructor) {\n return O.constructor.prototype;\n } return O instanceof Object ? ObjectProto : null;\n};\n","'use strict';\nvar LIBRARY = require('./_library');\nvar $export = require('./_export');\nvar redefine = require('./_redefine');\nvar hide = require('./_hide');\nvar Iterators = require('./_iterators');\nvar $iterCreate = require('./_iter-create');\nvar setToStringTag = require('./_set-to-string-tag');\nvar getPrototypeOf = require('./_object-gpo');\nvar ITERATOR = require('./_wks')('iterator');\nvar BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next`\nvar FF_ITERATOR = '@@iterator';\nvar KEYS = 'keys';\nvar VALUES = 'values';\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) {\n $iterCreate(Constructor, NAME, next);\n var getMethod = function (kind) {\n if (!BUGGY && kind in proto) return proto[kind];\n switch (kind) {\n case KEYS: return function keys() { return new Constructor(this, kind); };\n case VALUES: return function values() { return new Constructor(this, kind); };\n } return function entries() { return new Constructor(this, kind); };\n };\n var TAG = NAME + ' Iterator';\n var DEF_VALUES = DEFAULT == VALUES;\n var VALUES_BUG = false;\n var proto = Base.prototype;\n var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT];\n var $default = $native || getMethod(DEFAULT);\n var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined;\n var $anyNative = NAME == 'Array' ? proto.entries || $native : $native;\n var methods, key, IteratorPrototype;\n // Fix native\n if ($anyNative) {\n IteratorPrototype = getPrototypeOf($anyNative.call(new Base()));\n if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) {\n // Set @@toStringTag to native iterators\n setToStringTag(IteratorPrototype, TAG, true);\n // fix for some old engines\n if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis);\n }\n }\n // fix Array#{values, @@iterator}.name in V8 / FF\n if (DEF_VALUES && $native && $native.name !== VALUES) {\n VALUES_BUG = true;\n $default = function values() { return $native.call(this); };\n }\n // Define iterator\n if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) {\n hide(proto, ITERATOR, $default);\n }\n // Plug for library\n Iterators[NAME] = $default;\n Iterators[TAG] = returnThis;\n if (DEFAULT) {\n methods = {\n values: DEF_VALUES ? $default : getMethod(VALUES),\n keys: IS_SET ? $default : getMethod(KEYS),\n entries: $entries\n };\n if (FORCED) for (key in methods) {\n if (!(key in proto)) redefine(proto, key, methods[key]);\n } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);\n }\n return methods;\n};\n","'use strict';\nvar $at = require('./_string-at')(true);\n\n// 21.1.3.27 String.prototype[@@iterator]()\nrequire('./_iter-define')(String, 'String', function (iterated) {\n this._t = String(iterated); // target\n this._i = 0; // next index\n// 21.1.5.2.1 %StringIteratorPrototype%.next()\n}, function () {\n var O = this._t;\n var index = this._i;\n var point;\n if (index >= O.length) return { value: undefined, done: true };\n point = $at(O, index);\n this._i += point.length;\n return { value: point, done: false };\n});\n","// 22.1.3.31 Array.prototype[@@unscopables]\nvar UNSCOPABLES = require('./_wks')('unscopables');\nvar ArrayProto = Array.prototype;\nif (ArrayProto[UNSCOPABLES] == undefined) require('./_hide')(ArrayProto, UNSCOPABLES, {});\nmodule.exports = function (key) {\n ArrayProto[UNSCOPABLES][key] = true;\n};\n","module.exports = function (done, value) {\n return { value: value, done: !!done };\n};\n","'use strict';\nvar addToUnscopables = require('./_add-to-unscopables');\nvar step = require('./_iter-step');\nvar Iterators = require('./_iterators');\nvar toIObject = require('./_to-iobject');\n\n// 22.1.3.4 Array.prototype.entries()\n// 22.1.3.13 Array.prototype.keys()\n// 22.1.3.29 Array.prototype.values()\n// 22.1.3.30 Array.prototype[@@iterator]()\nmodule.exports = require('./_iter-define')(Array, 'Array', function (iterated, kind) {\n this._t = toIObject(iterated); // target\n this._i = 0; // next index\n this._k = kind; // kind\n// 22.1.5.2.1 %ArrayIteratorPrototype%.next()\n}, function () {\n var O = this._t;\n var kind = this._k;\n var index = this._i++;\n if (!O || index >= O.length) {\n this._t = undefined;\n return step(1);\n }\n if (kind == 'keys') return step(0, index);\n if (kind == 'values') return step(0, O[index]);\n return step(0, [index, O[index]]);\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)\nIterators.Arguments = Iterators.Array;\n\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n","var $iterators = require('./es6.array.iterator');\nvar getKeys = require('./_object-keys');\nvar redefine = require('./_redefine');\nvar global = require('./_global');\nvar hide = require('./_hide');\nvar Iterators = require('./_iterators');\nvar wks = require('./_wks');\nvar ITERATOR = wks('iterator');\nvar TO_STRING_TAG = wks('toStringTag');\nvar ArrayValues = Iterators.Array;\n\nvar DOMIterables = {\n CSSRuleList: true, // TODO: Not spec compliant, should be false.\n CSSStyleDeclaration: false,\n CSSValueList: false,\n ClientRectList: false,\n DOMRectList: false,\n DOMStringList: false,\n DOMTokenList: true,\n DataTransferItemList: false,\n FileList: false,\n HTMLAllCollection: false,\n HTMLCollection: false,\n HTMLFormElement: false,\n HTMLSelectElement: false,\n MediaList: true, // TODO: Not spec compliant, should be false.\n MimeTypeArray: false,\n NamedNodeMap: false,\n NodeList: true,\n PaintRequestList: false,\n Plugin: false,\n PluginArray: false,\n SVGLengthList: false,\n SVGNumberList: false,\n SVGPathSegList: false,\n SVGPointList: false,\n SVGStringList: false,\n SVGTransformList: false,\n SourceBufferList: false,\n StyleSheetList: true, // TODO: Not spec compliant, should be false.\n TextTrackCueList: false,\n TextTrackList: false,\n TouchList: false\n};\n\nfor (var collections = getKeys(DOMIterables), i = 0; i < collections.length; i++) {\n var NAME = collections[i];\n var explicit = DOMIterables[NAME];\n var Collection = global[NAME];\n var proto = Collection && Collection.prototype;\n var key;\n if (proto) {\n if (!proto[ITERATOR]) hide(proto, ITERATOR, ArrayValues);\n if (!proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME);\n Iterators[NAME] = ArrayValues;\n if (explicit) for (key in $iterators) if (!proto[key]) redefine(proto, key, $iterators[key], true);\n }\n}\n","require('../../modules/es6.string.iterator');\nrequire('../../modules/web.dom.iterable');\nmodule.exports = require('../../modules/_wks-ext').f('iterator');\n","export default class Utilities {\r\n\r\n static ready(fn) {\r\n if (document.attachEvent ? document.readyState === \"complete\" : document.readyState !== \"loading\"){\r\n fn();\r\n } else {\r\n document.addEventListener('DOMContentLoaded', fn);\r\n }\r\n }\r\n \r\n static objectType(obj){\r\n return Object.prototype.toString.call(obj).slice(8, -1);\r\n }\r\n\r\n static lightenDarkenColor(col, amt) {\r\n\r\n var usePound = false;\r\n \r\n if (col[0] == \"#\") {\r\n col = col.slice(1);\r\n usePound = true;\r\n }\r\n \r\n var num = parseInt(col, 16);\r\n \r\n var r = (num >> 16) + amt;\r\n \r\n if (r > 255) {\r\n r = 255;\r\n } else if (r < 0) {\r\n r = 0;\r\n }\r\n \r\n var b = ((num >> 8) & 0x00FF) + amt;\r\n \r\n if (b > 255) {\r\n b = 255;\r\n } else if (b < 0) {\r\n b = 0;\r\n }\r\n \r\n var g = (num & 0x0000FF) + amt;\r\n \r\n if (g > 255) {\r\n g = 255;\r\n } else if (g < 0) {\r\n g = 0;\r\n }\r\n \r\n return (usePound ? \"#\" : \"\") + (g | (b << 8) | (r << 16)).toString(16);\r\n \r\n }\r\n\r\n static removeCookie() {\r\n document.cookie = `cconsent=; expires=Thu, 01 Jan 1980 00:00:00 UTC; path=/;`;\r\n }\r\n\r\n // Create an array of services from Cookieconsent global object\r\n // Filter based on category or leave empty is all is wanted\r\n static listGlobalServices(category) {\r\n let categories = [];\r\n\r\n // Global config objectnot set\r\n if (typeof window.CookieConsent === 'undefined') return categories;\r\n\r\n // Category is not specified or opposite\r\n if (typeof category === 'undefined') {\r\n for (let key in window.CookieConsent.config.services) {\r\n categories.push(key);\r\n }\r\n } else {\r\n for (let key in window.CookieConsent.config.services) {\r\n if (window.CookieConsent.config.services[key].category === category) categories.push(key);\r\n }\r\n }\r\n\r\n return categories;\r\n }\r\n\r\n static dispatchEvent(elem, event) {\r\n var event;\r\n\r\n if (typeof(Event) === 'function') {\r\n event = new Event(event);\r\n } else {\r\n event = document.createEvent('Event');\r\n event.initEvent(event, true, true);\r\n }\r\n \r\n elem.dispatchEvent(event);\r\n }\r\n\r\n}\r\n","import Utilities from \"./Utilities\";\r\n\r\nexport default class Filter {\r\n\r\n createBlacklist(type) {\r\n var services = {};\r\n for(var service in window.CookieConsent.config.services) {\r\n if (window.CookieConsent.config.services[service].type === type) {\r\n if(window.CookieConsent.config.categories[window.CookieConsent.config.services[service].category].needed === false) {\r\n if (window.CookieConsent.config.categories[window.CookieConsent.config.services[service].category].wanted === false) {\r\n services[service] = window.CookieConsent.config.services[service];\r\n }\r\n }\r\n }\r\n }\r\n\r\n var blacklist = [];\r\n\r\n for(var service in services) {\r\n var type = Utilities.objectType(services[service].search);\r\n if (type === 'String') {\r\n blacklist.push(services[service].search);\r\n } else if(type === 'Array') {\r\n for (let i = 0; i < services[service].search.length; i++) {\r\n blacklist.push(services[service].search[i]);\r\n }\r\n }\r\n }\r\n\r\n return blacklist;\r\n }\r\n\r\n}","import Filter from './Filter';\r\n\r\nexport default class InsertScriptFilter extends Filter {\r\n\r\n constructor() {\r\n super();\r\n }\r\n\r\n init() {\r\n this.overrideAppendChild();\r\n this.overrideInsertBefore();\r\n }\r\n\r\n overrideAppendChild() {\r\n\r\n Element.prototype.appendChild = function(elem) {\r\n if(arguments[0].tagName === 'SCRIPT') {\r\n //console.log('Appending:', arguments);\r\n for (let key in window.CookieConsent.config.services) {\r\n // Did user opt-in?\r\n if(window.CookieConsent.config.services[key].type === 'dynamic-script') {\r\n if(arguments[0].outerHTML.indexOf(window.CookieConsent.config.services[key].search) >= 0) {\r\n if(window.CookieConsent.config.categories[window.CookieConsent.config.services[key].category].wanted === false) {\r\n window.CookieConsent.buffer.appendChild.push({'this': this, 'category': window.CookieConsent.config.services[key].category, arguments: arguments});\r\n return undefined;\r\n }\r\n }\r\n }\r\n }\r\n } \r\n \r\n return Node.prototype.appendChild.apply(this, arguments);\r\n }\r\n\r\n }\r\n\r\n overrideInsertBefore() {\r\n\r\n Element.prototype.insertBefore = function(elem) {\r\n \r\n if(arguments[0].tagName === 'SCRIPT') {\r\n //console.log('Inserting:', arguments);\r\n for (let key in window.CookieConsent.config.services) {\r\n // Did user opt-in?\r\n if(window.CookieConsent.config.services[key].type === 'dynamic-script') {\r\n if(arguments[0].outerHTML.indexOf(window.CookieConsent.config.services[key].search) >= 0) {\r\n if(window.CookieConsent.config.categories[window.CookieConsent.config.services[key].category].wanted === false) {\r\n window.CookieConsent.buffer.insertBefore.push({'this': this, 'category': window.CookieConsent.config.services[key].category, arguments: arguments});\r\n return undefined;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n \r\n return Node.prototype.insertBefore.apply(this, arguments);\r\n }\r\n }\r\n\r\n}","import Utilities from \"./Utilities\";\r\nimport Filter from './Filter';\r\n\r\nexport default class ScriptTagFilter extends Filter {\r\n \r\n constructor() {\r\n super();\r\n }\r\n\r\n init() {\r\n this.filterTags();\r\n }\r\n\r\n filterTags() {\r\n Utilities.ready(() => {\r\n var blacklist = super.createBlacklist('script-tag');\r\n var scriptTags = document.querySelectorAll('script[type=\"text/plain\"]');\r\n \r\n for (var scriptTag of scriptTags) {\r\n if (blacklist.indexOf(scriptTag.dataset.consent) < 0) {\r\n var newtag = document.createElement('script');\r\n var parentNode = scriptTag.parentNode;\r\n \r\n scriptTag.type = 'text/javascript';\r\n\r\n for(var attribute of scriptTag.attributes) {\r\n newtag.setAttribute(attribute.nodeName, attribute.nodeValue);\r\n }\r\n\r\n newtag.innerHTML = scriptTag.innerHTML;\r\n parentNode.insertBefore(newtag,scriptTag);\r\n parentNode.removeChild(scriptTag);\r\n }\r\n }\r\n });\r\n }\r\n}","import Filter from './Filter';\r\n\r\nexport default class WrapperFilter extends Filter {\r\n \r\n constructor() {\r\n super();\r\n }\r\n\r\n init() {\r\n this.filterWrappers();\r\n }\r\n\r\n filterWrappers() {\r\n var blacklist = super.createBlacklist('wrapped');\r\n\r\n function wrapper(name='', callback) {\r\n if (blacklist.indexOf(name) < 0) {\r\n callback();\r\n }\r\n }\r\n\r\n window.CookieConsent.wrapper = wrapper;\r\n }\r\n}","import Filter from './Filter';\r\n\r\nexport default class LocalCookieFilter extends Filter {\r\n\r\n constructor() {\r\n super();\r\n }\r\n\r\n init() {\r\n this.filterlocalCookies();\r\n }\r\n\r\n getCookieDescriptor() {\r\n var cookieDescriptor;\r\n\r\n cookieDescriptor = Object.getOwnPropertyDescriptor(document, 'cookie') ||\r\n Object.getOwnPropertyDescriptor(HTMLDocument.prototype, 'cookie');\r\n\r\n if (! cookieDescriptor) {\r\n\r\n cookieDescriptor = {};\r\n cookieDescriptor.get = HTMLDocument.prototype.__lookupGetter__(\"cookie\");\r\n cookieDescriptor.set = HTMLDocument.prototype.__lookupSetter__(\"cookie\");\r\n\r\n }\r\n\r\n return cookieDescriptor;\r\n }\r\n\r\n filterlocalCookies() {\r\n\r\n // TODO - implement buffer\r\n var blacklist = super.createBlacklist('localcookie');\r\n var cookieDescriptor = this.getCookieDescriptor();\r\n\r\n Object.defineProperty(document, \"cookie\", {\r\n configurable: true,\r\n get: function () {\r\n return cookieDescriptor.get.apply(document);\r\n },\r\n set: function () {\r\n var cookieArguments = arguments;\r\n\r\n if(blacklist.length) {\r\n var cookieName = arguments[0].split('=')[0];\r\n Array.prototype.forEach.call(blacklist, function(blacklistItem){\r\n if (cookieName.indexOf(blacklistItem) < 0) cookieDescriptor.set.apply(document, cookieArguments);\r\n });\r\n } else {\r\n cookieDescriptor.set.apply(document, cookieArguments);\r\n }\r\n }\r\n });\r\n }\r\n}","var HASH = '#'.charCodeAt(0);\nvar DOT = '.'.charCodeAt(0);\n\nvar TAG_NAME = 0;\nvar ID = 1;\nvar CLASS_NAME = 2;\n\nvar parseQuery = function (query) {\n var tag = null;\n var id = null;\n var className = null;\n var mode = TAG_NAME;\n var offset = 0;\n\n for (var i = 0; i <= query.length; i++) {\n var char = query.charCodeAt(i);\n var isHash = char === HASH;\n var isDot = char === DOT;\n var isEnd = !char;\n\n if (isHash || isDot || isEnd) {\n if (mode === TAG_NAME) {\n if (i === 0) {\n tag = 'div';\n } else {\n tag = query.substring(offset, i);\n }\n } else if (mode === ID) {\n id = query.substring(offset, i);\n } else {\n if (className) {\n className += ' ' + query.substring(offset, i);\n } else {\n className = query.substring(offset, i);\n }\n }\n\n if (isHash) {\n mode = ID;\n } else if (isDot) {\n mode = CLASS_NAME;\n }\n\n offset = i + 1;\n }\n }\n\n return { tag: tag, id: id, className: className };\n};\n\nvar createElement = function (query, ns) {\n var ref = parseQuery(query);\n var tag = ref.tag;\n var id = ref.id;\n var className = ref.className;\n var element = ns ? document.createElementNS(ns, tag) : document.createElement(tag);\n\n if (id) {\n element.id = id;\n }\n\n if (className) {\n if (ns) {\n element.setAttribute('class', className);\n } else {\n element.className = className;\n }\n }\n\n return element;\n};\n\nvar unmount = function (parent, child) {\n var parentEl = getEl(parent);\n var childEl = getEl(child);\n\n if (child === childEl && childEl.__redom_view) {\n // try to look up the view if not provided\n child = childEl.__redom_view;\n }\n\n if (childEl.parentNode) {\n doUnmount(child, childEl, parentEl);\n\n parentEl.removeChild(childEl);\n }\n\n return child;\n};\n\nvar doUnmount = function (child, childEl, parentEl) {\n var hooks = childEl.__redom_lifecycle;\n\n if (hooksAreEmpty(hooks)) {\n childEl.__redom_mounted = false;\n return;\n }\n\n var traverse = parentEl;\n\n if (childEl.__redom_mounted) {\n trigger(childEl, 'onunmount');\n }\n\n while (traverse) {\n var parentHooks = traverse.__redom_lifecycle || {};\n\n for (var hook in hooks) {\n if (parentHooks[hook]) {\n parentHooks[hook] -= hooks[hook];\n }\n }\n\n if (hooksAreEmpty(parentHooks)) {\n traverse.__redom_lifecycle = null;\n }\n\n traverse = traverse.parentNode;\n }\n};\n\nvar hooksAreEmpty = function (hooks) {\n if (hooks == null) {\n return true;\n }\n for (var key in hooks) {\n if (hooks[key]) {\n return false;\n }\n }\n return true;\n};\n\nvar hookNames = ['onmount', 'onremount', 'onunmount'];\nvar shadowRootAvailable = typeof window !== 'undefined' && 'ShadowRoot' in window;\n\nvar mount = function (parent, child, before, replace) {\n var parentEl = getEl(parent);\n var childEl = getEl(child);\n\n if (child === childEl && childEl.__redom_view) {\n // try to look up the view if not provided\n child = childEl.__redom_view;\n }\n\n if (child !== childEl) {\n childEl.__redom_view = child;\n }\n\n var wasMounted = childEl.__redom_mounted;\n var oldParent = childEl.parentNode;\n\n if (wasMounted && (oldParent !== parentEl)) {\n doUnmount(child, childEl, oldParent);\n }\n\n if (before != null) {\n if (replace) {\n parentEl.replaceChild(childEl, getEl(before));\n } else {\n parentEl.insertBefore(childEl, getEl(before));\n }\n } else {\n parentEl.appendChild(childEl);\n }\n\n doMount(child, childEl, parentEl, oldParent);\n\n return child;\n};\n\nvar doMount = function (child, childEl, parentEl, oldParent) {\n var hooks = childEl.__redom_lifecycle || (childEl.__redom_lifecycle = {});\n var remount = (parentEl === oldParent);\n var hooksFound = false;\n\n for (var i = 0, list = hookNames; i < list.length; i += 1) {\n var hookName = list[i];\n\n if (!remount) { // if already mounted, skip this phase\n if (child !== childEl) { // only Views can have lifecycle events\n if (hookName in child) {\n hooks[hookName] = (hooks[hookName] || 0) + 1;\n }\n }\n }\n if (hooks[hookName]) {\n hooksFound = true;\n }\n }\n\n if (!hooksFound) {\n childEl.__redom_mounted = true;\n return;\n }\n\n var traverse = parentEl;\n var triggered = false;\n\n if (remount || (traverse && traverse.__redom_mounted)) {\n trigger(childEl, remount ? 'onremount' : 'onmount');\n triggered = true;\n }\n\n while (traverse) {\n var parent = traverse.parentNode;\n var parentHooks = traverse.__redom_lifecycle || (traverse.__redom_lifecycle = {});\n\n for (var hook in hooks) {\n parentHooks[hook] = (parentHooks[hook] || 0) + hooks[hook];\n }\n\n if (triggered) {\n break;\n } else {\n if (traverse === document ||\n (shadowRootAvailable && (traverse instanceof window.ShadowRoot)) ||\n (parent && parent.__redom_mounted)\n ) {\n trigger(traverse, remount ? 'onremount' : 'onmount');\n triggered = true;\n }\n traverse = parent;\n }\n }\n};\n\nvar trigger = function (el, eventName) {\n if (eventName === 'onmount' || eventName === 'onremount') {\n el.__redom_mounted = true;\n } else if (eventName === 'onunmount') {\n el.__redom_mounted = false;\n }\n\n var hooks = el.__redom_lifecycle;\n\n if (!hooks) {\n return;\n }\n\n var view = el.__redom_view;\n var hookCount = 0;\n\n view && view[eventName] && view[eventName]();\n\n for (var hook in hooks) {\n if (hook) {\n hookCount++;\n }\n }\n\n if (hookCount) {\n var traverse = el.firstChild;\n\n while (traverse) {\n var next = traverse.nextSibling;\n\n trigger(traverse, eventName);\n\n traverse = next;\n }\n }\n};\n\nvar setStyle = function (view, arg1, arg2) {\n var el = getEl(view);\n\n if (arg2 !== undefined) {\n el.style[arg1] = arg2;\n } else if (typeof arg1 === 'string') {\n el.setAttribute('style', arg1);\n } else {\n for (var key in arg1) {\n setStyle(el, key, arg1[key]);\n }\n }\n};\n\n/* global SVGElement */\n\nvar xlinkns = 'http://www.w3.org/1999/xlink';\n\nvar setAttr = function (view, arg1, arg2) {\n var el = getEl(view);\n var isSVG = el instanceof SVGElement;\n\n var isFunc = typeof arg2 === 'function';\n\n if (arg2 !== undefined) {\n if (arg1 === 'style') {\n setStyle(el, arg2);\n } else if (isSVG && isFunc) {\n el[arg1] = arg2;\n } else if (arg1 === 'dataset') {\n setData(el, arg2);\n } else if (!isSVG && (arg1 in el || isFunc)) {\n el[arg1] = arg2;\n } else {\n if (isSVG && (arg1 === 'xlink')) {\n setXlink(el, arg2);\n return;\n }\n el.setAttribute(arg1, arg2);\n }\n } else {\n for (var key in arg1) {\n setAttr(el, key, arg1[key]);\n }\n }\n};\n\nfunction setXlink (el, obj) {\n for (var key in obj) {\n el.setAttributeNS(xlinkns, key, obj[key]);\n }\n}\n\nfunction setData (el, obj) {\n for (var key in obj) {\n el.dataset[key] = obj[key];\n }\n}\n\nvar text = function (str) { return document.createTextNode((str != null) ? str : ''); };\n\nvar parseArguments = function (element, args) {\n for (var i = 0, list = args; i < list.length; i += 1) {\n var arg = list[i];\n\n if (arg !== 0 && !arg) {\n continue;\n }\n\n var type = typeof arg;\n\n // support middleware\n if (type === 'function') {\n arg(element);\n } else if (type === 'string' || type === 'number') {\n element.appendChild(text(arg));\n } else if (isNode(getEl(arg))) {\n mount(element, arg);\n } else if (arg.length) {\n parseArguments(element, arg);\n } else if (type === 'object') {\n setAttr(element, arg);\n }\n }\n};\n\nvar ensureEl = function (parent) { return typeof parent === 'string' ? html(parent) : getEl(parent); };\nvar getEl = function (parent) { return (parent.nodeType && parent) || (!parent.el && parent) || getEl(parent.el); };\nvar isNode = function (a) { return a && a.nodeType; };\n\nvar htmlCache = {};\n\nvar memoizeHTML = function (query) { return htmlCache[query] || (htmlCache[query] = createElement(query)); };\n\nvar html = function (query) {\n var args = [], len = arguments.length - 1;\n while ( len-- > 0 ) args[ len ] = arguments[ len + 1 ];\n\n var element;\n\n var type = typeof query;\n\n if (type === 'string') {\n element = memoizeHTML(query).cloneNode(false);\n } else if (isNode(query)) {\n element = query.cloneNode(false);\n } else if (type === 'function') {\n var Query = query;\n element = new (Function.prototype.bind.apply( Query, [ null ].concat( args) ));\n } else {\n throw new Error('At least one argument required');\n }\n\n parseArguments(getEl(element), args);\n\n return element;\n};\n\nhtml.extend = function (query) {\n var args = [], len = arguments.length - 1;\n while ( len-- > 0 ) args[ len ] = arguments[ len + 1 ];\n\n var clone = memoizeHTML(query);\n\n return html.bind.apply(html, [ this, clone ].concat( args ));\n};\n\nvar el = html;\nvar h = html;\n\nvar setChildren = function (parent) {\n var children = [], len = arguments.length - 1;\n while ( len-- > 0 ) children[ len ] = arguments[ len + 1 ];\n\n var parentEl = getEl(parent);\n var current = traverse(parent, children, parentEl.firstChild);\n\n while (current) {\n var next = current.nextSibling;\n\n unmount(parent, current);\n\n current = next;\n }\n};\n\nfunction traverse (parent, children, _current) {\n var current = _current;\n\n var childEls = new Array(children.length);\n\n for (var i = 0; i < children.length; i++) {\n childEls[i] = children[i] && getEl(children[i]);\n }\n\n for (var i$1 = 0; i$1 < children.length; i$1++) {\n var child = children[i$1];\n\n if (!child) {\n continue;\n }\n\n var childEl = childEls[i$1];\n\n if (childEl === current) {\n current = current.nextSibling;\n continue;\n }\n\n if (isNode(childEl)) {\n var next = current && current.nextSibling;\n var exists = child.__redom_index != null;\n var replace = exists && next === childEls[i$1 + 1];\n\n mount(parent, child, current, replace);\n\n if (replace) {\n current = next;\n }\n\n continue;\n }\n\n if (child.length != null) {\n current = traverse(parent, child, current);\n }\n }\n\n return current;\n}\n\nvar propKey = function (key) { return function (item) { return item[key]; }; };\n\nvar listPool = function (View, key, initData) {\n return new ListPool(View, key, initData);\n};\n\nvar ListPool = function ListPool (View, key, initData) {\n this.View = View;\n this.initData = initData;\n this.oldLookup = {};\n this.lookup = {};\n this.oldViews = [];\n this.views = [];\n\n if (key != null) {\n this.key = typeof key === 'function' ? key : propKey(key);\n }\n};\nListPool.prototype.update = function update (data, context) {\n var ref = this;\n var View = ref.View;\n var key = ref.key;\n var initData = ref.initData;\n var keySet = key != null;\n\n var oldLookup = this.lookup;\n var newLookup = {};\n\n var newViews = new Array(data.length);\n var oldViews = this.views;\n\n for (var i = 0; i < data.length; i++) {\n var item = data[i];\n var view = (void 0);\n\n if (keySet) {\n var id = key(item);\n\n view = oldLookup[id] || new View(initData, item, i, data);\n newLookup[id] = view;\n view.__redom_id = id;\n } else {\n view = oldViews[i] || new View(initData, item, i, data);\n }\n view.update && view.update(item, i, data, context);\n\n var el = getEl(view.el);\n\n el.__redom_view = view;\n newViews[i] = view;\n }\n\n this.oldViews = oldViews;\n this.views = newViews;\n\n this.oldLookup = oldLookup;\n this.lookup = newLookup;\n};\n\nvar list = function (parent, View, key, initData) {\n return new List(parent, View, key, initData);\n};\n\nvar List = function List (parent, View, key, initData) {\n this.__redom_list = true;\n this.View = View;\n this.initData = initData;\n this.views = [];\n this.pool = new ListPool(View, key, initData);\n this.el = ensureEl(parent);\n this.keySet = key != null;\n};\nList.prototype.update = function update (data, context) {\n if ( data === void 0 ) data = [];\n\n var ref = this;\n var keySet = ref.keySet;\n var oldViews = this.views;\n\n this.pool.update(data, context);\n\n var ref$1 = this.pool;\n var views = ref$1.views;\n var lookup = ref$1.lookup;\n\n if (keySet) {\n for (var i = 0; i < oldViews.length; i++) {\n var oldView = oldViews[i];\n var id = oldView.__redom_id;\n\n if (lookup[id] == null) {\n oldView.__redom_index = null;\n unmount(this, oldView);\n }\n }\n }\n\n for (var i$1 = 0; i$1 < views.length; i$1++) {\n var view = views[i$1];\n\n view.__redom_index = i$1;\n }\n\n setChildren(this, views);\n\n if (keySet) {\n this.lookup = lookup;\n }\n this.views = views;\n};\n\nList.extend = function (parent, View, key, initData) {\n return List.bind(List, parent, View, key, initData);\n};\n\nlist.extend = List.extend;\n\n/* global Node */\n\nvar place = function (View, initData) {\n return new Place(View, initData);\n};\n\nvar Place = function Place (View, initData) {\n this.el = text('');\n this.visible = false;\n this.view = null;\n this._placeholder = this.el;\n\n if (View instanceof Node) {\n this._el = View;\n } else {\n this._View = View;\n }\n\n this._initData = initData;\n};\nPlace.prototype.update = function update (visible, data) {\n var placeholder = this._placeholder;\n var parentNode = this.el.parentNode;\n\n if (visible) {\n if (!this.visible) {\n if (this._el) {\n mount(parentNode, this._el, placeholder);\n unmount(parentNode, placeholder);\n\n this.el = this._el;\n this.visible = visible;\n\n return;\n }\n var View = this._View;\n var view = new View(this._initData);\n\n this.el = getEl(view);\n this.view = view;\n\n mount(parentNode, view, placeholder);\n unmount(parentNode, placeholder);\n }\n this.view && this.view.update && this.view.update(data);\n } else {\n if (this.visible) {\n if (this._el) {\n mount(parentNode, placeholder, this._el);\n unmount(parentNode, this._el);\n\n this.el = placeholder;\n this.visible = visible;\n\n return;\n }\n mount(parentNode, placeholder, this.view);\n unmount(parentNode, this.view);\n\n this.el = placeholder;\n this.view = null;\n }\n }\n this.visible = visible;\n};\n\nvar router = function (parent, Views, initData) {\n return new Router(parent, Views, initData);\n};\n\nvar Router = function Router (parent, Views, initData) {\n this.el = ensureEl(parent);\n this.Views = Views;\n this.initData = initData;\n};\nRouter.prototype.update = function update (route, data) {\n if (route !== this.route) {\n var Views = this.Views;\n var View = Views[route];\n\n this.route = route;\n this.view = View && new View(this.initData, data);\n\n setChildren(this.el, [ this.view ]);\n }\n this.view && this.view.update && this.view.update(data, route);\n};\n\nvar ns = 'http://www.w3.org/2000/svg';\n\nvar svgCache = {};\n\nvar memoizeSVG = function (query) { return svgCache[query] || (svgCache[query] = createElement(query, ns)); };\n\nvar svg = function (query) {\n var args = [], len = arguments.length - 1;\n while ( len-- > 0 ) args[ len ] = arguments[ len + 1 ];\n\n var element;\n\n var type = typeof query;\n\n if (type === 'string') {\n element = memoizeSVG(query).cloneNode(false);\n } else if (isNode(query)) {\n element = query.cloneNode(false);\n } else if (type === 'function') {\n var Query = query;\n element = new (Function.prototype.bind.apply( Query, [ null ].concat( args) ));\n } else {\n throw new Error('At least one argument required');\n }\n\n parseArguments(getEl(element), args);\n\n return element;\n};\n\nsvg.extend = function (query) {\n var clone = memoizeSVG(query);\n\n return svg.bind(this, clone);\n};\n\nsvg.ns = ns;\n\nvar s = svg;\n\nexport { el, h, html, list, List, listPool, ListPool, mount, unmount, place, Place, router, Router, setAttr, setStyle, setChildren, s, svg, text };\n","export default class Language {\r\n\r\n setLocale(locale) {\r\n window.CookieConsent.config.language.current = locale;\r\n }\r\n \r\n static getTranslation(object, locale, key) {\r\n var currentLocale;\r\n\r\n if(!object.hasOwnProperty('language')) return '[Missing language object]';\r\n if(!object.language.hasOwnProperty('locale')) return '[Missing locale object]'\r\n \r\n currentLocale = (object.language.locale.hasOwnProperty(locale)) ? locale : 'en';\r\n\r\n return (object.language.locale[currentLocale].hasOwnProperty(key)) ? object.language.locale[currentLocale][key] : '[Missing translation]';\r\n }\r\n\r\n}","import { el, mount } from 'redom';\r\nimport Language from './Language';\r\nimport Utilities from \"./Utilities\";\r\n\r\nexport default class Interface {\r\n\r\n constructor() {\r\n this.elements = {};\r\n }\r\n\r\n\r\n buildStyle() {\r\n return el('style',\r\n '#cconsent-bar, #cconsent-bar * { box-sizing:border-box }', \r\n '#cconsent-bar { background-color:' + window.CookieConsent.config.theme.barColor + '; color:' + window.CookieConsent.config.theme.barTextColor + '; padding:15px; text-align:right; font-family:sans-serif; font-size:14px; line-height:18px; position:fixed; bottom:0; left:0; width:100%; z-index:9998; transform: translateY(0); transition: transform .6s ease-in-out; transition-delay: .3s;}', \r\n '#cconsent-bar.ccb--hidden {transform: translateY(100%); display:block;}', \r\n '#cconsent-bar .ccb__wrapper { display:flex; flex-wrap:wrap; justify-content:space-between; max-width:1800px; margin:0 auto;}',\r\n '#cconsent-bar .ccb__left { align-self:center; text-align:left; margin: 15px 0;}',\r\n '#cconsent-bar .ccb__right { align-self:center; white-space: nowrap;}',\r\n '#cconsent-bar .ccb__right > div {display:inline-block; color:#FFF;}',\r\n '#cconsent-bar a { text-decoration:underline; color:' + window.CookieConsent.config.theme.barTextColor + '; }',\r\n '#cconsent-bar .cc-text { color:' + window.CookieConsent.config.theme.barTextColor + ' !important; }',\r\n '#cconsent-bar button { line-height:normal; font-size:14px; border:none; margin-left: 15px; padding:10px 10px; color:' + window.CookieConsent.config.theme.barMainButtonTextColor + '; background-color:' + window.CookieConsent.config.theme.barMainButtonColor + ';}',\r\n '#cconsent-bar a.ccb__edit { margin-right:15px }',\r\n '#cconsent-bar a:hover, #cconsent-bar button:hover { cursor:pointer; }',\r\n '#cconsent-modal { display:none; font-size:14px; line-height:18px; color:#666; width: 100vw; height: 100vh; position:fixed; left:0; top:0; right:0; bottom:0; font-family:sans-serif; font-size:14px; background-color:rgba(0,0,0,0.6); z-index:9999; align-items:center; justify-content:center;}',\r\n '@media (max-width: 600px) { #cconsent-modal { height: 100% } }',\r\n '#cconsent-modal h2, #cconsent-modal h3 {color:#333}',\r\n '#cconsent-modal.ccm--visible {display:flex}',\r\n '#cconsent-modal .ccm__content { max-width:600px; min-height:500px; max-height:600px; overflow-Y:auto; background-color:#EFEFEF; }',\r\n '@media (max-width: 600px) { #cconsent-modal .ccm__content { max-width:100vw; height:100%; max-height:initial; }}',\r\n '#cconsent-modal .ccm__content > .ccm__content__heading { border-bottom:1px solid #D8D8D8; padding:35px 35px 20px; background-color:#EFEFEF; position:relative;}',\r\n '#cconsent-modal .ccm__content > .ccm__content__heading h2 { font-size:21px; font-weight:600; color:#333; margin:0 }',\r\n '#cconsent-modal .ccm__content > .ccm__content__heading .ccm__cheading__close {font-weight:600; color:#888; cursor:pointer; font-size:26px; position: absolute; right:15px; top: 15px;}',\r\n '#cconsent-modal h2, #cconsent-modal h3 {margin-top:0}',\r\n '#cconsent-modal .ccm__content > .ccm__content__body { background-color:#FFF;}',\r\n '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup {margin:0; border-bottom: 1px solid #D8D8D8; }',\r\n '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup .ccm__tab-head::before { position:absolute; left:35px; font-size:1.4em; font-weight: 600; color:#E56385; content:\"×\"; display:inline-block; margin-right: 20px;}',\r\n '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup.checked-5jhk .ccm__tab-head::before {font-size:1em; content:\"✔\"; color:#28A834}',\r\n '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup .ccm__tab-head .ccm__tab-head__icon-wedge { transition: transform .3s ease-out; transform-origin: 16px 6px 0; position:absolute;right:25px; top:50%; transform:rotate(0deg); transform:translateY(-50%)}',\r\n '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup .ccm__tab-head .ccm__tab-head__icon-wedge > svg { pointer-events: none; }',\r\n '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup.ccm__tabgroup--open .ccm__tab-head .ccm__tab-head__icon-wedge {transform:rotate(-180deg)}',\r\n '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-head {color:#333; padding:17px 35px 17px 56px; margin:0}',\r\n '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content {padding:25px 35px; margin:0}',\r\n '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-head { transition: background-color .5s ease-out }',\r\n '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-head:hover { background-color:#F9F9F9 }',\r\n '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-head {font-weight:600; cursor:pointer; position:relative;}',\r\n '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup .ccm__tab-content {display:none;}',\r\n '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup.ccm__tabgroup--open .ccm__tab-head { background-color:#F9F9F9 }',\r\n '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup.ccm__tabgroup--open .ccm__tab-content {display:flex;}',\r\n '@media (max-width: 600px) { #cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup.ccm__tabgroup--open .ccm__tab-content {flex-direction:column} }',\r\n '@media (max-width: 600px) { #cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left { margin-bottom:20px; } }',\r\n '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch-component {display:flex; margin-right:35px; align-items:center;}',\r\n '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch-component > div {font-weight:600;}',\r\n '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch-group {width:40px; height:20px; margin:0 10px; position:relative;}',\r\n '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch {position: absolute; top:0; right:0; display: inline-block; width: 40px; height: 20px;}',\r\n '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch input {display:none;}',\r\n '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch .ccm__switch__slider {position: absolute; cursor: pointer; top: 0; left: 0; right: 0; bottom: 0; background-color: #ccc; border-radius:10px; -webkit-transition: .4s; transition: .4s;}',\r\n '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch .ccm__switch__slider:before {position: absolute; content: \"\"; height: 12px; width: 12px; left: 4px; bottom: 4px; background-color: white; border-radius:50%; -webkit-transition: .4s; transition: .4s;}',\r\n '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch input:checked + .ccm__switch__slider {background-color: #28A834;}',\r\n '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch input:focus + .ccm__switch__slider {box-shadow: 0 0 1px #28A834;}',\r\n '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch input:checked + .ccm__switch__slider:before {-webkit-transform: translateX(20px); -ms-transform: translateX(20px); transform: translateX(20px);}',\r\n '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content h3 {font-size:18px; margin-bottom:10px; line-height:1;}',\r\n '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content p {color:#444; margin-bottom:0}',\r\n '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__list:not(:empty) {margin-top:30px;}',\r\n '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__list .ccm__list__title {color:#333; font-weight:600;}',\r\n '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__list ul { margin:15px 0; padding-left:15px }',\r\n '#cconsent-modal .ccm__footer { padding:35px; background-color:#EFEFEF; text-align:center; display: flex; align-items:center; justify-content:flex-end; }',\r\n '#cconsent-modal .ccm__footer button { line-height:normal; font-size:14px; transition: background-color .5s ease-out; background-color:' + window.CookieConsent.config.theme.modalMainButtonColor + '; color:' + window.CookieConsent.config.theme.modalMainButtonTextColor + '; border:none; padding:13px; min-width:110px; border-radius: 2px; cursor:pointer; }',\r\n '#cconsent-modal .ccm__footer button:not(:first-of-type) { margin-left:10px; }',\r\n '#cconsent-modal .ccm__footer button:hover { background-color:' + Utilities.lightenDarkenColor(window.CookieConsent.config.theme.modalMainButtonColor, -20) + '; }',\r\n //'#cconsent-modal .ccm__footer button#ccm__footer__consent-modal-submit { margin-right:10px; }'\r\n );\r\n }\r\n\r\n buildBar() {\r\n return el('div#cconsent-bar.ccb--hidden',\r\n el(`div.ccb__wrapper`,\r\n el('div.ccb__left',\r\n el('div.cc-text', Language.getTranslation(window.CookieConsent.config, window.CookieConsent.config.language.current, 'barMainText'))\r\n ),\r\n el('div.ccb__right',\r\n el('div.ccb__button',\r\n el('a.ccb__edit', Language.getTranslation(window.CookieConsent.config, window.CookieConsent.config.language.current, 'barLinkSetting')),\r\n window.CookieConsent.config.showRejectAllButton ? \r\n el('button.consent-reject', Language.getTranslation(window.CookieConsent.config, window.CookieConsent.config.language.current, 'barBtnRejectAll')) :\r\n null,\r\n el('button.consent-give', Language.getTranslation(window.CookieConsent.config, window.CookieConsent.config.language.current, 'barBtnAcceptAll'))\r\n )\r\n )\r\n ),\r\n );\r\n }\r\n\r\n buildModal() {\r\n\r\n // Cookie names list middleware\r\n var listCookies = function(category) {\r\n var list = [];\r\n\r\n for(let service in window.CookieConsent.config.services) {\r\n (window.CookieConsent.config.services[service].category === category) && list.push(window.CookieConsent.config.services[service]);\r\n }\r\n \r\n if(list.length) {\r\n \r\n var listItems = [];\r\n \r\n for(let item in list) {\r\n listItems.push(el('li', Language.getTranslation(list[item], window.CookieConsent.config.language.current, 'name')));\r\n }\r\n\r\n return [el('div.ccm__list', el('span.ccm__list__title', Language.getTranslation(window.CookieConsent.config, window.CookieConsent.config.language.current, 'modalAffectedSolutions')), el('ul', listItems))];\r\n }\r\n }\r\n \r\n function modalTabGroups() {\r\n\r\n let contentItems = [];\r\n\r\n let i = 0;\r\n for (let key in window.CookieConsent.config.categories) {\r\n\r\n contentItems.push(el('dl.ccm__tabgroup' + '.' + key + ((window.CookieConsent.config.categories[key].checked) ? '.checked-5jhk' : ''), {'data-category':key},\r\n el('dt.ccm__tab-head', Language.getTranslation(window.CookieConsent.config.categories[key], window.CookieConsent.config.language.current, 'name'),\r\n el('a.ccm__tab-head__icon-wedge', \r\n el(document.createElementNS(\"http://www.w3.org/2000/svg\", \"svg\"), { version: \"1.2\", preserveAspectRatio: \"none\", viewBox: \"0 0 24 24\", class: \"icon-wedge-svg\", \"data-id\": \"e9b3c566e8c14cfea38af128759b91a3\", style: \"opacity: 1; mix-blend-mode: normal; fill: rgb(51, 51, 51); width: 32px; height: 32px;\"},\r\n el(document.createElementNS(\"http://www.w3.org/2000/svg\", \"path\"), { 'xmlns:default': \"http://www.w3.org/2000/svg\", class: \"icon-wedge-angle-down\", d: \"M17.2,9.84c0-0.09-0.04-0.18-0.1-0.24l-0.52-0.52c-0.13-0.13-0.33-0.14-0.47-0.01c0,0-0.01,0.01-0.01,0.01 l-4.1,4.1l-4.09-4.1C7.78,8.94,7.57,8.94,7.44,9.06c0,0-0.01,0.01-0.01,0.01L6.91,9.6c-0.13,0.13-0.14,0.33-0.01,0.47 c0,0,0.01,0.01,0.01,0.01l4.85,4.85c0.13,0.13,0.33,0.14,0.47,0.01c0,0,0.01-0.01,0.01-0.01l4.85-4.85c0.06-0.06,0.1-0.15,0.1-0.24 l0,0H17.2z\", style: \"fill: rgb(51, 51, 51);\" })\r\n )\r\n ),\r\n ),\r\n el('dd.ccm__tab-content',\r\n el('div.ccm__tab-content__left', \r\n ( ! window.CookieConsent.config.categories[key].needed) && el('div.ccm__switch-component', el('div.status-off', Language.getTranslation(window.CookieConsent.config, window.CookieConsent.config.language.current, 'off')),\r\n el('div.ccm__switch-group',\r\n el('label.ccm__switch',\r\n el('input.category-onoff', {type:'checkbox', 'data-category': key, 'checked': window.CookieConsent.config.categories[key].checked}),\r\n el('span.ccm__switch__slider')\r\n )\r\n ),\r\n el('div.status-on', Language.getTranslation(window.CookieConsent.config, window.CookieConsent.config.language.current, 'on')))\r\n ),\r\n el('div.right',\r\n el('h3', Language.getTranslation(window.CookieConsent.config.categories[key], window.CookieConsent.config.language.current, 'name')),\r\n el('p', Language.getTranslation(window.CookieConsent.config.categories[key], window.CookieConsent.config.language.current, 'description')),\r\n el('div.ccm__list',\r\n listCookies(key)\r\n )\r\n )\r\n )\r\n )\r\n );\r\n\r\n i++;\r\n }\r\n\r\n return contentItems;\r\n }\r\n\r\n return el('div#cconsent-modal',\r\n el('div.ccm__content',\r\n el('div.ccm__content__heading',\r\n el('h2', Language.getTranslation(window.CookieConsent.config, window.CookieConsent.config.language.current, 'modalMainTitle')),\r\n el('p',\r\n Language.getTranslation(window.CookieConsent.config, window.CookieConsent.config.language.current, 'modalMainText'),\r\n (window.CookieConsent.config.modalMainTextMoreLink) ? el('a', { href: window.CookieConsent.config.modalMainTextMoreLink, target: '_blank', rel: 'noopener noreferrer' }, Language.getTranslation(window.CookieConsent.config, window.CookieConsent.config.language.current, 'learnMore')) : null\r\n ),\r\n el('div.ccm__cheading__close', '×')\r\n ),\r\n el('div.ccm__content__body',\r\n el('div.ccm__tabs',\r\n modalTabGroups()\r\n )\r\n ),\r\n el('div.ccm__footer',\r\n el('button#ccm__footer__consent-modal-submit', Language.getTranslation(window.CookieConsent.config, window.CookieConsent.config.language.current, 'modalBtnSave')),\r\n window.CookieConsent.config.showRejectAllButton ? \r\n el('button.consent-reject', Language.getTranslation(window.CookieConsent.config, window.CookieConsent.config.language.current, 'modalBtnRejectAll')) :\r\n null,\r\n el('button.consent-give', Language.getTranslation(window.CookieConsent.config, window.CookieConsent.config.language.current, 'modalBtnAcceptAll'))\r\n )\r\n )\r\n );\r\n }\r\n\r\n modalRedrawIcons() {\r\n var tabGroups = this.elements['modal'].querySelectorAll('.ccm__tabgroup');\r\n\r\n for(let tabGroup of tabGroups) {\r\n if(window.CookieConsent.config.categories[tabGroup.dataset.category].checked) {\r\n if( ! tabGroup.classList.contains('checked-5jhk')) {\r\n tabGroup.classList.add('checked-5jhk');\r\n tabGroup.querySelector('input.category-onoff').checked = true;\r\n };\r\n } else {\r\n if(tabGroup.classList.contains('checked-5jhk')) tabGroup.classList.remove('checked-5jhk');\r\n tabGroup.querySelector('input.category-onoff').checked = false;\r\n }\r\n }\r\n }\r\n\r\n render(name, elem, callback) {\r\n if (typeof callback === 'undefined') callback = function(){};\r\n if (typeof this.elements[name] !== 'undefined') {\r\n this.elements[name].parentNode.replaceChild(elem, this.elements[name]);\r\n this.elements[name] = elem;\r\n callback(elem);\r\n return elem;\r\n } else {\r\n var insertedElem = mount(document.body, elem);\r\n if (insertedElem) {\r\n this.elements[name] = insertedElem;\r\n }\r\n callback(insertedElem);\r\n return insertedElem;\r\n }\r\n }\r\n\r\n buildInterface(callback) {\r\n\r\n if (typeof callback === 'undefined') callback = function(){};\r\n var that = this;\r\n\r\n Utilities.ready(function() {\r\n\r\n that.render('style', that.buildStyle());\r\n\r\n that.render('bar', that.buildBar(), (bar) => {\r\n\r\n // Show the bar after a while\r\n if ( ! window.CookieConsent.config.cookieExists) {\r\n setTimeout(() => {\r\n bar.classList.remove('ccb--hidden');\r\n }, window.CookieConsent.config.barTimeout);\r\n }\r\n });\r\n\r\n that.render('modal', that.buildModal());\r\n\r\n callback();\r\n });\r\n }\r\n\r\n addEventListeners(elements) {\r\n\r\n // If you click Accept all cookies\r\n var buttonConsentGive = document.querySelectorAll('.consent-give');\r\n\r\n for(let button of buttonConsentGive) {\r\n button.addEventListener('click', () => {\r\n \r\n // We set config to full consent\r\n for(let key in window.CookieConsent.config.categories) {\r\n window.CookieConsent.config.categories[key].wanted =\r\n window.CookieConsent.config.categories[key].checked = true;\r\n }\r\n \r\n this.writeBufferToDOM();\r\n \r\n this.buildCookie((cookie) => {\r\n this.setCookie(cookie);\r\n });\r\n \r\n this.elements['bar'].classList.add('ccb--hidden');\r\n this.elements['modal'].classList.remove('ccm--visible');\r\n\r\n this.modalRedrawIcons();\r\n \r\n });\r\n }\r\n\r\n // If you click Decline all cookies\r\n var buttonConsentReject = document.querySelectorAll('.consent-reject');\r\n\r\n for(let button of buttonConsentReject) {\r\n button.addEventListener('click', () => {\r\n \r\n // We set config to full rejection\r\n for(let key in window.CookieConsent.config.categories) {\r\n window.CookieConsent.config.categories[key].wanted =\r\n window.CookieConsent.config.categories[key].checked = false;\r\n }\r\n \r\n this.writeBufferToDOM();\r\n \r\n this.buildCookie((cookie) => {\r\n this.setCookie(cookie);\r\n });\r\n \r\n this.elements['bar'].classList.add('ccb--hidden');\r\n this.elements['modal'].classList.remove('ccm--visible');\r\n\r\n this.modalRedrawIcons();\r\n \r\n });\r\n }\r\n\r\n // If you click Cookie settings and open modal\r\n Array.prototype.forEach.call(document.getElementsByClassName('ccb__edit'), (edit) => {\r\n edit.addEventListener('click', () => {\r\n this.elements['modal'].classList.add('ccm--visible');\r\n });\r\n });\r\n\r\n // If you click trough the tabs on Cookie settings\r\n // If you click on/off switch\r\n this.elements['modal'].querySelector('.ccm__tabs').addEventListener('click', (event) => {\r\n\r\n // If you click trough the tabs on Cookie settings\r\n if (event.target.classList.contains('ccm__tab-head') || event.target.classList.contains('ccm__tab-head__icon-wedge')) {\r\n\r\n function getDlParent(eventTarget) {\r\n var parent = eventTarget.parentNode;\r\n if(parent.nodeName !== 'DL') {\r\n return getDlParent(parent);\r\n } else {\r\n return parent;\r\n }\r\n }\r\n \r\n var parentDl = getDlParent(event.target);\r\n \r\n if(parentDl.classList.contains('ccm__tabgroup--open')) {\r\n parentDl.classList.remove('ccm__tabgroup--open');\r\n } else {\r\n parentDl.classList.add('ccm__tabgroup--open');\r\n }\r\n }\r\n\r\n // If you click on/off switch\r\n if (event.target.classList.contains('category-onoff')) {\r\n window.CookieConsent.config.categories[event.target.dataset.category].wanted =\r\n window.CookieConsent.config.categories[event.target.dataset.category].checked = (event.target.checked === true) ? true : false;\r\n\r\n var dt = document.querySelector('.ccm__tabgroup.' + event.target.dataset.category);\r\n if(event.target.checked === false && dt.classList.contains('checked-5jhk')) {\r\n dt.classList.remove('checked-5jhk');\r\n } else {\r\n dt.classList.add('checked-5jhk');\r\n }\r\n }\r\n });\r\n\r\n\r\n\r\n // If you click close on open modal\r\n this.elements['modal'].querySelector('.ccm__cheading__close').addEventListener('click', (event) => {\r\n this.elements['modal'].classList.remove('ccm--visible');\r\n });\r\n\r\n // If you click submit on cookie settings\r\n document.getElementById('ccm__footer__consent-modal-submit').addEventListener('click', () => {\r\n\r\n let switchElements = this.elements['modal'].querySelectorAll('.ccm__switch input');\r\n\r\n Array.prototype.forEach.call(switchElements, (switchElement) => {\r\n window.CookieConsent.config.categories[switchElement.dataset.category].wanted = switchElement.checked;\r\n });\r\n\r\n this.buildCookie((cookie) => {\r\n this.setCookie(cookie, () => {\r\n this.elements['modal'].classList.remove('ccm--visible');\r\n this.elements['bar'].classList.add('ccb--hidden');\r\n });\r\n });\r\n\r\n this.writeBufferToDOM();\r\n\r\n });\r\n }\r\n\r\n writeBufferToDOM() {\r\n\r\n for(let action of window.CookieConsent.buffer.appendChild) {\r\n if (window.CookieConsent.config.categories[action.category].wanted === true) {\r\n Node.prototype.appendChild.apply(action.this, action.arguments);\r\n }\r\n }\r\n\r\n for(let action of window.CookieConsent.buffer.insertBefore) {\r\n if (window.CookieConsent.config.categories[action.category].wanted === true) {\r\n action.arguments[1] = (action.arguments[0].parentNode === null) ? action.this.lastChild : action.arguments[1];\r\n Node.prototype.insertBefore.apply(action.this, action.arguments);\r\n }\r\n }\r\n }\r\n\r\n buildCookie(callback) {\r\n let cookie = {\r\n version: window.CookieConsent.config.cookieVersion,\r\n categories: {},\r\n services: []\r\n };\r\n \r\n for(let key in window.CookieConsent.config.categories) {\r\n cookie.categories[key] = {\r\n wanted: window.CookieConsent.config.categories[key].wanted,\r\n };\r\n }\r\n\r\n cookie.services = Utilities.listGlobalServices();\r\n \r\n if (callback) callback(cookie);\r\n return cookie;\r\n }\r\n \r\n setCookie(cookie, callback) {\r\n const expires_in = new Date(Date.now() + 365 * 24 * 60 * 60 * 1000).toUTCString();\r\n\r\n document.cookie = `cconsent=${JSON.stringify(cookie)}; expires=${expires_in}; path=/;`;\r\n if (callback) callback();\r\n }\r\n}\r\n","import Utilities from \"./Utilities\";\r\n\r\nexport default class Configuration {\r\n\r\n constructor(configObject) {\r\n\r\n window.CookieConsent.buffer = {\r\n appendChild: [],\r\n insertBefore: []\r\n }\r\n\r\n // Wrapper filter function\r\n window.CookieConsent.wrapper = function () { };\r\n\r\n // Settings injector for users\r\n window.CookieConsent.setConfiguration = this.setConfiguration.bind(this);\r\n\r\n window.CookieConsent.config = {\r\n active: true,\r\n cookieExists: false,\r\n cookieVersion: 1,\r\n modalMainTextMoreLink: null,\r\n barTimeout: 1000,\r\n showRejectAllButton: true,\r\n theme: {\r\n barColor: '#2C7CBF',\r\n barTextColor: '#FFF',\r\n barMainButtonColor: '#FFF',\r\n barMainButtonTextColor: '#2C7CBF',\r\n modalMainButtonColor: '#4285F4',\r\n modalMainButtonTextColor: '#FFF',\r\n },\r\n language: {\r\n current: 'en',\r\n locale: {\r\n en: {\r\n barMainText: 'This website uses cookies to ensure you get the best experience on our website.',\r\n barLinkSetting: 'Cookie Settings',\r\n barBtnAcceptAll: 'Accept all cookies',\r\n barBtnRejectAll: 'Reject all cookies',\r\n modalMainTitle: 'Cookie settings',\r\n modalMainText: 'Cookies are small piece of data sent from a website and stored on the user\\'s computer by the user\\'s web browser while the user is browsing. Your browser stores each message in a small file, called cookie. When you request another page from the server, your browser sends the cookie back to the server. Cookies were designed to be a reliable mechanism for websites to remember information or to record the user\\'s browsing activity.',\r\n modalBtnSave: 'Save current settings',\r\n modalBtnAcceptAll: 'Accept all cookies and close',\r\n modalBtnRejectAll: 'Reject all cookies and close',\r\n modalAffectedSolutions: 'Affected solutions:',\r\n learnMore: 'Learn More',\r\n on: 'On',\r\n off: 'Off',\r\n },\r\n cs: {\r\n barMainText: 'Tato stránka pro svůj provoz využívá cookies.',\r\n barLinkSetting: 'Nastavení cookies',\r\n barBtnAcceptAll: 'Povolit všechny cookies',\r\n barBtnRejectAll: 'Odmítnout všechny cookies',\r\n modalMainTitle: 'Nastavení cookies',\r\n modalMainText: 'Cookies jsou malá data odeslaná z webové stránky a uložená v počítači uživatele webovým prohlížečem uživatele, když uživatel prochází. Váš prohlížeč ukládá každou zprávu do malého souboru, který se nazývá cookie. Když si ze serveru vyžádáte další stránku, váš prohlížeč odešle cookie zpět na server. Soubory cookie byly navrženy tak, aby byly spolehlivým mechanismem pro webové stránky, aby si pamatovaly informace nebo zaznamenávaly aktivitu uživatele při prohlížení.',\r\n modalBtnSave: 'Uložit nastavení',\r\n modalBtnAcceptAll: 'Povolit všechny cookies a zavřít',\r\n modalBtnRejectAll: 'Odmítnout všechny cookies a zavřít',\r\n modalAffectedSolutions: 'Nastavení cookies bude mít vlyv na tyto služby:',\r\n learnMore: 'Více informací',\r\n on: 'Ano',\r\n off: 'Ne',\r\n },\r\n hu: {\r\n barMainText: 'Ez a weboldal Sütiket használ a jobb felhasználói élmény érdekében.',\r\n barLinkSetting: 'Süti beállítások',\r\n barBtnAcceptAll: 'Minden süti elfogadása',\r\n modalMainTitle: 'Süti beállítások',\r\n modalMainText: 'A HTTP-süti (általában egyszerűen süti, illetve angolul cookie) egy információcsomag, amelyet a szerver küld a webböngészőnek, majd a böngésző visszaküld a szervernek minden, a szerver felé irányított kérés alkalmával. Amikor egy weboldalt kérünk le a szervertől, akkor a böngésző elküldi a számára elérhető sütiket. A süti-ket úgy tervezték, hogy megbízható mechanizmust biztosítsanak a webhelyek számára az információk megőrzésére vagy a felhasználók böngészési tevékenységének rögzítésére.',\r\n modalBtnSave: 'Beállítások mentése',\r\n modalBtnAcceptAll: 'Minden Süti elfogadása',\r\n modalAffectedSolutions: 'Mire lesz ez hatással:',\r\n learnMore: 'Tudj meg többet',\r\n on: 'Be',\r\n off: 'Ki',\r\n }\r\n }\r\n },\r\n categories: {},\r\n services: {}\r\n }\r\n\r\n this.setConfiguration(configObject);\r\n\r\n }\r\n\r\n setConfiguration(configObject) {\r\n // The user overrides the default config\r\n console.log(window.CookieConsent.config, configObject, { ...window.CookieConsent.config, ...configObject });\r\n\r\n this.mergeDeep(window.CookieConsent.config, configObject)\r\n //loMerge(window.CookieConsent.config, configObject);\r\n // The cookie overrides the default and user config\r\n this.cookieToConfig();\r\n\r\n // We tell the world we did this\r\n Utilities.dispatchEvent(document, 'CCConfigSet');\r\n }\r\n\r\n cookieToConfig() {\r\n\r\n function removeReload() {\r\n Utilities.removeCookie();\r\n location.reload();\r\n return false;\r\n }\r\n\r\n document.cookie.split(';').filter((item) => {\r\n\r\n if (item.indexOf('cconsent') >= 0) {\r\n var cookieData = JSON.parse(item.split('=')[1]);\r\n\r\n // We check cookie version. If older we need to renew cookie.\r\n if (typeof cookieData.version === 'undefined') {\r\n return removeReload();\r\n } else {\r\n if (cookieData.version !== window.CookieConsent.config.cookieVersion) {\r\n return removeReload();\r\n }\r\n }\r\n\r\n // We check if cookie data categories also exist in user config\r\n for (let key in cookieData.categories) {\r\n\r\n // The cookie contains category not present in user config so we invalidate cookie\r\n if (typeof window.CookieConsent.config.categories[key] === 'undefined') {\r\n return removeReload();\r\n }\r\n }\r\n\r\n // We check if cookie data services also exist in user config\r\n cookieData.services.forEach(function (service) {\r\n\r\n // The cookie contains service not present in user config so we invalidate cookie\r\n if (typeof window.CookieConsent.config.services[service] === 'undefined') {\r\n return removeReload();\r\n }\r\n });\r\n\r\n // We we integrate cookie data into the global config object\r\n for (let key in cookieData.categories) {\r\n window.CookieConsent.config.categories[key].checked = window.CookieConsent.config.categories[key].wanted = (cookieData.categories[key].wanted === true) ? true : false;\r\n }\r\n\r\n window.CookieConsent.config.cookieExists = true;\r\n return true;\r\n }\r\n });\r\n\r\n return false;\r\n }\r\n\r\n\r\n // Simple object check.\r\n isObject(item) {\r\n return (item && typeof item === 'object' && !Array.isArray(item));\r\n }\r\n\r\n //Deep merge two objects.\r\n mergeDeep(target, ...sources) {\r\n if (!sources.length) return target;\r\n const source = sources.shift();\r\n\r\n if (this.isObject(target) && this.isObject(source)) {\r\n for (const key in source) {\r\n if (this.isObject(source[key])) {\r\n if (!target[key]) Object.assign(target, { [key]: {} });\r\n this.mergeDeep(target[key], source[key]);\r\n } else {\r\n Object.assign(target, { [key]: source[key] });\r\n }\r\n }\r\n }\r\n\r\n return this.mergeDeep(target, ...sources);\r\n }\r\n}\r\n","import Utilities from \"./Utilities\";\r\n\r\nexport default class RemoveCookies {\r\n\r\n init() {\r\n this.removeUnwantedCookies();\r\n }\r\n\r\n removeUnwantedCookies() {\r\n let cookieList = [];\r\n let config = window.CookieConsent.config;\r\n\r\n document.cookie.split(';').map(function(a){\r\n cookieList.push(a.split('=')[0].replace(/(^\\s*)|(\\s*&)/, ''));\r\n });\r\n\r\n for(let service in config.services) {\r\n if (Utilities.objectType(config.services[service].cookies) === 'Array') {\r\n // Remove cookies if they are not wanted by user\r\n if (! config.categories[config.services[service].category].wanted) {\r\n for(let i in config.services[service].cookies) {\r\n let type = Utilities.objectType(config.services[service].cookies[i].name);\r\n if (type === 'String') {\r\n if (cookieList.indexOf(config.services[service].cookies[i].name) > -1) {\r\n this.removeCookie(config.services[service].cookies[i]);\r\n }\r\n } else if (type === 'RegExp') {\r\n // Searching cookie list for cookies matching specified RegExp\r\n let cookieDef = config.services[service].cookies[i];\r\n for (let c in cookieList) {\r\n if (cookieList[c].match(cookieDef.name)) {\r\n this.removeCookie({\r\n name: cookieList[c],\r\n domain: Utilities.objectType(cookieDef.domain) === 'String' ? cookieDef.domain : null\r\n });\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n removeCookie(cookie) {\r\n // Removing cookies from domain and .domain\r\n let domain = Utilities.objectType(cookie.domain) === 'String' ? `domain=${cookie.domain};` : '';\r\n document.cookie = `${cookie.name}=; expires=Thu, 01 Jan 1980 00:00:00 UTC; ${domain} path=/;`;\r\n }\r\n}\r\n","import InsertScriptFilter from './InsertScriptFilter';\r\nimport ScriptTagFilter from './ScriptTagFilter';\r\nimport WrapperFilter from './WrapperFilter';\r\nimport LocalCookieFilter from './LocalCookieFilter';\r\nimport Interface from './Interface';\r\nimport Configuration from './Configuration';\r\nimport RemoveCookies from './RemoveCookies';\r\n\r\nexport default class CookieConsent {\r\n\r\n init(configObject) {\r\n new Configuration(configObject);\r\n\r\n const removeCookies = new RemoveCookies();\r\n const insertScriptFilter = new InsertScriptFilter();\r\n const scriptTagFilter = new ScriptTagFilter();\r\n const wrapperFilter = new WrapperFilter();\r\n const localCookieFilter = new LocalCookieFilter();\r\n\r\n removeCookies.init();\r\n insertScriptFilter.init();\r\n scriptTagFilter.init();\r\n wrapperFilter.init();\r\n localCookieFilter.init();\r\n\r\n const UI = new Interface();\r\n\r\n UI.buildInterface(() => {\r\n UI.addEventListeners();\r\n });\r\n }\r\n\r\n}","import 'core-js/es6/symbol';\r\nimport 'core-js/fn/symbol/iterator';\r\nimport CookieConsent from './lib/CookieConsent';\r\n\r\nconst cookieConsent = new CookieConsent();\r\n\r\nwindow.CookieConsent = window.CookieConsent || {};\r\nwindow.CookieConsent.init = cookieConsent.init;\r\n\r\n"]}