1
|
{"version":3,"sources":["webpack:///./node_modules/core-js/modules/es.number.constructor.js","webpack:///./node_modules/core-js/modules/es.string.starts-with.js","webpack:///./node_modules/core-js/internals/is-regexp.js","webpack:///./node_modules/core-js/internals/engine-is-node.js","webpack:///NextcloudVue.[name]/webpack/universalModuleDefinition","webpack:///NextcloudVue.[name]/webpack/bootstrap","webpack:///NextcloudVue.[name]/node_modules/vue-loader/lib/runtime/componentNormalizer.js","webpack:///NextcloudVue.[name]/node_modules/css-loader/dist/runtime/api.js","webpack:///NextcloudVue.[name]/node_modules/vue-style-loader/lib/listToStyles.js","webpack:///NextcloudVue.[name]/node_modules/vue-style-loader/lib/addStylesClient.js","webpack:///webpack:/NextcloudVue.[name]/external \"vue\"","webpack:///webpack:/NextcloudVue.[name]/external \"core-js/modules/es.object.to-string\"","webpack:///webpack:/NextcloudVue.[name]/external \"v-tooltip\"","webpack:///webpack:/NextcloudVue.[name]/external \"core-js/modules/es.function.name\"","webpack:///webpack:/NextcloudVue.[name]/external \"core-js/modules/es.array.index-of\"","webpack:///webpack:/NextcloudVue.[name]/external \"core-js/modules/es.array.map\"","webpack:///webpack:/NextcloudVue.[name]/external \"core-js/modules/es.regexp.to-string\"","webpack:///webpack:/NextcloudVue.[name]/external \"core-js/modules/es.regexp.exec\"","webpack:///webpack:/NextcloudVue.[name]/external \"@nextcloud/router\"","webpack:///webpack:/NextcloudVue.[name]/external \"core-js/modules/es.array.iterator\"","webpack:///webpack:/NextcloudVue.[name]/external \"core-js/modules/es.string.iterator\"","webpack:///webpack:/NextcloudVue.[name]/external \"core-js/modules/web.dom-collections.iterator\"","webpack:///NextcloudVue.[name]/node_modules/css-loader/dist/runtime/getUrl.js","webpack:///NextcloudVue.[name]/src/fonts/iconfont-vue-67af392.eot","webpack:///NextcloudVue.[name]/src/fonts/iconfont-vue-67af392.woff","webpack:///NextcloudVue.[name]/src/fonts/iconfont-vue-67af392.ttf","webpack:///NextcloudVue.[name]/src/fonts/iconfont-vue-67af392.svg","webpack:///NextcloudVue.[name]/src/directives/Tooltip/index.js","webpack:///webpack:/NextcloudVue.[name]/external \"core-js/modules/es.string.replace\"","webpack:///webpack:/NextcloudVue.[name]/external \"core-js/modules/es.array.concat\"","webpack:///webpack:/NextcloudVue.[name]/external \"@nextcloud/event-bus\"","webpack:///webpack:/NextcloudVue.[name]/external \"core-js/modules/es.symbol\"","webpack:///webpack:/NextcloudVue.[name]/external \"core-js/modules/es.number.constructor\"","webpack:///NextcloudVue.[name]/src/components/RichContenteditable/MentionBubble.vue?766d","webpack:///webpack:/NextcloudVue.[name]/external \"core-js/modules/web.url\"","webpack:///webpack:/NextcloudVue.[name]/external \"core-js/modules/es.symbol.description\"","webpack:///webpack:/NextcloudVue.[name]/external \"core-js/modules/es.array.slice\"","webpack:///webpack:/NextcloudVue.[name]/external \"@nextcloud/axios\"","webpack:///webpack:/NextcloudVue.[name]/external \"@nextcloud/auth\"","webpack:///NextcloudVue.[name]/src/utils/IsMobileState.js","webpack:///NextcloudVue.[name]/src/mixins/isMobile/index.js","webpack:///webpack:/NextcloudVue.[name]/external \"core-js/modules/es.symbol.iterator\"","webpack:///webpack:/NextcloudVue.[name]/external \"striptags\"","webpack:///NextcloudVue.[name]/src/components/PopoverMenu/PopoverMenuItem.vue?a290","webpack:///NextcloudVue.[name]/src/components/PopoverMenu/PopoverMenuItem.vue?bbfa","webpack:///NextcloudVue.[name]/src/components/PopoverMenu/PopoverMenu.vue?6063","webpack:///webpack:/NextcloudVue.[name]/external \"core-js/modules/es.array.from\"","webpack:///webpack:/NextcloudVue.[name]/external \"v-click-outside\"","webpack:///NextcloudVue.[name]/src/mixins/userStatus.js","webpack:///NextcloudVue.[name]/src/components/Avatar/Avatar.vue?5b6f","webpack:///webpack:/NextcloudVue.[name]/external \"core-js/modules/es.string.starts-with\"","webpack:///NextcloudVue.[name]/src/directives/Tooltip/index.scss?30d2","webpack:///NextcloudVue.[name]/src/directives/Tooltip/index.scss","webpack:///webpack:/NextcloudVue.[name]/external \"core-js/modules/es.array.join\"","webpack:///webpack:/NextcloudVue.[name]/external \"core-js/modules/es.promise\"","webpack:///webpack:/NextcloudVue.[name]/external \"regenerator-runtime/runtime\"","webpack:///NextcloudVue.[name]/src/components/RichContenteditable/MentionBubble.vue?d102","webpack:///NextcloudVue.[name]/src/components/RichContenteditable/MentionBubble.vue","webpack:///NextcloudVue.[name]/src/components/RichContenteditable/MentionBubble.vue?50ea","webpack:///NextcloudVue.[name]/src/mixins/richEditor/index.js","webpack:///webpack:/NextcloudVue.[name]/external \"escape-html\"","webpack:///NextcloudVue.[name]/src/utils/GenColors.js","webpack:///NextcloudVue.[name]/src/mixins/excludeClickOutsideClasses/index.js","webpack:///NextcloudVue.[name]/src/mixins/isFullscreen/index.js","webpack:///webpack:/NextcloudVue.[name]/external \"core-js/modules/es.string.split\"","webpack:///NextcloudVue.[name]/src/components/PopoverMenu/PopoverMenu.vue?7f21","webpack:///NextcloudVue.[name]/src/components/PopoverMenu/PopoverMenuItem.vue?356f","webpack:///NextcloudVue.[name]/src/components/PopoverMenu/PopoverMenuItem.vue","webpack:///NextcloudVue.[name]/src/components/PopoverMenu/PopoverMenu.vue?b983","webpack:///NextcloudVue.[name]/src/components/PopoverMenu/PopoverMenu.vue","webpack:///NextcloudVue.[name]/src/components/PopoverMenu/PopoverMenuItem.vue?63df","webpack:///NextcloudVue.[name]/src/components/PopoverMenu/index.js","webpack:///NextcloudVue.[name]/src/components/Avatar/Avatar.vue?c21b","webpack:///NextcloudVue.[name]/src/components/Avatar/Avatar.vue","webpack:///NextcloudVue.[name]/src/components/Avatar/Avatar.vue?125c","webpack:///NextcloudVue.[name]/src/components/Avatar/index.js","webpack:///webpack:/NextcloudVue.[name]/external \"@nextcloud/capabilities\"","webpack:///webpack:/NextcloudVue.[name]/external \"md5\"","webpack:///NextcloudVue.[name]/src/functions/usernameToColor/index.js","webpack:///NextcloudVue.[name]/src/functions/usernameToColor/usernameToColor.js","webpack:///webpack:/NextcloudVue.[name]/external \"core-js/modules/es.array.flat\"","webpack:///webpack:/NextcloudVue.[name]/external \"core-js/modules/es.array.unscopables.flat\"","webpack:///webpack:/NextcloudVue.[name]/external \"core-js/modules/es.regexp.constructor\"","webpack:///NextcloudVue.[name]/src/components/RichContenteditable/MentionBubble.vue?06a2","webpack:///NextcloudVue.[name]/src/components/RichContenteditable/MentionBubble.vue?931e","webpack:///webpack:/NextcloudVue.[name]/external \"@nextcloud/browser-storage\"","webpack:///webpack:/NextcloudVue.[name]/external \"core-js/modules/es.string.match\"","webpack:///webpack:/NextcloudVue.[name]/external \"core-js/modules/es.array.includes\"","webpack:///NextcloudVue.[name]/src/components/PopoverMenu/PopoverMenuItem.vue?7132","webpack:///NextcloudVue.[name]/src/components/PopoverMenu/PopoverMenuItem.vue?a8b9","webpack:///NextcloudVue.[name]/src/components/PopoverMenu/PopoverMenuItem.vue?b5c2","webpack:///NextcloudVue.[name]/src/components/PopoverMenu/PopoverMenuItem.vue?a0e4","webpack:///NextcloudVue.[name]/src/components/PopoverMenu/PopoverMenu.vue?88f5","webpack:///NextcloudVue.[name]/src/components/PopoverMenu/PopoverMenu.vue?0a3b","webpack:///webpack:/NextcloudVue.[name]/external \"core-js/modules/es.string.code-point-at\"","webpack:///webpack:/NextcloudVue.[name]/external \"core-js/modules/es.string.from-code-point\"","webpack:///NextcloudVue.[name]/src/components/Avatar/Avatar.vue?5a84","webpack:///NextcloudVue.[name]/src/components/Avatar/Avatar.vue?4eef","webpack:///./node_modules/core-js/internals/species-constructor.js","webpack:///./node_modules/core-js/internals/task.js","webpack:///./node_modules/core-js/internals/engine-is-ios.js","webpack:///./node_modules/core-js/internals/new-promise-capability.js","webpack:///./node_modules/charenc/charenc.js","webpack:///./node_modules/core-js/modules/es.object.keys.js","webpack:///../lib/scopedstorage.ts","webpack:///../lib/index.ts","webpack:///./node_modules/striptags/src/striptags.js","webpack:///../src/v-click-outside.js","webpack:///../src/index.js","webpack:///./node_modules/core-js/internals/not-a-regexp.js","webpack:///./node_modules/core-js/internals/correct-is-regexp-logic.js","webpack:///./node_modules/core-js/modules/es.array.join.js","webpack:///./node_modules/core-js/modules/es.promise.js","webpack:///./node_modules/core-js/internals/native-promise-constructor.js","webpack:///./node_modules/core-js/internals/microtask.js","webpack:///./node_modules/core-js/internals/promise-resolve.js","webpack:///./node_modules/core-js/internals/host-report-errors.js","webpack:///./node_modules/core-js/internals/perform.js","webpack:///./node_modules/regenerator-runtime/runtime.js","webpack:///./node_modules/core-js/modules/es.string.split.js","webpack:///./node_modules/md5/md5.js","webpack:///./node_modules/crypt/crypt.js","webpack:///./node_modules/is-buffer/index.js","webpack:///./node_modules/core-js/modules/es.array.flat.js","webpack:///./node_modules/core-js/internals/flatten-into-array.js","webpack:///./node_modules/core-js/modules/es.array.unscopables.flat.js","webpack:///./node_modules/core-js/modules/es.regexp.constructor.js","webpack:///../lib/storagebuilder.ts","webpack:///./node_modules/core-js/modules/es.string.match.js","webpack:///./node_modules/core-js/modules/es.array.includes.js","webpack:///./node_modules/core-js/modules/es.string.code-point-at.js","webpack:///./node_modules/core-js/modules/es.string.from-code-point.js"],"names":["DESCRIPTORS","require","global","isForced","redefine","has","classof","inheritIfRequired","toPrimitive","fails","create","getOwnPropertyNames","f","getOwnPropertyDescriptor","defineProperty","trim","NativeNumber","NumberPrototype","prototype","BROKEN_CLASSOF","toNumber","argument","first","third","radix","maxCode","digits","length","index","code","it","charCodeAt","NaN","slice","parseInt","key","NumberWrapper","value","arguments","dummy","this","valueOf","call","keys","split","j","constructor","descriptor","$","toLength","notARegExp","requireObjectCoercible","correctIsRegExpLogic","IS_PURE","nativeStartsWith","startsWith","min","Math","CORRECT_IS_REGEXP_LOGIC","target","proto","forced","String","writable","searchString","that","undefined","search","isObject","MATCH","wellKnownSymbol","module","exports","isRegExp","process","factory","window","installedModules","__webpack_require__","moduleId","i","l","modules","m","c","d","name","getter","o","Object","enumerable","get","r","Symbol","toStringTag","t","mode","__esModule","ns","bind","n","object","property","hasOwnProperty","p","s","normalizeComponent","scriptExports","render","staticRenderFns","functionalTemplate","injectStyles","scopeId","moduleIdentifier","shadowMode","hook","options","_compiled","functional","_scopeId","context","$vnode","ssrContext","parent","__VUE_SSR_CONTEXT__","_registeredComponents","add","_ssrRegister","$root","$options","shadowRoot","_injectStyles","originalRender","h","existing","beforeCreate","concat","useSourceMap","list","toString","map","item","content","sourceMap","base64","data","cssMapping","btoa","sourceMapping","unescape","encodeURIComponent","JSON","stringify","sourceURLs","sources","source","sourceRoot","join","mediaQuery","dedupe","alreadyImportedModules","id","_i","push","listToStyles","parentId","styles","newStyles","part","css","media","parts","hasDocument","document","DEBUG","Error","stylesInDom","head","getElementsByTagName","singletonElement","singletonCounter","isProduction","noop","isOldIE","navigator","test","userAgent","toLowerCase","addStylesClient","_isProduction","_options","addStylesToDom","newList","mayRemove","domStyle","refs","addStyle","createStyleElement","styleElement","createElement","type","appendChild","obj","update","remove","querySelector","parentNode","removeChild","styleIndex","applyToSingletonTag","applyToTag","newObj","textStore","replaceText","replacement","filter","Boolean","styleSheet","cssText","cssNode","createTextNode","childNodes","insertBefore","setAttribute","ssrId","firstChild","url","default","hash","needQuotes","replace","__webpack_exports__","VTooltip","defaultTemplate","SCOPE_VERSION","defaultHtml","locals","IsMobileState","isMobile","watch","val","$emit","created","addEventListener","handleWindowResize","beforeDestroy","removeEventListener","methods","documentElement","clientWidth","mounted","$on","onIsMobileChanged","$off","hasStatus","userStatus","status","message","icon","fetchUserStatus","userId","capabilities","getCapabilities","user_status","enabled","getCurrentUser","axios","generateOcsUrl","ocs","_this","_context","response","console","error","___CSS_LOADER_API_IMPORT___","RichContenteditable_MentionBubblevue_type_script_lang_js_","props","required","label","primary","computed","avatarUrl","mentionText","getAvatarUrl","user","size","_vm","_h","$createElement","_c","_self","staticClass","class","mention-bubble--primary","attrs","contenteditable","style","backgroundImage","_v","role","title","_s","USERID_REGEX","RegExp","USERID_REGEX_WITH_SPACE","userData","renderContent","escapeHtml","flat","genSelectTemplate","parseContent","text","stripTags","renderComponentHtml","MentionBubble","propsData","component","Item","Vue","extend","wrapper","mount","display","body","$mount","renderedHtml","innerHTML","$destroy","Color","g","b","mixPalette","steps","color1","color2","palette","step","ends","Array","GenColors","red","yellow","blue","palette1","palette2","palette3","excludeClickOutsideClasses","clickOutsideMiddleware","event","excludedClassList","isArray","hasNodeOrAnyParentClass","node","classArray","className","classList","contains","parentElement","isFullscreen","_isFullscreen","beforeMount","_onResize","outerHeight","screen","height","PopoverMenu_PopoverMenuItemvue_type_script_lang_js_","href","validator","iconIsUrl","action","PopoverMenu_PopoverMenuvue_type_script_lang_js_","components","PopoverMenuItem","download","rel","on","click","src","longtext","_e","active","input","submit","$event","preventDefault","placeholder","domProps","directives","rawName","expression","checked","model","change","$$a","$$el","$$c","$$i","$set","_q","composing","for","stopPropagation","disabled","menu","_l","PopoverMenu","getUserHasAvatar","setUserHasAvatar","flag","browserStorage","Avatar_Avatarvue_type_script_lang_js_","tooltip","ClickOutside","mixins","iconClass","showUserStatus","showUserStatusCompact","isGuest","displayName","allowPlaceholder","disableTooltip","disableMenu","tooltipMessage","isNoUser","statusColor","menuPosition","avatarUrlLoaded","avatarSrcSetLoaded","userDoesNotExist","isAvatarLoaded","isMenuLoaded","contactsMenuActions","contactsMenuOpenState","canDisplayUserStatus","showUserStatusIconOnAvatar","getUserIdentifier","isUserDefined","isDisplayNameDefined","isUrlDefined","hasMenu","shouldShowPlaceholder","avatarStyle","width","lineHeight","fontSize","initials","idx","html","actions","beforeDestroyed","handleUserStatusUpdated","toggleMenu","closeMenu","fetchContactsMenu","axios_default","_this2","loadAvatarUrl","srcset","avatarUrlGenerator","updateImageIfValid","userHasAvatar","img","_this3","avatardiv--unknown","avatardiv--with-menu","alt","backgroundColor","xmlns","viewBox","fill","stroke","stroke-width","stroke-linecap","is-open","Avatar","usernameToColor","username","match","md5","maximum","finalInt","result","charAt","___CSS_LOADER_GET_URL_IMPORT___","___CSS_LOADER_URL_IMPORT_0___","___CSS_LOADER_URL_IMPORT_1___","___CSS_LOADER_URL_IMPORT_2___","___CSS_LOADER_URL_IMPORT_3___","___CSS_LOADER_URL_REPLACEMENT_0___","___CSS_LOADER_URL_REPLACEMENT_1___","___CSS_LOADER_URL_REPLACEMENT_2___","___CSS_LOADER_URL_REPLACEMENT_3___","define","anObject","aFunction","SPECIES","O","defaultConstructor","S","C","defer","channel","port","IS_IOS","IS_NODE","location","set","setImmediate","clear","clearImmediate","MessageChannel","Dispatch","counter","queue","run","fn","runner","listener","post","postMessage","protocol","host","args","Function","apply","nextTick","now","port2","port1","onmessage","importScripts","setTimeout","PromiseCapability","resolve","reject","promise","$$resolve","$$reject","TypeError","charenc","utf8","stringToBytes","str","bin","bytesToString","bytes","decodeURIComponent","escape","fromCharCode","toObject","nativeKeys","stat","ScopedStorage","persistent","scopeKey","wrapped","getItem","removeItem","elem","fallback","atob","nonNative","STATE_PLAINTEXT","STATE_HTML","STATE_COMMENT","ALLOWED_TAGS_REGEX","NORMALIZE_TAG_REGEX","striptags","allowable_tags","tag_replacement","striptags_internal","init_context","tag_set","Set","exec","iterator","forEach","parse_allowable_tags","state","tag_buffer","depth","in_quote_char","output","char","normalize_tag","init_streaming_mode","HAS_WINDOWS","HAS_NAVIGATOR","EVENTS","msMaxTouchPoints","execHandler","handler","middleware","el","bindingValue","isFunction","events","isActive","detectIframe","processDirectiveArguments","eventName","srcTarget","path","composedPath","indexOf","detectIframeEvent","activeElement","tagName","unbind","oldValue","install","directive","METHOD_NAME","regexp","error1","error2","IndexedObject","toIndexedObject","arrayMethodIsStrict","nativeJoin","ES3_STRINGS","STRICT_METHOD","separator","Internal","OwnPromiseCapability","PromiseWrapper","nativeThen","getBuiltIn","NativePromise","redefineAll","setToStringTag","setSpecies","anInstance","inspectSource","iterate","checkCorrectnessOfIteration","speciesConstructor","task","microtask","promiseResolve","hostReportErrors","newPromiseCapabilityModule","perform","InternalStateModule","V8_VERSION","PROMISE","getInternalState","setInternalState","getInternalPromiseState","getterFor","PromiseConstructor","$fetch","newPromiseCapability","newGenericPromiseCapability","DISPATCH_EVENT","createEvent","dispatchEvent","NATIVE_REJECTION_EVENT","PromiseRejectionEvent","FORCED","FakePromise","then","INCORRECT_ITERATION","iterable","all","isThenable","notify","isReject","notified","chain","reactions","ok","exited","reaction","fail","domain","rejection","onHandleUnhandled","enter","exit","onUnhandled","reason","initEvent","facade","isUnhandled","emit","unwrap","internalReject","done","internalResolve","executor","onFulfilled","onRejected","unsafe","fetch","wrap","Promise","capability","x","$promiseResolve","values","remaining","alreadyCalled","race","flush","last","toggle","macrotask","MutationObserver","WebKitMutationObserver","queueMicrotaskDescriptor","queueMicrotask","next","observe","characterData","promiseCapability","a","runtime","Op","hasOwn","$Symbol","iteratorSymbol","asyncIteratorSymbol","asyncIterator","toStringTagSymbol","configurable","err","innerFn","outerFn","self","tryLocsList","protoGenerator","Generator","generator","Context","_invoke","method","arg","doneResult","delegate","delegateResult","maybeInvokeDelegate","ContinueSentinel","sent","_sent","dispatchException","abrupt","record","tryCatch","makeInvokeMethod","GeneratorFunction","GeneratorFunctionPrototype","IteratorPrototype","getProto","getPrototypeOf","NativeIteratorPrototype","Gp","defineIteratorMethods","AsyncIterator","PromiseImpl","previousPromise","callInvokeWithMethodAndArg","invoke","__await","unwrapped","info","resultName","nextLoc","pushTryEntry","locs","entry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","resetTryEntry","completion","reset","iteratorMethod","isNaN","isGeneratorFunction","genFun","ctor","mark","setPrototypeOf","__proto__","awrap","async","iter","reverse","pop","skipTempReset","prev","stop","rootRecord","rval","exception","handle","loc","caught","hasCatch","hasFinally","finallyEntry","complete","finish","thrown","delegateYield","regeneratorRuntime","accidentalStrictMode","fixRegExpWellKnownSymbolLogic","advanceStringIndex","callRegExpExec","regexpExec","arrayPush","SUPPORTS_Y","SPLIT","nativeSplit","maybeCallNative","internalSplit","limit","string","lim","lastIndex","lastLength","flags","ignoreCase","multiline","unicode","sticky","lastLastIndex","separatorCopy","splitter","res","rx","unicodeMatching","q","A","e","z","crypt","isBuffer","encoding","Uint8Array","bytesToWords","FF","_ff","GG","_gg","HH","_hh","II","_ii","aa","bb","cc","dd","endian","_blocksize","_digestsize","digestbytes","wordsToBytes","asBytes","asString","bytesToHex","base64map","rotl","rotr","Number","randomBytes","floor","random","words","hex","hexToBytes","substr","bytesToBase64","triplet","base64ToBytes","imod4","pow","readFloatLE","isSlowBuffer","_isBuffer","flattenIntoArray","toInteger","arraySpeciesCreate","depthArg","sourceLen","original","start","mapper","thisArg","element","targetIndex","sourceIndex","mapFn","addToUnscopables","getFlags","stickyHelpers","NativeRegExp","RegExpPrototype","re1","re2","CORRECT_NEW","UNSUPPORTED_Y","RegExpWrapper","pattern","thisIsRegExp","patternIsRegExp","flagsAreUndefined","proxy","appId","StorageBuilder","storages","clearStorage","k","storage","pred","persist","persisted","regExpExec","nativeMatch","matcher","fullUnicode","matchStr","$includes","includes","arrayMethodUsesToLength","ACCESSORS","1","codeAt","codePointAt","pos","toAbsoluteIndex","nativeFromCodePoint","fromCodePoint","elements","RangeError"],"mappings":"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","file":"vendors~editor-collab~editor-guest.js?v=18b2db1a3bd404ba4b2b","sourcesContent":["'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar global = require('../internals/global');\nvar isForced = require('../internals/is-forced');\nvar redefine = require('../internals/redefine');\nvar has = require('../internals/has');\nvar classof = require('../internals/classof-raw');\nvar inheritIfRequired = require('../internals/inherit-if-required');\nvar toPrimitive = require('../internals/to-primitive');\nvar fails = require('../internals/fails');\nvar create = require('../internals/object-create');\nvar getOwnPropertyNames = require('../internals/object-get-own-property-names').f;\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar defineProperty = require('../internals/object-define-property').f;\nvar trim = require('../internals/string-trim').trim;\n\nvar NUMBER = 'Number';\nvar NativeNumber = global[NUMBER];\nvar NumberPrototype = NativeNumber.prototype;\n\n// Opera ~12 has broken Object#toString\nvar BROKEN_CLASSOF = classof(create(NumberPrototype)) == NUMBER;\n\n// `ToNumber` abstract operation\n// https://tc39.github.io/ecma262/#sec-tonumber\nvar toNumber = function (argument) {\n var it = toPrimitive(argument, false);\n var first, third, radix, maxCode, digits, length, index, code;\n if (typeof it == 'string' && it.length > 2) {\n it = trim(it);\n first = it.charCodeAt(0);\n if (first === 43 || first === 45) {\n third = it.charCodeAt(2);\n if (third === 88 || third === 120) return NaN; // Number('+0x1') should be NaN, old V8 fix\n } else if (first === 48) {\n switch (it.charCodeAt(1)) {\n case 66: case 98: radix = 2; maxCode = 49; break; // fast equal of /^0b[01]+$/i\n case 79: case 111: radix = 8; maxCode = 55; break; // fast equal of /^0o[0-7]+$/i\n default: return +it;\n }\n digits = it.slice(2);\n length = digits.length;\n for (index = 0; index < length; index++) {\n code = digits.charCodeAt(index);\n // parseInt parses a string to a first unavailable symbol\n // but ToNumber should return NaN if a string contains unavailable symbols\n if (code < 48 || code > maxCode) return NaN;\n } return parseInt(digits, radix);\n }\n } return +it;\n};\n\n// `Number` constructor\n// https://tc39.github.io/ecma262/#sec-number-constructor\nif (isForced(NUMBER, !NativeNumber(' 0o1') || !NativeNumber('0b1') || NativeNumber('+0x1'))) {\n var NumberWrapper = function Number(value) {\n var it = arguments.length < 1 ? 0 : value;\n var dummy = this;\n return dummy instanceof NumberWrapper\n // check on 1..constructor(foo) case\n && (BROKEN_CLASSOF ? fails(function () { NumberPrototype.valueOf.call(dummy); }) : classof(dummy) != NUMBER)\n ? inheritIfRequired(new NativeNumber(toNumber(it)), dummy, NumberWrapper) : toNumber(it);\n };\n for (var keys = DESCRIPTORS ? getOwnPropertyNames(NativeNumber) : (\n // ES3:\n 'MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,' +\n // ES2015 (in case, if modules with ES2015 Number statics required before):\n 'EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,' +\n 'MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger'\n ).split(','), j = 0, key; keys.length > j; j++) {\n if (has(NativeNumber, key = keys[j]) && !has(NumberWrapper, key)) {\n defineProperty(NumberWrapper, key, getOwnPropertyDescriptor(NativeNumber, key));\n }\n }\n NumberWrapper.prototype = NumberPrototype;\n NumberPrototype.constructor = NumberWrapper;\n redefine(global, NUMBER, NumberWrapper);\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar toLength = require('../internals/to-length');\nvar notARegExp = require('../internals/not-a-regexp');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar correctIsRegExpLogic = require('../internals/correct-is-regexp-logic');\nvar IS_PURE = require('../internals/is-pure');\n\nvar nativeStartsWith = ''.startsWith;\nvar min = Math.min;\n\nvar CORRECT_IS_REGEXP_LOGIC = correctIsRegExpLogic('startsWith');\n// https://github.com/zloirock/core-js/pull/702\nvar MDN_POLYFILL_BUG = !IS_PURE && !CORRECT_IS_REGEXP_LOGIC && !!function () {\n var descriptor = getOwnPropertyDescriptor(String.prototype, 'startsWith');\n return descriptor && !descriptor.writable;\n}();\n\n// `String.prototype.startsWith` method\n// https://tc39.github.io/ecma262/#sec-string.prototype.startswith\n$({ target: 'String', proto: true, forced: !MDN_POLYFILL_BUG && !CORRECT_IS_REGEXP_LOGIC }, {\n startsWith: function startsWith(searchString /* , position = 0 */) {\n var that = String(requireObjectCoercible(this));\n notARegExp(searchString);\n var index = toLength(min(arguments.length > 1 ? arguments[1] : undefined, that.length));\n var search = String(searchString);\n return nativeStartsWith\n ? nativeStartsWith.call(that, search, index)\n : that.slice(index, index + search.length) === search;\n }\n});\n","var isObject = require('../internals/is-object');\nvar classof = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\n\n// `IsRegExp` abstract operation\n// https://tc39.github.io/ecma262/#sec-isregexp\nmodule.exports = function (it) {\n var isRegExp;\n return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : classof(it) == 'RegExp');\n};\n","var classof = require('../internals/classof-raw');\nvar global = require('../internals/global');\n\nmodule.exports = classof(global.process) == 'process';\n","(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine(\"Components/Avatar\", [], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"Components/Avatar\"] = factory();\n\telse\n\t\troot[\"NextcloudVue\"] = root[\"NextcloudVue\"] || {}, root[\"NextcloudVue\"][\"Components/Avatar\"] = factory();\n})(window, function() {\nreturn "," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/dist/\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 79);\n","/* globals __VUE_SSR_CONTEXT__ */\n\n// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).\n// This module is a runtime utility for cleaner component module output and will\n// be included in the final webpack user bundle.\n\nexport default function normalizeComponent (\n scriptExports,\n render,\n staticRenderFns,\n functionalTemplate,\n injectStyles,\n scopeId,\n moduleIdentifier, /* server only */\n shadowMode /* vue-cli only */\n) {\n // Vue.extend constructor export interop\n var options = typeof scriptExports === 'function'\n ? scriptExports.options\n : scriptExports\n\n // render functions\n if (render) {\n options.render = render\n options.staticRenderFns = staticRenderFns\n options._compiled = true\n }\n\n // functional template\n if (functionalTemplate) {\n options.functional = true\n }\n\n // scopedId\n if (scopeId) {\n options._scopeId = 'data-v-' + scopeId\n }\n\n var hook\n if (moduleIdentifier) { // server build\n hook = function (context) {\n // 2.3 injection\n context =\n context || // cached call\n (this.$vnode && this.$vnode.ssrContext) || // stateful\n (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional\n // 2.2 with runInNewContext: true\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n context = __VUE_SSR_CONTEXT__\n }\n // inject component styles\n if (injectStyles) {\n injectStyles.call(this, context)\n }\n // register component module identifier for async chunk inferrence\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier)\n }\n }\n // used by ssr in case component is cached and beforeCreate\n // never gets called\n options._ssrRegister = hook\n } else if (injectStyles) {\n hook = shadowMode\n ? function () {\n injectStyles.call(\n this,\n (options.functional ? this.parent : this).$root.$options.shadowRoot\n )\n }\n : injectStyles\n }\n\n if (hook) {\n if (options.functional) {\n // for template-only hot-reload because in that case the render fn doesn't\n // go through the normalizer\n options._injectStyles = hook\n // register for functional component in vue file\n var originalRender = options.render\n options.render = function renderWithStyleInjection (h, context) {\n hook.call(context)\n return originalRender(h, context)\n }\n } else {\n // inject component registration as beforeCreate hook\n var existing = options.beforeCreate\n options.beforeCreate = existing\n ? [].concat(existing, hook)\n : [hook]\n }\n }\n\n return {\n exports: scriptExports,\n options: options\n }\n}\n","\"use strict\";\n\n/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n*/\n// css base code, injected by the css-loader\n// eslint-disable-next-line func-names\nmodule.exports = function (useSourceMap) {\n var list = []; // return the list of modules as css string\n\n list.toString = function toString() {\n return this.map(function (item) {\n var content = cssWithMappingToString(item, useSourceMap);\n\n if (item[2]) {\n return \"@media \".concat(item[2], \" {\").concat(content, \"}\");\n }\n\n return content;\n }).join('');\n }; // import a list of modules into the list\n // eslint-disable-next-line func-names\n\n\n list.i = function (modules, mediaQuery, dedupe) {\n if (typeof modules === 'string') {\n // eslint-disable-next-line no-param-reassign\n modules = [[null, modules, '']];\n }\n\n var alreadyImportedModules = {};\n\n if (dedupe) {\n for (var i = 0; i < this.length; i++) {\n // eslint-disable-next-line prefer-destructuring\n var id = this[i][0];\n\n if (id != null) {\n alreadyImportedModules[id] = true;\n }\n }\n }\n\n for (var _i = 0; _i < modules.length; _i++) {\n var item = [].concat(modules[_i]);\n\n if (dedupe && alreadyImportedModules[item[0]]) {\n // eslint-disable-next-line no-continue\n continue;\n }\n\n if (mediaQuery) {\n if (!item[2]) {\n item[2] = mediaQuery;\n } else {\n item[2] = \"\".concat(mediaQuery, \" and \").concat(item[2]);\n }\n }\n\n list.push(item);\n }\n };\n\n return list;\n};\n\nfunction cssWithMappingToString(item, useSourceMap) {\n var content = item[1] || ''; // eslint-disable-next-line prefer-destructuring\n\n var cssMapping = item[3];\n\n if (!cssMapping) {\n return content;\n }\n\n if (useSourceMap && typeof btoa === 'function') {\n var sourceMapping = toComment(cssMapping);\n var sourceURLs = cssMapping.sources.map(function (source) {\n return \"/*# sourceURL=\".concat(cssMapping.sourceRoot || '').concat(source, \" */\");\n });\n return [content].concat(sourceURLs).concat([sourceMapping]).join('\\n');\n }\n\n return [content].join('\\n');\n} // Adapted from convert-source-map (MIT)\n\n\nfunction toComment(sourceMap) {\n // eslint-disable-next-line no-undef\n var base64 = btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap))));\n var data = \"sourceMappingURL=data:application/json;charset=utf-8;base64,\".concat(base64);\n return \"/*# \".concat(data, \" */\");\n}","/**\n * Translates the list format produced by css-loader into something\n * easier to manipulate.\n */\nexport default function listToStyles (parentId, list) {\n var styles = []\n var newStyles = {}\n for (var i = 0; i < list.length; i++) {\n var item = list[i]\n var id = item[0]\n var css = item[1]\n var media = item[2]\n var sourceMap = item[3]\n var part = {\n id: parentId + ':' + i,\n css: css,\n media: media,\n sourceMap: sourceMap\n }\n if (!newStyles[id]) {\n styles.push(newStyles[id] = { id: id, parts: [part] })\n } else {\n newStyles[id].parts.push(part)\n }\n }\n return styles\n}\n","/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n Modified by Evan You @yyx990803\n*/\n\nimport listToStyles from './listToStyles'\n\nvar hasDocument = typeof document !== 'undefined'\n\nif (typeof DEBUG !== 'undefined' && DEBUG) {\n if (!hasDocument) {\n throw new Error(\n 'vue-style-loader cannot be used in a non-browser environment. ' +\n \"Use { target: 'node' } in your Webpack config to indicate a server-rendering environment.\"\n ) }\n}\n\n/*\ntype StyleObject = {\n id: number;\n parts: Array<StyleObjectPart>\n}\n\ntype StyleObjectPart = {\n css: string;\n media: string;\n sourceMap: ?string\n}\n*/\n\nvar stylesInDom = {/*\n [id: number]: {\n id: number,\n refs: number,\n parts: Array<(obj?: StyleObjectPart) => void>\n }\n*/}\n\nvar head = hasDocument && (document.head || document.getElementsByTagName('head')[0])\nvar singletonElement = null\nvar singletonCounter = 0\nvar isProduction = false\nvar noop = function () {}\nvar options = null\nvar ssrIdKey = 'data-vue-ssr-id'\n\n// Force single-tag solution on IE6-9, which has a hard limit on the # of <style>\n// tags it will allow on a page\nvar isOldIE = typeof navigator !== 'undefined' && /msie [6-9]\\b/.test(navigator.userAgent.toLowerCase())\n\nexport default function addStylesClient (parentId, list, _isProduction, _options) {\n isProduction = _isProduction\n\n options = _options || {}\n\n var styles = listToStyles(parentId, list)\n addStylesToDom(styles)\n\n return function update (newList) {\n var mayRemove = []\n for (var i = 0; i < styles.length; i++) {\n var item = styles[i]\n var domStyle = stylesInDom[item.id]\n domStyle.refs--\n mayRemove.push(domStyle)\n }\n if (newList) {\n styles = listToStyles(parentId, newList)\n addStylesToDom(styles)\n } else {\n styles = []\n }\n for (var i = 0; i < mayRemove.length; i++) {\n var domStyle = mayRemove[i]\n if (domStyle.refs === 0) {\n for (var j = 0; j < domStyle.parts.length; j++) {\n domStyle.parts[j]()\n }\n delete stylesInDom[domStyle.id]\n }\n }\n }\n}\n\nfunction addStylesToDom (styles /* Array<StyleObject> */) {\n for (var i = 0; i < styles.length; i++) {\n var item = styles[i]\n var domStyle = stylesInDom[item.id]\n if (domStyle) {\n domStyle.refs++\n for (var j = 0; j < domStyle.parts.length; j++) {\n domStyle.parts[j](item.parts[j])\n }\n for (; j < item.parts.length; j++) {\n domStyle.parts.push(addStyle(item.parts[j]))\n }\n if (domStyle.parts.length > item.parts.length) {\n domStyle.parts.length = item.parts.length\n }\n } else {\n var parts = []\n for (var j = 0; j < item.parts.length; j++) {\n parts.push(addStyle(item.parts[j]))\n }\n stylesInDom[item.id] = { id: item.id, refs: 1, parts: parts }\n }\n }\n}\n\nfunction createStyleElement () {\n var styleElement = document.createElement('style')\n styleElement.type = 'text/css'\n head.appendChild(styleElement)\n return styleElement\n}\n\nfunction addStyle (obj /* StyleObjectPart */) {\n var update, remove\n var styleElement = document.querySelector('style[' + ssrIdKey + '~=\"' + obj.id + '\"]')\n\n if (styleElement) {\n if (isProduction) {\n // has SSR styles and in production mode.\n // simply do nothing.\n return noop\n } else {\n // has SSR styles but in dev mode.\n // for some reason Chrome can't handle source map in server-rendered\n // style tags - source maps in <style> only works if the style tag is\n // created and inserted dynamically. So we remove the server rendered\n // styles and inject new ones.\n styleElement.parentNode.removeChild(styleElement)\n }\n }\n\n if (isOldIE) {\n // use singleton mode for IE9.\n var styleIndex = singletonCounter++\n styleElement = singletonElement || (singletonElement = createStyleElement())\n update = applyToSingletonTag.bind(null, styleElement, styleIndex, false)\n remove = applyToSingletonTag.bind(null, styleElement, styleIndex, true)\n } else {\n // use multi-style-tag mode in all other cases\n styleElement = createStyleElement()\n update = applyToTag.bind(null, styleElement)\n remove = function () {\n styleElement.parentNode.removeChild(styleElement)\n }\n }\n\n update(obj)\n\n return function updateStyle (newObj /* StyleObjectPart */) {\n if (newObj) {\n if (newObj.css === obj.css &&\n newObj.media === obj.media &&\n newObj.sourceMap === obj.sourceMap) {\n return\n }\n update(obj = newObj)\n } else {\n remove()\n }\n }\n}\n\nvar replaceText = (function () {\n var textStore = []\n\n return function (index, replacement) {\n textStore[index] = replacement\n return textStore.filter(Boolean).join('\\n')\n }\n})()\n\nfunction applyToSingletonTag (styleElement, index, remove, obj) {\n var css = remove ? '' : obj.css\n\n if (styleElement.styleSheet) {\n styleElement.styleSheet.cssText = replaceText(index, css)\n } else {\n var cssNode = document.createTextNode(css)\n var childNodes = styleElement.childNodes\n if (childNodes[index]) styleElement.removeChild(childNodes[index])\n if (childNodes.length) {\n styleElement.insertBefore(cssNode, childNodes[index])\n } else {\n styleElement.appendChild(cssNode)\n }\n }\n}\n\nfunction applyToTag (styleElement, obj) {\n var css = obj.css\n var media = obj.media\n var sourceMap = obj.sourceMap\n\n if (media) {\n styleElement.setAttribute('media', media)\n }\n if (options.ssrId) {\n styleElement.setAttribute(ssrIdKey, obj.id)\n }\n\n if (sourceMap) {\n // https://developer.chrome.com/devtools/docs/javascript-debugging\n // this makes source maps inside style tags work properly in Chrome\n css += '\\n/*# sourceURL=' + sourceMap.sources[0] + ' */'\n // http://stackoverflow.com/a/26603875\n css += '\\n/*# sourceMappingURL=data:application/json;base64,' + btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))) + ' */'\n }\n\n if (styleElement.styleSheet) {\n styleElement.styleSheet.cssText = css\n } else {\n while (styleElement.firstChild) {\n styleElement.removeChild(styleElement.firstChild)\n }\n styleElement.appendChild(document.createTextNode(css))\n }\n}\n","module.exports = require(\"vue\");","module.exports = require(\"core-js/modules/es.object.to-string\");","module.exports = require(\"v-tooltip\");","module.exports = require(\"core-js/modules/es.function.name\");","module.exports = require(\"core-js/modules/es.array.index-of\");","module.exports = require(\"core-js/modules/es.array.map\");","module.exports = require(\"core-js/modules/es.regexp.to-string\");","module.exports = require(\"core-js/modules/es.regexp.exec\");","module.exports = require(\"@nextcloud/router\");","module.exports = require(\"core-js/modules/es.array.iterator\");","module.exports = require(\"core-js/modules/es.string.iterator\");","module.exports = require(\"core-js/modules/web.dom-collections.iterator\");","\"use strict\";\n\nmodule.exports = function (url, options) {\n if (!options) {\n // eslint-disable-next-line no-param-reassign\n options = {};\n } // eslint-disable-next-line no-underscore-dangle, no-param-reassign\n\n\n url = url && url.__esModule ? url.default : url;\n\n if (typeof url !== 'string') {\n return url;\n } // If url is already wrapped in quotes, remove them\n\n\n if (/^['\"].*['\"]$/.test(url)) {\n // eslint-disable-next-line no-param-reassign\n url = url.slice(1, -1);\n }\n\n if (options.hash) {\n // eslint-disable-next-line no-param-reassign\n url += options.hash;\n } // Should url be wrapped?\n // See https://drafts.csswg.org/css-values-3/#urls\n\n\n if (/[\"'() \\t\\n]/.test(url) || options.needQuotes) {\n return \"\\\"\".concat(url.replace(/\"/g, '\\\\\"').replace(/\\n/g, '\\\\n'), \"\\\"\");\n }\n\n return url;\n};","export default \"data:application/vnd.ms-fontobject;base64,rg8AAOQOAAABAAIAAAAAAAIABQMAAAAAAAABQJABAAAAAExQAAAAABAAAAAAAAAAAAAAAAAAAAEAAAAAGyusoQAAAAAAAAAAAAAAAAAAAAAAACgAAGkAYwBvAG4AZgBvAG4AdAAtAHYAdQBlAC0ANgA3AGEAZgAzADkAMgAAAAAAABYAAFYAZQByAHMAaQBvAG4AIAAxAC4AMAAAKAAAaQBjAG8AbgBmAG8AbgB0AC0AdgB1AGUALQA2ADcAYQBmADMAOQAyAAAAAAABAAAACgCAAAMAIE9TLzJ044/RAAAArAAAAGBjbWFwAA3ruAAAAQwAAAFCZ2x5ZsdHOUwAAAJQAAAH/GhlYWQp3k2oAAAKTAAAADZoaGVhJv0ThQAACoQAAAAkaG10eGe+//8AAAqoAAAANGxvY2ENvA9mAAAK3AAAAChtYXhwASAAVwAACwQAAAAgbmFtZT7yLDMAAAskAAACpnBvc3Q/VL7XAAANzAAAARYABBLKAZAABQAADGUNrAAAArwMZQ2sAAAJYAD1BQoAAAIABQMAAAAAAAAAAAAAEAAAAAAAAAAAAAAAUGZFZABA6gHqEhOIAAABwhOIAAAAAAABAAAAAAAAAAAAAAAgAAAAAAADAAAAAwAAABwAAQAAAAAAPAADAAEAAAAcAAQAIAAAAAQABAABAADqEv//AADqAf//FgAAAQAAAAAAAAEGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAOpg9DAAUACwAACQIRCQQRCQEOpvqCBX77ugRG+oL6ggV++7oERg9C+oL6ggE4BEYERgE4+oL6ggE4BEYERgABAAAAAA1uElAABQAACQERCQERBhsHU/d0CIwJxPit/sgIiwiM/scAAgAAAAAP3w9DAAUACwAACQIRCQQRCQEE4gV++oIERvu6BX4Ff/qBBEb7ugRGBX4Ffv7I+7r7uv7IBX4Ffv7I+7r7ugABAAAAAA6mElAABQAACQERCQERDW74rQiL93UJxAdTATn3dPd1ATgAAQAAAAAGNxOIAAUAABMHCQEXAZSUBXL6jpQFoxOIVfaR9pFVCcQAAAEAAAAAEYcPgwAFAAAJBQ/N9/P7+/5GBb8Jxw+D9/MEBf5H+kEJxgABAAAAABEXERcACwAACQsRF/3t+sD6wP3tBUD6wAITBUAFQAIT+sAEhP3tBUD6wAITBUAFQAIT+sAFQP3t+sAAAf//AAATkxLsADMAAAEiBw4BFxYXASEmBwYHBgcGFBcWFxYXFjchAQYHBhcWFx4BFxYXFjc2NwE2NzYnJicBLgEKYGVPSkYQEkgF1/HgTT46KScUFBQUJyk6Pk0OIPopNxoYAwMbGVY1Nzs+Oj81B+07FRUUFTz4Eyx0Euw5NKxZYEf6KgEbGC4sOTh4ODksLhgbAvopNT87Pjo3NlYZGgMDGBk4B+w8UVBPUjwH7C0yAAAAAgAAAAAOphJQABgARgAAASIHDgEHBhQXHgEXFjI3PgE3NjQnLgEnJgEiBwYHBhQXFhcWMyERISIHBgcGFBcWFxY3ITI3Njc2NCcmJyYjIRE0JyYnJiMJdm9mYpgpKyspmGJm3mZilyorKyqXYmb8NlZIRykrKylHSFYCcf2PVkhHKSsrKUdIVgdTVUhHKSsrKUdIVf2PKylHSVUSUCsql2Nl32VimCkrKymYYmXfZWOXKiv55SspR0irSEcpK/nmKylHSapJRykrASopR0mqSUcpKwdTVUhHKSsAAAMAAAAAERcRFwADAAcACwAAAREhEQERIREBESERAnEOpvFaDqbxWg6mERf9jwJx+eb9jwJx+eX9jwJxAAMAAAAAEp4L5wAYADEASgAAATIXHgEXFhQHDgEHBiInLgEnJjQ3PgE3NiEyFx4BFxYUBw4BBwYiJy4BJyY0Nz4BNzYhMhceARcWFAcOAQcGIicuAScmNDc+ATc2Aw1wZWKYKSsrKZhiZd9mYpcqKysql2JmByZvZmKXKisrKpdiZt5mYpcqKysql2JmByZvZmKXKisrKpdiZt9lYpgpKyspmGJlC+crKpdiZt5mYpcqKysql2Jm3mZilyorKyqXYmbeZmKXKisrKpdiZt5mYpcqKysql2Jm3mZilyorKyqXYmbeZmKXKisAAAAAAgAAAAAP3w/fAAMABwAAAREhESERIREDqgTiAnEE4g/f88sMNfPLDDUAAAABAAAAABEXERcAAgAACQICcQ6m8VoRF/it+K0AAQAAAAAOpgw1AAIAAAkCBOIE4gTiDDX7HgTgAAH/4AAAE2kTaQAxAAABBAUEBQQDAgMCERATEhMSBQQFBCEgJSQlJBMSExITBgAFBCEgJSQnJicmAwIREBMSAAhs/pj+sf66/u3+7sbKa26Ae+nlATkBPAFyAX4BlgFxAWEBVgEuASrr7JmcOLz+Kf75/vP+6v6+/s7+2f37uLtjZ1BOAScTaS6Xk+nn/tf+0/6r/p/+j/5q/oL+jv7E/sfl6HyAa2jFwgENAQ4BQwFLAWnM/tpOUGdju7j7/QEnATIBQgElARMBDQHLAAIAAAAAE4gTiAAkAEAAAAEgBQQFBAMCAwIQExITEgUEBQQgJSQlJBMSExIQAwIDAiUkJSQBITIXHgEXFhQHDgEHBiMhIicuAScmNDc+ATc2CcT+av6C/o7+xP7H5eh8gIB86OUBOQE8AXIBfgMsAX4BcgE8ATnl6HyAgHzo5f7H/sT+jv6C+sEHU1tXVIQkJiYkhFRXW/itXFdUhCQmJiSEVFcTiIB86OX+x/7E/o7+gvzU/oL+jv7E/sfl6HyAgHzo5QE5ATwBcgF+AywBfgFyATwBOeXofID4ESYlhFNXuFdThCUmJiWEU1e4V1OEJSYAAAACAAAAABOIE4gAJAA9AAABIAUEBQQDAgMCEBMSExIFBAUEICUkJSQTEhMSEAMCAwIlJCUkASAFBAATEhADAgAFBCAlJAADAhATEgAlJAnE/mr+gv6O/sT+x+XofICAfOjlATkBPAFyAX4DLAF+AXIBPAE55eh8gIB86OX+x/7E/o7+gv5qATcBFwEPAZtwdHRw/mX+8f7p/ZL+6f7x/mVwdHRwAZsBDwEXE4iAfOjl/sf+xP6O/oL81P6C/o7+xP7H5eh8gIB86OUBOQE8AXIBfgMsAX4BcgE8ATnl6HyA/Bh0cP5l/vH+6f2S/un+8f5lcHR0cAGbAQ8BFwJuARcBDwGbcHQAAAACAAAAABOIE4gAAwAoAAABIREhASAFBAUEAwIDAhATEhMSBQQFBCAlJCUkExITEhADAgMCJSQlJAXcB9D4MAPo/mr+gv6O/sT+x+XofICAfOjlATkBPAFyAX4DLAF+AXIBPAE55eh8gIB86OX+x/7E/o7+ggXcB9AF3IB86OX+x/7E/o7+gvzU/oL+jv7E/sfl6HyAgHzo5QE5ATwBcgF+AywBfgFyATwBOeXofIAAAAEAAAABAAChrCsbXw889QALE4gAAAAA287izQAAAADbfgbO/+AAABOTE4gAAAAIAAIAAAAAAAAAAQAAE4gAAAAAE4j/4P/1E5MAAQAAAAAAAAAAAAAAAAAAAAcAAAAAE4gAABOIAAATiAAAE4gAAAY2AAATiAAAAAD//wAAAAAAAAAAAAAAAP/gAAAAAAAAAAAAAAAiADYAWABsAIAAlAC0AQ4BfAGaAhACJgI0AkICqAMiA6YD/gABAAAAEwBLAAMAAAAAAAIAAAAKAAoAAAD/AAAAAAAAAAAAEADGAAEAAAAAAAEAFAAAAAEAAAAAAAIABwAUAAEAAAAAAAMAFAAbAAEAAAAAAAQAFAAvAAEAAAAAAAUACwBDAAEAAAAAAAYAFABOAAEAAAAAAAoAKwBiAAEAAAAAAAsAEwCNAAMAAQQJAAEAKACgAAMAAQQJAAIADgDIAAMAAQQJAAMAKADWAAMAAQQJAAQAKAD+AAMAAQQJAAUAFgEmAAMAAQQJAAYAKAE8AAMAAQQJAAoAVgFkAAMAAQQJAAsAJgG6aWNvbmZvbnQtdnVlLTY3YWYzOTJSZWd1bGFyaWNvbmZvbnQtdnVlLTY3YWYzOTJpY29uZm9udC12dWUtNjdhZjM5MlZlcnNpb24gMS4waWNvbmZvbnQtdnVlLTY3YWYzOTJHZW5lcmF0ZWQgYnkgc3ZnMnR0ZiBmcm9tIEZvbnRlbGxvIHByb2plY3QuaHR0cDovL2ZvbnRlbGxvLmNvbQBpAGMAbwBuAGYAbwBuAHQALQB2AHUAZQAtADYANwBhAGYAMwA5ADIAUgBlAGcAdQBsAGEAcgBpAGMAbwBuAGYAbwBuAHQALQB2AHUAZQAtADYANwBhAGYAMwA5ADIAaQBjAG8AbgBmAG8AbgB0AC0AdgB1AGUALQA2ADcAYQBmADMAOQAyAFYAZQByAHMAaQBvAG4AIAAxAC4AMABpAGMAbwBuAGYAbwBuAHQALQB2AHUAZQAtADYANwBhAGYAMwA5ADIARwBlAG4AZQByAGEAdABlAGQAIABiAHkAIABzAHYAZwAyAHQAdABmACAAZgByAG8AbQAgAEYAbwBuAHQAZQBsAGwAbwAgAHAAcgBvAGoAZQBjAHQALgBoAHQAdABwADoALwAvAGYAbwBuAHQAZQBsAGwAbwAuAGMAbwBtAAAAAgAAAAAAAAAyAAAAAAAAAAAAAAAAAAAAAAAAAAAAEwATAAABAgEDAQQBBQEGAQcBCAEJAQoBCwEMAQ0BDgEPARABEQESARMRYXJyb3ctbGVmdC1kb3VibGUKYXJyb3ctbGVmdBJhcnJvdy1yaWdodC1kb3VibGULYXJyb3ctcmlnaHQKYnJlYWRjcnVtYgljaGVja21hcmsFY2xvc2UHY29uZmlybQRpbmZvBG1lbnUEbW9yZQVwYXVzZQRwbGF5CnRyaWFuZ2xlLXMQdXNlci1zdGF0dXMtYXdheQ91c2VyLXN0YXR1cy1kbmQVdXNlci1zdGF0dXMtaW52aXNpYmxlEnVzZXItc3RhdHVzLW9ubGluZQAA\"","export default \"data:font/woff;base64,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PAE55eh8gAAAAQAAAAEAAKGsKxtfDzz1AAsTiAAAAADbzuLNAAAAANt+Bs7/4AAAE5MTiAAAAAgAAgAAAAAAAAABAAATiAAAAAATiP/g//UTkwABAAAAAAAAAAAAAAAAAAAABwAAAAATiAAAE4gAABOIAAATiAAABjYAABOIAAAAAP//AAAAAAAAAAAAAAAA/+AAAAAAAAAAAAAAACIANgBYAGwAgACUALQBDgF8AZoCEAImAjQCQgKoAyIDpgP+AAEAAAATAEsAAwAAAAAAAgAAAAoACgAAAP8AAAAAAAAAAAAQAMYAAQAAAAAAAQAUAAAAAQAAAAAAAgAHABQAAQAAAAAAAwAUABsAAQAAAAAABAAUAC8AAQAAAAAABQALAEMAAQAAAAAABgAUAE4AAQAAAAAACgArAGIAAQAAAAAACwATAI0AAwABBAkAAQAoAKAAAwABBAkAAgAOAMgAAwABBAkAAwAoANYAAwABBAkABAAoAP4AAwABBAkABQAWASYAAwABBAkABgAoATwAAwABBAkACgBWAWQAAwABBAkACwAmAbppY29uZm9udC12dWUtNjdhZjM5MlJlZ3VsYXJpY29uZm9udC12dWUtNjdhZjM5Mmljb25mb250LXZ1ZS02N2FmMzkyVmVyc2lvbiAxLjBpY29uZm9udC12dWUtNjdhZjM5MkdlbmVyYXRlZCBieSBzdmcydHRmIGZyb20gRm9udGVsbG8gcHJvamVjdC5odHRwOi8vZm9udGVsbG8uY29tAGkAYwBvAG4AZgBvAG4AdAAtAHYAdQBlAC0ANgA3AGEAZgAzADkAMgBSAGUAZwB1AGwAYQByAGkAYwBvAG4AZgBvAG4AdAAtAHYAdQBlAC0ANgA3AGEAZgAzADkAMgBpAGMAbwBuAGYAbwBuAHQALQB2AHUAZQAtADYANwBhAGYAMwA5ADIAVgBlAHIAcwBpAG8AbgAgADEALgAwAGkAYwBvAG4AZgBvAG4AdAAtAHYAdQBlAC0ANgA3AGEAZgAzADkAMgBHAGUAbgBlAHIAYQB0AGUAZAAgAGIAeQAgAHMAdgBnADIAdAB0AGYAIABmAHIAbwBtACAARgBvAG4AdABlAGwAbABvACAAcAByAG8AagBlAGMAdAAuAGgAdAB0AHAAOgAvAC8AZgBvAG4AdABlAGwAbABvAC4AYwBvAG0AAAACAAAAAAAAADIAAAAAAAAAAAAAAAAAAAAAAAAAAAATABMAAAECAQMBBAEFAQYBBwEIAQkBCgELAQwBDQEOAQ8BEAERARIBExFhcnJvdy1sZWZ0LWRvdWJsZQphcnJvdy1sZWZ0EmFycm93LXJpZ2h0LWRvdWJsZQthcnJvdy1yaWdodApicmVhZGNydW1iCWNoZWNrbWFyawVjbG9zZQdjb25maXJtBGluZm8EbWVudQRtb3JlBXBhdXNlBHBsYXkKdHJpYW5nbGUtcxB1c2VyLXN0YXR1cy1hd2F5D3VzZXItc3RhdHVzLWRuZBV1c2VyLXN0YXR1cy1pbnZpc2libGUSdXNlci1zdGF0dXMtb25saW5lAAA=\"","export default \"data:font/ttf;base64,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AAATiP/g//UTkwABAAAAAAAAAAAAAAAAAAAABwAAAAATiAAAE4gAABOIAAATiAAABjYAABOIAAAAAP//AAAAAAAAAAAAAAAA/+AAAAAAAAAAAAAAACIANgBYAGwAgACUALQBDgF8AZoCEAImAjQCQgKoAyIDpgP+AAEAAAATAEsAAwAAAAAAAgAAAAoACgAAAP8AAAAAAAAAAAAQAMYAAQAAAAAAAQAUAAAAAQAAAAAAAgAHABQAAQAAAAAAAwAUABsAAQAAAAAABAAUAC8AAQAAAAAABQALAEMAAQAAAAAABgAUAE4AAQAAAAAACgArAGIAAQAAAAAACwATAI0AAwABBAkAAQAoAKAAAwABBAkAAgAOAMgAAwABBAkAAwAoANYAAwABBAkABAAoAP4AAwABBAkABQAWASYAAwABBAkABgAoATwAAwABBAkACgBWAWQAAwABBAkACwAmAbppY29uZm9udC12dWUtNjdhZjM5MlJlZ3VsYXJpY29uZm9udC12dWUtNjdhZjM5Mmljb25mb250LXZ1ZS02N2FmMzkyVmVyc2lvbiAxLjBpY29uZm9udC12dWUtNjdhZjM5MkdlbmVyYXRlZCBieSBzdmcydHRmIGZyb20gRm9udGVsbG8gcHJvamVjdC5odHRwOi8vZm9udGVsbG8uY29tAGkAYwBvAG4AZgBvAG4AdAAtAHYAdQBlAC0ANgA3AGEAZgAzADkAMgBSAGUAZwB1AGwAYQByAGkAYwBvAG4AZgBvAG4AdAAtAHYAdQBlAC0ANgA3AGEAZgAzADkAMgBpAGMAbwBuAGYAbwBuAHQALQB2AHUAZQAtADYANwBhAGYAMwA5ADIAVgBlAHIAcwBpAG8AbgAgADEALgAwAGkAYwBvAG4AZgBvAG4AdAAtAHYAdQBlAC0ANgA3AGEAZgAzADkAMgBHAGUAbgBlAHIAYQB0AGUAZAAgAGIAeQAgAHMAdgBnADIAdAB0AGYAIABmAHIAbwBtACAARgBvAG4AdABlAGwAbABvACAAcAByAG8AagBlAGMAdAAuAGgAdAB0AHAAOgAvAC8AZgBvAG4AdABlAGwAbABvAC4AYwBvAG0AAAACAAAAAAAAADIAAAAAAAAAAAAAAAAAAAAAAAAAAAATABMAAAECAQMBBAEFAQYBBwEIAQkBCgELAQwBDQEOAQ8BEAERARIBExFhcnJvdy1sZWZ0LWRvdWJsZQphcnJvdy1sZWZ0EmFycm93LXJpZ2h0LWRvdWJsZQthcnJvdy1yaWdodApicmVhZGNydW1iCWNoZWNrbWFyawVjbG9zZQdjb25maXJtBGluZm8EbWVudQRtb3JlBXBhdXNlBHBsYXkKdHJpYW5nbGUtcxB1c2VyLXN0YXR1cy1hd2F5D3VzZXItc3RhdHVzLWRuZBV1c2VyLXN0YXR1cy1pbnZpc2libGUSdXNlci1zdGF0dXMtb25saW5lAAA=\"","export default \"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCIgPjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48bWV0YWRhdGE+PC9tZXRhZGF0YT48ZGVmcz48Zm9udCBpZD0iaWNvbmZvbnQtdnVlLTY3YWYzOTIiIGhvcml6LWFkdi14PSI1MDAwIj48Zm9udC1mYWNlIGZvbnQtZmFtaWx5PSJpY29uZm9udC12dWUtNjdhZjM5MiIgZm9udC13ZWlnaHQ9IjQwMCIgZm9udC1zdHJldGNoPSJub3JtYWwiIHVuaXRzLXBlci1lbT0iNTAwMCIgcGFub3NlLTE9IjIgMCA1IDMgMCAwIDAgMCAwIDAiIGFzY2VudD0iNTAwMCIgZGVzY2VudD0iMCIgeC1oZWlnaHQ9IjAiIGJib3g9Ii0zMiAwIDUwMTEgNTAwMCIgdW5kZXJsaW5lLXRoaWNrbmVzcz0iMCIgdW5kZXJsaW5lLXBvc2l0aW9uPSI1MCIgdW5pY29kZS1yYW5nZT0iVStlYTAxLWVhMTIiIC8+PG1pc3NpbmctZ2x5cGggaG9yaXotYWR2LXg9IjAiICAvPjxnbHlwaCBnbHlwaC1uYW1lPSJhcnJvdy1sZWZ0LWRvdWJsZSIgdW5pY29kZT0iJiN4ZWEwMTsiIGQ9Ik0zNzUwIDM5MDYgbC0xNDA2IC0xNDA2IGwxNDA2IC0xNDA2IGwwIDMxMiBsLTEwOTQgMTA5NCBsMTA5NCAxMDk0IGwwIDMxMiBaTTIzNDQgMzkwNiBsLTE0MDYgLTE0MDYgbDE0MDYgLTE0MDYgbDAgMzEyIGwtMTA5NCAxMDk0IGwxMDk0IDEwOTQgbDAgMzEyIFoiIC8+PGdseXBoIGdseXBoLW5hbWU9ImFycm93LWxlZnQiIHVuaWNvZGU9IiYjeGVhMDI7IiBkPSJNMTU2MyAyNTAwIGwxODc1IC0xODc1IGwwIC0zMTIgbC0yMTg4IDIxODcgbDIxODggMjE4OCBsMCAtMzEzIGwtMTg3NSAtMTg3NSBaIiAvPjxnbHlwaCBnbHlwaC1uYW1lPSJhcnJvdy1yaWdodC1kb3VibGUiIHVuaWNvZGU9IiYjeGVhMDM7IiBkPSJNMTI1MCAxMDk0IGwxNDA2IDE0MDYgbC0xNDA2IDE0MDYgbDAgLTMxMiBsMTA5NCAtMTA5NCBsLTEwOTQgLTEwOTQgbDAgLTMxMiBaTTI2NTYgMTA5NCBsMTQwNyAxNDA2IGwtMTQwNyAxNDA2IGwwIC0zMTIgbDEwOTQgLTEwOTQgbC0xMDk0IC0xMDk0IGwwIC0zMTIgWiIgLz48Z2x5cGggZ2x5cGgtbmFtZT0iYXJyb3ctcmlnaHQiIHVuaWNvZGU9IiYjeGVhMDQ7IiBkPSJNMzQzOCAyNTAwIGwtMTg3NSAxODc1IGwwIDMxMyBsMjE4NyAtMjE4OCBsLTIxODcgLTIxODcgbDAgMzEyIGwxODc1IDE4NzUgWiIgLz48Z2x5cGggZ2x5cGgtbmFtZT0iYnJlYWRjcnVtYiIgdW5pY29kZT0iJiN4ZWEwNTsiIGQ9Ik0xNDggNTAwMCBsLTE0OCAtODUgbDEzOTQgLTI0MTUgbC0xMzk0IC0yNDE1IGwxNDggLTg1IGwxNDQzIDI1MDAgbC0xNDQzIDI1MDAgWiIgLz48Z2x5cGggZ2x5cGgtbmFtZT0iY2hlY2ttYXJrIiB1bmljb2RlPSImI3hlYTA2OyIgZD0iTTQwNDUgMzk3MSBsLTIwNjEgLTIwNjEgbC0xMDI5IDEwMjkgbC00NDIgLTQ0MSBsMTQ3MSAtMTQ3MSBsMjUwMyAyNTAyIGwtNDQyIDQ0MiBaIiAvPjxnbHlwaCBnbHlwaC1uYW1lPSJjbG9zZSIgdW5pY29kZT0iJiN4ZWEwNzsiIGQ9Ik00Mzc1IDExNTYgbC01MzEgLTUzMSBsLTEzNDQgMTM0NCBsLTEzNDQgLTEzNDQgbC01MzEgNTMxIGwxMzQ0IDEzNDQgbC0xMzQ0IDEzNDQgbDUzMSA1MzEgbDEzNDQgLTEzNDQgbDEzNDQgMTM0NCBsNTMxIC01MzEgbC0xMzQ0IC0xMzQ0IGwxMzQ0IC0xMzQ0IFoiIC8+PGdseXBoIGdseXBoLW5hbWU9ImNvbmZpcm0iIHVuaWNvZGU9IiYjeGVhMDg7IiBkPSJNMjY1NiA0ODQ0IHEtMTAxIDAgLTE4MCAtNTcgcS03NCAtNTIgLTEwOSAtMTM4IHEtMzUgLTg2IC0xOSAtMTc1IHExOCAtOTYgOTAgLTE2NyBsMTQ5NSAtMTQ5NCBsLTM2MTYgMCBxLTc3IDEgLTEzOSAtMjYgcS01OCAtMjQgLTk5IC03MCBxLTM5IC00NCAtNTkgLTEwMSBxLTIwIC01NiAtMjAgLTExNiBxMCAtNjAgMjAgLTExNiBxMjAgLTU3IDU5IC0xMDEgcTQxIC00NiA5OSAtNzAgcTYyIC0yNyAxMzkgLTI1IGwzNjE2IDAgbC0xNDk1IC0xNDk1IHEtNTUgLTUzIC04MSAtMTE2IHEtMjQgLTU5IC0yMSAtMTIxIHEzIC01OCAzMCAtMTEzIHEyNSAtNTQgNjggLTk3IHE0MyAtNDMgOTYgLTY4IHE1NSAtMjYgMTE0IC0yOSBxNjIgLTMgMTIwIDIxIHE2MyAyNSAxMTYgODEgbDIwMjkgMjAyOCBxNTkgNjAgODAgMTQxIHEyMSA4MCAxIDE1OSBxLTIxIDgyIC04MSAxNDIgbC0yMDI5IDIwMjggcS00NCA0NSAtMTAyIDcwIHEtNTggMjUgLTEyMiAyNSBaIiAvPjxnbHlwaCBnbHlwaC1uYW1lPSJpbmZvIiB1bmljb2RlPSImI3hlYTA5OyIgZD0iTTI0MjIgNDY4OCBxLTExMSAwIC0yMTMgLTQzIHEtOTggLTQyIC0xNzQgLTExNy41IHEtNzYgLTc1LjUgLTExNyAtMTc0LjUgcS00MyAtMTAxIC00MyAtMjEyLjUgcTAgLTExMS41IDQzIC0yMTIuNSBxNDEgLTk4IDExNyAtMTc0IHE3NiAtNzYgMTc0IC0xMTcgcTEwMiAtNDMgMjEzIC00MyBxMTExIDAgMjEzIDQzIHE5OCA0MSAxNzMuNSAxMTcgcTc1LjUgNzYgMTE3LjUgMTc0IHE0MyAxMDEgNDMgMjEyLjUgcTAgMTExLjUgLTQzIDIxMi41IHEtNDIgOTkgLTExNy41IDE3NC41IHEtNzUuNSA3NS41IC0xNzMuNSAxMTcuNSBxLTEwMiA0MyAtMjEzIDQzIFpNMTU2MyAzMTI1IHEtODYgMCAtMTU4IC00MyBxLTcxIC00MSAtMTEyIC0xMTIgcS00MyAtNzIgLTQzIC0xNTcuNSBxMCAtODUuNSA0MyAtMTU3LjUgcTQxIC03MSAxMTIgLTExMiBxNzIgLTQzIDE1OCAtNDMgbDYyNSAwIGwwIC0xNTYyIGwtNjI1IDAgcS04NiAwIC0xNTggLTQzIHEtNzEgLTQxIC0xMTIgLTExMiBxLTQzIC03MyAtNDMgLTE1OCBxMCAtODUgNDMgLTE1OCBxNDEgLTcxIDExMiAtMTEyIHE3MiAtNDMgMTU4IC00MiBsMTg3NSAwIHE4NSAwIDE1NyA0MiBxNzEgNDEgMTEyIDExMiBxNDMgNzMgNDMgMTU4IHEwIDg1IC00MyAxNTggcS00MSA3MSAtMTEyIDExMiBxLTcyIDQzIC0xNTcgNDMgbC02MjUgMCBsMCAxODc1IHEwIDg1IC00MyAxNTcgcS00MSA3MSAtMTEyIDExMiBxLTczIDQzIC0xNTggNDMgbC05MzcgMCBaIiAvPjxnbHlwaCBnbHlwaC1uYW1lPSJtZW51IiB1bmljb2RlPSImI3hlYTBhOyIgZD0iTTYyNSA0Mzc1IGwwIC02MjUgbDM3NTAgMCBsMCA2MjUgbC0zNzUwIDAgWk02MjUgMjgxMyBsMCAtNjI1IGwzNzUwIDAgbDAgNjI1IGwtMzc1MCAwIFpNNjI1IDEyNTAgbDAgLTYyNSBsMzc1MCAwIGwwIDYyNSBsLTM3NTAgMCBaIiAvPjxnbHlwaCBnbHlwaC1uYW1lPSJtb3JlIiB1bmljb2RlPSImI3hlYTBiOyIgZD0iTTc4MSAzMDQ3IHExMTIgMCAyMTMgLTQzIHE5OCAtNDIgMTc0IC0xMTcuNSBxNzYgLTc1LjUgMTE3IC0xNzMuNSBxNDMgLTEwMiA0MyAtMjEzIHEwIC0xMTEgLTQzIC0yMTMgcS00MSAtOTggLTExNyAtMTczLjUgcS03NiAtNzUuNSAtMTc0IC0xMTcuNSBxLTEwMSAtNDMgLTIxMi41IC00MyBxLTExMS41IDAgLTIxMy41IDQzIHEtOTggNDIgLTE3My41IDExNy41IHEtNzUuNSA3NS41IC0xMTcuNSAxNzMuNSBxLTQzIDEwMiAtNDMgMjEzIHEwIDExMSA0MyAyMTMgcTQyIDk4IDExNy41IDE3My41IHE3NS41IDc1LjUgMTczLjUgMTE3LjUgcTEwMiA0MyAyMTMgNDMgWk0yNTAwIDMwNDcgcTExMSAwIDIxMyAtNDMgcTk4IC00MiAxNzMuNSAtMTE3LjUgcTc1LjUgLTc1LjUgMTE3LjUgLTE3My41IHE0MyAtMTAyIDQzIC0yMTMgcTAgLTExMSAtNDMgLTIxMyBxLTQyIC05OCAtMTE3LjUgLTE3My41IHEtNzUuNSAtNzUuNSAtMTczLjUgLTExNy41IHEtMTAyIC00MyAtMjEzIC00MyBxLTExMSAwIC0yMTMgNDMgcS05OCA0MiAtMTczLjUgMTE3LjUgcS03NS41IDc1LjUgLTExNy41IDE3My41IHEtNDMgMTAyIC00MyAyMTMgcTAgMTExIDQzIDIxMyBxNDIgOTggMTE3LjUgMTczLjUgcTc1LjUgNzUuNSAxNzMuNSAxMTcuNSBxMTAyIDQzIDIxMyA0MyBaTTQyMTkgMzA0NyBxMTExIDAgMjEzIC00MyBxOTggLTQyIDE3My41IC0xMTcuNSBxNzUuNSAtNzUuNSAxMTcuNSAtMTczLjUgcTQzIC0xMDIgNDMgLTIxMyBxMCAtMTExIC00MyAtMjEzIHEtNDIgLTk4IC0xMTcuNSAtMTczLjUgcS03NS41IC03NS41IC0xNzMuNSAtMTE3LjUgcS0xMDIgLTQzIC0yMTMuNSAtNDMgcS0xMTEuNSAwIC0yMTIuNSA0MyBxLTk4IDQyIC0xNzQgMTE3LjUgcS03NiA3NS41IC0xMTcgMTczLjUgcS00MyAxMDIgLTQzIDIxMyBxMCAxMTEgNDMgMjEzIHE0MSA5OCAxMTcgMTczLjUgcTc2IDc1LjUgMTc0IDExNy41IHExMDEgNDMgMjEzIDQzIFoiIC8+PGdseXBoIGdseXBoLW5hbWU9InBhdXNlIiB1bmljb2RlPSImI3hlYTBjOyIgZD0iTTkzOCA0MDYzIGwwIC0zMTI1IGwxMjUwIDAgbDAgMzEyNSBsLTEyNTAgMCBaTTI4MTMgNDA2MyBsMCAtMzEyNSBsMTI1MCAwIGwwIDMxMjUgbC0xMjUwIDAgWiIgLz48Z2x5cGggZ2x5cGgtbmFtZT0icGxheSIgdW5pY29kZT0iJiN4ZWEwZDsiIGQ9Ik02MjUgNDM3NSBsMzc1MCAtMTg3NSBsLTM3NTAgLTE4NzUgbDAgMzc1MCBaIiAvPjxnbHlwaCBnbHlwaC1uYW1lPSJ0cmlhbmdsZS1zIiB1bmljb2RlPSImI3hlYTBlOyIgZD0iTTEyNTAgMzEyNSBsMTI1MCAtMTI1MCBsMTI1MCAxMjQ4IGwtMjUwMCAyIFoiIC8+PGdseXBoIGdseXBoLW5hbWU9InVzZXItc3RhdHVzLWF3YXkiIHVuaWNvZGU9IiYjeGVhMGY7IiBkPSJNMjE1NiA0OTY5IHEtMzYwIC00NiAtNjk1IC0xOTcgcS0zMjYgLTE0NyAtNjAxIC0zODAgcS0yNzQgLTIzMSAtNDcyIC01MjggcS0yMDIgLTMwMSAtMzA5IC02NDIgcS0xMTAgLTM1MyAtMTEwIC03MjIgcTAgLTQwNiAxMjggLTc4OCBxMTIzIC0zNzAgMzU2IC02ODYgcTIyOSAtMzEzIDU0MiAtNTQyIHEzMTYgLTIzMiA2ODYgLTM1NiBxMzgyIC0xMjggNzg4IC0xMjggcTM2OSAwIDcyMiAxMDcgcTM0MiAxMDQgNjQ0IDMwMSBxMjk4IDE5NCA1MzMgNDYzIHEyMzYgMjcwIDM4OSA1OTMgcTE1NiAzMzEgMjEyIDY5MiBxLTE4OCAtMjA0IC00MjMuNSAtMzUxIHEtMjM1LjUgLTE0NyAtNDk4LjUgLTIyNSBxLTI2OSAtODAgLTU0NyAtODAgcS0zMjIgMCAtNjI4IDEwMyBxLTI5NSA5OSAtNTQ4IDI4NiBxLTI1MSAxODQgLTQzNSA0MzUgcS0xODcgMjUzIC0yODYgNTQ4IHEtMTAzIDMwNiAtMTAzIDYyOCBxMCAyOTMgODAgNTY4IHE3OCAyNjkgMjI1LjUgNDk4LjUgcTE0Ny41IDIyOS41IDM1MC41IDQwMi41IFoiIC8+PGdseXBoIGdseXBoLW5hbWU9InVzZXItc3RhdHVzLWRuZCIgdW5pY29kZT0iJiN4ZWExMDsiIGQ9Ik0yNTAwIDUwMDAgcS00MDYgMCAtNzg4IC0xMjggcS0zNzAgLTEyNCAtNjg2IC0zNTYgcS0zMTMgLTIyOSAtNTQyIC01NDIgcS0yMzIgLTMxNiAtMzU2IC02ODYgcS0xMjggLTM4MiAtMTI4IC03ODggcTAgLTQwNiAxMjggLTc4OCBxMTI0IC0zNzAgMzU2IC02ODYgcTIyOSAtMzEzIDU0MiAtNTQyIHEzMTYgLTIzMiA2ODYgLTM1NiBxMzgyIC0xMjggNzg4IC0xMjggcTQwNiAwIDc4OCAxMjggcTM3MCAxMjQgNjg2IDM1NiBxMzEzIDIyOSA1NDIgNTQyIHEyMzIgMzE2IDM1NiA2ODYgcTEyOCAzODIgMTI4IDc4OCBxMCA0MDYgLTEyOCA3ODggcS0xMjQgMzcwIC0zNTYgNjg2IHEtMjI5IDMxMyAtNTQyIDU0MiBxLTMxNiAyMzIgLTY4NiAzNTYgcS0zODIgMTI4IC03ODggMTI4IFpNMTU2MyAyOTY5IGwxODc1IDAgcTkxIDAgMTc4IC0zOCBxODQgLTM3IDE1MCAtMTAzIHE2NiAtNjYgMTAyIC0xNDkgcTM4IC04NyAzOCAtMTc5IHEwIC05MiAtMzggLTE3OSBxLTM2IC04MyAtMTAyIC0xNDkgcS02NiAtNjYgLTE1MCAtMTAzIHEtODcgLTM4IC0xNzggLTM4IGwtMTg3NSAwIHEtOTIgMCAtMTc5IDM4IHEtODQgMzcgLTE1MCAxMDMgcS02NiA2NiAtMTAyIDE0OSBxLTM4IDg3IC0zOCAxNzkgcTAgOTIgMzggMTc5IHEzNiA4MyAxMDIgMTQ5IHE2NiA2NiAxNTAgMTAzIHE4NyAzOCAxNzkgMzggWiIgLz48Z2x5cGggZ2x5cGgtbmFtZT0idXNlci1zdGF0dXMtaW52aXNpYmxlIiB1bmljb2RlPSImI3hlYTExOyIgZD0iTTI1MDAgNTAwMCBxLTQwNiAwIC03ODggLTEyOCBxLTM3MCAtMTI0IC02ODYgLTM1NiBxLTMxMyAtMjI5IC01NDIgLTU0MiBxLTIzMiAtMzE2IC0zNTYgLTY4NiBxLTEyOCAtMzgyIC0xMjggLTc4OCBxMCAtNDA2IDEyOCAtNzg4IHExMjQgLTM3MCAzNTYgLTY4NiBxMjI5IC0zMTMgNTQyIC01NDIgcTMxNiAtMjMyIDY4NiAtMzU2IHEzODIgLTEyOCA3ODggLTEyOCBxNDA2IDAgNzg4IDEyOCBxMzcwIDEyNCA2ODYgMzU2IHEzMTMgMjI5IDU0MiA1NDIgcTIzMiAzMTYgMzU2IDY4NiBxMTI4IDM4MiAxMjggNzg4IHEwIDQwNiAtMTI4IDc4OCBxLTEyNCAzNzAgLTM1NiA2ODYgcS0yMjkgMzEzIC01NDIgNTQyIHEtMzE2IDIzMiAtNjg2IDM1NiBxLTM4MiAxMjggLTc4OCAxMjggWk0yNTAwIDQwMDAgcTMxMSAwIDU5MCAtMTE2IHEyNzEgLTExMiA0NzYuNSAtMzE3LjUgcTIwNS41IC0yMDUuNSAzMTcuNSAtNDc2LjUgcTExNiAtMjc5IDExNiAtNTkwIHEwIC0zMTEgLTExNiAtNTkwIHEtMTEyIC0yNzEgLTMxNy41IC00NzYuNSBxLTIwNS41IC0yMDUuNSAtNDc2LjUgLTMxNy41IHEtMjc5IC0xMTYgLTU5MCAtMTE2IHEtMzExIDAgLTU5MCAxMTYgcS0yNzEgMTEyIC00NzYuNSAzMTcuNSBxLTIwNS41IDIwNS41IC0zMTcuNSA0NzYuNSBxLTExNiAyNzkgLTExNiA1OTAgcTAgMzExIDExNiA1OTAgcTExMiAyNzEgMzE3LjUgNDc2LjUgcTIwNS41IDIwNS41IDQ3Ni41IDMxNy41IHEyNzkgMTE2IDU5MCAxMTYgWiIgLz48Z2x5cGggZ2x5cGgtbmFtZT0idXNlci1zdGF0dXMtb25saW5lIiB1bmljb2RlPSImI3hlYTEyOyIgZD0iTTE1MDAgMTUwMCBsMjAwMCAwIGwwIDIwMDAgbC0yMDAwIDAgbDAgLTIwMDAgWk0yNTAwIDUwMDAgcS00MDYgMCAtNzg4IC0xMjggcS0zNzAgLTEyNCAtNjg2IC0zNTYgcS0zMTMgLTIyOSAtNTQyIC01NDIgcS0yMzIgLTMxNiAtMzU2IC02ODYgcS0xMjggLTM4MiAtMTI4IC03ODggcTAgLTQwNiAxMjggLTc4OCBxMTI0IC0zNzAgMzU2IC02ODYgcTIyOSAtMzEzIDU0MiAtNTQyIHEzMTYgLTIzMiA2ODYgLTM1NiBxMzgyIC0xMjggNzg4IC0xMjggcTQwNiAwIDc4OCAxMjggcTM3MCAxMjQgNjg2IDM1NiBxMzEzIDIyOSA1NDIgNTQyIHEyMzIgMzE2IDM1NiA2ODYgcTEyOCAzODIgMTI4IDc4OCBxMCA0MDYgLTEyOCA3ODggcS0xMjQgMzcwIC0zNTYgNjg2IHEtMjI5IDMxMyAtNTQyIDU0MiBxLTMxNiAyMzIgLTY4NiAzNTYgcS0zODIgMTI4IC03ODggMTI4IFoiIC8+PC9mb250PjwvZGVmcz48L3N2Zz4=\"","/**\n * @copyright Copyright (c) 2019 Julius Härtl <jus@bitgrid.net>\n *\n * @author Julius Härtl <jus@bitgrid.net>\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nimport { VTooltip } from 'v-tooltip'\nimport './index.scss'\n\n// force scope the tooltip and use .vue-tooltip\n// instead of .tooltip to avoid server compatibility\n// issues and the use of !important\nVTooltip.options.defaultTemplate = `<div class=\"vue-tooltip\" role=\"tooltip\" data-v-${SCOPE_VERSION}><div class=\"tooltip-arrow\"></div><div class=\"tooltip-inner\"></div></div>`\nVTooltip.options.defaultHtml = false\n\nexport default VTooltip\n","module.exports = require(\"core-js/modules/es.string.replace\");","module.exports = require(\"core-js/modules/es.array.concat\");","module.exports = require(\"@nextcloud/event-bus\");","module.exports = require(\"core-js/modules/es.symbol\");","module.exports = require(\"core-js/modules/es.number.constructor\");","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/resolve-url-loader/index.js!../../../node_modules/sass-loader/dist/cjs.js??ref--1-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MentionBubble.vue?vue&type=style&index=0&id=724f9d58&lang=scss&scoped=true&\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"0d897b1e\", content, true, {});","module.exports = require(\"core-js/modules/web.url\");","module.exports = require(\"core-js/modules/es.symbol.description\");","module.exports = require(\"core-js/modules/es.array.slice\");","module.exports = require(\"@nextcloud/axios\");","module.exports = require(\"@nextcloud/auth\");","/**\n * @copyright Copyright (c) 2019 Kristof Hamann, Paul Schwörer\n *\n * @author Kristof Hamann\n * @author Paul Schwörer\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\nimport Vue from 'vue'\n\nexport const IsMobileState = new Vue({\n\tdata() {\n\t\treturn {\n\t\t\tisMobile: false,\n\t\t}\n\t},\n\twatch: {\n\t\tisMobile(val) {\n\t\t\tthis.$emit('changed', val)\n\t\t},\n\t},\n\tcreated() {\n\t\twindow.addEventListener('resize', this.handleWindowResize)\n\t\tthis.handleWindowResize()\n\t},\n\tbeforeDestroy() {\n\t\twindow.removeEventListener('resize', this.handleWindowResize)\n\t},\n\tmethods: {\n\t\thandleWindowResize() {\n\t\t\tthis.isMobile = document.documentElement.clientWidth < 1024\n\t\t},\n\t},\n})\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\nimport { IsMobileState } from '../../utils/IsMobileState'\n\nexport default {\n\tdata() {\n\t\treturn {\n\t\t\tisMobile: false,\n\t\t}\n\t},\n\tmounted() {\n\t\tIsMobileState.$on('changed', this.onIsMobileChanged)\n\t\tthis.isMobile = IsMobileState.isMobile\n\t},\n\tbeforeDestroy() {\n\t\tIsMobileState.$off('changed', this.onIsMobileChanged)\n\t},\n\tmethods: {\n\t\tonIsMobileChanged(val) {\n\t\t\tthis.isMobile = val\n\t\t},\n\t},\n}\n","module.exports = require(\"core-js/modules/es.symbol.iterator\");","module.exports = require(\"striptags\");","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/resolve-url-loader/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PopoverMenuItem.vue?vue&type=style&index=0&id=3ad7b73b&scoped=true&lang=css&\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"2c4a49e8\", content, true, {});","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/resolve-url-loader/index.js!../../../node_modules/sass-loader/dist/cjs.js??ref--1-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PopoverMenuItem.vue?vue&type=style&index=1&id=3ad7b73b&lang=scss&scoped=true&\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"482a1b4c\", content, true, {});","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/resolve-url-loader/index.js!../../../node_modules/sass-loader/dist/cjs.js??ref--1-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PopoverMenu.vue?vue&type=style&index=0&id=81c2afc0&lang=scss&scoped=true&\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"93093140\", content, true, {});","module.exports = require(\"core-js/modules/es.array.from\");","module.exports = require(\"v-click-outside\");","/**\n * @copyright Copyright (c) 2020 Georg Ehrke <georg-nextcloud@ehrke.email>\n *\n * @author Georg Ehrke <georg-nextcloud@ehrke.email>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nimport axios from '@nextcloud/axios'\nimport { generateOcsUrl } from '@nextcloud/router'\nimport { getCapabilities } from '@nextcloud/capabilities'\nimport { getCurrentUser } from '@nextcloud/auth'\n\nexport default {\n\tdata() {\n\t\treturn {\n\t\t\thasStatus: false,\n\t\t\tuserStatus: {\n\t\t\t\tstatus: null,\n\t\t\t\tmessage: null,\n\t\t\t\ticon: null,\n\t\t\t},\n\t\t}\n\t},\n\tmethods: {\n\t\t/**\n\t\t * Fetches the user-status from the server\n\t\t * @param {String} userId UserId of the user to fetch the status for\n\t\t *\n\t\t * @returns {Promise<void>}\n\t\t */\n\t\tasync fetchUserStatus(userId) {\n\t\t\tconst capabilities = getCapabilities()\n\t\t\tif (!Object.prototype.hasOwnProperty.call(capabilities, 'user_status') || !capabilities.user_status.enabled) {\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\t// User status endpoint is not available for guests.\n\t\t\tif (!getCurrentUser()) {\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\ttry {\n\t\t\t\tconst { data } = await axios.get(generateOcsUrl('apps/user_status/api/v1', 2) + `statuses/${encodeURIComponent(userId)}`)\n\t\t\t\tconst {\n\t\t\t\t\tstatus,\n\t\t\t\t\tmessage,\n\t\t\t\t\ticon,\n\t\t\t\t} = data.ocs.data\n\t\t\t\tthis.userStatus.status = status\n\t\t\t\tthis.userStatus.message = message || ''\n\t\t\t\tthis.userStatus.icon = icon || ''\n\t\t\t\tthis.hasStatus = true\n\t\t\t} catch (e) {\n\t\t\t\tif (e.response.status === 404 && e.response.data.ocs?.data?.length === 0) {\n\t\t\t\t\t// User just has no status set, so don't log it\n\t\t\t\t\treturn\n\t\t\t\t}\n\t\t\t\tconsole.error(e)\n\t\t\t}\n\t\t},\n\t},\n}\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/resolve-url-loader/index.js!../../../node_modules/sass-loader/dist/cjs.js??ref--1-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Avatar.vue?vue&type=style&index=0&id=42746786&scoped=true&lang=scss&\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"2ad48007\", content, true, {});","module.exports = require(\"core-js/modules/es.string.starts-with\");","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/resolve-url-loader/index.js!../../../node_modules/sass-loader/dist/cjs.js??ref--1-3!./index.scss\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"941c791e\", content, true, {});","// Imports\nvar ___CSS_LOADER_API_IMPORT___ = require(\"../../../node_modules/css-loader/dist/runtime/api.js\");\nexports = ___CSS_LOADER_API_IMPORT___(false);\n// Module\nexports.push([module.id, \".vue-tooltip[data-v-67af392]{position:absolute;z-index:100000;right:auto;left:auto;display:block;margin:0;margin-top:-3px;padding:10px 0;text-align:left;text-align:start;opacity:0;line-height:1.6;line-break:auto;filter:drop-shadow(0 1px 10px var(--color-box-shadow))}.vue-tooltip[data-v-67af392][x-placement^='top'] .tooltip-arrow{bottom:0;margin-top:0;margin-bottom:0;border-width:10px 10px 0 10px;border-right-color:transparent;border-bottom-color:transparent;border-left-color:transparent}.vue-tooltip[data-v-67af392][x-placement^='bottom'] .tooltip-arrow{top:0;margin-top:0;margin-bottom:0;border-width:0 10px 10px 10px;border-top-color:transparent;border-right-color:transparent;border-left-color:transparent}.vue-tooltip[data-v-67af392][x-placement^='right'] .tooltip-arrow{right:100%;margin-right:0;margin-left:0;border-width:10px 10px 10px 0;border-top-color:transparent;border-bottom-color:transparent;border-left-color:transparent}.vue-tooltip[data-v-67af392][x-placement^='left'] .tooltip-arrow{left:100%;margin-right:0;margin-left:0;border-width:10px 0 10px 10px;border-top-color:transparent;border-right-color:transparent;border-bottom-color:transparent}.vue-tooltip[data-v-67af392][aria-hidden='true']{visibility:hidden;transition:opacity .15s, visibility .15s;opacity:0}.vue-tooltip[data-v-67af392][aria-hidden='false']{visibility:visible;transition:opacity .15s;opacity:1}.vue-tooltip[data-v-67af392] .tooltip-inner{max-width:350px;padding:5px 8px;text-align:center;color:var(--color-main-text);border-radius:var(--border-radius);background-color:var(--color-main-background)}.vue-tooltip[data-v-67af392] .tooltip-arrow{position:absolute;z-index:1;width:0;height:0;margin:0;border-style:solid;border-color:var(--color-main-background)}\\n\", \"\"]);\n// Exports\nmodule.exports = exports;\n","module.exports = require(\"core-js/modules/es.array.join\");","module.exports = require(\"core-js/modules/es.promise\");","module.exports = require(\"regenerator-runtime/runtime\");","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MentionBubble.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MentionBubble.vue?vue&type=script&lang=js&\"","<!--\n - @copyright Copyright (c) 2020 John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @author John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n-->\n\n<template>\n\t<span :class=\"{'mention-bubble--primary': primary}\"\n\t\tclass=\"mention-bubble\"\n\t\tcontenteditable=\"false\">\n\t\t<span class=\"mention-bubble__wrapper\">\n\t\t\t<span class=\"mention-bubble__content\">\n\t\t\t\t<!-- Avatar or icon -->\n\t\t\t\t<span :class=\"[icon, `mention-bubble__icon--${avatarUrl ? 'with-avatar' : ''}`]\"\n\t\t\t\t\t:style=\"avatarUrl ? { backgroundImage: `url(${avatarUrl})` } : null\"\n\t\t\t\t\tclass=\"mention-bubble__icon\" />\n\n\t\t\t\t<!-- Title -->\n\t\t\t\t<span role=\"heading\" class=\"mention-bubble__title\" :title=\"label\" />\n\t\t\t</span>\n\n\t\t\t<!-- Selectable text for copy/paste -->\n\t\t\t<span role=\"none\" class=\"mention-bubble__select\">{{ mentionText }}</span>\n\t\t</span>\n\t</span>\n</template>\n\n<script>\nimport { generateUrl } from '@nextcloud/router'\n\nexport default {\n\tname: 'MentionBubble',\n\n\tprops: {\n\t\tid: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\tlabel: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\ticon: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\tsource: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\tprimary: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t},\n\tcomputed: {\n\t\tavatarUrl() {\n\t\t\treturn this.id && this.source === 'users'\n\t\t\t\t? this.getAvatarUrl(this.id, 44)\n\t\t\t\t: null\n\t\t},\n\t\tmentionText() {\n\t\t\treturn this.id.indexOf(' ') === -1\n\t\t\t\t? `@${this.id}`\n\t\t\t\t: `@\"${this.id}\"`\n\t\t},\n\t},\n\n\tmethods: {\n\t\tgetAvatarUrl(user, size) {\n\t\t\treturn generateUrl('/avatar/{user}/{size}', {\n\t\t\t\tuser,\n\t\t\t\tsize,\n\t\t\t})\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n$bubble-height: 20px;\n$bubble-max-width: 150px;\n$bubble-padding: 2px;\n$bubble-avatar-size: $bubble-height - 2 * $bubble-padding;\n\n.mention-bubble {\n\t&--primary &__content {\n\t\tcolor: var(--color-primary-text);\n\t\tbackground-color: var(--color-primary-element);\n\t}\n\n\t&__wrapper {\n\t\tmax-width: $bubble-max-width;\n\t\t// Align with text\n\t\theight: $bubble-height - $bubble-padding;\n\t\tvertical-align: text-bottom;\n\t\tdisplay: inline-flex;\n\t\talign-items: center;\n\t}\n\n\t&__content {\n\t\tdisplay: inline-flex;\n\t\toverflow: hidden;\n\t\talign-items: center;\n\t\tmax-width: 100%;\n\t\theight: $bubble-height ;\n\t\t-webkit-user-select: none;\n\t\tuser-select: none;\n\t\tpadding-right: $bubble-padding * 3;\n\t\tpadding-left: $bubble-padding;\n\t\tborder-radius: $bubble-height / 2;\n\t\tbackground-color: var(--color-background-dark);\n\t}\n\n\t&__icon {\n\t\tposition: relative;\n\t\twidth: $bubble-avatar-size;\n\t\theight: $bubble-avatar-size;\n\t\tborder-radius: $bubble-avatar-size / 2;\n\t\tbackground-color: var(--color-background-darker);\n\t\tbackground-repeat: no-repeat;\n\t\tbackground-position: center;\n\t\tbackground-size: $bubble-avatar-size - 2 * $bubble-padding;\n\n\t\t&--with-avatar {\n\t\t\tcolor: inherit;\n\t\t\tbackground-size: cover;\n\t\t}\n\t}\n\n\t&__title {\n\t\toverflow: hidden;\n\t\tmargin-left: $bubble-padding;\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t\t// Put label in ::before so it is not selectable\n\t\t&::before {\n\t\t\tcontent: attr(title);\n\t\t}\n\t}\n\n\t// Hide the mention id so it is selectable\n\t&__select {\n\t\tposition: absolute;\n\t\tz-index: -1;\n\t\tleft: -1000px;\n\t}\n}\n\n</style>\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('span',{staticClass:\"mention-bubble\",class:{'mention-bubble--primary': _vm.primary},attrs:{\"contenteditable\":\"false\"}},[_c('span',{staticClass:\"mention-bubble__wrapper\"},[_c('span',{staticClass:\"mention-bubble__content\"},[_c('span',{staticClass:\"mention-bubble__icon\",class:[_vm.icon, (\"mention-bubble__icon--\" + (_vm.avatarUrl ? 'with-avatar' : ''))],style:(_vm.avatarUrl ? { backgroundImage: (\"url(\" + _vm.avatarUrl + \")\") } : null)}),_vm._v(\" \"),_c('span',{staticClass:\"mention-bubble__title\",attrs:{\"role\":\"heading\",\"title\":_vm.label}})]),_vm._v(\" \"),_c('span',{staticClass:\"mention-bubble__select\",attrs:{\"role\":\"none\"}},[_vm._v(_vm._s(_vm.mentionText))])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * @copyright Copyright (c) 2020 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\nimport Vue from 'vue'\nimport stripTags from 'striptags'\nimport escapeHtml from 'escape-html'\nimport MentionBubble from '../../components/RichContenteditable/MentionBubble.vue'\n\n// Beginning or whitespace. Non-capturing group\nconst MENTION_START = '(?:^|\\\\s)'\n// Anything that is not text or end-of-line. Non-capturing group\nconst MENTION_END = '(?:[^a-z]|$)'\nexport const USERID_REGEX = new RegExp(`${MENTION_START}(@[a-zA-Z0-9_.@\\\\-']+)(${MENTION_END})`, 'gi')\nexport const USERID_REGEX_WITH_SPACE = new RegExp(`${MENTION_START}(@\"[a-zA-Z0-9 _.@\\\\-']+\")(${MENTION_END})`, 'gi')\n\nexport default {\n\tprops: {\n\t\tuserData: {\n\t\t\ttype: Object,\n\t\t\tdefault: () => ({}),\n\t\t},\n\t},\n\tmethods: {\n\t\t/**\n\t\t * Convert the value string to html for the inner content\n\t\t *\n\t\t * @param {string} value the content without html\n\t\t * @returns {string} rendered html\n\t\t */\n\t\trenderContent(value) {\n\t\t\t// Sanitize the value prop\n\t\t\tconst sanitizedValue = escapeHtml(value)\n\n\t\t\t// Extract all the userIds\n\t\t\tconst splitValue = sanitizedValue.split(USERID_REGEX)\n\t\t\t\t.map(part => part.split(USERID_REGEX_WITH_SPACE)).flat()\n\n\t\t\t// Replace userIds by html\n\t\t\treturn splitValue\n\t\t\t\t.map(part => {\n\t\t\t\t\t// When splitting, the string is always putting the userIds\n\t\t\t\t\t// on the the uneven indexes. We only want to generate the mentions html\n\t\t\t\t\tif (!part.startsWith('@')) {\n\t\t\t\t\t\treturn part\n\t\t\t\t\t}\n\n\t\t\t\t\t// Extracting the id, nuking the \" and @\n\t\t\t\t\tconst id = part.replace(/[@\"]/gi, '')\n\n\t\t\t\t\t// Compiling template and prepend with the space we removed during the split\n\t\t\t\t\treturn ' ' + this.genSelectTemplate(id)\n\t\t\t\t})\n\t\t\t\t.join('')\n\t\t\t\t.replace(/\\n/gm, '<br>')\n\t\t},\n\n\t\t/**\n\t\t * Convert the innerHtml content to a string with mentions as text\n\t\t *\n\t\t * @param {string} content the content without html\n\t\t * @returns {string}\n\t\t */\n\t\tparseContent(content) {\n\t\t\tlet text = content.replace(/<br>/g, '\\n')\n\t\t\ttext = text.replace(/ /g, ' ')\n\n\t\t\t// Convert the mentions to text only\n\t\t\t// first we replace divs with new lines\n\t\t\ttext = text.replace(/<\\/div>/gim, '\\n')\n\t\t\t// then we remove all leftover html\n\t\t\ttext = stripTags(text, '<div>')\n\t\t\ttext = stripTags(text)\n\n\t\t\treturn text\n\t\t},\n\n\t\t/**\n\t\t * Generate an autocompletion popup entry template\n\t\t *\n\t\t * @param {string} value the value to match against the userData\n\t\t * @returns {string}\n\t\t */\n\t\tgenSelectTemplate(value) {\n\t\t\tlet data = this.userData[value]\n\n\t\t\t// Fallback to @mention in case no data matches\n\t\t\tif (!data) {\n\t\t\t\t// return `@${value}`\n\t\t\t\tdata = {\n\t\t\t\t\tid: value,\n\t\t\t\t\tlabel: value,\n\t\t\t\t\ticon: 'icon-user',\n\t\t\t\t\tsource: 'users',\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Return template and make sure we strip of new lines and tabs\n\t\t\treturn this.renderComponentHtml(data, MentionBubble).replace(/[\\n\\t]/g, '')\n\t\t},\n\n\t\t/**\n\t\t * Render a component and return its html content\n\t\t *\n\t\t * @param {Object} propsData the props to pass to the component\n\t\t * @param {Object} component the component to render\n\t\t * @returns {string} the rendered html\n\t\t */\n\t\trenderComponentHtml(propsData, component) {\n\t\t\tconst View = Vue.extend(component)\n\t\t\tconst Item = new View({\n\t\t\t\tpropsData,\n\t\t\t})\n\n\t\t\t// Prepare mountpoint\n\t\t\tconst wrapper = document.createElement('div')\n\t\t\tconst mount = document.createElement('div')\n\t\t\twrapper.style.display = 'none'\n\t\t\twrapper.appendChild(mount)\n\t\t\tdocument.body.appendChild(wrapper)\n\n\t\t\t// Mount and get raw html\n\t\t\tItem.$mount(mount)\n\t\t\tconst renderedHtml = wrapper.innerHTML\n\n\t\t\t// Destroy\n\t\t\tItem.$destroy()\n\t\t\twrapper.remove()\n\n\t\t\treturn renderedHtml\n\t\t},\n\t},\n}\n","module.exports = require(\"escape-html\");","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\n/**\n * Originally taken from https://github.com/nextcloud/server/blob/master/core/js/placeholder.js\n */\n\nfunction Color(r, g, b) {\n\tthis.r = r\n\tthis.g = g\n\tthis.b = b\n}\n\nfunction stepCalc(steps, ends) {\n\tconst step = new Array(3)\n\tstep[0] = (ends[1].r - ends[0].r) / steps\n\tstep[1] = (ends[1].g - ends[0].g) / steps\n\tstep[2] = (ends[1].b - ends[0].b) / steps\n\treturn step\n}\n\nfunction mixPalette(steps, color1, color2) {\n\tconst palette = []\n\tpalette.push(color1)\n\tconst step = stepCalc(steps, [color1, color2])\n\tfor (let i = 1; i < steps; i++) {\n\t\tconst r = parseInt(color1.r + step[0] * i, 10)\n\t\tconst g = parseInt(color1.g + step[1] * i, 10)\n\t\tconst b = parseInt(color1.b + step[2] * i, 10)\n\t\tpalette.push(new Color(r, g, b))\n\t}\n\treturn palette\n}\n\n/**\n * Generate colors from the official nextcloud color\n * You can provide how many colors you want (multiplied by 3)\n * if step = 6\n * 3 colors * 6 will result in 18 generated colors\n *\n * @param {number} [steps=6] Number of steps to go from a color to another\n * @returns {Object[]}\n */\nfunction GenColors(steps) {\n\tif (!steps) {\n\t\tsteps = 6\n\t}\n\n\tconst red = new Color(182, 70, 157)\n\tconst yellow = new Color(221, 203, 85)\n\tconst blue = new Color(0, 130, 201) // Nextcloud blue\n\n\tconst palette1 = mixPalette(steps, red, yellow)\n\tconst palette2 = mixPalette(steps, yellow, blue)\n\tconst palette3 = mixPalette(steps, blue, red)\n\n\treturn palette1.concat(palette2).concat(palette3)\n}\n\nexport default GenColors\n","/**\n * @copyright Copyright (c) 2020 Georg Ehrke <georg-nextcloud@ehrke.email>\n *\n * @author Georg Ehrke <georg-nextcloud@ehrke.email>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\nexport default {\n\tprops: {\n\t\t/**\n\t\t * A class-name or an array of class-names\n\t\t * to be ignored when clicking outside\n\t\t * an element\n\t\t */\n\t\texcludeClickOutsideClasses: {\n\t\t\ttype: String | Array,\n\t\t\tdefault: () => [],\n\t\t},\n\t},\n\tmethods: {\n\t\t/**\n\t\t * Middleware Handler for V-Click-Outside\n\t\t *\n\t\t * @param {Event} event The click event\n\t\t * @returns {Boolean}\n\t\t */\n\t\tclickOutsideMiddleware(event) {\n\t\t\tconst excludedClassList = Array.isArray(this.excludeClickOutsideClasses)\n\t\t\t\t? this.excludeClickOutsideClasses\n\t\t\t\t: [this.excludeClickOutsideClasses]\n\n\t\t\t// No need to iterate through all parents\n\t\t\t// if class-list is empty\n\t\t\tif (excludedClassList.length === 0) {\n\t\t\t\treturn true\n\t\t\t}\n\n\t\t\treturn !this.hasNodeOrAnyParentClass(event.target, excludedClassList)\n\t\t},\n\t\t/**\n\t\t * Checks if given node or any of it's parents have a class of classArray\n\t\t *\n\t\t * @param {Element} node Node to test\n\t\t * @param {Array} classArray List of classes to check for\n\t\t * @returns {Boolean}\n\t\t */\n\t\thasNodeOrAnyParentClass(node, classArray) {\n\t\t\tfor (const className of classArray) {\n\t\t\t\tif (node.classList.contains(className)) {\n\t\t\t\t\treturn true\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn !!node.parentElement && this.hasNodeOrAnyParentClass(node.parentElement, classArray)\n\t\t},\n\t},\n}\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\nexport default {\n\tdata() {\n\t\treturn {\n\t\t\tisFullscreen: this._isFullscreen(),\n\t\t}\n\t},\n\tbeforeMount() {\n\t\twindow.addEventListener('resize', this._onResize)\n\t},\n\tbeforeDestroy() {\n\t\twindow.removeEventListener('resize', this._onResize)\n\t},\n\tmethods: {\n\t\t_onResize() {\n\t\t\t// Update fullscreen mode\n\t\t\tthis.isFullscreen = this._isFullscreen()\n\t\t},\n\t\t_isFullscreen() {\n\t\t\t// if the window height is equal to the screen height,\n\t\t\t// we're in full screen mode\n\t\t\treturn window.outerHeight === screen.height\n\t\t},\n\t},\n}\n","module.exports = require(\"core-js/modules/es.string.split\");","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('ul',_vm._l((_vm.menu),function(item,key){return _c('PopoverMenuItem',{key:key,attrs:{\"item\":item}})}),1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PopoverMenuItem.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PopoverMenuItem.vue?vue&type=script&lang=js&\"","<!--\n - @copyright Copyright (c) 2018 John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @author John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n\n<template>\n\t<li>\n\t\t<!-- If item.href is set, a link will be directly used -->\n\t\t<a v-if=\"item.href\"\n\t\t\t:href=\"(item.href) ? item.href : '#' \"\n\t\t\t:target=\"(item.target) ? item.target : '' \"\n\t\t\t:download=\"item.download\"\n\t\t\tclass=\"focusable\"\n\t\t\trel=\"noreferrer noopener\"\n\t\t\t@click=\"action\">\n\t\t\t<span v-if=\"!iconIsUrl\" :class=\"item.icon\" />\n\t\t\t<img v-else :src=\"item.icon\">\n\t\t\t<p v-if=\"item.text && item.longtext\">\n\t\t\t\t<strong class=\"menuitem-text\">\n\t\t\t\t\t{{ item.text }}\n\t\t\t\t</strong><br>\n\t\t\t\t<span class=\"menuitem-text-detail\">\n\t\t\t\t\t{{ item.longtext }}\n\t\t\t\t</span>\n\t\t\t</p>\n\t\t\t<span v-else-if=\"item.text\">\n\t\t\t\t{{ item.text }}\n\t\t\t</span>\n\t\t\t<p v-else-if=\"item.longtext\">\n\t\t\t\t{{ item.longtext }}\n\t\t\t</p>\n\t\t</a>\n\n\t\t<!-- If item.input is set instead, an put will be used -->\n\t\t<span v-else-if=\"item.input\" class=\"menuitem\" :class=\"{active: item.active}\">\n\t\t\t<!-- does not show if input is checkbox -->\n\t\t\t<span v-if=\"item.input !== 'checkbox'\" :class=\"item.icon\" />\n\n\t\t\t<!-- only shows if input is text -->\n\t\t\t<form v-if=\"item.input === 'text'\"\n\t\t\t\t:class=\"item.input\"\n\t\t\t\t@submit.prevent=\"item.action\">\n\t\t\t\t<input :type=\"item.input\"\n\t\t\t\t\t:value=\"item.value\"\n\t\t\t\t\t:placeholder=\"item.text\"\n\t\t\t\t\trequired>\n\t\t\t\t<input type=\"submit\" value=\"\" class=\"icon-confirm\">\n\t\t\t</form>\n\n\t\t\t<!-- checkbox -->\n\t\t\t<template v-else>\n\t\t\t\t<input :id=\"key\"\n\t\t\t\t\tv-model=\"item.model\"\n\t\t\t\t\t:type=\"item.input\"\n\t\t\t\t\t:class=\"item.input\"\n\t\t\t\t\t@change=\"item.action\">\n\t\t\t\t<label :for=\"key\" @click.stop.prevent=\"item.action\">\n\t\t\t\t\t{{ item.text }}\n\t\t\t\t</label>\n\t\t\t</template>\n\t\t</span>\n\n\t\t<!-- If item.action is set instead, a button will be used -->\n\t\t<button v-else-if=\"item.action\"\n\t\t\tclass=\"menuitem focusable\"\n\t\t\t:class=\"{active: item.active}\"\n\t\t\t:disabled=\"item.disabled\"\n\t\t\t@click.stop.prevent=\"item.action\">\n\t\t\t<span :class=\"item.icon\" />\n\t\t\t<p v-if=\"item.text && item.longtext\">\n\t\t\t\t<strong class=\"menuitem-text\">\n\t\t\t\t\t{{ item.text }}\n\t\t\t\t</strong><br>\n\t\t\t\t<span class=\"menuitem-text-detail\">\n\t\t\t\t\t{{ item.longtext }}\n\t\t\t\t</span>\n\t\t\t</p>\n\t\t\t<span v-else-if=\"item.text\">\n\t\t\t\t{{ item.text }}\n\t\t\t</span>\n\t\t\t<p v-else-if=\"item.longtext\">\n\t\t\t\t{{ item.longtext }}\n\t\t\t</p>\n\t\t</button>\n\n\t\t<!-- If item.longtext is set AND the item does not have an action -->\n\t\t<span v-else class=\"menuitem\" :class=\"{active: item.active}\">\n\t\t\t<span :class=\"item.icon\" />\n\t\t\t<p v-if=\"item.text && item.longtext\">\n\t\t\t\t<strong class=\"menuitem-text\">\n\t\t\t\t\t{{ item.text }}\n\t\t\t\t</strong><br>\n\t\t\t\t<span class=\"menuitem-text-detail\">\n\t\t\t\t\t{{ item.longtext }}\n\t\t\t\t</span>\n\t\t\t</p>\n\t\t\t<span v-else-if=\"item.text\">\n\t\t\t\t{{ item.text }}\n\t\t\t</span>\n\t\t\t<p v-else-if=\"item.longtext\">\n\t\t\t\t{{ item.longtext }}\n\t\t\t</p>\n\t\t</span>\n\t</li>\n</template>\n\n<style scoped>\n\tbutton.menuitem {\n\t\ttext-align: left;\n\t}\n\n\tbutton.menuitem * {\n\t\tcursor: pointer;\n\t}\n\n\tbutton.menuitem:disabled {\n\t\topacity: 0.5 !important;\n\t\tcursor: default;\n\t}\n\n\tbutton.menuitem:disabled * {\n\t\tcursor: default;\n\t}\n\n\t.menuitem.active {\n\t\tbox-shadow: inset 2px 0 var(--color-primary);\n\t\tborder-radius: 0;\n\t}\n</style>\n\n<script>\nexport default {\n\tname: 'PopoverMenuItem',\n\tprops: {\n\t\titem: {\n\t\t\ttype: Object,\n\t\t\trequired: true,\n\t\t\tdefault: () => {\n\t\t\t\treturn {\n\t\t\t\t\tkey: 'nextcloud-link',\n\t\t\t\t\thref: 'https://nextcloud.com',\n\t\t\t\t\ticon: 'icon-links',\n\t\t\t\t\ttext: 'Nextcloud',\n\t\t\t\t}\n\t\t\t},\n\t\t\t// check the input types\n\t\t\t// TODO: add more validation of types\n\t\t\tvalidator: item => {\n\t\t\t\t// TODO: support radio\n\t\t\t\tif (item.input) {\n\t\t\t\t\treturn ['text', 'checkbox'].indexOf(item.input) !== -1\n\t\t\t\t}\n\t\t\t\treturn true\n\t\t\t},\n\t\t},\n\t},\n\tcomputed: {\n\t\t// random key for inputs binding if not provided\n\t\tkey() {\n\t\t\treturn this.item.key\n\t\t\t\t? this.item.key\n\t\t\t\t: Math.round(Math.random() * 16 * 1000000).toString(16)\n\t\t},\n\t\ticonIsUrl() {\n\t\t\ttry {\n\t\t\t\t// eslint-disable-next-line no-new\n\t\t\t\tnew URL(this.item.icon)\n\t\t\t\treturn true\n\t\t\t} catch (_) {\n\t\t\t\treturn false\n\t\t\t}\n\t\t},\n\t},\n\tmethods: {\n\t\t// allow us to use both link and an action on `a`\n\t\t// we still need to make sure item.action exists\n\t\taction(event) {\n\t\t\tif (this.item.action) {\n\t\t\t\tthis.item.action(event)\n\t\t\t}\n\t\t},\n\t},\n}\n</script>\n<style lang=\"scss\" scoped>\nli {\n\tdisplay: flex;\n\tflex: 0 0 auto;\n\n\t&.hidden {\n\t\tdisplay: none;\n\t}\n\n\t> button,\n\t> a,\n\t> .menuitem {\n\t\tcursor: pointer;\n\t\tline-height: $clickable-area;\n\t\tborder: 0;\n\t\tborder-radius: 0; // otherwise Safari will cut the border-radius area\n\t\tbackground-color: transparent;\n\t\tdisplay: flex;\n\t\talign-items: flex-start;\n\t\theight: auto;\n\t\tmargin: 0;\n\t\tpadding: 0;\n\t\tfont-weight: normal;\n\t\tbox-shadow: none;\n\t\twidth: 100%;\n\t\tcolor: var(--color-main-text);\n\t\twhite-space: nowrap;\n\t\topacity: $opacity_normal;\n\n\t\t// TODO split into individual components for readability\n\t\tspan[class^='icon-'],\n\t\tspan[class*=' icon-'],\n\t\t&[class^='icon-'],\n\t\t&[class*=' icon-'] {\n\t\t\tmin-width: 0; /* Overwrite icons*/\n\t\t\tmin-height: 0;\n\t\t\tbackground-position: #{$icon-margin} center;\n\t\t\tbackground-size: $icon-size;\n\t\t}\n\n\t\tspan[class^='icon-'],\n\t\tspan[class*=' icon-'] {\n\t\t\t/* Keep padding to define the width to\n\t\t\t\tassure correct position of a possible text */\n\t\t\tpadding: #{$clickable-area / 2} 0 #{$clickable-area / 2} $clickable-area;\n\t\t}\n\n\t\t// If no icons set, force left margin to align\n\t\t&:not([class^='icon-']):not([class*='icon-']) {\n\t\t\t> span,\n\t\t\t> input,\n\t\t\t> form {\n\t\t\t\t&:not([class^='icon-']):not([class*='icon-']):first-child {\n\t\t\t\t\tmargin-left: $clickable-area;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t&[class^='icon-'],\n\t\t&[class*=' icon-'] {\n\t\t\tpadding: 0 $icon-margin 0 $clickable-area;\n\t\t}\n\n\t\t&:not(:disabled):hover,\n\t\t&:not(:disabled):focus,\n\t\t&:not(:disabled).active {\n\t\t\topacity: $opacity_full !important;\n\t\t}\n\n\t\t/* prevent .action class to break the design */\n\t\t&.action {\n\t\t\tpadding: inherit !important;\n\t\t}\n\n\t\t> span {\n\t\t\tcursor: pointer;\n\t\t\twhite-space: nowrap;\n\t\t}\n\n\t\t// long text area\n\t\t> p {\n\t\t\twidth: 150px;\n\t\t\tline-height: 1.6em;\n\t\t\tpadding: 8px 0;\n\t\t\twhite-space: normal;\n\t\t}\n\n\t\t// TODO: do we really supports it?\n\t\t> select {\n\t\t\tmargin: 0;\n\t\t\tmargin-left: 6px;\n\t\t}\n\n\t\t/* Add padding if contains icon+text */\n\t\t&:not(:empty) {\n\t\t\tpadding-right: $icon-margin !important;\n\t\t}\n\n\t\t/* DEPRECATED! old img in popover fallback\n\t\t\t* TODO: to remove */\n\t\t> img {\n\t\t\twidth: $clickable-area;\n\t\t\tpadding: $icon-margin;\n\t\t}\n\n\t\t/* checkbox/radio fixes */\n\t\t> input.radio + label,\n\t\t> input.checkbox + label {\n\t\t\tpadding: 0 !important;\n\t\t\twidth: 100%;\n\t\t}\n\t\t> input.checkbox + label::before {\n\t\t\tmargin: -2px 13px 0;\n\t\t}\n\t\t> input.radio + label::before {\n\t\t\tmargin: -2px 12px 0;\n\t\t}\n\t\t> input:not([type=radio]):not([type=checkbox]):not([type=image]) {\n\t\t\twidth: 150px;\n\t\t}\n\n\t\t// Forms & text inputs\n\t\tform {\n\t\t\tdisplay: flex;\n\t\t\tflex: 1 1 auto;\n\t\t\t/* put a small space between text and form\n\t\t\t\tif there is an element before */\n\t\t\t&:not(:first-child) {\n\t\t\t\tmargin-left: 5px;\n\t\t\t}\n\t\t}\n\t\t/* no margin if hidden span before */\n\t\t> span.hidden + form,\n\t\t> span[style*='display:none'] + form {\n\t\t\tmargin-left: 0;\n\t\t}\n\t\t/* Inputs inside popover supports text, submit & reset */\n\t\tinput {\n\t\t\tmin-width: $clickable-area;\n\t\t\tmax-height: #{$clickable-area - 4px}; /* twice the element margin-y */\n\t\t\tmargin: 2px 0;\n\t\t\tflex: 1 1 auto;\n\t\t\t// space between inline inputs\n\t\t\t&:not(:first-child) {\n\t\t\t\tmargin-left: 5px;\n\t\t\t}\n\t\t}\n\t}\n\n\t// TODO: do that in js, should be cleaner\n\t/* css hack, only first not hidden */\n\t&:not(.hidden):not([style*='display:none']) {\n\t\t&:first-of-type {\n\t\t\t> button, > a, > .menuitem {\n\t\t\t\t> form, > input {\n\t\t\t\t\tmargin-top: $icon-margin - 2px; // minus the input margin\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\t&:last-of-type {\n\t\t\t> button, > a, > .menuitem {\n\t\t\t\t> form, > input {\n\t\t\t\t\tmargin-bottom: $icon-margin - 2px; // minus the input margin\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\t> button {\n\t\tpadding: 0;\n\t\tspan {\n\t\t\topacity: $opacity_full;\n\t\t}\n\t}\n}\n</style>\n","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PopoverMenu.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PopoverMenu.vue?vue&type=script&lang=js&\"","<!--\n - @copyright Copyright (c) 2018 John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @author John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n\n<docs>\n\tThis component is deprecated. Please use the [Actions](#/Components?id=actions-1) component instead.\n</docs>\n\n<template>\n\t<ul>\n\t\t<PopoverMenuItem v-for=\"(item, key) in menu\" :key=\"key\" :item=\"item\" />\n\t</ul>\n</template>\n\n<script>\nimport PopoverMenuItem from './PopoverMenuItem'\n\nexport default {\n\tname: 'PopoverMenu',\n\tcomponents: {\n\t\tPopoverMenuItem,\n\t},\n\tprops: {\n\t\tmenu: {\n\t\t\ttype: Array,\n\t\t\tdefault: () => {\n\t\t\t\treturn [{\n\t\t\t\t\thref: 'https://nextcloud.com',\n\t\t\t\t\ticon: 'icon-links',\n\t\t\t\t\ttext: 'Nextcloud',\n\t\t\t\t}]\n\t\t\t},\n\t\t\trequired: true,\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\nul {\n\tdisplay: flex;\n\tflex-direction: column;\n}\n</style>\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('li',[(_vm.item.href)?_c('a',{staticClass:\"focusable\",attrs:{\"href\":(_vm.item.href) ? _vm.item.href : '#',\"target\":(_vm.item.target) ? _vm.item.target : '',\"download\":_vm.item.download,\"rel\":\"noreferrer noopener\"},on:{\"click\":_vm.action}},[(!_vm.iconIsUrl)?_c('span',{class:_vm.item.icon}):_c('img',{attrs:{\"src\":_vm.item.icon}}),_vm._v(\" \"),(_vm.item.text && _vm.item.longtext)?_c('p',[_c('strong',{staticClass:\"menuitem-text\"},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.item.text)+\"\\n\\t\\t\\t\")]),_c('br'),_vm._v(\" \"),_c('span',{staticClass:\"menuitem-text-detail\"},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.item.longtext)+\"\\n\\t\\t\\t\")])]):(_vm.item.text)?_c('span',[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.item.text)+\"\\n\\t\\t\")]):(_vm.item.longtext)?_c('p',[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.item.longtext)+\"\\n\\t\\t\")]):_vm._e()]):(_vm.item.input)?_c('span',{staticClass:\"menuitem\",class:{active: _vm.item.active}},[(_vm.item.input !== 'checkbox')?_c('span',{class:_vm.item.icon}):_vm._e(),_vm._v(\" \"),(_vm.item.input === 'text')?_c('form',{class:_vm.item.input,on:{\"submit\":function($event){$event.preventDefault();return _vm.item.action($event)}}},[_c('input',{attrs:{\"type\":_vm.item.input,\"placeholder\":_vm.item.text,\"required\":\"\"},domProps:{\"value\":_vm.item.value}}),_vm._v(\" \"),_c('input',{staticClass:\"icon-confirm\",attrs:{\"type\":\"submit\",\"value\":\"\"}})]):[((_vm.item.input)==='checkbox')?_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.item.model),expression:\"item.model\"}],class:_vm.item.input,attrs:{\"id\":_vm.key,\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.item.model)?_vm._i(_vm.item.model,null)>-1:(_vm.item.model)},on:{\"change\":[function($event){var $$a=_vm.item.model,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(_vm.item, \"model\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(_vm.item, \"model\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(_vm.item, \"model\", $$c)}},_vm.item.action]}}):((_vm.item.input)==='radio')?_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.item.model),expression:\"item.model\"}],class:_vm.item.input,attrs:{\"id\":_vm.key,\"type\":\"radio\"},domProps:{\"checked\":_vm._q(_vm.item.model,null)},on:{\"change\":[function($event){return _vm.$set(_vm.item, \"model\", null)},_vm.item.action]}}):_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.item.model),expression:\"item.model\"}],class:_vm.item.input,attrs:{\"id\":_vm.key,\"type\":_vm.item.input},domProps:{\"value\":(_vm.item.model)},on:{\"change\":_vm.item.action,\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.item, \"model\", $event.target.value)}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":_vm.key},on:{\"click\":function($event){$event.stopPropagation();$event.preventDefault();return _vm.item.action($event)}}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.item.text)+\"\\n\\t\\t\\t\")])]],2):(_vm.item.action)?_c('button',{staticClass:\"menuitem focusable\",class:{active: _vm.item.active},attrs:{\"disabled\":_vm.item.disabled},on:{\"click\":function($event){$event.stopPropagation();$event.preventDefault();return _vm.item.action($event)}}},[_c('span',{class:_vm.item.icon}),_vm._v(\" \"),(_vm.item.text && _vm.item.longtext)?_c('p',[_c('strong',{staticClass:\"menuitem-text\"},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.item.text)+\"\\n\\t\\t\\t\")]),_c('br'),_vm._v(\" \"),_c('span',{staticClass:\"menuitem-text-detail\"},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.item.longtext)+\"\\n\\t\\t\\t\")])]):(_vm.item.text)?_c('span',[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.item.text)+\"\\n\\t\\t\")]):(_vm.item.longtext)?_c('p',[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.item.longtext)+\"\\n\\t\\t\")]):_vm._e()]):_c('span',{staticClass:\"menuitem\",class:{active: _vm.item.active}},[_c('span',{class:_vm.item.icon}),_vm._v(\" \"),(_vm.item.text && _vm.item.longtext)?_c('p',[_c('strong',{staticClass:\"menuitem-text\"},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.item.text)+\"\\n\\t\\t\\t\")]),_c('br'),_vm._v(\" \"),_c('span',{staticClass:\"menuitem-text-detail\"},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.item.longtext)+\"\\n\\t\\t\\t\")])]):(_vm.item.text)?_c('span',[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.item.text)+\"\\n\\t\\t\")]):(_vm.item.longtext)?_c('p',[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.item.longtext)+\"\\n\\t\\t\")]):_vm._e()])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * @copyright Copyright (c) 2018 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nimport PopoverMenu from './PopoverMenu'\n\nexport default PopoverMenu\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:(_vm.tooltip),expression:\"tooltip\"},{name:\"click-outside\",rawName:\"v-click-outside\",value:(_vm.closeMenu),expression:\"closeMenu\"}],staticClass:\"avatardiv popovermenu-wrapper\",class:{\n\t\t'avatardiv--unknown': _vm.userDoesNotExist,\n\t\t'avatardiv--with-menu': _vm.hasMenu\n\t},style:(_vm.avatarStyle),on:{\"click\":_vm.toggleMenu}},[(_vm.iconClass)?_c('div',{staticClass:\"avatar-class-icon\",class:_vm.iconClass}):(_vm.isAvatarLoaded && !_vm.userDoesNotExist)?_c('img',{attrs:{\"src\":_vm.avatarUrlLoaded,\"srcset\":_vm.avatarSrcSetLoaded,\"alt\":\"\"}}):_vm._e(),_vm._v(\" \"),(_vm.hasMenu)?_c('div',{staticClass:\"icon-more\"}):_vm._e(),_vm._v(\" \"),(_vm.showUserStatusIconOnAvatar)?_c('div',{staticClass:\"avatardiv__user-status avatardiv__user-status--icon\"},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.userStatus.icon)+\"\\n\\t\")]):(_vm.canDisplayUserStatus)?_c('div',{staticClass:\"avatardiv__user-status\",class:'avatardiv__user-status--' + _vm.userStatus.status}):(_vm.status)?_c('div',{staticClass:\"avatardiv__status\",class:'avatardiv__status--' + _vm.status,style:({ backgroundColor: (\"#\" + _vm.statusColor) })},[(_vm.status === 'neutral')?_c('svg',{attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"width\":\"12\",\"height\":\"11\",\"viewBox\":\"0 0 3.175 2.91\"}},[_c('path',{style:({ fill: (\"#\" + _vm.statusColor) }),attrs:{\"d\":\"M3.21 3.043H.494l.679-1.177.68-1.176.678 1.176z\",\"stroke\":\"#fff\",\"stroke-width\":\".265\",\"stroke-linecap\":\"square\"}})]):_vm._e()]):_vm._e(),_vm._v(\" \"),(_vm.userDoesNotExist)?_c('div',{staticClass:\"unknown\"},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.initials)+\"\\n\\t\")]):_vm._e(),_vm._v(\" \"),(_vm.hasMenu)?_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.contactsMenuOpenState),expression:\"contactsMenuOpenState\"}],staticClass:\"popovermenu\",class:(\"menu-\" + _vm.menuPosition)},[_c('PopoverMenu',{attrs:{\"is-open\":_vm.contactsMenuOpenState,\"menu\":_vm.menu}})],1):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<!--\n - @copyright Copyright (c) 2018 Julius Härtl <jus@bitgrid.net>\n -\n - @author Julius Härtl <jus@bitgrid.net>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n\n<docs>\n\n### Basic user avatar\n\n```vue\n\t<avatar user=\"janedoe\" display-name=\"Jane Doe\" />\n```\n\n### Avatar with image\n\n```vue\n\t<avatar url=\"https://nextcloud.com/wp-content/themes/next/assets/img/common/nextcloud-square-logo.png\" />\n```\n\n</docs>\n<template>\n\t<div v-tooltip=\"tooltip\"\n\t\tv-click-outside=\"closeMenu\"\n\t\t:class=\"{\n\t\t\t'avatardiv--unknown': userDoesNotExist,\n\t\t\t'avatardiv--with-menu': hasMenu\n\t\t}\"\n\t\t:style=\"avatarStyle\"\n\t\tclass=\"avatardiv popovermenu-wrapper\"\n\t\t@click=\"toggleMenu\">\n\t\t<!-- avatar -->\n\t\t<div v-if=\"iconClass\" :class=\"iconClass\" class=\"avatar-class-icon\" />\n\t\t<img v-else-if=\"isAvatarLoaded && !userDoesNotExist\"\n\t\t\t:src=\"avatarUrlLoaded\"\n\t\t\t:srcset=\"avatarSrcSetLoaded\"\n\t\t\talt=\"\">\n\t\t<div v-if=\"hasMenu\" class=\"icon-more\" />\n\n\t\t<!-- avatar status -->\n\t\t<div v-if=\"showUserStatusIconOnAvatar\" class=\"avatardiv__user-status avatardiv__user-status--icon\">\n\t\t\t{{ userStatus.icon }}\n\t\t</div>\n\t\t<div v-else-if=\"canDisplayUserStatus\"\n\t\t\tclass=\"avatardiv__user-status\"\n\t\t\t:class=\"'avatardiv__user-status--' + userStatus.status\" />\n\t\t<div v-else-if=\"status\"\n\t\t\tclass=\"avatardiv__status\"\n\t\t\t:class=\"'avatardiv__status--' + status\"\n\t\t\t:style=\"{ backgroundColor: `#${statusColor}` }\">\n\t\t\t<!-- triangle -->\n\t\t\t<svg v-if=\"status === 'neutral'\"\n\t\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t\t\twidth=\"12\"\n\t\t\t\theight=\"11\"\n\t\t\t\tviewBox=\"0 0 3.175 2.91\">\n\t\t\t\t<path d=\"M3.21 3.043H.494l.679-1.177.68-1.176.678 1.176z\"\n\t\t\t\t\t:style=\"{ fill: `#${statusColor}` }\"\n\t\t\t\t\tstroke=\"#fff\"\n\t\t\t\t\tstroke-width=\".265\"\n\t\t\t\t\tstroke-linecap=\"square\" />\n\t\t\t</svg>\n\t\t</div>\n\t\t<div v-if=\"userDoesNotExist\" class=\"unknown\">\n\t\t\t{{ initials }}\n\t\t</div>\n\t\t<div v-if=\"hasMenu\"\n\t\t\tv-show=\"contactsMenuOpenState\"\n\t\t\tclass=\"popovermenu\"\n\t\t\t:class=\"`menu-${menuPosition}`\">\n\t\t\t<PopoverMenu :is-open=\"contactsMenuOpenState\" :menu=\"menu\" />\n\t\t</div>\n\t</div>\n</template>\n\n<script>\nimport { getBuilder } from '@nextcloud/browser-storage'\nimport { directive as ClickOutside } from 'v-click-outside'\nimport PopoverMenu from '../PopoverMenu'\nimport { getCurrentUser } from '@nextcloud/auth'\nimport { subscribe, unsubscribe } from '@nextcloud/event-bus'\nimport axios from '@nextcloud/axios'\nimport { generateUrl } from '@nextcloud/router'\nimport Tooltip from '../../directives/Tooltip'\nimport usernameToColor from '../../functions/usernameToColor'\nimport { userStatus } from '../../mixins'\n\nconst browserStorage = getBuilder('nextcloud').persist().build()\n\nfunction getUserHasAvatar(userId) {\n\tconst flag = browserStorage.getItem('user-has-avatar.' + userId)\n\tif (typeof flag === 'string') {\n\t\treturn Boolean(flag)\n\t}\n\treturn null\n}\n\nfunction setUserHasAvatar(userId, flag) {\n\tif (userId) {\n\t\tbrowserStorage.setItem('user-has-avatar.' + userId, flag)\n\t}\n}\n\nexport default {\n\tname: 'Avatar',\n\tdirectives: {\n\t\ttooltip: Tooltip,\n\t\tClickOutside,\n\t},\n\tcomponents: {\n\t\tPopoverMenu,\n\t},\n\tmixins: [userStatus],\n\tprops: {\n\t\t/**\n\t\t * Set a custom url to the avatar image\n\t\t * either the url, user or displayName property must be defined\n\t\t */\n\t\turl: {\n\t\t\ttype: String,\n\t\t\tdefault: undefined,\n\t\t},\n\t\t/**\n\t\t * Set a css icon-class for an icon to be used instead of the avatar.\n\t\t */\n\t\ticonClass: {\n\t\t\ttype: String,\n\t\t\tdefault: undefined,\n\t\t},\n\t\t/**\n\t\t * Set the user id to fetch the avatar\n\t\t * either the url, user or displayName property must be defined\n\t\t */\n\t\tuser: {\n\t\t\ttype: String,\n\t\t\tdefault: undefined,\n\t\t},\n\t\t/**\n\t\t * Whether or not to display the user-status\n\t\t */\n\t\tshowUserStatus: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: true,\n\t\t},\n\t\t/**\n\t\t * Whether or not to the status-icon should be used instead of online/away\n\t\t */\n\t\tshowUserStatusCompact: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: true,\n\t\t},\n\t\t/**\n\t\t * Is the user a guest user (then we have to user a different endpoint)\n\t\t */\n\t\tisGuest: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t\t/**\n\t\t * Set a display name that will be rendered as a tooltip\n\t\t * either the url, user or displayName property must be defined\n\t\t * specify just the displayname to generate a placeholder avatar without\n\t\t * trying to fetch the avatar based on the user id\n\t\t */\n\t\tdisplayName: {\n\t\t\ttype: String,\n\t\t\tdefault: undefined,\n\t\t},\n\t\t/**\n\t\t * Set a size in px for the rendered avatar\n\t\t */\n\t\tsize: {\n\t\t\ttype: Number,\n\t\t\tdefault: 32,\n\t\t},\n\t\t/**\n\t\t * Placeholder avatars will be automatically generated when this is set to true\n\t\t */\n\t\tallowPlaceholder: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: true,\n\t\t},\n\t\t/**\n\t\t * Disable the tooltip\n\t\t */\n\t\tdisableTooltip: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t\t/**\n\t\t * Disable the menu\n\t\t */\n\t\tdisableMenu: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t\t/**\n\t\t * Declares a custom tooltip when not null\n\t\t * Fallback will be the displayName\n\t\t *\n\t\t * requires disableTooltip not to be set to true\n\t\t */\n\t\ttooltipMessage: {\n\t\t\ttype: String,\n\t\t\tdefault: null,\n\t\t},\n\t\t/**\n\t\t * Declares username is not a user's name, when true.\n\t\t * Prevents loading user's avatar from server and forces generating colored initials,\n\t\t * i.e. if the user is a group\n\t\t */\n\t\tisNoUser: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * DEPRECATED!\n\t\t * This prop will be removed with nc/vue 3.0\n\t\t *\n\t\t * Declares a status indicator on the avatar\n\t\t * Available options are `positive`, `negative`, `neutral`\n\t\t */\n\t\tstatus: {\n\t\t\ttype: String,\n\t\t\tdefault: null,\n\t\t\tvalidator: (value) => {\n\t\t\t\tswitch (value) {\n\t\t\t\tcase 'positive':\n\t\t\t\tcase 'negative':\n\t\t\t\tcase 'neutral':\n\t\t\t\t\treturn true\n\t\t\t\t}\n\t\t\t\treturn false\n\t\t\t},\n\t\t},\n\t\t/**\n\t\t * Declares a different color to be used with the status indicator\n\t\t */\n\t\tstatusColor: {\n\t\t\ttype: [Number, String],\n\t\t\tdefault: null,\n\t\t\tvalidator: value => {\n\t\t\t\treturn /^([a-f0-9]{3}){1,2}$/i.test(value)\n\t\t\t},\n\t\t},\n\t\t/**\n\t\t * Choose the avatar menu alignment.\n\t\t * Possible values are `left`, `center`, `right`.\n\t\t */\n\t\tmenuPosition: {\n\t\t\ttype: String,\n\t\t\tdefault: 'center',\n\t\t},\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tavatarUrlLoaded: null,\n\t\t\tavatarSrcSetLoaded: null,\n\t\t\tuserDoesNotExist: false,\n\t\t\tisAvatarLoaded: false,\n\t\t\tisMenuLoaded: false,\n\t\t\tcontactsMenuActions: [],\n\t\t\tcontactsMenuOpenState: false,\n\t\t}\n\t},\n\tcomputed: {\n\t\tcanDisplayUserStatus() {\n\t\t\treturn this.showUserStatus\n\t\t\t\t&& this.hasStatus\n\t\t\t\t&& ['online', 'away', 'dnd'].includes(this.userStatus.status)\n\t\t},\n\t\tshowUserStatusIconOnAvatar() {\n\t\t\treturn this.showUserStatus\n\t\t\t\t&& this.showUserStatusCompact\n\t\t\t\t&& this.hasStatus\n\t\t\t\t&& this.userStatus.status !== 'dnd'\n\t\t\t\t&& this.userStatus.icon\n\t\t},\n\t\tgetUserIdentifier() {\n\t\t\tif (this.isDisplayNameDefined) {\n\t\t\t\treturn this.displayName\n\t\t\t}\n\t\t\tif (this.isUserDefined) {\n\t\t\t\treturn this.user\n\t\t\t}\n\t\t\treturn ''\n\t\t},\n\t\tisUserDefined() {\n\t\t\treturn typeof this.user !== 'undefined'\n\t\t},\n\t\tisDisplayNameDefined() {\n\t\t\treturn typeof this.displayName !== 'undefined'\n\t\t},\n\t\tisUrlDefined() {\n\t\t\treturn typeof this.url !== 'undefined'\n\t\t},\n\t\thasMenu() {\n\t\t\tif (this.disableMenu) {\n\t\t\t\treturn false\n\t\t\t}\n\t\t\tif (this.isMenuLoaded) {\n\t\t\t\treturn this.menu.length > 0\n\t\t\t}\n\t\t\treturn !(this.user === getCurrentUser()?.uid || this.userDoesNotExist || this.url)\n\t\t},\n\t\tshouldShowPlaceholder() {\n\t\t\treturn this.allowPlaceholder && (\n\t\t\t\tthis.userDoesNotExist)\n\t\t},\n\t\tavatarStyle() {\n\t\t\tconst style = {\n\t\t\t\twidth: this.size + 'px',\n\t\t\t\theight: this.size + 'px',\n\t\t\t\tlineHeight: this.size + 'px',\n\t\t\t\tfontSize: Math.round(this.size * 0.55) + 'px',\n\t\t\t}\n\n\t\t\tif (!this.iconClass && !this.avatarSrcSetLoaded) {\n\t\t\t\tconst rgb = usernameToColor(this.getUserIdentifier)\n\t\t\t\tstyle.backgroundColor = 'rgb(' + rgb.r + ', ' + rgb.g + ', ' + rgb.b + ')'\n\t\t\t}\n\t\t\treturn style\n\t\t},\n\t\ttooltip() {\n\t\t\tif (this.disableTooltip) {\n\t\t\t\treturn false\n\t\t\t}\n\t\t\tif (this.tooltipMessage) {\n\t\t\t\treturn this.tooltipMessage\n\t\t\t}\n\n\t\t\treturn this.displayName\n\t\t},\n\t\tinitials() {\n\t\t\tlet initials\n\t\t\tif (this.shouldShowPlaceholder) {\n\t\t\t\tconst user = this.getUserIdentifier\n\t\t\t\tconst idx = user.indexOf(' ')\n\t\t\t\tif (user === '') {\n\t\t\t\t\tinitials = '?'\n\t\t\t\t} else {\n\t\t\t\t\tinitials = String.fromCodePoint(user.codePointAt(0))\n\t\t\t\t\tif (idx !== -1) {\n\t\t\t\t\t\tinitials = initials.concat(String.fromCodePoint(user.codePointAt(idx + 1)))\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn initials.toUpperCase()\n\t\t},\n\t\tmenu() {\n\t\t\tconst actions = this.contactsMenuActions.map((item) => {\n\t\t\t\treturn {\n\t\t\t\t\thref: item.hyperlink,\n\t\t\t\t\ticon: item.icon,\n\t\t\t\t\ttext: item.title,\n\t\t\t\t}\n\t\t\t})\n\n\t\t\tfunction escape(html) {\n\t\t\t\tconst text = document.createTextNode(html)\n\t\t\t\tconst p = document.createElement('p')\n\t\t\t\tp.appendChild(text)\n\t\t\t\treturn p.innerHTML\n\t\t\t}\n\n\t\t\tif (this.showUserStatus && (this.userStatus.icon || this.userStatus.message)) {\n\t\t\t\treturn [{\n\t\t\t\t\thref: '#',\n\t\t\t\t\ticon: `data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg'><text x='0' y='14' font-size='14'>${escape(this.userStatus.icon)}</text></svg>`,\n\t\t\t\t\ttext: `${this.userStatus.message}`,\n\t\t\t\t}].concat(actions)\n\t\t\t}\n\n\t\t\treturn actions\n\t\t},\n\t},\n\n\twatch: {\n\t\turl() {\n\t\t\tthis.userDoesNotExist = false\n\t\t\tthis.loadAvatarUrl()\n\t\t},\n\t\tuser() {\n\t\t\tthis.userDoesNotExist = false\n\t\t\tthis.isMenuLoaded = false\n\t\t\tthis.loadAvatarUrl()\n\t\t},\n\t},\n\n\tmounted() {\n\t\tthis.loadAvatarUrl()\n\t\tif (this.showUserStatus && this.user && !this.isNoUser) {\n\t\t\tthis.fetchUserStatus(this.user)\n\t\t\tsubscribe('user_status:status.updated', this.handleUserStatusUpdated)\n\t\t}\n\t},\n\n\tbeforeDestroyed() {\n\t\tif (this.showUserStatus && this.user && !this.isNoUser) {\n\t\t\tunsubscribe('user_status:status.updated', this.handleUserStatusUpdated)\n\t\t}\n\t},\n\n\tmethods: {\n\t\thandleUserStatusUpdated(state) {\n\t\t\tif (this.user === state.userId) {\n\t\t\t\tthis.userStatus = {\n\t\t\t\t\tstatus: state.status,\n\t\t\t\t\ticon: state.icon,\n\t\t\t\t\tmessage: state.message,\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\n\t\tasync toggleMenu() {\n\t\t\tif (!this.hasMenu) {\n\t\t\t\treturn\n\t\t\t}\n\t\t\tif (!this.contactsMenuOpenState) {\n\t\t\t\tawait this.fetchContactsMenu()\n\t\t\t}\n\t\t\tthis.contactsMenuOpenState = !this.contactsMenuOpenState\n\t\t},\n\t\tcloseMenu() {\n\t\t\tthis.contactsMenuOpenState = false\n\t\t},\n\t\tasync fetchContactsMenu() {\n\t\t\ttry {\n\t\t\t\tconst user = encodeURIComponent(this.user)\n\t\t\t\tconst { data } = await axios.post(generateUrl('contactsmenu/findOne'), `shareType=0&shareWith=${user}`)\n\t\t\t\tthis.contactsMenuActions = data.topAction ? [data.topAction].concat(data.actions) : data.actions\n\t\t\t} catch (e) {\n\t\t\t\tthis.contactsMenuOpenState = false\n\t\t\t}\n\t\t\tthis.isMenuLoaded = true\n\t\t},\n\n\t\t/**\n\t\t * Handle avatar loading if user or url defined\n\t\t */\n\t\tloadAvatarUrl() {\n\t\t\tthis.isAvatarLoaded = false\n\n\t\t\t/** Only run avatar image loading if either user or url property is defined */\n\t\t\tif (!this.isUrlDefined && (!this.isUserDefined || this.isNoUser)) {\n\t\t\t\tthis.isAvatarLoaded = true\n\t\t\t\tthis.userDoesNotExist = true\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\t// Directly use the url if defined\n\t\t\tif (this.isUrlDefined) {\n\t\t\t\tthis.updateImageIfValid(this.url)\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tconst avatarUrl = this.avatarUrlGenerator(this.user, this.size)\n\t\t\tconst srcset = [\n\t\t\t\tavatarUrl + ' 1x',\n\t\t\t\tthis.avatarUrlGenerator(this.user, this.size * 2) + ' 2x',\n\t\t\t\tthis.avatarUrlGenerator(this.user, this.size * 4) + ' 4x',\n\t\t\t].join(', ')\n\n\t\t\tthis.updateImageIfValid(avatarUrl, srcset)\n\t\t},\n\n\t\t/**\n\t\t * Generate an avatar url from the server's avatar endpoint\n\t\t *\n\t\t * @param {string} user the user id\n\t\t * @param {number} size the desired size\n\t\t * @returns {string}\n\t\t */\n\t\tavatarUrlGenerator(user, size) {\n\t\t\tlet url = '/avatar/{user}/{size}'\n\t\t\tif (this.isGuest) {\n\t\t\t\turl = '/avatar/guest/{user}/{size}'\n\t\t\t}\n\n\t\t\tlet avatarUrl = generateUrl(\n\t\t\t\turl,\n\t\t\t\t{\n\t\t\t\t\tuser,\n\t\t\t\t\tsize,\n\t\t\t\t})\n\n\t\t\t// eslint-disable-next-line camelcase\n\t\t\tif (user === getCurrentUser()?.uid && typeof oc_userconfig !== 'undefined') {\n\t\t\t\tavatarUrl += '?v=' + oc_userconfig.avatar.version\n\t\t\t}\n\n\t\t\treturn avatarUrl\n\t\t},\n\n\t\t/**\n\t\t * Check if the provided url is valid and update Avatar if so\n\t\t *\n\t\t * @param {string} url the avatar url\n\t\t * @param {array} srcset the avatar srcset\n\t\t */\n\t\tupdateImageIfValid(url, srcset = null) {\n\t\t\t// skip loading\n\t\t\tconst userHasAvatar = getUserHasAvatar(this.user)\n\t\t\tif (this.isUserDefined && typeof userHasAvatar === 'boolean') {\n\t\t\t\tthis.isAvatarLoaded = true\n\t\t\t\tthis.avatarUrlLoaded = url\n\t\t\t\tif (srcset) {\n\t\t\t\t\tthis.avatarSrcSetLoaded = srcset\n\t\t\t\t}\n\t\t\t\tif (userHasAvatar === false) {\n\t\t\t\t\tthis.userDoesNotExist = true\n\t\t\t\t}\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tconst img = new Image()\n\t\t\timg.onload = () => {\n\t\t\t\tthis.avatarUrlLoaded = url\n\t\t\t\tif (srcset) {\n\t\t\t\t\tthis.avatarSrcSetLoaded = srcset\n\t\t\t\t}\n\t\t\t\tthis.isAvatarLoaded = true\n\t\t\t\t// re-get to avoid concurrent access\n\t\t\t\tsetUserHasAvatar(this.user, true)\n\t\t\t}\n\t\t\timg.onerror = () => {\n\t\t\t\tconsole.debug('Invalid avatar url', url)\n\t\t\t\t// Avatar is invalid, reset\n\t\t\t\tthis.avatarUrlLoaded = null\n\t\t\t\tthis.avatarSrcSetLoaded = null\n\n\t\t\t\tthis.userDoesNotExist = true\n\t\t\t\tthis.isAvatarLoaded = false\n\t\t\t\tsetUserHasAvatar(this.user, false)\n\t\t\t}\n\n\t\t\tif (srcset) {\n\t\t\t\timg.srcset = srcset\n\t\t\t}\n\t\t\timg.src = url\n\t\t},\n\t},\n}\n</script>\n\n<style scoped lang=\"scss\">\n@import '../../fonts/scss/iconfont-vue';\n\n.avatardiv {\n\tposition: relative;\n\tdisplay: inline-block;\n\n\t&--unknown {\n\t\tposition: relative;\n\t\tbackground-color: var(--color-text-maxcontrast);\n\t}\n\n\t&:not(&--unknown) {\n\t\t// White background for avatars with transparency\n\t\tbackground-color: #fff !important;\n\t\tbody.theme--dark & {\n\t\t\t// And black background in dark mode, as it shines through on hover of the menu\n\t\t\tbackground-color: #000 !important;\n\t\t}\n\t\tbox-shadow: 0 0 5px rgba(0, 0, 0, 0.05) inset;\n\t}\n\n\t&--with-menu {\n\t\tcursor: pointer;\n\t\t.icon-more {\n\t\t\tposition: absolute;\n\t\t\ttop: 0;\n\t\t\tleft: 0;\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\t\t\tjustify-content: center;\n\t\t\twidth: inherit;\n\t\t\theight: inherit;\n\t\t\tcursor: pointer;\n\t\t\topacity: 0;\n\t\t\tbackground: none;\n\t\t\tfont-size: 18px;\n\n\t\t\t@include iconfont('more');\n\t\t\t&::before {\n\t\t\t\tdisplay: block;\n\t\t\t}\n\t\t}\n\t\t&:focus,\n\t\t&:hover {\n\t\t\t.icon-more {\n\t\t\t\topacity: 1;\n\t\t\t}\n\t\t\timg {\n\t\t\t\topacity: 0.3;\n\t\t\t}\n\t\t}\n\t\t.icon-more,\n\t\timg {\n\t\t\ttransition: opacity var(--animation-quick);\n\t\t}\n\t}\n\n\t> .unknown {\n\t\tposition: absolute;\n\t\ttop: 0;\n\t\tleft: 0;\n\t\tdisplay: block;\n\t\twidth: 100%;\n\t\ttext-align: center;\n\t\tfont-weight: normal;\n\t\tcolor: var(--color-main-background);\n\t}\n\n\timg {\n\t\twidth: 100%;\n\t\theight: 100%;\n\t}\n\n\t.avatardiv__status {\n\t\tposition: absolute;\n\t\ttop: 22px;\n\t\tleft: 22px;\n\t\twidth: 10px;\n\t\theight: 10px;\n\t\tborder: 1px solid rgba(255, 255, 255, .5);\n\t\tbackground-clip: content-box;\n\t\t&--positive {\n\t\t\tborder-radius: 50%;\n\t\t\tbackground-color: var(--color-success);\n\t\t}\n\t\t&--negative {\n\t\t\tbackground-color: var(--color-error);\n\t\t}\n\t\t&--neutral {\n\t\t\tborder: none;\n\t\t\tbackground-color: transparent !important;\n\t\t\tsvg {\n\t\t\t\tposition: absolute;\n\t\t\t\ttop: -3px;\n\t\t\t\tleft: -2px;\n\t\t\t\tpath {\n\t\t\t\t\tfill: #aaa;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t.avatardiv__user-status {\n\t\tposition: absolute;\n\t\tright: -4px;\n\t\tbottom: -4px;\n\t\theight: 18px;\n\t\twidth: 18px;\n\t\tline-height: 15px;\n\t\tfont-size: var(--default-font-size);\n\t\tborder: 2px solid var(--color-main-background);\n\t\tbackground-color: var(--color-main-background);\n\t\tborder-radius: 50%;\n\n\t\t.acli:hover & {\n\t\t\tborder-color: var(--color-background-hover);\n\t\t\tbackground-color: var(--color-background-hover);\n\t\t}\n\t\t.acli.active & {\n\t\t\tborder-color: var(--color-primary-light);\n\t\t\tbackground-color: var(--color-primary-light);\n\t\t}\n\n\t\t&--online{\n\t\t\t@include iconfont('user-status-online');\n\t\t\tcolor: #49b382;\n\t\t}\n\t\t&--dnd{\n\t\t\t@include iconfont('user-status-dnd');\n\t\t\tbackground-color: #ffffff;\n\t\t\tcolor: #ed484c;\n\t\t}\n\t\t&--away{\n\t\t\t@include iconfont('user-status-away');\n\t\t\tcolor: #f4a331;\n\t\t}\n\t\t&--icon {\n\t\t\tborder: none;\n\t\t\tbackground-color: transparent;\n\t\t}\n\t}\n\n\t.popovermenu-wrapper {\n\t\tposition: relative;\n\t\tdisplay: inline-block;\n\t}\n\n\t.popovermenu {\n\t\tdisplay: block;\n\t\tmargin: 0;\n\t\tfont-size: var(--default-font-size);\n\t}\n}\n\n.avatar-class-icon {\n\tborder-radius: 50%;\n\tbackground-color: var(--color-background-darker);\n\theight: 100%;\n}\n\n</style>\n","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Avatar.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Avatar.vue?vue&type=script&lang=js&\"","/**\n * @copyright Copyright (c) 2018 Julius Härtl <jus@bitgrid.net>\n *\n * @author Julius Härtl <jus@bitgrid.net>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\nimport Avatar from './Avatar'\n\nexport default Avatar\n","module.exports = require(\"@nextcloud/capabilities\");","module.exports = require(\"md5\");","/**\n * @copyright Copyright (c) 2018 Julius Härtl <jus@bitgrid.net>\n *\n * @author Julius Härtl <jus@bitgrid.net>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\nimport usernameToColor from './usernameToColor'\n\nexport default usernameToColor\n","/**\n * @copyright Copyright (c) 2018 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\nimport md5 from 'md5'\nimport GenColors from '../../utils/GenColors'\n\n/**\n * Originally taken from https://github.com/nextcloud/server/blob/master/core/js/placeholder.js\n * @param {string} username Display name or user id to generate from\n * @returns {Object} the rgb colors as {r:255, g:255, b:255}\n */\nconst usernameToColor = function(username) {\n\t// Normalize hash\n\tlet hash = username.toLowerCase()\n\n\t// Already a md5 hash?\n\tif (hash.match(/^([0-9a-f]{4}-?){8}$/) === null) {\n\t\thash = md5(hash)\n\t}\n\n\thash = hash.replace(/[^0-9a-f]/g, '')\n\n\tconst steps = 6\n\tconst finalPalette = GenColors(steps)\n\n\t// Convert a string to an integer evenly\n\tfunction hashToInt(hash, maximum) {\n\t\tlet finalInt = 0\n\t\tconst result = []\n\n\t\t// Splitting evenly the string\n\t\tfor (let i = 0; i < hash.length; i++) {\n\t\t\t// chars in md5 goes up to f, hex:16\n\t\t\tresult.push(parseInt(hash.charAt(i), 16) % 16)\n\t\t}\n\n\t\t// Adds up all results\n\t\tfor (const j in result) {\n\t\t\tfinalInt += result[j]\n\t\t}\n\n\t\t// chars in md5 goes up to f, hex:16\n\t\t// make sure we're always using int in our operation\n\t\treturn parseInt(parseInt(finalInt, 10) % maximum, 10)\n\t}\n\treturn finalPalette[hashToInt(hash, steps * 3)]\n}\n\nexport default usernameToColor\n","module.exports = require(\"core-js/modules/es.array.flat\");","module.exports = require(\"core-js/modules/es.array.unscopables.flat\");","module.exports = require(\"core-js/modules/es.regexp.constructor\");","import mod from \"-!../../../node_modules/vue-style-loader/index.js!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/resolve-url-loader/index.js!../../../node_modules/sass-loader/dist/cjs.js??ref--1-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MentionBubble.vue?vue&type=style&index=0&id=724f9d58&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../node_modules/vue-style-loader/index.js!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/resolve-url-loader/index.js!../../../node_modules/sass-loader/dist/cjs.js??ref--1-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MentionBubble.vue?vue&type=style&index=0&id=724f9d58&lang=scss&scoped=true&\"","// Imports\nvar ___CSS_LOADER_API_IMPORT___ = require(\"../../../node_modules/css-loader/dist/runtime/api.js\");\nexports = ___CSS_LOADER_API_IMPORT___(false);\n// Module\nexports.push([module.id, \".mention-bubble--primary .mention-bubble__content[data-v-724f9d58]{color:var(--color-primary-text);background-color:var(--color-primary-element)}.mention-bubble__wrapper[data-v-724f9d58]{max-width:150px;height:18px;vertical-align:text-bottom;display:inline-flex;align-items:center}.mention-bubble__content[data-v-724f9d58]{display:inline-flex;overflow:hidden;align-items:center;max-width:100%;height:20px;-webkit-user-select:none;user-select:none;padding-right:6px;padding-left:2px;border-radius:10px;background-color:var(--color-background-dark)}.mention-bubble__icon[data-v-724f9d58]{position:relative;width:16px;height:16px;border-radius:8px;background-color:var(--color-background-darker);background-repeat:no-repeat;background-position:center;background-size:12px}.mention-bubble__icon--with-avatar[data-v-724f9d58]{color:inherit;background-size:cover}.mention-bubble__title[data-v-724f9d58]{overflow:hidden;margin-left:2px;white-space:nowrap;text-overflow:ellipsis}.mention-bubble__title[data-v-724f9d58]::before{content:attr(title)}.mention-bubble__select[data-v-724f9d58]{position:absolute;z-index:-1;left:-1000px}\\n\", \"\"]);\n// Exports\nmodule.exports = exports;\n","module.exports = require(\"@nextcloud/browser-storage\");","module.exports = require(\"core-js/modules/es.string.match\");","module.exports = require(\"core-js/modules/es.array.includes\");","import mod from \"-!../../../node_modules/vue-style-loader/index.js!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/resolve-url-loader/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PopoverMenuItem.vue?vue&type=style&index=0&id=3ad7b73b&scoped=true&lang=css&\"; export default mod; export * from \"-!../../../node_modules/vue-style-loader/index.js!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/resolve-url-loader/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PopoverMenuItem.vue?vue&type=style&index=0&id=3ad7b73b&scoped=true&lang=css&\"","// Imports\nvar ___CSS_LOADER_API_IMPORT___ = require(\"../../../node_modules/css-loader/dist/runtime/api.js\");\nexports = ___CSS_LOADER_API_IMPORT___(false);\n// Module\nexports.push([module.id, \"\\nbutton.menuitem[data-v-3ad7b73b] {\\n\\ttext-align: left;\\n}\\nbutton.menuitem *[data-v-3ad7b73b] {\\n\\tcursor: pointer;\\n}\\nbutton.menuitem[data-v-3ad7b73b]:disabled {\\n\\topacity: 0.5 !important;\\n\\tcursor: default;\\n}\\nbutton.menuitem:disabled *[data-v-3ad7b73b] {\\n\\tcursor: default;\\n}\\n.menuitem.active[data-v-3ad7b73b] {\\n\\tbox-shadow: inset 2px 0 var(--color-primary);\\n\\tborder-radius: 0;\\n}\\n\", \"\"]);\n// Exports\nmodule.exports = exports;\n","import mod from \"-!../../../node_modules/vue-style-loader/index.js!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/resolve-url-loader/index.js!../../../node_modules/sass-loader/dist/cjs.js??ref--1-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PopoverMenuItem.vue?vue&type=style&index=1&id=3ad7b73b&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../node_modules/vue-style-loader/index.js!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/resolve-url-loader/index.js!../../../node_modules/sass-loader/dist/cjs.js??ref--1-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PopoverMenuItem.vue?vue&type=style&index=1&id=3ad7b73b&lang=scss&scoped=true&\"","// Imports\nvar ___CSS_LOADER_API_IMPORT___ = require(\"../../../node_modules/css-loader/dist/runtime/api.js\");\nexports = ___CSS_LOADER_API_IMPORT___(false);\n// Module\nexports.push([module.id, \"li[data-v-3ad7b73b]{display:flex;flex:0 0 auto}li.hidden[data-v-3ad7b73b]{display:none}li>button[data-v-3ad7b73b],li>a[data-v-3ad7b73b],li>.menuitem[data-v-3ad7b73b]{cursor:pointer;line-height:44px;border:0;border-radius:0;background-color:transparent;display:flex;align-items:flex-start;height:auto;margin:0;padding:0;font-weight:normal;box-shadow:none;width:100%;color:var(--color-main-text);white-space:nowrap;opacity:.7}li>button span[class^='icon-'][data-v-3ad7b73b],li>button span[class*=' icon-'][data-v-3ad7b73b],li>button[class^='icon-'][data-v-3ad7b73b],li>button[class*=' icon-'][data-v-3ad7b73b],li>a span[class^='icon-'][data-v-3ad7b73b],li>a span[class*=' icon-'][data-v-3ad7b73b],li>a[class^='icon-'][data-v-3ad7b73b],li>a[class*=' icon-'][data-v-3ad7b73b],li>.menuitem span[class^='icon-'][data-v-3ad7b73b],li>.menuitem span[class*=' icon-'][data-v-3ad7b73b],li>.menuitem[class^='icon-'][data-v-3ad7b73b],li>.menuitem[class*=' icon-'][data-v-3ad7b73b]{min-width:0;min-height:0;background-position:14px center;background-size:16px}li>button span[class^='icon-'][data-v-3ad7b73b],li>button span[class*=' icon-'][data-v-3ad7b73b],li>a span[class^='icon-'][data-v-3ad7b73b],li>a span[class*=' icon-'][data-v-3ad7b73b],li>.menuitem span[class^='icon-'][data-v-3ad7b73b],li>.menuitem span[class*=' icon-'][data-v-3ad7b73b]{padding:22px 0 22px 44px}li>button:not([class^='icon-']):not([class*='icon-'])>span[data-v-3ad7b73b]:not([class^='icon-']):not([class*='icon-']):first-child,li>button:not([class^='icon-']):not([class*='icon-'])>input[data-v-3ad7b73b]:not([class^='icon-']):not([class*='icon-']):first-child,li>button:not([class^='icon-']):not([class*='icon-'])>form[data-v-3ad7b73b]:not([class^='icon-']):not([class*='icon-']):first-child,li>a:not([class^='icon-']):not([class*='icon-'])>span[data-v-3ad7b73b]:not([class^='icon-']):not([class*='icon-']):first-child,li>a:not([class^='icon-']):not([class*='icon-'])>input[data-v-3ad7b73b]:not([class^='icon-']):not([class*='icon-']):first-child,li>a:not([class^='icon-']):not([class*='icon-'])>form[data-v-3ad7b73b]:not([class^='icon-']):not([class*='icon-']):first-child,li>.menuitem:not([class^='icon-']):not([class*='icon-'])>span[data-v-3ad7b73b]:not([class^='icon-']):not([class*='icon-']):first-child,li>.menuitem:not([class^='icon-']):not([class*='icon-'])>input[data-v-3ad7b73b]:not([class^='icon-']):not([class*='icon-']):first-child,li>.menuitem:not([class^='icon-']):not([class*='icon-'])>form[data-v-3ad7b73b]:not([class^='icon-']):not([class*='icon-']):first-child{margin-left:44px}li>button[class^='icon-'][data-v-3ad7b73b],li>button[class*=' icon-'][data-v-3ad7b73b],li>a[class^='icon-'][data-v-3ad7b73b],li>a[class*=' icon-'][data-v-3ad7b73b],li>.menuitem[class^='icon-'][data-v-3ad7b73b],li>.menuitem[class*=' icon-'][data-v-3ad7b73b]{padding:0 14px 0 44px}li>button[data-v-3ad7b73b]:not(:disabled):hover,li>button[data-v-3ad7b73b]:not(:disabled):focus,li>button:not(:disabled).active[data-v-3ad7b73b],li>a[data-v-3ad7b73b]:not(:disabled):hover,li>a[data-v-3ad7b73b]:not(:disabled):focus,li>a:not(:disabled).active[data-v-3ad7b73b],li>.menuitem[data-v-3ad7b73b]:not(:disabled):hover,li>.menuitem[data-v-3ad7b73b]:not(:disabled):focus,li>.menuitem:not(:disabled).active[data-v-3ad7b73b]{opacity:1 !important}li>button.action[data-v-3ad7b73b],li>a.action[data-v-3ad7b73b],li>.menuitem.action[data-v-3ad7b73b]{padding:inherit !important}li>button>span[data-v-3ad7b73b],li>a>span[data-v-3ad7b73b],li>.menuitem>span[data-v-3ad7b73b]{cursor:pointer;white-space:nowrap}li>button>p[data-v-3ad7b73b],li>a>p[data-v-3ad7b73b],li>.menuitem>p[data-v-3ad7b73b]{width:150px;line-height:1.6em;padding:8px 0;white-space:normal}li>button>select[data-v-3ad7b73b],li>a>select[data-v-3ad7b73b],li>.menuitem>select[data-v-3ad7b73b]{margin:0;margin-left:6px}li>button[data-v-3ad7b73b]:not(:empty),li>a[data-v-3ad7b73b]:not(:empty),li>.menuitem[data-v-3ad7b73b]:not(:empty){padding-right:14px !important}li>button>img[data-v-3ad7b73b],li>a>img[data-v-3ad7b73b],li>.menuitem>img[data-v-3ad7b73b]{width:44px;padding:14px}li>button>input.radio+label[data-v-3ad7b73b],li>button>input.checkbox+label[data-v-3ad7b73b],li>a>input.radio+label[data-v-3ad7b73b],li>a>input.checkbox+label[data-v-3ad7b73b],li>.menuitem>input.radio+label[data-v-3ad7b73b],li>.menuitem>input.checkbox+label[data-v-3ad7b73b]{padding:0 !important;width:100%}li>button>input.checkbox+label[data-v-3ad7b73b]::before,li>a>input.checkbox+label[data-v-3ad7b73b]::before,li>.menuitem>input.checkbox+label[data-v-3ad7b73b]::before{margin:-2px 13px 0}li>button>input.radio+label[data-v-3ad7b73b]::before,li>a>input.radio+label[data-v-3ad7b73b]::before,li>.menuitem>input.radio+label[data-v-3ad7b73b]::before{margin:-2px 12px 0}li>button>input[data-v-3ad7b73b]:not([type=radio]):not([type=checkbox]):not([type=image]),li>a>input[data-v-3ad7b73b]:not([type=radio]):not([type=checkbox]):not([type=image]),li>.menuitem>input[data-v-3ad7b73b]:not([type=radio]):not([type=checkbox]):not([type=image]){width:150px}li>button form[data-v-3ad7b73b],li>a form[data-v-3ad7b73b],li>.menuitem form[data-v-3ad7b73b]{display:flex;flex:1 1 auto}li>button form[data-v-3ad7b73b]:not(:first-child),li>a form[data-v-3ad7b73b]:not(:first-child),li>.menuitem form[data-v-3ad7b73b]:not(:first-child){margin-left:5px}li>button>span.hidden+form[data-v-3ad7b73b],li>button>span[style*='display:none']+form[data-v-3ad7b73b],li>a>span.hidden+form[data-v-3ad7b73b],li>a>span[style*='display:none']+form[data-v-3ad7b73b],li>.menuitem>span.hidden+form[data-v-3ad7b73b],li>.menuitem>span[style*='display:none']+form[data-v-3ad7b73b]{margin-left:0}li>button input[data-v-3ad7b73b],li>a input[data-v-3ad7b73b],li>.menuitem input[data-v-3ad7b73b]{min-width:44px;max-height:40px;margin:2px 0;flex:1 1 auto}li>button input[data-v-3ad7b73b]:not(:first-child),li>a input[data-v-3ad7b73b]:not(:first-child),li>.menuitem input[data-v-3ad7b73b]:not(:first-child){margin-left:5px}li:not(.hidden):not([style*='display:none']):first-of-type>button>form[data-v-3ad7b73b],li:not(.hidden):not([style*='display:none']):first-of-type>button>input[data-v-3ad7b73b],li:not(.hidden):not([style*='display:none']):first-of-type>a>form[data-v-3ad7b73b],li:not(.hidden):not([style*='display:none']):first-of-type>a>input[data-v-3ad7b73b],li:not(.hidden):not([style*='display:none']):first-of-type>.menuitem>form[data-v-3ad7b73b],li:not(.hidden):not([style*='display:none']):first-of-type>.menuitem>input[data-v-3ad7b73b]{margin-top:12px}li:not(.hidden):not([style*='display:none']):last-of-type>button>form[data-v-3ad7b73b],li:not(.hidden):not([style*='display:none']):last-of-type>button>input[data-v-3ad7b73b],li:not(.hidden):not([style*='display:none']):last-of-type>a>form[data-v-3ad7b73b],li:not(.hidden):not([style*='display:none']):last-of-type>a>input[data-v-3ad7b73b],li:not(.hidden):not([style*='display:none']):last-of-type>.menuitem>form[data-v-3ad7b73b],li:not(.hidden):not([style*='display:none']):last-of-type>.menuitem>input[data-v-3ad7b73b]{margin-bottom:12px}li>button[data-v-3ad7b73b]{padding:0}li>button span[data-v-3ad7b73b]{opacity:1}\\n\", \"\"]);\n// Exports\nmodule.exports = exports;\n","import mod from \"-!../../../node_modules/vue-style-loader/index.js!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/resolve-url-loader/index.js!../../../node_modules/sass-loader/dist/cjs.js??ref--1-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PopoverMenu.vue?vue&type=style&index=0&id=81c2afc0&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../node_modules/vue-style-loader/index.js!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/resolve-url-loader/index.js!../../../node_modules/sass-loader/dist/cjs.js??ref--1-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PopoverMenu.vue?vue&type=style&index=0&id=81c2afc0&lang=scss&scoped=true&\"","// Imports\nvar ___CSS_LOADER_API_IMPORT___ = require(\"../../../node_modules/css-loader/dist/runtime/api.js\");\nexports = ___CSS_LOADER_API_IMPORT___(false);\n// Module\nexports.push([module.id, \"ul[data-v-81c2afc0]{display:flex;flex-direction:column}\\n\", \"\"]);\n// Exports\nmodule.exports = exports;\n","module.exports = require(\"core-js/modules/es.string.code-point-at\");","module.exports = require(\"core-js/modules/es.string.from-code-point\");","import mod from \"-!../../../node_modules/vue-style-loader/index.js!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/resolve-url-loader/index.js!../../../node_modules/sass-loader/dist/cjs.js??ref--1-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Avatar.vue?vue&type=style&index=0&id=42746786&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/vue-style-loader/index.js!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/resolve-url-loader/index.js!../../../node_modules/sass-loader/dist/cjs.js??ref--1-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Avatar.vue?vue&type=style&index=0&id=42746786&scoped=true&lang=scss&\"","// Imports\nvar ___CSS_LOADER_API_IMPORT___ = require(\"../../../node_modules/css-loader/dist/runtime/api.js\");\nvar ___CSS_LOADER_GET_URL_IMPORT___ = require(\"../../../node_modules/css-loader/dist/runtime/getUrl.js\");\nvar ___CSS_LOADER_URL_IMPORT_0___ = require(\"../../fonts/iconfont-vue-67af392.eot\");\nvar ___CSS_LOADER_URL_IMPORT_1___ = require(\"../../fonts/iconfont-vue-67af392.woff\");\nvar ___CSS_LOADER_URL_IMPORT_2___ = require(\"../../fonts/iconfont-vue-67af392.ttf\");\nvar ___CSS_LOADER_URL_IMPORT_3___ = require(\"../../fonts/iconfont-vue-67af392.svg\");\nexports = ___CSS_LOADER_API_IMPORT___(false);\nvar ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___);\nvar ___CSS_LOADER_URL_REPLACEMENT_1___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_1___);\nvar ___CSS_LOADER_URL_REPLACEMENT_2___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_2___);\nvar ___CSS_LOADER_URL_REPLACEMENT_3___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_3___);\n// Module\nexports.push([module.id, \"@font-face{font-family:\\\"iconfont-vue-67af392\\\";src:url(\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \");src:url(\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \") format(\\\"embedded-opentype\\\"),url(\" + ___CSS_LOADER_URL_REPLACEMENT_1___ + \") format(\\\"woff\\\"),url(\" + ___CSS_LOADER_URL_REPLACEMENT_2___ + \") format(\\\"truetype\\\"),url(\" + ___CSS_LOADER_URL_REPLACEMENT_3___ + \") format(\\\"svg\\\")}.icon[data-v-42746786]{font-style:normal;font-weight:400}.icon.arrow-left-double[data-v-42746786]:before{font-family:\\\"iconfont-vue-67af392\\\";content:\\\"\\\"}.icon.arrow-left[data-v-42746786]:before{font-family:\\\"iconfont-vue-67af392\\\";content:\\\"\\\"}.icon.arrow-right-double[data-v-42746786]:before{font-family:\\\"iconfont-vue-67af392\\\";content:\\\"\\\"}.icon.arrow-right[data-v-42746786]:before{font-family:\\\"iconfont-vue-67af392\\\";content:\\\"\\\"}.icon.breadcrumb[data-v-42746786]:before{font-family:\\\"iconfont-vue-67af392\\\";content:\\\"\\\"}.icon.checkmark[data-v-42746786]:before{font-family:\\\"iconfont-vue-67af392\\\";content:\\\"\\\"}.icon.close[data-v-42746786]:before{font-family:\\\"iconfont-vue-67af392\\\";content:\\\"\\\"}.icon.confirm[data-v-42746786]:before{font-family:\\\"iconfont-vue-67af392\\\";content:\\\"\\\"}.icon.info[data-v-42746786]:before{font-family:\\\"iconfont-vue-67af392\\\";content:\\\"\\\"}.icon.menu[data-v-42746786]:before{font-family:\\\"iconfont-vue-67af392\\\";content:\\\"\\\"}.icon.more[data-v-42746786]:before{font-family:\\\"iconfont-vue-67af392\\\";content:\\\"\\\"}.icon.pause[data-v-42746786]:before{font-family:\\\"iconfont-vue-67af392\\\";content:\\\"\\\"}.icon.play[data-v-42746786]:before{font-family:\\\"iconfont-vue-67af392\\\";content:\\\"\\\"}.icon.triangle-s[data-v-42746786]:before{font-family:\\\"iconfont-vue-67af392\\\";content:\\\"\\\"}.icon.user-status-away[data-v-42746786]:before{font-family:\\\"iconfont-vue-67af392\\\";content:\\\"\\\"}.icon.user-status-dnd[data-v-42746786]:before{font-family:\\\"iconfont-vue-67af392\\\";content:\\\"\\\"}.icon.user-status-invisible[data-v-42746786]:before{font-family:\\\"iconfont-vue-67af392\\\";content:\\\"\\\"}.icon.user-status-online[data-v-42746786]:before{font-family:\\\"iconfont-vue-67af392\\\";content:\\\"\\\"}.avatardiv[data-v-42746786]{position:relative;display:inline-block}.avatardiv--unknown[data-v-42746786]{position:relative;background-color:var(--color-text-maxcontrast)}.avatardiv[data-v-42746786]:not(.avatardiv--unknown){background-color:#fff !important;box-shadow:0 0 5px rgba(0,0,0,0.05) inset}body.theme--dark .avatardiv[data-v-42746786]:not(.avatardiv--unknown){background-color:#000 !important}.avatardiv--with-menu[data-v-42746786]{cursor:pointer}.avatardiv--with-menu .icon-more[data-v-42746786]{position:absolute;top:0;left:0;display:flex;align-items:center;justify-content:center;width:inherit;height:inherit;cursor:pointer;opacity:0;background:none;font-size:18px}.avatardiv--with-menu .icon-more[data-v-42746786]:before{font-family:\\\"iconfont-vue-67af392\\\";font-style:normal;font-weight:400;content:\\\"\\\"}.avatardiv--with-menu .icon-more[data-v-42746786]::before{display:block}.avatardiv--with-menu:focus .icon-more[data-v-42746786],.avatardiv--with-menu:hover .icon-more[data-v-42746786]{opacity:1}.avatardiv--with-menu:focus img[data-v-42746786],.avatardiv--with-menu:hover img[data-v-42746786]{opacity:0.3}.avatardiv--with-menu .icon-more[data-v-42746786],.avatardiv--with-menu img[data-v-42746786]{transition:opacity var(--animation-quick)}.avatardiv>.unknown[data-v-42746786]{position:absolute;top:0;left:0;display:block;width:100%;text-align:center;font-weight:normal;color:var(--color-main-background)}.avatardiv img[data-v-42746786]{width:100%;height:100%}.avatardiv .avatardiv__status[data-v-42746786]{position:absolute;top:22px;left:22px;width:10px;height:10px;border:1px solid rgba(255,255,255,0.5);background-clip:content-box}.avatardiv .avatardiv__status--positive[data-v-42746786]{border-radius:50%;background-color:var(--color-success)}.avatardiv .avatardiv__status--negative[data-v-42746786]{background-color:var(--color-error)}.avatardiv .avatardiv__status--neutral[data-v-42746786]{border:none;background-color:transparent !important}.avatardiv .avatardiv__status--neutral svg[data-v-42746786]{position:absolute;top:-3px;left:-2px}.avatardiv .avatardiv__status--neutral svg path[data-v-42746786]{fill:#aaa}.avatardiv .avatardiv__user-status[data-v-42746786]{position:absolute;right:-4px;bottom:-4px;height:18px;width:18px;line-height:15px;font-size:var(--default-font-size);border:2px solid var(--color-main-background);background-color:var(--color-main-background);border-radius:50%}.acli:hover .avatardiv .avatardiv__user-status[data-v-42746786]{border-color:var(--color-background-hover);background-color:var(--color-background-hover)}.acli.active .avatardiv .avatardiv__user-status[data-v-42746786]{border-color:var(--color-primary-light);background-color:var(--color-primary-light)}.avatardiv .avatardiv__user-status--online[data-v-42746786]{color:#49b382}.avatardiv .avatardiv__user-status--online[data-v-42746786]:before{font-family:\\\"iconfont-vue-67af392\\\";font-style:normal;font-weight:400;content:\\\"\\\"}.avatardiv .avatardiv__user-status--dnd[data-v-42746786]{background-color:#ffffff;color:#ed484c}.avatardiv .avatardiv__user-status--dnd[data-v-42746786]:before{font-family:\\\"iconfont-vue-67af392\\\";font-style:normal;font-weight:400;content:\\\"\\\"}.avatardiv .avatardiv__user-status--away[data-v-42746786]{color:#f4a331}.avatardiv .avatardiv__user-status--away[data-v-42746786]:before{font-family:\\\"iconfont-vue-67af392\\\";font-style:normal;font-weight:400;content:\\\"\\\"}.avatardiv .avatardiv__user-status--icon[data-v-42746786]{border:none;background-color:transparent}.avatardiv .popovermenu-wrapper[data-v-42746786]{position:relative;display:inline-block}.avatardiv .popovermenu[data-v-42746786]{display:block;margin:0;font-size:var(--default-font-size)}.avatar-class-icon[data-v-42746786]{border-radius:50%;background-color:var(--color-background-darker);height:100%}\\n\", \"\"]);\n// Exports\nmodule.exports = exports;\n","var anObject = require('../internals/an-object');\nvar aFunction = require('../internals/a-function');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\n\n// `SpeciesConstructor` abstract operation\n// https://tc39.github.io/ecma262/#sec-speciesconstructor\nmodule.exports = function (O, defaultConstructor) {\n var C = anObject(O).constructor;\n var S;\n return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? defaultConstructor : aFunction(S);\n};\n","var global = require('../internals/global');\nvar fails = require('../internals/fails');\nvar bind = require('../internals/function-bind-context');\nvar html = require('../internals/html');\nvar createElement = require('../internals/document-create-element');\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar location = global.location;\nvar set = global.setImmediate;\nvar clear = global.clearImmediate;\nvar process = global.process;\nvar MessageChannel = global.MessageChannel;\nvar Dispatch = global.Dispatch;\nvar counter = 0;\nvar queue = {};\nvar ONREADYSTATECHANGE = 'onreadystatechange';\nvar defer, channel, port;\n\nvar run = function (id) {\n // eslint-disable-next-line no-prototype-builtins\n if (queue.hasOwnProperty(id)) {\n var fn = queue[id];\n delete queue[id];\n fn();\n }\n};\n\nvar runner = function (id) {\n return function () {\n run(id);\n };\n};\n\nvar listener = function (event) {\n run(event.data);\n};\n\nvar post = function (id) {\n // old engines have not location.origin\n global.postMessage(id + '', location.protocol + '//' + location.host);\n};\n\n// Node.js 0.9+ & IE10+ has setImmediate, otherwise:\nif (!set || !clear) {\n set = function setImmediate(fn) {\n var args = [];\n var i = 1;\n while (arguments.length > i) args.push(arguments[i++]);\n queue[++counter] = function () {\n // eslint-disable-next-line no-new-func\n (typeof fn == 'function' ? fn : Function(fn)).apply(undefined, args);\n };\n defer(counter);\n return counter;\n };\n clear = function clearImmediate(id) {\n delete queue[id];\n };\n // Node.js 0.8-\n if (IS_NODE) {\n defer = function (id) {\n process.nextTick(runner(id));\n };\n // Sphere (JS game engine) Dispatch API\n } else if (Dispatch && Dispatch.now) {\n defer = function (id) {\n Dispatch.now(runner(id));\n };\n // Browsers with MessageChannel, includes WebWorkers\n // except iOS - https://github.com/zloirock/core-js/issues/624\n } else if (MessageChannel && !IS_IOS) {\n channel = new MessageChannel();\n port = channel.port2;\n channel.port1.onmessage = listener;\n defer = bind(port.postMessage, port, 1);\n // Browsers with postMessage, skip WebWorkers\n // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'\n } else if (\n global.addEventListener &&\n typeof postMessage == 'function' &&\n !global.importScripts &&\n location && location.protocol !== 'file:' &&\n !fails(post)\n ) {\n defer = post;\n global.addEventListener('message', listener, false);\n // IE8-\n } else if (ONREADYSTATECHANGE in createElement('script')) {\n defer = function (id) {\n html.appendChild(createElement('script'))[ONREADYSTATECHANGE] = function () {\n html.removeChild(this);\n run(id);\n };\n };\n // Rest old browsers\n } else {\n defer = function (id) {\n setTimeout(runner(id), 0);\n };\n }\n}\n\nmodule.exports = {\n set: set,\n clear: clear\n};\n","var userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /(iphone|ipod|ipad).*applewebkit/i.test(userAgent);\n","'use strict';\nvar aFunction = require('../internals/a-function');\n\nvar PromiseCapability = function (C) {\n var resolve, reject;\n this.promise = new C(function ($$resolve, $$reject) {\n if (resolve !== undefined || reject !== undefined) throw TypeError('Bad Promise constructor');\n resolve = $$resolve;\n reject = $$reject;\n });\n this.resolve = aFunction(resolve);\n this.reject = aFunction(reject);\n};\n\n// 25.4.1.5 NewPromiseCapability(C)\nmodule.exports.f = function (C) {\n return new PromiseCapability(C);\n};\n","var charenc = {\n // UTF-8 encoding\n utf8: {\n // Convert a string to a byte array\n stringToBytes: function(str) {\n return charenc.bin.stringToBytes(unescape(encodeURIComponent(str)));\n },\n\n // Convert a byte array to a string\n bytesToString: function(bytes) {\n return decodeURIComponent(escape(charenc.bin.bytesToString(bytes)));\n }\n },\n\n // Binary encoding\n bin: {\n // Convert a string to a byte array\n stringToBytes: function(str) {\n for (var bytes = [], i = 0; i < str.length; i++)\n bytes.push(str.charCodeAt(i) & 0xFF);\n return bytes;\n },\n\n // Convert a byte array to a string\n bytesToString: function(bytes) {\n for (var str = [], i = 0; i < bytes.length; i++)\n str.push(String.fromCharCode(bytes[i]));\n return str.join('');\n }\n }\n};\n\nmodule.exports = charenc;\n","var $ = require('../internals/export');\nvar toObject = require('../internals/to-object');\nvar nativeKeys = require('../internals/object-keys');\nvar fails = require('../internals/fails');\n\nvar FAILS_ON_PRIMITIVES = fails(function () { nativeKeys(1); });\n\n// `Object.keys` method\n// https://tc39.github.io/ecma262/#sec-object.keys\n$({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES }, {\n keys: function keys(it) {\n return nativeKeys(toObject(it));\n }\n});\n","import NextcloudStorage from './storage'\n\nexport default class ScopedStorage implements NextcloudStorage {\n\n public static GLOBAL_SCOPE_VOLATILE = 'nextcloud_vol'\n public static GLOBAL_SCOPE_PERSISTENT = 'nextcloud_per'\n private scope: string\n private wrapped: Storage\n\n constructor(scope: string, wrapped: Storage, persistent: boolean) {\n this.scope = `${persistent ? ScopedStorage.GLOBAL_SCOPE_PERSISTENT : ScopedStorage.GLOBAL_SCOPE_VOLATILE}_${btoa(scope)}_`\n this.wrapped = wrapped\n }\n\n private scopeKey(key: string) {\n return `${this.scope}${key}`\n }\n\n setItem(key: string, value: string): void {\n this.wrapped.setItem(this.scopeKey(key), value)\n }\n\n getItem(key: string): string | null {\n return this.wrapped.getItem(this.scopeKey(key))\n }\n\n removeItem(key: string): void {\n this.wrapped.removeItem(this.scopeKey(key))\n }\n\n clear(): void {\n Object.keys(this.wrapped)\n .filter(key => key.startsWith(this.scope))\n .map(this.wrapped.removeItem.bind(this.wrapped))\n }\n\n}\n","import StorageBuilder from './storagebuilder'\nimport ScopedStorage from './scopedstorage'\n\nexport function getBuilder(appId: string): StorageBuilder {\n return new StorageBuilder(appId)\n}\n\nfunction clearStorage(storage: Storage, pred?: (string) => boolean): void {\n Object.keys(storage)\n .filter(k => pred ? pred(k) : true)\n .map(storage.removeItem.bind(storage))\n}\n\nexport function clearAll(): void {\n const storages = [\n window.sessionStorage,\n window.localStorage,\n ]\n storages.map(s => clearStorage(s))\n}\n\nexport function clearNonPersistent(): void {\n const storages = [\n window.sessionStorage,\n window.localStorage,\n ]\n storages.map(s => clearStorage(s, k => !k.startsWith(ScopedStorage.GLOBAL_SCOPE_PERSISTENT)))\n}\n","'use strict';\n\n(function (global) {\n\n // minimal symbol polyfill for IE11 and others\n if (typeof Symbol !== 'function') {\n var Symbol = function(name) {\n return name;\n }\n\n Symbol.nonNative = true;\n }\n\n const STATE_PLAINTEXT = Symbol('plaintext');\n const STATE_HTML = Symbol('html');\n const STATE_COMMENT = Symbol('comment');\n\n const ALLOWED_TAGS_REGEX = /<(\\w*)>/g;\n const NORMALIZE_TAG_REGEX = /<\\/?([^\\s\\/>]+)/;\n\n function striptags(html, allowable_tags, tag_replacement) {\n html = html || '';\n allowable_tags = allowable_tags || [];\n tag_replacement = tag_replacement || '';\n\n let context = init_context(allowable_tags, tag_replacement);\n\n return striptags_internal(html, context);\n }\n\n function init_striptags_stream(allowable_tags, tag_replacement) {\n allowable_tags = allowable_tags || [];\n tag_replacement = tag_replacement || '';\n\n let context = init_context(allowable_tags, tag_replacement);\n\n return function striptags_stream(html) {\n return striptags_internal(html || '', context);\n };\n }\n\n striptags.init_streaming_mode = init_striptags_stream;\n\n function init_context(allowable_tags, tag_replacement) {\n allowable_tags = parse_allowable_tags(allowable_tags);\n\n return {\n allowable_tags : allowable_tags,\n tag_replacement: tag_replacement,\n\n state : STATE_PLAINTEXT,\n tag_buffer : '',\n depth : 0,\n in_quote_char : ''\n };\n }\n\n function striptags_internal(html, context) {\n let allowable_tags = context.allowable_tags;\n let tag_replacement = context.tag_replacement;\n\n let state = context.state;\n let tag_buffer = context.tag_buffer;\n let depth = context.depth;\n let in_quote_char = context.in_quote_char;\n let output = '';\n\n for (let idx = 0, length = html.length; idx < length; idx++) {\n let char = html[idx];\n\n if (state === STATE_PLAINTEXT) {\n switch (char) {\n case '<':\n state = STATE_HTML;\n tag_buffer += char;\n break;\n\n default:\n output += char;\n break;\n }\n }\n\n else if (state === STATE_HTML) {\n switch (char) {\n case '<':\n // ignore '<' if inside a quote\n if (in_quote_char) {\n break;\n }\n\n // we're seeing a nested '<'\n depth++;\n break;\n\n case '>':\n // ignore '>' if inside a quote\n if (in_quote_char) {\n break;\n }\n\n // something like this is happening: '<<>>'\n if (depth) {\n depth--;\n\n break;\n }\n\n // this is closing the tag in tag_buffer\n in_quote_char = '';\n state = STATE_PLAINTEXT;\n tag_buffer += '>';\n\n if (allowable_tags.has(normalize_tag(tag_buffer))) {\n output += tag_buffer;\n } else {\n output += tag_replacement;\n }\n\n tag_buffer = '';\n break;\n\n case '\"':\n case '\\'':\n // catch both single and double quotes\n\n if (char === in_quote_char) {\n in_quote_char = '';\n } else {\n in_quote_char = in_quote_char || char;\n }\n\n tag_buffer += char;\n break;\n\n case '-':\n if (tag_buffer === '<!-') {\n state = STATE_COMMENT;\n }\n\n tag_buffer += char;\n break;\n\n case ' ':\n case '\\n':\n if (tag_buffer === '<') {\n state = STATE_PLAINTEXT;\n output += '< ';\n tag_buffer = '';\n\n break;\n }\n\n tag_buffer += char;\n break;\n\n default:\n tag_buffer += char;\n break;\n }\n }\n\n else if (state === STATE_COMMENT) {\n switch (char) {\n case '>':\n if (tag_buffer.slice(-2) == '--') {\n // close the comment\n state = STATE_PLAINTEXT;\n }\n\n tag_buffer = '';\n break;\n\n default:\n tag_buffer += char;\n break;\n }\n }\n }\n\n // save the context for future iterations\n context.state = state;\n context.tag_buffer = tag_buffer;\n context.depth = depth;\n context.in_quote_char = in_quote_char;\n\n return output;\n }\n\n function parse_allowable_tags(allowable_tags) {\n let tag_set = new Set();\n\n if (typeof allowable_tags === 'string') {\n let match;\n\n while ((match = ALLOWED_TAGS_REGEX.exec(allowable_tags))) {\n tag_set.add(match[1]);\n }\n }\n\n else if (!Symbol.nonNative &&\n typeof allowable_tags[Symbol.iterator] === 'function') {\n\n tag_set = new Set(allowable_tags);\n }\n\n else if (typeof allowable_tags.forEach === 'function') {\n // IE11 compatible\n allowable_tags.forEach(tag_set.add, tag_set);\n }\n\n return tag_set;\n }\n\n function normalize_tag(tag_buffer) {\n let match = NORMALIZE_TAG_REGEX.exec(tag_buffer);\n\n return match ? match[1].toLowerCase() : null;\n }\n\n if (typeof define === 'function' && define.amd) {\n // AMD\n define(function module_factory() { return striptags; });\n }\n\n else if (typeof module === 'object' && module.exports) {\n // Node\n module.exports = striptags;\n }\n\n else {\n // Browser\n global.striptags = striptags;\n }\n}(this));\n","const HANDLERS_PROPERTY = '__v-click-outside'\nconst HAS_WINDOWS = typeof window !== 'undefined'\nconst HAS_NAVIGATOR = typeof navigator !== 'undefined'\nconst IS_TOUCH =\n HAS_WINDOWS &&\n ('ontouchstart' in window ||\n (HAS_NAVIGATOR && navigator.msMaxTouchPoints > 0))\nconst EVENTS = IS_TOUCH ? ['touchstart'] : ['click']\n\nfunction processDirectiveArguments(bindingValue) {\n const isFunction = typeof bindingValue === 'function'\n if (!isFunction && typeof bindingValue !== 'object') {\n throw new Error(\n 'v-click-outside: Binding value must be a function or an object',\n )\n }\n\n return {\n handler: isFunction ? bindingValue : bindingValue.handler,\n middleware: bindingValue.middleware || ((item) => item),\n events: bindingValue.events || EVENTS,\n isActive: !(bindingValue.isActive === false),\n detectIframe: !(bindingValue.detectIframe === false),\n }\n}\n\nfunction execHandler({ event, handler, middleware }) {\n if (middleware(event)) {\n handler(event)\n }\n}\n\nfunction onFauxIframeClick({ el, event, handler, middleware }) {\n // Note: on firefox clicking on iframe triggers blur, but only on\n // next event loop it becomes document.activeElement\n // https://stackoverflow.com/q/2381336#comment61192398_23231136\n setTimeout(() => {\n const { activeElement } = document\n if (\n activeElement &&\n activeElement.tagName === 'IFRAME' &&\n !el.contains(activeElement)\n ) {\n execHandler({ event, handler, middleware })\n }\n }, 0)\n}\n\nfunction onEvent({ el, event, handler, middleware }) {\n // Note: composedPath is not supported on IE and Edge, more information here:\n // https://developer.mozilla.org/en-US/docs/Web/API/Event/composedPath\n // In the meanwhile, we are using el.contains for those browsers, not\n // the ideal solution, but using IE or EDGE is not ideal either.\n const path = event.path || (event.composedPath && event.composedPath())\n const isClickOutside = path\n ? path.indexOf(el) < 0\n : !el.contains(event.target)\n\n if (!isClickOutside) {\n return\n }\n\n execHandler({ event, handler, middleware })\n}\n\nfunction bind(el, { value }) {\n const {\n events,\n handler,\n middleware,\n isActive,\n detectIframe,\n } = processDirectiveArguments(value)\n if (!isActive) {\n return\n }\n\n el[HANDLERS_PROPERTY] = events.map((eventName) => ({\n event: eventName,\n srcTarget: document.documentElement,\n handler: (event) => onEvent({ el, event, handler, middleware }),\n }))\n\n if (detectIframe) {\n const detectIframeEvent = {\n event: 'blur',\n srcTarget: window,\n handler: (event) => onFauxIframeClick({ el, event, handler, middleware }),\n }\n\n el[HANDLERS_PROPERTY] = [...el[HANDLERS_PROPERTY], detectIframeEvent]\n }\n\n el[HANDLERS_PROPERTY].forEach(({ event, srcTarget, handler }) =>\n setTimeout(() => {\n // Note: More info about this implementation can be found here:\n // https://github.com/ndelvalle/v-click-outside/issues/137\n if (!el[HANDLERS_PROPERTY]) {\n return\n }\n srcTarget.addEventListener(event, handler, false)\n }, 0),\n )\n}\n\nfunction unbind(el) {\n const handlers = el[HANDLERS_PROPERTY] || []\n handlers.forEach(({ event, srcTarget, handler }) =>\n srcTarget.removeEventListener(event, handler, false),\n )\n delete el[HANDLERS_PROPERTY]\n}\n\nfunction update(el, { value, oldValue }) {\n if (JSON.stringify(value) === JSON.stringify(oldValue)) {\n return\n }\n unbind(el)\n bind(el, { value })\n}\n\nconst directive = {\n bind,\n update,\n unbind,\n}\n\nexport default HAS_WINDOWS ? directive : {}\n","import directive from './v-click-outside'\n\nconst plugin = {\n install(Vue) {\n Vue.directive('click-outside', directive)\n },\n directive,\n}\n\nexport default plugin\n","var isRegExp = require('../internals/is-regexp');\n\nmodule.exports = function (it) {\n if (isRegExp(it)) {\n throw TypeError(\"The method doesn't accept regular expressions\");\n } return it;\n};\n","var wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\n\nmodule.exports = function (METHOD_NAME) {\n var regexp = /./;\n try {\n '/./'[METHOD_NAME](regexp);\n } catch (error1) {\n try {\n regexp[MATCH] = false;\n return '/./'[METHOD_NAME](regexp);\n } catch (error2) { /* empty */ }\n } return false;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar IndexedObject = require('../internals/indexed-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\n\nvar nativeJoin = [].join;\n\nvar ES3_STRINGS = IndexedObject != Object;\nvar STRICT_METHOD = arrayMethodIsStrict('join', ',');\n\n// `Array.prototype.join` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.join\n$({ target: 'Array', proto: true, forced: ES3_STRINGS || !STRICT_METHOD }, {\n join: function join(separator) {\n return nativeJoin.call(toIndexedObject(this), separator === undefined ? ',' : separator);\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar global = require('../internals/global');\nvar getBuiltIn = require('../internals/get-built-in');\nvar NativePromise = require('../internals/native-promise-constructor');\nvar redefine = require('../internals/redefine');\nvar redefineAll = require('../internals/redefine-all');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar setSpecies = require('../internals/set-species');\nvar isObject = require('../internals/is-object');\nvar aFunction = require('../internals/a-function');\nvar anInstance = require('../internals/an-instance');\nvar inspectSource = require('../internals/inspect-source');\nvar iterate = require('../internals/iterate');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar speciesConstructor = require('../internals/species-constructor');\nvar task = require('../internals/task').set;\nvar microtask = require('../internals/microtask');\nvar promiseResolve = require('../internals/promise-resolve');\nvar hostReportErrors = require('../internals/host-report-errors');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar InternalStateModule = require('../internals/internal-state');\nvar isForced = require('../internals/is-forced');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_NODE = require('../internals/engine-is-node');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar SPECIES = wellKnownSymbol('species');\nvar PROMISE = 'Promise';\nvar getInternalState = InternalStateModule.get;\nvar setInternalState = InternalStateModule.set;\nvar getInternalPromiseState = InternalStateModule.getterFor(PROMISE);\nvar PromiseConstructor = NativePromise;\nvar TypeError = global.TypeError;\nvar document = global.document;\nvar process = global.process;\nvar $fetch = getBuiltIn('fetch');\nvar newPromiseCapability = newPromiseCapabilityModule.f;\nvar newGenericPromiseCapability = newPromiseCapability;\nvar DISPATCH_EVENT = !!(document && document.createEvent && global.dispatchEvent);\nvar NATIVE_REJECTION_EVENT = typeof PromiseRejectionEvent == 'function';\nvar UNHANDLED_REJECTION = 'unhandledrejection';\nvar REJECTION_HANDLED = 'rejectionhandled';\nvar PENDING = 0;\nvar FULFILLED = 1;\nvar REJECTED = 2;\nvar HANDLED = 1;\nvar UNHANDLED = 2;\nvar Internal, OwnPromiseCapability, PromiseWrapper, nativeThen;\n\nvar FORCED = isForced(PROMISE, function () {\n var GLOBAL_CORE_JS_PROMISE = inspectSource(PromiseConstructor) !== String(PromiseConstructor);\n if (!GLOBAL_CORE_JS_PROMISE) {\n // V8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables\n // https://bugs.chromium.org/p/chromium/issues/detail?id=830565\n // We can't detect it synchronously, so just check versions\n if (V8_VERSION === 66) return true;\n // Unhandled rejections tracking support, NodeJS Promise without it fails @@species test\n if (!IS_NODE && !NATIVE_REJECTION_EVENT) return true;\n }\n // We need Promise#finally in the pure version for preventing prototype pollution\n if (IS_PURE && !PromiseConstructor.prototype['finally']) return true;\n // We can't use @@species feature detection in V8 since it causes\n // deoptimization and performance degradation\n // https://github.com/zloirock/core-js/issues/679\n if (V8_VERSION >= 51 && /native code/.test(PromiseConstructor)) return false;\n // Detect correctness of subclassing with @@species support\n var promise = PromiseConstructor.resolve(1);\n var FakePromise = function (exec) {\n exec(function () { /* empty */ }, function () { /* empty */ });\n };\n var constructor = promise.constructor = {};\n constructor[SPECIES] = FakePromise;\n return !(promise.then(function () { /* empty */ }) instanceof FakePromise);\n});\n\nvar INCORRECT_ITERATION = FORCED || !checkCorrectnessOfIteration(function (iterable) {\n PromiseConstructor.all(iterable)['catch'](function () { /* empty */ });\n});\n\n// helpers\nvar isThenable = function (it) {\n var then;\n return isObject(it) && typeof (then = it.then) == 'function' ? then : false;\n};\n\nvar notify = function (state, isReject) {\n if (state.notified) return;\n state.notified = true;\n var chain = state.reactions;\n microtask(function () {\n var value = state.value;\n var ok = state.state == FULFILLED;\n var index = 0;\n // variable length - can't use forEach\n while (chain.length > index) {\n var reaction = chain[index++];\n var handler = ok ? reaction.ok : reaction.fail;\n var resolve = reaction.resolve;\n var reject = reaction.reject;\n var domain = reaction.domain;\n var result, then, exited;\n try {\n if (handler) {\n if (!ok) {\n if (state.rejection === UNHANDLED) onHandleUnhandled(state);\n state.rejection = HANDLED;\n }\n if (handler === true) result = value;\n else {\n if (domain) domain.enter();\n result = handler(value); // can throw\n if (domain) {\n domain.exit();\n exited = true;\n }\n }\n if (result === reaction.promise) {\n reject(TypeError('Promise-chain cycle'));\n } else if (then = isThenable(result)) {\n then.call(result, resolve, reject);\n } else resolve(result);\n } else reject(value);\n } catch (error) {\n if (domain && !exited) domain.exit();\n reject(error);\n }\n }\n state.reactions = [];\n state.notified = false;\n if (isReject && !state.rejection) onUnhandled(state);\n });\n};\n\nvar dispatchEvent = function (name, promise, reason) {\n var event, handler;\n if (DISPATCH_EVENT) {\n event = document.createEvent('Event');\n event.promise = promise;\n event.reason = reason;\n event.initEvent(name, false, true);\n global.dispatchEvent(event);\n } else event = { promise: promise, reason: reason };\n if (!NATIVE_REJECTION_EVENT && (handler = global['on' + name])) handler(event);\n else if (name === UNHANDLED_REJECTION) hostReportErrors('Unhandled promise rejection', reason);\n};\n\nvar onUnhandled = function (state) {\n task.call(global, function () {\n var promise = state.facade;\n var value = state.value;\n var IS_UNHANDLED = isUnhandled(state);\n var result;\n if (IS_UNHANDLED) {\n result = perform(function () {\n if (IS_NODE) {\n process.emit('unhandledRejection', value, promise);\n } else dispatchEvent(UNHANDLED_REJECTION, promise, value);\n });\n // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should\n state.rejection = IS_NODE || isUnhandled(state) ? UNHANDLED : HANDLED;\n if (result.error) throw result.value;\n }\n });\n};\n\nvar isUnhandled = function (state) {\n return state.rejection !== HANDLED && !state.parent;\n};\n\nvar onHandleUnhandled = function (state) {\n task.call(global, function () {\n var promise = state.facade;\n if (IS_NODE) {\n process.emit('rejectionHandled', promise);\n } else dispatchEvent(REJECTION_HANDLED, promise, state.value);\n });\n};\n\nvar bind = function (fn, state, unwrap) {\n return function (value) {\n fn(state, value, unwrap);\n };\n};\n\nvar internalReject = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n state.value = value;\n state.state = REJECTED;\n notify(state, true);\n};\n\nvar internalResolve = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n try {\n if (state.facade === value) throw TypeError(\"Promise can't be resolved itself\");\n var then = isThenable(value);\n if (then) {\n microtask(function () {\n var wrapper = { done: false };\n try {\n then.call(value,\n bind(internalResolve, wrapper, state),\n bind(internalReject, wrapper, state)\n );\n } catch (error) {\n internalReject(wrapper, error, state);\n }\n });\n } else {\n state.value = value;\n state.state = FULFILLED;\n notify(state, false);\n }\n } catch (error) {\n internalReject({ done: false }, error, state);\n }\n};\n\n// constructor polyfill\nif (FORCED) {\n // 25.4.3.1 Promise(executor)\n PromiseConstructor = function Promise(executor) {\n anInstance(this, PromiseConstructor, PROMISE);\n aFunction(executor);\n Internal.call(this);\n var state = getInternalState(this);\n try {\n executor(bind(internalResolve, state), bind(internalReject, state));\n } catch (error) {\n internalReject(state, error);\n }\n };\n // eslint-disable-next-line no-unused-vars\n Internal = function Promise(executor) {\n setInternalState(this, {\n type: PROMISE,\n done: false,\n notified: false,\n parent: false,\n reactions: [],\n rejection: false,\n state: PENDING,\n value: undefined\n });\n };\n Internal.prototype = redefineAll(PromiseConstructor.prototype, {\n // `Promise.prototype.then` method\n // https://tc39.github.io/ecma262/#sec-promise.prototype.then\n then: function then(onFulfilled, onRejected) {\n var state = getInternalPromiseState(this);\n var reaction = newPromiseCapability(speciesConstructor(this, PromiseConstructor));\n reaction.ok = typeof onFulfilled == 'function' ? onFulfilled : true;\n reaction.fail = typeof onRejected == 'function' && onRejected;\n reaction.domain = IS_NODE ? process.domain : undefined;\n state.parent = true;\n state.reactions.push(reaction);\n if (state.state != PENDING) notify(state, false);\n return reaction.promise;\n },\n // `Promise.prototype.catch` method\n // https://tc39.github.io/ecma262/#sec-promise.prototype.catch\n 'catch': function (onRejected) {\n return this.then(undefined, onRejected);\n }\n });\n OwnPromiseCapability = function () {\n var promise = new Internal();\n var state = getInternalState(promise);\n this.promise = promise;\n this.resolve = bind(internalResolve, state);\n this.reject = bind(internalReject, state);\n };\n newPromiseCapabilityModule.f = newPromiseCapability = function (C) {\n return C === PromiseConstructor || C === PromiseWrapper\n ? new OwnPromiseCapability(C)\n : newGenericPromiseCapability(C);\n };\n\n if (!IS_PURE && typeof NativePromise == 'function') {\n nativeThen = NativePromise.prototype.then;\n\n // wrap native Promise#then for native async functions\n redefine(NativePromise.prototype, 'then', function then(onFulfilled, onRejected) {\n var that = this;\n return new PromiseConstructor(function (resolve, reject) {\n nativeThen.call(that, resolve, reject);\n }).then(onFulfilled, onRejected);\n // https://github.com/zloirock/core-js/issues/640\n }, { unsafe: true });\n\n // wrap fetch result\n if (typeof $fetch == 'function') $({ global: true, enumerable: true, forced: true }, {\n // eslint-disable-next-line no-unused-vars\n fetch: function fetch(input /* , init */) {\n return promiseResolve(PromiseConstructor, $fetch.apply(global, arguments));\n }\n });\n }\n}\n\n$({ global: true, wrap: true, forced: FORCED }, {\n Promise: PromiseConstructor\n});\n\nsetToStringTag(PromiseConstructor, PROMISE, false, true);\nsetSpecies(PROMISE);\n\nPromiseWrapper = getBuiltIn(PROMISE);\n\n// statics\n$({ target: PROMISE, stat: true, forced: FORCED }, {\n // `Promise.reject` method\n // https://tc39.github.io/ecma262/#sec-promise.reject\n reject: function reject(r) {\n var capability = newPromiseCapability(this);\n capability.reject.call(undefined, r);\n return capability.promise;\n }\n});\n\n$({ target: PROMISE, stat: true, forced: IS_PURE || FORCED }, {\n // `Promise.resolve` method\n // https://tc39.github.io/ecma262/#sec-promise.resolve\n resolve: function resolve(x) {\n return promiseResolve(IS_PURE && this === PromiseWrapper ? PromiseConstructor : this, x);\n }\n});\n\n$({ target: PROMISE, stat: true, forced: INCORRECT_ITERATION }, {\n // `Promise.all` method\n // https://tc39.github.io/ecma262/#sec-promise.all\n all: function all(iterable) {\n var C = this;\n var capability = newPromiseCapability(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aFunction(C.resolve);\n var values = [];\n var counter = 0;\n var remaining = 1;\n iterate(iterable, function (promise) {\n var index = counter++;\n var alreadyCalled = false;\n values.push(undefined);\n remaining++;\n $promiseResolve.call(C, promise).then(function (value) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = value;\n --remaining || resolve(values);\n }, reject);\n });\n --remaining || resolve(values);\n });\n if (result.error) reject(result.value);\n return capability.promise;\n },\n // `Promise.race` method\n // https://tc39.github.io/ecma262/#sec-promise.race\n race: function race(iterable) {\n var C = this;\n var capability = newPromiseCapability(C);\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aFunction(C.resolve);\n iterate(iterable, function (promise) {\n $promiseResolve.call(C, promise).then(capability.resolve, reject);\n });\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","var global = require('../internals/global');\n\nmodule.exports = global.Promise;\n","var global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar macrotask = require('../internals/task').set;\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar MutationObserver = global.MutationObserver || global.WebKitMutationObserver;\nvar document = global.document;\nvar process = global.process;\nvar Promise = global.Promise;\n// Node.js 11 shows ExperimentalWarning on getting `queueMicrotask`\nvar queueMicrotaskDescriptor = getOwnPropertyDescriptor(global, 'queueMicrotask');\nvar queueMicrotask = queueMicrotaskDescriptor && queueMicrotaskDescriptor.value;\n\nvar flush, head, last, notify, toggle, node, promise, then;\n\n// modern engines have queueMicrotask method\nif (!queueMicrotask) {\n flush = function () {\n var parent, fn;\n if (IS_NODE && (parent = process.domain)) parent.exit();\n while (head) {\n fn = head.fn;\n head = head.next;\n try {\n fn();\n } catch (error) {\n if (head) notify();\n else last = undefined;\n throw error;\n }\n } last = undefined;\n if (parent) parent.enter();\n };\n\n // browsers with MutationObserver, except iOS - https://github.com/zloirock/core-js/issues/339\n if (!IS_IOS && !IS_NODE && MutationObserver && document) {\n toggle = true;\n node = document.createTextNode('');\n new MutationObserver(flush).observe(node, { characterData: true });\n notify = function () {\n node.data = toggle = !toggle;\n };\n // environments with maybe non-completely correct, but existent Promise\n } else if (Promise && Promise.resolve) {\n // Promise.resolve without an argument throws an error in LG WebOS 2\n promise = Promise.resolve(undefined);\n then = promise.then;\n notify = function () {\n then.call(promise, flush);\n };\n // Node.js without promises\n } else if (IS_NODE) {\n notify = function () {\n process.nextTick(flush);\n };\n // for other environments - macrotask based on:\n // - setImmediate\n // - MessageChannel\n // - window.postMessag\n // - onreadystatechange\n // - setTimeout\n } else {\n notify = function () {\n // strange IE + webpack dev server bug - use .call(global)\n macrotask.call(global, flush);\n };\n }\n}\n\nmodule.exports = queueMicrotask || function (fn) {\n var task = { fn: fn, next: undefined };\n if (last) last.next = task;\n if (!head) {\n head = task;\n notify();\n } last = task;\n};\n","var anObject = require('../internals/an-object');\nvar isObject = require('../internals/is-object');\nvar newPromiseCapability = require('../internals/new-promise-capability');\n\nmodule.exports = function (C, x) {\n anObject(C);\n if (isObject(x) && x.constructor === C) return x;\n var promiseCapability = newPromiseCapability.f(C);\n var resolve = promiseCapability.resolve;\n resolve(x);\n return promiseCapability.promise;\n};\n","var global = require('../internals/global');\n\nmodule.exports = function (a, b) {\n var console = global.console;\n if (console && console.error) {\n arguments.length === 1 ? console.error(a) : console.error(a, b);\n }\n};\n","module.exports = function (exec) {\n try {\n return { error: false, value: exec() };\n } catch (error) {\n return { error: true, value: error };\n }\n};\n","/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nvar runtime = (function (exports) {\n \"use strict\";\n\n var Op = Object.prototype;\n var hasOwn = Op.hasOwnProperty;\n var undefined; // More compressible than void 0.\n var $Symbol = typeof Symbol === \"function\" ? Symbol : {};\n var iteratorSymbol = $Symbol.iterator || \"@@iterator\";\n var asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\";\n var toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\";\n\n function define(obj, key, value) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n return obj[key];\n }\n try {\n // IE 8 has a broken Object.defineProperty that only works on DOM objects.\n define({}, \"\");\n } catch (err) {\n define = function(obj, key, value) {\n return obj[key] = value;\n };\n }\n\n function wrap(innerFn, outerFn, self, tryLocsList) {\n // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator.\n var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;\n var generator = Object.create(protoGenerator.prototype);\n var context = new Context(tryLocsList || []);\n\n // The ._invoke method unifies the implementations of the .next,\n // .throw, and .return methods.\n generator._invoke = makeInvokeMethod(innerFn, self, context);\n\n return generator;\n }\n exports.wrap = wrap;\n\n // Try/catch helper to minimize deoptimizations. Returns a completion\n // record like context.tryEntries[i].completion. This interface could\n // have been (and was previously) designed to take a closure to be\n // invoked without arguments, but in all the cases we care about we\n // already have an existing method we want to call, so there's no need\n // to create a new function object. We can even get away with assuming\n // the method takes exactly one argument, since that happens to be true\n // in every case, so we don't have to touch the arguments object. The\n // only additional allocation required is the completion record, which\n // has a stable shape and so hopefully should be cheap to allocate.\n function tryCatch(fn, obj, arg) {\n try {\n return { type: \"normal\", arg: fn.call(obj, arg) };\n } catch (err) {\n return { type: \"throw\", arg: err };\n }\n }\n\n var GenStateSuspendedStart = \"suspendedStart\";\n var GenStateSuspendedYield = \"suspendedYield\";\n var GenStateExecuting = \"executing\";\n var GenStateCompleted = \"completed\";\n\n // Returning this object from the innerFn has the same effect as\n // breaking out of the dispatch switch statement.\n var ContinueSentinel = {};\n\n // Dummy constructor functions that we use as the .constructor and\n // .constructor.prototype properties for functions that return Generator\n // objects. For full spec compliance, you may wish to configure your\n // minifier not to mangle the names of these two functions.\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n\n // This is a polyfill for %IteratorPrototype% for environments that\n // don't natively support it.\n var IteratorPrototype = {};\n IteratorPrototype[iteratorSymbol] = function () {\n return this;\n };\n\n var getProto = Object.getPrototypeOf;\n var NativeIteratorPrototype = getProto && getProto(getProto(values([])));\n if (NativeIteratorPrototype &&\n NativeIteratorPrototype !== Op &&\n hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {\n // This environment has a native %IteratorPrototype%; use it instead\n // of the polyfill.\n IteratorPrototype = NativeIteratorPrototype;\n }\n\n var Gp = GeneratorFunctionPrototype.prototype =\n Generator.prototype = Object.create(IteratorPrototype);\n GeneratorFunction.prototype = Gp.constructor = GeneratorFunctionPrototype;\n GeneratorFunctionPrototype.constructor = GeneratorFunction;\n GeneratorFunction.displayName = define(\n GeneratorFunctionPrototype,\n toStringTagSymbol,\n \"GeneratorFunction\"\n );\n\n // Helper for defining the .next, .throw, and .return methods of the\n // Iterator interface in terms of a single ._invoke method.\n function defineIteratorMethods(prototype) {\n [\"next\", \"throw\", \"return\"].forEach(function(method) {\n define(prototype, method, function(arg) {\n return this._invoke(method, arg);\n });\n });\n }\n\n exports.isGeneratorFunction = function(genFun) {\n var ctor = typeof genFun === \"function\" && genFun.constructor;\n return ctor\n ? ctor === GeneratorFunction ||\n // For the native GeneratorFunction constructor, the best we can\n // do is to check its .name property.\n (ctor.displayName || ctor.name) === \"GeneratorFunction\"\n : false;\n };\n\n exports.mark = function(genFun) {\n if (Object.setPrototypeOf) {\n Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);\n } else {\n genFun.__proto__ = GeneratorFunctionPrototype;\n define(genFun, toStringTagSymbol, \"GeneratorFunction\");\n }\n genFun.prototype = Object.create(Gp);\n return genFun;\n };\n\n // Within the body of any async function, `await x` is transformed to\n // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test\n // `hasOwn.call(value, \"__await\")` to determine if the yielded value is\n // meant to be awaited.\n exports.awrap = function(arg) {\n return { __await: arg };\n };\n\n function AsyncIterator(generator, PromiseImpl) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n if (record.type === \"throw\") {\n reject(record.arg);\n } else {\n var result = record.arg;\n var value = result.value;\n if (value &&\n typeof value === \"object\" &&\n hasOwn.call(value, \"__await\")) {\n return PromiseImpl.resolve(value.__await).then(function(value) {\n invoke(\"next\", value, resolve, reject);\n }, function(err) {\n invoke(\"throw\", err, resolve, reject);\n });\n }\n\n return PromiseImpl.resolve(value).then(function(unwrapped) {\n // When a yielded Promise is resolved, its final value becomes\n // the .value of the Promise<{value,done}> result for the\n // current iteration.\n result.value = unwrapped;\n resolve(result);\n }, function(error) {\n // If a rejected Promise was yielded, throw the rejection back\n // into the async generator function so it can be handled there.\n return invoke(\"throw\", error, resolve, reject);\n });\n }\n }\n\n var previousPromise;\n\n function enqueue(method, arg) {\n function callInvokeWithMethodAndArg() {\n return new PromiseImpl(function(resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n\n return previousPromise =\n // If enqueue has been called before, then we want to wait until\n // all previous Promises have been resolved before calling invoke,\n // so that results are always delivered in the correct order. If\n // enqueue has not been called before, then it is important to\n // call invoke immediately, without waiting on a callback to fire,\n // so that the async generator function has the opportunity to do\n // any necessary setup in a predictable way. This predictability\n // is why the Promise constructor synchronously invokes its\n // executor callback, and why async functions synchronously\n // execute code before the first await. Since we implement simple\n // async functions in terms of async generators, it is especially\n // important to get this right, even though it requires care.\n previousPromise ? previousPromise.then(\n callInvokeWithMethodAndArg,\n // Avoid propagating failures to Promises returned by later\n // invocations of the iterator.\n callInvokeWithMethodAndArg\n ) : callInvokeWithMethodAndArg();\n }\n\n // Define the unified helper method that is used to implement .next,\n // .throw, and .return (see defineIteratorMethods).\n this._invoke = enqueue;\n }\n\n defineIteratorMethods(AsyncIterator.prototype);\n AsyncIterator.prototype[asyncIteratorSymbol] = function () {\n return this;\n };\n exports.AsyncIterator = AsyncIterator;\n\n // Note that simple async functions are implemented on top of\n // AsyncIterator objects; they just return a Promise for the value of\n // the final result produced by the iterator.\n exports.async = function(innerFn, outerFn, self, tryLocsList, PromiseImpl) {\n if (PromiseImpl === void 0) PromiseImpl = Promise;\n\n var iter = new AsyncIterator(\n wrap(innerFn, outerFn, self, tryLocsList),\n PromiseImpl\n );\n\n return exports.isGeneratorFunction(outerFn)\n ? iter // If outerFn is a generator, return the full iterator.\n : iter.next().then(function(result) {\n return result.done ? result.value : iter.next();\n });\n };\n\n function makeInvokeMethod(innerFn, self, context) {\n var state = GenStateSuspendedStart;\n\n return function invoke(method, arg) {\n if (state === GenStateExecuting) {\n throw new Error(\"Generator is already running\");\n }\n\n if (state === GenStateCompleted) {\n if (method === \"throw\") {\n throw arg;\n }\n\n // Be forgiving, per 25.3.3.3.3 of the spec:\n // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume\n return doneResult();\n }\n\n context.method = method;\n context.arg = arg;\n\n while (true) {\n var delegate = context.delegate;\n if (delegate) {\n var delegateResult = maybeInvokeDelegate(delegate, context);\n if (delegateResult) {\n if (delegateResult === ContinueSentinel) continue;\n return delegateResult;\n }\n }\n\n if (context.method === \"next\") {\n // Setting context._sent for legacy support of Babel's\n // function.sent implementation.\n context.sent = context._sent = context.arg;\n\n } else if (context.method === \"throw\") {\n if (state === GenStateSuspendedStart) {\n state = GenStateCompleted;\n throw context.arg;\n }\n\n context.dispatchException(context.arg);\n\n } else if (context.method === \"return\") {\n context.abrupt(\"return\", context.arg);\n }\n\n state = GenStateExecuting;\n\n var record = tryCatch(innerFn, self, context);\n if (record.type === \"normal\") {\n // If an exception is thrown from innerFn, we leave state ===\n // GenStateExecuting and loop back for another invocation.\n state = context.done\n ? GenStateCompleted\n : GenStateSuspendedYield;\n\n if (record.arg === ContinueSentinel) {\n continue;\n }\n\n return {\n value: record.arg,\n done: context.done\n };\n\n } else if (record.type === \"throw\") {\n state = GenStateCompleted;\n // Dispatch the exception by looping back around to the\n // context.dispatchException(context.arg) call above.\n context.method = \"throw\";\n context.arg = record.arg;\n }\n }\n };\n }\n\n // Call delegate.iterator[context.method](context.arg) and handle the\n // result, either by returning a { value, done } result from the\n // delegate iterator, or by modifying context.method and context.arg,\n // setting context.delegate to null, and returning the ContinueSentinel.\n function maybeInvokeDelegate(delegate, context) {\n var method = delegate.iterator[context.method];\n if (method === undefined) {\n // A .throw or .return when the delegate iterator has no .throw\n // method always terminates the yield* loop.\n context.delegate = null;\n\n if (context.method === \"throw\") {\n // Note: [\"return\"] must be used for ES3 parsing compatibility.\n if (delegate.iterator[\"return\"]) {\n // If the delegate iterator has a return method, give it a\n // chance to clean up.\n context.method = \"return\";\n context.arg = undefined;\n maybeInvokeDelegate(delegate, context);\n\n if (context.method === \"throw\") {\n // If maybeInvokeDelegate(context) changed context.method from\n // \"return\" to \"throw\", let that override the TypeError below.\n return ContinueSentinel;\n }\n }\n\n context.method = \"throw\";\n context.arg = new TypeError(\n \"The iterator does not provide a 'throw' method\");\n }\n\n return ContinueSentinel;\n }\n\n var record = tryCatch(method, delegate.iterator, context.arg);\n\n if (record.type === \"throw\") {\n context.method = \"throw\";\n context.arg = record.arg;\n context.delegate = null;\n return ContinueSentinel;\n }\n\n var info = record.arg;\n\n if (! info) {\n context.method = \"throw\";\n context.arg = new TypeError(\"iterator result is not an object\");\n context.delegate = null;\n return ContinueSentinel;\n }\n\n if (info.done) {\n // Assign the result of the finished delegate to the temporary\n // variable specified by delegate.resultName (see delegateYield).\n context[delegate.resultName] = info.value;\n\n // Resume execution at the desired location (see delegateYield).\n context.next = delegate.nextLoc;\n\n // If context.method was \"throw\" but the delegate handled the\n // exception, let the outer generator proceed normally. If\n // context.method was \"next\", forget context.arg since it has been\n // \"consumed\" by the delegate iterator. If context.method was\n // \"return\", allow the original .return call to continue in the\n // outer generator.\n if (context.method !== \"return\") {\n context.method = \"next\";\n context.arg = undefined;\n }\n\n } else {\n // Re-yield the result returned by the delegate method.\n return info;\n }\n\n // The delegate iterator is finished, so forget it and continue with\n // the outer generator.\n context.delegate = null;\n return ContinueSentinel;\n }\n\n // Define Generator.prototype.{next,throw,return} in terms of the\n // unified ._invoke helper method.\n defineIteratorMethods(Gp);\n\n define(Gp, toStringTagSymbol, \"Generator\");\n\n // A Generator should always return itself as the iterator object when the\n // @@iterator function is called on it. Some browsers' implementations of the\n // iterator prototype chain incorrectly implement this, causing the Generator\n // object to not be returned from this call. This ensures that doesn't happen.\n // See https://github.com/facebook/regenerator/issues/274 for more details.\n Gp[iteratorSymbol] = function() {\n return this;\n };\n\n Gp.toString = function() {\n return \"[object Generator]\";\n };\n\n function pushTryEntry(locs) {\n var entry = { tryLoc: locs[0] };\n\n if (1 in locs) {\n entry.catchLoc = locs[1];\n }\n\n if (2 in locs) {\n entry.finallyLoc = locs[2];\n entry.afterLoc = locs[3];\n }\n\n this.tryEntries.push(entry);\n }\n\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\";\n delete record.arg;\n entry.completion = record;\n }\n\n function Context(tryLocsList) {\n // The root entry object (effectively a try statement without a catch\n // or a finally block) gives us a place to store values thrown from\n // locations where there is no enclosing try statement.\n this.tryEntries = [{ tryLoc: \"root\" }];\n tryLocsList.forEach(pushTryEntry, this);\n this.reset(true);\n }\n\n exports.keys = function(object) {\n var keys = [];\n for (var key in object) {\n keys.push(key);\n }\n keys.reverse();\n\n // Rather than returning an object with a next method, we keep\n // things simple and return the next function itself.\n return function next() {\n while (keys.length) {\n var key = keys.pop();\n if (key in object) {\n next.value = key;\n next.done = false;\n return next;\n }\n }\n\n // To avoid creating an additional object, we just hang the .value\n // and .done properties off the next function object itself. This\n // also ensures that the minifier will not anonymize the function.\n next.done = true;\n return next;\n };\n };\n\n function values(iterable) {\n if (iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n if (iteratorMethod) {\n return iteratorMethod.call(iterable);\n }\n\n if (typeof iterable.next === \"function\") {\n return iterable;\n }\n\n if (!isNaN(iterable.length)) {\n var i = -1, next = function next() {\n while (++i < iterable.length) {\n if (hasOwn.call(iterable, i)) {\n next.value = iterable[i];\n next.done = false;\n return next;\n }\n }\n\n next.value = undefined;\n next.done = true;\n\n return next;\n };\n\n return next.next = next;\n }\n }\n\n // Return an iterator with no values.\n return { next: doneResult };\n }\n exports.values = values;\n\n function doneResult() {\n return { value: undefined, done: true };\n }\n\n Context.prototype = {\n constructor: Context,\n\n reset: function(skipTempReset) {\n this.prev = 0;\n this.next = 0;\n // Resetting context._sent for legacy support of Babel's\n // function.sent implementation.\n this.sent = this._sent = undefined;\n this.done = false;\n this.delegate = null;\n\n this.method = \"next\";\n this.arg = undefined;\n\n this.tryEntries.forEach(resetTryEntry);\n\n if (!skipTempReset) {\n for (var name in this) {\n // Not sure about the optimal order of these conditions:\n if (name.charAt(0) === \"t\" &&\n hasOwn.call(this, name) &&\n !isNaN(+name.slice(1))) {\n this[name] = undefined;\n }\n }\n }\n },\n\n stop: function() {\n this.done = true;\n\n var rootEntry = this.tryEntries[0];\n var rootRecord = rootEntry.completion;\n if (rootRecord.type === \"throw\") {\n throw rootRecord.arg;\n }\n\n return this.rval;\n },\n\n dispatchException: function(exception) {\n if (this.done) {\n throw exception;\n }\n\n var context = this;\n function handle(loc, caught) {\n record.type = \"throw\";\n record.arg = exception;\n context.next = loc;\n\n if (caught) {\n // If the dispatched exception was caught by a catch block,\n // then let that catch block handle the exception normally.\n context.method = \"next\";\n context.arg = undefined;\n }\n\n return !! caught;\n }\n\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n var record = entry.completion;\n\n if (entry.tryLoc === \"root\") {\n // Exception thrown outside of any try block that could handle\n // it, so set the completion value of the entire function to\n // throw the exception.\n return handle(\"end\");\n }\n\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\");\n var hasFinally = hasOwn.call(entry, \"finallyLoc\");\n\n if (hasCatch && hasFinally) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n } else if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else if (hasCatch) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n }\n\n } else if (hasFinally) {\n if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else {\n throw new Error(\"try statement without catch or finally\");\n }\n }\n }\n },\n\n abrupt: function(type, arg) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc <= this.prev &&\n hasOwn.call(entry, \"finallyLoc\") &&\n this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n\n if (finallyEntry &&\n (type === \"break\" ||\n type === \"continue\") &&\n finallyEntry.tryLoc <= arg &&\n arg <= finallyEntry.finallyLoc) {\n // Ignore the finally entry if control is not jumping to a\n // location outside the try/catch block.\n finallyEntry = null;\n }\n\n var record = finallyEntry ? finallyEntry.completion : {};\n record.type = type;\n record.arg = arg;\n\n if (finallyEntry) {\n this.method = \"next\";\n this.next = finallyEntry.finallyLoc;\n return ContinueSentinel;\n }\n\n return this.complete(record);\n },\n\n complete: function(record, afterLoc) {\n if (record.type === \"throw\") {\n throw record.arg;\n }\n\n if (record.type === \"break\" ||\n record.type === \"continue\") {\n this.next = record.arg;\n } else if (record.type === \"return\") {\n this.rval = this.arg = record.arg;\n this.method = \"return\";\n this.next = \"end\";\n } else if (record.type === \"normal\" && afterLoc) {\n this.next = afterLoc;\n }\n\n return ContinueSentinel;\n },\n\n finish: function(finallyLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.finallyLoc === finallyLoc) {\n this.complete(entry.completion, entry.afterLoc);\n resetTryEntry(entry);\n return ContinueSentinel;\n }\n }\n },\n\n \"catch\": function(tryLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n if (record.type === \"throw\") {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n return thrown;\n }\n }\n\n // The context.catch method must only be called with a location\n // argument that corresponds to a known catch block.\n throw new Error(\"illegal catch attempt\");\n },\n\n delegateYield: function(iterable, resultName, nextLoc) {\n this.delegate = {\n iterator: values(iterable),\n resultName: resultName,\n nextLoc: nextLoc\n };\n\n if (this.method === \"next\") {\n // Deliberately forget the last sent value so that we don't\n // accidentally pass it on to the delegate.\n this.arg = undefined;\n }\n\n return ContinueSentinel;\n }\n };\n\n // Regardless of whether this script is executing as a CommonJS module\n // or not, return the runtime object so that we can declare the variable\n // regeneratorRuntime in the outer scope, which allows this module to be\n // injected easily by `bin/regenerator --include-runtime script.js`.\n return exports;\n\n}(\n // If this script is executing as a CommonJS module, use module.exports\n // as the regeneratorRuntime namespace. Otherwise create a new empty\n // object. Either way, the resulting object will be used to initialize\n // the regeneratorRuntime variable at the top of this file.\n typeof module === \"object\" ? module.exports : {}\n));\n\ntry {\n regeneratorRuntime = runtime;\n} catch (accidentalStrictMode) {\n // This module should not be running in strict mode, so the above\n // assignment should always work unless something is misconfigured. Just\n // in case runtime.js accidentally runs in strict mode, we can escape\n // strict mode using a global Function call. This could conceivably fail\n // if a Content Security Policy forbids using Function, but in that case\n // the proper solution is to fix the accidental strict mode problem. If\n // you've misconfigured your bundler to force strict mode and applied a\n // CSP to forbid Function, and you're not willing to fix either of those\n // problems, please detail your unique predicament in a GitHub issue.\n Function(\"r\", \"regeneratorRuntime = r\")(runtime);\n}\n","'use strict';\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar isRegExp = require('../internals/is-regexp');\nvar anObject = require('../internals/an-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar speciesConstructor = require('../internals/species-constructor');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar toLength = require('../internals/to-length');\nvar callRegExpExec = require('../internals/regexp-exec-abstract');\nvar regexpExec = require('../internals/regexp-exec');\nvar fails = require('../internals/fails');\n\nvar arrayPush = [].push;\nvar min = Math.min;\nvar MAX_UINT32 = 0xFFFFFFFF;\n\n// babel-minify transpiles RegExp('x', 'y') -> /x/y and it causes SyntaxError\nvar SUPPORTS_Y = !fails(function () { return !RegExp(MAX_UINT32, 'y'); });\n\n// @@split logic\nfixRegExpWellKnownSymbolLogic('split', 2, function (SPLIT, nativeSplit, maybeCallNative) {\n var internalSplit;\n if (\n 'abbc'.split(/(b)*/)[1] == 'c' ||\n 'test'.split(/(?:)/, -1).length != 4 ||\n 'ab'.split(/(?:ab)*/).length != 2 ||\n '.'.split(/(.?)(.?)/).length != 4 ||\n '.'.split(/()()/).length > 1 ||\n ''.split(/.?/).length\n ) {\n // based on es5-shim implementation, need to rework it\n internalSplit = function (separator, limit) {\n var string = String(requireObjectCoercible(this));\n var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;\n if (lim === 0) return [];\n if (separator === undefined) return [string];\n // If `separator` is not a regex, use native split\n if (!isRegExp(separator)) {\n return nativeSplit.call(string, separator, lim);\n }\n var output = [];\n var flags = (separator.ignoreCase ? 'i' : '') +\n (separator.multiline ? 'm' : '') +\n (separator.unicode ? 'u' : '') +\n (separator.sticky ? 'y' : '');\n var lastLastIndex = 0;\n // Make `global` and avoid `lastIndex` issues by working with a copy\n var separatorCopy = new RegExp(separator.source, flags + 'g');\n var match, lastIndex, lastLength;\n while (match = regexpExec.call(separatorCopy, string)) {\n lastIndex = separatorCopy.lastIndex;\n if (lastIndex > lastLastIndex) {\n output.push(string.slice(lastLastIndex, match.index));\n if (match.length > 1 && match.index < string.length) arrayPush.apply(output, match.slice(1));\n lastLength = match[0].length;\n lastLastIndex = lastIndex;\n if (output.length >= lim) break;\n }\n if (separatorCopy.lastIndex === match.index) separatorCopy.lastIndex++; // Avoid an infinite loop\n }\n if (lastLastIndex === string.length) {\n if (lastLength || !separatorCopy.test('')) output.push('');\n } else output.push(string.slice(lastLastIndex));\n return output.length > lim ? output.slice(0, lim) : output;\n };\n // Chakra, V8\n } else if ('0'.split(undefined, 0).length) {\n internalSplit = function (separator, limit) {\n return separator === undefined && limit === 0 ? [] : nativeSplit.call(this, separator, limit);\n };\n } else internalSplit = nativeSplit;\n\n return [\n // `String.prototype.split` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.split\n function split(separator, limit) {\n var O = requireObjectCoercible(this);\n var splitter = separator == undefined ? undefined : separator[SPLIT];\n return splitter !== undefined\n ? splitter.call(separator, O, limit)\n : internalSplit.call(String(O), separator, limit);\n },\n // `RegExp.prototype[@@split]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@split\n //\n // NOTE: This cannot be properly polyfilled in engines that don't support\n // the 'y' flag.\n function (regexp, limit) {\n var res = maybeCallNative(internalSplit, regexp, this, limit, internalSplit !== nativeSplit);\n if (res.done) return res.value;\n\n var rx = anObject(regexp);\n var S = String(this);\n var C = speciesConstructor(rx, RegExp);\n\n var unicodeMatching = rx.unicode;\n var flags = (rx.ignoreCase ? 'i' : '') +\n (rx.multiline ? 'm' : '') +\n (rx.unicode ? 'u' : '') +\n (SUPPORTS_Y ? 'y' : 'g');\n\n // ^(? + rx + ) is needed, in combination with some S slicing, to\n // simulate the 'y' flag.\n var splitter = new C(SUPPORTS_Y ? rx : '^(?:' + rx.source + ')', flags);\n var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;\n if (lim === 0) return [];\n if (S.length === 0) return callRegExpExec(splitter, S) === null ? [S] : [];\n var p = 0;\n var q = 0;\n var A = [];\n while (q < S.length) {\n splitter.lastIndex = SUPPORTS_Y ? q : 0;\n var z = callRegExpExec(splitter, SUPPORTS_Y ? S : S.slice(q));\n var e;\n if (\n z === null ||\n (e = min(toLength(splitter.lastIndex + (SUPPORTS_Y ? 0 : q)), S.length)) === p\n ) {\n q = advanceStringIndex(S, q, unicodeMatching);\n } else {\n A.push(S.slice(p, q));\n if (A.length === lim) return A;\n for (var i = 1; i <= z.length - 1; i++) {\n A.push(z[i]);\n if (A.length === lim) return A;\n }\n q = p = e;\n }\n }\n A.push(S.slice(p));\n return A;\n }\n ];\n}, !SUPPORTS_Y);\n","(function(){\r\n var crypt = require('crypt'),\r\n utf8 = require('charenc').utf8,\r\n isBuffer = require('is-buffer'),\r\n bin = require('charenc').bin,\r\n\r\n // The core\r\n md5 = function (message, options) {\r\n // Convert to byte array\r\n if (message.constructor == String)\r\n if (options && options.encoding === 'binary')\r\n message = bin.stringToBytes(message);\r\n else\r\n message = utf8.stringToBytes(message);\r\n else if (isBuffer(message))\r\n message = Array.prototype.slice.call(message, 0);\r\n else if (!Array.isArray(message) && message.constructor !== Uint8Array)\r\n message = message.toString();\r\n // else, assume byte array already\r\n\r\n var m = crypt.bytesToWords(message),\r\n l = message.length * 8,\r\n a = 1732584193,\r\n b = -271733879,\r\n c = -1732584194,\r\n d = 271733878;\r\n\r\n // Swap endian\r\n for (var i = 0; i < m.length; i++) {\r\n m[i] = ((m[i] << 8) | (m[i] >>> 24)) & 0x00FF00FF |\r\n ((m[i] << 24) | (m[i] >>> 8)) & 0xFF00FF00;\r\n }\r\n\r\n // Padding\r\n m[l >>> 5] |= 0x80 << (l % 32);\r\n m[(((l + 64) >>> 9) << 4) + 14] = l;\r\n\r\n // Method shortcuts\r\n var FF = md5._ff,\r\n GG = md5._gg,\r\n HH = md5._hh,\r\n II = md5._ii;\r\n\r\n for (var i = 0; i < m.length; i += 16) {\r\n\r\n var aa = a,\r\n bb = b,\r\n cc = c,\r\n dd = d;\r\n\r\n a = FF(a, b, c, d, m[i+ 0], 7, -680876936);\r\n d = FF(d, a, b, c, m[i+ 1], 12, -389564586);\r\n c = FF(c, d, a, b, m[i+ 2], 17, 606105819);\r\n b = FF(b, c, d, a, m[i+ 3], 22, -1044525330);\r\n a = FF(a, b, c, d, m[i+ 4], 7, -176418897);\r\n d = FF(d, a, b, c, m[i+ 5], 12, 1200080426);\r\n c = FF(c, d, a, b, m[i+ 6], 17, -1473231341);\r\n b = FF(b, c, d, a, m[i+ 7], 22, -45705983);\r\n a = FF(a, b, c, d, m[i+ 8], 7, 1770035416);\r\n d = FF(d, a, b, c, m[i+ 9], 12, -1958414417);\r\n c = FF(c, d, a, b, m[i+10], 17, -42063);\r\n b = FF(b, c, d, a, m[i+11], 22, -1990404162);\r\n a = FF(a, b, c, d, m[i+12], 7, 1804603682);\r\n d = FF(d, a, b, c, m[i+13], 12, -40341101);\r\n c = FF(c, d, a, b, m[i+14], 17, -1502002290);\r\n b = FF(b, c, d, a, m[i+15], 22, 1236535329);\r\n\r\n a = GG(a, b, c, d, m[i+ 1], 5, -165796510);\r\n d = GG(d, a, b, c, m[i+ 6], 9, -1069501632);\r\n c = GG(c, d, a, b, m[i+11], 14, 643717713);\r\n b = GG(b, c, d, a, m[i+ 0], 20, -373897302);\r\n a = GG(a, b, c, d, m[i+ 5], 5, -701558691);\r\n d = GG(d, a, b, c, m[i+10], 9, 38016083);\r\n c = GG(c, d, a, b, m[i+15], 14, -660478335);\r\n b = GG(b, c, d, a, m[i+ 4], 20, -405537848);\r\n a = GG(a, b, c, d, m[i+ 9], 5, 568446438);\r\n d = GG(d, a, b, c, m[i+14], 9, -1019803690);\r\n c = GG(c, d, a, b, m[i+ 3], 14, -187363961);\r\n b = GG(b, c, d, a, m[i+ 8], 20, 1163531501);\r\n a = GG(a, b, c, d, m[i+13], 5, -1444681467);\r\n d = GG(d, a, b, c, m[i+ 2], 9, -51403784);\r\n c = GG(c, d, a, b, m[i+ 7], 14, 1735328473);\r\n b = GG(b, c, d, a, m[i+12], 20, -1926607734);\r\n\r\n a = HH(a, b, c, d, m[i+ 5], 4, -378558);\r\n d = HH(d, a, b, c, m[i+ 8], 11, -2022574463);\r\n c = HH(c, d, a, b, m[i+11], 16, 1839030562);\r\n b = HH(b, c, d, a, m[i+14], 23, -35309556);\r\n a = HH(a, b, c, d, m[i+ 1], 4, -1530992060);\r\n d = HH(d, a, b, c, m[i+ 4], 11, 1272893353);\r\n c = HH(c, d, a, b, m[i+ 7], 16, -155497632);\r\n b = HH(b, c, d, a, m[i+10], 23, -1094730640);\r\n a = HH(a, b, c, d, m[i+13], 4, 681279174);\r\n d = HH(d, a, b, c, m[i+ 0], 11, -358537222);\r\n c = HH(c, d, a, b, m[i+ 3], 16, -722521979);\r\n b = HH(b, c, d, a, m[i+ 6], 23, 76029189);\r\n a = HH(a, b, c, d, m[i+ 9], 4, -640364487);\r\n d = HH(d, a, b, c, m[i+12], 11, -421815835);\r\n c = HH(c, d, a, b, m[i+15], 16, 530742520);\r\n b = HH(b, c, d, a, m[i+ 2], 23, -995338651);\r\n\r\n a = II(a, b, c, d, m[i+ 0], 6, -198630844);\r\n d = II(d, a, b, c, m[i+ 7], 10, 1126891415);\r\n c = II(c, d, a, b, m[i+14], 15, -1416354905);\r\n b = II(b, c, d, a, m[i+ 5], 21, -57434055);\r\n a = II(a, b, c, d, m[i+12], 6, 1700485571);\r\n d = II(d, a, b, c, m[i+ 3], 10, -1894986606);\r\n c = II(c, d, a, b, m[i+10], 15, -1051523);\r\n b = II(b, c, d, a, m[i+ 1], 21, -2054922799);\r\n a = II(a, b, c, d, m[i+ 8], 6, 1873313359);\r\n d = II(d, a, b, c, m[i+15], 10, -30611744);\r\n c = II(c, d, a, b, m[i+ 6], 15, -1560198380);\r\n b = II(b, c, d, a, m[i+13], 21, 1309151649);\r\n a = II(a, b, c, d, m[i+ 4], 6, -145523070);\r\n d = II(d, a, b, c, m[i+11], 10, -1120210379);\r\n c = II(c, d, a, b, m[i+ 2], 15, 718787259);\r\n b = II(b, c, d, a, m[i+ 9], 21, -343485551);\r\n\r\n a = (a + aa) >>> 0;\r\n b = (b + bb) >>> 0;\r\n c = (c + cc) >>> 0;\r\n d = (d + dd) >>> 0;\r\n }\r\n\r\n return crypt.endian([a, b, c, d]);\r\n };\r\n\r\n // Auxiliary functions\r\n md5._ff = function (a, b, c, d, x, s, t) {\r\n var n = a + (b & c | ~b & d) + (x >>> 0) + t;\r\n return ((n << s) | (n >>> (32 - s))) + b;\r\n };\r\n md5._gg = function (a, b, c, d, x, s, t) {\r\n var n = a + (b & d | c & ~d) + (x >>> 0) + t;\r\n return ((n << s) | (n >>> (32 - s))) + b;\r\n };\r\n md5._hh = function (a, b, c, d, x, s, t) {\r\n var n = a + (b ^ c ^ d) + (x >>> 0) + t;\r\n return ((n << s) | (n >>> (32 - s))) + b;\r\n };\r\n md5._ii = function (a, b, c, d, x, s, t) {\r\n var n = a + (c ^ (b | ~d)) + (x >>> 0) + t;\r\n return ((n << s) | (n >>> (32 - s))) + b;\r\n };\r\n\r\n // Package private blocksize\r\n md5._blocksize = 16;\r\n md5._digestsize = 16;\r\n\r\n module.exports = function (message, options) {\r\n if (message === undefined || message === null)\r\n throw new Error('Illegal argument ' + message);\r\n\r\n var digestbytes = crypt.wordsToBytes(md5(message, options));\r\n return options && options.asBytes ? digestbytes :\r\n options && options.asString ? bin.bytesToString(digestbytes) :\r\n crypt.bytesToHex(digestbytes);\r\n };\r\n\r\n})();\r\n","(function() {\n var base64map\n = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/',\n\n crypt = {\n // Bit-wise rotation left\n rotl: function(n, b) {\n return (n << b) | (n >>> (32 - b));\n },\n\n // Bit-wise rotation right\n rotr: function(n, b) {\n return (n << (32 - b)) | (n >>> b);\n },\n\n // Swap big-endian to little-endian and vice versa\n endian: function(n) {\n // If number given, swap endian\n if (n.constructor == Number) {\n return crypt.rotl(n, 8) & 0x00FF00FF | crypt.rotl(n, 24) & 0xFF00FF00;\n }\n\n // Else, assume array and swap all items\n for (var i = 0; i < n.length; i++)\n n[i] = crypt.endian(n[i]);\n return n;\n },\n\n // Generate an array of any length of random bytes\n randomBytes: function(n) {\n for (var bytes = []; n > 0; n--)\n bytes.push(Math.floor(Math.random() * 256));\n return bytes;\n },\n\n // Convert a byte array to big-endian 32-bit words\n bytesToWords: function(bytes) {\n for (var words = [], i = 0, b = 0; i < bytes.length; i++, b += 8)\n words[b >>> 5] |= bytes[i] << (24 - b % 32);\n return words;\n },\n\n // Convert big-endian 32-bit words to a byte array\n wordsToBytes: function(words) {\n for (var bytes = [], b = 0; b < words.length * 32; b += 8)\n bytes.push((words[b >>> 5] >>> (24 - b % 32)) & 0xFF);\n return bytes;\n },\n\n // Convert a byte array to a hex string\n bytesToHex: function(bytes) {\n for (var hex = [], i = 0; i < bytes.length; i++) {\n hex.push((bytes[i] >>> 4).toString(16));\n hex.push((bytes[i] & 0xF).toString(16));\n }\n return hex.join('');\n },\n\n // Convert a hex string to a byte array\n hexToBytes: function(hex) {\n for (var bytes = [], c = 0; c < hex.length; c += 2)\n bytes.push(parseInt(hex.substr(c, 2), 16));\n return bytes;\n },\n\n // Convert a byte array to a base-64 string\n bytesToBase64: function(bytes) {\n for (var base64 = [], i = 0; i < bytes.length; i += 3) {\n var triplet = (bytes[i] << 16) | (bytes[i + 1] << 8) | bytes[i + 2];\n for (var j = 0; j < 4; j++)\n if (i * 8 + j * 6 <= bytes.length * 8)\n base64.push(base64map.charAt((triplet >>> 6 * (3 - j)) & 0x3F));\n else\n base64.push('=');\n }\n return base64.join('');\n },\n\n // Convert a base-64 string to a byte array\n base64ToBytes: function(base64) {\n // Remove non-base-64 characters\n base64 = base64.replace(/[^A-Z0-9+\\/]/ig, '');\n\n for (var bytes = [], i = 0, imod4 = 0; i < base64.length;\n imod4 = ++i % 4) {\n if (imod4 == 0) continue;\n bytes.push(((base64map.indexOf(base64.charAt(i - 1))\n & (Math.pow(2, -2 * imod4 + 8) - 1)) << (imod4 * 2))\n | (base64map.indexOf(base64.charAt(i)) >>> (6 - imod4 * 2)));\n }\n return bytes;\n }\n };\n\n module.exports = crypt;\n})();\n","/*!\n * Determine if an object is a Buffer\n *\n * @author Feross Aboukhadijeh <https://feross.org>\n * @license MIT\n */\n\n// The _isBuffer check is for Safari 5-7 support, because it's missing\n// Object.prototype.constructor. Remove this eventually\nmodule.exports = function (obj) {\n return obj != null && (isBuffer(obj) || isSlowBuffer(obj) || !!obj._isBuffer)\n}\n\nfunction isBuffer (obj) {\n return !!obj.constructor && typeof obj.constructor.isBuffer === 'function' && obj.constructor.isBuffer(obj)\n}\n\n// For Node v0.10 support. Remove this eventually.\nfunction isSlowBuffer (obj) {\n return typeof obj.readFloatLE === 'function' && typeof obj.slice === 'function' && isBuffer(obj.slice(0, 0))\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar flattenIntoArray = require('../internals/flatten-into-array');\nvar toObject = require('../internals/to-object');\nvar toLength = require('../internals/to-length');\nvar toInteger = require('../internals/to-integer');\nvar arraySpeciesCreate = require('../internals/array-species-create');\n\n// `Array.prototype.flat` method\n// https://github.com/tc39/proposal-flatMap\n$({ target: 'Array', proto: true }, {\n flat: function flat(/* depthArg = 1 */) {\n var depthArg = arguments.length ? arguments[0] : undefined;\n var O = toObject(this);\n var sourceLen = toLength(O.length);\n var A = arraySpeciesCreate(O, 0);\n A.length = flattenIntoArray(A, O, O, sourceLen, 0, depthArg === undefined ? 1 : toInteger(depthArg));\n return A;\n }\n});\n","'use strict';\nvar isArray = require('../internals/is-array');\nvar toLength = require('../internals/to-length');\nvar bind = require('../internals/function-bind-context');\n\n// `FlattenIntoArray` abstract operation\n// https://tc39.github.io/proposal-flatMap/#sec-FlattenIntoArray\nvar flattenIntoArray = function (target, original, source, sourceLen, start, depth, mapper, thisArg) {\n var targetIndex = start;\n var sourceIndex = 0;\n var mapFn = mapper ? bind(mapper, thisArg, 3) : false;\n var element;\n\n while (sourceIndex < sourceLen) {\n if (sourceIndex in source) {\n element = mapFn ? mapFn(source[sourceIndex], sourceIndex, original) : source[sourceIndex];\n\n if (depth > 0 && isArray(element)) {\n targetIndex = flattenIntoArray(target, original, element, toLength(element.length), targetIndex, depth - 1) - 1;\n } else {\n if (targetIndex >= 0x1FFFFFFFFFFFFF) throw TypeError('Exceed the acceptable array length');\n target[targetIndex] = element;\n }\n\n targetIndex++;\n }\n sourceIndex++;\n }\n return targetIndex;\n};\n\nmodule.exports = flattenIntoArray;\n","// this method was added to unscopables after implementation\n// in popular engines, so it's moved to a separate module\nvar addToUnscopables = require('../internals/add-to-unscopables');\n\naddToUnscopables('flat');\n","var DESCRIPTORS = require('../internals/descriptors');\nvar global = require('../internals/global');\nvar isForced = require('../internals/is-forced');\nvar inheritIfRequired = require('../internals/inherit-if-required');\nvar defineProperty = require('../internals/object-define-property').f;\nvar getOwnPropertyNames = require('../internals/object-get-own-property-names').f;\nvar isRegExp = require('../internals/is-regexp');\nvar getFlags = require('../internals/regexp-flags');\nvar stickyHelpers = require('../internals/regexp-sticky-helpers');\nvar redefine = require('../internals/redefine');\nvar fails = require('../internals/fails');\nvar setInternalState = require('../internals/internal-state').set;\nvar setSpecies = require('../internals/set-species');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\nvar NativeRegExp = global.RegExp;\nvar RegExpPrototype = NativeRegExp.prototype;\nvar re1 = /a/g;\nvar re2 = /a/g;\n\n// \"new\" should create a new object, old webkit bug\nvar CORRECT_NEW = new NativeRegExp(re1) !== re1;\n\nvar UNSUPPORTED_Y = stickyHelpers.UNSUPPORTED_Y;\n\nvar FORCED = DESCRIPTORS && isForced('RegExp', (!CORRECT_NEW || UNSUPPORTED_Y || fails(function () {\n re2[MATCH] = false;\n // RegExp constructor can alter flags and IsRegExp works correct with @@match\n return NativeRegExp(re1) != re1 || NativeRegExp(re2) == re2 || NativeRegExp(re1, 'i') != '/a/i';\n})));\n\n// `RegExp` constructor\n// https://tc39.github.io/ecma262/#sec-regexp-constructor\nif (FORCED) {\n var RegExpWrapper = function RegExp(pattern, flags) {\n var thisIsRegExp = this instanceof RegExpWrapper;\n var patternIsRegExp = isRegExp(pattern);\n var flagsAreUndefined = flags === undefined;\n var sticky;\n\n if (!thisIsRegExp && patternIsRegExp && pattern.constructor === RegExpWrapper && flagsAreUndefined) {\n return pattern;\n }\n\n if (CORRECT_NEW) {\n if (patternIsRegExp && !flagsAreUndefined) pattern = pattern.source;\n } else if (pattern instanceof RegExpWrapper) {\n if (flagsAreUndefined) flags = getFlags.call(pattern);\n pattern = pattern.source;\n }\n\n if (UNSUPPORTED_Y) {\n sticky = !!flags && flags.indexOf('y') > -1;\n if (sticky) flags = flags.replace(/y/g, '');\n }\n\n var result = inheritIfRequired(\n CORRECT_NEW ? new NativeRegExp(pattern, flags) : NativeRegExp(pattern, flags),\n thisIsRegExp ? this : RegExpPrototype,\n RegExpWrapper\n );\n\n if (UNSUPPORTED_Y && sticky) setInternalState(result, { sticky: sticky });\n\n return result;\n };\n var proxy = function (key) {\n key in RegExpWrapper || defineProperty(RegExpWrapper, key, {\n configurable: true,\n get: function () { return NativeRegExp[key]; },\n set: function (it) { NativeRegExp[key] = it; }\n });\n };\n var keys = getOwnPropertyNames(NativeRegExp);\n var index = 0;\n while (keys.length > index) proxy(keys[index++]);\n RegExpPrototype.constructor = RegExpWrapper;\n RegExpWrapper.prototype = RegExpPrototype;\n redefine(global, 'RegExp', RegExpWrapper);\n}\n\n// https://tc39.github.io/ecma262/#sec-get-regexp-@@species\nsetSpecies('RegExp');\n","\nimport Storage from './storage'\nimport ScopedStorage from './scopedstorage'\n\nexport default class StorageBuilder {\n\n private appId: string\n private persisted = false\n private clearedOnLogout = false\n\n constructor(appId: string) {\n this.appId = appId\n }\n\n persist(persist: boolean = true): StorageBuilder {\n this.persisted = persist\n return this\n }\n\n clearOnLogout(clear: boolean = true): StorageBuilder {\n this.clearedOnLogout = clear\n return this\n }\n\n build(): Storage {\n return new ScopedStorage(\n this.appId,\n this.persisted ? window.localStorage : window.sessionStorage,\n !this.clearedOnLogout\n )\n }\n\n}\n","'use strict';\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar anObject = require('../internals/an-object');\nvar toLength = require('../internals/to-length');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar regExpExec = require('../internals/regexp-exec-abstract');\n\n// @@match logic\nfixRegExpWellKnownSymbolLogic('match', 1, function (MATCH, nativeMatch, maybeCallNative) {\n return [\n // `String.prototype.match` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.match\n function match(regexp) {\n var O = requireObjectCoercible(this);\n var matcher = regexp == undefined ? undefined : regexp[MATCH];\n return matcher !== undefined ? matcher.call(regexp, O) : new RegExp(regexp)[MATCH](String(O));\n },\n // `RegExp.prototype[@@match]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@match\n function (regexp) {\n var res = maybeCallNative(nativeMatch, regexp, this);\n if (res.done) return res.value;\n\n var rx = anObject(regexp);\n var S = String(this);\n\n if (!rx.global) return regExpExec(rx, S);\n\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n var A = [];\n var n = 0;\n var result;\n while ((result = regExpExec(rx, S)) !== null) {\n var matchStr = String(result[0]);\n A[n] = matchStr;\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n n++;\n }\n return n === 0 ? null : A;\n }\n ];\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar $includes = require('../internals/array-includes').includes;\nvar addToUnscopables = require('../internals/add-to-unscopables');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar USES_TO_LENGTH = arrayMethodUsesToLength('indexOf', { ACCESSORS: true, 1: 0 });\n\n// `Array.prototype.includes` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.includes\n$({ target: 'Array', proto: true, forced: !USES_TO_LENGTH }, {\n includes: function includes(el /* , fromIndex = 0 */) {\n return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n\n// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('includes');\n","'use strict';\nvar $ = require('../internals/export');\nvar codeAt = require('../internals/string-multibyte').codeAt;\n\n// `String.prototype.codePointAt` method\n// https://tc39.github.io/ecma262/#sec-string.prototype.codepointat\n$({ target: 'String', proto: true }, {\n codePointAt: function codePointAt(pos) {\n return codeAt(this, pos);\n }\n});\n","var $ = require('../internals/export');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\n\nvar fromCharCode = String.fromCharCode;\nvar nativeFromCodePoint = String.fromCodePoint;\n\n// length should be 1, old FF problem\nvar INCORRECT_LENGTH = !!nativeFromCodePoint && nativeFromCodePoint.length != 1;\n\n// `String.fromCodePoint` method\n// https://tc39.github.io/ecma262/#sec-string.fromcodepoint\n$({ target: 'String', stat: true, forced: INCORRECT_LENGTH }, {\n fromCodePoint: function fromCodePoint(x) { // eslint-disable-line no-unused-vars\n var elements = [];\n var length = arguments.length;\n var i = 0;\n var code;\n while (length > i) {\n code = +arguments[i++];\n if (toAbsoluteIndex(code, 0x10FFFF) !== code) throw RangeError(code + ' is not a valid code point');\n elements.push(code < 0x10000\n ? fromCharCode(code)\n : fromCharCode(((code -= 0x10000) >> 10) + 0xD800, code % 0x400 + 0xDC00)\n );\n } return elements.join('');\n }\n});\n"],"sourceRoot":""}
|