{"version":3,"mappings":"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","names":["makeMap","str","expectsLowerCase","set","val","EMPTY_OBJ","EMPTY_ARR","NOOP","NO","isOn","key","isModelListener","extend","remove","arr","el","i","hasOwnProperty","hasOwn","isArray","isMap","toTypeString","isSet","isDate","isFunction","isString","isSymbol","isObject","isPromise","objectToString","value","toRawType","isPlainObject","isIntegerKey","isReservedProp","cacheStringFunction","fn","cache","camelizeRE","camelize","_","c","hyphenateRE","hyphenate","capitalize","toHandlerKey","hasChanged","oldValue","invokeArrayFns","fns","arg","def","obj","writable","looseToNumber","n","toNumber","_globalThis","getGlobalThis","normalizeStyle","res","item","normalized","parseStringStyle","listDelimiterRE","propertyDelimiterRE","styleCommentRE","cssText","ret","tmp","normalizeClass","name","normalizeProps","props","klass","style","specialBooleanAttrs","isSpecialBooleanAttr","includeBooleanAttr","looseCompareArrays","a","b","equal","looseEqual","aValidType","bValidType","aKeysCount","bKeysCount","aHasKey","bHasKey","looseIndexOf","toDisplayString","replacer","_key","entries","val2","stringifySymbol","v","_a","activeEffectScope","EffectScope","detached","currentEffectScope","fromParent","l","last","effectScope","recordEffectScope","effect","scope","getCurrentScope","activeEffect","ReactiveEffect","trigger","scheduler","pauseTracking","dep","triggerComputed","resetTracking","lastShouldTrack","shouldTrack","lastEffect","preCleanupEffect","postCleanupEffect","computed","effect2","cleanupDepEffect","trackId","pauseScheduleStack","trackStack","pauseScheduling","resetScheduling","queueEffectSchedulers","trackEffect","debuggerEventExtraInfo","oldDep","triggerEffects","dirtyLevel","tracking","createDep","cleanup","targetMap","ITERATE_KEY","MAP_KEY_ITERATE_KEY","track","target","type","depsMap","newValue","oldTarget","deps","newLength","key2","isNonTrackableKeys","builtInSymbols","arrayInstrumentations","createArrayInstrumentations","instrumentations","args","toRaw","BaseReactiveHandler","_isReadonly","_isShallow","receiver","isReadonly2","isShallow2","shallowReadonlyMap","readonlyMap","shallowReactiveMap","reactiveMap","targetIsArray","isRef","readonly","reactive","MutableReactiveHandler","isOldValueReadonly","isReadonly","isShallow","hadKey","result","ReadonlyReactiveHandler","mutableHandlers","readonlyHandlers","shallowReactiveHandlers","toShallow","getProto","get","rawTarget","rawKey","has2","wrap","toReadonly","toReactive","has","size","add","get2","deleteEntry","clear","hadItems","createForEach","callback","thisArg","observed","createIterableMethod","method","targetIsMap","isPair","isKeyOnly","innerIterator","done","createReadonlyMethod","createInstrumentations","mutableInstrumentations2","shallowInstrumentations2","readonlyInstrumentations2","shallowReadonlyInstrumentations2","mutableInstrumentations","readonlyInstrumentations","shallowInstrumentations","shallowReadonlyInstrumentations","createInstrumentationGetter","shallow","mutableCollectionHandlers","shallowCollectionHandlers","readonlyCollectionHandlers","targetTypeMap","rawType","getTargetType","createReactiveObject","shallowReactive","baseHandlers","collectionHandlers","proxyMap","existingProxy","targetType","proxy","isReactive","isProxy","raw","markRaw","ComputedRefImpl","getter","_setter","isSSR","triggerRefValue","self","trackRefValue","getterOrOptions","debugOptions","setter","onlyGetter","ref2","newVal","oldVal","r","ref","createRef","shallowRef","rawValue","RefImpl","__v_isShallow","useDirectValue","unref","shallowUnwrapHandlers","proxyRefs","objectWithRefs","callWithErrorHandling","instance","err","handleError","callWithAsyncErrorHandling","values","throwInDev","contextVNode","cur","exposedInstance","errorInfo","errorCapturedHooks","appErrorHandler","logError","isFlushing","isFlushPending","queue","flushIndex","pendingPostFlushCbs","activePostFlushCbs","postFlushIndex","resolvedPromise","currentFlushPromise","nextTick","p","findInsertionIndex","id","start","end","middle","middleJob","middleJobId","getId","queueJob","job","queueFlush","flushJobs","invalidateJob","queuePostFlushCb","cb","flushPreFlushCbs","seen","flushPostFlushCbs","deduped","comparator","diff","emit","event","rawArgs","modelArg","modifiersKey","number","trim","handlerName","handler","onceHandler","normalizeEmitsOptions","comp","appContext","asMixin","cached","hasExtends","extendEmits","raw2","normalizedFromExtend","isEmitListener","options","currentRenderingInstance","currentScopeId","setCurrentRenderingInstance","prev","pushScopeId","popScopeId","withCtx","ctx","isNonScopedSlot","renderFnWithContext","setBlockTracking","prevInstance","renderComponentRoot","Component","vnode","withProxy","propsOptions","slots","attrs","render","renderCache","data","setupState","inheritAttrs","fallthroughAttrs","proxyToUse","thisProxy","normalizeVNode","render2","getFunctionalFallthrough","blockStack","createVNode","Comment","root","keys","shapeFlag","filterModelListeners","cloneVNode","filterSingleRoot","children","recurse","singleRoot","child","isVNode","shouldUpdateComponent","prevVNode","nextVNode","optimized","prevProps","prevChildren","component","nextProps","nextChildren","patchFlag","emits","hasPropsChanged","dynamicProps","emitsOptions","nextKeys","updateHOCHostEl","parent","COMPONENTS","resolveComponent","maybeSelfReference","resolveAsset","NULL_DYNAMIC_COMPONENT","resolveDynamicComponent","warnMissing","currentInstance","selfName","getComponentName","resolve","registry","isSuspense","suspenseId","SuspenseImpl","n1","n2","container","anchor","parentComponent","parentSuspense","namespace","slotScopeIds","rendererInternals","mountSuspense","patchSuspense","hydrateSuspense","createSuspenseBoundary","normalizeSuspenseChildren","Suspense","triggerEvent","eventListener","patch","createElement","hiddenContainer","suspense","setActiveBranch","unmount","newBranch","newFallback","activeBranch","pendingBranch","isInFallback","isHydrating","isSameVNodeType","timeout","pendingId","move","next","parentNode","parentSuspenseId","isSuspensible","isVNodeSuspensible","initialAnchor","resume","sync","vnode2","effects","parentComponent2","container2","delayEnter","hasUnresolvedAncestor","fallbackVNode","namespace2","anchor2","mountFallback","setupRenderEffect","optimized2","isInPendingSuspense","hydratedEl","asyncSetupResult","handleSetupResult","placeholder","parentSuspense2","doRemove","node","hydrateNode","isSlotChildren","normalizeSuspenseSlot","s","block","trackBlock","isBlockTreeEnabled","openBlock","currentBlock","closeBlock","queueEffectWithSuspense","branch","suspensible","injectHook","hook","prepend","hooks","wrappedHook","reset","setCurrentInstance","createHook","lifecycle","isInSSRComponentSetup","onBeforeMount","onMounted","onBeforeUpdate","onUpdated","onBeforeUnmount","onUnmounted","onServerPrefetch","onRenderTriggered","onRenderTracked","onErrorCaptured","withDirectives","directives","getComponentPublicInstance","bindings","dir","modifiers","traverse","invokeDirectiveHook","oldBindings","binding","renderList","source","renderItem","index","createSlots","dynamicSlots","slot","j","defineComponent","extraOptions","isAsyncWrapper","defineAsyncComponent","loader","loadingComponent","errorComponent","delay","userOnError","pendingRequest","resolvedComp","retries","retry","load","thisRequest","reject","createInnerComp","onError","loaded","error","delayed","isKeepAlive","ce","renderSlot","fallback","noSlotted","validSlotContent","ensureValidVNode","rendered","createBlock","Fragment","vnodes","toHandlers","preserveCaseIfNecessary","getPublicInstance","isStatefulComponent","publicPropertiesMap","resolveMergedOptions","instanceWatch","hasSetupBinding","state","PublicInstanceProxyHandlers","accessCache","normalizedProps","shouldCacheAccess","publicGetter","cssModule","globalProperties","descriptor","useSlots","getContext","useAttrs","getCurrentInstance","createSetupContext","normalizePropsOrEmits","withAsyncContext","getAwaitable","awaitable","unsetCurrentInstance","e","applyOptions","publicThis","callHook","dataOptions","computedOptions","methods","watchOptions","provideOptions","injectOptions","created","beforeMount","mounted","beforeUpdate","updated","activated","deactivated","beforeDestroy","beforeUnmount","destroyed","unmounted","renderTracked","renderTriggered","errorCaptured","serverPrefetch","expose","components","filters","resolveInjections","methodHandler","opt","createWatcher","provides","provide","registerLifecycleHook","register","_hook","onActivated","onDeactivated","exposed","checkDuplicateProperties","normalizeInject","injected","inject","h","createPathGetter","watch","base","mixins","extendsOptions","globalMixins","optionMergeStrategies","resolved","m","mergeOptions","to","from","strats","strat","internalOptionMergeStrats","mergeDataFn","mergeEmitsOrPropsOptions","mergeObjectOptions","mergeAsArray","mergeWatchOptions","mergeInject","merged","createAppContext","uid$1","createAppAPI","hydrate","rootComponent","rootProps","context","installedPlugins","isMounted","app","version","plugin","mixin","directive","rootContainer","isHydrate","lastApp","currentApp","parentProvides","defaultValue","treatDefaultAsFactory","internalObjectProto","createInternalObject","isInternalObject","initProps","rawProps","isStateful","setFullProps","updateProps","rawPrevProps","rawCurrentProps","hasAttrsChanged","propsToUpdate","camelizedKey","resolvePropValue","kebabKey","needCastKeys","rawCastValues","camelKey","castValues","isAbsent","hasDefault","propsDefaults","normalizePropsOptions","extendProps","normalizedKey","validatePropName","prop","booleanIndex","getTypeIndex","stringIndex","getType","ctor","isSameType","expectedTypes","t","isInternalKey","normalizeSlotValue","normalizeSlot","rawSlot","normalizeObjectSlots","rawSlots","normalizeVNodeSlots","initSlots","updateSlots","needDeletionCheck","deletionComparisonTarget","setRef","rawRef","oldRawRef","isUnmount","refValue","owner","oldRef","refs","_isString","_isRef","doSet","existing","queuePostRenderEffect","createRenderer","baseCreateRenderer","createHydrationFns","hostInsert","hostRemove","hostPatchProp","hostCreateElement","hostCreateText","hostCreateComment","hostSetText","hostSetElementText","hostParentNode","hostNextSibling","hostSetScopeId","hostInsertStaticContent","getNextHostNode","Text","processText","processCommentNode","Static","mountStaticNode","processFragment","processElement","processComponent","internals","moveStaticNode","nextSibling","removeStaticNode","mountElement","patchElement","vnodeHook","transition","dirs","mountChildren","resolveChildrenNamespace","setScopeId","unmountChildren","invokeVNodeHook","needCallTransitionHooks","needTransition","scopeId","subTree","parentVNode","cloneIfMounted","dynamicChildren","oldProps","newProps","toggleRecurse","patchBlockChildren","patchChildren","patchProps","oldChildren","newChildren","fallbackContainer","oldVNode","newVNode","fragmentStartAnchor","fragmentEndAnchor","fragmentSlotScopeIds","traverseStaticChildren","mountComponent","updateComponent","initialVNode","createComponentInstance","setupComponent","updateComponentPreRender","componentUpdateFn","bu","u","nonHydratedAsyncRoot","locateNonHydratedAsyncRoot","originNext","nextTree","prevTree","bm","isAsyncWrapperVNode","hydrateSubTree","scopedInitialVNode","update","c1","prevShapeFlag","c2","patchKeyedChildren","patchUnkeyedChildren","oldLength","commonLength","nextChild","parentAnchor","l2","e1","e2","nextPos","s1","s2","keyToNewIndexMap","patched","toBePatched","moved","maxNewIndexSoFar","newIndexToOldIndexMap","prevChild","newIndex","increasingNewIndexSequence","getSequence","nextIndex","moveType","leave","delayLeave","afterLeave","remove2","performLeave","memoIndex","shouldInvokeDirs","shouldInvokeVnodeHook","unmountComponent","removeFragment","performRemove","bum","um","invalidateMount","currentNamespace","allowed","ch1","ch2","len","arrI","subComponent","ssrContextKey","useSSRContext","watchPostEffect","doWatch","INITIAL_WATCHER_VALUE","immediate","deep","flush","once","onTrack","onTrigger","_cb","unwatch","reactiveGetter","source2","forceTrigger","isMultiSource","onCleanup","baseGetter","ssrCleanup","path","segments","depth","registerKeepAliveHook","current","injectToKeepAliveRoot","keepAliveRoot","leaveCbKey","enterCbKey","useTransitionState","TransitionHookValidator","BaseTransitionPropsValidators","recursiveGetSubtree","BaseTransitionImpl","getTransitionRawChildren","mode","emptyPlaceholder","innerChild","getKeepAliveChild","enterHooks","resolveTransitionHooks","setTransitionHooks","oldChild","oldInnerChild","leavingHooks","earlyRemove","delayedLeave","leavingVNodesCache","getLeavingNodesForType","BaseTransition","leavingVNodes","postClone","appear","persisted","onBeforeEnter","onEnter","onAfterEnter","onEnterCancelled","onBeforeLeave","onLeave","onAfterLeave","onLeaveCancelled","onBeforeAppear","onAppear","onAfterAppear","onAppearCancelled","callAsyncHook","hook2","leavingVNode","afterHook","cancelHook","called","cancelled","hooks2","keepComment","parentKey","keyedFragmentCount","isTeleport","disableTracking","setupBlock","createElementBlock","createBaseVNode","normalizeKey","normalizeRef","ref_key","ref_for","isBlockNode","needFullChildrenNormalization","normalizeChildren","_createVNode","cloned","isClassComponent","guardReactiveProps","extraProps","mergeRef","cloneTransition","mergedProps","mergeProps","createTextVNode","text","flag","createStaticVNode","content","numberOfNodes","createCommentVNode","asBlock","slotFlag","toMerge","incoming","emptyAppContext","uid","internalSetCurrentInstance","setInSSRSetupState","g","registerGlobalSetter","setters","setupResult","setupStatefulComponent","setup","setupContext","resolvedResult","finishComponentSetup","compile","skipOptions","template","isCustomElement","compilerOptions","delimiters","componentCompilerOptions","finalCompilerOptions","attrsProxyHandlers","includeInferred","computed$1","propsOrChildren","svgNS","mathmlNS","doc","templateContainer","nodeOps","tag","is","selector","before","wrapper","TRANSITION","ANIMATION","vtcKey","Transition","resolveTransitionProps","DOMTransitionPropsValidators","TransitionPropsValidators","h2","hasExplicitCallback","baseProps","duration","enterFromClass","enterActiveClass","enterToClass","appearFromClass","appearActiveClass","appearToClass","leaveFromClass","leaveActiveClass","leaveToClass","durations","normalizeDuration","enterDuration","leaveDuration","finishEnter","isAppear","removeTransitionClass","finishLeave","makeEnterHook","nextFrame","addTransitionClass","whenTransitionEnds","forceReflow","NumberOf","cls","_vtc","endId","expectedType","explicitTimeout","resolveIfNotStale","propCount","getTransitionInfo","endEvent","ended","onEnd","styles","getStyleProperties","transitionDelays","transitionDurations","transitionTimeout","getTimeout","animationDelays","animationDurations","animationTimeout","hasTransform","delays","d","toMs","patchClass","isSVG","transitionClasses","vShowOriginalDisplay","vShowHidden","vShow","setDisplay","CSS_VAR_TEXT","useCssVars","updateTeleports","vars","setVarsOnNode","setVars","setVarsOnVNode","ob","displayRE","patchStyle","isCssString","hasControlledDisplay","prevStyle","setStyle","cssVarText","importantRE","prefixed","autoPrefix","prefixes","prefixCache","rawName","xlinkNS","patchAttr","isBoolean","patchDOMProp","needRemove","addEventListener","removeEventListener","veiKey","patchEvent","prevValue","nextValue","invokers","existingInvoker","parseName","invoker","createInvoker","optionsModifierRE","cachedNow","getNow","initialValue","patchStopImmediatePropagation","originalStop","isNativeOn","patchProp","shouldSetAsProp","positionMap","newPositionMap","moveCbKey","TransitionGroupImpl","moveClass","hasCSSTransform","callPendingCbs","recordPosition","movedChildren","applyTranslation","cssTransitionProps","removeMode","TransitionGroup","oldPos","newPos","dx","dy","clone","getModelAssigner","onCompositionStart","onCompositionEnd","assignKey","vModelText","lazy","castToNumber","domValue","elValue","vModelCheckbox","modelValue","elementValue","getValue","checked","assign","found","filtered","getCheckboxValue","setChecked","vModelRadio","vModelSelect","isSetModel","selectedVal","setSelected","_binding","isMultiple","isArrayValue","option","optionValue","optionType","vModelDynamic","callModelHook","resolveDynamicModel","tagName","systemModifiers","modifierGuards","withModifiers","cacheKey","guard","rendererOptions","renderer","ensureRenderer","createApp","mount","containerOrSelector","normalizeContainer","resolveRootNamespace","inBrowser","makeSymbol","shareable","generateFormatCacheKey","locale","friendlyJSONstringify","json","isNumber","isRegExp","isEmptyObject","escapeHtml","rawText","proto","join","items","separator","incrementer","code","warn","msg","isNotObjectOrIsArray","deepCopy","src","des","stack","createPosition","line","column","offset","createLocation","RE_ARGS","format","message","match","identifier","CompileWarnCodes","warnMessages","createCompileWarn","loc","CompileErrorCodes","errorMessages","createCompileError","domain","messages","defaultOnError","CHAR_SP","CHAR_CR","CHAR_LF","CHAR_LS","CHAR_PS","createScanner","_buf","_index","_line","_column","_peekOffset","isCRLF","isLF","isPS","isLS","isLineEnd","peekOffset","charAt","currentChar","currentPeek","peek","resetPeek","skipToPeek","EOF","DOT","LITERAL_DELIMITER","ERROR_DOMAIN$3","createTokenizer","location","_scnr","currentOffset","currentPosition","_initLoc","_initOffset","_context","emitError","pos","getToken","token","getEndToken","eat","scnr","ch","peekSpaces","buf","skipSpaces","isIdentifierStart","cc","isNumberStart","isNamedIdentifierStart","currentType","isListIdentifierStart","isLiteralStart","isLinkedDotStart","isLinkedModifierStart","isLinkedDelimiterStart","isLinkedReferStart","isTextStart","isPluralStart","detectModuloStart","spaces","hasSpace","detectModulo","takeChar","isIdentifier","takeIdentifierChar","isNamedIdentifier","takeNamedIdentifierChar","isDigit","takeDigit","isHexDigit","takeHexDigit","getDigits","num","readModulo","readText","readNamedIdentifier","readListIdentifier","isLiteral","readLiteral","literal","readEscapeSequence","readUnicodeEscapeSequence","unicode","digits","sequence","isInvalidIdentifier","readInvalidIdentifier","identifiers","readLinkedModifier","readLinkedRefer","readPlural","plural","readTokenInPlaceholder","readTokenInLinked","validNamedIdentifier","validListIdentifier","validLiteral","readToken","isModulo","nextToken","startLoc","endLoc","ERROR_DOMAIN$2","KNOWN_ESCAPES","fromEscapeSequence","codePoint4","codePoint6","codePoint","createParser","onWarn","tokenzer","emitWarn","startNode","endNode","parseText","tokenizer","parseList","parseNamed","modulo","parseLiteral","parseLinkedModifier","getTokenCaption","parseLinkedKey","parseLinked","linkedNode","parsed","nextContext","emptyLinkedKeyNode","parseMessage","startOffset","endOffset","parsePlural","msgNode","hasEmptyMessage","parseResource","parse","createTransformer","ast","traverseNodes","nodes","transformer","traverseNode","transform","optimize","body","optimizeMessageNode","ERROR_DOMAIN$1","minify","resource","cases","valueNode","linked","list","named","ERROR_DOMAIN","createCodeGenerator","sourceMap","filename","breakLineCode","_needIndent","push","_newline","withBreakLine","_breakLineCode","indent","withNewLine","level","deindent","newline","generateLinkedNode","generator","helper","generateNode","generateMessageNode","needIndent","length","generatePluralNode","generateResource","generate","helpers","map","baseCompile","assignedOptions","jit","enalbeMinify","enambeOptimize","initFeatureFlags","pathStateMachine","literalValueRE","exp","stripQuotes","getPathCharType","formatSubPath","trimmed","subPathDepth","newChar","action","typeMap","actions","maybeUnescapeQuote","nextChar","resolveWithKeyValue","resolveValue","hit","DEFAULT_MODIFIER","DEFAULT_MESSAGE","DEFAULT_MESSAGE_DATA_TYPE","DEFAULT_NORMALIZE","DEFAULT_INTERPOLATE","pluralDefault","choice","choicesLength","getPluralIndex","normalizeNamed","pluralIndex","createMessageContext","pluralRule","orgPluralRule","_list","_named","_modifier","normalize","interpolate","arg1","arg2","modifier","devtools","setDevToolsHook","initI18nDevTools","i18n","meta","translateDevTools","createDevToolsHook","payloads","code$1","inc$1","CoreWarnCodes","inc","CoreErrorCodes","createCoreError","getLocale","resolveLocale","_resolveLocale","fallbackWithSimple","fallbackWithLocaleChain","startLocale","DEFAULT_LOCALE","chain","appendBlockToChain","defaults","blocks","follow","appendLocaleToChain","tokens","appendItemToChain","VERSION","NOT_REOSLVED","MISSING_RESOLVE_VALUE","getDefaultLinkedModifiers","_compiler","registerMessageCompiler","compiler","_resolver","registerMessageResolver","resolver","_fallbacker","registerLocaleFallbacker","fallbacker","_additionalMeta","setAdditionalMeta","getAdditionalMeta","_fallbackContext","setFallbackContext","getFallbackContext","_cid","createCoreContext","_locale","fallbackLocale","datetimeFormats","numberFormats","pluralRules","missing","missingWarn","fallbackWarn","fallbackFormat","unresolving","postTranslation","processor","warnHtmlMessage","escapeParameter","messageCompiler","messageResolver","localeFallbacker","fallbackContext","internalOptions","__datetimeFormatters","__numberFormatters","__meta","handleMissing","updateFallbackLocale","isAlmostSameLocale","compareLocale","isImplicitFallback","targetLocale","locales","formatParts","formatMessageParts","_static","acm","formatMessagePart","linkedKey","linkedModifier","defaultOnCacheKey","compileCache","isMessageAST","detectError","baseCompile$1","compileToFunction","NOOP_MESSAGE_FUNCTION","isMessageFunction","translate","parseTranslateArgs","resolvedMessage","defaultMsgOrKey","enableDefaultMsg","escapeParams","formatScope","resolveMessageFormat","cacheBaseKey","occurred","compileMessageFormat","ctxOptions","getMessageContextOptions","msgContext","messaged","evaluateMessage","missingRet","getCompileContext","msgCtx","arg3","datetime","overrides","parseDateTimeArgs","part","datetimeFormat","formatter","DATETIME_FORMAT_OPTIONS_KEYS","arg4","matches","dateTime","clearDateTimeFormat","parseNumberArgs","numberFormat","NUMBER_FORMAT_OPTIONS_KEYS","clearNumberFormat","I18nErrorCodes","createI18nError","TranslateVNodeSymbol","DatetimePartsSymbol","NumberPartsSymbol","SetPluralRulesSymbol","InejctWithOptionSymbol","DisposeSymbol","handleFlatJson","subKeys","lastIndex","currentObj","hasStringValue","getLocaleMessages","__i18n","flatJson","custom","getComponentOptions","adjustI18nResources","gl","componentOptions","createTextNode","DEVTOOLS_META","NOOP_RETURN_ARRAY","NOOP_RETURN_FALSE","composerID","defineCoreMissingHandler","getMetaInfo","createComposer","VueI18nLegacy","__root","__injectWithOption","_isGlobal","_ref","translateExistCompatible","_inheritLocale","_fallbackLocale","_messages","_datetimeFormats","_numberFormats","_missingWarn","_fallbackWarn","_fallbackRoot","_fallbackFormat","_missing","_runtimeMissing","_postTranslation","_warnHtmlMessage","_escapeParameter","_modifiers","_pluralRules","trackReactivityValues","getPostTranslationHandler","setPostTranslationHandler","getMissingHandler","setMissingHandler","wrapWithDeps","argumentParser","warnType","fallbackSuccess","fallbackFail","successCondition","rt","translateVNode","numberParts","datetimeParts","setPluralRules","rules","te","getLocaleMessage","resolveMessages","targetLocaleMessages","messageValue","tm","setLocaleMessage","_message","mergeLocaleMessage","getDateTimeFormat","setDateTimeFormat","mergeDateTimeFormat","getNumberFormat","setNumberFormat","mergeNumberFormat","composer","convertComposerOptions","fallbackRoot","pluralizationRules","inheritLocale","sharedMessages","createVueI18n","__extender","vueI18n","baseFormatProps","getInterpolateArg","getFragmentableTag","TranslationImpl","useI18n","assignedAttrs","Translation","renderFormatter","slotKeys","partFormatter","parts","NumberFormatImpl","NumberFormat","DatetimeFormatImpl","DatetimeFormat","getComposer$2","i18nInternal","vTDirective","_process","parsedValue","parseValue","makeParams","textContent","apply","pluginOptions","useI18nComponentName","defineMixin","vuei18n","optionsI18n","mergeToGlobal","_vueI18n","I18nInjectionKey","createI18n","__legacyMode","__globalInjection","__allowComposition","__instances","globalScope","__global","createGlobal","symbol","__getInstance","__setInstance","__deleteInstance","opts","globalReleaseHandler","injectGlobalFields","unmountApp","getI18nInstance","getGlobalComposer","getScope","useI18nForLegacy","getComposer","composerOptions","setupLifeCycle","legacyMode","useComponent","getParentComponentInstance","_composer","dispose","isLocalScope","warpWithDeps","globalExportProps","globalExportMethods","desc","LANG","JOURNEY_NAME","JOURNEY_STEP_GROUP","JOURNEY_STEP_NAME","JOURNEY_STEP_TYPE","DRAWER_CATEGORY","CONTACT_CATEGORY","orderedBootcampSkills","PAUSE_POPUP_DELAY","PAUSE_POPUP_CANCEL_DELAY","ONBOARDING_TAG","COACHES","COACHES_PID","COACHES_CALENDLY_BY_TAG","VR_CALENDLY_BY_TAG","MEETING_NAME","SKILL_GAME_MATCHING","bind","toString","getPrototypeOf","kindOf","thing","kindOfTest","typeOfTest","isUndefined","isBuffer","isArrayBuffer","isArrayBufferView","prototype","isFile","isBlob","isFileList","isStream","isFormData","kind","isURLSearchParams","isReadableStream","isRequest","isResponse","isHeaders","forEach","allOwnKeys","findKey","_global","isContextDefined","merge","caseless","assignValue","targetKey","stripBOM","inherits","constructor","superConstructor","descriptors","toFlatObject","sourceObj","destObj","filter","propFilter","endsWith","searchString","position","toArray","isTypedArray","TypedArray","forEachEntry","iterator","pair","matchAll","regExp","isHTMLForm","toCamelCase","p1","p2","reduceDescriptors","reducer","reducedDescriptors","freezeMethods","toObjectSet","arrayOrString","delimiter","define","noop","toFiniteNumber","ALPHA","DIGIT","ALPHABET","generateString","alphabet","isSpecCompliantForm","toJSONObject","visit","reducedValue","isAsyncFn","isThenable","utils$1","AxiosError","config","request","response","utils","customProps","axiosError","httpAdapter","isVisitable","removeBrackets","renderKey","dots","isFlatArray","predicates","toFormData","formData","metaTokens","visitor","defaultVisitor","indexes","useBlob","convertValue","exposedHelpers","build","encode","charMap","AxiosURLSearchParams","params","encoder","_encode","buildURL","url","serializeFn","serializedParams","hashmarkIndex","InterceptorManager","fulfilled","rejected","transitionalDefaults","URLSearchParams$1","FormData$1","Blob$1","platform$1","URLSearchParams","FormData","Blob","hasBrowserEnv","hasStandardBrowserEnv","product","hasStandardBrowserWebWorkerEnv","origin","platform","toURLEncodedForm","parsePropPath","arrayToObject","formDataToJSON","buildPath","isNumericKey","isLast","stringifySafely","parser","headers","contentType","hasJSONContentType","isObjectPayload","_FormData","transitional","forcedJSONParsing","JSONRequested","strictJSONParsing","status","ignoreDuplicateOf","parseHeaders","rawHeaders","$internals","normalizeHeader","header","normalizeValue","parseTokens","tokensRE","isValidHeaderName","matchHeaderValue","isHeaderNameFilter","formatHeader","w","char","buildAccessors","accessorName","methodName","AxiosHeaders","valueOrRewrite","rewrite","setHeader","_value","_header","_rewrite","lHeader","setHeaders","matcher","deleted","deleteHeader","targets","asStrings","first","accessors","defineAccessor","mapped","headerValue","transformData","isCancel","CanceledError","settle","validateStatus","parseProtocol","speedometer","samplesCount","min","bytes","timestamps","head","tail","firstSampleTS","chunkLength","now","startedAt","bytesCount","passed","throttle","freq","timestamp","threshold","timer","force","progressEventReducer","listener","isDownloadStream","bytesNotified","_speedometer","total","progressBytes","rate","inRange","isURLSameOrigin","msie","urlParsingNode","originURL","resolveURL","href","requestURL","cookies","expires","secure","cookie","isAbsoluteURL","combineURLs","baseURL","relativeURL","buildFullPath","requestedURL","headersToObject","mergeConfig","config1","config2","getMergedValue","mergeDeepProperties","valueFromConfig2","defaultToConfig2","mergeDirectKeys","mergeMap","configValue","resolveConfig","newConfig","withXSRFToken","xsrfHeaderName","xsrfCookieName","auth","xsrfValue","isXHRAdapterSupported","xhrAdapter","_config","requestData","requestHeaders","responseType","onCanceled","onloadend","responseHeaders","timeoutErrorMessage","cancel","protocol","composeSignals","signals","controller","aborted","onabort","unsubscribe","signal","streamChunk","chunk","chunkSize","readBytes","iterable","trackStream","stream","onProgress","onFinish","reason","fetchProgressDecorator","lengthComputable","isFetchSupported","isReadableStreamSupported","encodeText","supportsRequestStream","duplexAccessed","hasContentType","DEFAULT_CHUNK_SIZE","supportsResponseStream","resolvers","getBodyLength","resolveBodyLength","fetchAdapter","cancelToken","onDownloadProgress","onUploadProgress","withCredentials","fetchOptions","composedSignal","stopTimeout","finished","requestContentLength","_request","contentTypeHeader","isStreamResponse","responseContentLength","responseData","knownAdapters","renderReason","isResolvedHandle","adapter","adapters","nameOrAdapter","rejectedReasons","reasons","throwIfCancellationRequested","dispatchRequest","validators","deprecatedWarnings","validator","formatMessage","assertOptions","schema","allowUnknown","Axios","instanceConfig","configOrUrl","dummy","paramsSerializer","contextHeaders","requestInterceptorChain","synchronousRequestInterceptors","interceptor","responseInterceptorChain","promise","onFulfilled","onRejected","fullPath","generateHTTPMethod","isForm","CancelToken","executor","resolvePromise","onfulfilled","_resolve","spread","isAxiosError","payload","HttpStatusCode","createInstance","defaultConfig","axios","promises","isBrowser","isESModule","applyToParams","newParams","HASH_RE","AMPERSAND_RE","SLASH_RE","EQUAL_RE","IM_RE","PLUS_RE","ENC_BRACKET_OPEN_RE","ENC_BRACKET_CLOSE_RE","ENC_CARET_RE","ENC_BACKTICK_RE","ENC_CURLY_OPEN_RE","ENC_PIPE_RE","ENC_CURLY_CLOSE_RE","ENC_SPACE_RE","commonEncode","encodeHash","encodeQueryValue","encodeQueryKey","encodePath","encodeParam","decode","TRAILING_SLASH_RE","removeTrailingSlash","parseURL","parseQuery","currentLocation","query","hash","hashPos","searchPos","resolveRelativePath","stringifyURL","stringifyQuery","stripBase","pathname","isSameRouteLocation","aLastIndex","bLastIndex","isSameRouteRecord","isSameRouteLocationParams","isSameRouteLocationParamsValue","isEquivalentArray","fromSegments","toSegments","lastToSegment","toPosition","segment","NavigationType","NavigationDirection","normalizeBase","baseEl","BEFORE_HASH_RE","createHref","getElementPosition","docRect","elRect","computeScrollPosition","scrollToPosition","scrollToOptions","positionEl","isIdSelector","getScrollKey","delta","scrollPositions","saveScrollPosition","scrollPosition","getSavedScrollPosition","scroll","createBaseLocation","createCurrentLocation","search","slicePos","pathFromHash","useHistoryListeners","historyState","replace","listeners","teardowns","pauseState","popStateHandler","fromState","pauseListeners","listen","teardown","beforeUnloadListener","history","destroy","buildState","back","forward","replaced","computeScroll","useHistoryStateNavigation","changeLocation","hashIndex","currentState","createWebHistory","historyNavigation","historyListeners","go","triggerListeners","routerHistory","isRouteLocation","route","isRouteName","START_LOCATION_NORMALIZED","NavigationFailureSymbol","NavigationFailureType","createRouterError","isNavigationFailure","BASE_PARAM_PATTERN","BASE_PATH_PARSER_OPTIONS","REGEX_CHARS_RE","tokensToParser","score","pattern","segmentScores","tokenIndex","subSegmentScore","repeatable","optional","regexp","re","subPattern","stringify","avoidDuplicatedSlash","param","compareScoreArray","comparePathParserScore","aScore","bScore","isLastScoreNegative","ROOT_TOKEN","VALID_PARAM_RE","tokenizePath","crash","buffer","previousState","finalizeSegment","customRe","consumeBuffer","addCharToBuffer","createRouteRecordMatcher","record","createRouterMatcher","routes","globalOptions","matchers","matcherMap","getRecordMatcher","addRoute","originalRecord","isRootAdd","mainNormalizedRecord","normalizeRouteRecord","normalizedRecords","aliases","alias","originalMatcher","normalizedRecord","parentPath","connectingSlash","isAliasRecord","removeRoute","insertMatcher","matcherRef","getRoutes","isRecordChildOf","paramsFromLocation","k","matched","parentMatcher","mergeMetaFields","normalizeRecordProps","propsObject","partialOptions","searchParams","searchParam","eqPos","currentValue","normalizeQuery","normalizedQuery","matchedRouteKey","viewDepthKey","routerKey","routeLocationKey","routerViewLocationKey","useCallbacks","handlers","guardToPromiseFn","runWithContext","enterCallbackArray","valid","guardReturn","guardCall","extractComponentsGuards","guardType","guards","rawComponent","isRouteComponent","componentPromise","resolvedComponent","useLink","router","currentRoute","activeRecordIndex","routeMatched","currentMatched","parentRecordPath","getOriginalPath","isActive","includesParams","isExactActive","navigate","guardEvent","RouterLinkImpl","link","elClass","getLinkClass","RouterLink","outer","inner","innerValue","outerValue","propClass","globalClass","defaultClass","RouterViewImpl","injectedRoute","routeToDisplay","injectedDepth","initialDepth","matchedRoute","matchedRouteRef","viewRef","oldInstance","oldName","currentName","ViewComponent","routePropsOption","routeProps","slotContent","RouterView","createRouter","parseQuery$1","stringifyQuery$1","beforeGuards","beforeResolveGuards","afterGuards","pendingLocation","normalizeParams","paramValue","encodeParams","decodeParams","parentOrRoute","recordMatcher","routeMatcher","hasRoute","rawLocation","locationNormalized","matcherLocation","targetParams","locationAsObject","checkCanceledNavigation","pushWithRedirect","handleRedirectRecord","lastMatched","redirect","newTargetLocation","redirectedFrom","targetLocation","shouldRedirect","toLocation","failure","handleScroll","markAsReady","triggerError","finalizeNavigation","triggerAfterEach","checkCanceledNavigationAndReject","installedApps","leavingRecords","updatingRecords","enteringRecords","extractChangingRecords","canceledNavigationCheck","runGuardQueue","beforeEnter","isPush","isFirstNavigation","removeHistoryListener","setupListeners","_from","info","readyHandlers","errorListeners","ready","isReady","scrollBehavior","started","reactiveRoute","recordFrom","recordTo","useRoute","api","signIn","signUp","signOut","confirmAccountCreation","sendConfirmMailAgain","resetPassword","changePasswordWithToken","changePasswordWithOldPassword","postCompany","workspace_id","getCompanyList","postJourney","person_public_id","getJourneyList","postContractSignature","contract_id","postPerson","getMe","patchMe","getPersonList","getJourneyStep","journey_public_id","step_name","putJourneyStep","getPDF","report_name","report_variant","contactUs","getSynthesis","public_id","postLegalSignature","sessionStatus","getMeetingConfiguration","meeting_name","putLaunchOffboarding","putAscentOnboarding","putImpactOnboarding","sdk","urlToken","new_password","SESSION","company_name","journey_name","steps","category","getStepInfo","assertNever","isPersonStep","step","getStepTime","JourneyStep","journey","__publicField","dateFromIsoString","forceReload","_c","_b","stepName","extractStepsData","journey_schema_steps","Journey","pk","updatedInstance","createdInstance","group","numberOfFinishedSteps","numberOfSteps","numberOfOutsideFinishedSteps","numberOfOutsideSteps","mem","inherited","_imports_0$1","img_test_bart","img_test_cogstroop","img_test_emoquotation","img_test_emostroop","img_test_focus","img_test_oddball","img_test_rme","img_test_ultimatum","Survey","card","originalStep","question","itemIndex","surveyFinished","meta_data","questionID","answer","SurveyItem","survey","progress","initialDependency","operand","SurveyItemDropdown","asDefinedValue","condition","SurveyItemInfo","SurveyItemInput","SurveyItemMultipleChoices","SurveyItemMultipleOneChoice","SurveyItemMultipleSlider","colIndex","SurveyItemOneChoice","__vitePreload","OrderFavoriteItem","points","OrderFavoriteChoice","OrderFavoriteInput","orderFavoriteItemFactory","SurveyItemOrderFavorite","temp","PointDistributionItem","SurveyItemPointDistribution","SurveyItemScale","SurveyItemSlider","SURVEY_ITEM_CATEGORY","surveyItemFactory","getSurvey","__variableDynamicImportRuntimeHelper","JourneyStructure","drawer","title","JourneyInfo","JourneyDrawer","JourneyCard","SurveyCard","img_survey","GameCard","getOthOrOhls","isCompatibleVersion","currentVersion","expectedVersion","currentMajor","currentMinor","currentPatch","expectedMajor","expectedMinor","expectedPatch","LOCALE_CATEGORIES","isInDevelopmentMode","isInLocalDevelopmentMode","PREFIX","DummyJourney_0_0_0","dummy_journey_structure_factory","Person","publicId","nextJourneyIndex","prevJourneyIndex","onboardingName","nbSteps","onboarding_data_to_update","stepNum","coach","f","module","_$breadcrumbTypes_8","_$reduce_17","accum","_$filter_12","_$includes_13","x","_$isArray_14","_hasDontEnumBug","_dontEnums","_$keys_15","_$intRange_24","max","_$listOfFunctions_25","_$stringWithLength_26","_$config_5","defaultErrorTypes","providedKeys","defaultKeys","maybeType","feature","_$assign_11","_$map_16","_extends","_$config_1","getPrefixedConsole","logger","consoleLog","consoleMethod","Breadcrumb","metadata","_proto","_$Breadcrumb_3","_$stackframe_34","factory","_isNumber","_capitalize","_getter","booleanProps","numericProps","stringProps","arrayProps","StackFrame","functionName","fileName","lineNumber","columnNumber","_$errorStackParser_31","FIREFOX_SAFARI_STACK_REGEXP","CHROME_IE_STACK_REGEXP","SAFARI_NATIVE_CODE_REGEXP","urlLike","sanitizedLine","locationParts","functionNameRegex","lineRE","lines","functionCall","argsRaw","_$errorStackParser_10","_$safeJsonStringify_30","space","redactedKeys","redactedPaths","prepareObjForSerialization","MAX_DEPTH","MAX_EDGES","MIN_PRESERVED_DEPTH","REPLACEMENT_NODE","isError","o","throwsMessage","find","haystack","needle","isDescendent","paths","shouldRedact","patterns","__isArray_30","safelyGetProp","edges","edgesExceeded","fResult","er","eResult","aResult","existingFeatures","existingFeatureKeys","variant","existingIndex","newFeatures","toEventApi","featureFlags","features","featuresIndex","_$featureFlagDelegate_18","_$hasStack_19","_$isError_32","__isError_32","_$iserror_20","__add_22","section","keyOrObj","maybeVal","_updates","updates","__clear_22","_$metadataDelegate_22","_$stackGenerator_33","maxStackSize","curr","___extends_6","Event","errorClass","errorMessage","stacktrace","handledState","originalError","defaultHandledState","createBugsnagError","traceId","spanId","email","formatStackframe","frame","normaliseFunctionName","ensureString","getCauseStack","errorFramesToSkip","backtraceFramesToSkip","maybeError","tolerateNonErrors","_normaliseError","normaliseError","internalFrames","makeSerialisable","_event$errors","causes","normalisedCauses","cause","_normaliseError2","createAndLogInputError","verb","hasNecessaryFields","_$Event_6","_$asyncEvery_7","_$callbackRunner_9","callbacks","onCallbackError","runMaybeAsyncCallback","_$syncCallbackRunner_23","callbackArg","callbackType","ignore","cbs","_$pad_29","env","globalCount","mimeTypesLength","clientId","_$fingerprint_28","blockSize","discreteValues","randomBlock","safeCounter","cuid","letter","counter","print","random","_$cuid_27","Session","_$Session_35","__add_4","__clear_4","__merge_4","Client","configuration","internalPlugins","notifier","_this","pl","notify","_reduce","errors","generateConfigErrorMessage","session","front","crumb","types","postReportCallback","_this2","originalSeverity","shouldSend","rawInput","_$Client_4","_$jsonPayload_21","EVENT_REDACTION_PATHS","_$delivery_36","client","win","getApiUrl","req","endpoint","isoDate","matchPageProtocol","pageProtocol","_$delivery_37","appStart","_$app_38","_$context_39","_$pad_43","__env_42","__globalCount_42","__prop_42","__mimeTypesLength_42","__clientId_42","_$fingerprint_42","__c_41","__blockSize_41","__base_41","__discreteValues_41","__randomBlock_41","__safeCounter_41","__cuid_41","_$cuid_41","BUGSNAG_ANONYMOUS_ID_KEY","getDeviceId","storage","_$device_40","nav","device","setDefaultUserId","eventOrSession","user","_$request_44","_$session_45","sessionDelegate","sessionClient","_$clientIp_46","_$consoleBreadcrumbs_47","isDev","CONSOLE_LOG_METHODS","original","_len","stringified","MAX_LINE_LENGTH","MAX_SCRIPT_LENGTH","_$inlineScriptContent_48","originalLocation","html","isOldIe","DOMContentLoaded","getHtml","_lastScript","updateLastScript","script","getCurrentScript","scripts","addSurroundingCode","htmlLines","zeroBasedLine","cleanUrl","currentScript","_map","__proxy","__traceOriginalScript","_setTimeout","eventTargetCallbackAccessor","callbackAccessor","alsoCallOriginal","cba","host","replacement","isEventHandlerObj","_$interactionBreadcrumbs_49","targetText","targetSelector","getNodeText","getNodeSelector","_$navigationBreadcrumbs_50","drop","relativeLocation","getCurrentState","wrapHistoryFn","stateChangeToMetadata","currentPath","orig","BREADCRUMB_TYPE","_$networkBreadcrumbs_51","_ignoredUrls","ignoredUrls","monkeyPatchXMLHttpRequest","monkeyPatchFetch","nativeOpen","requestSetupKey","handleXHRError","handleXHRLoad","oldFetch","_arguments","urlOrRequest","handleFetchSuccess","handleFetchError","_$throttle_52","_$stripQueryString_53","allFrames","strip","_$onerror_54","onerror","messageOrEvent","lineNo","charNo","decorateStack","prevOnError","culprit","isActualNumber","_$unhandledRejection_55","evt","isBluebird","fixBluebirdStacktrace","_event$addMetadata","_$notifier_2","__schema_2","Bugsnag","bugsnag","getUserDefaultLang","cartography_route","journeyId","experience_route","getCartographyRouteLocationRaw","getCartographyRouteParams","cartography_end_route","getCartographyEndRouteParams","getCartographyEndRouteLocationRaw","survey_route","getSurveyRouteParams","getSurveyRouteLocationRaw","game_route","game_legacy_route","getGameRouteParams","getGameRouteLocationRaw","journeys","reports_route","getReportRouteParams","getReportRouteLocationRaw","customAsyncComponent","fail","sign_in_route","sign_up_route","after_sign_up_route","confirm_account_route","reset_password_route","reset_password_form_route","new_account_system_route","legal_terms_route","terms_of_service_route","account_profile_route","account_legal_terms_route","account_terms_of_service_route","account_route","contact_route","program_route","onboarding_legacy_route","getLegacyOnboardingRouteLocation","onboarding_route","getInitialOnboardingRouteLocation","getLaunchOnboardingRouteLocation","getAscentOnboardingRouteLocation","getImpactOnboardingRouteLocation","tools_route","popupManager","usePopup","popupOptions","popup","Popup","closePopup","popupIndex","PopupPosition","BorderRadius","Spacing","Shadow","FlexDirection","Size","Align","Justify","AsidePosition","__props","closeThatPopup","_imports_0","AbstractForm","field","FormField","updateErrors","BilanVR_5_0_0","BilanVR_4_0_0","BilanVR_3_0_0","BilanVR_2_0_1","bilan_vr_structure_factory","BilanVR_1_3_and_below","Leadership_7_0_0","Leadership_6_0_0","Leadership_5_0_0","Leadership_4_0_1","leadership_structure_factory","Leadership_3_and_below","ascent_online_structure_factory","img_vr_quest","BilanVRQuest_1_0_0","bilan_vr_quest_structure_factory","ascent_vr_structure_factory","Resilience_2_0_0","Resilience_1_3_2","resilience_structure_factory","Resilience_3_0_0","Resilience_1_2_and_below","ignition_online_structure_factory","ignition_vr_structure_factory","img_vr_flash","BilanVRFlash_3_0_0","bilan_vr_flash_structure_factory","Tingari_1_3_0","drawerResilience","drawerTingari","drawers","Tingari_1_2_1","structure","tingari_structure_factory","Tingari_1_2_and_below","Bootcamp_online_1_0_0","drawerEmo","drawerCog","drawerSoc","bootcamp_online_structure_factory","FETA_1_0_0","feta_structure_factory","journeyStructureFactory","journeyImpactStructureFactory","journeyStructure","getJourneyStructure","impactStepsFlat","currentDrawer","currentCard","impactStructure","indexDrawer","indexCard","drawerIteration","cardIteration","STORED_STRUCTURES","STORED_IMPACT_STRUCTURES","getJourneyImpactStructure","getStructure","resetStructures","ChangeLangForm","person","reloadLocalesForLang","IconName","IconFolder","IconSize","odsIconPath","currentIcon","ButtonType","ButtonColor","ButtonSize","__emit","clickButton","blurButton","mouseover","mouseout","iconClass","PillTheme","PillSize","iconSize","messageIcon","input","__temp","__restore","_withAsyncContext","loadLocales","form","getJourneyWithActiveStep","me","isFetaLaunchUnlocked","isFetaAscentUnlocked","isFetaImpactUnlocked","onboardingRedirection","onboardingRequired","journeyWithInitialOnboarding","journeyWithIgnitionOffboarding","journeyWithLaunchOnboarding","journeyWithLaunchOffboarding","journeyWithAscentOnboarding","journeyWithImpactOnboarding","popupLang","isExactActiveRoute","routeName","isActiveRoute","router$1","deepmerge","objs","mergeObj","dateString","ms","NAVIGATOR_LANG","loadedLocales","frNotFoundLocales","frTimedOutLocales","enNotFoundLocales","enTimedOutLocales","esNotFoundLocales","esTimedOutLocales","SUPPORT_LOCALES","SUPPORT_CATEGORIES","FORCE_PREFIX_CATEGORIES","localeCache","getCategoryMessages","lang","prefixedMessages","queryLocales","categories","computedUserLang","setLocales","watchLocales","localesToLoad","LogoColor","LogoType","logoSVG","logoSVGnoText","logoCode","toggle","InputType","focusInput","blurInput","getValidatorIcon","theme","_sfc_render","_ctx","_cache","_openBlock","_createElementBlock","_hoisted_1","RouterLinkComponent","linkAttributes","componentType","ODSComponents","odsBox","odsButton","odsCard","odsCheckbox","odsFieldMessage","odsIcon","odsInput","odsLogo","odsNavigation","odsPill","odsPopup","odsSelect","odsTextarea","moreNavigationShown","toggleMoreNavigation","hideMoreNavigation","showMoreNavigation","showVersion","showDebug","showLocaleKeys","__defProp","__getOwnPropSymbols","__hasOwnProp","__propIsEnum","__defNormalProp","__spreadValues","isNonEmptyString","isJSX","hasProp","isTouchEvent","isToastComponent","isToastContent","isVueComponent","isDOMRect","propKey","getX","getY","removeElement","getVueComponentFromObj","normalizeToastComponent","EventBus","eventType","isEventBusInterface","TYPE","TYPE2","POSITION","POSITION2","EVENTS","EVENTS2","VT_NAMESPACE","COMMON","ICON","CLOSE_BUTTON","PROGRESS_BAR","CORE_TOAST","TOAST","CONTAINER","toast","toasts","propValidators_default","VtProgressBar_default","defineComponent2","_normalizeStyle","_normalizeClass","VtProgressBar_default2","VtCloseButton_default","defineComponent3","classes","_createTextVNode","_openBlock2","_createBlock","_resolveDynamicComponent","_mergeProps","_withCtx","VtCloseButton_default2","VtSuccessIcon_default","_hoisted_12","_hoisted_2","_createElementVNode","_hoisted_3","render3","_openBlock3","_createElementBlock2","VtSuccessIcon_default2","VtInfoIcon_default","_hoisted_13","_hoisted_22","_createElementVNode2","_hoisted_32","render4","_openBlock4","_createElementBlock3","VtInfoIcon_default2","VtWarningIcon_default","_hoisted_14","_hoisted_23","_createElementVNode3","_hoisted_33","render5","_openBlock5","_createElementBlock4","VtWarningIcon_default2","VtErrorIcon_default","_hoisted_15","_hoisted_24","_createElementVNode4","_hoisted_34","render6","_openBlock6","_createElementBlock5","VtErrorIcon_default2","VtIcon_default","defineComponent4","empty","render7","_openBlock7","_createBlock2","_resolveDynamicComponent2","_normalizeClass2","_withCtx2","_createTextVNode2","_toDisplayString","VtIcon_default2","VtToast_default","defineComponent5","element","_hoisted_16","render8","_component_Icon","_resolveComponent","_component_CloseButton","_component_ProgressBar","_openBlock8","_createElementBlock6","_normalizeClass3","_normalizeStyle2","_createBlock3","_createCommentVNode","_createElementVNode5","_Fragment","_createTextVNode3","_toDisplayString2","_resolveDynamicComponent3","_mergeProps2","_toHandlers","_withModifiers","VtToast_default2","VtTransition_default","defineComponent6","render9","_openBlock9","_createBlock4","_TransitionGroup","_withCtx3","_renderSlot","VtTransition_default2","VtToastContainer_default","defineComponent7","events","create","render10","_component_Toast","_resolveComponent2","_component_VtTransition","_openBlock10","_createElementBlock7","_Fragment2","_renderList","_normalizeClass4","_withCtx4","_createBlock5","_mergeProps3","VtToastContainer_default2","buildInterface","mountContainer","baseApp","updateToast","createMockToastInterface","createToastInterface","optionsOrEventBus","toastInjectionKey","globalEventBus","VueToastificationPlugin","App","inter","useToast","eventBus","src_default","generatedAttribute","mouseDownEvent","mouseUpEvent","mouseLeaveEvent","mouseOutEvent","mouseMoveEvent","touchStartEvent","touchEndEvent","touchMoveEvent","touchCancelEvent","resizeEvent","visibilityChangeEvent","errorPrefix","percentDenominator","halfRandom","millisecondsToSeconds","MoveDirection","squareExp","inverseFactorNumerator","Vector3d","xOrCoords","y","z","angle","coords3d","v3d","Vector","_random","_animationLoop","idx","easingFunctions","double","doublePI","addEasing","easing","getEasing","getRandom","clamp","animate","cancelAnimation","handle","mix","comp1","comp2","weight1","weight2","randomInRange","getRangeMax","minOffset","getRangeMin","getRangeValue","setRangeValue","getDistances","pointA","pointB","getDistance","degToRad","degrees","getParticleDirectionAngle","direction","center","half","quarter","threeQuarter","getParticleBaseVelocity","baseVelocity","collisionVelocity","v1","v2","m1","m2","calcPositionOrRandomFromSize","calcPositionOrRandomFromSizeRanged","calcExactPositionOrRandomFromSize","parseAlpha","AnimationMode","AnimationStatus","DestroyType","OutModeDirection","PixelMode","StartValueType","_logger","getLogger","rectSideBounce","pSide","pOtherSide","rectSide","rectOtherSide","velocity","factor","minVelocity","checkSelector","selectors","executeOnSingleOrMultiple","isSsr","hasMatchMedia","safeMatchMedia","safeIntersectionObserver","safeMutationObserver","isInArray","array","loadFont","font","weight","arrayRandomIndex","itemFromArray","useIndex","isPointInside","point","radius","areBoundsInside","calculateBounds","bounds","inside","deepExtend","destination","sources","sourceIsArray","sourceDict","destDict","isDivModeEnabled","divs","findItemFromSingleOrMultiple","divModeExecute","div","divMode","singleDivModeExecute","circleBounceDataFromParticle","circleBounce","xVelocityDiff","yVelocityDiff","pos1","pos2","xDist","yDist","u1","u2","vFinal1","vFinal2","rectBounce","particle","divBounds","pPos","bounceOptions","resH","resV","itemFromSingleOrMultiple","initParticleNumericAnimationValue","pxRatio","valueRange","animationOptions","decayOffset","autoStatus","getPositionOrSize","positionOrSize","canvasSize","rest","getPosition","getSize","checkDestroy","destroyType","minValue","maxValue","updateAnimation","changeDirection","decay","AlterType","RgbIndexes","randomColorValue","midColorValue","colorManagers","addColorManager","manager","stringToRgba","shorthandRegex","hexFixed","regex","radix","rangeColorToRgb","color","colorToRgb","getRandomRgbColor","stringToRgb","rangeColorToHsl","rgb","rgbToHsl","r1","g1","b1","hslToRgb","hsl","hNormalized","sNormalized","lNormalized","rgbFactor","triple","grayscaleValue","channel","temp1","temp2","temp3","temp3Offset","sNormalizedOffset","phaseNumerator","phaseThird","red","green","blue","hslaToRgba","hsla","rgbResult","getStyleFromRgb","opacity","getStyleFromHsl","colorMix","color1","color2","size1","size2","rgb1","rgb2","getLinkColor","linkColor","sourceColor","destColor","hslColor","getLinkRandomColor","optColor","blink","consent","getHslFromAnimation","animation","getHslAnimationFromHsl","reduceFactor","resColor","setColorAnimation","colorValue","colorAnimation","defaultVelocity","defaultLoops","defaultTime","updateColorValue","range","decrease","updateColor","ranges","defaultTransform","drawLine","begin","paintBase","dimension","baseColor","paintImage","image","drawParticle","colorStyles","backgroundMask","composite","shadow","defaultAngle","rotateData","rotating","identity","shadowColor","minStrokeWidth","strokeWidth","drawData","drawShape","drawShapeAfterDraw","drawEffect","drawPlugin","drawParticlePlugin","alterHsl","setTransformValue","newFactor","canvas","important","elementStyle","Canvas","updater","zOpacity","fill","stroke","updaterTransform","fColor","sColor","cover","coverRgb","coverColor","img","trail","trailFill","factorNumerator","fillColor","observer","originalStyle","pfColor","psColor","zIndexOptions","zIndexFactorOffset","zIndexFactor","zOpacityFactor","defaultOpacity","strokeOpacity","zStrokeOpacity","obs","records","background","newSize","oldSize","needsRefresh","InteractivityDetect","manageListener","addOptions","removeOptions","EventListeners","mouseInteractivity","mousePos","onClick","mediaEvent","defaultThemes","themeName","handleResize","mouseLeaveTmpEvent","interactivityEl","canvasEl","detectType","mediaMatch","interactivity","mouse","handled","mousePosition","mouseEvent","clientRect","sourceRect","targetRect","canvasRect","touchEvent","lengthOffset","lastTouch","defaultCoordinate","touches","touch","EventType","OptionsColor","Background","BackgroundMaskCover","BackgroundMask","FullScreen","ClickEvent","DivType","DivEvent","Parallax","HoverEvent","ResizeEvent","Events","onDiv","Modes","engine","interactors","interactor","Interactivity","detectsOn","defaultPosition","ManualParticle","ResponsiveMode","Responsive","ThemeMode","ThemeDefault","Theme","AnimationOptions","RangedAnimationOptions","ColorAnimation","HslAnimation","AnimatableColor","CollisionMode","CollisionsAbsorb","CollisionsOverlap","ValueWithRandom","AnimationValueWithRandom","RangedAnimationValueWithRandom","ParticlesBounceFactor","ParticlesBounce","Collisions","Effect","MoveAngle","MoveAttract","rotateX","rotateY","MoveCenter","MoveGravity","MovePath","MoveTrailFill","MoveTrail","OutMode","OutModes","Spin","Move","outModes","OpacityAnimation","Opacity","ParticlesDensity","width","height","LimitMode","ParticlesNumberLimit","ParticlesNumber","Shape","shape","SizeAnimation","Stroke","ZIndex","ParticlesOptions","strokeToLoad","updaters","loadOptions","sourceOptionsArr","sourceOptions","loadParticlesOptions","Options","preset","detectRetina","fpsLimit","fullScreen","responsive","optResponsive","existingTheme","optTheme","defaultOptions","responsiveOptions","chosenTheme","clientDarkMode","defaultTheme","InteractorType","InteractionManager","ParticleOutType","defaultRetryCount","randomString","loadEffectData","effectOptions","reduceDuplicates","effectData","loadShapeData","shapeOptions","shapeData","fixOutMode","diameter","Particle","zIndex","tryCount","pluginPos","exactPosition","fixHorizontal","outMode","fixVertical","moveOptions","rad","radOffset","collisionsOptions","overlapOptions","rollFactor","none","backFactor","backSum","zIndexValue","minZ","defaultRadius","override","pathGenerator","shapeDrawer","overrideOptions","mainOptions","particlesOptions","effectType","shapeType","overrideEffectType","overrideShapeType","availableEffects","availableShapes","pathOptions","particles","effectDrawer","sideCountFunc","mover","_d","_e","_f","Point","RangeType","BaseRange","Circle","distPos","circleRange","rSum","dist","Rectangle","rectRange","w2","subdivideCount","QuadTree","rectangle","capacity","fixedIndex","sub","check","qTreeCapacity","defaultRemoveQuantity","qTreeRectangle","posOffset","sizeFactor","Particles","manualCount","numberOptions","densityFactor","optParticlesNumber","minLimit","optParticlesLimit","particlesNumber","particlesCount","densityOptions","defaultFactor","initializer","canAdd","zIdx","deleteCount","limitMode","limit","currentCount","countToRemove","groups","groupOptions","nb","quantity","particlesToDelete","resizeFactor","checkDelete","zArray","defaultRatio","defaultReduceFactor","Retina","ratio","moveDistance","maxDistance","guardCheck","defaultFps","initDelta","smooth","loadContainerOptions","Container","entry","clickOrTouchHandler","posRetina","clickHandler","touchStartHandler","touched","touchMoved","touchMoveHandler","touchEndHandler","minCoordinate","touchCancelHandler","mainArr","refreshTime","shapes","availablePlugins","zLayers","defaultFpsLimit","minFpsLimit","needsUpdate","newMaxWidth","EventDispatcher","getItemsFromInitializer","initializers","getDataFromUrl","generatedTrue","generatedFalse","canvasTag","getCanvasFromContainer","domContainer","existingCanvases","fullPercent","getDomContainer","Engine","refresh","interactorInitializer","moverInitializer","updaterInitializer","validType","currentOptions","oldIndex","minIndex","newItem","old","one","HslIndexes","HslColorManager","minLength","defaultAlpha","RgbColorManager","rgbColor","init","rgbColorManager","hslColorManager","ExternalInteractorBase","ParticlesInteractorBase","RotateDirection","GradientType","EasingType","tsParticles","P","moveSpeedFactor","minSpinRadius","spinFactor","applyDistance","initialPosition","dxFixed","dyFixed","hDistance","vDistance","hasHDistance","hasVDistance","vel","moveSpeed","maxSpeed","moveDrift","applyPath","gravityOptions","gravityFactor","zVelocityFactor","spin","updateFunc","maxCanvasSize","halfMaxSize","getProximitySpeedFactor","initSpin","spinOptions","spinPos","spinCenter","distance","spinAcceleration","diffFactor","defaultSizeFactor","defaultDeltaFactor","BaseMover","particleOptions","slowFactor","baseSpeed","maxSize","deltaFactor","loadBaseMover","minAngle","drawCircle","sides","maxAngle","CircleDrawer","loadCircleShape","ColorUpdater","hAnimation","sAnimation","lAnimation","loadColorUpdater","OpacityUpdater","opacityOptions","opacityAnimation","loadOpacityUpdater","boundsMin","bounceHorizontal","bounced","newVelocity","minPos","bounceVertical","BounceOutMode","DestroyOutMode","_delta","vx","vy","NoneOutMode","pRadius","minDistance","OutOutMode","circVec","newDx","newDy","warp","sizeValue","nextBounds","checkOutMode","OutOfCanvasUpdater","loadOutModesUpdater","minLoops","SizeUpdater","sizeOptions","sizeAnimation","loadSizeUpdater","loadBasic","loadEasingQuadPlugin","drawEmoji","emojiData","previousAlpha","defaultFont","EmojiDrawer","validTypes","emoji","existingData","loadEmojiShape","minFactor","minRadius","processAttract","attractRadius","area","queryCb","attractOptions","attractFactor","normVec","clickAttract","enabledCb","attract","hoverAttract","Attract","attractMode","mouseMoveStatus","hoverEnabled","hoverMode","clickEnabled","clickMode","loadExternalAttractInteraction","Attractor","halfPI","toleranceFactor","processBounce","singleSelectorBounce","bounceCb","elem","tolerance","divBounce","bounceMode","mouseBounce","Bounce","Bouncer","bounce","loadExternalBounceInteraction","BubbleBase","BubbleDiv","Bubble","ProcessBubbleType","calculateBubbleValue","particleValue","modeValue","optionsValue","bubbleMode","defaultClickTime","ratioOffset","defaultBubbleValue","minRatio","Bubbler","mouseClickPos","bubbleOptions","bubble","distMouse","timeSpent","sizeData","opacityData","pointDistance","divBubble","modeColor","bubbleColor","pColor","modeOpacity","optOpacity","pOpacity","modeSize","optSize","pSize","bubbleParam","bubbleDuration","bubbleDistance","particlesParam","pObjBubble","pObj","repulseRadius","onHover","loadExternalBubbleInteraction","ConnectLinks","Connect","gradientMin","gradientMax","defaultLinksWidth","gradient","gradStop","sourcePos","destPos","midRgb","grad","drawConnectLine","lineStyle","connectOptions","drawConnection","ls","connectMode","Connector","connect","connectModeDistance","connectModeRadius","indexOffset","distMax","xDiff","yDiff","loadExternalConnectInteraction","GrabLinks","Grab","defaultWidth","drawGrabLine","colorLine","drawGrab","lineColor","beginPos","grabMode","minOpacity","Grabber","grab","grabLineOptions","lineOpacity","opacityLine","linksOptions","loadExternalGrabInteraction","pauseMode","Pauser","loadExternalPauseInteraction","Push","pushMode","minQuantity","Pusher","pushOptions","loadExternalPushInteraction","Remove","Remover","removeNb","loadExternalRemoveInteraction","RepulseBase","RepulseDiv","Repulse","repulseMode","repulseRadiusFactor","repulseRadiusPower","squarePower","minSpeed","easingOffset","Repulser","repulseOptions","repulse","repulseDistance","vect","divRepulse","speed","easingFunc","repulseFactor","repulseOpts","hover","click","loadExternalRepulseInteraction","Slow","slowMode","Slower","slow","slowOptions","particlePos","proximityFactor","loadExternalSlowInteraction","stringStart","currentColorRegex","replaceColorSvg","imageShape","svgData","colorStyle","preFillIndex","loadImage","downloadSvgImage","replaceImageColor","imageData","svgColoredData","imageRes","svg","domUrl","errorHandler","img2","InterlaceOffsets","InterlaceSteps","ByteStream","count","slice","acc","blockString","minCount","emptySize","increment","blockData","noData","DisposalMethod","GIFDataHeaders","defaultFrame","initialTime","firstIndex","defaultLoopCount","parseColorTable","byteStream","colors","parseExtensionBlock","gif","getFrameIndex","getTransparencyIndex","packedByte","transparencyFlag","transparencyIndex","applicationExtension","parseImageBlock","avgAlpha","progressCallback","localColorTableFlag","interlacedFlag","localColorCount","getColor","minCodeSize","clearCode","readBits","bytePos","bitPos","dic","pass","pixelPos","lineIndex","exit","parseBlock","getGIFLoopAmount","extension","decodeGIF","gifURL","globalColorTableFlag","globalColorCount","backgroundColorIndex","backgroundImage","frameIndex","incrementFrameIndex","getframeIndex","drawGif","offscreenCanvas","offscreenContext","previousImageData","loadGifImage","ImageDrawer","images","replaceColor","close","Preload","ImagePreloaderPlugin","preloadOptions","preload","extLength","addLoadImageToEngine","imageFunc","loadImageShape","preloader","LifeDelay","LifeDuration","Life","noTime","infiniteValue","noLife","minCanvasSize","updateLife","life","justSpawned","widthRange","heightRange","lifeOptions","LifeUpdater","loadLifeUpdater","centerY","LineDrawer","loadLineShape","ParallaxMover","parallaxOptions","parallaxForce","canvasCenter","parallaxSmooth","centerDistance","loadParallaxMover","rotate","ax","ay","p1Factor","p2Factor","loadParticlesAttractInteraction","absorbFactor","minAbsorbFactor","updateAbsorb","r2","pixelRatio","absorb","fixBounceSpeed","resolveCollision","Collider","radius1","radius2","distP","loadParticlesCollisionsInteraction","CircleWarp","rect","circle","biggerCircle","rectSW","LinksShadow","LinksTriangle","Links","opacityOffset","getLinkDistance","optDistance","absDiffs","warpDistances","Linker","linkOpt1","linkOpt2","loadLinksInteraction","drawTriangle","p3","drawLinkLine","drawn","links","pi1","pi2","endNE","d1","yi","endSW","d2","xi","endSE","d3","drawLinkTriangle","pos3","colorTriangle","opacityTriangle","getLinkKey","ids","setLinkFrequency","dictionary","minWidth","maxFrequency","LinkInstance","p1LinksOptions","twinkle","twinkleFreq","twinkleRgb","link1","link2","triangleOptions","linksDistance","p1Links","vertices","linkFreq","vertex","retina","LinksPlugin","loadLinksPlugin","loadParticlesLinksInteraction","piDeg","sidesOffset","drawPolygon","side","sideCount","decimalSides","interiorAngleDegrees","interiorAngle","defaultSides","PolygonDrawerBase","polygon","sidesCenterFactor","yFactor","sidesFactor","PolygonDrawer","TriangleDrawer","loadGenericPolygonShape","loadTriangleShape","loadPolygonShape","RotateAnimation","Rotate","doublePIDeg","RotateUpdater","rotateOptions","rotateDirection","rotateAnimation","loadRotateUpdater","fixFactorSquared","fixFactor","drawSquare","fixedRadius","fixedDiameter","SquareDrawer","loadSquareShape","defaultInset","drawStar","inset","StarDrawer","star","loadStarShape","StrokeColorUpdater","strokeHslColor","strokeColor","loadStrokeColorUpdater","loadSlim","EmitterLife","EmitterRate","EmitterShapeReplace","EmitterShape","EmitterSize","Emitter","EmitterClickMode","defaultLifeDelay","minLifeCount","defaultSpawnDelay","defaultEmitDelay","defaultLifeCount","defaultColorAnimationFactor","setParticlesOptionsColor","EmitterInstance","emitters","initValue","colorOffset","emitFactor","defaultColorSpeed","colorSpeed","shapeGenerator","singleParticlesOptions","hslAnimation","maxValues","colorFactor","shapePosData","replaceData","Emitters","defaultIndex","idxOrName","emitter","emitterOptions","modeEmitters","emittersModeOptions","usedIndexes","emittersOptions","ePosition","EmittersPlugin","interactivityEmitters","emitterMode","shapeGeneratorss","ShapeManager","loadEmittersPlugin","require$$0","_ErrorTypeStrings","_$vue_2","vm","ErrorTypeStrings","formatComponentName","LifecycleHooks","ErrorCodes","_$vue2_3","___this_3","Vue","__formatComponentName_3","includeFile","file","classify","_$src_1","BugsnagPluginVue","globalVue","isStringWithLength","isLogger","isStringArray","isStringOrRegExpArray","isPersistedProbability","isSpanContext","isParentContext","isTime","isPlugin","isPluginArray","SpanAttributes","initialValues","attributeToJson","ResourceAttributes","releaseStage","appVersion","serviceName","sdkName","sdkVersion","attribute","NANOSECONDS_IN_MILLISECONDS","millisecondsToNanoseconds","milliseconds","validateConfig","warnings","cleanConfiguration","BatchProcessor","delivery","retryQueue","sampler","probabilityManager","span","batch","batchTime","probability","SpanEvents","time","clock","traceIdToSamplingRate","samplingRate","HOUR_IN_MILLISECONDS","spanToJson","SpanInternal","startTime","attributes","parentSpanId","endTime","samplingProbability","_samplingProbability","coreSpanOptionSchema","TracePayloadEncoder","resourceAttributeSource","spans","resourceAttributes","jsonSpans","spanCounts","existingValue","rawProbabilities","pairs","rawProbability","retryCodes","responseStateFromStatusCode","statusCode","FixedProbabilityManager","newProbability","RETRY_MILLISECONDS","ProbabilityFetcher","apiKey","PROBABILITY_REFRESH_MILLISECONDS","ProbabilityManager","persistence","probabilityFetcher","persistedProbability","initialProbabilityTime","BufferingProcessor","scaleProbabilityToMatchSamplingRate","Sampler","initialProbability","spanContextEquals","span1","span2","DefaultSpanContextStorage","backgroundingListener","contextStack","timeToNumber","DISCARD_END_TIME","SpanFactory","idGenerator","spanAttributesSource","spanContextStorage","safeStartTime","parentContext","spanName","cleanOptions","spanInternal","additionalAttributes","untracked","isValidSpan","spanEnded","safeEndTime","spanOptions","createClient","bufferingProcessor","spanFactory","plugins","endpointWithApiKeyInSubdomain","originalNotify","currentSpanContext","networkSpanOptions","endOptions","Constructor","createNoopClient","pad","fingerprint_browser","isCuid","fingerprint","require$$1","require$$2","cuid_1","InMemoryPersistence","toPersistedPayload","msInDay","InMemoryQueue","retryQueueMaxSize","spanCount","countSpansInPayload","scopeSpans","samplingProbabilityFromHeaders","asNumber","createFetchDeliveryFactory","fetch","keepalive","defaultNetworkRequestCallback","networkRequestInfo","isNetworkRequestCallback","RequestTracker","startCallback","results","endContext","isDefined","argument","getAbsoluteUrl","baseUrl","absoluteUrl","createStartContext","inputIsRequest","isHeadersInstance","createFetchRequestTracker","global","requestTracker","originalFetch","startContext","onRequestEnd","extraRequestHeaders","modifiedParams","mergeRequestHeaders","extraHeaders","mergeInputRequestHeaders","mergeInitRequestHeaders","createXmlHttpRequestTracker","xhr","document","trackedRequests","requestHandlers","originalOpen","originalSend","existingHandler","onReadyStateChange","defaultSendPageAttributes","getPermittedAttributes","sendPageAttributes","isSendPageAttributes","allowedTypes","shouldOmitSpan","instrumentPageLoadPhaseSpans","performance","createPageLoadPhaseSpan","phase","TCPHandshakeEnd","defaultRouteResolver","createNoopRoutingProvider","resolveRoute","startRouteChangeSpan","createDefaultRoutingProvider","onSettle","ev","originalPushState","absoluteURL","FullPageLoadPlugin","webVitals","traceparentMetaTag","traceparent","permittedAttributes","permittedPrefixes","NetworkRequestPlugin","fetchTracker","xhrTracker","shouldPropagateTraceContextByDefault","defaultRequestInfo","prefix","sampled","buildTraceparentHeader","buildTracestateHeader","getHttpVersion","resourceLoadSupported","PerformanceObserverClass","ResourceLoadPlugin","httpFlavor","makeCurrentContext","routeChangeSpanOptionSchema","RouteChangePlugin","previousUrl","previousRoute","stringUrl","routeChangeSpanOptions","endTimeOrOptions","urlObject","ensureUrl","createBrowserBackgroundingListener","window","backgroundingListenerCallback","backgroundStateChanged","newState","MAX_CLOCK_DRIFT_MS","recalculateTimeOrigin","timeOrigin","createClock","initialTimeOrigin","calculatedTimeOrigin","date","isRoutingProvider","createSchema","hostname","defaultRoutingProvider","toHex","hex","bits","randomValues","Settler","settledTime","DomMutationSettler","isPerformanceNavigationTiming","LoadEventEndSettler","RequestSettler","urlsToIgnore","SettlerAggregate","settlers","settler","TIMEOUT_MILLISECONDS","createNoopOnSettle","createOnSettle","fetchRequestTracker","xhrRequestTracker","domMutationSettler","fetchRequestSettler","xhrRequestSettler","loadEventEndSettler","onSettlePlugin","cooldown","settleIgnoreUrls","makeBrowserPersistence","BrowserPersistence","localStorage","createResourceAttributesSource","navigator","deviceId","maybeAnonymousId","anonymousId","createSpanAttributesSource","defaultAttributes","WebVitals","supportedEntryTypes","firstContentfulPaint","timeToFirstByte","firstInputDelay","responseStart","DefaultRoutingProvider","BugsnagPerformance","resourceAttributesSource","BugsnagPerformance$1","toastOptions","bugsnagVue","Toast"],"ignoreList":[0,1,2,3,4,5,6,7,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,92,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475],"sources":["../../node_modules/@vue/shared/dist/shared.esm-bundler.js","../../node_modules/@vue/reactivity/dist/reactivity.esm-bundler.js","../../node_modules/@vue/runtime-core/dist/runtime-core.esm-bundler.js","../../node_modules/@vue/runtime-dom/dist/runtime-dom.esm-bundler.js","../../node_modules/@intlify/shared/dist/shared.mjs","../../node_modules/@intlify/message-compiler/dist/message-compiler.esm-browser.js","../../node_modules/@intlify/core-base/dist/core-base.mjs","../../node_modules/vue-i18n/dist/vue-i18n.mjs","../../src/resources/enums.ts","../../node_modules/axios/lib/helpers/bind.js","../../node_modules/axios/lib/utils.js","../../node_modules/axios/lib/core/AxiosError.js","../../node_modules/axios/lib/helpers/null.js","../../node_modules/axios/lib/helpers/toFormData.js","../../node_modules/axios/lib/helpers/AxiosURLSearchParams.js","../../node_modules/axios/lib/helpers/buildURL.js","../../node_modules/axios/lib/core/InterceptorManager.js","../../node_modules/axios/lib/defaults/transitional.js","../../node_modules/axios/lib/platform/browser/classes/URLSearchParams.js","../../node_modules/axios/lib/platform/browser/classes/FormData.js","../../node_modules/axios/lib/platform/browser/classes/Blob.js","../../node_modules/axios/lib/platform/browser/index.js","../../node_modules/axios/lib/platform/common/utils.js","../../node_modules/axios/lib/platform/index.js","../../node_modules/axios/lib/helpers/toURLEncodedForm.js","../../node_modules/axios/lib/helpers/formDataToJSON.js","../../node_modules/axios/lib/defaults/index.js","../../node_modules/axios/lib/helpers/parseHeaders.js","../../node_modules/axios/lib/core/AxiosHeaders.js","../../node_modules/axios/lib/core/transformData.js","../../node_modules/axios/lib/cancel/isCancel.js","../../node_modules/axios/lib/cancel/CanceledError.js","../../node_modules/axios/lib/core/settle.js","../../node_modules/axios/lib/helpers/parseProtocol.js","../../node_modules/axios/lib/helpers/speedometer.js","../../node_modules/axios/lib/helpers/throttle.js","../../node_modules/axios/lib/helpers/progressEventReducer.js","../../node_modules/axios/lib/helpers/isURLSameOrigin.js","../../node_modules/axios/lib/helpers/cookies.js","../../node_modules/axios/lib/helpers/isAbsoluteURL.js","../../node_modules/axios/lib/helpers/combineURLs.js","../../node_modules/axios/lib/core/buildFullPath.js","../../node_modules/axios/lib/core/mergeConfig.js","../../node_modules/axios/lib/helpers/resolveConfig.js","../../node_modules/axios/lib/adapters/xhr.js","../../node_modules/axios/lib/helpers/composeSignals.js","../../node_modules/axios/lib/helpers/trackStream.js","../../node_modules/axios/lib/adapters/fetch.js","../../node_modules/axios/lib/adapters/adapters.js","../../node_modules/axios/lib/core/dispatchRequest.js","../../node_modules/axios/lib/env/data.js","../../node_modules/axios/lib/helpers/validator.js","../../node_modules/axios/lib/core/Axios.js","../../node_modules/axios/lib/cancel/CancelToken.js","../../node_modules/axios/lib/helpers/spread.js","../../node_modules/axios/lib/helpers/isAxiosError.js","../../node_modules/axios/lib/helpers/HttpStatusCode.js","../../node_modules/axios/lib/axios.js","../../node_modules/vue-router/dist/vue-router.mjs","../../src/resources/sdk/api.ts","../../src/resources/sdk/routes.ts","../../src/resources/sdk/index.ts","../../src/resources/journey/journey_steps.ts","../../src/resources/journey/JourneyStep.ts","../../src/resources/journey/Journey.ts","../../src/assets/images/journey-steps/survey.jpg","../../src/assets/images/journey-steps/test_bart.jpg","../../src/assets/images/journey-steps/test_cogstroop.jpg","../../src/assets/images/journey-steps/test_emoquotation.jpg","../../src/assets/images/journey-steps/test_emostroop.jpg","../../src/assets/images/journey-steps/test_focus.jpg","../../src/assets/images/journey-steps/test_oddball.jpg","../../src/assets/images/journey-steps/test_rme.jpg","../../src/assets/images/journey-steps/test_ultimatum.jpg","../../src/resources/surveys/interfaces.ts","../../src/resources/surveys/SurveyItemDropdown.ts","../../src/resources/surveys/SurveyItemInfo.ts","../../src/resources/surveys/SurveyItemInput.ts","../../src/resources/surveys/SurveyItemMultipleChoices.ts","../../src/resources/surveys/SurveyItemMultipleOneChoice.ts","../../src/resources/surveys/SurveyItemMultipleSlider.ts","../../src/resources/surveys/SurveyItemOneChoice.ts","../../src/resources/surveys/SurveyItemOrderFavorite.ts","../../src/resources/surveys/SurveyItemPointDistribution.ts","../../src/resources/surveys/SurveyItemScale.ts","../../src/resources/surveys/SurveyItemSlider.ts","../../src/resources/surveys/factory.ts","../../src/resources/journey/drawers/interfaces.ts","../../src/resources/journey/drawers/functions.ts","../../src/assets/locales/categories.ts","../../src/dev-only/index.ts","../../src/resources/person/Person.ts","../../node_modules/@bugsnag/browser/dist/bugsnag.js","../../src/resources/session/session.ts","../../src/views/experience/cartography/index.ts","../../src/views/experience/cartography_end/index.ts","../../src/views/experience/survey/index.ts","../../src/views/experience/game/index.ts","../../src/views/experience/index.ts","../../src/views/reports/index.ts","../../src/resources/router/functions.ts","../../src/views/auth/sign_in/index.ts","../../src/views/auth/sign_up/index.ts","../../src/views/auth/after_sign_up/index.ts","../../src/views/auth/confirm_account/index.ts","../../src/views/auth/reset_password/index.ts","../../src/views/auth/reset_password_form/index.ts","../../src/views/auth/new_account_system/index.ts","../../src/views/contract/legal_terms/index.ts","../../src/views/contract/terms_of_service/index.ts","../../src/views/account/profile/index.ts","../../src/views/account/legal/index.ts","../../src/views/account/terms_of_service/index.ts","../../src/views/account/index.ts","../../src/views/contact/index.ts","../../src/views/program/index.ts","../../src/views/onboarding/index.ts","../../src/views/tools/index.ts","../../../../omind-design-system/dist/components/odsPopup/odsPopupManager.ts","../../../../omind-design-system/dist/components/odsPopup/odsPopup.ts","../../../../omind-design-system/dist/tokens/index.ts","../../../../omind-design-system/dist/components/odsPopup/odsPopup.vue","../../src/assets/images/popup/star.png","../../src/forms/forms.ts","../../src/resources/journey/drawers/bilan_vr/BilanVR_5_0_0.ts","../../src/resources/journey/drawers/bilan_vr/BilanVR_4_0_0.ts","../../src/resources/journey/drawers/bilan_vr/BilanVR_3_0_0.ts","../../src/resources/journey/drawers/bilan_vr/BilanVR_2_0_1.ts","../../src/resources/journey/drawers/bilan_vr/BilanVR_1_3_and_below.ts","../../src/resources/journey/drawers/bilan_vr/index.ts","../../src/resources/journey/drawers/leadership/Leadership_7_0_0.ts","../../src/resources/journey/drawers/leadership/Leadership_6_0_0.ts","../../src/resources/journey/drawers/leadership/Leadership_5_0_0.ts","../../src/resources/journey/drawers/leadership/Leadership_3_and_below.ts","../../src/resources/journey/drawers/leadership/index.ts","../../src/resources/journey/drawers/ascent_online/index.ts","../../src/assets/images/journey-steps/vr_quest.jpg","../../src/resources/journey/drawers/bilan_vr_quest/BilanVRQuest_1_0_0.ts","../../src/resources/journey/drawers/bilan_vr_quest/index.ts","../../src/resources/journey/drawers/ascent_vr/index.ts","../../src/resources/journey/drawers/resilience/Resilience_3_0_0.ts","../../src/resources/journey/drawers/resilience/Resilience_2_0_0.ts","../../src/resources/journey/drawers/resilience/Resilience_1_3_2.ts","../../src/resources/journey/drawers/resilience/Resilience_1_2_and_below.ts","../../src/resources/journey/drawers/resilience/index.ts","../../src/resources/journey/drawers/ignition_online/index.ts","../../src/resources/journey/drawers/ignition_vr/index.ts","../../src/assets/images/journey-steps/vr_flash.jpg","../../src/resources/journey/drawers/bilan_vr_flash/BilanVRFlash_3_0_0.ts","../../src/resources/journey/drawers/bilan_vr_flash/index.ts","../../src/resources/journey/drawers/tingari/Tingari_1_3_0.ts","../../src/resources/journey/drawers/tingari/Tingari_1_2_and_below.ts","../../src/resources/journey/drawers/tingari/index.ts","../../src/resources/journey/drawers/bootcamp_online/Bootcamp_online_1_0_0.ts","../../src/resources/journey/drawers/bootcamp_online/index.ts","../../src/resources/journey/drawers/feta/FETA_1_0_0.ts","../../src/resources/journey/drawers/feta/index.ts","../../src/resources/journey/drawers/index.ts","../../src/forms/ChangeLangForm.ts","../../../../omind-design-system/dist/components/odsIcon/odsIcon.ts","../../../../omind-design-system/dist/components/odsIcon/odsIcon.vue","../../../../omind-design-system/dist/components/odsButton/odsButton.ts","../../../../omind-design-system/dist/components/odsButton/odsButton.vue","../../../../omind-design-system/dist/components/odsPill/odsPill.ts","../../../../omind-design-system/dist/components/odsPill/odsPill.vue","../../../../omind-design-system/dist/components/odsFieldMessage/odsFieldMessage.vue","../../../../omind-design-system/dist/components/odsSelect/odsSelect.vue","../../src/components/popup/popupLang.vue","../../src/resources/router/index.ts","../../src/resources/misc/deepmerge.js","../../src/resources/misc/functions.ts","../../src/resources/i18n/i18n.ts","../../../../omind-design-system/dist/components/odsLogo/odsLogo.ts","../../../../omind-design-system/dist/components/odsLogo/odsLogo.vue","../../../../omind-design-system/dist/components/odsCheckbox/odsCheckbox.vue","../../../../omind-design-system/dist/components/odsInput/odsInput.ts","../../../../omind-design-system/dist/components/odsInput/odsInput.vue","../../../../omind-design-system/dist/components/odsNavigation/odsNavigation.vue","../../../../omind-design-system/dist/components/odsNavigation/odsNavigationItem.vue","../../../../omind-design-system/dist/components/odsTextarea/odsTextarea.vue","../../../../omind-design-system/dist/components/index.ts","../../src/components/navigation/MainNavigation.vue","../../src/components/navigation/BottomNavigation.vue","../../src/components/layouts/MainLayout.vue","../../src/App.vue","../../node_modules/vue-toastification/dist/index.mjs","../../node_modules/@tsparticles/engine/browser/Core/Utils/Constants.js","../../node_modules/@tsparticles/engine/browser/Enums/Directions/MoveDirection.js","../../node_modules/@tsparticles/engine/browser/Utils/TypeUtils.js","../../node_modules/@tsparticles/engine/browser/Core/Utils/Vectors.js","../../node_modules/@tsparticles/engine/browser/Utils/NumberUtils.js","../../node_modules/@tsparticles/engine/browser/Enums/Modes/AnimationMode.js","../../node_modules/@tsparticles/engine/browser/Enums/AnimationStatus.js","../../node_modules/@tsparticles/engine/browser/Enums/Types/DestroyType.js","../../node_modules/@tsparticles/engine/browser/Enums/Directions/OutModeDirection.js","../../node_modules/@tsparticles/engine/browser/Enums/Modes/PixelMode.js","../../node_modules/@tsparticles/engine/browser/Enums/Types/StartValueType.js","../../node_modules/@tsparticles/engine/browser/Utils/Utils.js","../../node_modules/@tsparticles/engine/browser/Enums/Types/AlterType.js","../../node_modules/@tsparticles/engine/browser/Utils/ColorUtils.js","../../node_modules/@tsparticles/engine/browser/Utils/CanvasUtils.js","../../node_modules/@tsparticles/engine/browser/Core/Canvas.js","../../node_modules/@tsparticles/engine/browser/Enums/InteractivityDetect.js","../../node_modules/@tsparticles/engine/browser/Core/Utils/EventListeners.js","../../node_modules/@tsparticles/engine/browser/Enums/Types/EventType.js","../../node_modules/@tsparticles/engine/browser/Options/Classes/OptionsColor.js","../../node_modules/@tsparticles/engine/browser/Options/Classes/Background/Background.js","../../node_modules/@tsparticles/engine/browser/Options/Classes/BackgroundMask/BackgroundMaskCover.js","../../node_modules/@tsparticles/engine/browser/Options/Classes/BackgroundMask/BackgroundMask.js","../../node_modules/@tsparticles/engine/browser/Options/Classes/FullScreen/FullScreen.js","../../node_modules/@tsparticles/engine/browser/Options/Classes/Interactivity/Events/ClickEvent.js","../../node_modules/@tsparticles/engine/browser/Enums/Types/DivType.js","../../node_modules/@tsparticles/engine/browser/Options/Classes/Interactivity/Events/DivEvent.js","../../node_modules/@tsparticles/engine/browser/Options/Classes/Interactivity/Events/Parallax.js","../../node_modules/@tsparticles/engine/browser/Options/Classes/Interactivity/Events/HoverEvent.js","../../node_modules/@tsparticles/engine/browser/Options/Classes/Interactivity/Events/ResizeEvent.js","../../node_modules/@tsparticles/engine/browser/Options/Classes/Interactivity/Events/Events.js","../../node_modules/@tsparticles/engine/browser/Options/Classes/Interactivity/Modes/Modes.js","../../node_modules/@tsparticles/engine/browser/Options/Classes/Interactivity/Interactivity.js","../../node_modules/@tsparticles/engine/browser/Options/Classes/ManualParticle.js","../../node_modules/@tsparticles/engine/browser/Enums/Modes/ResponsiveMode.js","../../node_modules/@tsparticles/engine/browser/Options/Classes/Responsive.js","../../node_modules/@tsparticles/engine/browser/Enums/Modes/ThemeMode.js","../../node_modules/@tsparticles/engine/browser/Options/Classes/Theme/ThemeDefault.js","../../node_modules/@tsparticles/engine/browser/Options/Classes/Theme/Theme.js","../../node_modules/@tsparticles/engine/browser/Options/Classes/AnimationOptions.js","../../node_modules/@tsparticles/engine/browser/Options/Classes/ColorAnimation.js","../../node_modules/@tsparticles/engine/browser/Options/Classes/HslAnimation.js","../../node_modules/@tsparticles/engine/browser/Options/Classes/AnimatableColor.js","../../node_modules/@tsparticles/engine/browser/Enums/Modes/CollisionMode.js","../../node_modules/@tsparticles/engine/browser/Options/Classes/Particles/Collisions/CollisionsAbsorb.js","../../node_modules/@tsparticles/engine/browser/Options/Classes/Particles/Collisions/CollisionsOverlap.js","../../node_modules/@tsparticles/engine/browser/Options/Classes/ValueWithRandom.js","../../node_modules/@tsparticles/engine/browser/Options/Classes/Particles/Bounce/ParticlesBounceFactor.js","../../node_modules/@tsparticles/engine/browser/Options/Classes/Particles/Bounce/ParticlesBounce.js","../../node_modules/@tsparticles/engine/browser/Options/Classes/Particles/Collisions/Collisions.js","../../node_modules/@tsparticles/engine/browser/Options/Classes/Particles/Effect/Effect.js","../../node_modules/@tsparticles/engine/browser/Options/Classes/Particles/Move/MoveAngle.js","../../node_modules/@tsparticles/engine/browser/Options/Classes/Particles/Move/MoveAttract.js","../../node_modules/@tsparticles/engine/browser/Options/Classes/Particles/Move/MoveCenter.js","../../node_modules/@tsparticles/engine/browser/Options/Classes/Particles/Move/MoveGravity.js","../../node_modules/@tsparticles/engine/browser/Options/Classes/Particles/Move/Path/MovePath.js","../../node_modules/@tsparticles/engine/browser/Options/Classes/Particles/Move/MoveTrailFill.js","../../node_modules/@tsparticles/engine/browser/Options/Classes/Particles/Move/MoveTrail.js","../../node_modules/@tsparticles/engine/browser/Enums/Modes/OutMode.js","../../node_modules/@tsparticles/engine/browser/Options/Classes/Particles/Move/OutModes.js","../../node_modules/@tsparticles/engine/browser/Options/Classes/Particles/Move/Spin.js","../../node_modules/@tsparticles/engine/browser/Options/Classes/Particles/Move/Move.js","../../node_modules/@tsparticles/engine/browser/Options/Classes/Particles/Opacity/OpacityAnimation.js","../../node_modules/@tsparticles/engine/browser/Options/Classes/Particles/Opacity/Opacity.js","../../node_modules/@tsparticles/engine/browser/Options/Classes/Particles/Number/ParticlesDensity.js","../../node_modules/@tsparticles/engine/browser/Enums/Modes/LimitMode.js","../../node_modules/@tsparticles/engine/browser/Options/Classes/Particles/Number/ParticlesNumberLimit.js","../../node_modules/@tsparticles/engine/browser/Options/Classes/Particles/Number/ParticlesNumber.js","../../node_modules/@tsparticles/engine/browser/Options/Classes/Particles/Shadow.js","../../node_modules/@tsparticles/engine/browser/Options/Classes/Particles/Shape/Shape.js","../../node_modules/@tsparticles/engine/browser/Options/Classes/Particles/Size/SizeAnimation.js","../../node_modules/@tsparticles/engine/browser/Options/Classes/Particles/Size/Size.js","../../node_modules/@tsparticles/engine/browser/Options/Classes/Particles/Stroke.js","../../node_modules/@tsparticles/engine/browser/Options/Classes/Particles/ZIndex/ZIndex.js","../../node_modules/@tsparticles/engine/browser/Options/Classes/Particles/ParticlesOptions.js","../../node_modules/@tsparticles/engine/browser/Utils/OptionsUtils.js","../../node_modules/@tsparticles/engine/browser/Options/Classes/Options.js","../../node_modules/@tsparticles/engine/browser/Enums/Types/InteractorType.js","../../node_modules/@tsparticles/engine/browser/Core/Utils/InteractionManager.js","../../node_modules/@tsparticles/engine/browser/Enums/Types/ParticleOutType.js","../../node_modules/@tsparticles/engine/browser/Core/Particle.js","../../node_modules/@tsparticles/engine/browser/Core/Utils/Point.js","../../node_modules/@tsparticles/engine/browser/Types/RangeType.js","../../node_modules/@tsparticles/engine/browser/Core/Utils/Ranges.js","../../node_modules/@tsparticles/engine/browser/Core/Utils/QuadTree.js","../../node_modules/@tsparticles/engine/browser/Core/Particles.js","../../node_modules/@tsparticles/engine/browser/Core/Retina.js","../../node_modules/@tsparticles/engine/browser/Core/Container.js","../../node_modules/@tsparticles/engine/browser/Utils/EventDispatcher.js","../../node_modules/@tsparticles/engine/browser/Core/Engine.js","../../node_modules/@tsparticles/engine/browser/Utils/HslColorManager.js","../../node_modules/@tsparticles/engine/browser/Utils/RgbColorManager.js","../../node_modules/@tsparticles/engine/browser/init.js","../../node_modules/@tsparticles/engine/browser/Core/Utils/ExternalInteractorBase.js","../../node_modules/@tsparticles/engine/browser/Core/Utils/ParticlesInteractorBase.js","../../node_modules/@tsparticles/engine/browser/Enums/Directions/RotateDirection.js","../../node_modules/@tsparticles/engine/browser/Enums/Types/GradientType.js","../../node_modules/@tsparticles/engine/browser/Enums/Types/EasingType.js","../../node_modules/@tsparticles/engine/browser/index.js","../../node_modules/@tsparticles/vue3/dist/particles.es.js","../../node_modules/@tsparticles/move-base/browser/Utils.js","../../node_modules/@tsparticles/move-base/browser/BaseMover.js","../../node_modules/@tsparticles/move-base/browser/index.js","../../node_modules/@tsparticles/shape-circle/browser/Utils.js","../../node_modules/@tsparticles/shape-circle/browser/CircleDrawer.js","../../node_modules/@tsparticles/shape-circle/browser/index.js","../../node_modules/@tsparticles/updater-color/browser/ColorUpdater.js","../../node_modules/@tsparticles/updater-color/browser/index.js","../../node_modules/@tsparticles/updater-opacity/browser/OpacityUpdater.js","../../node_modules/@tsparticles/updater-opacity/browser/index.js","../../node_modules/@tsparticles/updater-out-modes/browser/Utils.js","../../node_modules/@tsparticles/updater-out-modes/browser/BounceOutMode.js","../../node_modules/@tsparticles/updater-out-modes/browser/DestroyOutMode.js","../../node_modules/@tsparticles/updater-out-modes/browser/NoneOutMode.js","../../node_modules/@tsparticles/updater-out-modes/browser/OutOutMode.js","../../node_modules/@tsparticles/updater-out-modes/browser/OutOfCanvasUpdater.js","../../node_modules/@tsparticles/updater-out-modes/browser/index.js","../../node_modules/@tsparticles/updater-size/browser/SizeUpdater.js","../../node_modules/@tsparticles/updater-size/browser/index.js","../../node_modules/@tsparticles/basic/browser/index.js","../../node_modules/@tsparticles/plugin-easing-quad/browser/index.js","../../node_modules/@tsparticles/shape-emoji/browser/Utils.js","../../node_modules/@tsparticles/shape-emoji/browser/EmojiDrawer.js","../../node_modules/@tsparticles/shape-emoji/browser/index.js","../../node_modules/@tsparticles/interaction-external-attract/browser/Utils.js","../../node_modules/@tsparticles/interaction-external-attract/browser/Options/Classes/Attract.js","../../node_modules/@tsparticles/interaction-external-attract/browser/Attractor.js","../../node_modules/@tsparticles/interaction-external-attract/browser/index.js","../../node_modules/@tsparticles/interaction-external-bounce/browser/Utils.js","../../node_modules/@tsparticles/interaction-external-bounce/browser/Options/Classes/Bounce.js","../../node_modules/@tsparticles/interaction-external-bounce/browser/Bouncer.js","../../node_modules/@tsparticles/interaction-external-bounce/browser/index.js","../../node_modules/@tsparticles/interaction-external-bubble/browser/Options/Classes/BubbleBase.js","../../node_modules/@tsparticles/interaction-external-bubble/browser/Options/Classes/BubbleDiv.js","../../node_modules/@tsparticles/interaction-external-bubble/browser/Options/Classes/Bubble.js","../../node_modules/@tsparticles/interaction-external-bubble/browser/Enums.js","../../node_modules/@tsparticles/interaction-external-bubble/browser/Utils.js","../../node_modules/@tsparticles/interaction-external-bubble/browser/Bubbler.js","../../node_modules/@tsparticles/interaction-external-bubble/browser/index.js","../../node_modules/@tsparticles/interaction-external-connect/browser/Options/Classes/ConnectLinks.js","../../node_modules/@tsparticles/interaction-external-connect/browser/Options/Classes/Connect.js","../../node_modules/@tsparticles/interaction-external-connect/browser/Utils.js","../../node_modules/@tsparticles/interaction-external-connect/browser/Connector.js","../../node_modules/@tsparticles/interaction-external-connect/browser/index.js","../../node_modules/@tsparticles/interaction-external-grab/browser/Options/Classes/GrabLinks.js","../../node_modules/@tsparticles/interaction-external-grab/browser/Options/Classes/Grab.js","../../node_modules/@tsparticles/interaction-external-grab/browser/Utils.js","../../node_modules/@tsparticles/interaction-external-grab/browser/Grabber.js","../../node_modules/@tsparticles/interaction-external-grab/browser/index.js","../../node_modules/@tsparticles/interaction-external-pause/browser/Pauser.js","../../node_modules/@tsparticles/interaction-external-pause/browser/index.js","../../node_modules/@tsparticles/interaction-external-push/browser/Options/Classes/Push.js","../../node_modules/@tsparticles/interaction-external-push/browser/Pusher.js","../../node_modules/@tsparticles/interaction-external-push/browser/index.js","../../node_modules/@tsparticles/interaction-external-remove/browser/Options/Classes/Remove.js","../../node_modules/@tsparticles/interaction-external-remove/browser/Remover.js","../../node_modules/@tsparticles/interaction-external-remove/browser/index.js","../../node_modules/@tsparticles/interaction-external-repulse/browser/Options/Classes/RepulseBase.js","../../node_modules/@tsparticles/interaction-external-repulse/browser/Options/Classes/RepulseDiv.js","../../node_modules/@tsparticles/interaction-external-repulse/browser/Options/Classes/Repulse.js","../../node_modules/@tsparticles/interaction-external-repulse/browser/Repulser.js","../../node_modules/@tsparticles/interaction-external-repulse/browser/index.js","../../node_modules/@tsparticles/interaction-external-slow/browser/Options/Classes/Slow.js","../../node_modules/@tsparticles/interaction-external-slow/browser/Slower.js","../../node_modules/@tsparticles/interaction-external-slow/browser/index.js","../../node_modules/@tsparticles/shape-image/browser/Utils.js","../../node_modules/@tsparticles/shape-image/browser/GifUtils/Constants.js","../../node_modules/@tsparticles/shape-image/browser/GifUtils/ByteStream.js","../../node_modules/@tsparticles/shape-image/browser/GifUtils/Enums/DisposalMethod.js","../../node_modules/@tsparticles/shape-image/browser/GifUtils/Types/GIFDataHeaders.js","../../node_modules/@tsparticles/shape-image/browser/GifUtils/Utils.js","../../node_modules/@tsparticles/shape-image/browser/ImageDrawer.js","../../node_modules/@tsparticles/shape-image/browser/Options/Classes/Preload.js","../../node_modules/@tsparticles/shape-image/browser/ImagePreloader.js","../../node_modules/@tsparticles/shape-image/browser/index.js","../../node_modules/@tsparticles/updater-life/browser/Options/Classes/LifeDelay.js","../../node_modules/@tsparticles/updater-life/browser/Options/Classes/LifeDuration.js","../../node_modules/@tsparticles/updater-life/browser/Options/Classes/Life.js","../../node_modules/@tsparticles/updater-life/browser/Utils.js","../../node_modules/@tsparticles/updater-life/browser/LifeUpdater.js","../../node_modules/@tsparticles/updater-life/browser/index.js","../../node_modules/@tsparticles/shape-line/browser/Utils.js","../../node_modules/@tsparticles/shape-line/browser/LineDrawer.js","../../node_modules/@tsparticles/shape-line/browser/index.js","../../node_modules/@tsparticles/move-parallax/browser/ParallaxMover.js","../../node_modules/@tsparticles/move-parallax/browser/index.js","../../node_modules/@tsparticles/interaction-particles-attract/browser/Attractor.js","../../node_modules/@tsparticles/interaction-particles-attract/browser/index.js","../../node_modules/@tsparticles/interaction-particles-collisions/browser/Absorb.js","../../node_modules/@tsparticles/interaction-particles-collisions/browser/Bounce.js","../../node_modules/@tsparticles/interaction-particles-collisions/browser/Destroy.js","../../node_modules/@tsparticles/interaction-particles-collisions/browser/ResolveCollision.js","../../node_modules/@tsparticles/interaction-particles-collisions/browser/Collider.js","../../node_modules/@tsparticles/interaction-particles-collisions/browser/index.js","../../node_modules/@tsparticles/interaction-particles-links/browser/CircleWarp.js","../../node_modules/@tsparticles/interaction-particles-links/browser/Options/Classes/LinksShadow.js","../../node_modules/@tsparticles/interaction-particles-links/browser/Options/Classes/LinksTriangle.js","../../node_modules/@tsparticles/interaction-particles-links/browser/Options/Classes/Links.js","../../node_modules/@tsparticles/interaction-particles-links/browser/Linker.js","../../node_modules/@tsparticles/interaction-particles-links/browser/interaction.js","../../node_modules/@tsparticles/interaction-particles-links/browser/Utils.js","../../node_modules/@tsparticles/interaction-particles-links/browser/LinkInstance.js","../../node_modules/@tsparticles/interaction-particles-links/browser/LinksPlugin.js","../../node_modules/@tsparticles/interaction-particles-links/browser/plugin.js","../../node_modules/@tsparticles/interaction-particles-links/browser/index.js","../../node_modules/@tsparticles/shape-polygon/browser/Utils.js","../../node_modules/@tsparticles/shape-polygon/browser/PolygonDrawerBase.js","../../node_modules/@tsparticles/shape-polygon/browser/PolygonDrawer.js","../../node_modules/@tsparticles/shape-polygon/browser/TriangleDrawer.js","../../node_modules/@tsparticles/shape-polygon/browser/index.js","../../node_modules/@tsparticles/updater-rotate/browser/Options/Classes/RotateAnimation.js","../../node_modules/@tsparticles/updater-rotate/browser/Options/Classes/Rotate.js","../../node_modules/@tsparticles/updater-rotate/browser/RotateUpdater.js","../../node_modules/@tsparticles/updater-rotate/browser/index.js","../../node_modules/@tsparticles/shape-square/browser/Utils.js","../../node_modules/@tsparticles/shape-square/browser/SquareDrawer.js","../../node_modules/@tsparticles/shape-square/browser/index.js","../../node_modules/@tsparticles/shape-star/browser/Utils.js","../../node_modules/@tsparticles/shape-star/browser/StarDrawer.js","../../node_modules/@tsparticles/shape-star/browser/index.js","../../node_modules/@tsparticles/updater-stroke-color/browser/StrokeColorUpdater.js","../../node_modules/@tsparticles/updater-stroke-color/browser/index.js","../../node_modules/@tsparticles/slim/browser/index.js","../../node_modules/@tsparticles/plugin-emitters/browser/Options/Classes/EmitterLife.js","../../node_modules/@tsparticles/plugin-emitters/browser/Options/Classes/EmitterRate.js","../../node_modules/@tsparticles/plugin-emitters/browser/Options/Classes/EmitterShapeReplace.js","../../node_modules/@tsparticles/plugin-emitters/browser/Options/Classes/EmitterShape.js","../../node_modules/@tsparticles/plugin-emitters/browser/Options/Classes/EmitterSize.js","../../node_modules/@tsparticles/plugin-emitters/browser/Options/Classes/Emitter.js","../../node_modules/@tsparticles/plugin-emitters/browser/Enums/EmitterClickMode.js","../../node_modules/@tsparticles/plugin-emitters/browser/EmitterInstance.js","../../node_modules/@tsparticles/plugin-emitters/browser/Emitters.js","../../node_modules/@tsparticles/plugin-emitters/browser/EmittersPlugin.js","../../node_modules/@tsparticles/plugin-emitters/browser/ShapeManager.js","../../node_modules/@tsparticles/plugin-emitters/browser/index.js","../../node_modules/@bugsnag/js/browser/notifier.js","../../node_modules/@bugsnag/plugin-vue/dist/bugsnag-vue.js","../../node_modules/@bugsnag/core-performance/dist/validation.js","../../node_modules/@bugsnag/core-performance/dist/attributes.js","../../node_modules/@bugsnag/core-performance/dist/clock.js","../../node_modules/@bugsnag/core-performance/dist/config.js","../../node_modules/@bugsnag/core-performance/dist/batch-processor.js","../../node_modules/@bugsnag/core-performance/dist/events.js","../../node_modules/@bugsnag/core-performance/dist/trace-id-to-sampling-rate.js","../../node_modules/@bugsnag/core-performance/dist/span.js","../../node_modules/@bugsnag/core-performance/dist/delivery.js","../../node_modules/@bugsnag/core-performance/dist/fixed-probability-manager.js","../../node_modules/@bugsnag/core-performance/dist/probability-fetcher.js","../../node_modules/@bugsnag/core-performance/dist/probability-manager.js","../../node_modules/@bugsnag/core-performance/dist/processor.js","../../node_modules/@bugsnag/core-performance/dist/sampler.js","../../node_modules/@bugsnag/core-performance/dist/span-context.js","../../node_modules/@bugsnag/core-performance/dist/time.js","../../node_modules/@bugsnag/core-performance/dist/span-factory.js","../../node_modules/@bugsnag/core-performance/dist/core.js","../../node_modules/@bugsnag/cuid/lib/pad.js","../../node_modules/@bugsnag/cuid/lib/fingerprint.browser.js","../../node_modules/@bugsnag/cuid/lib/is-cuid.js","../../node_modules/@bugsnag/cuid/index.js","../../node_modules/@bugsnag/core-performance/dist/persistence.js","../../node_modules/@bugsnag/core-performance/dist/retry-queue.js","../../node_modules/@bugsnag/delivery-fetch-performance/dist/delivery.js","../../node_modules/@bugsnag/request-tracker-performance/dist/network-request-callback.js","../../node_modules/@bugsnag/request-tracker-performance/dist/request-tracker.js","../../node_modules/@bugsnag/request-tracker-performance/dist/url-helpers.js","../../node_modules/@bugsnag/request-tracker-performance/dist/request-tracker-fetch.js","../../node_modules/@bugsnag/request-tracker-performance/dist/request-tracker-xhr.js","../../node_modules/@bugsnag/browser-performance/dist/send-page-attributes.js","../../node_modules/@bugsnag/browser-performance/dist/auto-instrumentation/page-load-phase-spans.js","../../node_modules/@bugsnag/browser-performance/dist/default-routing-provider.js","../../node_modules/@bugsnag/browser-performance/dist/auto-instrumentation/full-page-load-plugin.js","../../node_modules/@bugsnag/browser-performance/dist/auto-instrumentation/network-request-plugin.js","../../node_modules/@bugsnag/browser-performance/dist/auto-instrumentation/resource-load-plugin.js","../../node_modules/@bugsnag/browser-performance/dist/auto-instrumentation/route-change-plugin.js","../../node_modules/@bugsnag/browser-performance/dist/backgrounding-listener.js","../../node_modules/@bugsnag/browser-performance/dist/clock.js","../../node_modules/@bugsnag/browser-performance/dist/routing-provider.js","../../node_modules/@bugsnag/browser-performance/dist/config.js","../../node_modules/@bugsnag/browser-performance/dist/id-generator.js","../../node_modules/@bugsnag/browser-performance/dist/on-settle/settler.js","../../node_modules/@bugsnag/browser-performance/dist/on-settle/dom-mutation-settler.js","../../node_modules/@bugsnag/browser-performance/dist/on-settle/load-event-end-settler.js","../../node_modules/@bugsnag/browser-performance/dist/on-settle/request-settler.js","../../node_modules/@bugsnag/browser-performance/dist/on-settle/settler-aggregate.js","../../node_modules/@bugsnag/browser-performance/dist/on-settle/index.js","../../node_modules/@bugsnag/browser-performance/dist/persistence.js","../../node_modules/@bugsnag/browser-performance/dist/resource-attributes-source.js","../../node_modules/@bugsnag/browser-performance/dist/span-attributes-source.js","../../node_modules/@bugsnag/browser-performance/dist/web-vitals.js","../../node_modules/@bugsnag/browser-performance/dist/browser.js","../../src/main.ts"],"sourcesContent":["/**\n* @vue/shared v3.4.29\n* (c) 2018-present Yuxi (Evan) You and Vue contributors\n* @license MIT\n**/\n/*! #__NO_SIDE_EFFECTS__ */\n// @__NO_SIDE_EFFECTS__\nfunction makeMap(str, expectsLowerCase) {\n const set = new Set(str.split(\",\"));\n return expectsLowerCase ? (val) => set.has(val.toLowerCase()) : (val) => set.has(val);\n}\n\nconst EMPTY_OBJ = !!(process.env.NODE_ENV !== \"production\") ? Object.freeze({}) : {};\nconst EMPTY_ARR = !!(process.env.NODE_ENV !== \"production\") ? Object.freeze([]) : [];\nconst NOOP = () => {\n};\nconst NO = () => false;\nconst isOn = (key) => key.charCodeAt(0) === 111 && key.charCodeAt(1) === 110 && // uppercase letter\n(key.charCodeAt(2) > 122 || key.charCodeAt(2) < 97);\nconst isModelListener = (key) => key.startsWith(\"onUpdate:\");\nconst extend = Object.assign;\nconst remove = (arr, el) => {\n const i = arr.indexOf(el);\n if (i > -1) {\n arr.splice(i, 1);\n }\n};\nconst hasOwnProperty = Object.prototype.hasOwnProperty;\nconst hasOwn = (val, key) => hasOwnProperty.call(val, key);\nconst isArray = Array.isArray;\nconst isMap = (val) => toTypeString(val) === \"[object Map]\";\nconst isSet = (val) => toTypeString(val) === \"[object Set]\";\nconst isDate = (val) => toTypeString(val) === \"[object Date]\";\nconst isRegExp = (val) => toTypeString(val) === \"[object RegExp]\";\nconst isFunction = (val) => typeof val === \"function\";\nconst isString = (val) => typeof val === \"string\";\nconst isSymbol = (val) => typeof val === \"symbol\";\nconst isObject = (val) => val !== null && typeof val === \"object\";\nconst isPromise = (val) => {\n return (isObject(val) || isFunction(val)) && isFunction(val.then) && isFunction(val.catch);\n};\nconst objectToString = Object.prototype.toString;\nconst toTypeString = (value) => objectToString.call(value);\nconst toRawType = (value) => {\n return toTypeString(value).slice(8, -1);\n};\nconst isPlainObject = (val) => toTypeString(val) === \"[object Object]\";\nconst isIntegerKey = (key) => isString(key) && key !== \"NaN\" && key[0] !== \"-\" && \"\" + parseInt(key, 10) === key;\nconst isReservedProp = /* @__PURE__ */ makeMap(\n // the leading comma is intentional so empty string \"\" is also included\n \",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted\"\n);\nconst isBuiltInDirective = /* @__PURE__ */ makeMap(\n \"bind,cloak,else-if,else,for,html,if,model,on,once,pre,show,slot,text,memo\"\n);\nconst cacheStringFunction = (fn) => {\n const cache = /* @__PURE__ */ Object.create(null);\n return (str) => {\n const hit = cache[str];\n return hit || (cache[str] = fn(str));\n };\n};\nconst camelizeRE = /-(\\w)/g;\nconst camelize = cacheStringFunction((str) => {\n return str.replace(camelizeRE, (_, c) => c ? c.toUpperCase() : \"\");\n});\nconst hyphenateRE = /\\B([A-Z])/g;\nconst hyphenate = cacheStringFunction(\n (str) => str.replace(hyphenateRE, \"-$1\").toLowerCase()\n);\nconst capitalize = cacheStringFunction((str) => {\n return str.charAt(0).toUpperCase() + str.slice(1);\n});\nconst toHandlerKey = cacheStringFunction((str) => {\n const s = str ? `on${capitalize(str)}` : ``;\n return s;\n});\nconst hasChanged = (value, oldValue) => !Object.is(value, oldValue);\nconst invokeArrayFns = (fns, ...arg) => {\n for (let i = 0; i < fns.length; i++) {\n fns[i](...arg);\n }\n};\nconst def = (obj, key, value, writable = false) => {\n Object.defineProperty(obj, key, {\n configurable: true,\n enumerable: false,\n writable,\n value\n });\n};\nconst looseToNumber = (val) => {\n const n = parseFloat(val);\n return isNaN(n) ? val : n;\n};\nconst toNumber = (val) => {\n const n = isString(val) ? Number(val) : NaN;\n return isNaN(n) ? val : n;\n};\nlet _globalThis;\nconst getGlobalThis = () => {\n return _globalThis || (_globalThis = typeof globalThis !== \"undefined\" ? globalThis : typeof self !== \"undefined\" ? self : typeof window !== \"undefined\" ? window : typeof global !== \"undefined\" ? global : {});\n};\nconst identRE = /^[_$a-zA-Z\\xA0-\\uFFFF][_$a-zA-Z0-9\\xA0-\\uFFFF]*$/;\nfunction genPropsAccessExp(name) {\n return identRE.test(name) ? `__props.${name}` : `__props[${JSON.stringify(name)}]`;\n}\n\nconst PatchFlags = {\n \"TEXT\": 1,\n \"1\": \"TEXT\",\n \"CLASS\": 2,\n \"2\": \"CLASS\",\n \"STYLE\": 4,\n \"4\": \"STYLE\",\n \"PROPS\": 8,\n \"8\": \"PROPS\",\n \"FULL_PROPS\": 16,\n \"16\": \"FULL_PROPS\",\n \"NEED_HYDRATION\": 32,\n \"32\": \"NEED_HYDRATION\",\n \"STABLE_FRAGMENT\": 64,\n \"64\": \"STABLE_FRAGMENT\",\n \"KEYED_FRAGMENT\": 128,\n \"128\": \"KEYED_FRAGMENT\",\n \"UNKEYED_FRAGMENT\": 256,\n \"256\": \"UNKEYED_FRAGMENT\",\n \"NEED_PATCH\": 512,\n \"512\": \"NEED_PATCH\",\n \"DYNAMIC_SLOTS\": 1024,\n \"1024\": \"DYNAMIC_SLOTS\",\n \"DEV_ROOT_FRAGMENT\": 2048,\n \"2048\": \"DEV_ROOT_FRAGMENT\",\n \"HOISTED\": -1,\n \"-1\": \"HOISTED\",\n \"BAIL\": -2,\n \"-2\": \"BAIL\"\n};\nconst PatchFlagNames = {\n [1]: `TEXT`,\n [2]: `CLASS`,\n [4]: `STYLE`,\n [8]: `PROPS`,\n [16]: `FULL_PROPS`,\n [32]: `NEED_HYDRATION`,\n [64]: `STABLE_FRAGMENT`,\n [128]: `KEYED_FRAGMENT`,\n [256]: `UNKEYED_FRAGMENT`,\n [512]: `NEED_PATCH`,\n [1024]: `DYNAMIC_SLOTS`,\n [2048]: `DEV_ROOT_FRAGMENT`,\n [-1]: `HOISTED`,\n [-2]: `BAIL`\n};\n\nconst ShapeFlags = {\n \"ELEMENT\": 1,\n \"1\": \"ELEMENT\",\n \"FUNCTIONAL_COMPONENT\": 2,\n \"2\": \"FUNCTIONAL_COMPONENT\",\n \"STATEFUL_COMPONENT\": 4,\n \"4\": \"STATEFUL_COMPONENT\",\n \"TEXT_CHILDREN\": 8,\n \"8\": \"TEXT_CHILDREN\",\n \"ARRAY_CHILDREN\": 16,\n \"16\": \"ARRAY_CHILDREN\",\n \"SLOTS_CHILDREN\": 32,\n \"32\": \"SLOTS_CHILDREN\",\n \"TELEPORT\": 64,\n \"64\": \"TELEPORT\",\n \"SUSPENSE\": 128,\n \"128\": \"SUSPENSE\",\n \"COMPONENT_SHOULD_KEEP_ALIVE\": 256,\n \"256\": \"COMPONENT_SHOULD_KEEP_ALIVE\",\n \"COMPONENT_KEPT_ALIVE\": 512,\n \"512\": \"COMPONENT_KEPT_ALIVE\",\n \"COMPONENT\": 6,\n \"6\": \"COMPONENT\"\n};\n\nconst SlotFlags = {\n \"STABLE\": 1,\n \"1\": \"STABLE\",\n \"DYNAMIC\": 2,\n \"2\": \"DYNAMIC\",\n \"FORWARDED\": 3,\n \"3\": \"FORWARDED\"\n};\nconst slotFlagsText = {\n [1]: \"STABLE\",\n [2]: \"DYNAMIC\",\n [3]: \"FORWARDED\"\n};\n\nconst GLOBALS_ALLOWED = \"Infinity,undefined,NaN,isFinite,isNaN,parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,BigInt,console,Error\";\nconst isGloballyAllowed = /* @__PURE__ */ makeMap(GLOBALS_ALLOWED);\nconst isGloballyWhitelisted = isGloballyAllowed;\n\nconst range = 2;\nfunction generateCodeFrame(source, start = 0, end = source.length) {\n start = Math.max(0, Math.min(start, source.length));\n end = Math.max(0, Math.min(end, source.length));\n if (start > end) return \"\";\n let lines = source.split(/(\\r?\\n)/);\n const newlineSequences = lines.filter((_, idx) => idx % 2 === 1);\n lines = lines.filter((_, idx) => idx % 2 === 0);\n let count = 0;\n const res = [];\n for (let i = 0; i < lines.length; i++) {\n count += lines[i].length + (newlineSequences[i] && newlineSequences[i].length || 0);\n if (count >= start) {\n for (let j = i - range; j <= i + range || end > count; j++) {\n if (j < 0 || j >= lines.length) continue;\n const line = j + 1;\n res.push(\n `${line}${\" \".repeat(Math.max(3 - String(line).length, 0))}| ${lines[j]}`\n );\n const lineLength = lines[j].length;\n const newLineSeqLength = newlineSequences[j] && newlineSequences[j].length || 0;\n if (j === i) {\n const pad = start - (count - (lineLength + newLineSeqLength));\n const length = Math.max(\n 1,\n end > count ? lineLength - pad : end - start\n );\n res.push(` | ` + \" \".repeat(pad) + \"^\".repeat(length));\n } else if (j > i) {\n if (end > count) {\n const length = Math.max(Math.min(end - count, lineLength), 1);\n res.push(` | ` + \"^\".repeat(length));\n }\n count += lineLength + newLineSeqLength;\n }\n }\n break;\n }\n }\n return res.join(\"\\n\");\n}\n\nfunction normalizeStyle(value) {\n if (isArray(value)) {\n const res = {};\n for (let i = 0; i < value.length; i++) {\n const item = value[i];\n const normalized = isString(item) ? parseStringStyle(item) : normalizeStyle(item);\n if (normalized) {\n for (const key in normalized) {\n res[key] = normalized[key];\n }\n }\n }\n return res;\n } else if (isString(value) || isObject(value)) {\n return value;\n }\n}\nconst listDelimiterRE = /;(?![^(]*\\))/g;\nconst propertyDelimiterRE = /:([^]+)/;\nconst styleCommentRE = /\\/\\*[^]*?\\*\\//g;\nfunction parseStringStyle(cssText) {\n const ret = {};\n cssText.replace(styleCommentRE, \"\").split(listDelimiterRE).forEach((item) => {\n if (item) {\n const tmp = item.split(propertyDelimiterRE);\n tmp.length > 1 && (ret[tmp[0].trim()] = tmp[1].trim());\n }\n });\n return ret;\n}\nfunction stringifyStyle(styles) {\n let ret = \"\";\n if (!styles || isString(styles)) {\n return ret;\n }\n for (const key in styles) {\n const value = styles[key];\n if (isString(value) || typeof value === \"number\") {\n const normalizedKey = key.startsWith(`--`) ? key : hyphenate(key);\n ret += `${normalizedKey}:${value};`;\n }\n }\n return ret;\n}\nfunction normalizeClass(value) {\n let res = \"\";\n if (isString(value)) {\n res = value;\n } else if (isArray(value)) {\n for (let i = 0; i < value.length; i++) {\n const normalized = normalizeClass(value[i]);\n if (normalized) {\n res += normalized + \" \";\n }\n }\n } else if (isObject(value)) {\n for (const name in value) {\n if (value[name]) {\n res += name + \" \";\n }\n }\n }\n return res.trim();\n}\nfunction normalizeProps(props) {\n if (!props) return null;\n let { class: klass, style } = props;\n if (klass && !isString(klass)) {\n props.class = normalizeClass(klass);\n }\n if (style) {\n props.style = normalizeStyle(style);\n }\n return props;\n}\n\nconst HTML_TAGS = \"html,body,base,head,link,meta,style,title,address,article,aside,footer,header,hgroup,h1,h2,h3,h4,h5,h6,nav,section,div,dd,dl,dt,figcaption,figure,picture,hr,img,li,main,ol,p,pre,ul,a,b,abbr,bdi,bdo,br,cite,code,data,dfn,em,i,kbd,mark,q,rp,rt,ruby,s,samp,small,span,strong,sub,sup,time,u,var,wbr,area,audio,map,track,video,embed,object,param,source,canvas,script,noscript,del,ins,caption,col,colgroup,table,thead,tbody,td,th,tr,button,datalist,fieldset,form,input,label,legend,meter,optgroup,option,output,progress,select,textarea,details,dialog,menu,summary,template,blockquote,iframe,tfoot\";\nconst SVG_TAGS = \"svg,animate,animateMotion,animateTransform,circle,clipPath,color-profile,defs,desc,discard,ellipse,feBlend,feColorMatrix,feComponentTransfer,feComposite,feConvolveMatrix,feDiffuseLighting,feDisplacementMap,feDistantLight,feDropShadow,feFlood,feFuncA,feFuncB,feFuncG,feFuncR,feGaussianBlur,feImage,feMerge,feMergeNode,feMorphology,feOffset,fePointLight,feSpecularLighting,feSpotLight,feTile,feTurbulence,filter,foreignObject,g,hatch,hatchpath,image,line,linearGradient,marker,mask,mesh,meshgradient,meshpatch,meshrow,metadata,mpath,path,pattern,polygon,polyline,radialGradient,rect,set,solidcolor,stop,switch,symbol,text,textPath,title,tspan,unknown,use,view\";\nconst MATH_TAGS = \"annotation,annotation-xml,maction,maligngroup,malignmark,math,menclose,merror,mfenced,mfrac,mfraction,mglyph,mi,mlabeledtr,mlongdiv,mmultiscripts,mn,mo,mover,mpadded,mphantom,mprescripts,mroot,mrow,ms,mscarries,mscarry,msgroup,msline,mspace,msqrt,msrow,mstack,mstyle,msub,msubsup,msup,mtable,mtd,mtext,mtr,munder,munderover,none,semantics\";\nconst VOID_TAGS = \"area,base,br,col,embed,hr,img,input,link,meta,param,source,track,wbr\";\nconst isHTMLTag = /* @__PURE__ */ makeMap(HTML_TAGS);\nconst isSVGTag = /* @__PURE__ */ makeMap(SVG_TAGS);\nconst isMathMLTag = /* @__PURE__ */ makeMap(MATH_TAGS);\nconst isVoidTag = /* @__PURE__ */ makeMap(VOID_TAGS);\n\nconst specialBooleanAttrs = `itemscope,allowfullscreen,formnovalidate,ismap,nomodule,novalidate,readonly`;\nconst isSpecialBooleanAttr = /* @__PURE__ */ makeMap(specialBooleanAttrs);\nconst isBooleanAttr = /* @__PURE__ */ makeMap(\n specialBooleanAttrs + `,async,autofocus,autoplay,controls,default,defer,disabled,hidden,inert,loop,open,required,reversed,scoped,seamless,checked,muted,multiple,selected`\n);\nfunction includeBooleanAttr(value) {\n return !!value || value === \"\";\n}\nconst unsafeAttrCharRE = /[>/=\"'\\u0009\\u000a\\u000c\\u0020]/;\nconst attrValidationCache = {};\nfunction isSSRSafeAttrName(name) {\n if (attrValidationCache.hasOwnProperty(name)) {\n return attrValidationCache[name];\n }\n const isUnsafe = unsafeAttrCharRE.test(name);\n if (isUnsafe) {\n console.error(`unsafe attribute name: ${name}`);\n }\n return attrValidationCache[name] = !isUnsafe;\n}\nconst propsToAttrMap = {\n acceptCharset: \"accept-charset\",\n className: \"class\",\n htmlFor: \"for\",\n httpEquiv: \"http-equiv\"\n};\nconst isKnownHtmlAttr = /* @__PURE__ */ makeMap(\n `accept,accept-charset,accesskey,action,align,allow,alt,async,autocapitalize,autocomplete,autofocus,autoplay,background,bgcolor,border,buffered,capture,challenge,charset,checked,cite,class,code,codebase,color,cols,colspan,content,contenteditable,contextmenu,controls,coords,crossorigin,csp,data,datetime,decoding,default,defer,dir,dirname,disabled,download,draggable,dropzone,enctype,enterkeyhint,for,form,formaction,formenctype,formmethod,formnovalidate,formtarget,headers,height,hidden,high,href,hreflang,http-equiv,icon,id,importance,inert,integrity,ismap,itemprop,keytype,kind,label,lang,language,loading,list,loop,low,manifest,max,maxlength,minlength,media,min,multiple,muted,name,novalidate,open,optimum,pattern,ping,placeholder,poster,preload,radiogroup,readonly,referrerpolicy,rel,required,reversed,rows,rowspan,sandbox,scope,scoped,selected,shape,size,sizes,slot,span,spellcheck,src,srcdoc,srclang,srcset,start,step,style,summary,tabindex,target,title,translate,type,usemap,value,width,wrap`\n);\nconst isKnownSvgAttr = /* @__PURE__ */ makeMap(\n `xmlns,accent-height,accumulate,additive,alignment-baseline,alphabetic,amplitude,arabic-form,ascent,attributeName,attributeType,azimuth,baseFrequency,baseline-shift,baseProfile,bbox,begin,bias,by,calcMode,cap-height,class,clip,clipPathUnits,clip-path,clip-rule,color,color-interpolation,color-interpolation-filters,color-profile,color-rendering,contentScriptType,contentStyleType,crossorigin,cursor,cx,cy,d,decelerate,descent,diffuseConstant,direction,display,divisor,dominant-baseline,dur,dx,dy,edgeMode,elevation,enable-background,end,exponent,fill,fill-opacity,fill-rule,filter,filterRes,filterUnits,flood-color,flood-opacity,font-family,font-size,font-size-adjust,font-stretch,font-style,font-variant,font-weight,format,from,fr,fx,fy,g1,g2,glyph-name,glyph-orientation-horizontal,glyph-orientation-vertical,glyphRef,gradientTransform,gradientUnits,hanging,height,href,hreflang,horiz-adv-x,horiz-origin-x,id,ideographic,image-rendering,in,in2,intercept,k,k1,k2,k3,k4,kernelMatrix,kernelUnitLength,kerning,keyPoints,keySplines,keyTimes,lang,lengthAdjust,letter-spacing,lighting-color,limitingConeAngle,local,marker-end,marker-mid,marker-start,markerHeight,markerUnits,markerWidth,mask,maskContentUnits,maskUnits,mathematical,max,media,method,min,mode,name,numOctaves,offset,opacity,operator,order,orient,orientation,origin,overflow,overline-position,overline-thickness,panose-1,paint-order,path,pathLength,patternContentUnits,patternTransform,patternUnits,ping,pointer-events,points,pointsAtX,pointsAtY,pointsAtZ,preserveAlpha,preserveAspectRatio,primitiveUnits,r,radius,referrerPolicy,refX,refY,rel,rendering-intent,repeatCount,repeatDur,requiredExtensions,requiredFeatures,restart,result,rotate,rx,ry,scale,seed,shape-rendering,slope,spacing,specularConstant,specularExponent,speed,spreadMethod,startOffset,stdDeviation,stemh,stemv,stitchTiles,stop-color,stop-opacity,strikethrough-position,strikethrough-thickness,string,stroke,stroke-dasharray,stroke-dashoffset,stroke-linecap,stroke-linejoin,stroke-miterlimit,stroke-opacity,stroke-width,style,surfaceScale,systemLanguage,tabindex,tableValues,target,targetX,targetY,text-anchor,text-decoration,text-rendering,textLength,to,transform,transform-origin,type,u1,u2,underline-position,underline-thickness,unicode,unicode-bidi,unicode-range,units-per-em,v-alphabetic,v-hanging,v-ideographic,v-mathematical,values,vector-effect,version,vert-adv-y,vert-origin-x,vert-origin-y,viewBox,viewTarget,visibility,width,widths,word-spacing,writing-mode,x,x-height,x1,x2,xChannelSelector,xlink:actuate,xlink:arcrole,xlink:href,xlink:role,xlink:show,xlink:title,xlink:type,xmlns:xlink,xml:base,xml:lang,xml:space,y,y1,y2,yChannelSelector,z,zoomAndPan`\n);\nfunction isRenderableAttrValue(value) {\n if (value == null) {\n return false;\n }\n const type = typeof value;\n return type === \"string\" || type === \"number\" || type === \"boolean\";\n}\n\nconst escapeRE = /[\"'&<>]/;\nfunction escapeHtml(string) {\n const str = \"\" + string;\n const match = escapeRE.exec(str);\n if (!match) {\n return str;\n }\n let html = \"\";\n let escaped;\n let index;\n let lastIndex = 0;\n for (index = match.index; index < str.length; index++) {\n switch (str.charCodeAt(index)) {\n case 34:\n escaped = \""\";\n break;\n case 38:\n escaped = \"&\";\n break;\n case 39:\n escaped = \"'\";\n break;\n case 60:\n escaped = \"<\";\n break;\n case 62:\n escaped = \">\";\n break;\n default:\n continue;\n }\n if (lastIndex !== index) {\n html += str.slice(lastIndex, index);\n }\n lastIndex = index + 1;\n html += escaped;\n }\n return lastIndex !== index ? html + str.slice(lastIndex, index) : html;\n}\nconst commentStripRE = /^-?>||--!>| looseEqual(item, val));\n}\n\nconst toDisplayString = (val) => {\n return isString(val) ? val : val == null ? \"\" : isArray(val) || isObject(val) && (val.toString === objectToString || !isFunction(val.toString)) ? JSON.stringify(val, replacer, 2) : String(val);\n};\nconst replacer = (_key, val) => {\n if (val && val.__v_isRef) {\n return replacer(_key, val.value);\n } else if (isMap(val)) {\n return {\n [`Map(${val.size})`]: [...val.entries()].reduce(\n (entries, [key, val2], i) => {\n entries[stringifySymbol(key, i) + \" =>\"] = val2;\n return entries;\n },\n {}\n )\n };\n } else if (isSet(val)) {\n return {\n [`Set(${val.size})`]: [...val.values()].map((v) => stringifySymbol(v))\n };\n } else if (isSymbol(val)) {\n return stringifySymbol(val);\n } else if (isObject(val) && !isArray(val) && !isPlainObject(val)) {\n return String(val);\n }\n return val;\n};\nconst stringifySymbol = (v, i = \"\") => {\n var _a;\n return (\n // Symbol.description in es2019+ so we need to cast here to pass\n // the lib: es2016 check\n isSymbol(v) ? `Symbol(${(_a = v.description) != null ? _a : i})` : v\n );\n};\n\nexport { EMPTY_ARR, EMPTY_OBJ, NO, NOOP, PatchFlagNames, PatchFlags, ShapeFlags, SlotFlags, camelize, capitalize, def, escapeHtml, escapeHtmlComment, extend, genPropsAccessExp, generateCodeFrame, getGlobalThis, hasChanged, hasOwn, hyphenate, includeBooleanAttr, invokeArrayFns, isArray, isBooleanAttr, isBuiltInDirective, isDate, isFunction, isGloballyAllowed, isGloballyWhitelisted, isHTMLTag, isIntegerKey, isKnownHtmlAttr, isKnownSvgAttr, isMap, isMathMLTag, isModelListener, isObject, isOn, isPlainObject, isPromise, isRegExp, isRenderableAttrValue, isReservedProp, isSSRSafeAttrName, isSVGTag, isSet, isSpecialBooleanAttr, isString, isSymbol, isVoidTag, looseEqual, looseIndexOf, looseToNumber, makeMap, normalizeClass, normalizeProps, normalizeStyle, objectToString, parseStringStyle, propsToAttrMap, remove, slotFlagsText, stringifyStyle, toDisplayString, toHandlerKey, toNumber, toRawType, toTypeString };\n","/**\n* @vue/reactivity v3.4.29\n* (c) 2018-present Yuxi (Evan) You and Vue contributors\n* @license MIT\n**/\nimport { NOOP, extend, isArray, isSymbol, isMap, isIntegerKey, hasOwn, hasChanged, isObject, makeMap, capitalize, toRawType, def, isFunction } from '@vue/shared';\n\nfunction warn(msg, ...args) {\n console.warn(`[Vue warn] ${msg}`, ...args);\n}\n\nlet activeEffectScope;\nclass EffectScope {\n constructor(detached = false) {\n this.detached = detached;\n /**\n * @internal\n */\n this._active = true;\n /**\n * @internal\n */\n this.effects = [];\n /**\n * @internal\n */\n this.cleanups = [];\n this.parent = activeEffectScope;\n if (!detached && activeEffectScope) {\n this.index = (activeEffectScope.scopes || (activeEffectScope.scopes = [])).push(\n this\n ) - 1;\n }\n }\n get active() {\n return this._active;\n }\n run(fn) {\n if (this._active) {\n const currentEffectScope = activeEffectScope;\n try {\n activeEffectScope = this;\n return fn();\n } finally {\n activeEffectScope = currentEffectScope;\n }\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n warn(`cannot run an inactive effect scope.`);\n }\n }\n /**\n * This should only be called on non-detached scopes\n * @internal\n */\n on() {\n activeEffectScope = this;\n }\n /**\n * This should only be called on non-detached scopes\n * @internal\n */\n off() {\n activeEffectScope = this.parent;\n }\n stop(fromParent) {\n if (this._active) {\n let i, l;\n for (i = 0, l = this.effects.length; i < l; i++) {\n this.effects[i].stop();\n }\n for (i = 0, l = this.cleanups.length; i < l; i++) {\n this.cleanups[i]();\n }\n if (this.scopes) {\n for (i = 0, l = this.scopes.length; i < l; i++) {\n this.scopes[i].stop(true);\n }\n }\n if (!this.detached && this.parent && !fromParent) {\n const last = this.parent.scopes.pop();\n if (last && last !== this) {\n this.parent.scopes[this.index] = last;\n last.index = this.index;\n }\n }\n this.parent = void 0;\n this._active = false;\n }\n }\n}\nfunction effectScope(detached) {\n return new EffectScope(detached);\n}\nfunction recordEffectScope(effect, scope = activeEffectScope) {\n if (scope && scope.active) {\n scope.effects.push(effect);\n }\n}\nfunction getCurrentScope() {\n return activeEffectScope;\n}\nfunction onScopeDispose(fn) {\n if (activeEffectScope) {\n activeEffectScope.cleanups.push(fn);\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n warn(\n `onScopeDispose() is called when there is no active effect scope to be associated with.`\n );\n }\n}\n\nlet activeEffect;\nclass ReactiveEffect {\n constructor(fn, trigger, scheduler, scope) {\n this.fn = fn;\n this.trigger = trigger;\n this.scheduler = scheduler;\n this.active = true;\n this.deps = [];\n /**\n * @internal\n */\n this._dirtyLevel = 5;\n /**\n * @internal\n */\n this._trackId = 0;\n /**\n * @internal\n */\n this._runnings = 0;\n /**\n * @internal\n */\n this._shouldSchedule = false;\n /**\n * @internal\n */\n this._depsLength = 0;\n recordEffectScope(this, scope);\n }\n get dirty() {\n if (this._dirtyLevel === 2)\n return false;\n if (this._dirtyLevel === 3 || this._dirtyLevel === 4) {\n this._dirtyLevel = 1;\n pauseTracking();\n for (let i = 0; i < this._depsLength; i++) {\n const dep = this.deps[i];\n if (dep.computed) {\n if (dep.computed.effect._dirtyLevel === 2)\n return true;\n triggerComputed(dep.computed);\n if (this._dirtyLevel >= 5) {\n break;\n }\n }\n }\n if (this._dirtyLevel === 1) {\n this._dirtyLevel = 0;\n }\n resetTracking();\n }\n return this._dirtyLevel >= 5;\n }\n set dirty(v) {\n this._dirtyLevel = v ? 5 : 0;\n }\n run() {\n this._dirtyLevel = 0;\n if (!this.active) {\n return this.fn();\n }\n let lastShouldTrack = shouldTrack;\n let lastEffect = activeEffect;\n try {\n shouldTrack = true;\n activeEffect = this;\n this._runnings++;\n preCleanupEffect(this);\n return this.fn();\n } finally {\n postCleanupEffect(this);\n this._runnings--;\n activeEffect = lastEffect;\n shouldTrack = lastShouldTrack;\n }\n }\n stop() {\n if (this.active) {\n preCleanupEffect(this);\n postCleanupEffect(this);\n this.onStop && this.onStop();\n this.active = false;\n }\n }\n}\nfunction triggerComputed(computed) {\n return computed.value;\n}\nfunction preCleanupEffect(effect2) {\n effect2._trackId++;\n effect2._depsLength = 0;\n}\nfunction postCleanupEffect(effect2) {\n if (effect2.deps.length > effect2._depsLength) {\n for (let i = effect2._depsLength; i < effect2.deps.length; i++) {\n cleanupDepEffect(effect2.deps[i], effect2);\n }\n effect2.deps.length = effect2._depsLength;\n }\n}\nfunction cleanupDepEffect(dep, effect2) {\n const trackId = dep.get(effect2);\n if (trackId !== void 0 && effect2._trackId !== trackId) {\n dep.delete(effect2);\n if (dep.size === 0) {\n dep.cleanup();\n }\n }\n}\nfunction effect(fn, options) {\n if (fn.effect instanceof ReactiveEffect) {\n fn = fn.effect.fn;\n }\n const _effect = new ReactiveEffect(fn, NOOP, () => {\n if (_effect.dirty) {\n _effect.run();\n }\n });\n if (options) {\n extend(_effect, options);\n if (options.scope) recordEffectScope(_effect, options.scope);\n }\n if (!options || !options.lazy) {\n _effect.run();\n }\n const runner = _effect.run.bind(_effect);\n runner.effect = _effect;\n return runner;\n}\nfunction stop(runner) {\n runner.effect.stop();\n}\nlet shouldTrack = true;\nlet pauseScheduleStack = 0;\nconst trackStack = [];\nfunction pauseTracking() {\n trackStack.push(shouldTrack);\n shouldTrack = false;\n}\nfunction enableTracking() {\n trackStack.push(shouldTrack);\n shouldTrack = true;\n}\nfunction resetTracking() {\n const last = trackStack.pop();\n shouldTrack = last === void 0 ? true : last;\n}\nfunction pauseScheduling() {\n pauseScheduleStack++;\n}\nfunction resetScheduling() {\n pauseScheduleStack--;\n while (!pauseScheduleStack && queueEffectSchedulers.length) {\n queueEffectSchedulers.shift()();\n }\n}\nfunction trackEffect(effect2, dep, debuggerEventExtraInfo) {\n var _a;\n if (dep.get(effect2) !== effect2._trackId) {\n dep.set(effect2, effect2._trackId);\n const oldDep = effect2.deps[effect2._depsLength];\n if (oldDep !== dep) {\n if (oldDep) {\n cleanupDepEffect(oldDep, effect2);\n }\n effect2.deps[effect2._depsLength++] = dep;\n } else {\n effect2._depsLength++;\n }\n if (!!(process.env.NODE_ENV !== \"production\")) {\n (_a = effect2.onTrack) == null ? void 0 : _a.call(effect2, extend({ effect: effect2 }, debuggerEventExtraInfo));\n }\n }\n}\nconst queueEffectSchedulers = [];\nfunction triggerEffects(dep, dirtyLevel, debuggerEventExtraInfo) {\n var _a;\n pauseScheduling();\n for (const effect2 of dep.keys()) {\n if (!dep.computed && effect2.computed) {\n if (dep.get(effect2) === effect2._trackId && effect2._runnings > 0) {\n effect2._dirtyLevel = 2;\n continue;\n }\n }\n let tracking;\n if (effect2._dirtyLevel < dirtyLevel && (tracking != null ? tracking : tracking = dep.get(effect2) === effect2._trackId)) {\n effect2._shouldSchedule || (effect2._shouldSchedule = effect2._dirtyLevel === 0);\n if (effect2.computed && effect2._dirtyLevel === 2) {\n effect2._shouldSchedule = true;\n }\n effect2._dirtyLevel = dirtyLevel;\n }\n if (effect2._shouldSchedule && (tracking != null ? tracking : tracking = dep.get(effect2) === effect2._trackId)) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n (_a = effect2.onTrigger) == null ? void 0 : _a.call(effect2, extend({ effect: effect2 }, debuggerEventExtraInfo));\n }\n effect2.trigger();\n if ((!effect2._runnings || effect2.allowRecurse) && effect2._dirtyLevel !== 3) {\n effect2._shouldSchedule = false;\n if (effect2.scheduler) {\n queueEffectSchedulers.push(effect2.scheduler);\n }\n }\n }\n }\n resetScheduling();\n}\n\nconst createDep = (cleanup, computed) => {\n const dep = /* @__PURE__ */ new Map();\n dep.cleanup = cleanup;\n dep.computed = computed;\n return dep;\n};\n\nconst targetMap = /* @__PURE__ */ new WeakMap();\nconst ITERATE_KEY = Symbol(!!(process.env.NODE_ENV !== \"production\") ? \"iterate\" : \"\");\nconst MAP_KEY_ITERATE_KEY = Symbol(!!(process.env.NODE_ENV !== \"production\") ? \"Map key iterate\" : \"\");\nfunction track(target, type, key) {\n if (shouldTrack && activeEffect) {\n let depsMap = targetMap.get(target);\n if (!depsMap) {\n targetMap.set(target, depsMap = /* @__PURE__ */ new Map());\n }\n let dep = depsMap.get(key);\n if (!dep) {\n depsMap.set(key, dep = createDep(() => depsMap.delete(key)));\n }\n trackEffect(\n activeEffect,\n dep,\n !!(process.env.NODE_ENV !== \"production\") ? {\n target,\n type,\n key\n } : void 0\n );\n }\n}\nfunction trigger(target, type, key, newValue, oldValue, oldTarget) {\n const depsMap = targetMap.get(target);\n if (!depsMap) {\n return;\n }\n let deps = [];\n if (type === \"clear\") {\n deps = [...depsMap.values()];\n } else if (key === \"length\" && isArray(target)) {\n const newLength = Number(newValue);\n depsMap.forEach((dep, key2) => {\n if (key2 === \"length\" || !isSymbol(key2) && key2 >= newLength) {\n deps.push(dep);\n }\n });\n } else {\n if (key !== void 0) {\n deps.push(depsMap.get(key));\n }\n switch (type) {\n case \"add\":\n if (!isArray(target)) {\n deps.push(depsMap.get(ITERATE_KEY));\n if (isMap(target)) {\n deps.push(depsMap.get(MAP_KEY_ITERATE_KEY));\n }\n } else if (isIntegerKey(key)) {\n deps.push(depsMap.get(\"length\"));\n }\n break;\n case \"delete\":\n if (!isArray(target)) {\n deps.push(depsMap.get(ITERATE_KEY));\n if (isMap(target)) {\n deps.push(depsMap.get(MAP_KEY_ITERATE_KEY));\n }\n }\n break;\n case \"set\":\n if (isMap(target)) {\n deps.push(depsMap.get(ITERATE_KEY));\n }\n break;\n }\n }\n pauseScheduling();\n for (const dep of deps) {\n if (dep) {\n triggerEffects(\n dep,\n 5,\n !!(process.env.NODE_ENV !== \"production\") ? {\n target,\n type,\n key,\n newValue,\n oldValue,\n oldTarget\n } : void 0\n );\n }\n }\n resetScheduling();\n}\nfunction getDepFromReactive(object, key) {\n const depsMap = targetMap.get(object);\n return depsMap && depsMap.get(key);\n}\n\nconst isNonTrackableKeys = /* @__PURE__ */ makeMap(`__proto__,__v_isRef,__isVue`);\nconst builtInSymbols = new Set(\n /* @__PURE__ */ Object.getOwnPropertyNames(Symbol).filter((key) => key !== \"arguments\" && key !== \"caller\").map((key) => Symbol[key]).filter(isSymbol)\n);\nconst arrayInstrumentations = /* @__PURE__ */ createArrayInstrumentations();\nfunction createArrayInstrumentations() {\n const instrumentations = {};\n [\"includes\", \"indexOf\", \"lastIndexOf\"].forEach((key) => {\n instrumentations[key] = function(...args) {\n const arr = toRaw(this);\n for (let i = 0, l = this.length; i < l; i++) {\n track(arr, \"get\", i + \"\");\n }\n const res = arr[key](...args);\n if (res === -1 || res === false) {\n return arr[key](...args.map(toRaw));\n } else {\n return res;\n }\n };\n });\n [\"push\", \"pop\", \"shift\", \"unshift\", \"splice\"].forEach((key) => {\n instrumentations[key] = function(...args) {\n pauseTracking();\n pauseScheduling();\n const res = toRaw(this)[key].apply(this, args);\n resetScheduling();\n resetTracking();\n return res;\n };\n });\n return instrumentations;\n}\nfunction hasOwnProperty(key) {\n if (!isSymbol(key)) key = String(key);\n const obj = toRaw(this);\n track(obj, \"has\", key);\n return obj.hasOwnProperty(key);\n}\nclass BaseReactiveHandler {\n constructor(_isReadonly = false, _isShallow = false) {\n this._isReadonly = _isReadonly;\n this._isShallow = _isShallow;\n }\n get(target, key, receiver) {\n const isReadonly2 = this._isReadonly, isShallow2 = this._isShallow;\n if (key === \"__v_isReactive\") {\n return !isReadonly2;\n } else if (key === \"__v_isReadonly\") {\n return isReadonly2;\n } else if (key === \"__v_isShallow\") {\n return isShallow2;\n } else if (key === \"__v_raw\") {\n if (receiver === (isReadonly2 ? isShallow2 ? shallowReadonlyMap : readonlyMap : isShallow2 ? shallowReactiveMap : reactiveMap).get(target) || // receiver is not the reactive proxy, but has the same prototype\n // this means the reciever is a user proxy of the reactive proxy\n Object.getPrototypeOf(target) === Object.getPrototypeOf(receiver)) {\n return target;\n }\n return;\n }\n const targetIsArray = isArray(target);\n if (!isReadonly2) {\n if (targetIsArray && hasOwn(arrayInstrumentations, key)) {\n return Reflect.get(arrayInstrumentations, key, receiver);\n }\n if (key === \"hasOwnProperty\") {\n return hasOwnProperty;\n }\n }\n const res = Reflect.get(target, key, receiver);\n if (isSymbol(key) ? builtInSymbols.has(key) : isNonTrackableKeys(key)) {\n return res;\n }\n if (!isReadonly2) {\n track(target, \"get\", key);\n }\n if (isShallow2) {\n return res;\n }\n if (isRef(res)) {\n return targetIsArray && isIntegerKey(key) ? res : res.value;\n }\n if (isObject(res)) {\n return isReadonly2 ? readonly(res) : reactive(res);\n }\n return res;\n }\n}\nclass MutableReactiveHandler extends BaseReactiveHandler {\n constructor(isShallow2 = false) {\n super(false, isShallow2);\n }\n set(target, key, value, receiver) {\n let oldValue = target[key];\n if (!this._isShallow) {\n const isOldValueReadonly = isReadonly(oldValue);\n if (!isShallow(value) && !isReadonly(value)) {\n oldValue = toRaw(oldValue);\n value = toRaw(value);\n }\n if (!isArray(target) && isRef(oldValue) && !isRef(value)) {\n if (isOldValueReadonly) {\n return false;\n } else {\n oldValue.value = value;\n return true;\n }\n }\n }\n const hadKey = isArray(target) && isIntegerKey(key) ? Number(key) < target.length : hasOwn(target, key);\n const result = Reflect.set(target, key, value, receiver);\n if (target === toRaw(receiver)) {\n if (!hadKey) {\n trigger(target, \"add\", key, value);\n } else if (hasChanged(value, oldValue)) {\n trigger(target, \"set\", key, value, oldValue);\n }\n }\n return result;\n }\n deleteProperty(target, key) {\n const hadKey = hasOwn(target, key);\n const oldValue = target[key];\n const result = Reflect.deleteProperty(target, key);\n if (result && hadKey) {\n trigger(target, \"delete\", key, void 0, oldValue);\n }\n return result;\n }\n has(target, key) {\n const result = Reflect.has(target, key);\n if (!isSymbol(key) || !builtInSymbols.has(key)) {\n track(target, \"has\", key);\n }\n return result;\n }\n ownKeys(target) {\n track(\n target,\n \"iterate\",\n isArray(target) ? \"length\" : ITERATE_KEY\n );\n return Reflect.ownKeys(target);\n }\n}\nclass ReadonlyReactiveHandler extends BaseReactiveHandler {\n constructor(isShallow2 = false) {\n super(true, isShallow2);\n }\n set(target, key) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n warn(\n `Set operation on key \"${String(key)}\" failed: target is readonly.`,\n target\n );\n }\n return true;\n }\n deleteProperty(target, key) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n warn(\n `Delete operation on key \"${String(key)}\" failed: target is readonly.`,\n target\n );\n }\n return true;\n }\n}\nconst mutableHandlers = /* @__PURE__ */ new MutableReactiveHandler();\nconst readonlyHandlers = /* @__PURE__ */ new ReadonlyReactiveHandler();\nconst shallowReactiveHandlers = /* @__PURE__ */ new MutableReactiveHandler(\n true\n);\nconst shallowReadonlyHandlers = /* @__PURE__ */ new ReadonlyReactiveHandler(true);\n\nconst toShallow = (value) => value;\nconst getProto = (v) => Reflect.getPrototypeOf(v);\nfunction get(target, key, isReadonly = false, isShallow = false) {\n target = target[\"__v_raw\"];\n const rawTarget = toRaw(target);\n const rawKey = toRaw(key);\n if (!isReadonly) {\n if (hasChanged(key, rawKey)) {\n track(rawTarget, \"get\", key);\n }\n track(rawTarget, \"get\", rawKey);\n }\n const { has: has2 } = getProto(rawTarget);\n const wrap = isShallow ? toShallow : isReadonly ? toReadonly : toReactive;\n if (has2.call(rawTarget, key)) {\n return wrap(target.get(key));\n } else if (has2.call(rawTarget, rawKey)) {\n return wrap(target.get(rawKey));\n } else if (target !== rawTarget) {\n target.get(key);\n }\n}\nfunction has(key, isReadonly = false) {\n const target = this[\"__v_raw\"];\n const rawTarget = toRaw(target);\n const rawKey = toRaw(key);\n if (!isReadonly) {\n if (hasChanged(key, rawKey)) {\n track(rawTarget, \"has\", key);\n }\n track(rawTarget, \"has\", rawKey);\n }\n return key === rawKey ? target.has(key) : target.has(key) || target.has(rawKey);\n}\nfunction size(target, isReadonly = false) {\n target = target[\"__v_raw\"];\n !isReadonly && track(toRaw(target), \"iterate\", ITERATE_KEY);\n return Reflect.get(target, \"size\", target);\n}\nfunction add(value) {\n value = toRaw(value);\n const target = toRaw(this);\n const proto = getProto(target);\n const hadKey = proto.has.call(target, value);\n if (!hadKey) {\n target.add(value);\n trigger(target, \"add\", value, value);\n }\n return this;\n}\nfunction set(key, value) {\n value = toRaw(value);\n const target = toRaw(this);\n const { has: has2, get: get2 } = getProto(target);\n let hadKey = has2.call(target, key);\n if (!hadKey) {\n key = toRaw(key);\n hadKey = has2.call(target, key);\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n checkIdentityKeys(target, has2, key);\n }\n const oldValue = get2.call(target, key);\n target.set(key, value);\n if (!hadKey) {\n trigger(target, \"add\", key, value);\n } else if (hasChanged(value, oldValue)) {\n trigger(target, \"set\", key, value, oldValue);\n }\n return this;\n}\nfunction deleteEntry(key) {\n const target = toRaw(this);\n const { has: has2, get: get2 } = getProto(target);\n let hadKey = has2.call(target, key);\n if (!hadKey) {\n key = toRaw(key);\n hadKey = has2.call(target, key);\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n checkIdentityKeys(target, has2, key);\n }\n const oldValue = get2 ? get2.call(target, key) : void 0;\n const result = target.delete(key);\n if (hadKey) {\n trigger(target, \"delete\", key, void 0, oldValue);\n }\n return result;\n}\nfunction clear() {\n const target = toRaw(this);\n const hadItems = target.size !== 0;\n const oldTarget = !!(process.env.NODE_ENV !== \"production\") ? isMap(target) ? new Map(target) : new Set(target) : void 0;\n const result = target.clear();\n if (hadItems) {\n trigger(target, \"clear\", void 0, void 0, oldTarget);\n }\n return result;\n}\nfunction createForEach(isReadonly, isShallow) {\n return function forEach(callback, thisArg) {\n const observed = this;\n const target = observed[\"__v_raw\"];\n const rawTarget = toRaw(target);\n const wrap = isShallow ? toShallow : isReadonly ? toReadonly : toReactive;\n !isReadonly && track(rawTarget, \"iterate\", ITERATE_KEY);\n return target.forEach((value, key) => {\n return callback.call(thisArg, wrap(value), wrap(key), observed);\n });\n };\n}\nfunction createIterableMethod(method, isReadonly, isShallow) {\n return function(...args) {\n const target = this[\"__v_raw\"];\n const rawTarget = toRaw(target);\n const targetIsMap = isMap(rawTarget);\n const isPair = method === \"entries\" || method === Symbol.iterator && targetIsMap;\n const isKeyOnly = method === \"keys\" && targetIsMap;\n const innerIterator = target[method](...args);\n const wrap = isShallow ? toShallow : isReadonly ? toReadonly : toReactive;\n !isReadonly && track(\n rawTarget,\n \"iterate\",\n isKeyOnly ? MAP_KEY_ITERATE_KEY : ITERATE_KEY\n );\n return {\n // iterator protocol\n next() {\n const { value, done } = innerIterator.next();\n return done ? { value, done } : {\n value: isPair ? [wrap(value[0]), wrap(value[1])] : wrap(value),\n done\n };\n },\n // iterable protocol\n [Symbol.iterator]() {\n return this;\n }\n };\n };\n}\nfunction createReadonlyMethod(type) {\n return function(...args) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n const key = args[0] ? `on key \"${args[0]}\" ` : ``;\n warn(\n `${capitalize(type)} operation ${key}failed: target is readonly.`,\n toRaw(this)\n );\n }\n return type === \"delete\" ? false : type === \"clear\" ? void 0 : this;\n };\n}\nfunction createInstrumentations() {\n const mutableInstrumentations2 = {\n get(key) {\n return get(this, key);\n },\n get size() {\n return size(this);\n },\n has,\n add,\n set,\n delete: deleteEntry,\n clear,\n forEach: createForEach(false, false)\n };\n const shallowInstrumentations2 = {\n get(key) {\n return get(this, key, false, true);\n },\n get size() {\n return size(this);\n },\n has,\n add,\n set,\n delete: deleteEntry,\n clear,\n forEach: createForEach(false, true)\n };\n const readonlyInstrumentations2 = {\n get(key) {\n return get(this, key, true);\n },\n get size() {\n return size(this, true);\n },\n has(key) {\n return has.call(this, key, true);\n },\n add: createReadonlyMethod(\"add\"),\n set: createReadonlyMethod(\"set\"),\n delete: createReadonlyMethod(\"delete\"),\n clear: createReadonlyMethod(\"clear\"),\n forEach: createForEach(true, false)\n };\n const shallowReadonlyInstrumentations2 = {\n get(key) {\n return get(this, key, true, true);\n },\n get size() {\n return size(this, true);\n },\n has(key) {\n return has.call(this, key, true);\n },\n add: createReadonlyMethod(\"add\"),\n set: createReadonlyMethod(\"set\"),\n delete: createReadonlyMethod(\"delete\"),\n clear: createReadonlyMethod(\"clear\"),\n forEach: createForEach(true, true)\n };\n const iteratorMethods = [\n \"keys\",\n \"values\",\n \"entries\",\n Symbol.iterator\n ];\n iteratorMethods.forEach((method) => {\n mutableInstrumentations2[method] = createIterableMethod(method, false, false);\n readonlyInstrumentations2[method] = createIterableMethod(method, true, false);\n shallowInstrumentations2[method] = createIterableMethod(method, false, true);\n shallowReadonlyInstrumentations2[method] = createIterableMethod(\n method,\n true,\n true\n );\n });\n return [\n mutableInstrumentations2,\n readonlyInstrumentations2,\n shallowInstrumentations2,\n shallowReadonlyInstrumentations2\n ];\n}\nconst [\n mutableInstrumentations,\n readonlyInstrumentations,\n shallowInstrumentations,\n shallowReadonlyInstrumentations\n] = /* @__PURE__ */ createInstrumentations();\nfunction createInstrumentationGetter(isReadonly, shallow) {\n const instrumentations = shallow ? isReadonly ? shallowReadonlyInstrumentations : shallowInstrumentations : isReadonly ? readonlyInstrumentations : mutableInstrumentations;\n return (target, key, receiver) => {\n if (key === \"__v_isReactive\") {\n return !isReadonly;\n } else if (key === \"__v_isReadonly\") {\n return isReadonly;\n } else if (key === \"__v_raw\") {\n return target;\n }\n return Reflect.get(\n hasOwn(instrumentations, key) && key in target ? instrumentations : target,\n key,\n receiver\n );\n };\n}\nconst mutableCollectionHandlers = {\n get: /* @__PURE__ */ createInstrumentationGetter(false, false)\n};\nconst shallowCollectionHandlers = {\n get: /* @__PURE__ */ createInstrumentationGetter(false, true)\n};\nconst readonlyCollectionHandlers = {\n get: /* @__PURE__ */ createInstrumentationGetter(true, false)\n};\nconst shallowReadonlyCollectionHandlers = {\n get: /* @__PURE__ */ createInstrumentationGetter(true, true)\n};\nfunction checkIdentityKeys(target, has2, key) {\n const rawKey = toRaw(key);\n if (rawKey !== key && has2.call(target, rawKey)) {\n const type = toRawType(target);\n warn(\n `Reactive ${type} contains both the raw and reactive versions of the same object${type === `Map` ? ` as keys` : ``}, which can lead to inconsistencies. Avoid differentiating between the raw and reactive versions of an object and only use the reactive version if possible.`\n );\n }\n}\n\nconst reactiveMap = /* @__PURE__ */ new WeakMap();\nconst shallowReactiveMap = /* @__PURE__ */ new WeakMap();\nconst readonlyMap = /* @__PURE__ */ new WeakMap();\nconst shallowReadonlyMap = /* @__PURE__ */ new WeakMap();\nfunction targetTypeMap(rawType) {\n switch (rawType) {\n case \"Object\":\n case \"Array\":\n return 1 /* COMMON */;\n case \"Map\":\n case \"Set\":\n case \"WeakMap\":\n case \"WeakSet\":\n return 2 /* COLLECTION */;\n default:\n return 0 /* INVALID */;\n }\n}\nfunction getTargetType(value) {\n return value[\"__v_skip\"] || !Object.isExtensible(value) ? 0 /* INVALID */ : targetTypeMap(toRawType(value));\n}\nfunction reactive(target) {\n if (isReadonly(target)) {\n return target;\n }\n return createReactiveObject(\n target,\n false,\n mutableHandlers,\n mutableCollectionHandlers,\n reactiveMap\n );\n}\nfunction shallowReactive(target) {\n return createReactiveObject(\n target,\n false,\n shallowReactiveHandlers,\n shallowCollectionHandlers,\n shallowReactiveMap\n );\n}\nfunction readonly(target) {\n return createReactiveObject(\n target,\n true,\n readonlyHandlers,\n readonlyCollectionHandlers,\n readonlyMap\n );\n}\nfunction shallowReadonly(target) {\n return createReactiveObject(\n target,\n true,\n shallowReadonlyHandlers,\n shallowReadonlyCollectionHandlers,\n shallowReadonlyMap\n );\n}\nfunction createReactiveObject(target, isReadonly2, baseHandlers, collectionHandlers, proxyMap) {\n if (!isObject(target)) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n warn(\n `value cannot be made ${isReadonly2 ? \"readonly\" : \"reactive\"}: ${String(\n target\n )}`\n );\n }\n return target;\n }\n if (target[\"__v_raw\"] && !(isReadonly2 && target[\"__v_isReactive\"])) {\n return target;\n }\n const existingProxy = proxyMap.get(target);\n if (existingProxy) {\n return existingProxy;\n }\n const targetType = getTargetType(target);\n if (targetType === 0 /* INVALID */) {\n return target;\n }\n const proxy = new Proxy(\n target,\n targetType === 2 /* COLLECTION */ ? collectionHandlers : baseHandlers\n );\n proxyMap.set(target, proxy);\n return proxy;\n}\nfunction isReactive(value) {\n if (isReadonly(value)) {\n return isReactive(value[\"__v_raw\"]);\n }\n return !!(value && value[\"__v_isReactive\"]);\n}\nfunction isReadonly(value) {\n return !!(value && value[\"__v_isReadonly\"]);\n}\nfunction isShallow(value) {\n return !!(value && value[\"__v_isShallow\"]);\n}\nfunction isProxy(value) {\n return value ? !!value[\"__v_raw\"] : false;\n}\nfunction toRaw(observed) {\n const raw = observed && observed[\"__v_raw\"];\n return raw ? toRaw(raw) : observed;\n}\nfunction markRaw(value) {\n if (Object.isExtensible(value)) {\n def(value, \"__v_skip\", true);\n }\n return value;\n}\nconst toReactive = (value) => isObject(value) ? reactive(value) : value;\nconst toReadonly = (value) => isObject(value) ? readonly(value) : value;\n\nconst COMPUTED_SIDE_EFFECT_WARN = `Computed is still dirty after getter evaluation, likely because a computed is mutating its own dependency in its getter. State mutations in computed getters should be avoided. Check the docs for more details: https://vuejs.org/guide/essentials/computed.html#getters-should-be-side-effect-free`;\nclass ComputedRefImpl {\n constructor(getter, _setter, isReadonly, isSSR) {\n this.getter = getter;\n this._setter = _setter;\n this.dep = void 0;\n this.__v_isRef = true;\n this[\"__v_isReadonly\"] = false;\n this.effect = new ReactiveEffect(\n () => getter(this._value),\n () => triggerRefValue(\n this,\n this.effect._dirtyLevel === 3 ? 3 : 4\n )\n );\n this.effect.computed = this;\n this.effect.active = this._cacheable = !isSSR;\n this[\"__v_isReadonly\"] = isReadonly;\n }\n get value() {\n const self = toRaw(this);\n if ((!self._cacheable || self.effect.dirty) && hasChanged(self._value, self._value = self.effect.run())) {\n triggerRefValue(self, 5);\n }\n trackRefValue(self);\n if (self.effect._dirtyLevel >= 2) {\n if (!!(process.env.NODE_ENV !== \"production\") && this._warnRecursive) {\n warn(COMPUTED_SIDE_EFFECT_WARN, `\n\ngetter: `, this.getter);\n }\n triggerRefValue(self, 3);\n }\n return self._value;\n }\n set value(newValue) {\n this._setter(newValue);\n }\n // #region polyfill _dirty for backward compatibility third party code for Vue <= 3.3.x\n get _dirty() {\n return this.effect.dirty;\n }\n set _dirty(v) {\n this.effect.dirty = v;\n }\n // #endregion\n}\nfunction computed(getterOrOptions, debugOptions, isSSR = false) {\n let getter;\n let setter;\n const onlyGetter = isFunction(getterOrOptions);\n if (onlyGetter) {\n getter = getterOrOptions;\n setter = !!(process.env.NODE_ENV !== \"production\") ? () => {\n warn(\"Write operation failed: computed value is readonly\");\n } : NOOP;\n } else {\n getter = getterOrOptions.get;\n setter = getterOrOptions.set;\n }\n const cRef = new ComputedRefImpl(getter, setter, onlyGetter || !setter, isSSR);\n if (!!(process.env.NODE_ENV !== \"production\") && debugOptions && !isSSR) {\n cRef.effect.onTrack = debugOptions.onTrack;\n cRef.effect.onTrigger = debugOptions.onTrigger;\n }\n return cRef;\n}\n\nfunction trackRefValue(ref2) {\n var _a;\n if (shouldTrack && activeEffect) {\n ref2 = toRaw(ref2);\n trackEffect(\n activeEffect,\n (_a = ref2.dep) != null ? _a : ref2.dep = createDep(\n () => ref2.dep = void 0,\n ref2 instanceof ComputedRefImpl ? ref2 : void 0\n ),\n !!(process.env.NODE_ENV !== \"production\") ? {\n target: ref2,\n type: \"get\",\n key: \"value\"\n } : void 0\n );\n }\n}\nfunction triggerRefValue(ref2, dirtyLevel = 5, newVal, oldVal) {\n ref2 = toRaw(ref2);\n const dep = ref2.dep;\n if (dep) {\n triggerEffects(\n dep,\n dirtyLevel,\n !!(process.env.NODE_ENV !== \"production\") ? {\n target: ref2,\n type: \"set\",\n key: \"value\",\n newValue: newVal,\n oldValue: oldVal\n } : void 0\n );\n }\n}\nfunction isRef(r) {\n return !!(r && r.__v_isRef === true);\n}\nfunction ref(value) {\n return createRef(value, false);\n}\nfunction shallowRef(value) {\n return createRef(value, true);\n}\nfunction createRef(rawValue, shallow) {\n if (isRef(rawValue)) {\n return rawValue;\n }\n return new RefImpl(rawValue, shallow);\n}\nclass RefImpl {\n constructor(value, __v_isShallow) {\n this.__v_isShallow = __v_isShallow;\n this.dep = void 0;\n this.__v_isRef = true;\n this._rawValue = __v_isShallow ? value : toRaw(value);\n this._value = __v_isShallow ? value : toReactive(value);\n }\n get value() {\n trackRefValue(this);\n return this._value;\n }\n set value(newVal) {\n const useDirectValue = this.__v_isShallow || isShallow(newVal) || isReadonly(newVal);\n newVal = useDirectValue ? newVal : toRaw(newVal);\n if (hasChanged(newVal, this._rawValue)) {\n const oldVal = this._rawValue;\n this._rawValue = newVal;\n this._value = useDirectValue ? newVal : toReactive(newVal);\n triggerRefValue(this, 5, newVal, oldVal);\n }\n }\n}\nfunction triggerRef(ref2) {\n triggerRefValue(ref2, 5, !!(process.env.NODE_ENV !== \"production\") ? ref2.value : void 0);\n}\nfunction unref(ref2) {\n return isRef(ref2) ? ref2.value : ref2;\n}\nfunction toValue(source) {\n return isFunction(source) ? source() : unref(source);\n}\nconst shallowUnwrapHandlers = {\n get: (target, key, receiver) => unref(Reflect.get(target, key, receiver)),\n set: (target, key, value, receiver) => {\n const oldValue = target[key];\n if (isRef(oldValue) && !isRef(value)) {\n oldValue.value = value;\n return true;\n } else {\n return Reflect.set(target, key, value, receiver);\n }\n }\n};\nfunction proxyRefs(objectWithRefs) {\n return isReactive(objectWithRefs) ? objectWithRefs : new Proxy(objectWithRefs, shallowUnwrapHandlers);\n}\nclass CustomRefImpl {\n constructor(factory) {\n this.dep = void 0;\n this.__v_isRef = true;\n const { get, set } = factory(\n () => trackRefValue(this),\n () => triggerRefValue(this)\n );\n this._get = get;\n this._set = set;\n }\n get value() {\n return this._get();\n }\n set value(newVal) {\n this._set(newVal);\n }\n}\nfunction customRef(factory) {\n return new CustomRefImpl(factory);\n}\nfunction toRefs(object) {\n if (!!(process.env.NODE_ENV !== \"production\") && !isProxy(object)) {\n warn(`toRefs() expects a reactive object but received a plain one.`);\n }\n const ret = isArray(object) ? new Array(object.length) : {};\n for (const key in object) {\n ret[key] = propertyToRef(object, key);\n }\n return ret;\n}\nclass ObjectRefImpl {\n constructor(_object, _key, _defaultValue) {\n this._object = _object;\n this._key = _key;\n this._defaultValue = _defaultValue;\n this.__v_isRef = true;\n }\n get value() {\n const val = this._object[this._key];\n return val === void 0 ? this._defaultValue : val;\n }\n set value(newVal) {\n this._object[this._key] = newVal;\n }\n get dep() {\n return getDepFromReactive(toRaw(this._object), this._key);\n }\n}\nclass GetterRefImpl {\n constructor(_getter) {\n this._getter = _getter;\n this.__v_isRef = true;\n this.__v_isReadonly = true;\n }\n get value() {\n return this._getter();\n }\n}\nfunction toRef(source, key, defaultValue) {\n if (isRef(source)) {\n return source;\n } else if (isFunction(source)) {\n return new GetterRefImpl(source);\n } else if (isObject(source) && arguments.length > 1) {\n return propertyToRef(source, key, defaultValue);\n } else {\n return ref(source);\n }\n}\nfunction propertyToRef(source, key, defaultValue) {\n const val = source[key];\n return isRef(val) ? val : new ObjectRefImpl(source, key, defaultValue);\n}\n\nconst deferredComputed = computed;\n\nconst TrackOpTypes = {\n \"GET\": \"get\",\n \"HAS\": \"has\",\n \"ITERATE\": \"iterate\"\n};\nconst TriggerOpTypes = {\n \"SET\": \"set\",\n \"ADD\": \"add\",\n \"DELETE\": \"delete\",\n \"CLEAR\": \"clear\"\n};\nconst ReactiveFlags = {\n \"SKIP\": \"__v_skip\",\n \"IS_REACTIVE\": \"__v_isReactive\",\n \"IS_READONLY\": \"__v_isReadonly\",\n \"IS_SHALLOW\": \"__v_isShallow\",\n \"RAW\": \"__v_raw\"\n};\n\nexport { EffectScope, ITERATE_KEY, ReactiveEffect, ReactiveFlags, TrackOpTypes, TriggerOpTypes, computed, customRef, deferredComputed, effect, effectScope, enableTracking, getCurrentScope, isProxy, isReactive, isReadonly, isRef, isShallow, markRaw, onScopeDispose, pauseScheduling, pauseTracking, proxyRefs, reactive, readonly, ref, resetScheduling, resetTracking, shallowReactive, shallowReadonly, shallowRef, stop, toRaw, toRef, toRefs, toValue, track, trigger, triggerRef, unref };\n","/**\n* @vue/runtime-core v3.4.29\n* (c) 2018-present Yuxi (Evan) You and Vue contributors\n* @license MIT\n**/\nimport { pauseTracking, resetTracking, isRef, toRaw, shallowReadonly, ref, track, reactive, shallowReactive, trigger, ReactiveEffect, isShallow, isReactive, getCurrentScope, isProxy, proxyRefs, markRaw, EffectScope, computed as computed$1, customRef, isReadonly } from '@vue/reactivity';\nexport { EffectScope, ReactiveEffect, TrackOpTypes, TriggerOpTypes, customRef, effect, effectScope, getCurrentScope, isProxy, isReactive, isReadonly, isRef, isShallow, markRaw, onScopeDispose, proxyRefs, reactive, readonly, ref, shallowReactive, shallowReadonly, shallowRef, stop, toRaw, toRef, toRefs, toValue, triggerRef, unref } from '@vue/reactivity';\nimport { isString, isFunction, isPromise, isArray, NOOP, getGlobalThis, extend, EMPTY_OBJ, toHandlerKey, looseToNumber, hyphenate, camelize, isObject, isOn, hasOwn, isModelListener, capitalize, toNumber, isBuiltInDirective, isGloballyAllowed, NO, isReservedProp, EMPTY_ARR, toRawType, makeMap, def, remove, normalizeClass, stringifyStyle, normalizeStyle, isKnownSvgAttr, isBooleanAttr, isKnownHtmlAttr, includeBooleanAttr, isRenderableAttrValue, invokeArrayFns, hasChanged, isSet, isMap, isPlainObject, isRegExp } from '@vue/shared';\nexport { camelize, capitalize, normalizeClass, normalizeProps, normalizeStyle, toDisplayString, toHandlerKey } from '@vue/shared';\n\nconst stack = [];\nfunction pushWarningContext(vnode) {\n stack.push(vnode);\n}\nfunction popWarningContext() {\n stack.pop();\n}\nfunction warn$1(msg, ...args) {\n pauseTracking();\n const instance = stack.length ? stack[stack.length - 1].component : null;\n const appWarnHandler = instance && instance.appContext.config.warnHandler;\n const trace = getComponentTrace();\n if (appWarnHandler) {\n callWithErrorHandling(\n appWarnHandler,\n instance,\n 11,\n [\n // eslint-disable-next-line no-restricted-syntax\n msg + args.map((a) => {\n var _a, _b;\n return (_b = (_a = a.toString) == null ? void 0 : _a.call(a)) != null ? _b : JSON.stringify(a);\n }).join(\"\"),\n instance && instance.proxy,\n trace.map(\n ({ vnode }) => `at <${formatComponentName(instance, vnode.type)}>`\n ).join(\"\\n\"),\n trace\n ]\n );\n } else {\n const warnArgs = [`[Vue warn]: ${msg}`, ...args];\n if (trace.length && // avoid spamming console during tests\n true) {\n warnArgs.push(`\n`, ...formatTrace(trace));\n }\n console.warn(...warnArgs);\n }\n resetTracking();\n}\nfunction getComponentTrace() {\n let currentVNode = stack[stack.length - 1];\n if (!currentVNode) {\n return [];\n }\n const normalizedStack = [];\n while (currentVNode) {\n const last = normalizedStack[0];\n if (last && last.vnode === currentVNode) {\n last.recurseCount++;\n } else {\n normalizedStack.push({\n vnode: currentVNode,\n recurseCount: 0\n });\n }\n const parentInstance = currentVNode.component && currentVNode.component.parent;\n currentVNode = parentInstance && parentInstance.vnode;\n }\n return normalizedStack;\n}\nfunction formatTrace(trace) {\n const logs = [];\n trace.forEach((entry, i) => {\n logs.push(...i === 0 ? [] : [`\n`], ...formatTraceEntry(entry));\n });\n return logs;\n}\nfunction formatTraceEntry({ vnode, recurseCount }) {\n const postfix = recurseCount > 0 ? `... (${recurseCount} recursive calls)` : ``;\n const isRoot = vnode.component ? vnode.component.parent == null : false;\n const open = ` at <${formatComponentName(\n vnode.component,\n vnode.type,\n isRoot\n )}`;\n const close = `>` + postfix;\n return vnode.props ? [open, ...formatProps(vnode.props), close] : [open + close];\n}\nfunction formatProps(props) {\n const res = [];\n const keys = Object.keys(props);\n keys.slice(0, 3).forEach((key) => {\n res.push(...formatProp(key, props[key]));\n });\n if (keys.length > 3) {\n res.push(` ...`);\n }\n return res;\n}\nfunction formatProp(key, value, raw) {\n if (isString(value)) {\n value = JSON.stringify(value);\n return raw ? value : [`${key}=${value}`];\n } else if (typeof value === \"number\" || typeof value === \"boolean\" || value == null) {\n return raw ? value : [`${key}=${value}`];\n } else if (isRef(value)) {\n value = formatProp(key, toRaw(value.value), true);\n return raw ? value : [`${key}=Ref<`, value, `>`];\n } else if (isFunction(value)) {\n return [`${key}=fn${value.name ? `<${value.name}>` : ``}`];\n } else {\n value = toRaw(value);\n return raw ? value : [`${key}=`, value];\n }\n}\nfunction assertNumber(val, type) {\n if (!!!(process.env.NODE_ENV !== \"production\")) return;\n if (val === void 0) {\n return;\n } else if (typeof val !== \"number\") {\n warn$1(`${type} is not a valid number - got ${JSON.stringify(val)}.`);\n } else if (isNaN(val)) {\n warn$1(`${type} is NaN - the duration expression might be incorrect.`);\n }\n}\n\nconst ErrorCodes = {\n \"SETUP_FUNCTION\": 0,\n \"0\": \"SETUP_FUNCTION\",\n \"RENDER_FUNCTION\": 1,\n \"1\": \"RENDER_FUNCTION\",\n \"WATCH_GETTER\": 2,\n \"2\": \"WATCH_GETTER\",\n \"WATCH_CALLBACK\": 3,\n \"3\": \"WATCH_CALLBACK\",\n \"WATCH_CLEANUP\": 4,\n \"4\": \"WATCH_CLEANUP\",\n \"NATIVE_EVENT_HANDLER\": 5,\n \"5\": \"NATIVE_EVENT_HANDLER\",\n \"COMPONENT_EVENT_HANDLER\": 6,\n \"6\": \"COMPONENT_EVENT_HANDLER\",\n \"VNODE_HOOK\": 7,\n \"7\": \"VNODE_HOOK\",\n \"DIRECTIVE_HOOK\": 8,\n \"8\": \"DIRECTIVE_HOOK\",\n \"TRANSITION_HOOK\": 9,\n \"9\": \"TRANSITION_HOOK\",\n \"APP_ERROR_HANDLER\": 10,\n \"10\": \"APP_ERROR_HANDLER\",\n \"APP_WARN_HANDLER\": 11,\n \"11\": \"APP_WARN_HANDLER\",\n \"FUNCTION_REF\": 12,\n \"12\": \"FUNCTION_REF\",\n \"ASYNC_COMPONENT_LOADER\": 13,\n \"13\": \"ASYNC_COMPONENT_LOADER\",\n \"SCHEDULER\": 14,\n \"14\": \"SCHEDULER\"\n};\nconst ErrorTypeStrings$1 = {\n [\"sp\"]: \"serverPrefetch hook\",\n [\"bc\"]: \"beforeCreate hook\",\n [\"c\"]: \"created hook\",\n [\"bm\"]: \"beforeMount hook\",\n [\"m\"]: \"mounted hook\",\n [\"bu\"]: \"beforeUpdate hook\",\n [\"u\"]: \"updated\",\n [\"bum\"]: \"beforeUnmount hook\",\n [\"um\"]: \"unmounted hook\",\n [\"a\"]: \"activated hook\",\n [\"da\"]: \"deactivated hook\",\n [\"ec\"]: \"errorCaptured hook\",\n [\"rtc\"]: \"renderTracked hook\",\n [\"rtg\"]: \"renderTriggered hook\",\n [0]: \"setup function\",\n [1]: \"render function\",\n [2]: \"watcher getter\",\n [3]: \"watcher callback\",\n [4]: \"watcher cleanup function\",\n [5]: \"native event handler\",\n [6]: \"component event handler\",\n [7]: \"vnode hook\",\n [8]: \"directive hook\",\n [9]: \"transition hook\",\n [10]: \"app errorHandler\",\n [11]: \"app warnHandler\",\n [12]: \"ref function\",\n [13]: \"async component loader\",\n [14]: \"scheduler flush. This is likely a Vue internals bug. Please open an issue at https://github.com/vuejs/core .\"\n};\nfunction callWithErrorHandling(fn, instance, type, args) {\n try {\n return args ? fn(...args) : fn();\n } catch (err) {\n handleError(err, instance, type);\n }\n}\nfunction callWithAsyncErrorHandling(fn, instance, type, args) {\n if (isFunction(fn)) {\n const res = callWithErrorHandling(fn, instance, type, args);\n if (res && isPromise(res)) {\n res.catch((err) => {\n handleError(err, instance, type);\n });\n }\n return res;\n }\n if (isArray(fn)) {\n const values = [];\n for (let i = 0; i < fn.length; i++) {\n values.push(callWithAsyncErrorHandling(fn[i], instance, type, args));\n }\n return values;\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n warn$1(\n `Invalid value type passed to callWithAsyncErrorHandling(): ${typeof fn}`\n );\n }\n}\nfunction handleError(err, instance, type, throwInDev = true) {\n const contextVNode = instance ? instance.vnode : null;\n if (instance) {\n let cur = instance.parent;\n const exposedInstance = instance.proxy;\n const errorInfo = !!(process.env.NODE_ENV !== \"production\") ? ErrorTypeStrings$1[type] : `https://vuejs.org/error-reference/#runtime-${type}`;\n while (cur) {\n const errorCapturedHooks = cur.ec;\n if (errorCapturedHooks) {\n for (let i = 0; i < errorCapturedHooks.length; i++) {\n if (errorCapturedHooks[i](err, exposedInstance, errorInfo) === false) {\n return;\n }\n }\n }\n cur = cur.parent;\n }\n const appErrorHandler = instance.appContext.config.errorHandler;\n if (appErrorHandler) {\n pauseTracking();\n callWithErrorHandling(\n appErrorHandler,\n null,\n 10,\n [err, exposedInstance, errorInfo]\n );\n resetTracking();\n return;\n }\n }\n logError(err, type, contextVNode, throwInDev);\n}\nfunction logError(err, type, contextVNode, throwInDev = true) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n const info = ErrorTypeStrings$1[type];\n if (contextVNode) {\n pushWarningContext(contextVNode);\n }\n warn$1(`Unhandled error${info ? ` during execution of ${info}` : ``}`);\n if (contextVNode) {\n popWarningContext();\n }\n if (throwInDev) {\n throw err;\n } else {\n console.error(err);\n }\n } else {\n console.error(err);\n }\n}\n\nlet isFlushing = false;\nlet isFlushPending = false;\nconst queue = [];\nlet flushIndex = 0;\nconst pendingPostFlushCbs = [];\nlet activePostFlushCbs = null;\nlet postFlushIndex = 0;\nconst resolvedPromise = /* @__PURE__ */ Promise.resolve();\nlet currentFlushPromise = null;\nconst RECURSION_LIMIT = 100;\nfunction nextTick(fn) {\n const p = currentFlushPromise || resolvedPromise;\n return fn ? p.then(this ? fn.bind(this) : fn) : p;\n}\nfunction findInsertionIndex(id) {\n let start = flushIndex + 1;\n let end = queue.length;\n while (start < end) {\n const middle = start + end >>> 1;\n const middleJob = queue[middle];\n const middleJobId = getId(middleJob);\n if (middleJobId < id || middleJobId === id && middleJob.pre) {\n start = middle + 1;\n } else {\n end = middle;\n }\n }\n return start;\n}\nfunction queueJob(job) {\n if (!queue.length || !queue.includes(\n job,\n isFlushing && job.allowRecurse ? flushIndex + 1 : flushIndex\n )) {\n if (job.id == null) {\n queue.push(job);\n } else {\n queue.splice(findInsertionIndex(job.id), 0, job);\n }\n queueFlush();\n }\n}\nfunction queueFlush() {\n if (!isFlushing && !isFlushPending) {\n isFlushPending = true;\n currentFlushPromise = resolvedPromise.then(flushJobs);\n }\n}\nfunction invalidateJob(job) {\n const i = queue.indexOf(job);\n if (i > flushIndex) {\n queue.splice(i, 1);\n }\n}\nfunction queuePostFlushCb(cb) {\n if (!isArray(cb)) {\n if (!activePostFlushCbs || !activePostFlushCbs.includes(\n cb,\n cb.allowRecurse ? postFlushIndex + 1 : postFlushIndex\n )) {\n pendingPostFlushCbs.push(cb);\n }\n } else {\n pendingPostFlushCbs.push(...cb);\n }\n queueFlush();\n}\nfunction flushPreFlushCbs(instance, seen, i = isFlushing ? flushIndex + 1 : 0) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n seen = seen || /* @__PURE__ */ new Map();\n }\n for (; i < queue.length; i++) {\n const cb = queue[i];\n if (cb && cb.pre) {\n if (instance && cb.id !== instance.uid) {\n continue;\n }\n if (!!(process.env.NODE_ENV !== \"production\") && checkRecursiveUpdates(seen, cb)) {\n continue;\n }\n queue.splice(i, 1);\n i--;\n cb();\n }\n }\n}\nfunction flushPostFlushCbs(seen) {\n if (pendingPostFlushCbs.length) {\n const deduped = [...new Set(pendingPostFlushCbs)].sort(\n (a, b) => getId(a) - getId(b)\n );\n pendingPostFlushCbs.length = 0;\n if (activePostFlushCbs) {\n activePostFlushCbs.push(...deduped);\n return;\n }\n activePostFlushCbs = deduped;\n if (!!(process.env.NODE_ENV !== \"production\")) {\n seen = seen || /* @__PURE__ */ new Map();\n }\n for (postFlushIndex = 0; postFlushIndex < activePostFlushCbs.length; postFlushIndex++) {\n const cb = activePostFlushCbs[postFlushIndex];\n if (!!(process.env.NODE_ENV !== \"production\") && checkRecursiveUpdates(seen, cb)) {\n continue;\n }\n if (cb.active !== false) cb();\n }\n activePostFlushCbs = null;\n postFlushIndex = 0;\n }\n}\nconst getId = (job) => job.id == null ? Infinity : job.id;\nconst comparator = (a, b) => {\n const diff = getId(a) - getId(b);\n if (diff === 0) {\n if (a.pre && !b.pre) return -1;\n if (b.pre && !a.pre) return 1;\n }\n return diff;\n};\nfunction flushJobs(seen) {\n isFlushPending = false;\n isFlushing = true;\n if (!!(process.env.NODE_ENV !== \"production\")) {\n seen = seen || /* @__PURE__ */ new Map();\n }\n queue.sort(comparator);\n const check = !!(process.env.NODE_ENV !== \"production\") ? (job) => checkRecursiveUpdates(seen, job) : NOOP;\n try {\n for (flushIndex = 0; flushIndex < queue.length; flushIndex++) {\n const job = queue[flushIndex];\n if (job && job.active !== false) {\n if (!!(process.env.NODE_ENV !== \"production\") && check(job)) {\n continue;\n }\n callWithErrorHandling(job, null, 14);\n }\n }\n } finally {\n flushIndex = 0;\n queue.length = 0;\n flushPostFlushCbs(seen);\n isFlushing = false;\n currentFlushPromise = null;\n if (queue.length || pendingPostFlushCbs.length) {\n flushJobs(seen);\n }\n }\n}\nfunction checkRecursiveUpdates(seen, fn) {\n if (!seen.has(fn)) {\n seen.set(fn, 1);\n } else {\n const count = seen.get(fn);\n if (count > RECURSION_LIMIT) {\n const instance = fn.ownerInstance;\n const componentName = instance && getComponentName(instance.type);\n handleError(\n `Maximum recursive updates exceeded${componentName ? ` in component <${componentName}>` : ``}. This means you have a reactive effect that is mutating its own dependencies and thus recursively triggering itself. Possible sources include component template, render function, updated hook or watcher source function.`,\n null,\n 10\n );\n return true;\n } else {\n seen.set(fn, count + 1);\n }\n }\n}\n\nlet isHmrUpdating = false;\nconst hmrDirtyComponents = /* @__PURE__ */ new Set();\nif (!!(process.env.NODE_ENV !== \"production\")) {\n getGlobalThis().__VUE_HMR_RUNTIME__ = {\n createRecord: tryWrap(createRecord),\n rerender: tryWrap(rerender),\n reload: tryWrap(reload)\n };\n}\nconst map = /* @__PURE__ */ new Map();\nfunction registerHMR(instance) {\n const id = instance.type.__hmrId;\n let record = map.get(id);\n if (!record) {\n createRecord(id, instance.type);\n record = map.get(id);\n }\n record.instances.add(instance);\n}\nfunction unregisterHMR(instance) {\n map.get(instance.type.__hmrId).instances.delete(instance);\n}\nfunction createRecord(id, initialDef) {\n if (map.has(id)) {\n return false;\n }\n map.set(id, {\n initialDef: normalizeClassComponent(initialDef),\n instances: /* @__PURE__ */ new Set()\n });\n return true;\n}\nfunction normalizeClassComponent(component) {\n return isClassComponent(component) ? component.__vccOpts : component;\n}\nfunction rerender(id, newRender) {\n const record = map.get(id);\n if (!record) {\n return;\n }\n record.initialDef.render = newRender;\n [...record.instances].forEach((instance) => {\n if (newRender) {\n instance.render = newRender;\n normalizeClassComponent(instance.type).render = newRender;\n }\n instance.renderCache = [];\n isHmrUpdating = true;\n instance.effect.dirty = true;\n instance.update();\n isHmrUpdating = false;\n });\n}\nfunction reload(id, newComp) {\n const record = map.get(id);\n if (!record) return;\n newComp = normalizeClassComponent(newComp);\n updateComponentDef(record.initialDef, newComp);\n const instances = [...record.instances];\n for (const instance of instances) {\n const oldComp = normalizeClassComponent(instance.type);\n if (!hmrDirtyComponents.has(oldComp)) {\n if (oldComp !== record.initialDef) {\n updateComponentDef(oldComp, newComp);\n }\n hmrDirtyComponents.add(oldComp);\n }\n instance.appContext.propsCache.delete(instance.type);\n instance.appContext.emitsCache.delete(instance.type);\n instance.appContext.optionsCache.delete(instance.type);\n if (instance.ceReload) {\n hmrDirtyComponents.add(oldComp);\n instance.ceReload(newComp.styles);\n hmrDirtyComponents.delete(oldComp);\n } else if (instance.parent) {\n instance.parent.effect.dirty = true;\n queueJob(() => {\n instance.parent.update();\n hmrDirtyComponents.delete(oldComp);\n });\n } else if (instance.appContext.reload) {\n instance.appContext.reload();\n } else if (typeof window !== \"undefined\") {\n window.location.reload();\n } else {\n console.warn(\n \"[HMR] Root or manually mounted instance modified. Full reload required.\"\n );\n }\n }\n queuePostFlushCb(() => {\n for (const instance of instances) {\n hmrDirtyComponents.delete(\n normalizeClassComponent(instance.type)\n );\n }\n });\n}\nfunction updateComponentDef(oldComp, newComp) {\n extend(oldComp, newComp);\n for (const key in oldComp) {\n if (key !== \"__file\" && !(key in newComp)) {\n delete oldComp[key];\n }\n }\n}\nfunction tryWrap(fn) {\n return (id, arg) => {\n try {\n return fn(id, arg);\n } catch (e) {\n console.error(e);\n console.warn(\n `[HMR] Something went wrong during Vue component hot-reload. Full reload required.`\n );\n }\n };\n}\n\nlet devtools$1;\nlet buffer = [];\nlet devtoolsNotInstalled = false;\nfunction emit$1(event, ...args) {\n if (devtools$1) {\n devtools$1.emit(event, ...args);\n } else if (!devtoolsNotInstalled) {\n buffer.push({ event, args });\n }\n}\nfunction setDevtoolsHook$1(hook, target) {\n var _a, _b;\n devtools$1 = hook;\n if (devtools$1) {\n devtools$1.enabled = true;\n buffer.forEach(({ event, args }) => devtools$1.emit(event, ...args));\n buffer = [];\n } else if (\n // handle late devtools injection - only do this if we are in an actual\n // browser environment to avoid the timer handle stalling test runner exit\n // (#4815)\n typeof window !== \"undefined\" && // some envs mock window but not fully\n window.HTMLElement && // also exclude jsdom\n // eslint-disable-next-line no-restricted-syntax\n !((_b = (_a = window.navigator) == null ? void 0 : _a.userAgent) == null ? void 0 : _b.includes(\"jsdom\"))\n ) {\n const replay = target.__VUE_DEVTOOLS_HOOK_REPLAY__ = target.__VUE_DEVTOOLS_HOOK_REPLAY__ || [];\n replay.push((newHook) => {\n setDevtoolsHook$1(newHook, target);\n });\n setTimeout(() => {\n if (!devtools$1) {\n target.__VUE_DEVTOOLS_HOOK_REPLAY__ = null;\n devtoolsNotInstalled = true;\n buffer = [];\n }\n }, 3e3);\n } else {\n devtoolsNotInstalled = true;\n buffer = [];\n }\n}\nfunction devtoolsInitApp(app, version) {\n emit$1(\"app:init\" /* APP_INIT */, app, version, {\n Fragment,\n Text,\n Comment,\n Static\n });\n}\nfunction devtoolsUnmountApp(app) {\n emit$1(\"app:unmount\" /* APP_UNMOUNT */, app);\n}\nconst devtoolsComponentAdded = /* @__PURE__ */ createDevtoolsComponentHook(\n \"component:added\" /* COMPONENT_ADDED */\n);\nconst devtoolsComponentUpdated = /* @__PURE__ */ createDevtoolsComponentHook(\"component:updated\" /* COMPONENT_UPDATED */);\nconst _devtoolsComponentRemoved = /* @__PURE__ */ createDevtoolsComponentHook(\n \"component:removed\" /* COMPONENT_REMOVED */\n);\nconst devtoolsComponentRemoved = (component) => {\n if (devtools$1 && typeof devtools$1.cleanupBuffer === \"function\" && // remove the component if it wasn't buffered\n !devtools$1.cleanupBuffer(component)) {\n _devtoolsComponentRemoved(component);\n }\n};\n/*! #__NO_SIDE_EFFECTS__ */\n// @__NO_SIDE_EFFECTS__\nfunction createDevtoolsComponentHook(hook) {\n return (component) => {\n emit$1(\n hook,\n component.appContext.app,\n component.uid,\n component.parent ? component.parent.uid : void 0,\n component\n );\n };\n}\nconst devtoolsPerfStart = /* @__PURE__ */ createDevtoolsPerformanceHook(\n \"perf:start\" /* PERFORMANCE_START */\n);\nconst devtoolsPerfEnd = /* @__PURE__ */ createDevtoolsPerformanceHook(\n \"perf:end\" /* PERFORMANCE_END */\n);\nfunction createDevtoolsPerformanceHook(hook) {\n return (component, type, time) => {\n emit$1(hook, component.appContext.app, component.uid, component, type, time);\n };\n}\nfunction devtoolsComponentEmit(component, event, params) {\n emit$1(\n \"component:emit\" /* COMPONENT_EMIT */,\n component.appContext.app,\n component,\n event,\n params\n );\n}\n\nfunction emit(instance, event, ...rawArgs) {\n if (instance.isUnmounted) return;\n const props = instance.vnode.props || EMPTY_OBJ;\n if (!!(process.env.NODE_ENV !== \"production\")) {\n const {\n emitsOptions,\n propsOptions: [propsOptions]\n } = instance;\n if (emitsOptions) {\n if (!(event in emitsOptions) && true) {\n if (!propsOptions || !(toHandlerKey(event) in propsOptions)) {\n warn$1(\n `Component emitted event \"${event}\" but it is neither declared in the emits option nor as an \"${toHandlerKey(event)}\" prop.`\n );\n }\n } else {\n const validator = emitsOptions[event];\n if (isFunction(validator)) {\n const isValid = validator(...rawArgs);\n if (!isValid) {\n warn$1(\n `Invalid event arguments: event validation failed for event \"${event}\".`\n );\n }\n }\n }\n }\n }\n let args = rawArgs;\n const isModelListener = event.startsWith(\"update:\");\n const modelArg = isModelListener && event.slice(7);\n if (modelArg && modelArg in props) {\n const modifiersKey = `${modelArg === \"modelValue\" ? \"model\" : modelArg}Modifiers`;\n const { number, trim } = props[modifiersKey] || EMPTY_OBJ;\n if (trim) {\n args = rawArgs.map((a) => isString(a) ? a.trim() : a);\n }\n if (number) {\n args = rawArgs.map(looseToNumber);\n }\n }\n if (!!(process.env.NODE_ENV !== \"production\") || __VUE_PROD_DEVTOOLS__) {\n devtoolsComponentEmit(instance, event, args);\n }\n if (!!(process.env.NODE_ENV !== \"production\")) {\n const lowerCaseEvent = event.toLowerCase();\n if (lowerCaseEvent !== event && props[toHandlerKey(lowerCaseEvent)]) {\n warn$1(\n `Event \"${lowerCaseEvent}\" is emitted in component ${formatComponentName(\n instance,\n instance.type\n )} but the handler is registered for \"${event}\". Note that HTML attributes are case-insensitive and you cannot use v-on to listen to camelCase events when using in-DOM templates. You should probably use \"${hyphenate(\n event\n )}\" instead of \"${event}\".`\n );\n }\n }\n let handlerName;\n let handler = props[handlerName = toHandlerKey(event)] || // also try camelCase event handler (#2249)\n props[handlerName = toHandlerKey(camelize(event))];\n if (!handler && isModelListener) {\n handler = props[handlerName = toHandlerKey(hyphenate(event))];\n }\n if (handler) {\n callWithAsyncErrorHandling(\n handler,\n instance,\n 6,\n args\n );\n }\n const onceHandler = props[handlerName + `Once`];\n if (onceHandler) {\n if (!instance.emitted) {\n instance.emitted = {};\n } else if (instance.emitted[handlerName]) {\n return;\n }\n instance.emitted[handlerName] = true;\n callWithAsyncErrorHandling(\n onceHandler,\n instance,\n 6,\n args\n );\n }\n}\nfunction normalizeEmitsOptions(comp, appContext, asMixin = false) {\n const cache = appContext.emitsCache;\n const cached = cache.get(comp);\n if (cached !== void 0) {\n return cached;\n }\n const raw = comp.emits;\n let normalized = {};\n let hasExtends = false;\n if (__VUE_OPTIONS_API__ && !isFunction(comp)) {\n const extendEmits = (raw2) => {\n const normalizedFromExtend = normalizeEmitsOptions(raw2, appContext, true);\n if (normalizedFromExtend) {\n hasExtends = true;\n extend(normalized, normalizedFromExtend);\n }\n };\n if (!asMixin && appContext.mixins.length) {\n appContext.mixins.forEach(extendEmits);\n }\n if (comp.extends) {\n extendEmits(comp.extends);\n }\n if (comp.mixins) {\n comp.mixins.forEach(extendEmits);\n }\n }\n if (!raw && !hasExtends) {\n if (isObject(comp)) {\n cache.set(comp, null);\n }\n return null;\n }\n if (isArray(raw)) {\n raw.forEach((key) => normalized[key] = null);\n } else {\n extend(normalized, raw);\n }\n if (isObject(comp)) {\n cache.set(comp, normalized);\n }\n return normalized;\n}\nfunction isEmitListener(options, key) {\n if (!options || !isOn(key)) {\n return false;\n }\n key = key.slice(2).replace(/Once$/, \"\");\n return hasOwn(options, key[0].toLowerCase() + key.slice(1)) || hasOwn(options, hyphenate(key)) || hasOwn(options, key);\n}\n\nlet currentRenderingInstance = null;\nlet currentScopeId = null;\nfunction setCurrentRenderingInstance(instance) {\n const prev = currentRenderingInstance;\n currentRenderingInstance = instance;\n currentScopeId = instance && instance.type.__scopeId || null;\n return prev;\n}\nfunction pushScopeId(id) {\n currentScopeId = id;\n}\nfunction popScopeId() {\n currentScopeId = null;\n}\nconst withScopeId = (_id) => withCtx;\nfunction withCtx(fn, ctx = currentRenderingInstance, isNonScopedSlot) {\n if (!ctx) return fn;\n if (fn._n) {\n return fn;\n }\n const renderFnWithContext = (...args) => {\n if (renderFnWithContext._d) {\n setBlockTracking(-1);\n }\n const prevInstance = setCurrentRenderingInstance(ctx);\n let res;\n try {\n res = fn(...args);\n } finally {\n setCurrentRenderingInstance(prevInstance);\n if (renderFnWithContext._d) {\n setBlockTracking(1);\n }\n }\n if (!!(process.env.NODE_ENV !== \"production\") || __VUE_PROD_DEVTOOLS__) {\n devtoolsComponentUpdated(ctx);\n }\n return res;\n };\n renderFnWithContext._n = true;\n renderFnWithContext._c = true;\n renderFnWithContext._d = true;\n return renderFnWithContext;\n}\n\nlet accessedAttrs = false;\nfunction markAttrsAccessed() {\n accessedAttrs = true;\n}\nfunction renderComponentRoot(instance) {\n const {\n type: Component,\n vnode,\n proxy,\n withProxy,\n propsOptions: [propsOptions],\n slots,\n attrs,\n emit,\n render,\n renderCache,\n props,\n data,\n setupState,\n ctx,\n inheritAttrs\n } = instance;\n const prev = setCurrentRenderingInstance(instance);\n let result;\n let fallthroughAttrs;\n if (!!(process.env.NODE_ENV !== \"production\")) {\n accessedAttrs = false;\n }\n try {\n if (vnode.shapeFlag & 4) {\n const proxyToUse = withProxy || proxy;\n const thisProxy = !!(process.env.NODE_ENV !== \"production\") && setupState.__isScriptSetup ? new Proxy(proxyToUse, {\n get(target, key, receiver) {\n warn$1(\n `Property '${String(\n key\n )}' was accessed via 'this'. Avoid using 'this' in templates.`\n );\n return Reflect.get(target, key, receiver);\n }\n }) : proxyToUse;\n result = normalizeVNode(\n render.call(\n thisProxy,\n proxyToUse,\n renderCache,\n !!(process.env.NODE_ENV !== \"production\") ? shallowReadonly(props) : props,\n setupState,\n data,\n ctx\n )\n );\n fallthroughAttrs = attrs;\n } else {\n const render2 = Component;\n if (!!(process.env.NODE_ENV !== \"production\") && attrs === props) {\n markAttrsAccessed();\n }\n result = normalizeVNode(\n render2.length > 1 ? render2(\n !!(process.env.NODE_ENV !== \"production\") ? shallowReadonly(props) : props,\n !!(process.env.NODE_ENV !== \"production\") ? {\n get attrs() {\n markAttrsAccessed();\n return shallowReadonly(attrs);\n },\n slots,\n emit\n } : { attrs, slots, emit }\n ) : render2(\n !!(process.env.NODE_ENV !== \"production\") ? shallowReadonly(props) : props,\n null\n )\n );\n fallthroughAttrs = Component.props ? attrs : getFunctionalFallthrough(attrs);\n }\n } catch (err) {\n blockStack.length = 0;\n handleError(err, instance, 1);\n result = createVNode(Comment);\n }\n let root = result;\n let setRoot = void 0;\n if (!!(process.env.NODE_ENV !== \"production\") && result.patchFlag > 0 && result.patchFlag & 2048) {\n [root, setRoot] = getChildRoot(result);\n }\n if (fallthroughAttrs && inheritAttrs !== false) {\n const keys = Object.keys(fallthroughAttrs);\n const { shapeFlag } = root;\n if (keys.length) {\n if (shapeFlag & (1 | 6)) {\n if (propsOptions && keys.some(isModelListener)) {\n fallthroughAttrs = filterModelListeners(\n fallthroughAttrs,\n propsOptions\n );\n }\n root = cloneVNode(root, fallthroughAttrs, false, true);\n } else if (!!(process.env.NODE_ENV !== \"production\") && !accessedAttrs && root.type !== Comment) {\n const allAttrs = Object.keys(attrs);\n const eventAttrs = [];\n const extraAttrs = [];\n for (let i = 0, l = allAttrs.length; i < l; i++) {\n const key = allAttrs[i];\n if (isOn(key)) {\n if (!isModelListener(key)) {\n eventAttrs.push(key[2].toLowerCase() + key.slice(3));\n }\n } else {\n extraAttrs.push(key);\n }\n }\n if (extraAttrs.length) {\n warn$1(\n `Extraneous non-props attributes (${extraAttrs.join(\", \")}) were passed to component but could not be automatically inherited because component renders fragment or text root nodes.`\n );\n }\n if (eventAttrs.length) {\n warn$1(\n `Extraneous non-emits event listeners (${eventAttrs.join(\", \")}) were passed to component but could not be automatically inherited because component renders fragment or text root nodes. If the listener is intended to be a component custom event listener only, declare it using the \"emits\" option.`\n );\n }\n }\n }\n }\n if (vnode.dirs) {\n if (!!(process.env.NODE_ENV !== \"production\") && !isElementRoot(root)) {\n warn$1(\n `Runtime directive used on component with non-element root node. The directives will not function as intended.`\n );\n }\n root = cloneVNode(root, null, false, true);\n root.dirs = root.dirs ? root.dirs.concat(vnode.dirs) : vnode.dirs;\n }\n if (vnode.transition) {\n if (!!(process.env.NODE_ENV !== \"production\") && !isElementRoot(root)) {\n warn$1(\n `Component inside renders non-element root node that cannot be animated.`\n );\n }\n root.transition = vnode.transition;\n }\n if (!!(process.env.NODE_ENV !== \"production\") && setRoot) {\n setRoot(root);\n } else {\n result = root;\n }\n setCurrentRenderingInstance(prev);\n return result;\n}\nconst getChildRoot = (vnode) => {\n const rawChildren = vnode.children;\n const dynamicChildren = vnode.dynamicChildren;\n const childRoot = filterSingleRoot(rawChildren, false);\n if (!childRoot) {\n return [vnode, void 0];\n } else if (!!(process.env.NODE_ENV !== \"production\") && childRoot.patchFlag > 0 && childRoot.patchFlag & 2048) {\n return getChildRoot(childRoot);\n }\n const index = rawChildren.indexOf(childRoot);\n const dynamicIndex = dynamicChildren ? dynamicChildren.indexOf(childRoot) : -1;\n const setRoot = (updatedRoot) => {\n rawChildren[index] = updatedRoot;\n if (dynamicChildren) {\n if (dynamicIndex > -1) {\n dynamicChildren[dynamicIndex] = updatedRoot;\n } else if (updatedRoot.patchFlag > 0) {\n vnode.dynamicChildren = [...dynamicChildren, updatedRoot];\n }\n }\n };\n return [normalizeVNode(childRoot), setRoot];\n};\nfunction filterSingleRoot(children, recurse = true) {\n let singleRoot;\n for (let i = 0; i < children.length; i++) {\n const child = children[i];\n if (isVNode(child)) {\n if (child.type !== Comment || child.children === \"v-if\") {\n if (singleRoot) {\n return;\n } else {\n singleRoot = child;\n if (!!(process.env.NODE_ENV !== \"production\") && recurse && singleRoot.patchFlag > 0 && singleRoot.patchFlag & 2048) {\n return filterSingleRoot(singleRoot.children);\n }\n }\n }\n } else {\n return;\n }\n }\n return singleRoot;\n}\nconst getFunctionalFallthrough = (attrs) => {\n let res;\n for (const key in attrs) {\n if (key === \"class\" || key === \"style\" || isOn(key)) {\n (res || (res = {}))[key] = attrs[key];\n }\n }\n return res;\n};\nconst filterModelListeners = (attrs, props) => {\n const res = {};\n for (const key in attrs) {\n if (!isModelListener(key) || !(key.slice(9) in props)) {\n res[key] = attrs[key];\n }\n }\n return res;\n};\nconst isElementRoot = (vnode) => {\n return vnode.shapeFlag & (6 | 1) || vnode.type === Comment;\n};\nfunction shouldUpdateComponent(prevVNode, nextVNode, optimized) {\n const { props: prevProps, children: prevChildren, component } = prevVNode;\n const { props: nextProps, children: nextChildren, patchFlag } = nextVNode;\n const emits = component.emitsOptions;\n if (!!(process.env.NODE_ENV !== \"production\") && (prevChildren || nextChildren) && isHmrUpdating) {\n return true;\n }\n if (nextVNode.dirs || nextVNode.transition) {\n return true;\n }\n if (optimized && patchFlag >= 0) {\n if (patchFlag & 1024) {\n return true;\n }\n if (patchFlag & 16) {\n if (!prevProps) {\n return !!nextProps;\n }\n return hasPropsChanged(prevProps, nextProps, emits);\n } else if (patchFlag & 8) {\n const dynamicProps = nextVNode.dynamicProps;\n for (let i = 0; i < dynamicProps.length; i++) {\n const key = dynamicProps[i];\n if (nextProps[key] !== prevProps[key] && !isEmitListener(emits, key)) {\n return true;\n }\n }\n }\n } else {\n if (prevChildren || nextChildren) {\n if (!nextChildren || !nextChildren.$stable) {\n return true;\n }\n }\n if (prevProps === nextProps) {\n return false;\n }\n if (!prevProps) {\n return !!nextProps;\n }\n if (!nextProps) {\n return true;\n }\n return hasPropsChanged(prevProps, nextProps, emits);\n }\n return false;\n}\nfunction hasPropsChanged(prevProps, nextProps, emitsOptions) {\n const nextKeys = Object.keys(nextProps);\n if (nextKeys.length !== Object.keys(prevProps).length) {\n return true;\n }\n for (let i = 0; i < nextKeys.length; i++) {\n const key = nextKeys[i];\n if (nextProps[key] !== prevProps[key] && !isEmitListener(emitsOptions, key)) {\n return true;\n }\n }\n return false;\n}\nfunction updateHOCHostEl({ vnode, parent }, el) {\n while (parent) {\n const root = parent.subTree;\n if (root.suspense && root.suspense.activeBranch === vnode) {\n root.el = vnode.el;\n }\n if (root === vnode) {\n (vnode = parent.vnode).el = el;\n parent = parent.parent;\n } else {\n break;\n }\n }\n}\n\nconst COMPONENTS = \"components\";\nconst DIRECTIVES = \"directives\";\nfunction resolveComponent(name, maybeSelfReference) {\n return resolveAsset(COMPONENTS, name, true, maybeSelfReference) || name;\n}\nconst NULL_DYNAMIC_COMPONENT = Symbol.for(\"v-ndc\");\nfunction resolveDynamicComponent(component) {\n if (isString(component)) {\n return resolveAsset(COMPONENTS, component, false) || component;\n } else {\n return component || NULL_DYNAMIC_COMPONENT;\n }\n}\nfunction resolveDirective(name) {\n return resolveAsset(DIRECTIVES, name);\n}\nfunction resolveAsset(type, name, warnMissing = true, maybeSelfReference = false) {\n const instance = currentRenderingInstance || currentInstance;\n if (instance) {\n const Component = instance.type;\n if (type === COMPONENTS) {\n const selfName = getComponentName(\n Component,\n false\n );\n if (selfName && (selfName === name || selfName === camelize(name) || selfName === capitalize(camelize(name)))) {\n return Component;\n }\n }\n const res = (\n // local registration\n // check instance[type] first which is resolved for options API\n resolve(instance[type] || Component[type], name) || // global registration\n resolve(instance.appContext[type], name)\n );\n if (!res && maybeSelfReference) {\n return Component;\n }\n if (!!(process.env.NODE_ENV !== \"production\") && warnMissing && !res) {\n const extra = type === COMPONENTS ? `\nIf this is a native custom element, make sure to exclude it from component resolution via compilerOptions.isCustomElement.` : ``;\n warn$1(`Failed to resolve ${type.slice(0, -1)}: ${name}${extra}`);\n }\n return res;\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n warn$1(\n `resolve${capitalize(type.slice(0, -1))} can only be used in render() or setup().`\n );\n }\n}\nfunction resolve(registry, name) {\n return registry && (registry[name] || registry[camelize(name)] || registry[capitalize(camelize(name))]);\n}\n\nconst isSuspense = (type) => type.__isSuspense;\nlet suspenseId = 0;\nconst SuspenseImpl = {\n name: \"Suspense\",\n // In order to make Suspense tree-shakable, we need to avoid importing it\n // directly in the renderer. The renderer checks for the __isSuspense flag\n // on a vnode's type and calls the `process` method, passing in renderer\n // internals.\n __isSuspense: true,\n process(n1, n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized, rendererInternals) {\n if (n1 == null) {\n mountSuspense(\n n2,\n container,\n anchor,\n parentComponent,\n parentSuspense,\n namespace,\n slotScopeIds,\n optimized,\n rendererInternals\n );\n } else {\n if (parentSuspense && parentSuspense.deps > 0 && !n1.suspense.isInFallback) {\n n2.suspense = n1.suspense;\n n2.suspense.vnode = n2;\n n2.el = n1.el;\n return;\n }\n patchSuspense(\n n1,\n n2,\n container,\n anchor,\n parentComponent,\n namespace,\n slotScopeIds,\n optimized,\n rendererInternals\n );\n }\n },\n hydrate: hydrateSuspense,\n create: createSuspenseBoundary,\n normalize: normalizeSuspenseChildren\n};\nconst Suspense = SuspenseImpl ;\nfunction triggerEvent(vnode, name) {\n const eventListener = vnode.props && vnode.props[name];\n if (isFunction(eventListener)) {\n eventListener();\n }\n}\nfunction mountSuspense(vnode, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized, rendererInternals) {\n const {\n p: patch,\n o: { createElement }\n } = rendererInternals;\n const hiddenContainer = createElement(\"div\");\n const suspense = vnode.suspense = createSuspenseBoundary(\n vnode,\n parentSuspense,\n parentComponent,\n container,\n hiddenContainer,\n anchor,\n namespace,\n slotScopeIds,\n optimized,\n rendererInternals\n );\n patch(\n null,\n suspense.pendingBranch = vnode.ssContent,\n hiddenContainer,\n null,\n parentComponent,\n suspense,\n namespace,\n slotScopeIds\n );\n if (suspense.deps > 0) {\n triggerEvent(vnode, \"onPending\");\n triggerEvent(vnode, \"onFallback\");\n patch(\n null,\n vnode.ssFallback,\n container,\n anchor,\n parentComponent,\n null,\n // fallback tree will not have suspense context\n namespace,\n slotScopeIds\n );\n setActiveBranch(suspense, vnode.ssFallback);\n } else {\n suspense.resolve(false, true);\n }\n}\nfunction patchSuspense(n1, n2, container, anchor, parentComponent, namespace, slotScopeIds, optimized, { p: patch, um: unmount, o: { createElement } }) {\n const suspense = n2.suspense = n1.suspense;\n suspense.vnode = n2;\n n2.el = n1.el;\n const newBranch = n2.ssContent;\n const newFallback = n2.ssFallback;\n const { activeBranch, pendingBranch, isInFallback, isHydrating } = suspense;\n if (pendingBranch) {\n suspense.pendingBranch = newBranch;\n if (isSameVNodeType(newBranch, pendingBranch)) {\n patch(\n pendingBranch,\n newBranch,\n suspense.hiddenContainer,\n null,\n parentComponent,\n suspense,\n namespace,\n slotScopeIds,\n optimized\n );\n if (suspense.deps <= 0) {\n suspense.resolve();\n } else if (isInFallback) {\n if (!isHydrating) {\n patch(\n activeBranch,\n newFallback,\n container,\n anchor,\n parentComponent,\n null,\n // fallback tree will not have suspense context\n namespace,\n slotScopeIds,\n optimized\n );\n setActiveBranch(suspense, newFallback);\n }\n }\n } else {\n suspense.pendingId = suspenseId++;\n if (isHydrating) {\n suspense.isHydrating = false;\n suspense.activeBranch = pendingBranch;\n } else {\n unmount(pendingBranch, parentComponent, suspense);\n }\n suspense.deps = 0;\n suspense.effects.length = 0;\n suspense.hiddenContainer = createElement(\"div\");\n if (isInFallback) {\n patch(\n null,\n newBranch,\n suspense.hiddenContainer,\n null,\n parentComponent,\n suspense,\n namespace,\n slotScopeIds,\n optimized\n );\n if (suspense.deps <= 0) {\n suspense.resolve();\n } else {\n patch(\n activeBranch,\n newFallback,\n container,\n anchor,\n parentComponent,\n null,\n // fallback tree will not have suspense context\n namespace,\n slotScopeIds,\n optimized\n );\n setActiveBranch(suspense, newFallback);\n }\n } else if (activeBranch && isSameVNodeType(newBranch, activeBranch)) {\n patch(\n activeBranch,\n newBranch,\n container,\n anchor,\n parentComponent,\n suspense,\n namespace,\n slotScopeIds,\n optimized\n );\n suspense.resolve(true);\n } else {\n patch(\n null,\n newBranch,\n suspense.hiddenContainer,\n null,\n parentComponent,\n suspense,\n namespace,\n slotScopeIds,\n optimized\n );\n if (suspense.deps <= 0) {\n suspense.resolve();\n }\n }\n }\n } else {\n if (activeBranch && isSameVNodeType(newBranch, activeBranch)) {\n patch(\n activeBranch,\n newBranch,\n container,\n anchor,\n parentComponent,\n suspense,\n namespace,\n slotScopeIds,\n optimized\n );\n setActiveBranch(suspense, newBranch);\n } else {\n triggerEvent(n2, \"onPending\");\n suspense.pendingBranch = newBranch;\n if (newBranch.shapeFlag & 512) {\n suspense.pendingId = newBranch.component.suspenseId;\n } else {\n suspense.pendingId = suspenseId++;\n }\n patch(\n null,\n newBranch,\n suspense.hiddenContainer,\n null,\n parentComponent,\n suspense,\n namespace,\n slotScopeIds,\n optimized\n );\n if (suspense.deps <= 0) {\n suspense.resolve();\n } else {\n const { timeout, pendingId } = suspense;\n if (timeout > 0) {\n setTimeout(() => {\n if (suspense.pendingId === pendingId) {\n suspense.fallback(newFallback);\n }\n }, timeout);\n } else if (timeout === 0) {\n suspense.fallback(newFallback);\n }\n }\n }\n }\n}\nlet hasWarned = false;\nfunction createSuspenseBoundary(vnode, parentSuspense, parentComponent, container, hiddenContainer, anchor, namespace, slotScopeIds, optimized, rendererInternals, isHydrating = false) {\n if (!!(process.env.NODE_ENV !== \"production\") && true && !hasWarned) {\n hasWarned = true;\n console[console.info ? \"info\" : \"log\"](\n ` is an experimental feature and its API will likely change.`\n );\n }\n const {\n p: patch,\n m: move,\n um: unmount,\n n: next,\n o: { parentNode, remove }\n } = rendererInternals;\n let parentSuspenseId;\n const isSuspensible = isVNodeSuspensible(vnode);\n if (isSuspensible) {\n if (parentSuspense && parentSuspense.pendingBranch) {\n parentSuspenseId = parentSuspense.pendingId;\n parentSuspense.deps++;\n }\n }\n const timeout = vnode.props ? toNumber(vnode.props.timeout) : void 0;\n if (!!(process.env.NODE_ENV !== \"production\")) {\n assertNumber(timeout, `Suspense timeout`);\n }\n const initialAnchor = anchor;\n const suspense = {\n vnode,\n parent: parentSuspense,\n parentComponent,\n namespace,\n container,\n hiddenContainer,\n deps: 0,\n pendingId: suspenseId++,\n timeout: typeof timeout === \"number\" ? timeout : -1,\n activeBranch: null,\n pendingBranch: null,\n isInFallback: !isHydrating,\n isHydrating,\n isUnmounted: false,\n effects: [],\n resolve(resume = false, sync = false) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n if (!resume && !suspense.pendingBranch) {\n throw new Error(\n `suspense.resolve() is called without a pending branch.`\n );\n }\n if (suspense.isUnmounted) {\n throw new Error(\n `suspense.resolve() is called on an already unmounted suspense boundary.`\n );\n }\n }\n const {\n vnode: vnode2,\n activeBranch,\n pendingBranch,\n pendingId,\n effects,\n parentComponent: parentComponent2,\n container: container2\n } = suspense;\n let delayEnter = false;\n if (suspense.isHydrating) {\n suspense.isHydrating = false;\n } else if (!resume) {\n delayEnter = activeBranch && pendingBranch.transition && pendingBranch.transition.mode === \"out-in\";\n if (delayEnter) {\n activeBranch.transition.afterLeave = () => {\n if (pendingId === suspense.pendingId) {\n move(\n pendingBranch,\n container2,\n anchor === initialAnchor ? next(activeBranch) : anchor,\n 0\n );\n queuePostFlushCb(effects);\n }\n };\n }\n if (activeBranch) {\n if (parentNode(activeBranch.el) !== suspense.hiddenContainer) {\n anchor = next(activeBranch);\n }\n unmount(activeBranch, parentComponent2, suspense, true);\n }\n if (!delayEnter) {\n move(pendingBranch, container2, anchor, 0);\n }\n }\n setActiveBranch(suspense, pendingBranch);\n suspense.pendingBranch = null;\n suspense.isInFallback = false;\n let parent = suspense.parent;\n let hasUnresolvedAncestor = false;\n while (parent) {\n if (parent.pendingBranch) {\n parent.effects.push(...effects);\n hasUnresolvedAncestor = true;\n break;\n }\n parent = parent.parent;\n }\n if (!hasUnresolvedAncestor && !delayEnter) {\n queuePostFlushCb(effects);\n }\n suspense.effects = [];\n if (isSuspensible) {\n if (parentSuspense && parentSuspense.pendingBranch && parentSuspenseId === parentSuspense.pendingId) {\n parentSuspense.deps--;\n if (parentSuspense.deps === 0 && !sync) {\n parentSuspense.resolve();\n }\n }\n }\n triggerEvent(vnode2, \"onResolve\");\n },\n fallback(fallbackVNode) {\n if (!suspense.pendingBranch) {\n return;\n }\n const { vnode: vnode2, activeBranch, parentComponent: parentComponent2, container: container2, namespace: namespace2 } = suspense;\n triggerEvent(vnode2, \"onFallback\");\n const anchor2 = next(activeBranch);\n const mountFallback = () => {\n if (!suspense.isInFallback) {\n return;\n }\n patch(\n null,\n fallbackVNode,\n container2,\n anchor2,\n parentComponent2,\n null,\n // fallback tree will not have suspense context\n namespace2,\n slotScopeIds,\n optimized\n );\n setActiveBranch(suspense, fallbackVNode);\n };\n const delayEnter = fallbackVNode.transition && fallbackVNode.transition.mode === \"out-in\";\n if (delayEnter) {\n activeBranch.transition.afterLeave = mountFallback;\n }\n suspense.isInFallback = true;\n unmount(\n activeBranch,\n parentComponent2,\n null,\n // no suspense so unmount hooks fire now\n true\n // shouldRemove\n );\n if (!delayEnter) {\n mountFallback();\n }\n },\n move(container2, anchor2, type) {\n suspense.activeBranch && move(suspense.activeBranch, container2, anchor2, type);\n suspense.container = container2;\n },\n next() {\n return suspense.activeBranch && next(suspense.activeBranch);\n },\n registerDep(instance, setupRenderEffect, optimized2) {\n const isInPendingSuspense = !!suspense.pendingBranch;\n if (isInPendingSuspense) {\n suspense.deps++;\n }\n const hydratedEl = instance.vnode.el;\n instance.asyncDep.catch((err) => {\n handleError(err, instance, 0);\n }).then((asyncSetupResult) => {\n if (instance.isUnmounted || suspense.isUnmounted || suspense.pendingId !== instance.suspenseId) {\n return;\n }\n instance.asyncResolved = true;\n const { vnode: vnode2 } = instance;\n if (!!(process.env.NODE_ENV !== \"production\")) {\n pushWarningContext(vnode2);\n }\n handleSetupResult(instance, asyncSetupResult, false);\n if (hydratedEl) {\n vnode2.el = hydratedEl;\n }\n const placeholder = !hydratedEl && instance.subTree.el;\n setupRenderEffect(\n instance,\n vnode2,\n // component may have been moved before resolve.\n // if this is not a hydration, instance.subTree will be the comment\n // placeholder.\n parentNode(hydratedEl || instance.subTree.el),\n // anchor will not be used if this is hydration, so only need to\n // consider the comment placeholder case.\n hydratedEl ? null : next(instance.subTree),\n suspense,\n namespace,\n optimized2\n );\n if (placeholder) {\n remove(placeholder);\n }\n updateHOCHostEl(instance, vnode2.el);\n if (!!(process.env.NODE_ENV !== \"production\")) {\n popWarningContext();\n }\n if (isInPendingSuspense && --suspense.deps === 0) {\n suspense.resolve();\n }\n });\n },\n unmount(parentSuspense2, doRemove) {\n suspense.isUnmounted = true;\n if (suspense.activeBranch) {\n unmount(\n suspense.activeBranch,\n parentComponent,\n parentSuspense2,\n doRemove\n );\n }\n if (suspense.pendingBranch) {\n unmount(\n suspense.pendingBranch,\n parentComponent,\n parentSuspense2,\n doRemove\n );\n }\n }\n };\n return suspense;\n}\nfunction hydrateSuspense(node, vnode, parentComponent, parentSuspense, namespace, slotScopeIds, optimized, rendererInternals, hydrateNode) {\n const suspense = vnode.suspense = createSuspenseBoundary(\n vnode,\n parentSuspense,\n parentComponent,\n node.parentNode,\n // eslint-disable-next-line no-restricted-globals\n document.createElement(\"div\"),\n null,\n namespace,\n slotScopeIds,\n optimized,\n rendererInternals,\n true\n );\n const result = hydrateNode(\n node,\n suspense.pendingBranch = vnode.ssContent,\n parentComponent,\n suspense,\n slotScopeIds,\n optimized\n );\n if (suspense.deps === 0) {\n suspense.resolve(false, true);\n }\n return result;\n}\nfunction normalizeSuspenseChildren(vnode) {\n const { shapeFlag, children } = vnode;\n const isSlotChildren = shapeFlag & 32;\n vnode.ssContent = normalizeSuspenseSlot(\n isSlotChildren ? children.default : children\n );\n vnode.ssFallback = isSlotChildren ? normalizeSuspenseSlot(children.fallback) : createVNode(Comment);\n}\nfunction normalizeSuspenseSlot(s) {\n let block;\n if (isFunction(s)) {\n const trackBlock = isBlockTreeEnabled && s._c;\n if (trackBlock) {\n s._d = false;\n openBlock();\n }\n s = s();\n if (trackBlock) {\n s._d = true;\n block = currentBlock;\n closeBlock();\n }\n }\n if (isArray(s)) {\n const singleChild = filterSingleRoot(s);\n if (!!(process.env.NODE_ENV !== \"production\") && !singleChild && s.filter((child) => child !== NULL_DYNAMIC_COMPONENT).length > 0) {\n warn$1(` slots expect a single root node.`);\n }\n s = singleChild;\n }\n s = normalizeVNode(s);\n if (block && !s.dynamicChildren) {\n s.dynamicChildren = block.filter((c) => c !== s);\n }\n return s;\n}\nfunction queueEffectWithSuspense(fn, suspense) {\n if (suspense && suspense.pendingBranch) {\n if (isArray(fn)) {\n suspense.effects.push(...fn);\n } else {\n suspense.effects.push(fn);\n }\n } else {\n queuePostFlushCb(fn);\n }\n}\nfunction setActiveBranch(suspense, branch) {\n suspense.activeBranch = branch;\n const { vnode, parentComponent } = suspense;\n let el = branch.el;\n while (!el && branch.component) {\n branch = branch.component.subTree;\n el = branch.el;\n }\n vnode.el = el;\n if (parentComponent && parentComponent.subTree === vnode) {\n parentComponent.vnode.el = el;\n updateHOCHostEl(parentComponent, el);\n }\n}\nfunction isVNodeSuspensible(vnode) {\n const suspensible = vnode.props && vnode.props.suspensible;\n return suspensible != null && suspensible !== false;\n}\n\nfunction injectHook(type, hook, target = currentInstance, prepend = false) {\n if (target) {\n const hooks = target[type] || (target[type] = []);\n const wrappedHook = hook.__weh || (hook.__weh = (...args) => {\n pauseTracking();\n const reset = setCurrentInstance(target);\n const res = callWithAsyncErrorHandling(hook, target, type, args);\n reset();\n resetTracking();\n return res;\n });\n if (prepend) {\n hooks.unshift(wrappedHook);\n } else {\n hooks.push(wrappedHook);\n }\n return wrappedHook;\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n const apiName = toHandlerKey(ErrorTypeStrings$1[type].replace(/ hook$/, \"\"));\n warn$1(\n `${apiName} is called when there is no active component instance to be associated with. Lifecycle injection APIs can only be used during execution of setup().` + (` If you are using async setup(), make sure to register lifecycle hooks before the first await statement.` )\n );\n }\n}\nconst createHook = (lifecycle) => (hook, target = currentInstance) => {\n if (!isInSSRComponentSetup || lifecycle === \"sp\") {\n injectHook(lifecycle, (...args) => hook(...args), target);\n }\n};\nconst onBeforeMount = createHook(\"bm\");\nconst onMounted = createHook(\"m\");\nconst onBeforeUpdate = createHook(\"bu\");\nconst onUpdated = createHook(\"u\");\nconst onBeforeUnmount = createHook(\"bum\");\nconst onUnmounted = createHook(\"um\");\nconst onServerPrefetch = createHook(\"sp\");\nconst onRenderTriggered = createHook(\n \"rtg\"\n);\nconst onRenderTracked = createHook(\n \"rtc\"\n);\nfunction onErrorCaptured(hook, target = currentInstance) {\n injectHook(\"ec\", hook, target);\n}\n\nfunction validateDirectiveName(name) {\n if (isBuiltInDirective(name)) {\n warn$1(\"Do not use built-in directive ids as custom directive id: \" + name);\n }\n}\nfunction withDirectives(vnode, directives) {\n if (currentRenderingInstance === null) {\n !!(process.env.NODE_ENV !== \"production\") && warn$1(`withDirectives can only be used inside render functions.`);\n return vnode;\n }\n const instance = getComponentPublicInstance(currentRenderingInstance);\n const bindings = vnode.dirs || (vnode.dirs = []);\n for (let i = 0; i < directives.length; i++) {\n let [dir, value, arg, modifiers = EMPTY_OBJ] = directives[i];\n if (dir) {\n if (isFunction(dir)) {\n dir = {\n mounted: dir,\n updated: dir\n };\n }\n if (dir.deep) {\n traverse(value);\n }\n bindings.push({\n dir,\n instance,\n value,\n oldValue: void 0,\n arg,\n modifiers\n });\n }\n }\n return vnode;\n}\nfunction invokeDirectiveHook(vnode, prevVNode, instance, name) {\n const bindings = vnode.dirs;\n const oldBindings = prevVNode && prevVNode.dirs;\n for (let i = 0; i < bindings.length; i++) {\n const binding = bindings[i];\n if (oldBindings) {\n binding.oldValue = oldBindings[i].value;\n }\n let hook = binding.dir[name];\n if (hook) {\n pauseTracking();\n callWithAsyncErrorHandling(hook, instance, 8, [\n vnode.el,\n binding,\n vnode,\n prevVNode\n ]);\n resetTracking();\n }\n }\n}\n\nfunction renderList(source, renderItem, cache, index) {\n let ret;\n const cached = cache && cache[index];\n if (isArray(source) || isString(source)) {\n ret = new Array(source.length);\n for (let i = 0, l = source.length; i < l; i++) {\n ret[i] = renderItem(source[i], i, void 0, cached && cached[i]);\n }\n } else if (typeof source === \"number\") {\n if (!!(process.env.NODE_ENV !== \"production\") && !Number.isInteger(source)) {\n warn$1(`The v-for range expect an integer value but got ${source}.`);\n }\n ret = new Array(source);\n for (let i = 0; i < source; i++) {\n ret[i] = renderItem(i + 1, i, void 0, cached && cached[i]);\n }\n } else if (isObject(source)) {\n if (source[Symbol.iterator]) {\n ret = Array.from(\n source,\n (item, i) => renderItem(item, i, void 0, cached && cached[i])\n );\n } else {\n const keys = Object.keys(source);\n ret = new Array(keys.length);\n for (let i = 0, l = keys.length; i < l; i++) {\n const key = keys[i];\n ret[i] = renderItem(source[key], key, i, cached && cached[i]);\n }\n }\n } else {\n ret = [];\n }\n if (cache) {\n cache[index] = ret;\n }\n return ret;\n}\n\nfunction createSlots(slots, dynamicSlots) {\n for (let i = 0; i < dynamicSlots.length; i++) {\n const slot = dynamicSlots[i];\n if (isArray(slot)) {\n for (let j = 0; j < slot.length; j++) {\n slots[slot[j].name] = slot[j].fn;\n }\n } else if (slot) {\n slots[slot.name] = slot.key ? (...args) => {\n const res = slot.fn(...args);\n if (res) res.key = slot.key;\n return res;\n } : slot.fn;\n }\n }\n return slots;\n}\n\n/*! #__NO_SIDE_EFFECTS__ */\n// @__NO_SIDE_EFFECTS__\nfunction defineComponent(options, extraOptions) {\n return isFunction(options) ? (\n // #8326: extend call and options.name access are considered side-effects\n // by Rollup, so we have to wrap it in a pure-annotated IIFE.\n /* @__PURE__ */ (() => extend({ name: options.name }, extraOptions, { setup: options }))()\n ) : options;\n}\n\nconst isAsyncWrapper = (i) => !!i.type.__asyncLoader;\n/*! #__NO_SIDE_EFFECTS__ */\n// @__NO_SIDE_EFFECTS__\nfunction defineAsyncComponent(source) {\n if (isFunction(source)) {\n source = { loader: source };\n }\n const {\n loader,\n loadingComponent,\n errorComponent,\n delay = 200,\n timeout,\n // undefined = never times out\n suspensible = true,\n onError: userOnError\n } = source;\n let pendingRequest = null;\n let resolvedComp;\n let retries = 0;\n const retry = () => {\n retries++;\n pendingRequest = null;\n return load();\n };\n const load = () => {\n let thisRequest;\n return pendingRequest || (thisRequest = pendingRequest = loader().catch((err) => {\n err = err instanceof Error ? err : new Error(String(err));\n if (userOnError) {\n return new Promise((resolve, reject) => {\n const userRetry = () => resolve(retry());\n const userFail = () => reject(err);\n userOnError(err, userRetry, userFail, retries + 1);\n });\n } else {\n throw err;\n }\n }).then((comp) => {\n if (thisRequest !== pendingRequest && pendingRequest) {\n return pendingRequest;\n }\n if (!!(process.env.NODE_ENV !== \"production\") && !comp) {\n warn$1(\n `Async component loader resolved to undefined. If you are using retry(), make sure to return its return value.`\n );\n }\n if (comp && (comp.__esModule || comp[Symbol.toStringTag] === \"Module\")) {\n comp = comp.default;\n }\n if (!!(process.env.NODE_ENV !== \"production\") && comp && !isObject(comp) && !isFunction(comp)) {\n throw new Error(`Invalid async component load result: ${comp}`);\n }\n resolvedComp = comp;\n return comp;\n }));\n };\n return defineComponent({\n name: \"AsyncComponentWrapper\",\n __asyncLoader: load,\n get __asyncResolved() {\n return resolvedComp;\n },\n setup() {\n const instance = currentInstance;\n if (resolvedComp) {\n return () => createInnerComp(resolvedComp, instance);\n }\n const onError = (err) => {\n pendingRequest = null;\n handleError(\n err,\n instance,\n 13,\n !errorComponent\n );\n };\n if (suspensible && instance.suspense || isInSSRComponentSetup) {\n return load().then((comp) => {\n return () => createInnerComp(comp, instance);\n }).catch((err) => {\n onError(err);\n return () => errorComponent ? createVNode(errorComponent, {\n error: err\n }) : null;\n });\n }\n const loaded = ref(false);\n const error = ref();\n const delayed = ref(!!delay);\n if (delay) {\n setTimeout(() => {\n delayed.value = false;\n }, delay);\n }\n if (timeout != null) {\n setTimeout(() => {\n if (!loaded.value && !error.value) {\n const err = new Error(\n `Async component timed out after ${timeout}ms.`\n );\n onError(err);\n error.value = err;\n }\n }, timeout);\n }\n load().then(() => {\n loaded.value = true;\n if (instance.parent && isKeepAlive(instance.parent.vnode)) {\n instance.parent.effect.dirty = true;\n queueJob(instance.parent.update);\n }\n }).catch((err) => {\n onError(err);\n error.value = err;\n });\n return () => {\n if (loaded.value && resolvedComp) {\n return createInnerComp(resolvedComp, instance);\n } else if (error.value && errorComponent) {\n return createVNode(errorComponent, {\n error: error.value\n });\n } else if (loadingComponent && !delayed.value) {\n return createVNode(loadingComponent);\n }\n };\n }\n });\n}\nfunction createInnerComp(comp, parent) {\n const { ref: ref2, props, children, ce } = parent.vnode;\n const vnode = createVNode(comp, props, children);\n vnode.ref = ref2;\n vnode.ce = ce;\n delete parent.vnode.ce;\n return vnode;\n}\n\nfunction renderSlot(slots, name, props = {}, fallback, noSlotted) {\n if (currentRenderingInstance.isCE || currentRenderingInstance.parent && isAsyncWrapper(currentRenderingInstance.parent) && currentRenderingInstance.parent.isCE) {\n if (name !== \"default\") props.name = name;\n return createVNode(\"slot\", props, fallback && fallback());\n }\n let slot = slots[name];\n if (!!(process.env.NODE_ENV !== \"production\") && slot && slot.length > 1) {\n warn$1(\n `SSR-optimized slot function detected in a non-SSR-optimized render function. You need to mark this component with $dynamic-slots in the parent template.`\n );\n slot = () => [];\n }\n if (slot && slot._c) {\n slot._d = false;\n }\n openBlock();\n const validSlotContent = slot && ensureValidVNode(slot(props));\n const rendered = createBlock(\n Fragment,\n {\n key: props.key || // slot content array of a dynamic conditional slot may have a branch\n // key attached in the `createSlots` helper, respect that\n validSlotContent && validSlotContent.key || `_${name}`\n },\n validSlotContent || (fallback ? fallback() : []),\n validSlotContent && slots._ === 1 ? 64 : -2\n );\n if (!noSlotted && rendered.scopeId) {\n rendered.slotScopeIds = [rendered.scopeId + \"-s\"];\n }\n if (slot && slot._c) {\n slot._d = true;\n }\n return rendered;\n}\nfunction ensureValidVNode(vnodes) {\n return vnodes.some((child) => {\n if (!isVNode(child)) return true;\n if (child.type === Comment) return false;\n if (child.type === Fragment && !ensureValidVNode(child.children))\n return false;\n return true;\n }) ? vnodes : null;\n}\n\nfunction toHandlers(obj, preserveCaseIfNecessary) {\n const ret = {};\n if (!!(process.env.NODE_ENV !== \"production\") && !isObject(obj)) {\n warn$1(`v-on with no argument expects an object value.`);\n return ret;\n }\n for (const key in obj) {\n ret[preserveCaseIfNecessary && /[A-Z]/.test(key) ? `on:${key}` : toHandlerKey(key)] = obj[key];\n }\n return ret;\n}\n\nconst getPublicInstance = (i) => {\n if (!i) return null;\n if (isStatefulComponent(i)) return getComponentPublicInstance(i);\n return getPublicInstance(i.parent);\n};\nconst publicPropertiesMap = (\n // Move PURE marker to new line to workaround compiler discarding it\n // due to type annotation\n /* @__PURE__ */ extend(/* @__PURE__ */ Object.create(null), {\n $: (i) => i,\n $el: (i) => i.vnode.el,\n $data: (i) => i.data,\n $props: (i) => !!(process.env.NODE_ENV !== \"production\") ? shallowReadonly(i.props) : i.props,\n $attrs: (i) => !!(process.env.NODE_ENV !== \"production\") ? shallowReadonly(i.attrs) : i.attrs,\n $slots: (i) => !!(process.env.NODE_ENV !== \"production\") ? shallowReadonly(i.slots) : i.slots,\n $refs: (i) => !!(process.env.NODE_ENV !== \"production\") ? shallowReadonly(i.refs) : i.refs,\n $parent: (i) => getPublicInstance(i.parent),\n $root: (i) => getPublicInstance(i.root),\n $emit: (i) => i.emit,\n $options: (i) => __VUE_OPTIONS_API__ ? resolveMergedOptions(i) : i.type,\n $forceUpdate: (i) => i.f || (i.f = () => {\n i.effect.dirty = true;\n queueJob(i.update);\n }),\n $nextTick: (i) => i.n || (i.n = nextTick.bind(i.proxy)),\n $watch: (i) => __VUE_OPTIONS_API__ ? instanceWatch.bind(i) : NOOP\n })\n);\nconst isReservedPrefix = (key) => key === \"_\" || key === \"$\";\nconst hasSetupBinding = (state, key) => state !== EMPTY_OBJ && !state.__isScriptSetup && hasOwn(state, key);\nconst PublicInstanceProxyHandlers = {\n get({ _: instance }, key) {\n if (key === \"__v_skip\") {\n return true;\n }\n const { ctx, setupState, data, props, accessCache, type, appContext } = instance;\n if (!!(process.env.NODE_ENV !== \"production\") && key === \"__isVue\") {\n return true;\n }\n let normalizedProps;\n if (key[0] !== \"$\") {\n const n = accessCache[key];\n if (n !== void 0) {\n switch (n) {\n case 1 /* SETUP */:\n return setupState[key];\n case 2 /* DATA */:\n return data[key];\n case 4 /* CONTEXT */:\n return ctx[key];\n case 3 /* PROPS */:\n return props[key];\n }\n } else if (hasSetupBinding(setupState, key)) {\n accessCache[key] = 1 /* SETUP */;\n return setupState[key];\n } else if (data !== EMPTY_OBJ && hasOwn(data, key)) {\n accessCache[key] = 2 /* DATA */;\n return data[key];\n } else if (\n // only cache other properties when instance has declared (thus stable)\n // props\n (normalizedProps = instance.propsOptions[0]) && hasOwn(normalizedProps, key)\n ) {\n accessCache[key] = 3 /* PROPS */;\n return props[key];\n } else if (ctx !== EMPTY_OBJ && hasOwn(ctx, key)) {\n accessCache[key] = 4 /* CONTEXT */;\n return ctx[key];\n } else if (!__VUE_OPTIONS_API__ || shouldCacheAccess) {\n accessCache[key] = 0 /* OTHER */;\n }\n }\n const publicGetter = publicPropertiesMap[key];\n let cssModule, globalProperties;\n if (publicGetter) {\n if (key === \"$attrs\") {\n track(instance.attrs, \"get\", \"\");\n !!(process.env.NODE_ENV !== \"production\") && markAttrsAccessed();\n } else if (!!(process.env.NODE_ENV !== \"production\") && key === \"$slots\") {\n track(instance, \"get\", key);\n }\n return publicGetter(instance);\n } else if (\n // css module (injected by vue-loader)\n (cssModule = type.__cssModules) && (cssModule = cssModule[key])\n ) {\n return cssModule;\n } else if (ctx !== EMPTY_OBJ && hasOwn(ctx, key)) {\n accessCache[key] = 4 /* CONTEXT */;\n return ctx[key];\n } else if (\n // global properties\n globalProperties = appContext.config.globalProperties, hasOwn(globalProperties, key)\n ) {\n {\n return globalProperties[key];\n }\n } else if (!!(process.env.NODE_ENV !== \"production\") && currentRenderingInstance && (!isString(key) || // #1091 avoid internal isRef/isVNode checks on component instance leading\n // to infinite warning loop\n key.indexOf(\"__v\") !== 0)) {\n if (data !== EMPTY_OBJ && isReservedPrefix(key[0]) && hasOwn(data, key)) {\n warn$1(\n `Property ${JSON.stringify(\n key\n )} must be accessed via $data because it starts with a reserved character (\"$\" or \"_\") and is not proxied on the render context.`\n );\n } else if (instance === currentRenderingInstance) {\n warn$1(\n `Property ${JSON.stringify(key)} was accessed during render but is not defined on instance.`\n );\n }\n }\n },\n set({ _: instance }, key, value) {\n const { data, setupState, ctx } = instance;\n if (hasSetupBinding(setupState, key)) {\n setupState[key] = value;\n return true;\n } else if (!!(process.env.NODE_ENV !== \"production\") && setupState.__isScriptSetup && hasOwn(setupState, key)) {\n warn$1(`Cannot mutate \r\n\r\n\r\n\r\n","export default \"__VITE_ASSET__CXig10q7__\"","export enum FORM_VALIDATION_MODE {\r\n FIRST_ERROR = \"FIRST_ERROR\",\r\n ALL_ERRORS = \"ALL_ERRORS\",\r\n}\r\n\r\nexport interface FormFieldOptions {\r\n updateOnFocusOut: boolean;\r\n updateOnChange: boolean;\r\n}\r\n\r\n\r\nexport abstract class AbstractForm {\r\n fields: any[];\r\n validationMode: FORM_VALIDATION_MODE;\r\n waitForAPI: boolean;\r\n\r\n protected constructor(props: {\r\n validationMode?: FORM_VALIDATION_MODE;\r\n waitForAPI?: boolean;\r\n }) {\r\n this.fields = []\r\n this.validationMode = props?.validationMode ?? FORM_VALIDATION_MODE.ALL_ERRORS\r\n this.waitForAPI = props?.waitForAPI ?? false\r\n }\r\n\r\n reset(): void {\r\n this.fields.forEach(field => field.reset())\r\n }\r\n\r\n clearErrors(): void {\r\n this.fields.forEach(field => field.clearError())\r\n }\r\n\r\n getCreateData(): any {\r\n const data = {}\r\n for (const field of this.fields) {\r\n if (field.send)\r\n data[field.name] = field.value\r\n }\r\n return data\r\n }\r\n\r\n hasUpdateData(): boolean {\r\n return this.fields.some(field => field.send && field.hasBeenUpdated());\r\n }\r\n\r\n getUpdateData(): any {\r\n const data = {}\r\n for (const field of this.fields)\r\n if (field.send && field.hasBeenUpdated())\r\n data[field.name] = field.value\r\n\r\n return data\r\n }\r\n\r\n\r\n addField(props: FormFieldProps): FormField {\r\n const field = new FormField(props)\r\n this.fields.push(field)\r\n return field\r\n }\r\n\r\n validate(updateErrors: boolean = true): boolean {\r\n switch (this.validationMode) {\r\n case FORM_VALIDATION_MODE.ALL_ERRORS:\r\n // This mode will update the errors of all the fields.\r\n return this.fields.every(field => field.validate(updateErrors))\r\n case FORM_VALIDATION_MODE.FIRST_ERROR:\r\n // This will update the errors until this first error is found.\r\n for (let field of this.fields)\r\n if (!field.validate(updateErrors))\r\n return false\r\n return true\r\n default:\r\n console.error(`unable to validate the form !`)\r\n return false\r\n }\r\n }\r\n\r\n get canBeSent(): boolean {\r\n if (this.waitForAPI)\r\n return false;\r\n\r\n return this.validate(false);\r\n }\r\n\r\n async send(...args: any) {\r\n\r\n }\r\n\r\n catch(error) {\r\n console.error(error)\r\n }\r\n\r\n async submit(...args: any) {\r\n this.clearErrors()\r\n if (!this.canBeSent) {\r\n this.validate(true)\r\n return\r\n }\r\n this.waitForAPI = true\r\n try {\r\n\r\n await this.send(...args)\r\n this.reset()\r\n } catch (error) {\r\n await this.catch(error)\r\n } finally {\r\n this.waitForAPI = false\r\n }\r\n }\r\n}\r\n\r\nexport interface FormFieldProps {\r\n name: string;\r\n send?: boolean;\r\n placeholder?: string;\r\n label?: string;\r\n validators?: ((value: T) => string | undefined | null)[];\r\n defaultValue: T | (() => T);\r\n readonly?: boolean;\r\n required?: boolean;\r\n values?: { label: string; value: T; default?: boolean; }[];\r\n updateOnFocusOut?: boolean;\r\n updateOnChange?: boolean;\r\n}\r\n\r\nexport class FormField {\r\n name: string; // name of the field (used to build create & update data)\r\n send: boolean; // do we include the field in create & update data ?\r\n placeholder: string; // placeholder for the field\r\n label: string; // label for the field\r\n validators: ((value: T) => string | undefined | null)[]; // list of validator functions for the field value\r\n default: () => T; // function that return the field default value\r\n values: { label: string; value: T; default?: boolean; }[]; // in case of a select, list of available options\r\n options: FormFieldOptions; // field options, to configure the field awarenessBehavior\r\n readonly: boolean;\r\n required: boolean;\r\n error: string;\r\n value: T;\r\n\r\n constructor(props: FormFieldProps) {\r\n this.name = props.name;\r\n this.send = props?.send ?? true;\r\n this.placeholder = props?.placeholder ?? '';\r\n this.label = props?.label ?? '';\r\n this.validators = props?.validators ?? [];\r\n if (props.defaultValue instanceof Function) {\r\n this.default = props.defaultValue;\r\n } else {\r\n this.default = () => props.defaultValue as T;\r\n }\r\n this.readonly = props?.readonly ?? false;\r\n this.required = props?.required ?? false;\r\n this.values = props?.values ?? [];\r\n this.options = {\r\n updateOnFocusOut: props?.updateOnFocusOut ?? true,\r\n updateOnChange: props?.updateOnChange ?? false,\r\n };\r\n\r\n this.error = ''\r\n this.value = this.default()\r\n }\r\n\r\n\r\n hasBeenUpdated(): boolean {\r\n return this.value !== this.default()\r\n }\r\n\r\n set(value: T): void {\r\n this.value = value;\r\n }\r\n\r\n reset(): void {\r\n this.error = '';\r\n this.value = this.default();\r\n }\r\n\r\n clearError(): void {\r\n this.error = '';\r\n }\r\n\r\n computeError(): string {\r\n for (const validator of this.validators) {\r\n const error = validator(this.value)\r\n if (error) return error\r\n }\r\n return '';\r\n }\r\n\r\n updateError(): void {\r\n this.error = this.computeError()\r\n }\r\n\r\n validate(updateErrors: boolean): boolean {\r\n if (!updateErrors)\r\n return !this.computeError();\r\n\r\n this.updateError();\r\n return !this.error;\r\n }\r\n\r\n onFocusOut(): void {\r\n if (this.options.updateOnFocusOut) this.updateError()\r\n }\r\n}\r\n","import {JourneyDrawer, JourneyStructure, SurveyCard} from \"../interfaces\";\r\nimport {DRAWER_CATEGORY, JOURNEY_STEP_NAME} from \"@/resources/enums\";\r\nimport {getOthOrOhls} from \"../functions\";\r\nimport {LOCALE_CATEGORIES} from \"@/assets/locales/categories.ts\";\r\nimport Journey from \"@/resources/journey/Journey\";\r\nimport JourneyStep from \"@/resources/journey/JourneyStep\";\r\n\r\nconst PREFIX = LOCALE_CATEGORIES.BILAN_VR_3_0_0 + \".\"\r\n\r\nexport default class BilanVR_5_0_0 extends JourneyStructure {\r\n constructor(journey: Journey) {\r\n super({\r\n locales: [LOCALE_CATEGORIES.BILAN_VR_3_0_0],\r\n drawers: [\r\n new JourneyDrawer({\r\n title: PREFIX + \"drawer_1.title\",\r\n category: DRAWER_CATEGORY.COMMON,\r\n cards: [\r\n new SurveyCard({\r\n title: PREFIX + \"card.wellbeing.title\",\r\n description: PREFIX + \"card.wellbeing.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.MHC) as JourneyStep,\r\n ],\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.fulfillment_at_work.title\",\r\n description: PREFIX + \"card.fulfillment_at_work.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.BPNW) as JourneyStep,\r\n ],\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.feeling_of_effectiveness.title\",\r\n description: PREFIX + \"card.feeling_of_effectiveness.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.GSE) as JourneyStep,\r\n ],\r\n }),\r\n ],\r\n }),\r\n new JourneyDrawer({\r\n title: PREFIX + \"drawer_2.title\",\r\n category: DRAWER_CATEGORY.COMMON,\r\n cards: [\r\n new SurveyCard({\r\n title: PREFIX + \"card.behaviors_to_promote.title\",\r\n description: PREFIX + \"card.behaviors_to_promote.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.BEHAVIOR) as JourneyStep,\r\n ],\r\n }),\r\n ],\r\n }),\r\n new JourneyDrawer({\r\n title: PREFIX + \"drawer_3.title\",\r\n category: DRAWER_CATEGORY.EMO,\r\n cards: [\r\n new SurveyCard({\r\n title: PREFIX + \"card.emo_self_perception.title\",\r\n description: PREFIX + \"card.emo_self_perception.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.EMO_SUBJ_RECOVERY) as JourneyStep,\r\n ],\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.emo_react_to_environment.title\",\r\n description: PREFIX + \"card.emo_react_to_environment.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.PERS_S) as JourneyStep,\r\n ],\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.emo_self_alignment.title\",\r\n description: PREFIX + \"card.emo_self_alignment.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.SCS_SF) as JourneyStep,\r\n ],\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.emo_levers_of_development.title\",\r\n description: PREFIX + \"card.emo_levers_of_development.about\",\r\n steps: getOthOrOhls(journey) as JourneyStep[],\r\n }),\r\n ],\r\n }),\r\n new JourneyDrawer({\r\n title: PREFIX + \"drawer_4.title\",\r\n category: DRAWER_CATEGORY.COG,\r\n cards: [\r\n new SurveyCard({\r\n title: PREFIX + \"card.cog.self_perception.title\",\r\n description: PREFIX + \"card.cog.self_perception.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.COG_SUBJ_FOCUS) as JourneyStep,\r\n journey.getStepByName(JOURNEY_STEP_NAME.COG_SUBJ_INHIBITION) as JourneyStep,\r\n journey.getStepByName(JOURNEY_STEP_NAME.COG_SUBJ_FLEXIBILITY) as JourneyStep,\r\n ],\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.cog.anticipate_and_plan.title\",\r\n description: PREFIX + \"card.cog.anticipate_and_plan.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.PCI_COG) as JourneyStep,\r\n ],\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.cog.uncertainty_self_perception.title\",\r\n description: PREFIX + \"card.cog.uncertainty_self_perception.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.IUS) as JourneyStep,\r\n ],\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.cog.novelty_self_perception.title\",\r\n description: PREFIX + \"card.cog.novelty_self_perception.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.LMS) as JourneyStep,\r\n ],\r\n }),\r\n ],\r\n }),\r\n new JourneyDrawer({\r\n title: PREFIX + \"drawer_5.title\",\r\n category: DRAWER_CATEGORY.SOC,\r\n cards: [\r\n new SurveyCard({\r\n title: PREFIX + \"card.soc.organize_and_coordinate.title\",\r\n description: PREFIX + \"card.soc.organize_and_coordinate.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.PCI_SOC_INS) as JourneyStep,\r\n ],\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.soc.others_perception.title\",\r\n description: PREFIX + \"card.soc.others_perception.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.CS_SF) as JourneyStep,\r\n ],\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.soc.open_to_others.title\",\r\n description: PREFIX + \"card.soc.open_to_others.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.PCI_SOC_EMO) as JourneyStep,\r\n ],\r\n }),\r\n ],\r\n }),\r\n new JourneyDrawer({\r\n title: PREFIX + \"drawer_6.title\",\r\n category: DRAWER_CATEGORY.COMMON,\r\n cards: [\r\n new SurveyCard({\r\n title: PREFIX + \"card.hygiene_data.title\",\r\n description: PREFIX + \"card.hygiene_data.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.HYGIENE) as JourneyStep,\r\n ],\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.demographic_data.title\",\r\n description: PREFIX + \"card.demographic_data.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.DEMOGRAPHIC) as JourneyStep,\r\n ],\r\n }),\r\n ],\r\n }),\r\n ],\r\n })\r\n }\r\n\r\n}","import {JourneyDrawer, JourneyStructure, SurveyCard} from \"../interfaces\";\r\nimport {DRAWER_CATEGORY, JOURNEY_STEP_NAME} from \"@/resources/enums\";\r\nimport {getOthOrOhls} from \"../functions\";\r\nimport {LOCALE_CATEGORIES} from \"@/assets/locales/categories.ts\";\r\nimport Journey from \"@/resources/journey/Journey\";\r\nimport JourneyStep from \"@/resources/journey/JourneyStep\";\r\n\r\nconst PREFIX = LOCALE_CATEGORIES.BILAN_VR_3_0_0 + \".\"\r\n\r\nexport default class BilanVR_4_0_0 extends JourneyStructure {\r\n constructor(journey: Journey) {\r\n super({\r\n locales: [LOCALE_CATEGORIES.BILAN_VR_3_0_0],\r\n drawers: [\r\n new JourneyDrawer({\r\n title: PREFIX + \"drawer_1.title\",\r\n category: DRAWER_CATEGORY.COMMON,\r\n cards: [\r\n new SurveyCard({\r\n title: PREFIX + \"card.wellbeing.title\",\r\n description: PREFIX + \"card.wellbeing.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.MHC) as JourneyStep,\r\n ],\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.fulfillment_at_work.title\",\r\n description: PREFIX + \"card.fulfillment_at_work.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.BPNW) as JourneyStep,\r\n ],\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.feeling_of_effectiveness.title\",\r\n description: PREFIX + \"card.feeling_of_effectiveness.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.GSE) as JourneyStep,\r\n ],\r\n }),\r\n ],\r\n }),\r\n new JourneyDrawer({\r\n title: PREFIX + \"drawer_2.title\",\r\n category: DRAWER_CATEGORY.COMMON,\r\n cards: [\r\n new SurveyCard({\r\n title: PREFIX + \"card.behaviors_to_promote.title\",\r\n description: PREFIX + \"card.behaviors_to_promote.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.BEHAVIOR) as JourneyStep,\r\n ],\r\n }),\r\n ],\r\n }),\r\n new JourneyDrawer({\r\n title: PREFIX + \"drawer_3.title\",\r\n category: DRAWER_CATEGORY.EMO,\r\n cards: [\r\n new SurveyCard({\r\n title: PREFIX + \"card.emo_self_perception.title\",\r\n description: PREFIX + \"card.emo_self_perception.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.EMO_SUBJ_RECOVERY) as JourneyStep,\r\n ],\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.emo_react_to_environment.title\",\r\n description: PREFIX + \"card.emo_react_to_environment.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.PERS_S) as JourneyStep,\r\n ],\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.emo_self_alignment.title\",\r\n description: PREFIX + \"card.emo_self_alignment.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.SCS_SF) as JourneyStep,\r\n ],\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.emo_levers_of_development.title\",\r\n description: PREFIX + \"card.emo_levers_of_development.about\",\r\n steps: getOthOrOhls(journey) as JourneyStep[],\r\n }),\r\n ],\r\n }),\r\n new JourneyDrawer({\r\n title: PREFIX + \"drawer_4.title\",\r\n category: DRAWER_CATEGORY.COG,\r\n cards: [\r\n new SurveyCard({\r\n title: PREFIX + \"card.cog.self_perception.title\",\r\n description: PREFIX + \"card.cog.self_perception.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.COG_SUBJ_FOCUS) as JourneyStep,\r\n journey.getStepByName(JOURNEY_STEP_NAME.COG_SUBJ_INHIBITION) as JourneyStep,\r\n journey.getStepByName(JOURNEY_STEP_NAME.COG_SUBJ_FLEXIBILITY) as JourneyStep,\r\n ],\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.cog.anticipate_and_plan.title\",\r\n description: PREFIX + \"card.cog.anticipate_and_plan.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.PCI_COG) as JourneyStep,\r\n ],\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.cog.uncertainty_self_perception.title\",\r\n description: PREFIX + \"card.cog.uncertainty_self_perception.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.IUS) as JourneyStep,\r\n ],\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.cog.novelty_self_perception.title\",\r\n description: PREFIX + \"card.cog.novelty_self_perception.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.LMS) as JourneyStep,\r\n ],\r\n }),\r\n ],\r\n }),\r\n new JourneyDrawer({\r\n title: PREFIX + \"drawer_5.title\",\r\n category: DRAWER_CATEGORY.SOC,\r\n cards: [\r\n new SurveyCard({\r\n title: PREFIX + \"card.soc.organize_and_coordinate.title\",\r\n description: PREFIX + \"card.soc.organize_and_coordinate.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.PCI_SOC_INS) as JourneyStep,\r\n ],\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.soc.others_perception.title\",\r\n description: PREFIX + \"card.soc.others_perception.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.CS_SF) as JourneyStep,\r\n ],\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.soc.open_to_others.title\",\r\n description: PREFIX + \"card.soc.open_to_others.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.PCI_SOC_EMO) as JourneyStep,\r\n ],\r\n }),\r\n ],\r\n }),\r\n new JourneyDrawer({\r\n title: PREFIX + \"drawer_6.title\",\r\n category: DRAWER_CATEGORY.COMMON,\r\n cards: [\r\n new SurveyCard({\r\n title: PREFIX + \"card.hygiene_data.title\",\r\n description: PREFIX + \"card.hygiene_data.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.HYGIENE) as JourneyStep,\r\n ],\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.demographic_data.title\",\r\n description: PREFIX + \"card.demographic_data.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.DEMOGRAPHIC) as JourneyStep,\r\n ],\r\n }),\r\n ],\r\n }),\r\n ],\r\n })\r\n }\r\n\r\n}","import {JourneyDrawer, JourneyStructure, SurveyCard} from \"../interfaces\";\r\nimport {DRAWER_CATEGORY, JOURNEY_STEP_NAME} from \"@/resources/enums\";\r\nimport {getOthOrOhls} from \"../functions\";\r\nimport {LOCALE_CATEGORIES} from \"@/assets/locales/categories.ts\";\r\nimport Journey from \"@/resources/journey/Journey\";\r\nimport JourneyStep from \"@/resources/journey/JourneyStep\";\r\n\r\nconst PREFIX = LOCALE_CATEGORIES.BILAN_VR_3_0_0 + \".\"\r\n\r\nexport default class BilanVR_3_0_0 extends JourneyStructure {\r\n constructor(journey: Journey) {\r\n super({\r\n locales: [LOCALE_CATEGORIES.BILAN_VR_3_0_0],\r\n drawers: [\r\n new JourneyDrawer({\r\n title: PREFIX + \"drawer_1.title\",\r\n category: DRAWER_CATEGORY.COMMON,\r\n cards: [\r\n new SurveyCard({\r\n title: PREFIX + \"card.wellbeing.title\",\r\n description: PREFIX + \"card.wellbeing.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.MHC) as JourneyStep,\r\n ],\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.fulfillment_at_work.title\",\r\n description: PREFIX + \"card.fulfillment_at_work.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.BPNW) as JourneyStep,\r\n ],\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.feeling_of_effectiveness.title\",\r\n description: PREFIX + \"card.feeling_of_effectiveness.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.GSE) as JourneyStep,\r\n ],\r\n }),\r\n ],\r\n }),\r\n new JourneyDrawer({\r\n title: PREFIX + \"drawer_2.title\",\r\n category: DRAWER_CATEGORY.COMMON,\r\n cards: [\r\n new SurveyCard({\r\n title: PREFIX + \"card.behaviors_to_promote.title\",\r\n description: PREFIX + \"card.behaviors_to_promote.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.BEHAVIOR) as JourneyStep,\r\n ],\r\n }),\r\n ],\r\n }),\r\n new JourneyDrawer({\r\n title: PREFIX + \"drawer_3.title\",\r\n category: DRAWER_CATEGORY.EMO,\r\n cards: [\r\n new SurveyCard({\r\n title: PREFIX + \"card.emo_self_perception.title\",\r\n description: PREFIX + \"card.emo_self_perception.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.EMO_SUBJ_RECOVERY) as JourneyStep,\r\n ],\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.emo_react_to_environment.title\",\r\n description: PREFIX + \"card.emo_react_to_environment.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.PERS_S) as JourneyStep,\r\n ],\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.emo_self_alignment.title\",\r\n description: PREFIX + \"card.emo_self_alignment.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.SCS_SF) as JourneyStep,\r\n ],\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.emo_levers_of_development.title\",\r\n description: PREFIX + \"card.emo_levers_of_development.about\",\r\n steps: getOthOrOhls(journey),\r\n }),\r\n ],\r\n }),\r\n new JourneyDrawer({\r\n title: PREFIX + \"drawer_4.title\",\r\n category: DRAWER_CATEGORY.COG,\r\n cards: [\r\n new SurveyCard({\r\n title: PREFIX + \"card.cog.self_perception.title\",\r\n description: PREFIX + \"card.cog.self_perception.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.COG_SUBJ_FOCUS) as JourneyStep,\r\n journey.getStepByName(JOURNEY_STEP_NAME.COG_SUBJ_INHIBITION) as JourneyStep,\r\n journey.getStepByName(JOURNEY_STEP_NAME.COG_SUBJ_FLEXIBILITY) as JourneyStep,\r\n ],\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.cog.anticipate_and_plan.title\",\r\n description: PREFIX + \"card.cog.anticipate_and_plan.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.PCI_COG) as JourneyStep,\r\n ],\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.cog.uncertainty_self_perception.title\",\r\n description: PREFIX + \"card.cog.uncertainty_self_perception.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.IUS) as JourneyStep,\r\n ],\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.cog.novelty_self_perception.title\",\r\n description: PREFIX + \"card.cog.novelty_self_perception.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.LMS) as JourneyStep,\r\n ],\r\n }),\r\n ],\r\n }),\r\n new JourneyDrawer({\r\n title: PREFIX + \"drawer_5.title\",\r\n category: DRAWER_CATEGORY.SOC,\r\n cards: [\r\n new SurveyCard({\r\n title: PREFIX + \"card.soc.organize_and_coordinate.title\",\r\n description: PREFIX + \"card.soc.organize_and_coordinate.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.PCI_SOC_INS) as JourneyStep,\r\n ],\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.soc.others_perception.title\",\r\n description: PREFIX + \"card.soc.others_perception.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.CS_SF) as JourneyStep,\r\n ],\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.soc.open_to_others.title\",\r\n description: PREFIX + \"card.soc.open_to_others.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.PCI_SOC_EMO) as JourneyStep,\r\n ],\r\n }),\r\n ],\r\n }),\r\n new JourneyDrawer({\r\n title: PREFIX + \"drawer_6.title\",\r\n category: DRAWER_CATEGORY.COMMON,\r\n cards: [\r\n new SurveyCard({\r\n title: PREFIX + \"card.hygiene_data.title\",\r\n description: PREFIX + \"card.hygiene_data.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.HYGIENE) as JourneyStep,\r\n ],\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.demographic_data.title\",\r\n description: PREFIX + \"card.demographic_data.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.DEMOGRAPHIC) as JourneyStep,\r\n ],\r\n }),\r\n ],\r\n }),\r\n ],\r\n })\r\n }\r\n\r\n}","import {JourneyDrawer, JourneyStructure, SurveyCard} from \"../interfaces\";\r\nimport {DRAWER_CATEGORY, JOURNEY_STEP_NAME} from \"@/resources/enums\";\r\nimport {getOthOrOhls} from \"../functions\";\r\nimport {LOCALE_CATEGORIES} from \"@/assets/locales/categories.ts\";\r\nimport Journey from \"@/resources/journey/Journey\";\r\nimport JourneyStep from \"@/resources/journey/JourneyStep\";\r\n\r\nconst PREFIX = LOCALE_CATEGORIES.BILAN_VR_3_0_0 + \".\"\r\n\r\nexport default class BilanVR_2_0_1 extends JourneyStructure {\r\n constructor(journey: Journey) {\r\n super({\r\n locales: [LOCALE_CATEGORIES.BILAN_VR_3_0_0],\r\n drawers: [\r\n new JourneyDrawer({\r\n title: PREFIX + \"drawer_old_1.title\",\r\n category: DRAWER_CATEGORY.COMMON,\r\n cards: [\r\n\r\n new SurveyCard({\r\n title: PREFIX + \"card.emo_self_perception_old.title\",\r\n description: PREFIX + \"card.emo_self_perception.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.EMO_SUBJ_RECOVERY) as JourneyStep,\r\n ],\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.cog.self_perception_old.title\",\r\n description: PREFIX + \"card.cog.self_perception.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.COG_SUBJ_FOCUS) as JourneyStep,\r\n journey.getStepByName(JOURNEY_STEP_NAME.COG_SUBJ_INHIBITION) as JourneyStep,\r\n journey.getStepByName(JOURNEY_STEP_NAME.COG_SUBJ_FLEXIBILITY) as JourneyStep,\r\n ],\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.wellbeing.title\",\r\n description: PREFIX + \"card.wellbeing.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.MHC) as JourneyStep,\r\n ],\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.feeling_of_effectiveness.title\",\r\n description: PREFIX + \"card.feeling_of_effectiveness.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.GSE) as JourneyStep,\r\n ],\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.cog.uncertainty_self_perception.title\",\r\n description: PREFIX + \"card.cog.uncertainty_self_perception.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.IUS) as JourneyStep,\r\n ],\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.emo_levers_of_development.title\",\r\n description: PREFIX + \"card.emo_levers_of_development.about\",\r\n steps: getOthOrOhls(journey),\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.emo_react_to_environment.title\",\r\n description: PREFIX + \"card.emo_react_to_environment.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.PERS_S) as JourneyStep,\r\n ],\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.pci.title\",\r\n description: PREFIX + \"card.pci.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.PCI) as JourneyStep,\r\n ],\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.fulfillment_at_work.title\",\r\n description: PREFIX + \"card.fulfillment_at_work.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.BPNW) as JourneyStep,\r\n ],\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.emo_self_alignment.title\",\r\n description: PREFIX + \"card.emo_self_alignment.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.SCS_SF) as JourneyStep,\r\n ],\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.cog.novelty_self_perception.title\",\r\n description: PREFIX + \"card.cog.novelty_self_perception.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.LMS) as JourneyStep,\r\n ],\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.soc.others_perception.title\",\r\n description: PREFIX + \"card.soc.others_perception.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.CS_SF) as JourneyStep,\r\n ],\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.behaviors_to_promote.title\",\r\n description: PREFIX + \"card.behaviors_to_promote.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.BEHAVIOR) as JourneyStep,\r\n ],\r\n }),\r\n ],\r\n }),\r\n new JourneyDrawer({\r\n title: PREFIX + \"drawer_6.title\",\r\n category: DRAWER_CATEGORY.COMMON,\r\n cards: [\r\n new SurveyCard({\r\n title: PREFIX + \"card.demographic_data.title\",\r\n description: PREFIX + \"card.demographic_data.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.DEMOGRAPHIC) as JourneyStep,\r\n ],\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.hygiene_data.title\",\r\n description: PREFIX + \"card.hygiene_data.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.HYGIENE) as JourneyStep,\r\n ],\r\n }),\r\n ],\r\n }),\r\n\r\n ],\r\n })\r\n }\r\n\r\n}","import {JourneyInfo, JourneyStructure} from \"../interfaces\";\r\nimport {LOCALE_CATEGORIES} from \"@/assets/locales/categories.ts\";\r\nimport Journey from \"@/resources/journey/Journey\";\r\n\r\nconst PREFIX = LOCALE_CATEGORIES.BILAN_VR_3_0_0 + \".\"\r\n\r\nexport default class BilanVR_2_0_1 extends JourneyStructure {\r\n constructor(journey: Journey) {\r\n super({\r\n locales: [LOCALE_CATEGORIES.BILAN_VR_3_0_0],\r\n info: new JourneyInfo({\r\n //img: img_vr_flash,\r\n title: PREFIX + \"bilanvr.deprecated_version.title\",\r\n desc: PREFIX + \"bilanvr.deprecated_version.desc\"\r\n })\r\n })\r\n }\r\n\r\n}","import Journey from \"@/resources/journey/Journey\";\r\nimport {JourneyStructure} from \"../interfaces\";\r\nimport {isCompatibleVersion} from \"../functions\";\r\nimport BilanVR_5_0_0 from \"./BilanVR_5_0_0\";\r\nimport BilanVR_4_0_0 from \"./BilanVR_4_0_0\";\r\nimport BilanVR_3_0_0 from \"./BilanVR_3_0_0\";\r\nimport BilanVR_2_0_1 from \"./BilanVR_2_0_1\";\r\nimport BilanVR_1_3_and_below from \"./BilanVR_1_3_and_below\";\r\n\r\n\r\nexport function bilan_vr_structure_factory(journey: Journey): JourneyStructure {\r\n if (isCompatibleVersion(journey.version, \"6.0.0\"))\r\n return new BilanVR_5_0_0(journey);\r\n\r\n if (isCompatibleVersion(journey.version, \"5.0.0\"))\r\n return new BilanVR_5_0_0(journey);\r\n\r\n if (isCompatibleVersion(journey.version, \"4.0.0\"))\r\n return new BilanVR_4_0_0(journey);\r\n\r\n if (isCompatibleVersion(journey.version, \"3.0.0\"))\r\n return new BilanVR_3_0_0(journey);\r\n\r\n if (isCompatibleVersion(journey.version, \"2.0.1\"))\r\n return new BilanVR_2_0_1(journey);\r\n\r\n if (isCompatibleVersion(journey.version, \"2.0.0\"))\r\n return new BilanVR_2_0_1(journey);\r\n\r\n return new BilanVR_1_3_and_below(journey);\r\n}","import {GameCard, JourneyDrawer, JourneyStructure, SurveyCard} from \"../interfaces\";\r\nimport {DRAWER_CATEGORY, JOURNEY_STEP_NAME} from \"@/resources/enums\";\r\nimport {getOthOrOhls} from \"../functions\";\r\nimport {LOCALE_CATEGORIES} from \"@/assets/locales/categories.ts\";\r\nimport Journey from \"@/resources/journey/Journey\";\r\nimport JourneyStep from \"@/resources/journey/JourneyStep\";\r\n\r\nconst PREFIX = LOCALE_CATEGORIES.LEADERSHIP_6_0_0 + \".\"\r\n\r\nexport default class Leadership_7_0_0 extends JourneyStructure {\r\n constructor(journey: Journey) {\r\n super({\r\n locales: [LOCALE_CATEGORIES.LEADERSHIP_6_0_0],\r\n drawers: [\r\n new JourneyDrawer({\r\n title: PREFIX + \"drawer_1.title\",\r\n category: DRAWER_CATEGORY.COMMON,\r\n cards: [\r\n new SurveyCard({\r\n title: PREFIX + \"card.wellbeing.title\",\r\n description: PREFIX + \"card.wellbeing.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.MHC) as JourneyStep,\r\n ]\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.fulfillment_at_work.title\",\r\n description: PREFIX + \"card.fulfillment_at_work.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.BPNW) as JourneyStep,\r\n ]\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.feeling_of_effectiveness.title\",\r\n description: PREFIX + \"card.feeling_of_effectiveness.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.GSE) as JourneyStep,\r\n ]\r\n }),\r\n ],\r\n }),\r\n new JourneyDrawer({\r\n title: PREFIX + \"drawer_2.title\",\r\n category: DRAWER_CATEGORY.COMMON,\r\n cards: [\r\n new SurveyCard({\r\n title: PREFIX + \"card.behaviors_to_promote.title\",\r\n description: PREFIX + \"card.behaviors_to_promote.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.BEHAVIOR) as JourneyStep,\r\n ]\r\n }),\r\n ],\r\n }),\r\n new JourneyDrawer({\r\n title: PREFIX + \"drawer_3.title\",\r\n category: DRAWER_CATEGORY.EMO,\r\n cards: [\r\n new SurveyCard({\r\n title: PREFIX + \"card.emo_self_perception.title\",\r\n description: PREFIX + \"card.emo_self_perception.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.EMO_SUBJ_SENSITIVITY) as JourneyStep,\r\n journey.getStepByName(JOURNEY_STEP_NAME.EMO_SUBJ_REGULATION) as JourneyStep,\r\n ]\r\n }),\r\n new GameCard({\r\n title: PREFIX + \"card.emo_react_to_environment.title\",\r\n description: PREFIX + \"card.emo_react_to_environment.about\",\r\n step: journey.getStepByName(JOURNEY_STEP_NAME.EMOQUOTATION) as JourneyStep,\r\n }),\r\n new GameCard({\r\n title: PREFIX + \"card.emo_regulation.title\",\r\n description: PREFIX + \"card.emo_regulation.about\",\r\n step: journey.getStepByName(JOURNEY_STEP_NAME.ODDBALL) as JourneyStep,\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.emo_self_alignment.title\",\r\n description: PREFIX + \"card.emo_self_alignment.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.SCS_SF) as JourneyStep,\r\n ]\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.emo_levers_of_development.title\",\r\n description: PREFIX + \"card.emo_levers_of_development.about\",\r\n steps: getOthOrOhls(journey),\r\n }),\r\n ],\r\n }),\r\n new JourneyDrawer({\r\n title: PREFIX + \"drawer_4.title\",\r\n category: DRAWER_CATEGORY.COG,\r\n cards: [\r\n new SurveyCard({\r\n title: PREFIX + \"card.cog.self_perception.title\",\r\n description: PREFIX + \"card.cog.self_perception.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.COG_SUBJ_FOCUS) as JourneyStep,\r\n journey.getStepByName(JOURNEY_STEP_NAME.COG_SUBJ_FLEXIBILITY) as JourneyStep,\r\n journey.getStepByName(JOURNEY_STEP_NAME.COG_SUBJ_RISKTAKING) as JourneyStep,\r\n ],\r\n }),\r\n new GameCard({\r\n title: PREFIX + \"card.cog.follow_goal.title\",\r\n description: PREFIX + \"card.cog.follow_goal.about\",\r\n step: journey.getStepByName(JOURNEY_STEP_NAME.FOCUS) as JourneyStep,\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.cog.anticipate_and_plan.title\",\r\n description: PREFIX + \"card.cog.anticipate_and_plan.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.PCI_COG) as JourneyStep,\r\n ],\r\n }),\r\n new GameCard({\r\n title: PREFIX + \"card.cog.uncertainty_reaction.title\",\r\n description: PREFIX + \"card.cog.uncertainty_reaction.about\",\r\n step: journey.getStepByName(JOURNEY_STEP_NAME.BART) as JourneyStep,\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.cog.uncertainty_self_perception.title\",\r\n description: PREFIX + \"card.cog.uncertainty_self_perception.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.IUS) as JourneyStep,\r\n ],\r\n }),\r\n new GameCard({\r\n title: PREFIX + \"card.cog.novelty_reaction.title\",\r\n description: PREFIX + \"card.cog.novelty_reaction.about\",\r\n step: journey.getStepByName(JOURNEY_STEP_NAME.COGSTROOP) as JourneyStep,\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.cog.novelty_self_perception.title\",\r\n description: PREFIX + \"card.cog.novelty_self_perception.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.LMS) as JourneyStep,\r\n ],\r\n }),\r\n ],\r\n }),\r\n new JourneyDrawer({\r\n title: PREFIX + \"drawer_5.title\",\r\n category: DRAWER_CATEGORY.SOC,\r\n cards: [\r\n new SurveyCard({\r\n title: PREFIX + \"card.soc.self_perception.title\",\r\n description: PREFIX + \"card.soc.self_perception.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.SOC_SUBJ_COOPERATION) as JourneyStep,\r\n journey.getStepByName(JOURNEY_STEP_NAME.SOC_SUBJ_EMPATHY) as JourneyStep,\r\n ],\r\n }),\r\n new GameCard({\r\n title: PREFIX + \"card.soc.collaboration.title\",\r\n description: PREFIX + \"card.soc.collaboration.about\",\r\n step: journey.getStepByName(JOURNEY_STEP_NAME.ULTIMATUM) as JourneyStep,\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.soc.organize_and_coordinate.title\",\r\n description: PREFIX + \"card.soc.organize_and_coordinate.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.PCI_SOC_INS) as JourneyStep,\r\n ],\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.soc.others_perception.title\",\r\n description: PREFIX + \"card.soc.others_perception.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.CS_SF) as JourneyStep,\r\n ],\r\n }),\r\n new GameCard({\r\n title: PREFIX + \"card.soc.others_reaction.title\",\r\n description: PREFIX + \"card.soc.others_reaction.about\",\r\n step: journey.getStepByName(JOURNEY_STEP_NAME.RME) as JourneyStep,\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.soc.open_to_others.title\",\r\n description: PREFIX + \"card.soc.open_to_others.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.PCI_SOC_EMO) as JourneyStep,\r\n ],\r\n }),\r\n ],\r\n }),\r\n new JourneyDrawer({\r\n title: PREFIX + \"drawer_6.title\",\r\n category: DRAWER_CATEGORY.COMMON,\r\n cards: [\r\n new SurveyCard({\r\n title: PREFIX + \"card.demographic_data.title\",\r\n description: PREFIX + \"card.demographic_data.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.DEMOGRAPHIC) as JourneyStep\r\n ],\r\n }),\r\n ],\r\n }),\r\n ],\r\n });\r\n }\r\n\r\n}","import {GameCard, JourneyDrawer, JourneyStructure, SurveyCard} from \"../interfaces\";\r\nimport {DRAWER_CATEGORY, JOURNEY_STEP_NAME} from \"@/resources/enums\";\r\nimport {getOthOrOhls} from \"../functions\";\r\nimport {LOCALE_CATEGORIES} from \"@/assets/locales/categories.ts\";\r\nimport Journey from \"@/resources/journey/Journey\";\r\nimport JourneyStep from \"@/resources/journey/JourneyStep\";\r\n\r\nconst PREFIX = LOCALE_CATEGORIES.LEADERSHIP_6_0_0 + \".\"\r\n\r\nexport default class Leadership_6_0_0 extends JourneyStructure {\r\n constructor(journey: Journey) {\r\n super({\r\n locales: [LOCALE_CATEGORIES.LEADERSHIP_6_0_0],\r\n drawers: [\r\n new JourneyDrawer({\r\n title: PREFIX + \"drawer_1.title\",\r\n category: DRAWER_CATEGORY.COMMON,\r\n cards: [\r\n new SurveyCard({\r\n title: PREFIX + \"card.wellbeing.title\",\r\n description: PREFIX + \"card.wellbeing.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.MHC) as JourneyStep,\r\n ]\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.fulfillment_at_work.title\",\r\n description: PREFIX + \"card.fulfillment_at_work.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.BPNW) as JourneyStep,\r\n ]\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.feeling_of_effectiveness.title\",\r\n description: PREFIX + \"card.feeling_of_effectiveness.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.GSE) as JourneyStep,\r\n ]\r\n }),\r\n ],\r\n }),\r\n new JourneyDrawer({\r\n title: PREFIX + \"drawer_2.title\",\r\n category: DRAWER_CATEGORY.COMMON,\r\n cards: [\r\n new SurveyCard({\r\n title: PREFIX + \"card.behaviors_to_promote.title\",\r\n description: PREFIX + \"card.behaviors_to_promote.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.BEHAVIOR) as JourneyStep,\r\n ]\r\n }),\r\n ],\r\n }),\r\n new JourneyDrawer({\r\n title: PREFIX + \"drawer_3.title\",\r\n category: DRAWER_CATEGORY.EMO,\r\n cards: [\r\n new SurveyCard({\r\n title: PREFIX + \"card.emo_self_perception.title\",\r\n description: PREFIX + \"card.emo_self_perception.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.EMO_SUBJ_SENSITIVITY) as JourneyStep,\r\n journey.getStepByName(JOURNEY_STEP_NAME.EMO_SUBJ_REGULATION) as JourneyStep,\r\n ]\r\n }),\r\n new GameCard({\r\n title: PREFIX + \"card.emo_react_to_environment.title\",\r\n description: PREFIX + \"card.emo_react_to_environment.about\",\r\n step: journey.getStepByName(JOURNEY_STEP_NAME.EMOQUOTATION) as JourneyStep,\r\n }),\r\n new GameCard({\r\n title: PREFIX + \"card.emo_regulation.title\",\r\n description: PREFIX + \"card.emo_regulation.about\",\r\n step: journey.getStepByName(JOURNEY_STEP_NAME.ODDBALL) as JourneyStep,\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.emo_self_alignment.title\",\r\n description: PREFIX + \"card.emo_self_alignment.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.SCS_SF) as JourneyStep,\r\n ]\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.emo_levers_of_development.title\",\r\n description: PREFIX + \"card.emo_levers_of_development.about\",\r\n steps: getOthOrOhls(journey),\r\n }),\r\n ],\r\n }),\r\n new JourneyDrawer({\r\n title: PREFIX + \"drawer_4.title\",\r\n category: DRAWER_CATEGORY.COG,\r\n cards: [\r\n new SurveyCard({\r\n title: PREFIX + \"card.cog.self_perception.title\",\r\n description: PREFIX + \"card.cog.self_perception.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.COG_SUBJ_FOCUS) as JourneyStep,\r\n journey.getStepByName(JOURNEY_STEP_NAME.COG_SUBJ_FLEXIBILITY) as JourneyStep,\r\n journey.getStepByName(JOURNEY_STEP_NAME.COG_SUBJ_RISKTAKING) as JourneyStep,\r\n ],\r\n }),\r\n new GameCard({\r\n title: PREFIX + \"card.cog.follow_goal.title\",\r\n description: PREFIX + \"card.cog.follow_goal.about\",\r\n step: journey.getStepByName(JOURNEY_STEP_NAME.FOCUS) as JourneyStep,\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.cog.anticipate_and_plan.title\",\r\n description: PREFIX + \"card.cog.anticipate_and_plan.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.PCI_COG) as JourneyStep,\r\n ],\r\n }),\r\n new GameCard({\r\n title: PREFIX + \"card.cog.uncertainty_reaction.title\",\r\n description: PREFIX + \"card.cog.uncertainty_reaction.about\",\r\n step: journey.getStepByName(JOURNEY_STEP_NAME.BART) as JourneyStep,\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.cog.uncertainty_self_perception.title\",\r\n description: PREFIX + \"card.cog.uncertainty_self_perception.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.IUS) as JourneyStep,\r\n ],\r\n }),\r\n new GameCard({\r\n title: PREFIX + \"card.cog.novelty_reaction.title\",\r\n description: PREFIX + \"card.cog.novelty_reaction.about\",\r\n step: journey.getStepByName(JOURNEY_STEP_NAME.COGSTROOP) as JourneyStep,\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.cog.novelty_self_perception.title\",\r\n description: PREFIX + \"card.cog.novelty_self_perception.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.LMS) as JourneyStep,\r\n ],\r\n }),\r\n ],\r\n }),\r\n new JourneyDrawer({\r\n title: PREFIX + \"drawer_5.title\",\r\n category: DRAWER_CATEGORY.SOC,\r\n cards: [\r\n new SurveyCard({\r\n title: PREFIX + \"card.soc.self_perception.title\",\r\n description: PREFIX + \"card.soc.self_perception.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.SOC_SUBJ_COOPERATION) as JourneyStep,\r\n journey.getStepByName(JOURNEY_STEP_NAME.SOC_SUBJ_EMPATHY) as JourneyStep,\r\n ],\r\n }),\r\n new GameCard({\r\n title: PREFIX + \"card.soc.collaboration.title\",\r\n description: PREFIX + \"card.soc.collaboration.about\",\r\n step: journey.getStepByName(JOURNEY_STEP_NAME.ULTIMATUM) as JourneyStep,\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.soc.organize_and_coordinate.title\",\r\n description: PREFIX + \"card.soc.organize_and_coordinate.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.PCI_SOC_INS) as JourneyStep,\r\n ],\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.soc.others_perception.title\",\r\n description: PREFIX + \"card.soc.others_perception.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.CS_SF) as JourneyStep,\r\n ],\r\n }),\r\n new GameCard({\r\n title: PREFIX + \"card.soc.others_reaction.title\",\r\n description: PREFIX + \"card.soc.others_reaction.about\",\r\n step: journey.getStepByName(JOURNEY_STEP_NAME.RME) as JourneyStep,\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.soc.open_to_others.title\",\r\n description: PREFIX + \"card.soc.open_to_others.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.PCI_SOC_EMO) as JourneyStep,\r\n ],\r\n }),\r\n ],\r\n }),\r\n new JourneyDrawer({\r\n title: PREFIX + \"drawer_6.title\",\r\n category: DRAWER_CATEGORY.COMMON,\r\n cards: [\r\n new SurveyCard({\r\n title: PREFIX + \"card.demographic_data.title\",\r\n description: PREFIX + \"card.demographic_data.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.DEMOGRAPHIC) as JourneyStep\r\n ],\r\n }),\r\n ],\r\n }),\r\n ],\r\n });\r\n }\r\n\r\n}","import {GameCard, JourneyDrawer, JourneyStructure, SurveyCard} from \"../interfaces\";\r\nimport {DRAWER_CATEGORY, JOURNEY_STEP_NAME} from \"@/resources/enums\";\r\nimport {getOthOrOhls} from \"../functions\";\r\nimport {LOCALE_CATEGORIES} from \"@/assets/locales/categories.ts\";\r\nimport Journey from \"@/resources/journey/Journey\";\r\nimport JourneyStep from \"@/resources/journey/JourneyStep\";\r\n\r\nconst PREFIX = LOCALE_CATEGORIES.LEADERSHIP_6_0_0 + \".\"\r\n\r\nexport default class Leadership_5_0_0 extends JourneyStructure {\r\n constructor(journey: Journey) {\r\n super({\r\n locales: [LOCALE_CATEGORIES.LEADERSHIP_6_0_0],\r\n drawers: [\r\n new JourneyDrawer({\r\n title: PREFIX + \"drawer_3.title\",\r\n category: DRAWER_CATEGORY.EMO,\r\n cards: [\r\n\r\n new SurveyCard({\r\n title: PREFIX + \"card.emo_self_perception.title\",\r\n description: PREFIX + \"card.emo_self_perception.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.EMO_SUBJ_SENSITIVITY) as JourneyStep,\r\n journey.getStepByName(JOURNEY_STEP_NAME.EMO_SUBJ_REGULATION) as JourneyStep,\r\n ]\r\n }),\r\n new GameCard({\r\n title: PREFIX + \"card.emo_regulation.title\",\r\n description: PREFIX + \"card.emo_regulation.about\",\r\n step: journey.getStepByName(JOURNEY_STEP_NAME.ODDBALL) as JourneyStep,\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.emo_levers_of_development.title\",\r\n description: PREFIX + \"card.emo_levers_of_development.about\",\r\n steps: getOthOrOhls(journey),\r\n }),\r\n new GameCard({\r\n title: PREFIX + \"card.emo_react_to_environment.title\",\r\n description: PREFIX + \"card.emo_react_to_environment.about\",\r\n step: journey.getStepByName(JOURNEY_STEP_NAME.EMOQUOTATION) as JourneyStep,\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.emo_self_alignment.title\",\r\n description: PREFIX + \"card.emo_self_alignment.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.SCS_SF) as JourneyStep,\r\n ]\r\n }),\r\n ]\r\n }),\r\n new JourneyDrawer({\r\n title: PREFIX + \"drawer_1.title\",\r\n category: DRAWER_CATEGORY.COMMON,\r\n cards: [\r\n new SurveyCard({\r\n title: PREFIX + \"card.wellbeing.title\",\r\n description: PREFIX + \"card.wellbeing.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.MHC) as JourneyStep,\r\n ]\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.feeling_of_effectiveness.title\",\r\n description: PREFIX + \"card.feeling_of_effectiveness.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.GSE) as JourneyStep,\r\n ]\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.fulfillment_at_work.title\",\r\n description: PREFIX + \"card.fulfillment_at_work.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.BPNW) as JourneyStep,\r\n ]\r\n }),\r\n ]\r\n }),\r\n new JourneyDrawer({\r\n title: PREFIX + \"drawer_4.title\",\r\n category: DRAWER_CATEGORY.COG,\r\n cards: [\r\n new SurveyCard({\r\n title: PREFIX + \"card.cog.self_perception.title\",\r\n description: PREFIX + \"card.cog.self_perception.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.COG_SUBJ_FOCUS) as JourneyStep,\r\n journey.getStepByName(JOURNEY_STEP_NAME.COG_SUBJ_FLEXIBILITY) as JourneyStep,\r\n journey.getStepByName(JOURNEY_STEP_NAME.COG_SUBJ_RISKTAKING) as JourneyStep,\r\n ],\r\n }),\r\n new GameCard({\r\n title: PREFIX + \"card.cog.follow_goal.title\",\r\n description: PREFIX + \"card.cog.follow_goal.about\",\r\n step: journey.getStepByName(JOURNEY_STEP_NAME.FOCUS) as JourneyStep,\r\n }),\r\n new GameCard({\r\n title: PREFIX + \"card.cog.uncertainty_reaction.title\",\r\n description: PREFIX + \"card.cog.uncertainty_reaction.about\",\r\n step: journey.getStepByName(JOURNEY_STEP_NAME.BART) as JourneyStep,\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.cog.uncertainty_self_perception.title\",\r\n description: PREFIX + \"card.cog.uncertainty_self_perception.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.IUS) as JourneyStep,\r\n ],\r\n }),\r\n new GameCard({\r\n title: PREFIX + \"card.cog.novelty_reaction.title\",\r\n description: PREFIX + \"card.cog.novelty_reaction.about\",\r\n step: journey.getStepByName(JOURNEY_STEP_NAME.COGSTROOP) as JourneyStep,\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.cog.novelty_self_perception.title\",\r\n description: PREFIX + \"card.cog.novelty_self_perception.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.LMS) as JourneyStep,\r\n ],\r\n }),\r\n ]\r\n }),\r\n new JourneyDrawer({\r\n title: PREFIX + \"drawer_5.title\",\r\n category: DRAWER_CATEGORY.SOC,\r\n cards: [\r\n new SurveyCard({\r\n title: PREFIX + \"card.soc.self_perception.title\",\r\n description: PREFIX + \"card.soc.self_perception.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.SOC_SUBJ_COOPERATION) as JourneyStep,\r\n journey.getStepByName(JOURNEY_STEP_NAME.SOC_SUBJ_EMPATHY) as JourneyStep,\r\n ],\r\n }),\r\n new GameCard({\r\n title: PREFIX + \"card.soc.collaboration.title\",\r\n description: PREFIX + \"card.soc.collaboration.about\",\r\n step: journey.getStepByName(JOURNEY_STEP_NAME.ULTIMATUM) as JourneyStep,\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.soc.others_perception.title\",\r\n description: PREFIX + \"card.soc.others_perception.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.CS_SF) as JourneyStep,\r\n ],\r\n }),\r\n new GameCard({\r\n title: PREFIX + \"card.soc.others_reaction.title\",\r\n description: PREFIX + \"card.soc.others_reaction.about\",\r\n step: journey.getStepByName(JOURNEY_STEP_NAME.RME) as JourneyStep,\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.pci.title\",\r\n description: PREFIX + \"card.pci.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.PCI) as JourneyStep,\r\n ],\r\n }),\r\n ]\r\n }),\r\n new JourneyDrawer({\r\n title: PREFIX + \"drawer_2.title\",\r\n category: DRAWER_CATEGORY.COMMON,\r\n cards: [\r\n new SurveyCard({\r\n title: PREFIX + \"card.behaviors_to_promote.title\",\r\n description: PREFIX + \"card.behaviors_to_promote.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.BEHAVIOR) as JourneyStep,\r\n ]\r\n }),\r\n ],\r\n }),\r\n new JourneyDrawer({\r\n title: PREFIX + \"drawer_6.title\",\r\n category: DRAWER_CATEGORY.COMMON,\r\n cards: [\r\n new SurveyCard({\r\n title: PREFIX + \"card.demographic_data.title\",\r\n description: PREFIX + \"card.demographic_data.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.DEMOGRAPHIC) as JourneyStep\r\n ],\r\n }),\r\n ],\r\n }),\r\n ],\r\n });\r\n }\r\n\r\n}","import {JourneyInfo, JourneyStructure} from \"../interfaces\";\r\nimport {LOCALE_CATEGORIES} from \"@/assets/locales/categories.ts\";\r\nimport Journey from \"@/resources/journey/Journey\";\r\n\r\nconst PREFIX = LOCALE_CATEGORIES.LEADERSHIP_6_0_0 + \".\"\r\n\r\nexport default class Leadership_4_0_1 extends JourneyStructure {\r\n constructor(journey: Journey) {\r\n super({\r\n locales: [LOCALE_CATEGORIES.LEADERSHIP_6_0_0],\r\n info: new JourneyInfo({\r\n //img: img_vr_flash,\r\n title: PREFIX + \"leadership.deprecated_version.title\",\r\n desc: PREFIX + \"leadership.deprecated_version.desc\"\r\n })\r\n });\r\n }\r\n\r\n}","import Journey from \"@/resources/journey/Journey\";\r\nimport {JourneyStructure} from \"@/resources/journey/drawers/interfaces\";\r\nimport Leadership_7_0_0 from \"./Leadership_7_0_0\";\r\nimport Leadership_6_0_0 from \"./Leadership_6_0_0\";\r\nimport Leadership_5_0_0 from \"./Leadership_5_0_0\";\r\nimport Leadership_3_and_below from \"./Leadership_3_and_below\";\r\nimport {isCompatibleVersion} from \"@/resources/journey/drawers/functions\";\r\n\r\n\r\nexport function leadership_structure_factory(journey: Journey): JourneyStructure {\r\n if (isCompatibleVersion(journey.version, \"9.0.0\"))\r\n return new Leadership_7_0_0(journey);\r\n\r\n if (isCompatibleVersion(journey.version, \"8.1.0\"))\r\n return new Leadership_7_0_0(journey);\r\n\r\n if (isCompatibleVersion(journey.version, \"8.0.0\"))\r\n return new Leadership_7_0_0(journey);\r\n\r\n if (isCompatibleVersion(journey.version, \"7.1.0\"))\r\n return new Leadership_7_0_0(journey);\r\n\r\n if (isCompatibleVersion(journey.version, \"7.0.0\"))\r\n return new Leadership_7_0_0(journey);\r\n\r\n if (isCompatibleVersion(journey.version, \"6.0.0\"))\r\n return new Leadership_6_0_0(journey);\r\n\r\n if (isCompatibleVersion(journey.version, \"5.0.0\"))\r\n return new Leadership_5_0_0(journey);\r\n\r\n if (isCompatibleVersion(journey.version, \"4.0.1\"))\r\n return new Leadership_3_and_below(journey);\r\n\r\n if (isCompatibleVersion(journey.version, \"4.0.0\"))\r\n return new Leadership_3_and_below(journey);\r\n\r\n return new Leadership_3_and_below(journey);\r\n}","import Journey from \"@/resources/journey/Journey\";\r\nimport {JourneyStructure} from \"../interfaces\";\r\nimport Leadership_7_0_0 from \"../leadership/Leadership_7_0_0\";\r\nimport {isCompatibleVersion} from \"../functions\";\r\n\r\n\r\nexport function ascent_online_structure_factory(journey: Journey): JourneyStructure {\r\n if (isCompatibleVersion(journey.version, \"3.0.0\"))\r\n return new Leadership_7_0_0(journey);\r\n \r\n if (isCompatibleVersion(journey.version, \"2.1.0\"))\r\n return new Leadership_7_0_0(journey);\r\n\r\n if (isCompatibleVersion(journey.version, \"2.0.0\"))\r\n return new Leadership_7_0_0(journey);\r\n\r\n if (isCompatibleVersion(journey.version, \"1.1.0\"))\r\n return new Leadership_7_0_0(journey);\r\n\r\n if (isCompatibleVersion(journey.version, \"1.0.0\"))\r\n return new Leadership_7_0_0(journey);\r\n\r\n throw Error(`unhandled ${journey.name} version ${journey.version}`);\r\n}","export default \"__VITE_ASSET__CzK8a9BB__\"","import {JourneyInfo, JourneyStructure} from \"../interfaces\";\r\nimport img_vr_quest from \"@/assets/images/journey-steps/vr_quest.jpg\"\r\nimport {LOCALE_CATEGORIES} from \"@/assets/locales/categories.ts\";\r\nimport Journey from \"@/resources/journey/Journey\";\r\n\r\nconst PREFIX = LOCALE_CATEGORIES.BILAN_VR_QUEST_1_0_0 + \".\"\r\n\r\nexport default class BilanVRQuest_1_0_0 extends JourneyStructure {\r\n constructor(journey: Journey) {\r\n super({\r\n locales: [LOCALE_CATEGORIES.BILAN_VR_QUEST_1_0_0],\r\n info: new JourneyInfo({\r\n img: img_vr_quest,\r\n title: PREFIX + \"journey_info.title\",\r\n desc: PREFIX + \"journey_info.desc\"\r\n })\r\n })\r\n }\r\n\r\n}","import Journey from \"@/resources/journey/Journey\";\r\nimport {JourneyStructure} from \"../interfaces\";\r\nimport {isCompatibleVersion} from \"../functions\";\r\nimport BilanVRQuest_1_0_0 from \"./BilanVRQuest_1_0_0\";\r\n\r\n\r\nexport function bilan_vr_quest_structure_factory(journey: Journey): JourneyStructure {\r\n if (isCompatibleVersion(journey.version, \"1.0.0\"))\r\n return new BilanVRQuest_1_0_0(journey);\r\n\r\n throw Error(`unhandled ${journey.name} version ${journey.version}`);\r\n}","import Journey from \"@/resources/journey/Journey.ts\";\r\nimport {JourneyStructure} from \"@/resources/journey/drawers/interfaces.ts\";\r\nimport BilanVR_5_0_0 from \"@/resources/journey/drawers/bilan_vr/BilanVR_5_0_0.ts\";\r\nimport {isCompatibleVersion} from \"@/resources/journey/drawers/functions.ts\";\r\n\r\n\r\nexport function ascent_vr_structure_factory(journey: Journey): JourneyStructure {\r\n if (isCompatibleVersion(journey.version, \"2.0.0\"))\r\n return new BilanVR_5_0_0(journey);\r\n\r\n if (isCompatibleVersion(journey.version, \"1.1.0\"))\r\n return new BilanVR_5_0_0(journey);\r\n\r\n if (isCompatibleVersion(journey.version, \"1.0.0\"))\r\n return new BilanVR_5_0_0(journey);\r\n\r\n throw Error(`unhandled ${journey.name} version ${journey.version}`);\r\n}","import {GameCard, JourneyDrawer, JourneyStructure, SurveyCard} from \"../interfaces\";\r\nimport {DRAWER_CATEGORY, JOURNEY_STEP_NAME} from \"@/resources/enums\";\r\nimport {LOCALE_CATEGORIES} from \"@/assets/locales/categories.ts\";\r\nimport Journey from \"@/resources/journey/Journey\";\r\nimport JourneyStep from \"@/resources/journey/JourneyStep\";\r\n\r\nconst PREFIX = LOCALE_CATEGORIES.RESILIENCE_2_0_0 + \".\"\r\n\r\nexport default class Resilience_2_0_0 extends JourneyStructure {\r\n constructor(journey: Journey) {\r\n super({\r\n locales: [LOCALE_CATEGORIES.RESILIENCE_2_0_0],\r\n drawers: [\r\n new JourneyDrawer({\r\n title: PREFIX + \"drawer_1.title\",\r\n category: DRAWER_CATEGORY.COMMON,\r\n cards: [\r\n new SurveyCard({\r\n title: PREFIX + \"card.wellbeing.title\",\r\n description: PREFIX + \"card.wellbeing.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.MHC) as JourneyStep,\r\n ]\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.fulfillment_at_work.title\",\r\n description: PREFIX + \"card.fulfillment_at_work.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.BPNW) as JourneyStep,\r\n ]\r\n }),\r\n ],\r\n }),\r\n new JourneyDrawer({\r\n title: PREFIX + \"drawer_2.title\",\r\n category: DRAWER_CATEGORY.COMMON,\r\n cards: [\r\n new SurveyCard({\r\n title: PREFIX + \"card.uncertainty_tolerance.title\",\r\n description: PREFIX + \"card.uncertainty_tolerance.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.IUS) as JourneyStep,\r\n ],\r\n }),\r\n new GameCard({\r\n title: PREFIX + \"card.emo_regulation.title\",\r\n description: PREFIX + \"card.emo_regulation.about\",\r\n step: journey.getStepByName(JOURNEY_STEP_NAME.ODDBALL) as JourneyStep,\r\n }),\r\n new GameCard({\r\n title: PREFIX + \"card.risk_taking.title\",\r\n description: PREFIX + \"card.risk_taking.about\",\r\n step: journey.getStepByName(JOURNEY_STEP_NAME.BART) as JourneyStep,\r\n }),\r\n ],\r\n }),\r\n new JourneyDrawer({\r\n title: PREFIX + \"drawer_3.title\",\r\n category: DRAWER_CATEGORY.COMMON,\r\n cards: [\r\n new SurveyCard({\r\n title: PREFIX + \"card.demographic_data.title\",\r\n description: PREFIX + \"card.demographic_data.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.DEMOGRAPHIC) as JourneyStep\r\n ],\r\n }),\r\n ],\r\n }),\r\n ],\r\n });\r\n }\r\n\r\n}","import {GameCard, JourneyDrawer, JourneyStructure, SurveyCard} from \"../interfaces\";\r\nimport {DRAWER_CATEGORY, JOURNEY_STEP_NAME} from \"@/resources/enums\";\r\nimport {LOCALE_CATEGORIES} from \"@/assets/locales/categories.ts\";\r\nimport Journey from \"@/resources/journey/Journey\";\r\nimport JourneyStep from \"@/resources/journey/JourneyStep\";\r\n\r\nconst PREFIX = LOCALE_CATEGORIES.RESILIENCE_2_0_0 + \".\"\r\n\r\nexport default class Resilience_2_0_0 extends JourneyStructure {\r\n constructor(journey: Journey) {\r\n super({\r\n locales: [LOCALE_CATEGORIES.RESILIENCE_2_0_0],\r\n drawers: [\r\n new JourneyDrawer({\r\n title: PREFIX + \"drawer_1.title\",\r\n category: DRAWER_CATEGORY.COMMON,\r\n cards: [\r\n new SurveyCard({\r\n title: PREFIX + \"card.wellbeing.title\",\r\n description: PREFIX + \"card.wellbeing.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.MHC) as JourneyStep,\r\n ]\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.fulfillment_at_work.title\",\r\n description: PREFIX + \"card.fulfillment_at_work.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.BPNW) as JourneyStep,\r\n ]\r\n }),\r\n ],\r\n }),\r\n new JourneyDrawer({\r\n title: PREFIX + \"drawer_2.title\",\r\n category: DRAWER_CATEGORY.COMMON,\r\n cards: [\r\n new SurveyCard({\r\n title: PREFIX + \"card.uncertainty_tolerance.title\",\r\n description: PREFIX + \"card.uncertainty_tolerance.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.IUS) as JourneyStep,\r\n ],\r\n }),\r\n new GameCard({\r\n title: PREFIX + \"card.emo_regulation.title\",\r\n description: PREFIX + \"card.emo_regulation.about\",\r\n step: journey.getStepByName(JOURNEY_STEP_NAME.ODDBALL) as JourneyStep,\r\n }),\r\n new GameCard({\r\n title: PREFIX + \"card.risk_taking.title\",\r\n description: PREFIX + \"card.risk_taking.about\",\r\n step: journey.getStepByName(JOURNEY_STEP_NAME.BART) as JourneyStep,\r\n }),\r\n ],\r\n }),\r\n new JourneyDrawer({\r\n title: PREFIX + \"drawer_3.title\",\r\n category: DRAWER_CATEGORY.COMMON,\r\n cards: [\r\n new SurveyCard({\r\n title: PREFIX + \"card.demographic_data.title\",\r\n description: PREFIX + \"card.demographic_data.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.DEMOGRAPHIC) as JourneyStep\r\n ],\r\n }),\r\n ],\r\n }),\r\n ],\r\n });\r\n }\r\n\r\n}","import {GameCard, JourneyDrawer, JourneyStructure, SurveyCard} from \"../interfaces\";\r\nimport {DRAWER_CATEGORY, JOURNEY_STEP_NAME} from \"@/resources/enums\";\r\nimport {LOCALE_CATEGORIES} from \"@/assets/locales/categories.ts\";\r\nimport Journey from \"@/resources/journey/Journey\";\r\nimport JourneyStep from \"@/resources/journey/JourneyStep\";\r\n\r\nconst PREFIX = LOCALE_CATEGORIES.RESILIENCE_2_0_0 + \".\"\r\n\r\nexport default class Resilience_1_3_2 extends JourneyStructure {\r\n constructor(journey: Journey) {\r\n super({\r\n locales: [LOCALE_CATEGORIES.RESILIENCE_2_0_0],\r\n drawers: [\r\n new JourneyDrawer({\r\n title: PREFIX + \"drawer_old_1.title\",\r\n category: DRAWER_CATEGORY.COMMON,\r\n cards: [\r\n new SurveyCard({\r\n title: PREFIX + \"card.wellbeing.title\",\r\n description: PREFIX + \"card.wellbeing.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.MHC) as JourneyStep,\r\n ]\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.uncertainty_tolerance.title\",\r\n description: PREFIX + \"card.uncertainty_tolerance.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.IUS) as JourneyStep,\r\n ],\r\n }),\r\n new GameCard({\r\n title: PREFIX + \"card.emo_regulation.title\",\r\n description: PREFIX + \"card.emo_regulation.about\",\r\n step: journey.getStepByName(JOURNEY_STEP_NAME.ODDBALL) as JourneyStep,\r\n }),\r\n new GameCard({\r\n title: PREFIX + \"card.risk_taking.title\",\r\n description: PREFIX + \"card.risk_taking.about\",\r\n step: journey.getStepByName(JOURNEY_STEP_NAME.BART) as JourneyStep,\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.fulfillment_at_work.title\",\r\n description: PREFIX + \"card.fulfillment_at_work.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.BPNW) as JourneyStep,\r\n ]\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.demographic_data.title\",\r\n description: PREFIX + \"card.demographic_data.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.DEMOGRAPHIC) as JourneyStep\r\n ],\r\n }),\r\n ],\r\n }),\r\n ],\r\n });\r\n }\r\n\r\n}","import {JourneyInfo, JourneyStructure} from \"../interfaces\";\r\nimport {LOCALE_CATEGORIES} from \"@/assets/locales/categories.ts\";\r\nimport Journey from \"@/resources/journey/Journey\";\r\n\r\nconst PREFIX = LOCALE_CATEGORIES.RESILIENCE_2_0_0 + \".\"\r\n\r\nexport default class Resilience_1_3_2 extends JourneyStructure {\r\n constructor(journey: Journey) {\r\n super({\r\n locales: [LOCALE_CATEGORIES.RESILIENCE_2_0_0],\r\n info: new JourneyInfo({\r\n //img: img_vr_flash,\r\n title: PREFIX + \"resilience.deprecated_version.title\",\r\n desc: PREFIX + \"resilience.deprecated_version.desc\"\r\n })\r\n });\r\n }\r\n\r\n}","import Journey from \"@/resources/journey/Journey\";\r\nimport {JourneyStructure} from \"../interfaces\";\r\nimport {isCompatibleVersion} from \"../functions\";\r\nimport Resilience_3_0_0 from \"./Resilience_3_0_0\";\r\nimport Resilience_2_0_0 from \"./Resilience_2_0_0\";\r\nimport Resilience_1_3_2 from \"./Resilience_1_3_2\";\r\nimport Resilience_1_2_and_below from \"./Resilience_1_2_and_below\";\r\n\r\nexport function resilience_structure_factory(journey: Journey): JourneyStructure {\r\n if (isCompatibleVersion(journey.version, \"5.0.0\"))\r\n return new Resilience_3_0_0(journey);\r\n \r\n if (isCompatibleVersion(journey.version, \"4.1.0\"))\r\n return new Resilience_3_0_0(journey);\r\n\r\n if (isCompatibleVersion(journey.version, \"4.0.0\"))\r\n return new Resilience_3_0_0(journey);\r\n\r\n if (isCompatibleVersion(journey.version, \"3.0.0\"))\r\n return new Resilience_3_0_0(journey);\r\n\r\n if (isCompatibleVersion(journey.version, \"2.0.0\"))\r\n return new Resilience_2_0_0(journey);\r\n\r\n if (isCompatibleVersion(journey.version, \"1.3.2\"))\r\n return new Resilience_1_3_2(journey);\r\n\r\n if (isCompatibleVersion(journey.version, \"1.3.1\"))\r\n return new Resilience_1_3_2(journey);\r\n\r\n if (isCompatibleVersion(journey.version, \"1.3.0\"))\r\n return new Resilience_1_3_2(journey);\r\n\r\n return new Resilience_1_2_and_below(journey)\r\n}","import Journey from \"@/resources/journey/Journey\";\r\nimport {JourneyStructure} from \"../interfaces\";\r\nimport {isCompatibleVersion} from \"../functions\";\r\nimport Leadership_7_0_0 from \"../leadership/Leadership_7_0_0\";\r\n\r\n\r\nexport function ignition_online_structure_factory(journey: Journey): JourneyStructure {\r\n if (isCompatibleVersion(journey.version, \"3.0.0\"))\r\n return new Leadership_7_0_0(journey);\r\n \r\n if (isCompatibleVersion(journey.version, \"2.1.0\"))\r\n return new Leadership_7_0_0(journey);\r\n\r\n if (isCompatibleVersion(journey.version, \"2.0.0\"))\r\n return new Leadership_7_0_0(journey);\r\n\r\n if (isCompatibleVersion(journey.version, \"1.0.0\"))\r\n return new Leadership_7_0_0(journey);\r\n\r\n throw Error(`unhandled ${journey.name} version ${journey.version}`);\r\n}","import Journey from \"@/resources/journey/Journey\";\r\nimport {JourneyStructure} from \"../interfaces\";\r\nimport {isCompatibleVersion} from \"../functions\";\r\nimport BilanVR_5_0_0 from \"../bilan_vr/BilanVR_5_0_0\";\r\n\r\n\r\nexport function ignition_vr_structure_factory(journey: Journey): JourneyStructure {\r\n if (isCompatibleVersion(journey.version, \"2.0.0\"))\r\n return new BilanVR_5_0_0(journey);\r\n\r\n if (isCompatibleVersion(journey.version, \"1.0.0\"))\r\n return new BilanVR_5_0_0(journey);\r\n\r\n throw Error(`unhandled ${journey.name} version ${journey.version}`);\r\n}","export default \"__VITE_ASSET__CUOWf3Zp__\"","import {JourneyInfo, JourneyStructure} from \"../interfaces\";\r\nimport img_vr_flash from \"@/assets/images/journey-steps/vr_flash.jpg\"\r\nimport {LOCALE_CATEGORIES} from \"@/assets/locales/categories.ts\";\r\nimport Journey from \"@/resources/journey/Journey\";\r\n\r\nconst PREFIX = LOCALE_CATEGORIES.BILAN_VR_FLASH_3_0_0 + \".\"\r\n\r\nexport default class BilanVRFlash_3_0_0 extends JourneyStructure {\r\n constructor(journey: Journey) {\r\n super({\r\n locales: [LOCALE_CATEGORIES.BILAN_VR_FLASH_3_0_0],\r\n info: new JourneyInfo({\r\n img: img_vr_flash,\r\n title: PREFIX + \"journey_info.title\",\r\n desc: PREFIX + \"journey_info.desc\"\r\n })\r\n })\r\n }\r\n\r\n}","import Journey from \"@/resources/journey/Journey\";\r\nimport {JourneyStructure} from \"../interfaces\";\r\nimport {isCompatibleVersion} from \"../functions\";\r\nimport BilanVRFlash_3_0_0 from \"./BilanVRFlash_3_0_0\";\r\n\r\n\r\nexport function bilan_vr_flash_structure_factory(journey: Journey): JourneyStructure {\r\n if (isCompatibleVersion(journey.version, \"3.0.0\"))\r\n return new BilanVRFlash_3_0_0(journey);\r\n\r\n if (isCompatibleVersion(journey.version, \"2.0.0\"))\r\n return new BilanVRFlash_3_0_0(journey);\r\n\r\n if (isCompatibleVersion(journey.version, \"1.0.0\"))\r\n return new BilanVRFlash_3_0_0(journey);\r\n\r\n throw Error(`unhandled ${journey.name} version ${journey.version}`);\r\n}","import {GameCard, JourneyDrawer, JourneyStructure, SurveyCard} from \"../interfaces\";\r\nimport {DRAWER_CATEGORY, JOURNEY_STEP_TYPE} from \"@/resources/enums\";\r\nimport {LOCALE_CATEGORIES} from \"@/assets/locales/categories.ts\";\r\nimport Journey from \"@/resources/journey/Journey\";\r\nimport JourneyStep from \"@/resources/journey/JourneyStep.ts\";\r\n\r\nconst PREFIX = LOCALE_CATEGORIES.TINGARI_1_3_0 + \".\"\r\n\r\nexport default class Tingari_1_3_0 extends JourneyStructure {\r\n constructor(journey: Journey) {\r\n const drawerResilience = new JourneyDrawer({\r\n title: PREFIX + \"drawer_1.title\",\r\n category: DRAWER_CATEGORY.COMMON,\r\n cards: []\r\n })\r\n journey.orderedSteps.filter(item => journey.drawer.resilience.includes(item.key)).forEach(step => {\r\n if (step.type === JOURNEY_STEP_TYPE.SURVEY) {\r\n drawerResilience.cards.push(\r\n new SurveyCard({\r\n title: PREFIX + \"card.\" + step.key + \".title\",\r\n description: PREFIX + \"card.\" + step.key + \".about\",\r\n steps: [\r\n journey.getStepByName(step.name) as JourneyStep,\r\n ]\r\n }),\r\n )\r\n } else if (step.type === JOURNEY_STEP_TYPE.TEST) {\r\n drawerResilience.cards.push(\r\n new GameCard({\r\n title: PREFIX + \"card.\" + step.key + \".title\",\r\n description: PREFIX + \"card.\" + step.key + \".about\",\r\n step: journey.getStepByName(step.name) as JourneyStep,\r\n }),\r\n )\r\n }\r\n });\r\n\r\n\r\n const drawerTingari = new JourneyDrawer({\r\n title: PREFIX + \"drawer_2.title\",\r\n category: DRAWER_CATEGORY.COMMON,\r\n cards: []\r\n })\r\n\r\n journey.orderedSteps.filter(item => journey.drawer.survey.includes(item.key)).forEach(step => {\r\n if (step.type === JOURNEY_STEP_TYPE.SURVEY) {\r\n drawerTingari.cards.push(\r\n new SurveyCard({\r\n title: PREFIX + \"card.\" + step.key + \".title\",\r\n description: PREFIX + \"card.\" + step.key + \".about\",\r\n steps: [\r\n journey.getStepByName(step.name) as JourneyStep,\r\n ]\r\n }),\r\n )\r\n } else if (step.type === JOURNEY_STEP_TYPE.TEST) {\r\n drawerTingari.cards.push(\r\n new GameCard({\r\n title: PREFIX + \"card.\" + step.key + \".title\",\r\n description: PREFIX + \"card.\" + step.key + \".about\",\r\n step: journey.getStepByName(step.name) as JourneyStep,\r\n }),\r\n )\r\n }\r\n });\r\n\r\n\r\n const drawers: JourneyDrawer[] = [];\r\n\r\n if (drawerResilience.cards.length > 0)\r\n drawers.push(drawerResilience);\r\n\r\n if (drawerTingari.cards.length > 0)\r\n drawers.push(drawerTingari);\r\n\r\n super({\r\n locales: [\r\n LOCALE_CATEGORIES.TINGARI_1_3_0\r\n ],\r\n drawers: drawers,\r\n });\r\n }\r\n\r\n}","import { JourneyStructure, JourneyInfo } from \"../interfaces\";\r\nimport { LOCALE_CATEGORIES } from \"@/assets/locales/categories.ts\";\r\nimport Journey from \"@/resources/journey/Journey\";\r\n\r\nconst PREFIX = LOCALE_CATEGORIES.TINGARI_1_3_0+\".\"\r\n\r\nexport default class Tingari_1_2_1 extends JourneyStructure {\r\n constructor(journey: Journey) {\r\n const structure = {\r\n locales: [\r\n LOCALE_CATEGORIES.TINGARI_1_3_0\r\n ],\r\n info : new JourneyInfo({\r\n title: PREFIX+\"tingari.deprecated_version.title\",\r\n desc: PREFIX+\"tingari.deprecated_version.desc\"\r\n }) \r\n }\r\n\r\n super(structure);\r\n }\r\n\r\n}","import Journey from \"@/resources/journey/Journey\";\r\nimport {JourneyStructure} from \"../interfaces\";\r\nimport {isCompatibleVersion} from \"../functions\";\r\nimport Tingari_1_3_0 from \"./Tingari_1_3_0\";\r\nimport Tingari_1_2_and_below from \"./Tingari_1_2_and_below\";\r\n\r\nexport function tingari_structure_factory(journey: Journey): JourneyStructure {\r\n if (isCompatibleVersion(journey.version, \"2.0.0\"))\r\n return new Tingari_1_3_0(journey);\r\n \r\n if (isCompatibleVersion(journey.version, \"1.4.0\"))\r\n return new Tingari_1_3_0(journey);\r\n\r\n if (isCompatibleVersion(journey.version, \"1.3.0\"))\r\n return new Tingari_1_3_0(journey);\r\n\r\n if (isCompatibleVersion(journey.version, \"1.2.1\"))\r\n return new Tingari_1_2_and_below(journey);\r\n\r\n throw Error(`unhandled ${journey.name} version ${journey.version}`)\r\n}","import { GameCard, JourneyDrawer, JourneyStructure, SurveyCard } from \"../interfaces\";\r\nimport { DRAWER_CATEGORY, JOURNEY_STEP_TYPE, JOURNEY_STEP_NAME } from \"@/resources/enums\";\r\nimport { LOCALE_CATEGORIES } from \"@/assets/locales/categories.ts\";\r\nimport Journey from \"@/resources/journey/Journey\";\r\nimport JourneyStep from \"@/resources/journey/JourneyStep.ts\";\r\nimport { getOthOrOhls } from \"../functions\";\r\n\r\nconst PREFIX = LOCALE_CATEGORIES.BOOTCAMP_ONLINE_1_0_0 + \".\"\r\n\r\nexport default class Bootcamp_online_1_0_0 extends JourneyStructure {\r\n constructor(journey: Journey) {\r\n\r\n const drawerEmo = new JourneyDrawer({\r\n title: PREFIX + \"drawer_emo.title\",\r\n category: DRAWER_CATEGORY.EMO,\r\n cards: []\r\n })\r\n\r\n if(journey.getStepByName(JOURNEY_STEP_NAME.EMO_SUBJ_SENSITIVITY) !== undefined){ \r\n drawerEmo.cards.push(\r\n new SurveyCard({\r\n title: PREFIX + \"card.emo.self_sensitivity.title\",\r\n description: PREFIX + \"card.emo.self_sensitivity.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.EMO_SUBJ_SENSITIVITY) as JourneyStep,\r\n ]\r\n })\r\n )\r\n }\r\n\r\n if(journey.getStepByName(JOURNEY_STEP_NAME.EMOQUOTATION) !== undefined){ \r\n drawerEmo.cards.push(\r\n new GameCard({\r\n title: PREFIX + \"card.emo.react_to_environment.title\",\r\n description: PREFIX + \"card.emo.react_to_environment.about\",\r\n step: journey.getStepByName(JOURNEY_STEP_NAME.EMOQUOTATION) as JourneyStep,\r\n })\r\n )\r\n }\r\n\r\n if(journey.getStepByName(JOURNEY_STEP_NAME.EMO_SUBJ_REGULATION) !== undefined){ \r\n drawerEmo.cards.push(\r\n new SurveyCard({\r\n title: PREFIX + \"card.emo.self_regulation.title\",\r\n description: PREFIX + \"card.emo.self_regulation.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.EMO_SUBJ_REGULATION) as JourneyStep,\r\n ]\r\n })\r\n )\r\n }\r\n\r\n if(journey.getStepByName(JOURNEY_STEP_NAME.ODDBALL) !== undefined){ \r\n drawerEmo.cards.push(\r\n new GameCard({\r\n title: PREFIX + \"card.emo.regulation.title\",\r\n description: PREFIX + \"card.emo.regulation.about\",\r\n step: journey.getStepByName(JOURNEY_STEP_NAME.ODDBALL) as JourneyStep,\r\n })\r\n )\r\n }\r\n\r\n if(journey.getStepByName(JOURNEY_STEP_NAME.SCS_SF) !== undefined){ \r\n drawerEmo.cards.push(\r\n new SurveyCard({\r\n title: PREFIX + \"card.emo.self_alignment.title\",\r\n description: PREFIX + \"card.emo.self_alignment.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.SCS_SF) as JourneyStep,\r\n ]\r\n })\r\n )\r\n }\r\n\r\n if(journey.getStepByName(JOURNEY_STEP_NAME.OHLS) !== undefined || journey.getStepByName(JOURNEY_STEP_NAME.OTH) !== undefined){ \r\n drawerEmo.cards.push(\r\n new SurveyCard({\r\n title: PREFIX + \"card.emo.levers_of_development.title\",\r\n description: PREFIX + \"card.emo.levers_of_development.about\",\r\n steps: getOthOrOhls(journey),\r\n })\r\n )\r\n }\r\n\r\n\r\n const drawerCog = new JourneyDrawer({\r\n title: PREFIX + \"drawer_cog.title\",\r\n category: DRAWER_CATEGORY.COG,\r\n cards: []\r\n })\r\n\r\n if(journey.getStepByName(JOURNEY_STEP_NAME.COG_SUBJ_FOCUS) !== undefined){ \r\n drawerCog.cards.push(\r\n new SurveyCard({\r\n title: PREFIX + \"card.cog.self_follow_goal.title\",\r\n description: PREFIX + \"card.cog.self_follow_goal.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.COG_SUBJ_FOCUS) as JourneyStep,\r\n ],\r\n })\r\n )\r\n }\r\n\r\n if(journey.getStepByName(JOURNEY_STEP_NAME.FOCUS) !== undefined){ \r\n drawerCog.cards.push(\r\n new GameCard({\r\n title: PREFIX + \"card.cog.follow_goal.title\",\r\n description: PREFIX + \"card.cog.follow_goal.about\",\r\n step: journey.getStepByName(JOURNEY_STEP_NAME.FOCUS) as JourneyStep,\r\n })\r\n )\r\n }\r\n \r\n\r\n if(journey.getStepByName(JOURNEY_STEP_NAME.PCI_COG) !== undefined){ \r\n drawerCog.cards.push(\r\n new SurveyCard({\r\n title: PREFIX + \"card.cog.anticipate_and_plan.title\",\r\n description: PREFIX + \"card.cog.anticipate_and_plan.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.PCI_COG) as JourneyStep,\r\n ],\r\n })\r\n )\r\n }\r\n\r\n if(journey.getStepByName(JOURNEY_STEP_NAME.COG_SUBJ_RISKTAKING) !== undefined){ \r\n drawerCog.cards.push(\r\n new SurveyCard({\r\n title: PREFIX + \"card.cog.self_uncertainty_reaction.title\",\r\n description: PREFIX + \"card.cog.self_uncertainty_reaction.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.COG_SUBJ_RISKTAKING) as JourneyStep,\r\n ],\r\n })\r\n )\r\n }\r\n\r\n if(journey.getStepByName(JOURNEY_STEP_NAME.BART) !== undefined){ \r\n drawerCog.cards.push(\r\n new GameCard({\r\n title: PREFIX + \"card.cog.uncertainty_reaction.title\",\r\n description: PREFIX + \"card.cog.uncertainty_reaction.about\",\r\n step: journey.getStepByName(JOURNEY_STEP_NAME.BART) as JourneyStep,\r\n })\r\n )\r\n }\r\n\r\n if(journey.getStepByName(JOURNEY_STEP_NAME.IUS) !== undefined){ \r\n drawerCog.cards.push(\r\n new SurveyCard({\r\n title: PREFIX + \"card.cog.uncertainty_self_perception.title\",\r\n description: PREFIX + \"card.cog.uncertainty_self_perception.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.IUS) as JourneyStep,\r\n ],\r\n })\r\n )\r\n }\r\n\r\n if(journey.getStepByName(JOURNEY_STEP_NAME.COG_SUBJ_FLEXIBILITY) !== undefined){ \r\n drawerCog.cards.push(\r\n new SurveyCard({\r\n title: PREFIX + \"card.cog.self_novelty_reaction.title\",\r\n description: PREFIX + \"card.cog.self_novelty_reaction.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.COG_SUBJ_FLEXIBILITY) as JourneyStep,\r\n ],\r\n })\r\n )\r\n }\r\n\r\n if(journey.getStepByName(JOURNEY_STEP_NAME.COGSTROOP) !== undefined){ \r\n drawerCog.cards.push(\r\n new GameCard({\r\n title: PREFIX + \"card.cog.novelty_reaction.title\",\r\n description: PREFIX + \"card.cog.novelty_reaction.about\",\r\n step: journey.getStepByName(JOURNEY_STEP_NAME.COGSTROOP) as JourneyStep,\r\n })\r\n )\r\n }\r\n\r\n if(journey.getStepByName(JOURNEY_STEP_NAME.LMS) !== undefined){ \r\n drawerCog.cards.push(\r\n new SurveyCard({\r\n title: PREFIX + \"card.cog.novelty_self_perception.title\",\r\n description: PREFIX + \"card.cog.novelty_self_perception.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.LMS) as JourneyStep,\r\n ],\r\n })\r\n )\r\n }\r\n\r\n\r\n const drawerSoc = new JourneyDrawer({\r\n title: PREFIX + \"drawer_soc.title\",\r\n category: DRAWER_CATEGORY.SOC,\r\n cards: []\r\n })\r\n\r\n if(journey.getStepByName(JOURNEY_STEP_NAME.SOC_SUBJ_COOPERATION) !== undefined){ \r\n drawerSoc.cards.push(\r\n new SurveyCard({\r\n title: PREFIX + \"card.soc.self_collaboration.title\",\r\n description: PREFIX + \"card.soc.self_collaboration.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.SOC_SUBJ_COOPERATION) as JourneyStep,\r\n ],\r\n })\r\n )\r\n }\r\n\r\n if(journey.getStepByName(JOURNEY_STEP_NAME.ULTIMATUM) !== undefined){ \r\n drawerSoc.cards.push(\r\n new GameCard({\r\n title: PREFIX + \"card.soc.collaboration.title\",\r\n description: PREFIX + \"card.soc.collaboration.about\",\r\n step: journey.getStepByName(JOURNEY_STEP_NAME.ULTIMATUM) as JourneyStep,\r\n })\r\n )\r\n }\r\n\r\n if(journey.getStepByName(JOURNEY_STEP_NAME.PCI_SOC_INS) !== undefined){ \r\n drawerSoc.cards.push(\r\n new SurveyCard({\r\n title: PREFIX + \"card.soc.organize_and_coordinate.title\",\r\n description: PREFIX + \"card.soc.organize_and_coordinate.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.PCI_SOC_INS) as JourneyStep,\r\n ],\r\n })\r\n )\r\n }\r\n\r\n if(journey.getStepByName(JOURNEY_STEP_NAME.SOC_SUBJ_EMPATHY) !== undefined){ \r\n drawerSoc.cards.push(\r\n new SurveyCard({\r\n title: PREFIX + \"card.soc.self_others_reaction.title\",\r\n description: PREFIX + \"card.soc.self_others_reaction.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.SOC_SUBJ_EMPATHY) as JourneyStep,\r\n ],\r\n })\r\n )\r\n }\r\n\r\n if(journey.getStepByName(JOURNEY_STEP_NAME.RME) !== undefined){ \r\n drawerSoc.cards.push(\r\n new GameCard({\r\n title: PREFIX + \"card.soc.others_reaction.title\",\r\n description: PREFIX + \"card.soc.others_reaction.about\",\r\n step: journey.getStepByName(JOURNEY_STEP_NAME.RME) as JourneyStep,\r\n })\r\n )\r\n }\r\n\r\n if(journey.getStepByName(JOURNEY_STEP_NAME.CS_SF) !== undefined){ \r\n drawerSoc.cards.push(\r\n new SurveyCard({\r\n title: PREFIX + \"card.soc.others_perception.title\",\r\n description: PREFIX + \"card.soc.others_perception.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.CS_SF) as JourneyStep,\r\n ],\r\n })\r\n )\r\n }\r\n\r\n if(journey.getStepByName(JOURNEY_STEP_NAME.PCI_SOC_EMO) !== undefined){ \r\n drawerSoc.cards.push(\r\n new SurveyCard({\r\n title: PREFIX + \"card.soc.open_to_others.title\",\r\n description: PREFIX + \"card.soc.open_to_others.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.PCI_SOC_EMO) as JourneyStep,\r\n ],\r\n })\r\n )\r\n }\r\n\r\n\r\n\r\n /*journey.orderedSteps.forEach(step => {\r\n if (step.type === JOURNEY_STEP_TYPE.SURVEY) {\r\n drawerTemp.cards.push(\r\n new SurveyCard({\r\n title: PREFIX + \"card.\" + step.name + \".title\",\r\n description: PREFIX + \"card.\" + step.name + \".about\",\r\n steps: [\r\n journey.getStepByName(step.name) as JourneyStep,\r\n ]\r\n }),\r\n )\r\n } else if (step.type === JOURNEY_STEP_TYPE.TEST) {\r\n drawerTemp.cards.push(\r\n new GameCard({\r\n title: PREFIX + \"card.\" + step.name + \".title\",\r\n description: PREFIX + \"card.\" + step.name + \".about\",\r\n step: journey.getStepByName(step.name) as JourneyStep,\r\n }),\r\n )\r\n }\r\n }); */\r\n\r\n\r\n const drawers: JourneyDrawer[] = [];\r\n\r\n if (drawerEmo.cards.length > 0)\r\n drawers.push(drawerEmo);\r\n\r\n if (drawerCog.cards.length > 0)\r\n drawers.push(drawerCog);\r\n\r\n if (drawerSoc.cards.length > 0)\r\n drawers.push(drawerSoc);\r\n\r\n super({\r\n locales: [\r\n LOCALE_CATEGORIES.BOOTCAMP_ONLINE_1_0_0,\r\n LOCALE_CATEGORIES.SKILL_DEFINITION\r\n ],\r\n drawers: drawers,\r\n prefix: PREFIX\r\n });\r\n }\r\n\r\n}\r\n\r\n\r\n\r\n/* {\r\ndrawers: [\r\n \r\n \r\n \r\n new JourneyDrawer({\r\n title: PREFIX + \"drawer_5.title\",\r\n category: DRAWER_CATEGORY.SOC,\r\n cards: [\r\n new SurveyCard({\r\n title: PREFIX + \"card.soc.self_perception.title\",\r\n description: PREFIX + \"card.soc.self_perception.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.SOC_SUBJ_COOPERATION) as JourneyStep,\r\n ],\r\n }),\r\n new GameCard({\r\n title: PREFIX + \"card.soc.collaboration.title\",\r\n description: PREFIX + \"card.soc.collaboration.about\",\r\n step: journey.getStepByName(JOURNEY_STEP_NAME.ULTIMATUM) as JourneyStep,\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.soc.organize_and_coordinate.title\",\r\n description: PREFIX + \"card.soc.organize_and_coordinate.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.PCI_SOC_INS) as JourneyStep,\r\n ],\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.soc.others_perception.title\",\r\n description: PREFIX + \"card.soc.others_perception.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.CS_SF) as JourneyStep,\r\n ],\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.soc.self_perception.title\",\r\n description: PREFIX + \"card.soc.self_perception.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.SOC_SUBJ_EMPATHY) as JourneyStep,\r\n ],\r\n }),\r\n new GameCard({\r\n title: PREFIX + \"card.soc.others_reaction.title\",\r\n description: PREFIX + \"card.soc.others_reaction.about\",\r\n step: journey.getStepByName(JOURNEY_STEP_NAME.RME) as JourneyStep,\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.soc.open_to_others.title\",\r\n description: PREFIX + \"card.soc.open_to_others.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.PCI_SOC_EMO) as JourneyStep,\r\n ],\r\n }),\r\n ],\r\n })\r\n ]\r\n } */","import Journey from \"@/resources/journey/Journey\";\r\nimport {JourneyStructure} from \"../interfaces\";\r\nimport {isCompatibleVersion} from \"../functions\";\r\nimport Bootcamp_online_1_0_0 from \"./Bootcamp_online_1_0_0\";\r\n\r\nexport function bootcamp_online_structure_factory(journey: Journey): JourneyStructure {\r\n if (isCompatibleVersion(journey.version, \"1.0.0\"))\r\n return new Bootcamp_online_1_0_0(journey);\r\n \r\n throw Error(`unhandled ${journey.name} version ${journey.version}`)\r\n}","import { GameCard, JourneyDrawer, JourneyStructure, SurveyCard } from \"../interfaces\";\r\nimport { DRAWER_CATEGORY, JOURNEY_STEP_NAME } from \"@/resources/enums\";\r\nimport { getOthOrOhls } from \"../functions\";\r\nimport { LOCALE_CATEGORIES } from \"@/assets/locales/categories.ts\";\r\nimport Journey from \"@/resources/journey/Journey\";\r\nimport JourneyStep from \"@/resources/journey/JourneyStep\";\r\n\r\nconst PREFIX = LOCALE_CATEGORIES.FETA_1_0_0 + \".\"\r\n\r\nexport default class FETA_1_0_0 extends JourneyStructure {\r\n constructor(journey: Journey) {\r\n super({\r\n locales: [LOCALE_CATEGORIES.FETA_1_0_0],\r\n prefix: PREFIX,\r\n drawers: [\r\n new JourneyDrawer({\r\n title: PREFIX + \"drawer_1.title\",\r\n category: DRAWER_CATEGORY.COMMON,\r\n cards: [\r\n new SurveyCard({\r\n title: PREFIX + \"card.wellbeing.title\",\r\n description: PREFIX + \"card.wellbeing.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.MHC) as JourneyStep,\r\n ]\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.fulfillment_at_work.title\",\r\n description: PREFIX + \"card.fulfillment_at_work.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.BPNW) as JourneyStep,\r\n ]\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.feeling_of_effectiveness.title\",\r\n description: PREFIX + \"card.feeling_of_effectiveness.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.GSE) as JourneyStep,\r\n ]\r\n }),\r\n ],\r\n }),\r\n /* new JourneyDrawer({\r\n title: PREFIX + \"drawer_2.title\",\r\n category: DRAWER_CATEGORY.COMMON,\r\n cards: [\r\n new SurveyCard({\r\n title: PREFIX + \"card.behaviors_to_promote.title\",\r\n description: PREFIX + \"card.behaviors_to_promote.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.BEHAVIOR) as JourneyStep,\r\n ]\r\n }),\r\n ],\r\n }), */\r\n new JourneyDrawer({\r\n title: PREFIX + \"drawer_3.title\",\r\n category: DRAWER_CATEGORY.EMO,\r\n cards: [\r\n new SurveyCard({\r\n title: PREFIX + \"card.emo_self_perception.title\",\r\n description: PREFIX + \"card.emo_self_perception.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.EMO_SUBJ_SENSITIVITY) as JourneyStep,\r\n //journey.getStepByName(JOURNEY_STEP_NAME.EMO_SUBJ_REGULATION) as JourneyStep,\r\n ]\r\n }),\r\n new GameCard({\r\n title: PREFIX + \"card.emo_react_to_environment.title\",\r\n description: PREFIX + \"card.emo_react_to_environment.about\",\r\n step: journey.getStepByName(JOURNEY_STEP_NAME.EMOQUOTATION) as JourneyStep,\r\n }),\r\n new GameCard({\r\n title: PREFIX + \"card.emo_regulation.title\",\r\n description: PREFIX + \"card.emo_regulation.about\",\r\n step: journey.getStepByName(JOURNEY_STEP_NAME.ODDBALL) as JourneyStep,\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.emo_self_alignment.title\",\r\n description: PREFIX + \"card.emo_self_alignment.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.SCS_SF) as JourneyStep,\r\n ]\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.emo_levers_of_development.title\",\r\n description: PREFIX + \"card.emo_levers_of_development.about\",\r\n steps: getOthOrOhls(journey),\r\n }),\r\n ],\r\n }),\r\n new JourneyDrawer({\r\n title: PREFIX + \"drawer_4.title\",\r\n category: DRAWER_CATEGORY.COG,\r\n cards: [\r\n /* new SurveyCard({\r\n title: PREFIX + \"card.cog.self_perception.title\",\r\n description: PREFIX + \"card.cog.self_perception.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.COG_SUBJ_FOCUS) as JourneyStep,\r\n journey.getStepByName(JOURNEY_STEP_NAME.COG_SUBJ_FLEXIBILITY) as JourneyStep,\r\n journey.getStepByName(JOURNEY_STEP_NAME.COG_SUBJ_RISKTAKING) as JourneyStep,\r\n ],\r\n }), */\r\n new GameCard({\r\n title: PREFIX + \"card.cog.follow_goal.title\",\r\n description: PREFIX + \"card.cog.follow_goal.about\",\r\n step: journey.getStepByName(JOURNEY_STEP_NAME.FOCUS) as JourneyStep,\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.cog.anticipate_and_plan.title\",\r\n description: PREFIX + \"card.cog.anticipate_and_plan.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.PCI_COG) as JourneyStep,\r\n ],\r\n }),\r\n new GameCard({\r\n title: PREFIX + \"card.cog.uncertainty_reaction.title\",\r\n description: PREFIX + \"card.cog.uncertainty_reaction.about\",\r\n step: journey.getStepByName(JOURNEY_STEP_NAME.BART) as JourneyStep,\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.cog.uncertainty_self_perception.title\",\r\n description: PREFIX + \"card.cog.uncertainty_self_perception.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.IUS) as JourneyStep,\r\n ],\r\n }),\r\n new GameCard({\r\n title: PREFIX + \"card.cog.novelty_reaction.title\",\r\n description: PREFIX + \"card.cog.novelty_reaction.about\",\r\n step: journey.getStepByName(JOURNEY_STEP_NAME.COGSTROOP) as JourneyStep,\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.cog.novelty_self_perception.title\",\r\n description: PREFIX + \"card.cog.novelty_self_perception.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.LMS) as JourneyStep,\r\n ],\r\n }),\r\n ],\r\n }),\r\n new JourneyDrawer({\r\n title: PREFIX + \"drawer_5.title\",\r\n category: DRAWER_CATEGORY.SOC,\r\n cards: [\r\n /* new SurveyCard({\r\n title: PREFIX + \"card.soc.self_perception.title\",\r\n description: PREFIX + \"card.soc.self_perception.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.SOC_SUBJ_COOPERATION) as JourneyStep,\r\n journey.getStepByName(JOURNEY_STEP_NAME.SOC_SUBJ_EMPATHY) as JourneyStep,\r\n ],\r\n }), */\r\n new GameCard({\r\n title: PREFIX + \"card.soc.collaboration.title\",\r\n description: PREFIX + \"card.soc.collaboration.about\",\r\n step: journey.getStepByName(JOURNEY_STEP_NAME.ULTIMATUM) as JourneyStep,\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.soc.organize_and_coordinate.title\",\r\n description: PREFIX + \"card.soc.organize_and_coordinate.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.PCI_SOC_INS) as JourneyStep,\r\n ],\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.soc.others_perception.title\",\r\n description: PREFIX + \"card.soc.others_perception.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.CS_SF) as JourneyStep,\r\n ],\r\n }),\r\n new GameCard({\r\n title: PREFIX + \"card.soc.others_reaction.title\",\r\n description: PREFIX + \"card.soc.others_reaction.about\",\r\n step: journey.getStepByName(JOURNEY_STEP_NAME.RME) as JourneyStep,\r\n }),\r\n new SurveyCard({\r\n title: PREFIX + \"card.soc.open_to_others.title\",\r\n description: PREFIX + \"card.soc.open_to_others.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.PCI_SOC_EMO) as JourneyStep,\r\n ],\r\n }),\r\n ],\r\n }),\r\n new JourneyDrawer({\r\n title: PREFIX + \"drawer_6.title\",\r\n category: DRAWER_CATEGORY.COMMON,\r\n cards: [\r\n new SurveyCard({\r\n title: PREFIX + \"card.demographic_data.title\",\r\n description: PREFIX + \"card.demographic_data.about\",\r\n steps: [\r\n journey.getStepByName(JOURNEY_STEP_NAME.DEMOGRAPHIC) as JourneyStep\r\n ],\r\n }),\r\n ],\r\n }),\r\n ],\r\n });\r\n }\r\n\r\n}","import Journey from \"@/resources/journey/Journey\";\r\nimport { JourneyStructure } from \"../interfaces\";\r\nimport FETA_1_0_0 from \"./FETA_1_0_0\";\r\nimport { isCompatibleVersion } from \"../functions\";\r\n\r\n\r\nexport function feta_structure_factory(journey: Journey): JourneyStructure {\r\n if (isCompatibleVersion(journey.version, \"1.2.0\"))\r\n return new FETA_1_0_0(journey);\r\n\r\n if (isCompatibleVersion(journey.version, \"1.1.0\"))\r\n return new FETA_1_0_0(journey);\r\n \r\n if (isCompatibleVersion(journey.version, \"1.0.0\"))\r\n return new FETA_1_0_0(journey);\r\n\r\n\r\n throw Error(`unhandled ${journey.name} version ${journey.version}`);\r\n}","import { JOURNEY_NAME, JOURNEY_STEP_GROUP, JOURNEY_STEP_TYPE } from \"@/resources/enums\";\r\nimport { reactive } from \"vue\";\r\nimport { GameCard, JourneyDrawer, JourneyStructure, SurveyCard } from \"./interfaces\";\r\nimport { bilan_vr_structure_factory } from \"./bilan_vr\";\r\nimport { leadership_structure_factory } from \"./leadership\";\r\nimport { ascent_online_structure_factory } from \"./ascent_online\";\r\nimport { bilan_vr_quest_structure_factory } from \"./bilan_vr_quest\";\r\nimport { ascent_vr_structure_factory } from \"./ascent_vr\";\r\nimport { resilience_structure_factory } from \"./resilience\";\r\nimport { ignition_online_structure_factory } from \"./ignition_online\";\r\nimport { ignition_vr_structure_factory } from \"./ignition_vr\";\r\nimport { bilan_vr_flash_structure_factory } from \"./bilan_vr_flash\";\r\nimport { tingari_structure_factory } from \"./tingari\";\r\nimport { bootcamp_online_structure_factory } from \"./bootcamp_online\";\r\nimport { feta_structure_factory } from \"./feta\";\r\nimport Journey from \"@/resources/journey/Journey\";\r\nimport JourneyStep from \"@/resources/journey/JourneyStep\";\r\nimport { assertNever } from \"@/resources/misc/functions.ts\";\r\nimport { dummy_journey_structure_factory } from \"@/dev-only\";\r\n\r\n\r\n/**\r\n * This will create the correct JourneyStructure given a Journey.\r\n */\r\nfunction journeyStructureFactory(journey: Journey): JourneyStructure {\r\n switch (journey.name) {\r\n case JOURNEY_NAME.LEADERSHIP:\r\n return leadership_structure_factory(journey);\r\n\r\n case JOURNEY_NAME.BILAN_VR:\r\n return bilan_vr_structure_factory(journey);\r\n\r\n case JOURNEY_NAME.RESILIENCE:\r\n return resilience_structure_factory(journey);\r\n\r\n case JOURNEY_NAME.BILAN_VR_QUEST:\r\n return bilan_vr_quest_structure_factory(journey);\r\n\r\n case JOURNEY_NAME.BILAN_VR_FLASH:\r\n return bilan_vr_flash_structure_factory(journey);\r\n\r\n case JOURNEY_NAME.TINGARI:\r\n return tingari_structure_factory(journey);\r\n\r\n case JOURNEY_NAME.ASCENT_ONLINE:\r\n return ascent_online_structure_factory(journey);\r\n\r\n case JOURNEY_NAME.ASCENT_VR:\r\n return ascent_vr_structure_factory(journey);\r\n\r\n case JOURNEY_NAME.IGNITION_ONLINE:\r\n return ignition_online_structure_factory(journey);\r\n\r\n case JOURNEY_NAME.IGNITION_VR:\r\n return ignition_vr_structure_factory(journey);\r\n\r\n case JOURNEY_NAME.BOOTCAMP_ONLINE:\r\n return bootcamp_online_structure_factory(journey);\r\n\r\n case JOURNEY_NAME.FETA:\r\n return feta_structure_factory(journey);\r\n\r\n case \"dummy_journey\":\r\n return dummy_journey_structure_factory(journey);\r\n\r\n default:\r\n throw Error(`unhandled journey name ${journey.name}`)\r\n }\r\n}\r\n\r\n/**\r\n * This will create the correct JourneyStructureImpact given a Journey.\r\n */\r\nfunction journeyImpactStructureFactory(journey: Journey): JourneyStructure {\r\n const journeyStructure = getJourneyStructure(journey);\r\n\r\n const impactSteps = journey.steps.filter(step => step.group === JOURNEY_STEP_GROUP.IMPACT && (step.type === JOURNEY_STEP_TYPE.SURVEY || step.type === JOURNEY_STEP_TYPE.TEST))\r\n const impactStepsFlat = impactSteps.flatMap(step => step.name)\r\n\r\n let currentDrawer, currentCard\r\n\r\n const impactStructure = new JourneyStructure({\r\n locales: journeyStructure.locales,\r\n drawers: [],\r\n })\r\n\r\n journeyStructure.drawers.forEach((drawer, indexDrawer) => {\r\n drawer.cards.forEach((card, indexCard) => {\r\n currentCard = null\r\n if (card instanceof SurveyCard) {\r\n card.steps.forEach(item => {\r\n if (impactStepsFlat.includes(item.name)) {\r\n if (!impactStructure.drawers.some(drawerIteration => drawerIteration.title == drawer.title + '_impact')) {\r\n impactStructure.drawers.push(new JourneyDrawer({\r\n title: `${drawer.title}_impact`,\r\n category: drawer.category,\r\n cards: []\r\n }))\r\n\r\n }\r\n currentDrawer = impactStructure.drawers[impactStructure.drawers.length - 1]\r\n if (!currentDrawer.cards.some(cardIteration => cardIteration.title == card.title)) {\r\n currentCard = new SurveyCard({\r\n title: card.title,\r\n description: card.description,\r\n steps: [\r\n journey.getStepByName(item.name, JOURNEY_STEP_GROUP.IMPACT) as JourneyStep\r\n ]\r\n })\r\n currentDrawer.cards.push(currentCard)\r\n }\r\n }\r\n })\r\n } else if (card instanceof GameCard) {\r\n if (impactStepsFlat.includes(card.step.name)) {\r\n if (!impactStructure.drawers.some(drawerIteration => drawerIteration.title == drawer.title+'_impact')) {\r\n impactStructure.drawers.push(new JourneyDrawer({\r\n title: `${drawer.title}_impact`,\r\n category: drawer.category,\r\n cards: []\r\n }))\r\n\r\n }\r\n currentDrawer = impactStructure.drawers[impactStructure.drawers.length - 1]\r\n if (!currentDrawer.cards.some(cardIteration => cardIteration.title == card.title)) {\r\n currentCard = new GameCard({\r\n title: card.title,\r\n description: card.description,\r\n step: journey.getStepByName(card.step.name, JOURNEY_STEP_GROUP.IMPACT) as JourneyStep\r\n })\r\n currentDrawer.cards.push(currentCard)\r\n }\r\n }\r\n }\r\n })\r\n });\r\n\r\n return impactStructure;\r\n}\r\n\r\n\r\nlet STORED_STRUCTURES: Map = new Map()\r\n\r\nlet STORED_IMPACT_STRUCTURES: Map = new Map()\r\n\r\n/**\r\n * This will return the corresponding JourneyStructure object for a given Journey.\r\n * Given a journey it will always return the same structure instance.\r\n * Also will load the corresponding locales\r\n */\r\nexport function getJourneyStructure(journey: Journey): JourneyStructure {\r\n if (STORED_STRUCTURES.has(journey.public_id))\r\n return STORED_STRUCTURES.get(journey.public_id) as JourneyStructure;\r\n\r\n const structure = reactive(journeyStructureFactory(journey));\r\n STORED_STRUCTURES.set(journey.public_id, structure);\r\n return structure;\r\n}\r\n\r\n/**\r\n * This will return the corresponding JourneyStructure impact object for a given Journey.\r\n * Given a journey it will always return the same structure instance.\r\n */\r\nexport function getJourneyImpactStructure(journey: Journey): JourneyStructure {\r\n if (STORED_IMPACT_STRUCTURES.has(journey.public_id))\r\n return STORED_IMPACT_STRUCTURES.get(journey.public_id) as JourneyStructure;\r\n\r\n const structure = reactive(journeyImpactStructureFactory(journey));\r\n STORED_IMPACT_STRUCTURES.set(journey.public_id, structure);\r\n return structure;\r\n}\r\n\r\nexport function getStructure(journey: Journey, group: JOURNEY_STEP_GROUP): JourneyStructure {\r\n switch (group) {\r\n case JOURNEY_STEP_GROUP.EXPERIENCE:\r\n return getJourneyStructure(journey);\r\n case JOURNEY_STEP_GROUP.IMPACT:\r\n getJourneyStructure(journey);\r\n return getJourneyImpactStructure(journey);\r\n case JOURNEY_STEP_GROUP.REPORT:\r\n throw \"no journey structure bound to group report\";\r\n default:\r\n //assertNever(group);\r\n throw `${group} not handled`;\r\n }\r\n}\r\n\r\nexport function resetStructures(){\r\n STORED_STRUCTURES = new Map()\r\n STORED_IMPACT_STRUCTURES = new Map()\r\n}","import sdk from \"@/resources/sdk\";\r\nimport Person from \"@/resources/person/Person\";\r\nimport { AbstractForm, FormField } from \"./forms.ts\";\r\nimport { LANG } from \"@/resources/enums\";\r\n//import POPUP from \"@/models/popup\";\r\nimport { closePopup } from \"omind-design-system/components/odsPopup\"\r\nimport { reloadLocalesForLang, setLocales } from \"@/resources/i18n/i18n.ts\";\r\nimport { resetStructures } from \"@/resources/journey/drawers/index.ts\";\r\n\r\nexport default class ChangeLangForm extends AbstractForm {\r\n person: Person;\r\n lang: FormField;\r\n\r\n constructor(person: Person) {\r\n super({});\r\n this.person = person;\r\n this.lang = this.addField({\r\n name: 'lang',\r\n label: `my_account.personal_info.form.lang.label`,\r\n required: true,\r\n defaultValue: () => person.lang,\r\n values: [\r\n { label: \"🇨🇵  Français\", value: LANG.FR, default: person.lang === LANG.FR },\r\n { label: \"🇬🇧  Anglais\", value: LANG.EN, default: person.lang === LANG.EN },\r\n ],\r\n validators: [],\r\n })\r\n /* if(this.person.hasFETA){\r\n this.lang.values.push({ label: \"🇪🇸  Espagnol\", value: LANG.ES, default: person.lang === LANG.ES })\r\n } */\r\n }\r\n\r\n async send() {\r\n const response = await sdk.patchMe({ lang: this.lang.value });\r\n await reloadLocalesForLang(this.lang.value);\r\n this.person.update(response.data);\r\n //Reset structures stored in cache to avoid problems after language change (oth/ohls update)\r\n resetStructures();\r\n await this.person.loadJourneys(true);\r\n closePopup('popup-lang');\r\n }\r\n\r\n}\r\n","export enum IconName {\r\n Default = '',\r\n Close = 'close',\r\n Rocket = 'rocket',\r\n Check = 'check',\r\n Exclamation = 'exclamation',\r\n CheckCircle = 'check_circle',\r\n Error = 'error',\r\n Cancel = 'cancel',\r\n}\r\n\r\nexport enum IconFolder {\r\n Default = 'material-symbols',\r\n Material = 'material-symbols',\r\n ODS = 'ods'\r\n}\r\n\r\nexport enum IconSize {\r\n Default = 'standard',\r\n XS = 'xs',\r\n Small = 'small',\r\n Standard = 'standard',\r\n Medium = 'medium',\r\n Large = 'large',\r\n XL = 'xl',\r\n XXL = '2xl',\r\n XXXL = '3xl'\r\n}","\r\n\r\n\r\n\r\n","export enum ButtonType {\r\n Filled = 'filled',\r\n Outline = 'outline',\r\n Light = 'light',\r\n Link = 'link'\r\n}\r\n\r\nexport enum ButtonColor {\r\n Primary = 'primary',\r\n Secondary = 'secondary',\r\n Tertiary = 'tertiary',\r\n Red = 'red',\r\n Green = \"green\",\r\n Blue = 'blue',\r\n Orange = 'orange',\r\n Pink = 'pink',\r\n Purple = 'purple',\r\n PurpleLight = 'purple-light',\r\n White = 'white'\r\n}\r\n\r\nexport enum ButtonSize {\r\n Small = 'small',\r\n Medium = 'medium',\r\n Large = 'large'\r\n}","\r\n\r\n\r\n\r\n","\r\nexport enum PillTheme {\r\n Default = 'default',\r\n Success = 'success',\r\n Failure = 'failure',\r\n Warning = 'warning',\r\n DarkGray = 'dark-gray',\r\n}\r\nexport enum PillSize {\r\n Small = 'small',\r\n Medium = 'medium',\r\n Large = 'large'\r\n}","\r\n\r\n\r\n\r\n","\r\n\r\n\r\n\r\n","import { createRouter, createWebHistory, RouteLocationNormalized } from 'vue-router'\r\nimport { loadLocales } from \"@/resources/i18n/i18n\";\r\nimport SESSION from \"@/resources/session/session.ts\";\r\nimport { experience_route } from \"@/views/experience\";\r\nimport { reports_route } from \"@/views/reports\";\r\nimport { sign_in_route } from \"@/views/auth/sign_in\";\r\nimport { sign_up_route } from \"@/views/auth/sign_up\";\r\nimport { after_sign_up_route } from \"@/views/auth/after_sign_up\";\r\nimport { confirm_account_route } from \"@/views/auth/confirm_account\";\r\nimport { reset_password_route } from \"@/views/auth/reset_password\";\r\nimport { reset_password_form_route } from \"@/views/auth/reset_password_form\";\r\nimport { new_account_system_route } from \"@/views/auth/new_account_system\";\r\nimport { legal_terms_route } from \"@/views/contract/legal_terms\";\r\nimport { terms_of_service_route } from \"@/views/contract/terms_of_service\";\r\nimport { account_route } from '@/views/account';\r\nimport { contact_route } from \"@/views/contact\";\r\nimport { program_route } from \"@/views/program\";\r\nimport {\r\n getAscentOnboardingRouteLocation,\r\n getImpactOnboardingRouteLocation,\r\n getInitialOnboardingRouteLocation,\r\n getLaunchOnboardingRouteLocation,\r\n getLegacyOnboardingRouteLocation,\r\n onboarding_legacy_route,\r\n onboarding_route\r\n} from \"@/views/onboarding\";\r\nimport { tools_route } from \"@/views/tools\";\r\n\r\nimport { usePopup } from \"omind-design-system/components/odsPopup\";\r\n\r\nimport popupLang from \"@/components/popup/popupLang.vue\";\r\nimport { LOCALE_CATEGORIES } from \"@/assets/locales/categories.ts\";\r\nimport { customAsyncComponent } from './functions';\r\nimport { JOURNEY_STEP_NAME } from '../enums';\r\nimport sdk from '../sdk';\r\nimport Person from \"@/resources/person/Person.ts\";\r\nimport Journey from \"@/resources/journey/Journey.ts\";\r\n\r\nconst router = createRouter({\r\n history: createWebHistory(import.meta.env.BASE_URL),\r\n routes: [\r\n {\r\n name: 'home',\r\n path: '/',\r\n meta: {\r\n requiresAuth: true,\r\n localeCategories: [\r\n LOCALE_CATEGORIES.EXPERIENCE,\r\n LOCALE_CATEGORIES.LEXICON\r\n ]\r\n },\r\n redirect: { name: experience_route.name },\r\n children: [\r\n experience_route,\r\n reports_route,\r\n account_route,\r\n contact_route,\r\n program_route,\r\n onboarding_legacy_route,\r\n onboarding_route,\r\n tools_route\r\n ],\r\n },\r\n sign_in_route,\r\n sign_up_route,\r\n after_sign_up_route,\r\n confirm_account_route,\r\n new_account_system_route,\r\n reset_password_route,\r\n reset_password_form_route,\r\n legal_terms_route,\r\n terms_of_service_route,\r\n {\r\n name: 'recommendation-content-no-auth',\r\n path: '/recommendation/:moduleName',\r\n component: customAsyncComponent(() => import('@/views/program/ProgramModuleView.vue')),\r\n meta: {}\r\n },\r\n ],\r\n})\r\n\r\nrouter.beforeResolve(async to => {\r\n if (Object.hasOwn(to.meta, 'localeCategories')) {\r\n await loadLocales(...(to.meta['localeCategories'] as LOCALE_CATEGORIES[]))\r\n }\r\n})\r\n\r\n\r\nfunction getJourneyWithActiveStep(me: Person, stepName: JOURNEY_STEP_NAME) {\r\n return me.journeys.find(\r\n journey => journey.steps.some(step => step.name === stepName && step.isActive)\r\n );\r\n}\r\n\r\nfunction isFetaLaunchUnlocked(journey: Journey): boolean {\r\n const threshold = journey.getStep('feta_launch_threshold');\r\n return !!threshold && threshold.is_finished;\r\n}\r\n\r\nfunction isFetaAscentUnlocked(journey: Journey): boolean {\r\n const threshold = journey.getStep('feta_ascent_threshold');\r\n return !!threshold && threshold.is_finished;\r\n}\r\n\r\nfunction isFetaImpactUnlocked(journey: Journey): boolean {\r\n const threshold = journey.getStep('feta_impact_threshold');\r\n return !!threshold && threshold.is_finished;\r\n}\r\n\r\nasync function onboardingRedirection(me: Person, to: RouteLocationNormalized): Promise {\r\n\r\n // Old Onboarding system to be deprecated soon\r\n {\r\n const onboardingRequired = me.hasOnboarding && !me.onboardingComplete;\r\n\r\n // Redirect users to onboarding when required.\r\n if (onboardingRequired && to.name !== 'onboarding-legacy')\r\n return getLegacyOnboardingRouteLocation(me.onboarding_tag);\r\n\r\n // Redirect users without onboarding outside of onboarding related views.\r\n if (onboardingRequired && typeof to.name === \"string\" && to.name.includes('onboarding.'))\r\n return { name: 'home' };\r\n\r\n // NOTE : Inversion as guard clause of this initial expression :\r\n // -> !onboardingRequired && !to.name?.toString().includes('onboarding') && !to.name?.toString().includes('report-interactive')\r\n if (\r\n onboardingRequired\r\n || to.name?.toString().includes('onboarding')\r\n || to.name?.toString().includes('report-interactive')\r\n )\r\n return;\r\n }\r\n // End Old Onboarding system to be deprecated soon\r\n\r\n await me.loadJourneys()\r\n\r\n const journeyWithInitialOnboarding = getJourneyWithActiveStep(me, JOURNEY_STEP_NAME.FETA_INITIAL_ONBOARDING);\r\n if (journeyWithInitialOnboarding)\r\n return getInitialOnboardingRouteLocation(journeyWithInitialOnboarding.public_id);\r\n\r\n const journeyWithIgnitionOffboarding = getJourneyWithActiveStep(me, JOURNEY_STEP_NAME.FETA_IGNITION_OFFBOARDING);\r\n if (journeyWithIgnitionOffboarding && isFetaLaunchUnlocked(journeyWithIgnitionOffboarding)){\r\n return {\r\n name: 'report-interactive',\r\n params: { journeyId: journeyWithIgnitionOffboarding?.public_id, reportName: 'behaviors_synthesis' }\r\n };\r\n }\r\n\r\n const journeyWithLaunchOnboarding = getJourneyWithActiveStep(me, JOURNEY_STEP_NAME.FETA_LAUNCH_ONBOARDING);\r\n if (journeyWithLaunchOnboarding && isFetaLaunchUnlocked(journeyWithLaunchOnboarding))\r\n return getLaunchOnboardingRouteLocation(journeyWithLaunchOnboarding.public_id);\r\n\r\n const journeyWithLaunchOffboarding = getJourneyWithActiveStep(me, JOURNEY_STEP_NAME.FETA_LAUNCH_OFFBOARDING);\r\n if (journeyWithLaunchOffboarding){\r\n await sdk.putLaunchOffboarding(journeyWithLaunchOffboarding.public_id)\r\n await me.loadJourneys(true)\r\n }\r\n\r\n const journeyWithAscentOnboarding = getJourneyWithActiveStep(me, JOURNEY_STEP_NAME.FETA_ASCENT_ONBOARDING);\r\n if (journeyWithAscentOnboarding && isFetaAscentUnlocked(journeyWithAscentOnboarding))\r\n return getAscentOnboardingRouteLocation(journeyWithAscentOnboarding.public_id);\r\n\r\n const journeyWithImpactOnboarding = getJourneyWithActiveStep(me, JOURNEY_STEP_NAME.FETA_IMPACT_ONBOARDING);\r\n if (journeyWithImpactOnboarding && isFetaImpactUnlocked(journeyWithImpactOnboarding))\r\n return getImpactOnboardingRouteLocation(journeyWithImpactOnboarding.public_id);\r\n}\r\n\r\n\r\nrouter.beforeEach(async (to: RouteLocationNormalized) => {\r\n if (Object.hasOwn(to.query, 'id'))\r\n return { name: 'new_account_system' }\r\n\r\n const requiresAuth = to.matched.some(record => record.meta['requiresAuth'] ?? false)\r\n if (!requiresAuth) return\r\n // Update the session (getMe if not already done)\r\n if (!SESSION.isUpToDate || to.meta.forceMe) await SESSION.update()\r\n\r\n const me = SESSION.user;\r\n\r\n // Redirect to `sign-in` when user is not authenticated\r\n if (!me)\r\n return { name: \"sign_in\", query: { redirect: to.fullPath } };\r\n\r\n // Show language popup if lang not set by user\r\n if (!me.lang_was_picked) {\r\n usePopup(popupLang, { id: 'popup-lang', canClose: false });\r\n }\r\n\r\n const redirect = await onboardingRedirection(me, to);\r\n if (redirect) return redirect;\r\n})\r\n\r\nrouter.onError((error, to, from) => {\r\n console.warn(error, to, from)\r\n})\r\n\r\nexport function isExactActiveRoute(routeName) {\r\n return router.currentRoute.value.name === routeName\r\n}\r\n\r\nexport function isActiveRoute(routeName) {\r\n return (\r\n isExactActiveRoute(routeName)\r\n || router.currentRoute.value.matched.some(item => item.name === routeName)\r\n )\r\n}\r\n\r\nexport default router","/*!\r\n * Deep merge two or more objects or arrays.\r\n * (c) 2023 Chris Ferdinandi, MIT License, https://gomakethings.com\r\n * @param {*} ...objs The arrays or objects to merge\r\n * @returns {*} The merged arrays or objects\r\n */\r\nfunction deepmerge (...objs) {\r\n\r\n\t/**\r\n\t * Get the object type\r\n\t * @param {*} obj The object\r\n\t * @return {String} The object type\r\n\t */\r\n\tfunction getType (obj) {\r\n\t\treturn Object.prototype.toString.call(obj).slice(8, -1).toLowerCase();\r\n\t}\r\n\r\n\t/**\r\n\t * Deep merge two objects\r\n\t * @return {Object}\r\n\t */\r\n\tfunction mergeObj (clone, obj) {\r\n\t\tfor (let [key, value] of Object.entries(obj)) {\r\n\t\t\tlet type = getType(value);\r\n\t\t\tif (clone[key] !== undefined && getType(clone[key]) === type && ['array', 'object'].includes(type)) {\r\n\t\t\t\tclone[key] = deepmerge(clone[key], value);\r\n\t\t\t} else {\r\n\t\t\t\tclone[key] = structuredClone(value);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\t// Create a clone of the first item in the objs array\r\n\tlet clone = structuredClone(objs.shift());\r\n\r\n\t// Loop through each item\r\n\tfor (let obj of objs) {\r\n\r\n\t\t// Get the object type\r\n\t\tlet type = getType(obj);\r\n\r\n\t\t// If the current item isn't the same type as the clone, replace it\r\n\t\tif (getType(clone) !== type) {\r\n\t\t\tclone = structuredClone(obj);\r\n\t\t\tcontinue;\r\n\t\t}\r\n\r\n\t\t// Otherwise, merge\r\n\t\tif (type === 'array') {\r\n\t\t\tclone = [...clone, ...structuredClone(obj)];\r\n\t\t} else if (type === 'object') {\r\n\t\t\tmergeObj(clone, obj);\r\n\t\t} else {\r\n\t\t\tclone = obj;\r\n\t\t}\r\n\r\n\t}\r\n\r\n\treturn clone;\r\n\r\n}\r\n\r\nexport default deepmerge\r\nexport { deepmerge }","import {JOURNEY_STEP_GROUP, JOURNEY_STEP_NAME, JOURNEY_STEP_TYPE, LANG} from \"@/resources/enums\";\r\nimport router from \"@/resources/router\";\r\nimport Journey from \"@/resources/journey/Journey.ts\";\r\nimport {NavigationFailure} from \"vue-router\";\r\n\r\nexport {deepmerge} from '@/resources/misc/deepmerge';\r\n\r\n\r\nexport function getUserDefaultLang(): LANG {\r\n if (/^fr\\b/.test(navigator.language))\r\n return LANG.FR\r\n\r\n if (/^en\\b/.test(navigator.language))\r\n return LANG.EN;\r\n\r\n // Default lang\r\n return LANG.EN;\r\n}\r\n\r\n/**\r\n * Parse some value to the corresponding Date object\r\n */\r\nexport function dateFromIsoString(dateString: string | null | undefined): Date | null {\r\n if (dateString === null)\r\n return null;\r\n\r\n if (dateString === undefined)\r\n return null;\r\n\r\n // Handling of dates missing timezone.\r\n if (!dateString.includes('Z') && !dateString.includes('+'))\r\n return new Date(dateString + 'Z');\r\n\r\n return new Date(dateString);\r\n}\r\n\r\n\r\nexport async function gotoStep(\r\n journeyId: Journey['public_id'],\r\n name: JOURNEY_STEP_NAME,\r\n type: JOURNEY_STEP_TYPE,\r\n group: JOURNEY_STEP_GROUP,\r\n): Promise {\r\n switch (type) {\r\n case JOURNEY_STEP_TYPE.SURVEY:\r\n return await router.push({\r\n name: 'journeys.survey',\r\n params: {\r\n journeyId: journeyId,\r\n stepName: name,\r\n stepGroup: group\r\n }\r\n })\r\n\r\n case JOURNEY_STEP_TYPE.TEST:\r\n return await router.push({\r\n name: 'journeys.game',\r\n params: {\r\n journeyId: journeyId,\r\n stepName: name,\r\n stepGroup: group\r\n }\r\n })\r\n\r\n default:\r\n // TODO : consider using assertNever to avoid misuses of this function.\r\n return;\r\n }\r\n}\r\n\r\nexport function capitalize(value: string): string {\r\n return value.charAt(0).toUpperCase() + value.slice(1).toLowerCase();\r\n}\r\n\r\nexport function assertNever(x: never, message: string | undefined = undefined): never {\r\n if (message)\r\n throw new Error(message);\r\n\r\n throw new Error(`Case ${x} is not properly handled !`);\r\n}\r\n\r\n/**\r\n * This function should be used when some value can generally be undefined|null, but in specific case we know it is not.\r\n */\r\nexport function asDefinedValue(value: T | undefined | null): T {\r\n if (value === null) throw \"value should not be null\";\r\n if (value === undefined) throw \"value should not be undefined\";\r\n return value;\r\n}\r\n\r\n\r\nexport function delay(ms: number): Promise {\r\n return new Promise(res => setTimeout(res, ms))\r\n}","import { createI18n, I18n } from 'vue-i18n'\r\nimport { LANG } from \"@/resources/enums\";\r\nimport axios from \"axios\";\r\nimport frNotFoundLocales from \"@/assets/locales/fr-not_found.json\"\r\nimport frTimedOutLocales from \"@/assets/locales/fr-timed_out.json\"\r\nimport enNotFoundLocales from \"@/assets/locales/en-not_found.json\"\r\nimport enTimedOutLocales from \"@/assets/locales/en-timed_out.json\"\r\nimport esNotFoundLocales from \"@/assets/locales/es-not_found.json\"\r\nimport esTimedOutLocales from \"@/assets/locales/es-timed_out.json\"\r\nimport { getUserDefaultLang } from \"@/resources/misc/functions\";\r\nimport SESSION from \"@/resources/session/session\";\r\nimport { LOCALE_CATEGORIES } from \"@/assets/locales/categories.ts\";\r\nimport { computed, ComputedRef, watch } from \"vue\";\r\nimport router from \"@/resources/router\";\r\nimport deepmerge from \"@/resources/misc/deepmerge\";\r\n\r\nexport const NAVIGATOR_LANG = getUserDefaultLang()\r\n\r\n/* NOTE : We need to load those localisations directly because their respective components are fallback components. */\r\nconst loadedLocales: any = {}\r\nloadedLocales[LANG.FR] = { ...frNotFoundLocales, ...frTimedOutLocales }\r\nloadedLocales[LANG.EN] = { ...enNotFoundLocales, ...enTimedOutLocales }\r\nloadedLocales[LANG.ES] = { ...esNotFoundLocales, ...esTimedOutLocales }\r\n\r\nexport const i18n = createI18n({\r\n legacy: false,\r\n locale: NAVIGATOR_LANG,\r\n fallbackLocale: LANG.EN,\r\n messages: loadedLocales,\r\n warnHtmlMessage: false\r\n})\r\n\r\n/* NOTE(Julien)\r\n * SUPPORT_LOCALES is used to prevent sending a request to the server if the queried language is not supported,\r\n * whenever a new language is added to the internationalization files,\r\n * its key must be added to SUPPORT_LOCALES for the files can be fetched from the server.\r\n */\r\nconst SUPPORT_LOCALES: LANG[] = Object.values(LANG)\r\nconst SUPPORT_CATEGORIES: LOCALE_CATEGORIES[] = Object.values(LOCALE_CATEGORIES)\r\n\r\n\r\nconst FORCE_PREFIX_CATEGORIES: LOCALE_CATEGORIES[] = [\r\n LOCALE_CATEGORIES.LEADERSHIP_6_0_0,\r\n LOCALE_CATEGORIES.RESILIENCE_2_0_0,\r\n LOCALE_CATEGORIES.BILAN_VR_3_0_0,\r\n LOCALE_CATEGORIES.BILAN_VR_FLASH_3_0_0,\r\n LOCALE_CATEGORIES.BILAN_VR_QUEST_1_0_0,\r\n LOCALE_CATEGORIES.TINGARI_1_3_0,\r\n LOCALE_CATEGORIES.BOOTCAMP_ONLINE_1_0_0,\r\n LOCALE_CATEGORIES.FETA_1_0_0\r\n]\r\n\r\n\r\nconst localeCache: { [category in keyof typeof LOCALE_CATEGORIES]?: { [lang in keyof typeof LANG]?: any } } = {}\r\n\r\nasync function getCategoryMessages(lang: LANG, category: LOCALE_CATEGORIES): Promise {\r\n if (category in localeCache && lang in localeCache[category])\r\n return;\r\n\r\n if (!SUPPORT_LOCALES.includes(lang))\r\n throw new Error(`Unsupported language '${lang}' ! Request will not be sent.`);\r\n\r\n if (!SUPPORT_CATEGORIES.includes(category))\r\n throw new Error(`Unsupported locales category '${category}' ! Request will not be sent.`);\r\n\r\n const messages = await import(`@/assets/locales/${lang}-${category}.json`);\r\n\r\n if (!(category in localeCache))\r\n localeCache[category] = {};\r\n\r\n localeCache[category][lang] = true;\r\n\r\n if (!(lang in loadedLocales))\r\n loadedLocales[lang] = {};\r\n\r\n //Force prefix for journey detail to avoid merge conflicts when multiple journeys\r\n if (FORCE_PREFIX_CATEGORIES.includes(category)) {\r\n const prefixedMessages = {}\r\n prefixedMessages[category] = messages.default\r\n loadedLocales[lang] = deepmerge(loadedLocales[lang], prefixedMessages)\r\n } else {\r\n loadedLocales[lang] = deepmerge(loadedLocales[lang], messages.default)\r\n }\r\n\r\n \r\n}\r\n\r\n\r\n/**\r\n *\r\n * @param {LANG} lang\r\n * @param {LOCALE_CATEGORIES} categories\r\n * @return {Promise}\r\n */\r\nexport async function queryLocales(lang, ...categories) {\r\n for (let category of categories) {\r\n try {\r\n await getCategoryMessages(lang, category)\r\n } catch (err) {\r\n console.error(err)\r\n console.error(`unable to load ${lang} translations for category ${category} !`)\r\n }\r\n }\r\n}\r\n\r\n\r\nexport const computedUserLang: ComputedRef = computed(() => {\r\n if (!SESSION.user)\r\n return getUserDefaultLang();\r\n\r\n return SESSION.user.lang;\r\n})\r\n\r\nexport async function loadLocales(...categories: LOCALE_CATEGORIES[]): Promise {\r\n await queryLocales(SESSION.userLang, ...categories);\r\n\r\n setLocales(SESSION.userLang);\r\n}\r\n\r\nexport async function watchLocales(...categories: LOCALE_CATEGORIES[]): Promise {\r\n await loadLocales(...categories);\r\n\r\n watch([computedUserLang], async () => await loadLocales(...categories));\r\n}\r\n\r\nexport function setLocales(lang: LANG): void {\r\n // NOTE(Julien) : this line will force an i18n update in case messages have changed but not locale\r\n i18n.global.locale.value = \"\";\r\n\r\n i18n.global.setLocaleMessage(lang, loadedLocales[lang]);\r\n\r\n i18n.global.locale.value = lang;\r\n\r\n axios.defaults.headers.common['Accept-Language'] = lang;\r\n\r\n document.querySelector('html')?.setAttribute('lang', lang);\r\n}\r\n\r\nexport async function reloadLocalesForLang(lang: LANG): Promise {\r\n const localesToLoad:string[] = []\r\n for (let category in localeCache) {\r\n if(!localeCache[category][lang]){\r\n localesToLoad.push(category)\r\n }\r\n }\r\n await queryLocales(lang, ...localesToLoad as LOCALE_CATEGORIES[]);\r\n\r\n setLocales(lang);\r\n}\r\n\r\n\r\nwatch([computedUserLang], async () => {\r\n if ('localeCategories' in router.currentRoute.value.meta)\r\n await queryLocales(SESSION.userLang, ...router.currentRoute.value.meta['localeCategories'] as LOCALE_CATEGORIES[]);\r\n\r\n setLocales(SESSION.userLang);\r\n})\r\n","export enum LogoColor {\r\n Default = 'dark',\r\n Light = 'light',\r\n Dark = 'dark'\r\n}\r\n\r\nexport enum LogoType {\r\n Default = 'with_text',\r\n NoText = 'no_text',\r\n WithText = 'with_text'\r\n}","\r\n\r\n\r\n\r\n","\r\n\r\n\r\n\r\n","\r\n\r\n\r\n\r\n","\r\n\r\n\r\n\r\n","\r\n\r\n\r\n\r\n","\r\n\r\n\r\n\r\n","\r\n\r\n\r\n\r\n\r\n","var __defProp = Object.defineProperty;\nvar __getOwnPropSymbols = Object.getOwnPropertySymbols;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __propIsEnum = Object.prototype.propertyIsEnumerable;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __spreadValues = (a, b) => {\n for (var prop in b || (b = {}))\n if (__hasOwnProp.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n if (__getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(b)) {\n if (__propIsEnum.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n }\n return a;\n};\n\n// src/index.ts\nimport { provide, inject, getCurrentInstance } from \"vue\";\n\n// src/ts/interface.ts\nimport { createApp, nextTick } from \"vue\";\n\n// src/ts/utils.ts\nimport { defineComponent, toRaw, unref } from \"vue\";\nvar isFunction = (value) => typeof value === \"function\";\nvar isString = (value) => typeof value === \"string\";\nvar isNonEmptyString = (value) => isString(value) && value.trim().length > 0;\nvar isNumber = (value) => typeof value === \"number\";\nvar isUndefined = (value) => typeof value === \"undefined\";\nvar isObject = (value) => typeof value === \"object\" && value !== null;\nvar isJSX = (obj) => hasProp(obj, \"tag\") && isNonEmptyString(obj.tag);\nvar isTouchEvent = (event) => window.TouchEvent && event instanceof TouchEvent;\nvar isToastComponent = (obj) => hasProp(obj, \"component\") && isToastContent(obj.component);\nvar isVueComponent = (c) => isFunction(c) || isObject(c);\nvar isToastContent = (obj) => !isUndefined(obj) && (isString(obj) || isVueComponent(obj) || isToastComponent(obj));\nvar isDOMRect = (obj) => isObject(obj) && [\"height\", \"width\", \"right\", \"left\", \"top\", \"bottom\"].every((p) => isNumber(obj[p]));\nvar hasProp = (obj, propKey) => (isObject(obj) || isFunction(obj)) && propKey in obj;\nvar getId = ((i) => () => i++)(0);\nfunction getX(event) {\n return isTouchEvent(event) ? event.targetTouches[0].clientX : event.clientX;\n}\nfunction getY(event) {\n return isTouchEvent(event) ? event.targetTouches[0].clientY : event.clientY;\n}\nvar removeElement = (el) => {\n if (!isUndefined(el.remove)) {\n el.remove();\n } else if (el.parentNode) {\n el.parentNode.removeChild(el);\n }\n};\nvar getVueComponentFromObj = (obj) => {\n if (isToastComponent(obj)) {\n return getVueComponentFromObj(obj.component);\n }\n if (isJSX(obj)) {\n return defineComponent({\n render() {\n return obj;\n }\n });\n }\n return typeof obj === \"string\" ? obj : toRaw(unref(obj));\n};\nvar normalizeToastComponent = (obj) => {\n if (typeof obj === \"string\") {\n return obj;\n }\n const props = hasProp(obj, \"props\") && isObject(obj.props) ? obj.props : {};\n const listeners = hasProp(obj, \"listeners\") && isObject(obj.listeners) ? obj.listeners : {};\n return { component: getVueComponentFromObj(obj), props, listeners };\n};\nvar isBrowser = () => typeof window !== \"undefined\";\n\n// src/ts/eventBus.ts\nvar EventBus = class {\n constructor() {\n this.allHandlers = {};\n }\n getHandlers(eventType) {\n return this.allHandlers[eventType] || [];\n }\n on(eventType, handler) {\n const handlers = this.getHandlers(eventType);\n handlers.push(handler);\n this.allHandlers[eventType] = handlers;\n }\n off(eventType, handler) {\n const handlers = this.getHandlers(eventType);\n handlers.splice(handlers.indexOf(handler) >>> 0, 1);\n }\n emit(eventType, event) {\n const handlers = this.getHandlers(eventType);\n handlers.forEach((handler) => handler(event));\n }\n};\nvar isEventBusInterface = (e) => [\"on\", \"off\", \"emit\"].every((f) => hasProp(e, f) && isFunction(e[f]));\n\n// vue:/Users/maronato/Developer/vue-toastification/src/components/VtToastContainer.vue?vue&type=script\nimport { defineComponent as defineComponent7 } from \"vue\";\n\n// src/ts/constants.ts\nvar TYPE;\n(function(TYPE2) {\n TYPE2[\"SUCCESS\"] = \"success\";\n TYPE2[\"ERROR\"] = \"error\";\n TYPE2[\"WARNING\"] = \"warning\";\n TYPE2[\"INFO\"] = \"info\";\n TYPE2[\"DEFAULT\"] = \"default\";\n})(TYPE || (TYPE = {}));\nvar POSITION;\n(function(POSITION2) {\n POSITION2[\"TOP_LEFT\"] = \"top-left\";\n POSITION2[\"TOP_CENTER\"] = \"top-center\";\n POSITION2[\"TOP_RIGHT\"] = \"top-right\";\n POSITION2[\"BOTTOM_LEFT\"] = \"bottom-left\";\n POSITION2[\"BOTTOM_CENTER\"] = \"bottom-center\";\n POSITION2[\"BOTTOM_RIGHT\"] = \"bottom-right\";\n})(POSITION || (POSITION = {}));\nvar EVENTS;\n(function(EVENTS2) {\n EVENTS2[\"ADD\"] = \"add\";\n EVENTS2[\"DISMISS\"] = \"dismiss\";\n EVENTS2[\"UPDATE\"] = \"update\";\n EVENTS2[\"CLEAR\"] = \"clear\";\n EVENTS2[\"UPDATE_DEFAULTS\"] = \"update_defaults\";\n})(EVENTS || (EVENTS = {}));\nvar VT_NAMESPACE = \"Vue-Toastification\";\n\n// src/ts/propValidators.ts\nvar COMMON = {\n type: {\n type: String,\n default: TYPE.DEFAULT\n },\n classNames: {\n type: [String, Array],\n default: () => []\n },\n trueBoolean: {\n type: Boolean,\n default: true\n }\n};\nvar ICON = {\n type: COMMON.type,\n customIcon: {\n type: [String, Boolean, Object, Function],\n default: true\n }\n};\nvar CLOSE_BUTTON = {\n component: {\n type: [String, Object, Function, Boolean],\n default: \"button\"\n },\n classNames: COMMON.classNames,\n showOnHover: {\n type: Boolean,\n default: false\n },\n ariaLabel: {\n type: String,\n default: \"close\"\n }\n};\nvar PROGRESS_BAR = {\n timeout: {\n type: [Number, Boolean],\n default: 5e3\n },\n hideProgressBar: {\n type: Boolean,\n default: false\n },\n isRunning: {\n type: Boolean,\n default: false\n }\n};\nvar TRANSITION = {\n transition: {\n type: [Object, String],\n default: `${VT_NAMESPACE}__bounce`\n }\n};\nvar CORE_TOAST = {\n position: {\n type: String,\n default: POSITION.TOP_RIGHT\n },\n draggable: COMMON.trueBoolean,\n draggablePercent: {\n type: Number,\n default: 0.6\n },\n pauseOnFocusLoss: COMMON.trueBoolean,\n pauseOnHover: COMMON.trueBoolean,\n closeOnClick: COMMON.trueBoolean,\n timeout: PROGRESS_BAR.timeout,\n hideProgressBar: PROGRESS_BAR.hideProgressBar,\n toastClassName: COMMON.classNames,\n bodyClassName: COMMON.classNames,\n icon: ICON.customIcon,\n closeButton: CLOSE_BUTTON.component,\n closeButtonClassName: CLOSE_BUTTON.classNames,\n showCloseButtonOnHover: CLOSE_BUTTON.showOnHover,\n accessibility: {\n type: Object,\n default: () => ({\n toastRole: \"alert\",\n closeButtonLabel: \"close\"\n })\n },\n rtl: {\n type: Boolean,\n default: false\n },\n eventBus: {\n type: Object,\n required: false,\n default: () => new EventBus()\n }\n};\nvar TOAST = {\n id: {\n type: [String, Number],\n required: true,\n default: 0\n },\n type: COMMON.type,\n content: {\n type: [String, Object, Function],\n required: true,\n default: \"\"\n },\n onClick: {\n type: Function,\n default: void 0\n },\n onClose: {\n type: Function,\n default: void 0\n }\n};\nvar CONTAINER = {\n container: {\n type: [\n Object,\n Function\n ],\n default: () => document.body\n },\n newestOnTop: COMMON.trueBoolean,\n maxToasts: {\n type: Number,\n default: 20\n },\n transition: TRANSITION.transition,\n toastDefaults: Object,\n filterBeforeCreate: {\n type: Function,\n default: (toast) => toast\n },\n filterToasts: {\n type: Function,\n default: (toasts) => toasts\n },\n containerClassName: COMMON.classNames,\n onMounted: Function,\n shareAppContext: [Boolean, Object]\n};\nvar propValidators_default = {\n CORE_TOAST,\n TOAST,\n CONTAINER,\n PROGRESS_BAR,\n ICON,\n TRANSITION,\n CLOSE_BUTTON\n};\n\n// vue:/Users/maronato/Developer/vue-toastification/src/components/VtToast.vue?vue&type=script\nimport { defineComponent as defineComponent5 } from \"vue\";\n\n// vue:/Users/maronato/Developer/vue-toastification/src/components/VtProgressBar.vue?vue&type=script\nimport { defineComponent as defineComponent2 } from \"vue\";\nvar VtProgressBar_default = defineComponent2({\n name: \"VtProgressBar\",\n props: propValidators_default.PROGRESS_BAR,\n data() {\n return {\n hasClass: true\n };\n },\n computed: {\n style() {\n return {\n animationDuration: `${this.timeout}ms`,\n animationPlayState: this.isRunning ? \"running\" : \"paused\",\n opacity: this.hideProgressBar ? 0 : 1\n };\n },\n cpClass() {\n return this.hasClass ? `${VT_NAMESPACE}__progress-bar` : \"\";\n }\n },\n watch: {\n timeout() {\n this.hasClass = false;\n this.$nextTick(() => this.hasClass = true);\n }\n },\n mounted() {\n this.$el.addEventListener(\"animationend\", this.animationEnded);\n },\n beforeUnmount() {\n this.$el.removeEventListener(\"animationend\", this.animationEnded);\n },\n methods: {\n animationEnded() {\n this.$emit(\"close-toast\");\n }\n }\n});\n\n// vue:/Users/maronato/Developer/vue-toastification/src/components/VtProgressBar.vue?vue&type=template\nimport { normalizeClass as _normalizeClass, normalizeStyle as _normalizeStyle, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\";\nfunction render(_ctx, _cache) {\n return _openBlock(), _createElementBlock(\"div\", {\n style: _normalizeStyle(_ctx.style),\n class: _normalizeClass(_ctx.cpClass)\n }, null, 6);\n}\n\n// vue:/Users/maronato/Developer/vue-toastification/src/components/VtProgressBar.vue\nVtProgressBar_default.render = render;\nvar VtProgressBar_default2 = VtProgressBar_default;\n\n// vue:/Users/maronato/Developer/vue-toastification/src/components/VtCloseButton.vue?vue&type=script\nimport { defineComponent as defineComponent3 } from \"vue\";\nvar VtCloseButton_default = defineComponent3({\n name: \"VtCloseButton\",\n props: propValidators_default.CLOSE_BUTTON,\n computed: {\n buttonComponent() {\n if (this.component !== false) {\n return getVueComponentFromObj(this.component);\n }\n return \"button\";\n },\n classes() {\n const classes = [`${VT_NAMESPACE}__close-button`];\n if (this.showOnHover) {\n classes.push(\"show-on-hover\");\n }\n return classes.concat(this.classNames);\n }\n }\n});\n\n// vue:/Users/maronato/Developer/vue-toastification/src/components/VtCloseButton.vue?vue&type=template\nimport { createTextVNode as _createTextVNode, resolveDynamicComponent as _resolveDynamicComponent, mergeProps as _mergeProps, withCtx as _withCtx, openBlock as _openBlock2, createBlock as _createBlock } from \"vue\";\nvar _hoisted_1 = /* @__PURE__ */ _createTextVNode(\" \\xD7 \");\nfunction render2(_ctx, _cache) {\n return _openBlock2(), _createBlock(_resolveDynamicComponent(_ctx.buttonComponent), _mergeProps({\n \"aria-label\": _ctx.ariaLabel,\n class: _ctx.classes\n }, _ctx.$attrs), {\n default: _withCtx(() => [\n _hoisted_1\n ]),\n _: 1\n }, 16, [\"aria-label\", \"class\"]);\n}\n\n// vue:/Users/maronato/Developer/vue-toastification/src/components/VtCloseButton.vue\nVtCloseButton_default.render = render2;\nvar VtCloseButton_default2 = VtCloseButton_default;\n\n// vue:/Users/maronato/Developer/vue-toastification/src/components/VtIcon.vue?vue&type=script\nimport { defineComponent as defineComponent4 } from \"vue\";\n\n// vue:/Users/maronato/Developer/vue-toastification/src/components/icons/VtSuccessIcon.vue?vue&type=script\nvar VtSuccessIcon_default = {};\n\n// vue:/Users/maronato/Developer/vue-toastification/src/components/icons/VtSuccessIcon.vue?vue&type=template\nimport { createElementVNode as _createElementVNode, openBlock as _openBlock3, createElementBlock as _createElementBlock2 } from \"vue\";\nvar _hoisted_12 = {\n \"aria-hidden\": \"true\",\n focusable: \"false\",\n \"data-prefix\": \"fas\",\n \"data-icon\": \"check-circle\",\n class: \"svg-inline--fa fa-check-circle fa-w-16\",\n role: \"img\",\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 512 512\"\n};\nvar _hoisted_2 = /* @__PURE__ */ _createElementVNode(\"path\", {\n fill: \"currentColor\",\n d: \"M504 256c0 136.967-111.033 248-248 248S8 392.967 8 256 119.033 8 256 8s248 111.033 248 248zM227.314 387.314l184-184c6.248-6.248 6.248-16.379 0-22.627l-22.627-22.627c-6.248-6.249-16.379-6.249-22.628 0L216 308.118l-70.059-70.059c-6.248-6.248-16.379-6.248-22.628 0l-22.627 22.627c-6.248 6.248-6.248 16.379 0 22.627l104 104c6.249 6.249 16.379 6.249 22.628.001z\"\n}, null, -1);\nvar _hoisted_3 = [\n _hoisted_2\n];\nfunction render3(_ctx, _cache) {\n return _openBlock3(), _createElementBlock2(\"svg\", _hoisted_12, _hoisted_3);\n}\n\n// vue:/Users/maronato/Developer/vue-toastification/src/components/icons/VtSuccessIcon.vue\nVtSuccessIcon_default.render = render3;\nvar VtSuccessIcon_default2 = VtSuccessIcon_default;\n\n// vue:/Users/maronato/Developer/vue-toastification/src/components/icons/VtInfoIcon.vue?vue&type=script\nvar VtInfoIcon_default = {};\n\n// vue:/Users/maronato/Developer/vue-toastification/src/components/icons/VtInfoIcon.vue?vue&type=template\nimport { createElementVNode as _createElementVNode2, openBlock as _openBlock4, createElementBlock as _createElementBlock3 } from \"vue\";\nvar _hoisted_13 = {\n \"aria-hidden\": \"true\",\n focusable: \"false\",\n \"data-prefix\": \"fas\",\n \"data-icon\": \"info-circle\",\n class: \"svg-inline--fa fa-info-circle fa-w-16\",\n role: \"img\",\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 512 512\"\n};\nvar _hoisted_22 = /* @__PURE__ */ _createElementVNode2(\"path\", {\n fill: \"currentColor\",\n d: \"M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 110c23.196 0 42 18.804 42 42s-18.804 42-42 42-42-18.804-42-42 18.804-42 42-42zm56 254c0 6.627-5.373 12-12 12h-88c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h12v-64h-12c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h64c6.627 0 12 5.373 12 12v100h12c6.627 0 12 5.373 12 12v24z\"\n}, null, -1);\nvar _hoisted_32 = [\n _hoisted_22\n];\nfunction render4(_ctx, _cache) {\n return _openBlock4(), _createElementBlock3(\"svg\", _hoisted_13, _hoisted_32);\n}\n\n// vue:/Users/maronato/Developer/vue-toastification/src/components/icons/VtInfoIcon.vue\nVtInfoIcon_default.render = render4;\nvar VtInfoIcon_default2 = VtInfoIcon_default;\n\n// vue:/Users/maronato/Developer/vue-toastification/src/components/icons/VtWarningIcon.vue?vue&type=script\nvar VtWarningIcon_default = {};\n\n// vue:/Users/maronato/Developer/vue-toastification/src/components/icons/VtWarningIcon.vue?vue&type=template\nimport { createElementVNode as _createElementVNode3, openBlock as _openBlock5, createElementBlock as _createElementBlock4 } from \"vue\";\nvar _hoisted_14 = {\n \"aria-hidden\": \"true\",\n focusable: \"false\",\n \"data-prefix\": \"fas\",\n \"data-icon\": \"exclamation-circle\",\n class: \"svg-inline--fa fa-exclamation-circle fa-w-16\",\n role: \"img\",\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 512 512\"\n};\nvar _hoisted_23 = /* @__PURE__ */ _createElementVNode3(\"path\", {\n fill: \"currentColor\",\n d: \"M504 256c0 136.997-111.043 248-248 248S8 392.997 8 256C8 119.083 119.043 8 256 8s248 111.083 248 248zm-248 50c-25.405 0-46 20.595-46 46s20.595 46 46 46 46-20.595 46-46-20.595-46-46-46zm-43.673-165.346l7.418 136c.347 6.364 5.609 11.346 11.982 11.346h48.546c6.373 0 11.635-4.982 11.982-11.346l7.418-136c.375-6.874-5.098-12.654-11.982-12.654h-63.383c-6.884 0-12.356 5.78-11.981 12.654z\"\n}, null, -1);\nvar _hoisted_33 = [\n _hoisted_23\n];\nfunction render5(_ctx, _cache) {\n return _openBlock5(), _createElementBlock4(\"svg\", _hoisted_14, _hoisted_33);\n}\n\n// vue:/Users/maronato/Developer/vue-toastification/src/components/icons/VtWarningIcon.vue\nVtWarningIcon_default.render = render5;\nvar VtWarningIcon_default2 = VtWarningIcon_default;\n\n// vue:/Users/maronato/Developer/vue-toastification/src/components/icons/VtErrorIcon.vue?vue&type=script\nvar VtErrorIcon_default = {};\n\n// vue:/Users/maronato/Developer/vue-toastification/src/components/icons/VtErrorIcon.vue?vue&type=template\nimport { createElementVNode as _createElementVNode4, openBlock as _openBlock6, createElementBlock as _createElementBlock5 } from \"vue\";\nvar _hoisted_15 = {\n \"aria-hidden\": \"true\",\n focusable: \"false\",\n \"data-prefix\": \"fas\",\n \"data-icon\": \"exclamation-triangle\",\n class: \"svg-inline--fa fa-exclamation-triangle fa-w-18\",\n role: \"img\",\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 576 512\"\n};\nvar _hoisted_24 = /* @__PURE__ */ _createElementVNode4(\"path\", {\n fill: \"currentColor\",\n d: \"M569.517 440.013C587.975 472.007 564.806 512 527.94 512H48.054c-36.937 0-59.999-40.055-41.577-71.987L246.423 23.985c18.467-32.009 64.72-31.951 83.154 0l239.94 416.028zM288 354c-25.405 0-46 20.595-46 46s20.595 46 46 46 46-20.595 46-46-20.595-46-46-46zm-43.673-165.346l7.418 136c.347 6.364 5.609 11.346 11.982 11.346h48.546c6.373 0 11.635-4.982 11.982-11.346l7.418-136c.375-6.874-5.098-12.654-11.982-12.654h-63.383c-6.884 0-12.356 5.78-11.981 12.654z\"\n}, null, -1);\nvar _hoisted_34 = [\n _hoisted_24\n];\nfunction render6(_ctx, _cache) {\n return _openBlock6(), _createElementBlock5(\"svg\", _hoisted_15, _hoisted_34);\n}\n\n// vue:/Users/maronato/Developer/vue-toastification/src/components/icons/VtErrorIcon.vue\nVtErrorIcon_default.render = render6;\nvar VtErrorIcon_default2 = VtErrorIcon_default;\n\n// vue:/Users/maronato/Developer/vue-toastification/src/components/VtIcon.vue?vue&type=script\nvar VtIcon_default = defineComponent4({\n name: \"VtIcon\",\n props: propValidators_default.ICON,\n computed: {\n customIconChildren() {\n return hasProp(this.customIcon, \"iconChildren\") ? this.trimValue(this.customIcon.iconChildren) : \"\";\n },\n customIconClass() {\n if (isString(this.customIcon)) {\n return this.trimValue(this.customIcon);\n } else if (hasProp(this.customIcon, \"iconClass\")) {\n return this.trimValue(this.customIcon.iconClass);\n }\n return \"\";\n },\n customIconTag() {\n if (hasProp(this.customIcon, \"iconTag\")) {\n return this.trimValue(this.customIcon.iconTag, \"i\");\n }\n return \"i\";\n },\n hasCustomIcon() {\n return this.customIconClass.length > 0;\n },\n component() {\n if (this.hasCustomIcon) {\n return this.customIconTag;\n }\n if (isToastContent(this.customIcon)) {\n return getVueComponentFromObj(this.customIcon);\n }\n return this.iconTypeComponent;\n },\n iconTypeComponent() {\n const types = {\n [TYPE.DEFAULT]: VtInfoIcon_default2,\n [TYPE.INFO]: VtInfoIcon_default2,\n [TYPE.SUCCESS]: VtSuccessIcon_default2,\n [TYPE.ERROR]: VtErrorIcon_default2,\n [TYPE.WARNING]: VtWarningIcon_default2\n };\n return types[this.type];\n },\n iconClasses() {\n const classes = [`${VT_NAMESPACE}__icon`];\n if (this.hasCustomIcon) {\n return classes.concat(this.customIconClass);\n }\n return classes;\n }\n },\n methods: {\n trimValue(value, empty = \"\") {\n return isNonEmptyString(value) ? value.trim() : empty;\n }\n }\n});\n\n// vue:/Users/maronato/Developer/vue-toastification/src/components/VtIcon.vue?vue&type=template\nimport { toDisplayString as _toDisplayString, createTextVNode as _createTextVNode2, resolveDynamicComponent as _resolveDynamicComponent2, normalizeClass as _normalizeClass2, withCtx as _withCtx2, openBlock as _openBlock7, createBlock as _createBlock2 } from \"vue\";\nfunction render7(_ctx, _cache) {\n return _openBlock7(), _createBlock2(_resolveDynamicComponent2(_ctx.component), {\n class: _normalizeClass2(_ctx.iconClasses)\n }, {\n default: _withCtx2(() => [\n _createTextVNode2(_toDisplayString(_ctx.customIconChildren), 1)\n ]),\n _: 1\n }, 8, [\"class\"]);\n}\n\n// vue:/Users/maronato/Developer/vue-toastification/src/components/VtIcon.vue\nVtIcon_default.render = render7;\nvar VtIcon_default2 = VtIcon_default;\n\n// vue:/Users/maronato/Developer/vue-toastification/src/components/VtToast.vue?vue&type=script\nvar VtToast_default = defineComponent5({\n name: \"VtToast\",\n components: { ProgressBar: VtProgressBar_default2, CloseButton: VtCloseButton_default2, Icon: VtIcon_default2 },\n inheritAttrs: false,\n props: Object.assign({}, propValidators_default.CORE_TOAST, propValidators_default.TOAST),\n data() {\n const data = {\n isRunning: true,\n disableTransitions: false,\n beingDragged: false,\n dragStart: 0,\n dragPos: { x: 0, y: 0 },\n dragRect: {}\n };\n return data;\n },\n computed: {\n classes() {\n const classes = [\n `${VT_NAMESPACE}__toast`,\n `${VT_NAMESPACE}__toast--${this.type}`,\n `${this.position}`\n ].concat(this.toastClassName);\n if (this.disableTransitions) {\n classes.push(\"disable-transition\");\n }\n if (this.rtl) {\n classes.push(`${VT_NAMESPACE}__toast--rtl`);\n }\n return classes;\n },\n bodyClasses() {\n const classes = [\n `${VT_NAMESPACE}__toast-${isString(this.content) ? \"body\" : \"component-body\"}`\n ].concat(this.bodyClassName);\n return classes;\n },\n draggableStyle() {\n if (this.dragStart === this.dragPos.x) {\n return {};\n } else if (this.beingDragged) {\n return {\n transform: `translateX(${this.dragDelta}px)`,\n opacity: 1 - Math.abs(this.dragDelta / this.removalDistance)\n };\n } else {\n return {\n transition: \"transform 0.2s, opacity 0.2s\",\n transform: \"translateX(0)\",\n opacity: 1\n };\n }\n },\n dragDelta() {\n return this.beingDragged ? this.dragPos.x - this.dragStart : 0;\n },\n removalDistance() {\n if (isDOMRect(this.dragRect)) {\n return (this.dragRect.right - this.dragRect.left) * this.draggablePercent;\n }\n return 0;\n }\n },\n mounted() {\n if (this.draggable) {\n this.draggableSetup();\n }\n if (this.pauseOnFocusLoss) {\n this.focusSetup();\n }\n },\n beforeUnmount() {\n if (this.draggable) {\n this.draggableCleanup();\n }\n if (this.pauseOnFocusLoss) {\n this.focusCleanup();\n }\n },\n methods: {\n hasProp,\n getVueComponentFromObj,\n closeToast() {\n this.eventBus.emit(EVENTS.DISMISS, this.id);\n },\n clickHandler() {\n if (this.onClick) {\n this.onClick(this.closeToast);\n }\n if (this.closeOnClick) {\n if (!this.beingDragged || this.dragStart === this.dragPos.x) {\n this.closeToast();\n }\n }\n },\n timeoutHandler() {\n this.closeToast();\n },\n hoverPause() {\n if (this.pauseOnHover) {\n this.isRunning = false;\n }\n },\n hoverPlay() {\n if (this.pauseOnHover) {\n this.isRunning = true;\n }\n },\n focusPause() {\n this.isRunning = false;\n },\n focusPlay() {\n this.isRunning = true;\n },\n focusSetup() {\n addEventListener(\"blur\", this.focusPause);\n addEventListener(\"focus\", this.focusPlay);\n },\n focusCleanup() {\n removeEventListener(\"blur\", this.focusPause);\n removeEventListener(\"focus\", this.focusPlay);\n },\n draggableSetup() {\n const element = this.$el;\n element.addEventListener(\"touchstart\", this.onDragStart, {\n passive: true\n });\n element.addEventListener(\"mousedown\", this.onDragStart);\n addEventListener(\"touchmove\", this.onDragMove, { passive: false });\n addEventListener(\"mousemove\", this.onDragMove);\n addEventListener(\"touchend\", this.onDragEnd);\n addEventListener(\"mouseup\", this.onDragEnd);\n },\n draggableCleanup() {\n const element = this.$el;\n element.removeEventListener(\"touchstart\", this.onDragStart);\n element.removeEventListener(\"mousedown\", this.onDragStart);\n removeEventListener(\"touchmove\", this.onDragMove);\n removeEventListener(\"mousemove\", this.onDragMove);\n removeEventListener(\"touchend\", this.onDragEnd);\n removeEventListener(\"mouseup\", this.onDragEnd);\n },\n onDragStart(event) {\n this.beingDragged = true;\n this.dragPos = { x: getX(event), y: getY(event) };\n this.dragStart = getX(event);\n this.dragRect = this.$el.getBoundingClientRect();\n },\n onDragMove(event) {\n if (this.beingDragged) {\n event.preventDefault();\n if (this.isRunning) {\n this.isRunning = false;\n }\n this.dragPos = { x: getX(event), y: getY(event) };\n }\n },\n onDragEnd() {\n if (this.beingDragged) {\n if (Math.abs(this.dragDelta) >= this.removalDistance) {\n this.disableTransitions = true;\n this.$nextTick(() => this.closeToast());\n } else {\n setTimeout(() => {\n this.beingDragged = false;\n if (isDOMRect(this.dragRect) && this.pauseOnHover && this.dragRect.bottom >= this.dragPos.y && this.dragPos.y >= this.dragRect.top && this.dragRect.left <= this.dragPos.x && this.dragPos.x <= this.dragRect.right) {\n this.isRunning = false;\n } else {\n this.isRunning = true;\n }\n });\n }\n }\n }\n }\n});\n\n// vue:/Users/maronato/Developer/vue-toastification/src/components/VtToast.vue?vue&type=template\nimport { resolveComponent as _resolveComponent, openBlock as _openBlock8, createBlock as _createBlock3, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString2, createTextVNode as _createTextVNode3, Fragment as _Fragment, createElementBlock as _createElementBlock6, resolveDynamicComponent as _resolveDynamicComponent3, toHandlers as _toHandlers, mergeProps as _mergeProps2, normalizeClass as _normalizeClass3, createElementVNode as _createElementVNode5, withModifiers as _withModifiers, normalizeStyle as _normalizeStyle2 } from \"vue\";\nvar _hoisted_16 = [\"role\"];\nfunction render8(_ctx, _cache) {\n const _component_Icon = _resolveComponent(\"Icon\");\n const _component_CloseButton = _resolveComponent(\"CloseButton\");\n const _component_ProgressBar = _resolveComponent(\"ProgressBar\");\n return _openBlock8(), _createElementBlock6(\"div\", {\n class: _normalizeClass3(_ctx.classes),\n style: _normalizeStyle2(_ctx.draggableStyle),\n onClick: _cache[0] || (_cache[0] = (...args) => _ctx.clickHandler && _ctx.clickHandler(...args)),\n onMouseenter: _cache[1] || (_cache[1] = (...args) => _ctx.hoverPause && _ctx.hoverPause(...args)),\n onMouseleave: _cache[2] || (_cache[2] = (...args) => _ctx.hoverPlay && _ctx.hoverPlay(...args))\n }, [\n _ctx.icon ? (_openBlock8(), _createBlock3(_component_Icon, {\n key: 0,\n \"custom-icon\": _ctx.icon,\n type: _ctx.type\n }, null, 8, [\"custom-icon\", \"type\"])) : _createCommentVNode(\"v-if\", true),\n _createElementVNode5(\"div\", {\n role: _ctx.accessibility.toastRole || \"alert\",\n class: _normalizeClass3(_ctx.bodyClasses)\n }, [\n typeof _ctx.content === \"string\" ? (_openBlock8(), _createElementBlock6(_Fragment, { key: 0 }, [\n _createTextVNode3(_toDisplayString2(_ctx.content), 1)\n ], 2112)) : (_openBlock8(), _createBlock3(_resolveDynamicComponent3(_ctx.getVueComponentFromObj(_ctx.content)), _mergeProps2({\n key: 1,\n \"toast-id\": _ctx.id\n }, _ctx.hasProp(_ctx.content, \"props\") ? _ctx.content.props : {}, _toHandlers(_ctx.hasProp(_ctx.content, \"listeners\") ? _ctx.content.listeners : {}), { onCloseToast: _ctx.closeToast }), null, 16, [\"toast-id\", \"onCloseToast\"]))\n ], 10, _hoisted_16),\n !!_ctx.closeButton ? (_openBlock8(), _createBlock3(_component_CloseButton, {\n key: 1,\n component: _ctx.closeButton,\n \"class-names\": _ctx.closeButtonClassName,\n \"show-on-hover\": _ctx.showCloseButtonOnHover,\n \"aria-label\": _ctx.accessibility.closeButtonLabel,\n onClick: _withModifiers(_ctx.closeToast, [\"stop\"])\n }, null, 8, [\"component\", \"class-names\", \"show-on-hover\", \"aria-label\", \"onClick\"])) : _createCommentVNode(\"v-if\", true),\n _ctx.timeout ? (_openBlock8(), _createBlock3(_component_ProgressBar, {\n key: 2,\n \"is-running\": _ctx.isRunning,\n \"hide-progress-bar\": _ctx.hideProgressBar,\n timeout: _ctx.timeout,\n onCloseToast: _ctx.timeoutHandler\n }, null, 8, [\"is-running\", \"hide-progress-bar\", \"timeout\", \"onCloseToast\"])) : _createCommentVNode(\"v-if\", true)\n ], 38);\n}\n\n// vue:/Users/maronato/Developer/vue-toastification/src/components/VtToast.vue\nVtToast_default.render = render8;\nvar VtToast_default2 = VtToast_default;\n\n// vue:/Users/maronato/Developer/vue-toastification/src/components/VtTransition.vue?vue&type=script\nimport { defineComponent as defineComponent6 } from \"vue\";\nvar VtTransition_default = defineComponent6({\n name: \"VtTransition\",\n props: propValidators_default.TRANSITION,\n emits: [\"leave\"],\n methods: {\n hasProp,\n leave(el) {\n if (el instanceof HTMLElement) {\n el.style.left = el.offsetLeft + \"px\";\n el.style.top = el.offsetTop + \"px\";\n el.style.width = getComputedStyle(el).width;\n el.style.position = \"absolute\";\n }\n }\n }\n});\n\n// vue:/Users/maronato/Developer/vue-toastification/src/components/VtTransition.vue?vue&type=template\nimport { renderSlot as _renderSlot, TransitionGroup as _TransitionGroup, withCtx as _withCtx3, openBlock as _openBlock9, createBlock as _createBlock4 } from \"vue\";\nfunction render9(_ctx, _cache) {\n return _openBlock9(), _createBlock4(_TransitionGroup, {\n tag: \"div\",\n \"enter-active-class\": _ctx.transition.enter ? _ctx.transition.enter : `${_ctx.transition}-enter-active`,\n \"move-class\": _ctx.transition.move ? _ctx.transition.move : `${_ctx.transition}-move`,\n \"leave-active-class\": _ctx.transition.leave ? _ctx.transition.leave : `${_ctx.transition}-leave-active`,\n onLeave: _ctx.leave\n }, {\n default: _withCtx3(() => [\n _renderSlot(_ctx.$slots, \"default\")\n ]),\n _: 3\n }, 8, [\"enter-active-class\", \"move-class\", \"leave-active-class\", \"onLeave\"]);\n}\n\n// vue:/Users/maronato/Developer/vue-toastification/src/components/VtTransition.vue\nVtTransition_default.render = render9;\nvar VtTransition_default2 = VtTransition_default;\n\n// vue:/Users/maronato/Developer/vue-toastification/src/components/VtToastContainer.vue?vue&type=script\nvar VtToastContainer_default = defineComponent7({\n name: \"VueToastification\",\n devtools: {\n hide: true\n },\n components: { Toast: VtToast_default2, VtTransition: VtTransition_default2 },\n props: Object.assign({}, propValidators_default.CORE_TOAST, propValidators_default.CONTAINER, propValidators_default.TRANSITION),\n data() {\n const data = {\n count: 0,\n positions: Object.values(POSITION),\n toasts: {},\n defaults: {}\n };\n return data;\n },\n computed: {\n toastArray() {\n return Object.values(this.toasts);\n },\n filteredToasts() {\n return this.defaults.filterToasts(this.toastArray);\n }\n },\n beforeMount() {\n const events = this.eventBus;\n events.on(EVENTS.ADD, this.addToast);\n events.on(EVENTS.CLEAR, this.clearToasts);\n events.on(EVENTS.DISMISS, this.dismissToast);\n events.on(EVENTS.UPDATE, this.updateToast);\n events.on(EVENTS.UPDATE_DEFAULTS, this.updateDefaults);\n this.defaults = this.$props;\n },\n mounted() {\n this.setup(this.container);\n },\n methods: {\n async setup(container) {\n if (isFunction(container)) {\n container = await container();\n }\n removeElement(this.$el);\n container.appendChild(this.$el);\n },\n setToast(props) {\n if (!isUndefined(props.id)) {\n this.toasts[props.id] = props;\n }\n },\n addToast(params) {\n params.content = normalizeToastComponent(params.content);\n const props = Object.assign({}, this.defaults, params.type && this.defaults.toastDefaults && this.defaults.toastDefaults[params.type], params);\n const toast = this.defaults.filterBeforeCreate(props, this.toastArray);\n toast && this.setToast(toast);\n },\n dismissToast(id) {\n const toast = this.toasts[id];\n if (!isUndefined(toast) && !isUndefined(toast.onClose)) {\n toast.onClose();\n }\n delete this.toasts[id];\n },\n clearToasts() {\n Object.keys(this.toasts).forEach((id) => {\n this.dismissToast(id);\n });\n },\n getPositionToasts(position) {\n const toasts = this.filteredToasts.filter((toast) => toast.position === position).slice(0, this.defaults.maxToasts);\n return this.defaults.newestOnTop ? toasts.reverse() : toasts;\n },\n updateDefaults(update) {\n if (!isUndefined(update.container)) {\n this.setup(update.container);\n }\n this.defaults = Object.assign({}, this.defaults, update);\n },\n updateToast({\n id,\n options,\n create\n }) {\n if (this.toasts[id]) {\n if (options.timeout && options.timeout === this.toasts[id].timeout) {\n options.timeout++;\n }\n this.setToast(Object.assign({}, this.toasts[id], options));\n } else if (create) {\n this.addToast(Object.assign({}, { id }, options));\n }\n },\n getClasses(position) {\n const classes = [`${VT_NAMESPACE}__container`, position];\n return classes.concat(this.defaults.containerClassName);\n }\n }\n});\n\n// vue:/Users/maronato/Developer/vue-toastification/src/components/VtToastContainer.vue?vue&type=template\nimport { renderList as _renderList, Fragment as _Fragment2, openBlock as _openBlock10, createElementBlock as _createElementBlock7, resolveComponent as _resolveComponent2, mergeProps as _mergeProps3, createBlock as _createBlock5, normalizeClass as _normalizeClass4, withCtx as _withCtx4, createVNode as _createVNode } from \"vue\";\nfunction render10(_ctx, _cache) {\n const _component_Toast = _resolveComponent2(\"Toast\");\n const _component_VtTransition = _resolveComponent2(\"VtTransition\");\n return _openBlock10(), _createElementBlock7(\"div\", null, [\n (_openBlock10(true), _createElementBlock7(_Fragment2, null, _renderList(_ctx.positions, (pos) => {\n return _openBlock10(), _createElementBlock7(\"div\", { key: pos }, [\n _createVNode(_component_VtTransition, {\n transition: _ctx.defaults.transition,\n class: _normalizeClass4(_ctx.getClasses(pos))\n }, {\n default: _withCtx4(() => [\n (_openBlock10(true), _createElementBlock7(_Fragment2, null, _renderList(_ctx.getPositionToasts(pos), (toast) => {\n return _openBlock10(), _createBlock5(_component_Toast, _mergeProps3({\n key: toast.id\n }, toast), null, 16);\n }), 128))\n ]),\n _: 2\n }, 1032, [\"transition\", \"class\"])\n ]);\n }), 128))\n ]);\n}\n\n// vue:/Users/maronato/Developer/vue-toastification/src/components/VtToastContainer.vue\nVtToastContainer_default.render = render10;\nvar VtToastContainer_default2 = VtToastContainer_default;\n\n// src/ts/interface.ts\nvar buildInterface = (globalOptions = {}, mountContainer = true) => {\n const events = globalOptions.eventBus = globalOptions.eventBus || new EventBus();\n if (mountContainer) {\n nextTick(() => {\n const app = createApp(VtToastContainer_default2, __spreadValues({}, globalOptions));\n const component = app.mount(document.createElement(\"div\"));\n const onMounted = globalOptions.onMounted;\n if (!isUndefined(onMounted)) {\n onMounted(component, app);\n }\n if (globalOptions.shareAppContext) {\n const baseApp = globalOptions.shareAppContext;\n if (baseApp === true) {\n console.warn(`[${VT_NAMESPACE}] App to share context with was not provided.`);\n } else {\n app._context.components = baseApp._context.components;\n app._context.directives = baseApp._context.directives;\n app._context.mixins = baseApp._context.mixins;\n app._context.provides = baseApp._context.provides;\n app.config.globalProperties = baseApp.config.globalProperties;\n }\n }\n });\n }\n const toast = (content, options) => {\n const props = Object.assign({}, { id: getId(), type: TYPE.DEFAULT }, options, {\n content\n });\n events.emit(EVENTS.ADD, props);\n return props.id;\n };\n toast.clear = () => events.emit(EVENTS.CLEAR, void 0);\n toast.updateDefaults = (update) => {\n events.emit(EVENTS.UPDATE_DEFAULTS, update);\n };\n toast.dismiss = (id) => {\n events.emit(EVENTS.DISMISS, id);\n };\n function updateToast(id, { content, options }, create = false) {\n const opt = Object.assign({}, options, { content });\n events.emit(EVENTS.UPDATE, {\n id,\n options: opt,\n create\n });\n }\n toast.update = updateToast;\n toast.success = (content, options) => toast(content, Object.assign({}, options, { type: TYPE.SUCCESS }));\n toast.info = (content, options) => toast(content, Object.assign({}, options, { type: TYPE.INFO }));\n toast.error = (content, options) => toast(content, Object.assign({}, options, { type: TYPE.ERROR }));\n toast.warning = (content, options) => toast(content, Object.assign({}, options, { type: TYPE.WARNING }));\n return toast;\n};\n\n// src/index.ts\nvar createMockToastInterface = () => {\n const toast = () => console.warn(`[${VT_NAMESPACE}] This plugin does not support SSR!`);\n return new Proxy(toast, {\n get() {\n return toast;\n }\n });\n};\nfunction createToastInterface(optionsOrEventBus) {\n if (!isBrowser()) {\n return createMockToastInterface();\n }\n if (isEventBusInterface(optionsOrEventBus)) {\n return buildInterface({ eventBus: optionsOrEventBus }, false);\n }\n return buildInterface(optionsOrEventBus, true);\n}\nvar toastInjectionKey = Symbol(\"VueToastification\");\nvar globalEventBus = new EventBus();\nvar VueToastificationPlugin = (App, options) => {\n if ((options == null ? void 0 : options.shareAppContext) === true) {\n options.shareAppContext = App;\n }\n const inter = createToastInterface(__spreadValues({\n eventBus: globalEventBus\n }, options));\n App.provide(toastInjectionKey, inter);\n};\nvar provideToast = (options) => {\n const toast = createToastInterface(options);\n if (getCurrentInstance()) {\n provide(toastInjectionKey, toast);\n }\n};\nvar useToast = (eventBus) => {\n if (eventBus) {\n return createToastInterface(eventBus);\n }\n const toast = getCurrentInstance() ? inject(toastInjectionKey, void 0) : void 0;\n return toast ? toast : createToastInterface(globalEventBus);\n};\nvar src_default = VueToastificationPlugin;\nexport {\n EventBus,\n POSITION,\n TYPE,\n createToastInterface,\n src_default as default,\n globalEventBus,\n provideToast,\n toastInjectionKey,\n useToast\n};\n","export const generatedAttribute = \"generated\";\nexport const mouseDownEvent = \"pointerdown\";\nexport const mouseUpEvent = \"pointerup\";\nexport const mouseLeaveEvent = \"pointerleave\";\nexport const mouseOutEvent = \"pointerout\";\nexport const mouseMoveEvent = \"pointermove\";\nexport const touchStartEvent = \"touchstart\";\nexport const touchEndEvent = \"touchend\";\nexport const touchMoveEvent = \"touchmove\";\nexport const touchCancelEvent = \"touchcancel\";\nexport const resizeEvent = \"resize\";\nexport const visibilityChangeEvent = \"visibilitychange\";\nexport const errorPrefix = \"tsParticles - Error\";\nexport const percentDenominator = 100;\nexport const halfRandom = 0.5;\nexport const millisecondsToSeconds = 1000;\n","export var MoveDirection;\n(function (MoveDirection) {\n MoveDirection[\"bottom\"] = \"bottom\";\n MoveDirection[\"bottomLeft\"] = \"bottom-left\";\n MoveDirection[\"bottomRight\"] = \"bottom-right\";\n MoveDirection[\"left\"] = \"left\";\n MoveDirection[\"none\"] = \"none\";\n MoveDirection[\"right\"] = \"right\";\n MoveDirection[\"top\"] = \"top\";\n MoveDirection[\"topLeft\"] = \"top-left\";\n MoveDirection[\"topRight\"] = \"top-right\";\n MoveDirection[\"outside\"] = \"outside\";\n MoveDirection[\"inside\"] = \"inside\";\n})(MoveDirection || (MoveDirection = {}));\n","export function isBoolean(arg) {\n return typeof arg === \"boolean\";\n}\nexport function isString(arg) {\n return typeof arg === \"string\";\n}\nexport function isNumber(arg) {\n return typeof arg === \"number\";\n}\nexport function isFunction(arg) {\n return typeof arg === \"function\";\n}\nexport function isObject(arg) {\n return typeof arg === \"object\" && arg !== null;\n}\nexport function isArray(arg) {\n return Array.isArray(arg);\n}\n","import { errorPrefix } from \"./Constants.js\";\nimport { isNumber } from \"../../Utils/TypeUtils.js\";\nconst origin = {\n x: 0,\n y: 0,\n z: 0,\n}, squareExp = 2, inverseFactorNumerator = 1.0;\nexport class Vector3d {\n constructor(xOrCoords, y, z) {\n this._updateFromAngle = (angle, length) => {\n this.x = Math.cos(angle) * length;\n this.y = Math.sin(angle) * length;\n };\n if (!isNumber(xOrCoords) && xOrCoords) {\n this.x = xOrCoords.x;\n this.y = xOrCoords.y;\n const coords3d = xOrCoords;\n this.z = coords3d.z ? coords3d.z : origin.z;\n }\n else if (xOrCoords !== undefined && y !== undefined) {\n this.x = xOrCoords;\n this.y = y;\n this.z = z ?? origin.z;\n }\n else {\n throw new Error(`${errorPrefix} Vector3d not initialized correctly`);\n }\n }\n static get origin() {\n return Vector3d.create(origin.x, origin.y, origin.z);\n }\n get angle() {\n return Math.atan2(this.y, this.x);\n }\n set angle(angle) {\n this._updateFromAngle(angle, this.length);\n }\n get length() {\n return Math.sqrt(this.getLengthSq());\n }\n set length(length) {\n this._updateFromAngle(this.angle, length);\n }\n static clone(source) {\n return Vector3d.create(source.x, source.y, source.z);\n }\n static create(x, y, z) {\n return new Vector3d(x, y, z);\n }\n add(v) {\n return Vector3d.create(this.x + v.x, this.y + v.y, this.z + v.z);\n }\n addTo(v) {\n this.x += v.x;\n this.y += v.y;\n this.z += v.z;\n }\n copy() {\n return Vector3d.clone(this);\n }\n distanceTo(v) {\n return this.sub(v).length;\n }\n distanceToSq(v) {\n return this.sub(v).getLengthSq();\n }\n div(n) {\n return Vector3d.create(this.x / n, this.y / n, this.z / n);\n }\n divTo(n) {\n this.x /= n;\n this.y /= n;\n this.z /= n;\n }\n getLengthSq() {\n return this.x ** squareExp + this.y ** squareExp;\n }\n mult(n) {\n return Vector3d.create(this.x * n, this.y * n, this.z * n);\n }\n multTo(n) {\n this.x *= n;\n this.y *= n;\n this.z *= n;\n }\n normalize() {\n const length = this.length, noLength = 0;\n if (length != noLength) {\n this.multTo(inverseFactorNumerator / length);\n }\n }\n rotate(angle) {\n return Vector3d.create(this.x * Math.cos(angle) - this.y * Math.sin(angle), this.x * Math.sin(angle) + this.y * Math.cos(angle), origin.z);\n }\n setTo(c) {\n this.x = c.x;\n this.y = c.y;\n const v3d = c;\n this.z = v3d.z ? v3d.z : origin.z;\n }\n sub(v) {\n return Vector3d.create(this.x - v.x, this.y - v.y, this.z - v.z);\n }\n subFrom(v) {\n this.x -= v.x;\n this.y -= v.y;\n this.z -= v.z;\n }\n}\nexport class Vector extends Vector3d {\n constructor(xOrCoords, y) {\n super(xOrCoords, y, origin.z);\n }\n static get origin() {\n return Vector.create(origin.x, origin.y);\n }\n static clone(source) {\n return Vector.create(source.x, source.y);\n }\n static create(x, y) {\n return new Vector(x, y);\n }\n}\n","import { MoveDirection } from \"../Enums/Directions/MoveDirection.js\";\nimport { Vector } from \"../Core/Utils/Vectors.js\";\nimport { isNumber } from \"./TypeUtils.js\";\nimport { percentDenominator } from \"../Core/Utils/Constants.js\";\nlet _random = Math.random;\nconst _animationLoop = {\n nextFrame: (cb) => requestAnimationFrame(cb),\n cancel: (idx) => cancelAnimationFrame(idx),\n}, easingFunctions = new Map(), double = 2, doublePI = Math.PI * double;\nexport function addEasing(name, easing) {\n if (easingFunctions.get(name)) {\n return;\n }\n easingFunctions.set(name, easing);\n}\nexport function getEasing(name) {\n return easingFunctions.get(name) ?? ((value) => value);\n}\nexport function setRandom(rnd = Math.random) {\n _random = rnd;\n}\nexport function getRandom() {\n const min = 0, max = 1;\n return clamp(_random(), min, max - Number.EPSILON);\n}\nexport function setAnimationFunctions(nextFrame, cancel) {\n _animationLoop.nextFrame = (callback) => nextFrame(callback);\n _animationLoop.cancel = (handle) => cancel(handle);\n}\nexport function animate(fn) {\n return _animationLoop.nextFrame(fn);\n}\nexport function cancelAnimation(handle) {\n _animationLoop.cancel(handle);\n}\nexport function clamp(num, min, max) {\n return Math.min(Math.max(num, min), max);\n}\nexport function mix(comp1, comp2, weight1, weight2) {\n return Math.floor((comp1 * weight1 + comp2 * weight2) / (weight1 + weight2));\n}\nexport function randomInRange(r) {\n const max = getRangeMax(r), minOffset = 0;\n let min = getRangeMin(r);\n if (max === min) {\n min = minOffset;\n }\n return getRandom() * (max - min) + min;\n}\nexport function getRangeValue(value) {\n return isNumber(value) ? value : randomInRange(value);\n}\nexport function getRangeMin(value) {\n return isNumber(value) ? value : value.min;\n}\nexport function getRangeMax(value) {\n return isNumber(value) ? value : value.max;\n}\nexport function setRangeValue(source, value) {\n if (source === value || (value === undefined && isNumber(source))) {\n return source;\n }\n const min = getRangeMin(source), max = getRangeMax(source);\n return value !== undefined\n ? {\n min: Math.min(min, value),\n max: Math.max(max, value),\n }\n : setRangeValue(min, max);\n}\nexport function getDistances(pointA, pointB) {\n const dx = pointA.x - pointB.x, dy = pointA.y - pointB.y, squareExp = 2;\n return { dx: dx, dy: dy, distance: Math.sqrt(dx ** squareExp + dy ** squareExp) };\n}\nexport function getDistance(pointA, pointB) {\n return getDistances(pointA, pointB).distance;\n}\nexport function degToRad(degrees) {\n const PIDeg = 180;\n return (degrees * Math.PI) / PIDeg;\n}\nexport function getParticleDirectionAngle(direction, position, center) {\n if (isNumber(direction)) {\n return degToRad(direction);\n }\n const empty = 0, half = 0.5, quarter = 0.25, threeQuarter = half + quarter;\n switch (direction) {\n case MoveDirection.top:\n return -Math.PI * half;\n case MoveDirection.topRight:\n return -Math.PI * quarter;\n case MoveDirection.right:\n return empty;\n case MoveDirection.bottomRight:\n return Math.PI * quarter;\n case MoveDirection.bottom:\n return Math.PI * half;\n case MoveDirection.bottomLeft:\n return Math.PI * threeQuarter;\n case MoveDirection.left:\n return Math.PI;\n case MoveDirection.topLeft:\n return -Math.PI * threeQuarter;\n case MoveDirection.inside:\n return Math.atan2(center.y - position.y, center.x - position.x);\n case MoveDirection.outside:\n return Math.atan2(position.y - center.y, position.x - center.x);\n default:\n return getRandom() * doublePI;\n }\n}\nexport function getParticleBaseVelocity(direction) {\n const baseVelocity = Vector.origin;\n baseVelocity.length = 1;\n baseVelocity.angle = direction;\n return baseVelocity;\n}\nexport function collisionVelocity(v1, v2, m1, m2) {\n const double = 2;\n return Vector.create((v1.x * (m1 - m2)) / (m1 + m2) + (v2.x * double * m2) / (m1 + m2), v1.y);\n}\nexport function calcPositionFromSize(data) {\n return data.position?.x !== undefined && data.position.y !== undefined\n ? {\n x: (data.position.x * data.size.width) / percentDenominator,\n y: (data.position.y * data.size.height) / percentDenominator,\n }\n : undefined;\n}\nexport function calcPositionOrRandomFromSize(data) {\n return {\n x: ((data.position?.x ?? getRandom() * percentDenominator) * data.size.width) / percentDenominator,\n y: ((data.position?.y ?? getRandom() * percentDenominator) * data.size.height) / percentDenominator,\n };\n}\nexport function calcPositionOrRandomFromSizeRanged(data) {\n const position = {\n x: data.position?.x !== undefined ? getRangeValue(data.position.x) : undefined,\n y: data.position?.y !== undefined ? getRangeValue(data.position.y) : undefined,\n };\n return calcPositionOrRandomFromSize({ size: data.size, position });\n}\nexport function calcExactPositionOrRandomFromSize(data) {\n return {\n x: data.position?.x ?? getRandom() * data.size.width,\n y: data.position?.y ?? getRandom() * data.size.height,\n };\n}\nexport function calcExactPositionOrRandomFromSizeRanged(data) {\n const position = {\n x: data.position?.x !== undefined ? getRangeValue(data.position.x) : undefined,\n y: data.position?.y !== undefined ? getRangeValue(data.position.y) : undefined,\n };\n return calcExactPositionOrRandomFromSize({ size: data.size, position });\n}\nexport function parseAlpha(input) {\n const defaultAlpha = 1;\n if (!input) {\n return defaultAlpha;\n }\n return input.endsWith(\"%\") ? parseFloat(input) / percentDenominator : parseFloat(input);\n}\n","export var AnimationMode;\n(function (AnimationMode) {\n AnimationMode[\"auto\"] = \"auto\";\n AnimationMode[\"increase\"] = \"increase\";\n AnimationMode[\"decrease\"] = \"decrease\";\n AnimationMode[\"random\"] = \"random\";\n})(AnimationMode || (AnimationMode = {}));\n","export var AnimationStatus;\n(function (AnimationStatus) {\n AnimationStatus[\"increasing\"] = \"increasing\";\n AnimationStatus[\"decreasing\"] = \"decreasing\";\n})(AnimationStatus || (AnimationStatus = {}));\n","export var DestroyType;\n(function (DestroyType) {\n DestroyType[\"none\"] = \"none\";\n DestroyType[\"max\"] = \"max\";\n DestroyType[\"min\"] = \"min\";\n})(DestroyType || (DestroyType = {}));\n","export var OutModeDirection;\n(function (OutModeDirection) {\n OutModeDirection[\"bottom\"] = \"bottom\";\n OutModeDirection[\"left\"] = \"left\";\n OutModeDirection[\"right\"] = \"right\";\n OutModeDirection[\"top\"] = \"top\";\n})(OutModeDirection || (OutModeDirection = {}));\n","export var PixelMode;\n(function (PixelMode) {\n PixelMode[\"precise\"] = \"precise\";\n PixelMode[\"percent\"] = \"percent\";\n})(PixelMode || (PixelMode = {}));\n","export var StartValueType;\n(function (StartValueType) {\n StartValueType[\"max\"] = \"max\";\n StartValueType[\"min\"] = \"min\";\n StartValueType[\"random\"] = \"random\";\n})(StartValueType || (StartValueType = {}));\n","import { clamp, collisionVelocity, getDistances, getRandom, getRangeMax, getRangeMin, getRangeValue, randomInRange, } from \"./NumberUtils.js\";\nimport { halfRandom, millisecondsToSeconds, percentDenominator } from \"../Core/Utils/Constants.js\";\nimport { isArray, isObject } from \"./TypeUtils.js\";\nimport { AnimationMode } from \"../Enums/Modes/AnimationMode.js\";\nimport { AnimationStatus } from \"../Enums/AnimationStatus.js\";\nimport { DestroyType } from \"../Enums/Types/DestroyType.js\";\nimport { OutModeDirection } from \"../Enums/Directions/OutModeDirection.js\";\nimport { PixelMode } from \"../Enums/Modes/PixelMode.js\";\nimport { StartValueType } from \"../Enums/Types/StartValueType.js\";\nimport { Vector } from \"../Core/Utils/Vectors.js\";\nconst _logger = {\n debug: console.debug,\n error: console.error,\n info: console.info,\n log: console.log,\n verbose: console.log,\n warning: console.warn,\n};\nexport function setLogger(logger) {\n _logger.debug = logger.debug || _logger.debug;\n _logger.error = logger.error || _logger.error;\n _logger.info = logger.info || _logger.info;\n _logger.log = logger.log || _logger.log;\n _logger.verbose = logger.verbose || _logger.verbose;\n _logger.warning = logger.warning || _logger.warning;\n}\nexport function getLogger() {\n return _logger;\n}\nfunction rectSideBounce(data) {\n const res = { bounced: false }, { pSide, pOtherSide, rectSide, rectOtherSide, velocity, factor } = data, half = 0.5, minVelocity = 0;\n if (pOtherSide.min < rectOtherSide.min ||\n pOtherSide.min > rectOtherSide.max ||\n pOtherSide.max < rectOtherSide.min ||\n pOtherSide.max > rectOtherSide.max) {\n return res;\n }\n if ((pSide.max >= rectSide.min && pSide.max <= (rectSide.max + rectSide.min) * half && velocity > minVelocity) ||\n (pSide.min <= rectSide.max && pSide.min > (rectSide.max + rectSide.min) * half && velocity < minVelocity)) {\n res.velocity = velocity * -factor;\n res.bounced = true;\n }\n return res;\n}\nfunction checkSelector(element, selectors) {\n const res = executeOnSingleOrMultiple(selectors, selector => {\n return element.matches(selector);\n });\n return isArray(res) ? res.some(t => t) : res;\n}\nexport function isSsr() {\n return typeof window === \"undefined\" || !window || typeof window.document === \"undefined\" || !window.document;\n}\nexport function hasMatchMedia() {\n return !isSsr() && typeof matchMedia !== \"undefined\";\n}\nexport function safeMatchMedia(query) {\n if (!hasMatchMedia()) {\n return;\n }\n return matchMedia(query);\n}\nexport function safeIntersectionObserver(callback) {\n if (isSsr() || typeof IntersectionObserver === \"undefined\") {\n return;\n }\n return new IntersectionObserver(callback);\n}\nexport function safeMutationObserver(callback) {\n if (isSsr() || typeof MutationObserver === \"undefined\") {\n return;\n }\n return new MutationObserver(callback);\n}\nexport function isInArray(value, array) {\n const invalidIndex = -1;\n return value === array || (isArray(array) && array.indexOf(value) > invalidIndex);\n}\nexport async function loadFont(font, weight) {\n try {\n await document.fonts.load(`${weight ?? \"400\"} 36px '${font ?? \"Verdana\"}'`);\n }\n catch {\n }\n}\nexport function arrayRandomIndex(array) {\n return Math.floor(getRandom() * array.length);\n}\nexport function itemFromArray(array, index, useIndex = true) {\n return array[index !== undefined && useIndex ? index % array.length : arrayRandomIndex(array)];\n}\nexport function isPointInside(point, size, offset, radius, direction) {\n const minRadius = 0;\n return areBoundsInside(calculateBounds(point, radius ?? minRadius), size, offset, direction);\n}\nexport function areBoundsInside(bounds, size, offset, direction) {\n let inside = true;\n if (!direction || direction === OutModeDirection.bottom) {\n inside = bounds.top < size.height + offset.x;\n }\n if (inside && (!direction || direction === OutModeDirection.left)) {\n inside = bounds.right > offset.x;\n }\n if (inside && (!direction || direction === OutModeDirection.right)) {\n inside = bounds.left < size.width + offset.y;\n }\n if (inside && (!direction || direction === OutModeDirection.top)) {\n inside = bounds.bottom > offset.y;\n }\n return inside;\n}\nexport function calculateBounds(point, radius) {\n return {\n bottom: point.y + radius,\n left: point.x - radius,\n right: point.x + radius,\n top: point.y - radius,\n };\n}\nexport function deepExtend(destination, ...sources) {\n for (const source of sources) {\n if (source === undefined || source === null) {\n continue;\n }\n if (!isObject(source)) {\n destination = source;\n continue;\n }\n const sourceIsArray = Array.isArray(source);\n if (sourceIsArray && (isObject(destination) || !destination || !Array.isArray(destination))) {\n destination = [];\n }\n else if (!sourceIsArray && (isObject(destination) || !destination || Array.isArray(destination))) {\n destination = {};\n }\n for (const key in source) {\n if (key === \"__proto__\") {\n continue;\n }\n const sourceDict = source, value = sourceDict[key], destDict = destination;\n destDict[key] =\n isObject(value) && Array.isArray(value)\n ? value.map(v => deepExtend(destDict[key], v))\n : deepExtend(destDict[key], value);\n }\n }\n return destination;\n}\nexport function isDivModeEnabled(mode, divs) {\n return !!findItemFromSingleOrMultiple(divs, t => t.enable && isInArray(mode, t.mode));\n}\nexport function divModeExecute(mode, divs, callback) {\n executeOnSingleOrMultiple(divs, div => {\n const divMode = div.mode, divEnabled = div.enable;\n if (divEnabled && isInArray(mode, divMode)) {\n singleDivModeExecute(div, callback);\n }\n });\n}\nexport function singleDivModeExecute(div, callback) {\n const selectors = div.selectors;\n executeOnSingleOrMultiple(selectors, selector => {\n callback(selector, div);\n });\n}\nexport function divMode(divs, element) {\n if (!element || !divs) {\n return;\n }\n return findItemFromSingleOrMultiple(divs, div => {\n return checkSelector(element, div.selectors);\n });\n}\nexport function circleBounceDataFromParticle(p) {\n return {\n position: p.getPosition(),\n radius: p.getRadius(),\n mass: p.getMass(),\n velocity: p.velocity,\n factor: Vector.create(getRangeValue(p.options.bounce.horizontal.value), getRangeValue(p.options.bounce.vertical.value)),\n };\n}\nexport function circleBounce(p1, p2) {\n const { x: xVelocityDiff, y: yVelocityDiff } = p1.velocity.sub(p2.velocity), [pos1, pos2] = [p1.position, p2.position], { dx: xDist, dy: yDist } = getDistances(pos2, pos1), minimumDistance = 0;\n if (xVelocityDiff * xDist + yVelocityDiff * yDist < minimumDistance) {\n return;\n }\n const angle = -Math.atan2(yDist, xDist), m1 = p1.mass, m2 = p2.mass, u1 = p1.velocity.rotate(angle), u2 = p2.velocity.rotate(angle), v1 = collisionVelocity(u1, u2, m1, m2), v2 = collisionVelocity(u2, u1, m1, m2), vFinal1 = v1.rotate(-angle), vFinal2 = v2.rotate(-angle);\n p1.velocity.x = vFinal1.x * p1.factor.x;\n p1.velocity.y = vFinal1.y * p1.factor.y;\n p2.velocity.x = vFinal2.x * p2.factor.x;\n p2.velocity.y = vFinal2.y * p2.factor.y;\n}\nexport function rectBounce(particle, divBounds) {\n const pPos = particle.getPosition(), size = particle.getRadius(), bounds = calculateBounds(pPos, size), bounceOptions = particle.options.bounce, resH = rectSideBounce({\n pSide: {\n min: bounds.left,\n max: bounds.right,\n },\n pOtherSide: {\n min: bounds.top,\n max: bounds.bottom,\n },\n rectSide: {\n min: divBounds.left,\n max: divBounds.right,\n },\n rectOtherSide: {\n min: divBounds.top,\n max: divBounds.bottom,\n },\n velocity: particle.velocity.x,\n factor: getRangeValue(bounceOptions.horizontal.value),\n });\n if (resH.bounced) {\n if (resH.velocity !== undefined) {\n particle.velocity.x = resH.velocity;\n }\n if (resH.position !== undefined) {\n particle.position.x = resH.position;\n }\n }\n const resV = rectSideBounce({\n pSide: {\n min: bounds.top,\n max: bounds.bottom,\n },\n pOtherSide: {\n min: bounds.left,\n max: bounds.right,\n },\n rectSide: {\n min: divBounds.top,\n max: divBounds.bottom,\n },\n rectOtherSide: {\n min: divBounds.left,\n max: divBounds.right,\n },\n velocity: particle.velocity.y,\n factor: getRangeValue(bounceOptions.vertical.value),\n });\n if (resV.bounced) {\n if (resV.velocity !== undefined) {\n particle.velocity.y = resV.velocity;\n }\n if (resV.position !== undefined) {\n particle.position.y = resV.position;\n }\n }\n}\nexport function executeOnSingleOrMultiple(obj, callback) {\n const defaultIndex = 0;\n return isArray(obj) ? obj.map((item, index) => callback(item, index)) : callback(obj, defaultIndex);\n}\nexport function itemFromSingleOrMultiple(obj, index, useIndex) {\n return isArray(obj) ? itemFromArray(obj, index, useIndex) : obj;\n}\nexport function findItemFromSingleOrMultiple(obj, callback) {\n if (isArray(obj)) {\n return obj.find((t, index) => callback(t, index));\n }\n const defaultIndex = 0;\n return callback(obj, defaultIndex) ? obj : undefined;\n}\nexport function initParticleNumericAnimationValue(options, pxRatio) {\n const valueRange = options.value, animationOptions = options.animation, res = {\n delayTime: getRangeValue(animationOptions.delay) * millisecondsToSeconds,\n enable: animationOptions.enable,\n value: getRangeValue(options.value) * pxRatio,\n max: getRangeMax(valueRange) * pxRatio,\n min: getRangeMin(valueRange) * pxRatio,\n loops: 0,\n maxLoops: getRangeValue(animationOptions.count),\n time: 0,\n }, decayOffset = 1;\n if (animationOptions.enable) {\n res.decay = decayOffset - getRangeValue(animationOptions.decay);\n switch (animationOptions.mode) {\n case AnimationMode.increase:\n res.status = AnimationStatus.increasing;\n break;\n case AnimationMode.decrease:\n res.status = AnimationStatus.decreasing;\n break;\n case AnimationMode.random:\n res.status = getRandom() >= halfRandom ? AnimationStatus.increasing : AnimationStatus.decreasing;\n break;\n }\n const autoStatus = animationOptions.mode === AnimationMode.auto;\n switch (animationOptions.startValue) {\n case StartValueType.min:\n res.value = res.min;\n if (autoStatus) {\n res.status = AnimationStatus.increasing;\n }\n break;\n case StartValueType.max:\n res.value = res.max;\n if (autoStatus) {\n res.status = AnimationStatus.decreasing;\n }\n break;\n case StartValueType.random:\n default:\n res.value = randomInRange(res);\n if (autoStatus) {\n res.status = getRandom() >= halfRandom ? AnimationStatus.increasing : AnimationStatus.decreasing;\n }\n break;\n }\n }\n res.initialValue = res.value;\n return res;\n}\nfunction getPositionOrSize(positionOrSize, canvasSize) {\n const isPercent = positionOrSize.mode === PixelMode.percent;\n if (!isPercent) {\n const { mode: _, ...rest } = positionOrSize;\n return rest;\n }\n const isPosition = \"x\" in positionOrSize;\n if (isPosition) {\n return {\n x: (positionOrSize.x / percentDenominator) * canvasSize.width,\n y: (positionOrSize.y / percentDenominator) * canvasSize.height,\n };\n }\n else {\n return {\n width: (positionOrSize.width / percentDenominator) * canvasSize.width,\n height: (positionOrSize.height / percentDenominator) * canvasSize.height,\n };\n }\n}\nexport function getPosition(position, canvasSize) {\n return getPositionOrSize(position, canvasSize);\n}\nexport function getSize(size, canvasSize) {\n return getPositionOrSize(size, canvasSize);\n}\nfunction checkDestroy(particle, destroyType, value, minValue, maxValue) {\n switch (destroyType) {\n case DestroyType.max:\n if (value >= maxValue) {\n particle.destroy();\n }\n break;\n case DestroyType.min:\n if (value <= minValue) {\n particle.destroy();\n }\n break;\n }\n}\nexport function updateAnimation(particle, data, changeDirection, destroyType, delta) {\n const minLoops = 0, minDelay = 0, identity = 1, minVelocity = 0, minDecay = 1;\n if (particle.destroyed ||\n !data ||\n !data.enable ||\n ((data.maxLoops ?? minLoops) > minLoops && (data.loops ?? minLoops) > (data.maxLoops ?? minLoops))) {\n return;\n }\n const velocity = (data.velocity ?? minVelocity) * delta.factor, minValue = data.min, maxValue = data.max, decay = data.decay ?? minDecay;\n if (!data.time) {\n data.time = 0;\n }\n if ((data.delayTime ?? minDelay) > minDelay && data.time < (data.delayTime ?? minDelay)) {\n data.time += delta.value;\n }\n if ((data.delayTime ?? minDelay) > minDelay && data.time < (data.delayTime ?? minDelay)) {\n return;\n }\n switch (data.status) {\n case AnimationStatus.increasing:\n if (data.value >= maxValue) {\n if (changeDirection) {\n data.status = AnimationStatus.decreasing;\n }\n else {\n data.value -= maxValue;\n }\n if (!data.loops) {\n data.loops = minLoops;\n }\n data.loops++;\n }\n else {\n data.value += velocity;\n }\n break;\n case AnimationStatus.decreasing:\n if (data.value <= minValue) {\n if (changeDirection) {\n data.status = AnimationStatus.increasing;\n }\n else {\n data.value += maxValue;\n }\n if (!data.loops) {\n data.loops = minLoops;\n }\n data.loops++;\n }\n else {\n data.value -= velocity;\n }\n }\n if (data.velocity && decay !== identity) {\n data.velocity *= decay;\n }\n checkDestroy(particle, destroyType, data.value, minValue, maxValue);\n if (!particle.destroyed) {\n data.value = clamp(data.value, minValue, maxValue);\n }\n}\n","export var AlterType;\n(function (AlterType) {\n AlterType[\"darken\"] = \"darken\";\n AlterType[\"enlighten\"] = \"enlighten\";\n})(AlterType || (AlterType = {}));\n","import { clamp, getRandom, getRangeMax, getRangeMin, getRangeValue, mix, randomInRange, setRangeValue, } from \"./NumberUtils.js\";\nimport { isArray, isString } from \"./TypeUtils.js\";\nimport { millisecondsToSeconds, percentDenominator } from \"../Core/Utils/Constants.js\";\nimport { AnimationStatus } from \"../Enums/AnimationStatus.js\";\nimport { itemFromArray } from \"./Utils.js\";\nvar RgbIndexes;\n(function (RgbIndexes) {\n RgbIndexes[RgbIndexes[\"r\"] = 1] = \"r\";\n RgbIndexes[RgbIndexes[\"g\"] = 2] = \"g\";\n RgbIndexes[RgbIndexes[\"b\"] = 3] = \"b\";\n RgbIndexes[RgbIndexes[\"a\"] = 4] = \"a\";\n})(RgbIndexes || (RgbIndexes = {}));\nconst randomColorValue = \"random\", midColorValue = \"mid\", colorManagers = new Map();\nexport function addColorManager(manager) {\n colorManagers.set(manager.key, manager);\n}\nfunction stringToRgba(input) {\n for (const [, manager] of colorManagers) {\n if (input.startsWith(manager.stringPrefix)) {\n return manager.parseString(input);\n }\n }\n const shorthandRegex = /^#?([a-f\\d])([a-f\\d])([a-f\\d])([a-f\\d])?$/i, hexFixed = input.replace(shorthandRegex, (_, r, g, b, a) => {\n return r + r + g + g + b + b + (a !== undefined ? a + a : \"\");\n }), regex = /^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})?$/i, result = regex.exec(hexFixed), radix = 16, defaultAlpha = 1, alphaFactor = 0xff;\n return result\n ? {\n a: result[RgbIndexes.a] !== undefined\n ? parseInt(result[RgbIndexes.a], radix) / alphaFactor\n : defaultAlpha,\n b: parseInt(result[RgbIndexes.b], radix),\n g: parseInt(result[RgbIndexes.g], radix),\n r: parseInt(result[RgbIndexes.r], radix),\n }\n : undefined;\n}\nexport function rangeColorToRgb(input, index, useIndex = true) {\n if (!input) {\n return;\n }\n const color = isString(input) ? { value: input } : input;\n if (isString(color.value)) {\n return colorToRgb(color.value, index, useIndex);\n }\n if (isArray(color.value)) {\n return rangeColorToRgb({\n value: itemFromArray(color.value, index, useIndex),\n });\n }\n for (const [, manager] of colorManagers) {\n const res = manager.handleRangeColor(color);\n if (res) {\n return res;\n }\n }\n}\nexport function colorToRgb(input, index, useIndex = true) {\n if (!input) {\n return;\n }\n const color = isString(input) ? { value: input } : input;\n if (isString(color.value)) {\n return color.value === randomColorValue ? getRandomRgbColor() : stringToRgb(color.value);\n }\n if (isArray(color.value)) {\n return colorToRgb({\n value: itemFromArray(color.value, index, useIndex),\n });\n }\n for (const [, manager] of colorManagers) {\n const res = manager.handleColor(color);\n if (res) {\n return res;\n }\n }\n}\nexport function colorToHsl(color, index, useIndex = true) {\n const rgb = colorToRgb(color, index, useIndex);\n return rgb ? rgbToHsl(rgb) : undefined;\n}\nexport function rangeColorToHsl(color, index, useIndex = true) {\n const rgb = rangeColorToRgb(color, index, useIndex);\n return rgb ? rgbToHsl(rgb) : undefined;\n}\nexport function rgbToHsl(color) {\n const rgbMax = 255, hMax = 360, sMax = 100, lMax = 100, hMin = 0, sMin = 0, hPhase = 60, half = 0.5, double = 2, r1 = color.r / rgbMax, g1 = color.g / rgbMax, b1 = color.b / rgbMax, max = Math.max(r1, g1, b1), min = Math.min(r1, g1, b1), res = {\n h: hMin,\n l: (max + min) * half,\n s: sMin,\n };\n if (max !== min) {\n res.s = res.l < half ? (max - min) / (max + min) : (max - min) / (double - max - min);\n res.h =\n r1 === max\n ? (g1 - b1) / (max - min)\n : (res.h = g1 === max ? double + (b1 - r1) / (max - min) : double * double + (r1 - g1) / (max - min));\n }\n res.l *= lMax;\n res.s *= sMax;\n res.h *= hPhase;\n if (res.h < hMin) {\n res.h += hMax;\n }\n if (res.h >= hMax) {\n res.h -= hMax;\n }\n return res;\n}\nexport function stringToAlpha(input) {\n return stringToRgba(input)?.a;\n}\nexport function stringToRgb(input) {\n return stringToRgba(input);\n}\nexport function hslToRgb(hsl) {\n const hMax = 360, sMax = 100, lMax = 100, sMin = 0, lMin = 0, h = ((hsl.h % hMax) + hMax) % hMax, s = Math.max(sMin, Math.min(sMax, hsl.s)), l = Math.max(lMin, Math.min(lMax, hsl.l)), hNormalized = h / hMax, sNormalized = s / sMax, lNormalized = l / lMax, rgbFactor = 255, triple = 3;\n if (s === sMin) {\n const grayscaleValue = Math.round(lNormalized * rgbFactor);\n return { r: grayscaleValue, g: grayscaleValue, b: grayscaleValue };\n }\n const half = 0.5, double = 2, channel = (temp1, temp2, temp3) => {\n const temp3Min = 0, temp3Max = 1, sextuple = 6;\n if (temp3 < temp3Min) {\n temp3++;\n }\n if (temp3 > temp3Max) {\n temp3--;\n }\n if (temp3 * sextuple < temp3Max) {\n return temp1 + (temp2 - temp1) * sextuple * temp3;\n }\n if (temp3 * double < temp3Max) {\n return temp2;\n }\n if (temp3 * triple < temp3Max * double) {\n const temp3Offset = double / triple;\n return temp1 + (temp2 - temp1) * (temp3Offset - temp3) * sextuple;\n }\n return temp1;\n }, sNormalizedOffset = 1, temp1 = lNormalized < half\n ? lNormalized * (sNormalizedOffset + sNormalized)\n : lNormalized + sNormalized - lNormalized * sNormalized, temp2 = double * lNormalized - temp1, phaseNumerator = 1, phaseThird = phaseNumerator / triple, red = Math.min(rgbFactor, rgbFactor * channel(temp2, temp1, hNormalized + phaseThird)), green = Math.min(rgbFactor, rgbFactor * channel(temp2, temp1, hNormalized)), blue = Math.min(rgbFactor, rgbFactor * channel(temp2, temp1, hNormalized - phaseThird));\n return { r: Math.round(red), g: Math.round(green), b: Math.round(blue) };\n}\nexport function hslaToRgba(hsla) {\n const rgbResult = hslToRgb(hsla);\n return {\n a: hsla.a,\n b: rgbResult.b,\n g: rgbResult.g,\n r: rgbResult.r,\n };\n}\nexport function getRandomRgbColor(min) {\n const defaultMin = 0, fixedMin = min ?? defaultMin, rgbMax = 256;\n return {\n b: Math.floor(randomInRange(setRangeValue(fixedMin, rgbMax))),\n g: Math.floor(randomInRange(setRangeValue(fixedMin, rgbMax))),\n r: Math.floor(randomInRange(setRangeValue(fixedMin, rgbMax))),\n };\n}\nexport function getStyleFromRgb(color, opacity) {\n const defaultOpacity = 1;\n return `rgba(${color.r}, ${color.g}, ${color.b}, ${opacity ?? defaultOpacity})`;\n}\nexport function getStyleFromHsl(color, opacity) {\n const defaultOpacity = 1;\n return `hsla(${color.h}, ${color.s}%, ${color.l}%, ${opacity ?? defaultOpacity})`;\n}\nexport function colorMix(color1, color2, size1, size2) {\n let rgb1 = color1, rgb2 = color2;\n if (rgb1.r === undefined) {\n rgb1 = hslToRgb(color1);\n }\n if (rgb2.r === undefined) {\n rgb2 = hslToRgb(color2);\n }\n return {\n b: mix(rgb1.b, rgb2.b, size1, size2),\n g: mix(rgb1.g, rgb2.g, size1, size2),\n r: mix(rgb1.r, rgb2.r, size1, size2),\n };\n}\nexport function getLinkColor(p1, p2, linkColor) {\n if (linkColor === randomColorValue) {\n return getRandomRgbColor();\n }\n else if (linkColor === midColorValue) {\n const sourceColor = p1.getFillColor() ?? p1.getStrokeColor(), destColor = p2?.getFillColor() ?? p2?.getStrokeColor();\n if (sourceColor && destColor && p2) {\n return colorMix(sourceColor, destColor, p1.getRadius(), p2.getRadius());\n }\n else {\n const hslColor = sourceColor ?? destColor;\n if (hslColor) {\n return hslToRgb(hslColor);\n }\n }\n }\n else {\n return linkColor;\n }\n}\nexport function getLinkRandomColor(optColor, blink, consent) {\n const color = isString(optColor) ? optColor : optColor.value;\n if (color === randomColorValue) {\n if (consent) {\n return rangeColorToRgb({\n value: color,\n });\n }\n if (blink) {\n return randomColorValue;\n }\n return midColorValue;\n }\n else if (color === midColorValue) {\n return midColorValue;\n }\n else {\n return rangeColorToRgb({\n value: color,\n });\n }\n}\nexport function getHslFromAnimation(animation) {\n return animation !== undefined\n ? {\n h: animation.h.value,\n s: animation.s.value,\n l: animation.l.value,\n }\n : undefined;\n}\nexport function getHslAnimationFromHsl(hsl, animationOptions, reduceFactor) {\n const resColor = {\n h: {\n enable: false,\n value: hsl.h,\n },\n s: {\n enable: false,\n value: hsl.s,\n },\n l: {\n enable: false,\n value: hsl.l,\n },\n };\n if (animationOptions) {\n setColorAnimation(resColor.h, animationOptions.h, reduceFactor);\n setColorAnimation(resColor.s, animationOptions.s, reduceFactor);\n setColorAnimation(resColor.l, animationOptions.l, reduceFactor);\n }\n return resColor;\n}\nfunction setColorAnimation(colorValue, colorAnimation, reduceFactor) {\n colorValue.enable = colorAnimation.enable;\n const defaultVelocity = 0, decayOffset = 1, defaultLoops = 0, defaultTime = 0;\n if (colorValue.enable) {\n colorValue.velocity = (getRangeValue(colorAnimation.speed) / percentDenominator) * reduceFactor;\n colorValue.decay = decayOffset - getRangeValue(colorAnimation.decay);\n colorValue.status = AnimationStatus.increasing;\n colorValue.loops = defaultLoops;\n colorValue.maxLoops = getRangeValue(colorAnimation.count);\n colorValue.time = defaultTime;\n colorValue.delayTime = getRangeValue(colorAnimation.delay) * millisecondsToSeconds;\n if (!colorAnimation.sync) {\n colorValue.velocity *= getRandom();\n colorValue.value *= getRandom();\n }\n colorValue.initialValue = colorValue.value;\n colorValue.offset = setRangeValue(colorAnimation.offset);\n }\n else {\n colorValue.velocity = defaultVelocity;\n }\n}\nexport function updateColorValue(data, range, decrease, delta) {\n const minLoops = 0, minDelay = 0, identity = 1, minVelocity = 0, minOffset = 0, velocityFactor = 3.6;\n if (!data ||\n !data.enable ||\n ((data.maxLoops ?? minLoops) > minLoops && (data.loops ?? minLoops) > (data.maxLoops ?? minLoops))) {\n return;\n }\n if (!data.time) {\n data.time = 0;\n }\n if ((data.delayTime ?? minDelay) > minDelay && data.time < (data.delayTime ?? minDelay)) {\n data.time += delta.value;\n }\n if ((data.delayTime ?? minDelay) > minDelay && data.time < (data.delayTime ?? minDelay)) {\n return;\n }\n const offset = data.offset ? randomInRange(data.offset) : minOffset, velocity = (data.velocity ?? minVelocity) * delta.factor + offset * velocityFactor, decay = data.decay ?? identity, max = getRangeMax(range), min = getRangeMin(range);\n if (!decrease || data.status === AnimationStatus.increasing) {\n data.value += velocity;\n if (data.value > max) {\n if (!data.loops) {\n data.loops = 0;\n }\n data.loops++;\n if (decrease) {\n data.status = AnimationStatus.decreasing;\n }\n else {\n data.value -= max;\n }\n }\n }\n else {\n data.value -= velocity;\n const minValue = 0;\n if (data.value < minValue) {\n if (!data.loops) {\n data.loops = 0;\n }\n data.loops++;\n data.status = AnimationStatus.increasing;\n }\n }\n if (data.velocity && decay !== identity) {\n data.velocity *= decay;\n }\n data.value = clamp(data.value, min, max);\n}\nexport function updateColor(color, delta) {\n if (!color) {\n return;\n }\n const { h, s, l } = color;\n const ranges = {\n h: { min: 0, max: 360 },\n s: { min: 0, max: 100 },\n l: { min: 0, max: 100 },\n };\n if (h) {\n updateColorValue(h, ranges.h, false, delta);\n }\n if (s) {\n updateColorValue(s, ranges.s, true, delta);\n }\n if (l) {\n updateColorValue(l, ranges.l, true, delta);\n }\n}\n","import { AlterType } from \"../Enums/Types/AlterType.js\";\nimport { getStyleFromRgb } from \"./ColorUtils.js\";\nconst origin = { x: 0, y: 0 }, defaultTransform = {\n a: 1,\n b: 0,\n c: 0,\n d: 1,\n};\nexport function drawLine(context, begin, end) {\n context.beginPath();\n context.moveTo(begin.x, begin.y);\n context.lineTo(end.x, end.y);\n context.closePath();\n}\nexport function paintBase(context, dimension, baseColor) {\n context.fillStyle = baseColor ?? \"rgba(0,0,0,0)\";\n context.fillRect(origin.x, origin.y, dimension.width, dimension.height);\n}\nexport function paintImage(context, dimension, image, opacity) {\n if (!image) {\n return;\n }\n context.globalAlpha = opacity;\n context.drawImage(image, origin.x, origin.y, dimension.width, dimension.height);\n context.globalAlpha = 1;\n}\nexport function clear(context, dimension) {\n context.clearRect(origin.x, origin.y, dimension.width, dimension.height);\n}\nexport function drawParticle(data) {\n const { container, context, particle, delta, colorStyles, backgroundMask, composite, radius, opacity, shadow, transform, } = data, pos = particle.getPosition(), defaultAngle = 0, angle = particle.rotation + (particle.pathRotation ? particle.velocity.angle : defaultAngle), rotateData = {\n sin: Math.sin(angle),\n cos: Math.cos(angle),\n }, rotating = !!angle, identity = 1, transformData = {\n a: rotateData.cos * (transform.a ?? defaultTransform.a),\n b: rotating ? rotateData.sin * (transform.b ?? identity) : transform.b ?? defaultTransform.b,\n c: rotating ? -rotateData.sin * (transform.c ?? identity) : transform.c ?? defaultTransform.c,\n d: rotateData.cos * (transform.d ?? defaultTransform.d),\n };\n context.setTransform(transformData.a, transformData.b, transformData.c, transformData.d, pos.x, pos.y);\n if (backgroundMask) {\n context.globalCompositeOperation = composite;\n }\n const shadowColor = particle.shadowColor;\n if (shadow.enable && shadowColor) {\n context.shadowBlur = shadow.blur;\n context.shadowColor = getStyleFromRgb(shadowColor);\n context.shadowOffsetX = shadow.offset.x;\n context.shadowOffsetY = shadow.offset.y;\n }\n if (colorStyles.fill) {\n context.fillStyle = colorStyles.fill;\n }\n const minStrokeWidth = 0, strokeWidth = particle.strokeWidth ?? minStrokeWidth;\n context.lineWidth = strokeWidth;\n if (colorStyles.stroke) {\n context.strokeStyle = colorStyles.stroke;\n }\n const drawData = {\n container,\n context,\n particle,\n radius,\n opacity,\n delta,\n transformData,\n strokeWidth,\n };\n drawShape(drawData);\n drawShapeAfterDraw(drawData);\n drawEffect(drawData);\n context.globalCompositeOperation = \"source-over\";\n context.resetTransform();\n}\nexport function drawEffect(data) {\n const { container, context, particle, radius, opacity, delta, transformData } = data;\n if (!particle.effect) {\n return;\n }\n const drawer = container.effectDrawers.get(particle.effect);\n if (!drawer) {\n return;\n }\n drawer.draw({\n context,\n particle,\n radius,\n opacity,\n delta,\n pixelRatio: container.retina.pixelRatio,\n transformData: { ...transformData },\n });\n}\nexport function drawShape(data) {\n const { container, context, particle, radius, opacity, delta, strokeWidth, transformData } = data, minStrokeWidth = 0;\n if (!particle.shape) {\n return;\n }\n const drawer = container.shapeDrawers.get(particle.shape);\n if (!drawer) {\n return;\n }\n context.beginPath();\n drawer.draw({\n context,\n particle,\n radius,\n opacity,\n delta,\n pixelRatio: container.retina.pixelRatio,\n transformData: { ...transformData },\n });\n if (particle.shapeClose) {\n context.closePath();\n }\n if (strokeWidth > minStrokeWidth) {\n context.stroke();\n }\n if (particle.shapeFill) {\n context.fill();\n }\n}\nexport function drawShapeAfterDraw(data) {\n const { container, context, particle, radius, opacity, delta, transformData } = data;\n if (!particle.shape) {\n return;\n }\n const drawer = container.shapeDrawers.get(particle.shape);\n if (!drawer?.afterDraw) {\n return;\n }\n drawer.afterDraw({\n context,\n particle,\n radius,\n opacity,\n delta,\n pixelRatio: container.retina.pixelRatio,\n transformData: { ...transformData },\n });\n}\nexport function drawPlugin(context, plugin, delta) {\n if (!plugin.draw) {\n return;\n }\n plugin.draw(context, delta);\n}\nexport function drawParticlePlugin(context, plugin, particle, delta) {\n if (!plugin.drawParticle) {\n return;\n }\n plugin.drawParticle(context, particle, delta);\n}\nexport function alterHsl(color, type, value) {\n const lFactor = 1;\n return {\n h: color.h,\n s: color.s,\n l: color.l + (type === AlterType.darken ? -lFactor : lFactor) * value,\n };\n}\n","import { clear, drawParticle, drawParticlePlugin, drawPlugin, paintBase, paintImage } from \"../Utils/CanvasUtils.js\";\nimport { deepExtend, getLogger, safeMutationObserver } from \"../Utils/Utils.js\";\nimport { getStyleFromHsl, getStyleFromRgb, rangeColorToHsl, rangeColorToRgb } from \"../Utils/ColorUtils.js\";\nimport { generatedAttribute } from \"./Utils/Constants.js\";\nfunction setTransformValue(factor, newFactor, key) {\n const newValue = newFactor[key], defaultValue = 1;\n if (newValue !== undefined) {\n factor[key] = (factor[key] ?? defaultValue) * newValue;\n }\n}\nfunction setStyle(canvas, style, important = false) {\n if (!style) {\n return;\n }\n const element = canvas;\n if (!element) {\n return;\n }\n const elementStyle = element.style;\n if (!elementStyle) {\n return;\n }\n for (const key in style) {\n const value = style[key];\n if (!value) {\n continue;\n }\n elementStyle.setProperty(key, value, important ? \"important\" : \"\");\n }\n}\nexport class Canvas {\n constructor(container) {\n this.container = container;\n this._applyPostDrawUpdaters = particle => {\n for (const updater of this._postDrawUpdaters) {\n updater.afterDraw?.(particle);\n }\n };\n this._applyPreDrawUpdaters = (ctx, particle, radius, zOpacity, colorStyles, transform) => {\n for (const updater of this._preDrawUpdaters) {\n if (updater.getColorStyles) {\n const { fill, stroke } = updater.getColorStyles(particle, ctx, radius, zOpacity);\n if (fill) {\n colorStyles.fill = fill;\n }\n if (stroke) {\n colorStyles.stroke = stroke;\n }\n }\n if (updater.getTransformValues) {\n const updaterTransform = updater.getTransformValues(particle);\n for (const key in updaterTransform) {\n setTransformValue(transform, updaterTransform, key);\n }\n }\n updater.beforeDraw?.(particle);\n }\n };\n this._applyResizePlugins = () => {\n for (const plugin of this._resizePlugins) {\n plugin.resize?.();\n }\n };\n this._getPluginParticleColors = particle => {\n let fColor, sColor;\n for (const plugin of this._colorPlugins) {\n if (!fColor && plugin.particleFillColor) {\n fColor = rangeColorToHsl(plugin.particleFillColor(particle));\n }\n if (!sColor && plugin.particleStrokeColor) {\n sColor = rangeColorToHsl(plugin.particleStrokeColor(particle));\n }\n if (fColor && sColor) {\n break;\n }\n }\n return [fColor, sColor];\n };\n this._initCover = async () => {\n const options = this.container.actualOptions, cover = options.backgroundMask.cover, color = cover.color;\n if (color) {\n const coverRgb = rangeColorToRgb(color);\n if (coverRgb) {\n const coverColor = {\n ...coverRgb,\n a: cover.opacity,\n };\n this._coverColorStyle = getStyleFromRgb(coverColor, coverColor.a);\n }\n }\n else {\n await new Promise((resolve, reject) => {\n if (!cover.image) {\n return;\n }\n const img = document.createElement(\"img\");\n img.addEventListener(\"load\", () => {\n this._coverImage = {\n image: img,\n opacity: cover.opacity,\n };\n resolve();\n });\n img.addEventListener(\"error\", evt => {\n reject(evt.error);\n });\n img.src = cover.image;\n });\n }\n };\n this._initStyle = () => {\n const element = this.element, options = this.container.actualOptions;\n if (!element) {\n return;\n }\n if (this._fullScreen) {\n this._originalStyle = deepExtend({}, element.style);\n this._setFullScreenStyle();\n }\n else {\n this._resetOriginalStyle();\n }\n for (const key in options.style) {\n if (!key || !options.style) {\n continue;\n }\n const value = options.style[key];\n if (!value) {\n continue;\n }\n element.style.setProperty(key, value, \"important\");\n }\n };\n this._initTrail = async () => {\n const options = this.container.actualOptions, trail = options.particles.move.trail, trailFill = trail.fill;\n if (!trail.enable) {\n return;\n }\n const factorNumerator = 1, opacity = factorNumerator / trail.length;\n if (trailFill.color) {\n const fillColor = rangeColorToRgb(trailFill.color);\n if (!fillColor) {\n return;\n }\n this._trailFill = {\n color: {\n ...fillColor,\n },\n opacity,\n };\n }\n else {\n await new Promise((resolve, reject) => {\n if (!trailFill.image) {\n return;\n }\n const img = document.createElement(\"img\");\n img.addEventListener(\"load\", () => {\n this._trailFill = {\n image: img,\n opacity,\n };\n resolve();\n });\n img.addEventListener(\"error\", evt => {\n reject(evt.error);\n });\n img.src = trailFill.image;\n });\n }\n };\n this._paintBase = baseColor => {\n this.draw(ctx => paintBase(ctx, this.size, baseColor));\n };\n this._paintImage = (image, opacity) => {\n this.draw(ctx => paintImage(ctx, this.size, image, opacity));\n };\n this._repairStyle = () => {\n const element = this.element;\n if (!element) {\n return;\n }\n this._safeMutationObserver(observer => observer.disconnect());\n this._initStyle();\n this.initBackground();\n this._safeMutationObserver(observer => {\n if (!element || !(element instanceof Node)) {\n return;\n }\n observer.observe(element, { attributes: true });\n });\n };\n this._resetOriginalStyle = () => {\n const element = this.element, originalStyle = this._originalStyle;\n if (!(element && originalStyle)) {\n return;\n }\n setStyle(element, originalStyle);\n };\n this._safeMutationObserver = callback => {\n if (!this._mutationObserver) {\n return;\n }\n callback(this._mutationObserver);\n };\n this._setFullScreenStyle = () => {\n const element = this.element;\n if (!element) {\n return;\n }\n const radix = 10;\n setStyle(element, {\n position: \"fixed\",\n zIndex: this.container.actualOptions.fullScreen.zIndex.toString(radix),\n top: \"0\",\n left: \"0\",\n width: \"100%\",\n height: \"100%\",\n }, true);\n };\n this.size = {\n height: 0,\n width: 0,\n };\n this._context = null;\n this._generated = false;\n this._preDrawUpdaters = [];\n this._postDrawUpdaters = [];\n this._resizePlugins = [];\n this._colorPlugins = [];\n }\n get _fullScreen() {\n return this.container.actualOptions.fullScreen.enable;\n }\n clear() {\n const options = this.container.actualOptions, trail = options.particles.move.trail, trailFill = this._trailFill, minimumLength = 0;\n if (options.backgroundMask.enable) {\n this.paint();\n }\n else if (trail.enable && trail.length > minimumLength && trailFill) {\n if (trailFill.color) {\n this._paintBase(getStyleFromRgb(trailFill.color, trailFill.opacity));\n }\n else if (trailFill.image) {\n this._paintImage(trailFill.image, trailFill.opacity);\n }\n }\n else if (options.clear) {\n this.draw(ctx => {\n clear(ctx, this.size);\n });\n }\n }\n destroy() {\n this.stop();\n if (this._generated) {\n const element = this.element;\n element?.remove();\n }\n else {\n this._resetOriginalStyle();\n }\n this._preDrawUpdaters = [];\n this._postDrawUpdaters = [];\n this._resizePlugins = [];\n this._colorPlugins = [];\n }\n draw(cb) {\n const ctx = this._context;\n if (!ctx) {\n return;\n }\n return cb(ctx);\n }\n drawAsync(cb) {\n const ctx = this._context;\n if (!ctx) {\n return undefined;\n }\n return cb(ctx);\n }\n drawParticle(particle, delta) {\n if (particle.spawning || particle.destroyed) {\n return;\n }\n const radius = particle.getRadius(), minimumSize = 0;\n if (radius <= minimumSize) {\n return;\n }\n const pfColor = particle.getFillColor(), psColor = particle.getStrokeColor() ?? pfColor;\n let [fColor, sColor] = this._getPluginParticleColors(particle);\n if (!fColor) {\n fColor = pfColor;\n }\n if (!sColor) {\n sColor = psColor;\n }\n if (!fColor && !sColor) {\n return;\n }\n this.draw((ctx) => {\n const container = this.container, options = container.actualOptions, zIndexOptions = particle.options.zIndex, zIndexFactorOffset = 1, zIndexFactor = zIndexFactorOffset - particle.zIndexFactor, zOpacityFactor = zIndexFactor ** zIndexOptions.opacityRate, defaultOpacity = 1, opacity = particle.bubble.opacity ?? particle.opacity?.value ?? defaultOpacity, strokeOpacity = particle.strokeOpacity ?? opacity, zOpacity = opacity * zOpacityFactor, zStrokeOpacity = strokeOpacity * zOpacityFactor, transform = {}, colorStyles = {\n fill: fColor ? getStyleFromHsl(fColor, zOpacity) : undefined,\n };\n colorStyles.stroke = sColor ? getStyleFromHsl(sColor, zStrokeOpacity) : colorStyles.fill;\n this._applyPreDrawUpdaters(ctx, particle, radius, zOpacity, colorStyles, transform);\n drawParticle({\n container,\n context: ctx,\n particle,\n delta,\n colorStyles,\n backgroundMask: options.backgroundMask.enable,\n composite: options.backgroundMask.composite,\n radius: radius * zIndexFactor ** zIndexOptions.sizeRate,\n opacity: zOpacity,\n shadow: particle.options.shadow,\n transform,\n });\n this._applyPostDrawUpdaters(particle);\n });\n }\n drawParticlePlugin(plugin, particle, delta) {\n this.draw(ctx => drawParticlePlugin(ctx, plugin, particle, delta));\n }\n drawPlugin(plugin, delta) {\n this.draw(ctx => drawPlugin(ctx, plugin, delta));\n }\n async init() {\n this._safeMutationObserver(obs => obs.disconnect());\n this._mutationObserver = safeMutationObserver(records => {\n for (const record of records) {\n if (record.type === \"attributes\" && record.attributeName === \"style\") {\n this._repairStyle();\n }\n }\n });\n this.resize();\n this._initStyle();\n await this._initCover();\n try {\n await this._initTrail();\n }\n catch (e) {\n getLogger().error(e);\n }\n this.initBackground();\n this._safeMutationObserver(obs => {\n if (!this.element || !(this.element instanceof Node)) {\n return;\n }\n obs.observe(this.element, { attributes: true });\n });\n this.initUpdaters();\n this.initPlugins();\n this.paint();\n }\n initBackground() {\n const options = this.container.actualOptions, background = options.background, element = this.element;\n if (!element) {\n return;\n }\n const elementStyle = element.style;\n if (!elementStyle) {\n return;\n }\n if (background.color) {\n const color = rangeColorToRgb(background.color);\n elementStyle.backgroundColor = color ? getStyleFromRgb(color, background.opacity) : \"\";\n }\n else {\n elementStyle.backgroundColor = \"\";\n }\n elementStyle.backgroundImage = background.image || \"\";\n elementStyle.backgroundPosition = background.position || \"\";\n elementStyle.backgroundRepeat = background.repeat || \"\";\n elementStyle.backgroundSize = background.size || \"\";\n }\n initPlugins() {\n this._resizePlugins = [];\n for (const [, plugin] of this.container.plugins) {\n if (plugin.resize) {\n this._resizePlugins.push(plugin);\n }\n if (plugin.particleFillColor ?? plugin.particleStrokeColor) {\n this._colorPlugins.push(plugin);\n }\n }\n }\n initUpdaters() {\n this._preDrawUpdaters = [];\n this._postDrawUpdaters = [];\n for (const updater of this.container.particles.updaters) {\n if (updater.afterDraw) {\n this._postDrawUpdaters.push(updater);\n }\n if (updater.getColorStyles ?? updater.getTransformValues ?? updater.beforeDraw) {\n this._preDrawUpdaters.push(updater);\n }\n }\n }\n loadCanvas(canvas) {\n if (this._generated && this.element) {\n this.element.remove();\n }\n this._generated =\n canvas.dataset && generatedAttribute in canvas.dataset\n ? canvas.dataset[generatedAttribute] === \"true\"\n : this._generated;\n this.element = canvas;\n this.element.ariaHidden = \"true\";\n this._originalStyle = deepExtend({}, this.element.style);\n this.size.height = canvas.offsetHeight;\n this.size.width = canvas.offsetWidth;\n this._context = this.element.getContext(\"2d\");\n this._safeMutationObserver(obs => {\n if (!this.element || !(this.element instanceof Node)) {\n return;\n }\n obs.observe(this.element, { attributes: true });\n });\n this.container.retina.init();\n this.initBackground();\n }\n paint() {\n const options = this.container.actualOptions;\n this.draw(ctx => {\n if (options.backgroundMask.enable && options.backgroundMask.cover) {\n clear(ctx, this.size);\n if (this._coverImage) {\n this._paintImage(this._coverImage.image, this._coverImage.opacity);\n }\n else if (this._coverColorStyle) {\n this._paintBase(this._coverColorStyle);\n }\n else {\n this._paintBase();\n }\n }\n else {\n this._paintBase();\n }\n });\n }\n resize() {\n if (!this.element) {\n return false;\n }\n const container = this.container, pxRatio = container.retina.pixelRatio, size = container.canvas.size, newSize = {\n width: this.element.offsetWidth * pxRatio,\n height: this.element.offsetHeight * pxRatio,\n };\n if (newSize.height === size.height &&\n newSize.width === size.width &&\n newSize.height === this.element.height &&\n newSize.width === this.element.width) {\n return false;\n }\n const oldSize = { ...size };\n this.element.width = size.width = this.element.offsetWidth * pxRatio;\n this.element.height = size.height = this.element.offsetHeight * pxRatio;\n if (this.container.started) {\n container.particles.setResizeFactor({\n width: size.width / oldSize.width,\n height: size.height / oldSize.height,\n });\n }\n return true;\n }\n stop() {\n this._safeMutationObserver(obs => obs.disconnect());\n this._mutationObserver = undefined;\n this.draw(ctx => clear(ctx, this.size));\n }\n async windowResize() {\n if (!this.element || !this.resize()) {\n return;\n }\n const container = this.container, needsRefresh = container.updateActualOptions();\n container.particles.setDensity();\n this._applyResizePlugins();\n if (needsRefresh) {\n await container.refresh();\n }\n }\n}\n","export var InteractivityDetect;\n(function (InteractivityDetect) {\n InteractivityDetect[\"canvas\"] = \"canvas\";\n InteractivityDetect[\"parent\"] = \"parent\";\n InteractivityDetect[\"window\"] = \"window\";\n})(InteractivityDetect || (InteractivityDetect = {}));\n","import { executeOnSingleOrMultiple, safeMatchMedia } from \"../../Utils/Utils.js\";\nimport { millisecondsToSeconds, mouseDownEvent, mouseLeaveEvent, mouseMoveEvent, mouseOutEvent, mouseUpEvent, resizeEvent, touchCancelEvent, touchEndEvent, touchMoveEvent, touchStartEvent, visibilityChangeEvent, } from \"./Constants.js\";\nimport { InteractivityDetect } from \"../../Enums/InteractivityDetect.js\";\nimport { isBoolean } from \"../../Utils/TypeUtils.js\";\nconst double = 2;\nfunction manageListener(element, event, handler, add, options) {\n if (add) {\n let addOptions = { passive: true };\n if (isBoolean(options)) {\n addOptions.capture = options;\n }\n else if (options !== undefined) {\n addOptions = options;\n }\n element.addEventListener(event, handler, addOptions);\n }\n else {\n const removeOptions = options;\n element.removeEventListener(event, handler, removeOptions);\n }\n}\nexport class EventListeners {\n constructor(container) {\n this.container = container;\n this._doMouseTouchClick = e => {\n const container = this.container, options = container.actualOptions;\n if (this._canPush) {\n const mouseInteractivity = container.interactivity.mouse, mousePos = mouseInteractivity.position;\n if (!mousePos) {\n return;\n }\n mouseInteractivity.clickPosition = { ...mousePos };\n mouseInteractivity.clickTime = new Date().getTime();\n const onClick = options.interactivity.events.onClick;\n executeOnSingleOrMultiple(onClick.mode, mode => this.container.handleClickMode(mode));\n }\n if (e.type === \"touchend\") {\n const touchDelay = 500;\n setTimeout(() => this._mouseTouchFinish(), touchDelay);\n }\n };\n this._handleThemeChange = (e) => {\n const mediaEvent = e, container = this.container, options = container.options, defaultThemes = options.defaultThemes, themeName = mediaEvent.matches ? defaultThemes.dark : defaultThemes.light, theme = options.themes.find(theme => theme.name === themeName);\n if (theme?.default.auto) {\n void container.loadTheme(themeName);\n }\n };\n this._handleVisibilityChange = () => {\n const container = this.container, options = container.actualOptions;\n this._mouseTouchFinish();\n if (!options.pauseOnBlur) {\n return;\n }\n if (document?.hidden) {\n container.pageHidden = true;\n container.pause();\n }\n else {\n container.pageHidden = false;\n if (container.animationStatus) {\n void container.play(true);\n }\n else {\n void container.draw(true);\n }\n }\n };\n this._handleWindowResize = () => {\n if (this._resizeTimeout) {\n clearTimeout(this._resizeTimeout);\n delete this._resizeTimeout;\n }\n const handleResize = async () => {\n const canvas = this.container.canvas;\n await canvas?.windowResize();\n };\n this._resizeTimeout = setTimeout(() => void handleResize(), this.container.actualOptions.interactivity.events.resize.delay * millisecondsToSeconds);\n };\n this._manageInteractivityListeners = (mouseLeaveTmpEvent, add) => {\n const handlers = this._handlers, container = this.container, options = container.actualOptions;\n const interactivityEl = container.interactivity.element;\n if (!interactivityEl) {\n return;\n }\n const html = interactivityEl, canvasEl = container.canvas.element;\n if (canvasEl) {\n canvasEl.style.pointerEvents = html === canvasEl ? \"initial\" : \"none\";\n }\n if (!(options.interactivity.events.onHover.enable || options.interactivity.events.onClick.enable)) {\n return;\n }\n manageListener(interactivityEl, mouseMoveEvent, handlers.mouseMove, add);\n manageListener(interactivityEl, touchStartEvent, handlers.touchStart, add);\n manageListener(interactivityEl, touchMoveEvent, handlers.touchMove, add);\n if (!options.interactivity.events.onClick.enable) {\n manageListener(interactivityEl, touchEndEvent, handlers.touchEnd, add);\n }\n else {\n manageListener(interactivityEl, touchEndEvent, handlers.touchEndClick, add);\n manageListener(interactivityEl, mouseUpEvent, handlers.mouseUp, add);\n manageListener(interactivityEl, mouseDownEvent, handlers.mouseDown, add);\n }\n manageListener(interactivityEl, mouseLeaveTmpEvent, handlers.mouseLeave, add);\n manageListener(interactivityEl, touchCancelEvent, handlers.touchCancel, add);\n };\n this._manageListeners = add => {\n const handlers = this._handlers, container = this.container, options = container.actualOptions, detectType = options.interactivity.detectsOn, canvasEl = container.canvas.element;\n let mouseLeaveTmpEvent = mouseLeaveEvent;\n if (detectType === InteractivityDetect.window) {\n container.interactivity.element = window;\n mouseLeaveTmpEvent = mouseOutEvent;\n }\n else if (detectType === InteractivityDetect.parent && canvasEl) {\n container.interactivity.element = canvasEl.parentElement ?? canvasEl.parentNode;\n }\n else {\n container.interactivity.element = canvasEl;\n }\n this._manageMediaMatch(add);\n this._manageResize(add);\n this._manageInteractivityListeners(mouseLeaveTmpEvent, add);\n if (document) {\n manageListener(document, visibilityChangeEvent, handlers.visibilityChange, add, false);\n }\n };\n this._manageMediaMatch = add => {\n const handlers = this._handlers, mediaMatch = safeMatchMedia(\"(prefers-color-scheme: dark)\");\n if (!mediaMatch) {\n return;\n }\n if (mediaMatch.addEventListener !== undefined) {\n manageListener(mediaMatch, \"change\", handlers.themeChange, add);\n return;\n }\n if (mediaMatch.addListener === undefined) {\n return;\n }\n if (add) {\n mediaMatch.addListener(handlers.oldThemeChange);\n }\n else {\n mediaMatch.removeListener(handlers.oldThemeChange);\n }\n };\n this._manageResize = add => {\n const handlers = this._handlers, container = this.container, options = container.actualOptions;\n if (!options.interactivity.events.resize) {\n return;\n }\n if (typeof ResizeObserver === \"undefined\") {\n manageListener(window, resizeEvent, handlers.resize, add);\n return;\n }\n const canvasEl = container.canvas.element;\n if (this._resizeObserver && !add) {\n if (canvasEl) {\n this._resizeObserver.unobserve(canvasEl);\n }\n this._resizeObserver.disconnect();\n delete this._resizeObserver;\n }\n else if (!this._resizeObserver && add && canvasEl) {\n this._resizeObserver = new ResizeObserver((entries) => {\n const entry = entries.find(e => e.target === canvasEl);\n if (!entry) {\n return;\n }\n this._handleWindowResize();\n });\n this._resizeObserver.observe(canvasEl);\n }\n };\n this._mouseDown = () => {\n const { interactivity } = this.container;\n if (!interactivity) {\n return;\n }\n const { mouse } = interactivity;\n mouse.clicking = true;\n mouse.downPosition = mouse.position;\n };\n this._mouseTouchClick = e => {\n const container = this.container, options = container.actualOptions, { mouse } = container.interactivity;\n mouse.inside = true;\n let handled = false;\n const mousePosition = mouse.position;\n if (!mousePosition || !options.interactivity.events.onClick.enable) {\n return;\n }\n for (const [, plugin] of container.plugins) {\n if (!plugin.clickPositionValid) {\n continue;\n }\n handled = plugin.clickPositionValid(mousePosition);\n if (handled) {\n break;\n }\n }\n if (!handled) {\n this._doMouseTouchClick(e);\n }\n mouse.clicking = false;\n };\n this._mouseTouchFinish = () => {\n const interactivity = this.container.interactivity;\n if (!interactivity) {\n return;\n }\n const mouse = interactivity.mouse;\n delete mouse.position;\n delete mouse.clickPosition;\n delete mouse.downPosition;\n interactivity.status = mouseLeaveEvent;\n mouse.inside = false;\n mouse.clicking = false;\n };\n this._mouseTouchMove = e => {\n const container = this.container, options = container.actualOptions, interactivity = container.interactivity, canvasEl = container.canvas.element;\n if (!interactivity?.element) {\n return;\n }\n interactivity.mouse.inside = true;\n let pos;\n if (e.type.startsWith(\"pointer\")) {\n this._canPush = true;\n const mouseEvent = e;\n if (interactivity.element === window) {\n if (canvasEl) {\n const clientRect = canvasEl.getBoundingClientRect();\n pos = {\n x: mouseEvent.clientX - clientRect.left,\n y: mouseEvent.clientY - clientRect.top,\n };\n }\n }\n else if (options.interactivity.detectsOn === InteractivityDetect.parent) {\n const source = mouseEvent.target, target = mouseEvent.currentTarget;\n if (source && target && canvasEl) {\n const sourceRect = source.getBoundingClientRect(), targetRect = target.getBoundingClientRect(), canvasRect = canvasEl.getBoundingClientRect();\n pos = {\n x: mouseEvent.offsetX + double * sourceRect.left - (targetRect.left + canvasRect.left),\n y: mouseEvent.offsetY + double * sourceRect.top - (targetRect.top + canvasRect.top),\n };\n }\n else {\n pos = {\n x: mouseEvent.offsetX ?? mouseEvent.clientX,\n y: mouseEvent.offsetY ?? mouseEvent.clientY,\n };\n }\n }\n else if (mouseEvent.target === canvasEl) {\n pos = {\n x: mouseEvent.offsetX ?? mouseEvent.clientX,\n y: mouseEvent.offsetY ?? mouseEvent.clientY,\n };\n }\n }\n else {\n this._canPush = e.type !== \"touchmove\";\n if (canvasEl) {\n const touchEvent = e, lengthOffset = 1, lastTouch = touchEvent.touches[touchEvent.touches.length - lengthOffset], canvasRect = canvasEl.getBoundingClientRect(), defaultCoordinate = 0;\n pos = {\n x: lastTouch.clientX - (canvasRect.left ?? defaultCoordinate),\n y: lastTouch.clientY - (canvasRect.top ?? defaultCoordinate),\n };\n }\n }\n const pxRatio = container.retina.pixelRatio;\n if (pos) {\n pos.x *= pxRatio;\n pos.y *= pxRatio;\n }\n interactivity.mouse.position = pos;\n interactivity.status = mouseMoveEvent;\n };\n this._touchEnd = e => {\n const evt = e, touches = Array.from(evt.changedTouches);\n for (const touch of touches) {\n this._touches.delete(touch.identifier);\n }\n this._mouseTouchFinish();\n };\n this._touchEndClick = e => {\n const evt = e, touches = Array.from(evt.changedTouches);\n for (const touch of touches) {\n this._touches.delete(touch.identifier);\n }\n this._mouseTouchClick(e);\n };\n this._touchStart = e => {\n const evt = e, touches = Array.from(evt.changedTouches);\n for (const touch of touches) {\n this._touches.set(touch.identifier, performance.now());\n }\n this._mouseTouchMove(e);\n };\n this._canPush = true;\n this._touches = new Map();\n this._handlers = {\n mouseDown: () => this._mouseDown(),\n mouseLeave: () => this._mouseTouchFinish(),\n mouseMove: (e) => this._mouseTouchMove(e),\n mouseUp: (e) => this._mouseTouchClick(e),\n touchStart: (e) => this._touchStart(e),\n touchMove: (e) => this._mouseTouchMove(e),\n touchEnd: (e) => this._touchEnd(e),\n touchCancel: (e) => this._touchEnd(e),\n touchEndClick: (e) => this._touchEndClick(e),\n visibilityChange: () => this._handleVisibilityChange(),\n themeChange: (e) => this._handleThemeChange(e),\n oldThemeChange: (e) => this._handleThemeChange(e),\n resize: () => {\n this._handleWindowResize();\n },\n };\n }\n addListeners() {\n this._manageListeners(true);\n }\n removeListeners() {\n this._manageListeners(false);\n }\n}\n","export var EventType;\n(function (EventType) {\n EventType[\"configAdded\"] = \"configAdded\";\n EventType[\"containerInit\"] = \"containerInit\";\n EventType[\"particlesSetup\"] = \"particlesSetup\";\n EventType[\"containerStarted\"] = \"containerStarted\";\n EventType[\"containerStopped\"] = \"containerStopped\";\n EventType[\"containerDestroyed\"] = \"containerDestroyed\";\n EventType[\"containerPaused\"] = \"containerPaused\";\n EventType[\"containerPlay\"] = \"containerPlay\";\n EventType[\"containerBuilt\"] = \"containerBuilt\";\n EventType[\"particleAdded\"] = \"particleAdded\";\n EventType[\"particleDestroyed\"] = \"particleDestroyed\";\n EventType[\"particleRemoved\"] = \"particleRemoved\";\n})(EventType || (EventType = {}));\n","import { isArray, isString } from \"../../Utils/TypeUtils.js\";\nexport class OptionsColor {\n constructor() {\n this.value = \"\";\n }\n static create(source, data) {\n const color = new OptionsColor();\n color.load(source);\n if (data !== undefined) {\n if (isString(data) || isArray(data)) {\n color.load({ value: data });\n }\n else {\n color.load(data);\n }\n }\n return color;\n }\n load(data) {\n if (data?.value === undefined) {\n return;\n }\n this.value = data.value;\n }\n}\n","import { OptionsColor } from \"../OptionsColor.js\";\nexport class Background {\n constructor() {\n this.color = new OptionsColor();\n this.color.value = \"\";\n this.image = \"\";\n this.position = \"\";\n this.repeat = \"\";\n this.size = \"\";\n this.opacity = 1;\n }\n load(data) {\n if (!data) {\n return;\n }\n if (data.color !== undefined) {\n this.color = OptionsColor.create(this.color, data.color);\n }\n if (data.image !== undefined) {\n this.image = data.image;\n }\n if (data.position !== undefined) {\n this.position = data.position;\n }\n if (data.repeat !== undefined) {\n this.repeat = data.repeat;\n }\n if (data.size !== undefined) {\n this.size = data.size;\n }\n if (data.opacity !== undefined) {\n this.opacity = data.opacity;\n }\n }\n}\n","import { OptionsColor } from \"../OptionsColor.js\";\nexport class BackgroundMaskCover {\n constructor() {\n this.opacity = 1;\n }\n load(data) {\n if (!data) {\n return;\n }\n if (data.color !== undefined) {\n this.color = OptionsColor.create(this.color, data.color);\n }\n if (data.image !== undefined) {\n this.image = data.image;\n }\n if (data.opacity !== undefined) {\n this.opacity = data.opacity;\n }\n }\n}\n","import { BackgroundMaskCover } from \"./BackgroundMaskCover.js\";\nimport { isString } from \"../../../Utils/TypeUtils.js\";\nexport class BackgroundMask {\n constructor() {\n this.composite = \"destination-out\";\n this.cover = new BackgroundMaskCover();\n this.enable = false;\n }\n load(data) {\n if (!data) {\n return;\n }\n if (data.composite !== undefined) {\n this.composite = data.composite;\n }\n if (data.cover !== undefined) {\n const cover = data.cover, color = (isString(data.cover) ? { color: data.cover } : data.cover);\n this.cover.load(cover.color !== undefined || cover.image !== undefined ? cover : { color: color });\n }\n if (data.enable !== undefined) {\n this.enable = data.enable;\n }\n }\n}\n","export class FullScreen {\n constructor() {\n this.enable = true;\n this.zIndex = 0;\n }\n load(data) {\n if (!data) {\n return;\n }\n if (data.enable !== undefined) {\n this.enable = data.enable;\n }\n if (data.zIndex !== undefined) {\n this.zIndex = data.zIndex;\n }\n }\n}\n","export class ClickEvent {\n constructor() {\n this.enable = false;\n this.mode = [];\n }\n load(data) {\n if (!data) {\n return;\n }\n if (data.enable !== undefined) {\n this.enable = data.enable;\n }\n if (data.mode !== undefined) {\n this.mode = data.mode;\n }\n }\n}\n","export var DivType;\n(function (DivType) {\n DivType[\"circle\"] = \"circle\";\n DivType[\"rectangle\"] = \"rectangle\";\n})(DivType || (DivType = {}));\n","import { DivType } from \"../../../../Enums/Types/DivType.js\";\nexport class DivEvent {\n constructor() {\n this.selectors = [];\n this.enable = false;\n this.mode = [];\n this.type = DivType.circle;\n }\n load(data) {\n if (!data) {\n return;\n }\n if (data.selectors !== undefined) {\n this.selectors = data.selectors;\n }\n if (data.enable !== undefined) {\n this.enable = data.enable;\n }\n if (data.mode !== undefined) {\n this.mode = data.mode;\n }\n if (data.type !== undefined) {\n this.type = data.type;\n }\n }\n}\n","export class Parallax {\n constructor() {\n this.enable = false;\n this.force = 2;\n this.smooth = 10;\n }\n load(data) {\n if (!data) {\n return;\n }\n if (data.enable !== undefined) {\n this.enable = data.enable;\n }\n if (data.force !== undefined) {\n this.force = data.force;\n }\n if (data.smooth !== undefined) {\n this.smooth = data.smooth;\n }\n }\n}\n","import { Parallax } from \"./Parallax.js\";\nexport class HoverEvent {\n constructor() {\n this.enable = false;\n this.mode = [];\n this.parallax = new Parallax();\n }\n load(data) {\n if (!data) {\n return;\n }\n if (data.enable !== undefined) {\n this.enable = data.enable;\n }\n if (data.mode !== undefined) {\n this.mode = data.mode;\n }\n this.parallax.load(data.parallax);\n }\n}\n","export class ResizeEvent {\n constructor() {\n this.delay = 0.5;\n this.enable = true;\n }\n load(data) {\n if (data === undefined) {\n return;\n }\n if (data.delay !== undefined) {\n this.delay = data.delay;\n }\n if (data.enable !== undefined) {\n this.enable = data.enable;\n }\n }\n}\n","import { ClickEvent } from \"./ClickEvent.js\";\nimport { DivEvent } from \"./DivEvent.js\";\nimport { HoverEvent } from \"./HoverEvent.js\";\nimport { ResizeEvent } from \"./ResizeEvent.js\";\nimport { executeOnSingleOrMultiple } from \"../../../../Utils/Utils.js\";\nexport class Events {\n constructor() {\n this.onClick = new ClickEvent();\n this.onDiv = new DivEvent();\n this.onHover = new HoverEvent();\n this.resize = new ResizeEvent();\n }\n load(data) {\n if (!data) {\n return;\n }\n this.onClick.load(data.onClick);\n const onDiv = data.onDiv;\n if (onDiv !== undefined) {\n this.onDiv = executeOnSingleOrMultiple(onDiv, t => {\n const tmp = new DivEvent();\n tmp.load(t);\n return tmp;\n });\n }\n this.onHover.load(data.onHover);\n this.resize.load(data.resize);\n }\n}\n","export class Modes {\n constructor(engine, container) {\n this._engine = engine;\n this._container = container;\n }\n load(data) {\n if (!data) {\n return;\n }\n if (!this._container) {\n return;\n }\n const interactors = this._engine.interactors.get(this._container);\n if (!interactors) {\n return;\n }\n for (const interactor of interactors) {\n if (!interactor.loadModeOptions) {\n continue;\n }\n interactor.loadModeOptions(this, data);\n }\n }\n}\n","import { Events } from \"./Events/Events.js\";\nimport { InteractivityDetect } from \"../../../Enums/InteractivityDetect.js\";\nimport { Modes } from \"./Modes/Modes.js\";\nexport class Interactivity {\n constructor(engine, container) {\n this.detectsOn = InteractivityDetect.window;\n this.events = new Events();\n this.modes = new Modes(engine, container);\n }\n load(data) {\n if (!data) {\n return;\n }\n const detectsOn = data.detectsOn;\n if (detectsOn !== undefined) {\n this.detectsOn = detectsOn;\n }\n this.events.load(data.events);\n this.modes.load(data.modes);\n }\n}\n","import { PixelMode } from \"../../Enums/Modes/PixelMode.js\";\nimport { deepExtend } from \"../../Utils/Utils.js\";\nconst defaultPosition = 50;\nexport class ManualParticle {\n load(data) {\n if (!data) {\n return;\n }\n if (data.position) {\n this.position = {\n x: data.position.x ?? defaultPosition,\n y: data.position.y ?? defaultPosition,\n mode: data.position.mode ?? PixelMode.percent,\n };\n }\n if (data.options) {\n this.options = deepExtend({}, data.options);\n }\n }\n}\n","export var ResponsiveMode;\n(function (ResponsiveMode) {\n ResponsiveMode[\"screen\"] = \"screen\";\n ResponsiveMode[\"canvas\"] = \"canvas\";\n})(ResponsiveMode || (ResponsiveMode = {}));\n","import { ResponsiveMode } from \"../../Enums/Modes/ResponsiveMode.js\";\nimport { deepExtend } from \"../../Utils/Utils.js\";\nexport class Responsive {\n constructor() {\n this.maxWidth = Infinity;\n this.options = {};\n this.mode = ResponsiveMode.canvas;\n }\n load(data) {\n if (!data) {\n return;\n }\n if (data.maxWidth !== undefined) {\n this.maxWidth = data.maxWidth;\n }\n if (data.mode !== undefined) {\n if (data.mode === ResponsiveMode.screen) {\n this.mode = ResponsiveMode.screen;\n }\n else {\n this.mode = ResponsiveMode.canvas;\n }\n }\n if (data.options !== undefined) {\n this.options = deepExtend({}, data.options);\n }\n }\n}\n","export var ThemeMode;\n(function (ThemeMode) {\n ThemeMode[\"any\"] = \"any\";\n ThemeMode[\"dark\"] = \"dark\";\n ThemeMode[\"light\"] = \"light\";\n})(ThemeMode || (ThemeMode = {}));\n","import { ThemeMode } from \"../../../Enums/Modes/ThemeMode.js\";\nexport class ThemeDefault {\n constructor() {\n this.auto = false;\n this.mode = ThemeMode.any;\n this.value = false;\n }\n load(data) {\n if (!data) {\n return;\n }\n if (data.auto !== undefined) {\n this.auto = data.auto;\n }\n if (data.mode !== undefined) {\n this.mode = data.mode;\n }\n if (data.value !== undefined) {\n this.value = data.value;\n }\n }\n}\n","import { ThemeDefault } from \"./ThemeDefault.js\";\nimport { deepExtend } from \"../../../Utils/Utils.js\";\nexport class Theme {\n constructor() {\n this.name = \"\";\n this.default = new ThemeDefault();\n }\n load(data) {\n if (!data) {\n return;\n }\n if (data.name !== undefined) {\n this.name = data.name;\n }\n this.default.load(data.default);\n if (data.options !== undefined) {\n this.options = deepExtend({}, data.options);\n }\n }\n}\n","import { AnimationMode } from \"../../Enums/Modes/AnimationMode.js\";\nimport { StartValueType } from \"../../Enums/Types/StartValueType.js\";\nimport { setRangeValue } from \"../../Utils/NumberUtils.js\";\nexport class AnimationOptions {\n constructor() {\n this.count = 0;\n this.enable = false;\n this.speed = 1;\n this.decay = 0;\n this.delay = 0;\n this.sync = false;\n }\n load(data) {\n if (!data) {\n return;\n }\n if (data.count !== undefined) {\n this.count = setRangeValue(data.count);\n }\n if (data.enable !== undefined) {\n this.enable = data.enable;\n }\n if (data.speed !== undefined) {\n this.speed = setRangeValue(data.speed);\n }\n if (data.decay !== undefined) {\n this.decay = setRangeValue(data.decay);\n }\n if (data.delay !== undefined) {\n this.delay = setRangeValue(data.delay);\n }\n if (data.sync !== undefined) {\n this.sync = data.sync;\n }\n }\n}\nexport class RangedAnimationOptions extends AnimationOptions {\n constructor() {\n super();\n this.mode = AnimationMode.auto;\n this.startValue = StartValueType.random;\n }\n load(data) {\n super.load(data);\n if (!data) {\n return;\n }\n if (data.mode !== undefined) {\n this.mode = data.mode;\n }\n if (data.startValue !== undefined) {\n this.startValue = data.startValue;\n }\n }\n}\n","import { AnimationOptions } from \"./AnimationOptions.js\";\nimport { setRangeValue } from \"../../Utils/NumberUtils.js\";\nexport class ColorAnimation extends AnimationOptions {\n constructor() {\n super();\n this.offset = 0;\n this.sync = true;\n }\n load(data) {\n super.load(data);\n if (!data) {\n return;\n }\n if (data.offset !== undefined) {\n this.offset = setRangeValue(data.offset);\n }\n }\n}\n","import { ColorAnimation } from \"./ColorAnimation.js\";\nexport class HslAnimation {\n constructor() {\n this.h = new ColorAnimation();\n this.s = new ColorAnimation();\n this.l = new ColorAnimation();\n }\n load(data) {\n if (!data) {\n return;\n }\n this.h.load(data.h);\n this.s.load(data.s);\n this.l.load(data.l);\n }\n}\n","import { isArray, isString } from \"../../Utils/TypeUtils.js\";\nimport { HslAnimation } from \"./HslAnimation.js\";\nimport { OptionsColor } from \"./OptionsColor.js\";\nexport class AnimatableColor extends OptionsColor {\n constructor() {\n super();\n this.animation = new HslAnimation();\n }\n static create(source, data) {\n const color = new AnimatableColor();\n color.load(source);\n if (data !== undefined) {\n if (isString(data) || isArray(data)) {\n color.load({ value: data });\n }\n else {\n color.load(data);\n }\n }\n return color;\n }\n load(data) {\n super.load(data);\n if (!data) {\n return;\n }\n const colorAnimation = data.animation;\n if (colorAnimation !== undefined) {\n if (colorAnimation.enable !== undefined) {\n this.animation.h.load(colorAnimation);\n }\n else {\n this.animation.load(data.animation);\n }\n }\n }\n}\n","export var CollisionMode;\n(function (CollisionMode) {\n CollisionMode[\"absorb\"] = \"absorb\";\n CollisionMode[\"bounce\"] = \"bounce\";\n CollisionMode[\"destroy\"] = \"destroy\";\n})(CollisionMode || (CollisionMode = {}));\n","export class CollisionsAbsorb {\n constructor() {\n this.speed = 2;\n }\n load(data) {\n if (!data) {\n return;\n }\n if (data.speed !== undefined) {\n this.speed = data.speed;\n }\n }\n}\n","export class CollisionsOverlap {\n constructor() {\n this.enable = true;\n this.retries = 0;\n }\n load(data) {\n if (!data) {\n return;\n }\n if (data.enable !== undefined) {\n this.enable = data.enable;\n }\n if (data.retries !== undefined) {\n this.retries = data.retries;\n }\n }\n}\n","import { AnimationOptions, RangedAnimationOptions } from \"./AnimationOptions.js\";\nimport { setRangeValue } from \"../../Utils/NumberUtils.js\";\nexport class ValueWithRandom {\n constructor() {\n this.value = 0;\n }\n load(data) {\n if (!data) {\n return;\n }\n if (data.value !== undefined) {\n this.value = setRangeValue(data.value);\n }\n }\n}\nexport class AnimationValueWithRandom extends ValueWithRandom {\n constructor() {\n super();\n this.animation = new AnimationOptions();\n }\n load(data) {\n super.load(data);\n if (!data) {\n return;\n }\n const animation = data.animation;\n if (animation !== undefined) {\n this.animation.load(animation);\n }\n }\n}\nexport class RangedAnimationValueWithRandom extends AnimationValueWithRandom {\n constructor() {\n super();\n this.animation = new RangedAnimationOptions();\n }\n load(data) {\n super.load(data);\n }\n}\n","import { ValueWithRandom } from \"../../ValueWithRandom.js\";\nexport class ParticlesBounceFactor extends ValueWithRandom {\n constructor() {\n super();\n this.value = 1;\n }\n}\n","import { ParticlesBounceFactor } from \"./ParticlesBounceFactor.js\";\nexport class ParticlesBounce {\n constructor() {\n this.horizontal = new ParticlesBounceFactor();\n this.vertical = new ParticlesBounceFactor();\n }\n load(data) {\n if (!data) {\n return;\n }\n this.horizontal.load(data.horizontal);\n this.vertical.load(data.vertical);\n }\n}\n","import { CollisionMode } from \"../../../../Enums/Modes/CollisionMode.js\";\nimport { CollisionsAbsorb } from \"./CollisionsAbsorb.js\";\nimport { CollisionsOverlap } from \"./CollisionsOverlap.js\";\nimport { ParticlesBounce } from \"../Bounce/ParticlesBounce.js\";\nimport { setRangeValue } from \"../../../../Utils/NumberUtils.js\";\nexport class Collisions {\n constructor() {\n this.absorb = new CollisionsAbsorb();\n this.bounce = new ParticlesBounce();\n this.enable = false;\n this.maxSpeed = 50;\n this.mode = CollisionMode.bounce;\n this.overlap = new CollisionsOverlap();\n }\n load(data) {\n if (!data) {\n return;\n }\n this.absorb.load(data.absorb);\n this.bounce.load(data.bounce);\n if (data.enable !== undefined) {\n this.enable = data.enable;\n }\n if (data.maxSpeed !== undefined) {\n this.maxSpeed = setRangeValue(data.maxSpeed);\n }\n if (data.mode !== undefined) {\n this.mode = data.mode;\n }\n this.overlap.load(data.overlap);\n }\n}\n","import { deepExtend } from \"../../../../Utils/Utils.js\";\nexport class Effect {\n constructor() {\n this.close = true;\n this.fill = true;\n this.options = {};\n this.type = [];\n }\n load(data) {\n if (!data) {\n return;\n }\n const options = data.options;\n if (options !== undefined) {\n for (const effect in options) {\n const item = options[effect];\n if (item) {\n this.options[effect] = deepExtend(this.options[effect] ?? {}, item);\n }\n }\n }\n if (data.close !== undefined) {\n this.close = data.close;\n }\n if (data.fill !== undefined) {\n this.fill = data.fill;\n }\n if (data.type !== undefined) {\n this.type = data.type;\n }\n }\n}\n","import { setRangeValue } from \"../../../../Utils/NumberUtils.js\";\nexport class MoveAngle {\n constructor() {\n this.offset = 0;\n this.value = 90;\n }\n load(data) {\n if (!data) {\n return;\n }\n if (data.offset !== undefined) {\n this.offset = setRangeValue(data.offset);\n }\n if (data.value !== undefined) {\n this.value = setRangeValue(data.value);\n }\n }\n}\n","import { setRangeValue } from \"../../../../Utils/NumberUtils.js\";\nexport class MoveAttract {\n constructor() {\n this.distance = 200;\n this.enable = false;\n this.rotate = {\n x: 3000,\n y: 3000,\n };\n }\n load(data) {\n if (!data) {\n return;\n }\n if (data.distance !== undefined) {\n this.distance = setRangeValue(data.distance);\n }\n if (data.enable !== undefined) {\n this.enable = data.enable;\n }\n if (data.rotate) {\n const rotateX = data.rotate.x;\n if (rotateX !== undefined) {\n this.rotate.x = rotateX;\n }\n const rotateY = data.rotate.y;\n if (rotateY !== undefined) {\n this.rotate.y = rotateY;\n }\n }\n }\n}\n","import { PixelMode } from \"../../../../Enums/Modes/PixelMode.js\";\nexport class MoveCenter {\n constructor() {\n this.x = 50;\n this.y = 50;\n this.mode = PixelMode.percent;\n this.radius = 0;\n }\n load(data) {\n if (!data) {\n return;\n }\n if (data.x !== undefined) {\n this.x = data.x;\n }\n if (data.y !== undefined) {\n this.y = data.y;\n }\n if (data.mode !== undefined) {\n this.mode = data.mode;\n }\n if (data.radius !== undefined) {\n this.radius = data.radius;\n }\n }\n}\n","import { setRangeValue } from \"../../../../Utils/NumberUtils.js\";\nexport class MoveGravity {\n constructor() {\n this.acceleration = 9.81;\n this.enable = false;\n this.inverse = false;\n this.maxSpeed = 50;\n }\n load(data) {\n if (!data) {\n return;\n }\n if (data.acceleration !== undefined) {\n this.acceleration = setRangeValue(data.acceleration);\n }\n if (data.enable !== undefined) {\n this.enable = data.enable;\n }\n if (data.inverse !== undefined) {\n this.inverse = data.inverse;\n }\n if (data.maxSpeed !== undefined) {\n this.maxSpeed = setRangeValue(data.maxSpeed);\n }\n }\n}\n","import { ValueWithRandom } from \"../../../ValueWithRandom.js\";\nimport { deepExtend } from \"../../../../../Utils/Utils.js\";\nexport class MovePath {\n constructor() {\n this.clamp = true;\n this.delay = new ValueWithRandom();\n this.enable = false;\n this.options = {};\n }\n load(data) {\n if (!data) {\n return;\n }\n if (data.clamp !== undefined) {\n this.clamp = data.clamp;\n }\n this.delay.load(data.delay);\n if (data.enable !== undefined) {\n this.enable = data.enable;\n }\n this.generator = data.generator;\n if (data.options) {\n this.options = deepExtend(this.options, data.options);\n }\n }\n}\n","import { OptionsColor } from \"../../OptionsColor.js\";\nexport class MoveTrailFill {\n load(data) {\n if (!data) {\n return;\n }\n if (data.color !== undefined) {\n this.color = OptionsColor.create(this.color, data.color);\n }\n if (data.image !== undefined) {\n this.image = data.image;\n }\n }\n}\n","import { MoveTrailFill } from \"./MoveTrailFill.js\";\nexport class MoveTrail {\n constructor() {\n this.enable = false;\n this.length = 10;\n this.fill = new MoveTrailFill();\n }\n load(data) {\n if (!data) {\n return;\n }\n if (data.enable !== undefined) {\n this.enable = data.enable;\n }\n if (data.fill !== undefined) {\n this.fill.load(data.fill);\n }\n if (data.length !== undefined) {\n this.length = data.length;\n }\n }\n}\n","export var OutMode;\n(function (OutMode) {\n OutMode[\"bounce\"] = \"bounce\";\n OutMode[\"none\"] = \"none\";\n OutMode[\"out\"] = \"out\";\n OutMode[\"destroy\"] = \"destroy\";\n OutMode[\"split\"] = \"split\";\n})(OutMode || (OutMode = {}));\n","import { OutMode } from \"../../../../Enums/Modes/OutMode.js\";\nexport class OutModes {\n constructor() {\n this.default = OutMode.out;\n }\n load(data) {\n if (!data) {\n return;\n }\n if (data.default !== undefined) {\n this.default = data.default;\n }\n this.bottom = data.bottom ?? data.default;\n this.left = data.left ?? data.default;\n this.right = data.right ?? data.default;\n this.top = data.top ?? data.default;\n }\n}\n","import { deepExtend } from \"../../../../Utils/Utils.js\";\nimport { setRangeValue } from \"../../../../Utils/NumberUtils.js\";\nexport class Spin {\n constructor() {\n this.acceleration = 0;\n this.enable = false;\n }\n load(data) {\n if (!data) {\n return;\n }\n if (data.acceleration !== undefined) {\n this.acceleration = setRangeValue(data.acceleration);\n }\n if (data.enable !== undefined) {\n this.enable = data.enable;\n }\n if (data.position) {\n this.position = deepExtend({}, data.position);\n }\n }\n}\n","import { MoveDirection } from \"../../../../Enums/Directions/MoveDirection.js\";\nimport { isNumber, isObject } from \"../../../../Utils/TypeUtils.js\";\nimport { MoveAngle } from \"./MoveAngle.js\";\nimport { MoveAttract } from \"./MoveAttract.js\";\nimport { MoveCenter } from \"./MoveCenter.js\";\nimport { MoveGravity } from \"./MoveGravity.js\";\nimport { MovePath } from \"./Path/MovePath.js\";\nimport { MoveTrail } from \"./MoveTrail.js\";\nimport { OutModes } from \"./OutModes.js\";\nimport { Spin } from \"./Spin.js\";\nimport { setRangeValue } from \"../../../../Utils/NumberUtils.js\";\nexport class Move {\n constructor() {\n this.angle = new MoveAngle();\n this.attract = new MoveAttract();\n this.center = new MoveCenter();\n this.decay = 0;\n this.distance = {};\n this.direction = MoveDirection.none;\n this.drift = 0;\n this.enable = false;\n this.gravity = new MoveGravity();\n this.path = new MovePath();\n this.outModes = new OutModes();\n this.random = false;\n this.size = false;\n this.speed = 2;\n this.spin = new Spin();\n this.straight = false;\n this.trail = new MoveTrail();\n this.vibrate = false;\n this.warp = false;\n }\n load(data) {\n if (!data) {\n return;\n }\n this.angle.load(isNumber(data.angle) ? { value: data.angle } : data.angle);\n this.attract.load(data.attract);\n this.center.load(data.center);\n if (data.decay !== undefined) {\n this.decay = setRangeValue(data.decay);\n }\n if (data.direction !== undefined) {\n this.direction = data.direction;\n }\n if (data.distance !== undefined) {\n this.distance = isNumber(data.distance)\n ? {\n horizontal: data.distance,\n vertical: data.distance,\n }\n : { ...data.distance };\n }\n if (data.drift !== undefined) {\n this.drift = setRangeValue(data.drift);\n }\n if (data.enable !== undefined) {\n this.enable = data.enable;\n }\n this.gravity.load(data.gravity);\n const outModes = data.outModes;\n if (outModes !== undefined) {\n if (isObject(outModes)) {\n this.outModes.load(outModes);\n }\n else {\n this.outModes.load({\n default: outModes,\n });\n }\n }\n this.path.load(data.path);\n if (data.random !== undefined) {\n this.random = data.random;\n }\n if (data.size !== undefined) {\n this.size = data.size;\n }\n if (data.speed !== undefined) {\n this.speed = setRangeValue(data.speed);\n }\n this.spin.load(data.spin);\n if (data.straight !== undefined) {\n this.straight = data.straight;\n }\n this.trail.load(data.trail);\n if (data.vibrate !== undefined) {\n this.vibrate = data.vibrate;\n }\n if (data.warp !== undefined) {\n this.warp = data.warp;\n }\n }\n}\n","import { DestroyType } from \"../../../../Enums/Types/DestroyType.js\";\nimport { RangedAnimationOptions } from \"../../AnimationOptions.js\";\nexport class OpacityAnimation extends RangedAnimationOptions {\n constructor() {\n super();\n this.destroy = DestroyType.none;\n this.speed = 2;\n }\n load(data) {\n super.load(data);\n if (!data) {\n return;\n }\n if (data.destroy !== undefined) {\n this.destroy = data.destroy;\n }\n }\n}\n","import { OpacityAnimation } from \"./OpacityAnimation.js\";\nimport { RangedAnimationValueWithRandom } from \"../../ValueWithRandom.js\";\nexport class Opacity extends RangedAnimationValueWithRandom {\n constructor() {\n super();\n this.animation = new OpacityAnimation();\n this.value = 1;\n }\n load(data) {\n if (!data) {\n return;\n }\n super.load(data);\n const animation = data.animation;\n if (animation !== undefined) {\n this.animation.load(animation);\n }\n }\n}\n","export class ParticlesDensity {\n constructor() {\n this.enable = false;\n this.width = 1920;\n this.height = 1080;\n }\n load(data) {\n if (!data) {\n return;\n }\n if (data.enable !== undefined) {\n this.enable = data.enable;\n }\n const width = data.width;\n if (width !== undefined) {\n this.width = width;\n }\n const height = data.height;\n if (height !== undefined) {\n this.height = height;\n }\n }\n}\n","export var LimitMode;\n(function (LimitMode) {\n LimitMode[\"delete\"] = \"delete\";\n LimitMode[\"wait\"] = \"wait\";\n})(LimitMode || (LimitMode = {}));\n","import { LimitMode } from \"../../../../Enums/Modes/LimitMode.js\";\nexport class ParticlesNumberLimit {\n constructor() {\n this.mode = LimitMode.delete;\n this.value = 0;\n }\n load(data) {\n if (!data) {\n return;\n }\n if (data.mode !== undefined) {\n this.mode = data.mode;\n }\n if (data.value !== undefined) {\n this.value = data.value;\n }\n }\n}\n","import { ParticlesDensity } from \"./ParticlesDensity.js\";\nimport { ParticlesNumberLimit } from \"./ParticlesNumberLimit.js\";\nexport class ParticlesNumber {\n constructor() {\n this.density = new ParticlesDensity();\n this.limit = new ParticlesNumberLimit();\n this.value = 0;\n }\n load(data) {\n if (!data) {\n return;\n }\n this.density.load(data.density);\n this.limit.load(data.limit);\n if (data.value !== undefined) {\n this.value = data.value;\n }\n }\n}\n","import { OptionsColor } from \"../OptionsColor.js\";\nexport class Shadow {\n constructor() {\n this.blur = 0;\n this.color = new OptionsColor();\n this.enable = false;\n this.offset = {\n x: 0,\n y: 0,\n };\n this.color.value = \"#000\";\n }\n load(data) {\n if (!data) {\n return;\n }\n if (data.blur !== undefined) {\n this.blur = data.blur;\n }\n this.color = OptionsColor.create(this.color, data.color);\n if (data.enable !== undefined) {\n this.enable = data.enable;\n }\n if (data.offset === undefined) {\n return;\n }\n if (data.offset.x !== undefined) {\n this.offset.x = data.offset.x;\n }\n if (data.offset.y !== undefined) {\n this.offset.y = data.offset.y;\n }\n }\n}\n","import { deepExtend } from \"../../../../Utils/Utils.js\";\nexport class Shape {\n constructor() {\n this.close = true;\n this.fill = true;\n this.options = {};\n this.type = \"circle\";\n }\n load(data) {\n if (!data) {\n return;\n }\n const options = data.options;\n if (options !== undefined) {\n for (const shape in options) {\n const item = options[shape];\n if (item) {\n this.options[shape] = deepExtend(this.options[shape] ?? {}, item);\n }\n }\n }\n if (data.close !== undefined) {\n this.close = data.close;\n }\n if (data.fill !== undefined) {\n this.fill = data.fill;\n }\n if (data.type !== undefined) {\n this.type = data.type;\n }\n }\n}\n","import { DestroyType } from \"../../../../Enums/Types/DestroyType.js\";\nimport { RangedAnimationOptions } from \"../../AnimationOptions.js\";\nexport class SizeAnimation extends RangedAnimationOptions {\n constructor() {\n super();\n this.destroy = DestroyType.none;\n this.speed = 5;\n }\n load(data) {\n super.load(data);\n if (!data) {\n return;\n }\n if (data.destroy !== undefined) {\n this.destroy = data.destroy;\n }\n }\n}\n","import { RangedAnimationValueWithRandom } from \"../../ValueWithRandom.js\";\nimport { SizeAnimation } from \"./SizeAnimation.js\";\nexport class Size extends RangedAnimationValueWithRandom {\n constructor() {\n super();\n this.animation = new SizeAnimation();\n this.value = 3;\n }\n load(data) {\n super.load(data);\n if (!data) {\n return;\n }\n const animation = data.animation;\n if (animation !== undefined) {\n this.animation.load(animation);\n }\n }\n}\n","import { AnimatableColor } from \"../AnimatableColor.js\";\nimport { setRangeValue } from \"../../../Utils/NumberUtils.js\";\nexport class Stroke {\n constructor() {\n this.width = 0;\n }\n load(data) {\n if (!data) {\n return;\n }\n if (data.color !== undefined) {\n this.color = AnimatableColor.create(this.color, data.color);\n }\n if (data.width !== undefined) {\n this.width = setRangeValue(data.width);\n }\n if (data.opacity !== undefined) {\n this.opacity = setRangeValue(data.opacity);\n }\n }\n}\n","import { ValueWithRandom } from \"../../ValueWithRandom.js\";\nexport class ZIndex extends ValueWithRandom {\n constructor() {\n super();\n this.opacityRate = 1;\n this.sizeRate = 1;\n this.velocityRate = 1;\n }\n load(data) {\n super.load(data);\n if (!data) {\n return;\n }\n if (data.opacityRate !== undefined) {\n this.opacityRate = data.opacityRate;\n }\n if (data.sizeRate !== undefined) {\n this.sizeRate = data.sizeRate;\n }\n if (data.velocityRate !== undefined) {\n this.velocityRate = data.velocityRate;\n }\n }\n}\n","import { deepExtend, executeOnSingleOrMultiple } from \"../../../Utils/Utils.js\";\nimport { AnimatableColor } from \"../AnimatableColor.js\";\nimport { Collisions } from \"./Collisions/Collisions.js\";\nimport { Effect } from \"./Effect/Effect.js\";\nimport { Move } from \"./Move/Move.js\";\nimport { Opacity } from \"./Opacity/Opacity.js\";\nimport { ParticlesBounce } from \"./Bounce/ParticlesBounce.js\";\nimport { ParticlesNumber } from \"./Number/ParticlesNumber.js\";\nimport { Shadow } from \"./Shadow.js\";\nimport { Shape } from \"./Shape/Shape.js\";\nimport { Size } from \"./Size/Size.js\";\nimport { Stroke } from \"./Stroke.js\";\nimport { ZIndex } from \"./ZIndex/ZIndex.js\";\nexport class ParticlesOptions {\n constructor(engine, container) {\n this._engine = engine;\n this._container = container;\n this.bounce = new ParticlesBounce();\n this.collisions = new Collisions();\n this.color = new AnimatableColor();\n this.color.value = \"#fff\";\n this.effect = new Effect();\n this.groups = {};\n this.move = new Move();\n this.number = new ParticlesNumber();\n this.opacity = new Opacity();\n this.reduceDuplicates = false;\n this.shadow = new Shadow();\n this.shape = new Shape();\n this.size = new Size();\n this.stroke = new Stroke();\n this.zIndex = new ZIndex();\n }\n load(data) {\n if (!data) {\n return;\n }\n if (data.groups !== undefined) {\n for (const group of Object.keys(data.groups)) {\n if (!Object.hasOwn(data.groups, group)) {\n continue;\n }\n const item = data.groups[group];\n if (item !== undefined) {\n this.groups[group] = deepExtend(this.groups[group] ?? {}, item);\n }\n }\n }\n if (data.reduceDuplicates !== undefined) {\n this.reduceDuplicates = data.reduceDuplicates;\n }\n this.bounce.load(data.bounce);\n this.color.load(AnimatableColor.create(this.color, data.color));\n this.effect.load(data.effect);\n this.move.load(data.move);\n this.number.load(data.number);\n this.opacity.load(data.opacity);\n this.shape.load(data.shape);\n this.size.load(data.size);\n this.shadow.load(data.shadow);\n this.zIndex.load(data.zIndex);\n this.collisions.load(data.collisions);\n if (data.interactivity !== undefined) {\n this.interactivity = deepExtend({}, data.interactivity);\n }\n const strokeToLoad = data.stroke;\n if (strokeToLoad) {\n this.stroke = executeOnSingleOrMultiple(strokeToLoad, t => {\n const tmp = new Stroke();\n tmp.load(t);\n return tmp;\n });\n }\n if (this._container) {\n const updaters = this._engine.updaters.get(this._container);\n if (updaters) {\n for (const updater of updaters) {\n if (updater.loadOptions) {\n updater.loadOptions(this, data);\n }\n }\n }\n const interactors = this._engine.interactors.get(this._container);\n if (interactors) {\n for (const interactor of interactors) {\n if (interactor.loadParticlesOptions) {\n interactor.loadParticlesOptions(this, data);\n }\n }\n }\n }\n }\n}\n","import { ParticlesOptions } from \"../Options/Classes/Particles/ParticlesOptions.js\";\nexport function loadOptions(options, ...sourceOptionsArr) {\n for (const sourceOptions of sourceOptionsArr) {\n options.load(sourceOptions);\n }\n}\nexport function loadParticlesOptions(engine, container, ...sourceOptionsArr) {\n const options = new ParticlesOptions(engine, container);\n loadOptions(options, ...sourceOptionsArr);\n return options;\n}\n","import { deepExtend, executeOnSingleOrMultiple, safeMatchMedia } from \"../../Utils/Utils.js\";\nimport { Background } from \"./Background/Background.js\";\nimport { BackgroundMask } from \"./BackgroundMask/BackgroundMask.js\";\nimport { FullScreen } from \"./FullScreen/FullScreen.js\";\nimport { Interactivity } from \"./Interactivity/Interactivity.js\";\nimport { ManualParticle } from \"./ManualParticle.js\";\nimport { Responsive } from \"./Responsive.js\";\nimport { ResponsiveMode } from \"../../Enums/Modes/ResponsiveMode.js\";\nimport { Theme } from \"./Theme/Theme.js\";\nimport { ThemeMode } from \"../../Enums/Modes/ThemeMode.js\";\nimport { isBoolean } from \"../../Utils/TypeUtils.js\";\nimport { loadParticlesOptions } from \"../../Utils/OptionsUtils.js\";\nimport { setRangeValue } from \"../../Utils/NumberUtils.js\";\nexport class Options {\n constructor(engine, container) {\n this._findDefaultTheme = mode => {\n return (this.themes.find(theme => theme.default.value && theme.default.mode === mode) ??\n this.themes.find(theme => theme.default.value && theme.default.mode === ThemeMode.any));\n };\n this._importPreset = preset => {\n this.load(this._engine.getPreset(preset));\n };\n this._engine = engine;\n this._container = container;\n this.autoPlay = true;\n this.background = new Background();\n this.backgroundMask = new BackgroundMask();\n this.clear = true;\n this.defaultThemes = {};\n this.delay = 0;\n this.fullScreen = new FullScreen();\n this.detectRetina = true;\n this.duration = 0;\n this.fpsLimit = 120;\n this.interactivity = new Interactivity(engine, container);\n this.manualParticles = [];\n this.particles = loadParticlesOptions(this._engine, this._container);\n this.pauseOnBlur = true;\n this.pauseOnOutsideViewport = true;\n this.responsive = [];\n this.smooth = false;\n this.style = {};\n this.themes = [];\n this.zLayers = 100;\n }\n load(data) {\n if (!data) {\n return;\n }\n if (data.preset !== undefined) {\n executeOnSingleOrMultiple(data.preset, preset => this._importPreset(preset));\n }\n if (data.autoPlay !== undefined) {\n this.autoPlay = data.autoPlay;\n }\n if (data.clear !== undefined) {\n this.clear = data.clear;\n }\n if (data.key !== undefined) {\n this.key = data.key;\n }\n if (data.name !== undefined) {\n this.name = data.name;\n }\n if (data.delay !== undefined) {\n this.delay = setRangeValue(data.delay);\n }\n const detectRetina = data.detectRetina;\n if (detectRetina !== undefined) {\n this.detectRetina = detectRetina;\n }\n if (data.duration !== undefined) {\n this.duration = setRangeValue(data.duration);\n }\n const fpsLimit = data.fpsLimit;\n if (fpsLimit !== undefined) {\n this.fpsLimit = fpsLimit;\n }\n if (data.pauseOnBlur !== undefined) {\n this.pauseOnBlur = data.pauseOnBlur;\n }\n if (data.pauseOnOutsideViewport !== undefined) {\n this.pauseOnOutsideViewport = data.pauseOnOutsideViewport;\n }\n if (data.zLayers !== undefined) {\n this.zLayers = data.zLayers;\n }\n this.background.load(data.background);\n const fullScreen = data.fullScreen;\n if (isBoolean(fullScreen)) {\n this.fullScreen.enable = fullScreen;\n }\n else {\n this.fullScreen.load(fullScreen);\n }\n this.backgroundMask.load(data.backgroundMask);\n this.interactivity.load(data.interactivity);\n if (data.manualParticles) {\n this.manualParticles = data.manualParticles.map(t => {\n const tmp = new ManualParticle();\n tmp.load(t);\n return tmp;\n });\n }\n this.particles.load(data.particles);\n this.style = deepExtend(this.style, data.style);\n this._engine.loadOptions(this, data);\n if (data.smooth !== undefined) {\n this.smooth = data.smooth;\n }\n const interactors = this._engine.interactors.get(this._container);\n if (interactors) {\n for (const interactor of interactors) {\n if (interactor.loadOptions) {\n interactor.loadOptions(this, data);\n }\n }\n }\n if (data.responsive !== undefined) {\n for (const responsive of data.responsive) {\n const optResponsive = new Responsive();\n optResponsive.load(responsive);\n this.responsive.push(optResponsive);\n }\n }\n this.responsive.sort((a, b) => a.maxWidth - b.maxWidth);\n if (data.themes !== undefined) {\n for (const theme of data.themes) {\n const existingTheme = this.themes.find(t => t.name === theme.name);\n if (!existingTheme) {\n const optTheme = new Theme();\n optTheme.load(theme);\n this.themes.push(optTheme);\n }\n else {\n existingTheme.load(theme);\n }\n }\n }\n this.defaultThemes.dark = this._findDefaultTheme(ThemeMode.dark)?.name;\n this.defaultThemes.light = this._findDefaultTheme(ThemeMode.light)?.name;\n }\n setResponsive(width, pxRatio, defaultOptions) {\n this.load(defaultOptions);\n const responsiveOptions = this.responsive.find(t => t.mode === ResponsiveMode.screen && screen ? t.maxWidth > screen.availWidth : t.maxWidth * pxRatio > width);\n this.load(responsiveOptions?.options);\n return responsiveOptions?.maxWidth;\n }\n setTheme(name) {\n if (name) {\n const chosenTheme = this.themes.find(theme => theme.name === name);\n if (chosenTheme) {\n this.load(chosenTheme.options);\n }\n }\n else {\n const mediaMatch = safeMatchMedia(\"(prefers-color-scheme: dark)\"), clientDarkMode = mediaMatch?.matches, defaultTheme = this._findDefaultTheme(clientDarkMode ? ThemeMode.dark : ThemeMode.light);\n if (defaultTheme) {\n this.load(defaultTheme.options);\n }\n }\n }\n}\n","export var InteractorType;\n(function (InteractorType) {\n InteractorType[\"external\"] = \"external\";\n InteractorType[\"particles\"] = \"particles\";\n})(InteractorType || (InteractorType = {}));\n","import { InteractorType } from \"../../Enums/Types/InteractorType.js\";\nexport class InteractionManager {\n constructor(engine, container) {\n this.container = container;\n this._engine = engine;\n this._interactors = [];\n this._externalInteractors = [];\n this._particleInteractors = [];\n }\n externalInteract(delta) {\n for (const interactor of this._externalInteractors) {\n if (interactor.isEnabled()) {\n interactor.interact(delta);\n }\n }\n }\n handleClickMode(mode) {\n for (const interactor of this._externalInteractors) {\n interactor.handleClickMode?.(mode);\n }\n }\n async init() {\n this._interactors = await this._engine.getInteractors(this.container, true);\n this._externalInteractors = [];\n this._particleInteractors = [];\n for (const interactor of this._interactors) {\n switch (interactor.type) {\n case InteractorType.external:\n this._externalInteractors.push(interactor);\n break;\n case InteractorType.particles:\n this._particleInteractors.push(interactor);\n break;\n }\n interactor.init();\n }\n }\n particlesInteract(particle, delta) {\n for (const interactor of this._externalInteractors) {\n interactor.clear(particle, delta);\n }\n for (const interactor of this._particleInteractors) {\n if (interactor.isEnabled(particle)) {\n interactor.interact(particle, delta);\n }\n }\n }\n reset(particle) {\n for (const interactor of this._externalInteractors) {\n if (interactor.isEnabled()) {\n interactor.reset(particle);\n }\n }\n for (const interactor of this._particleInteractors) {\n if (interactor.isEnabled(particle)) {\n interactor.reset(particle);\n }\n }\n }\n}\n","export var ParticleOutType;\n(function (ParticleOutType) {\n ParticleOutType[\"normal\"] = \"normal\";\n ParticleOutType[\"inside\"] = \"inside\";\n ParticleOutType[\"outside\"] = \"outside\";\n})(ParticleOutType || (ParticleOutType = {}));\n","import { Vector, Vector3d } from \"./Utils/Vectors.js\";\nimport { calcExactPositionOrRandomFromSize, clamp, degToRad, getDistance, getParticleBaseVelocity, getParticleDirectionAngle, getRandom, getRangeValue, randomInRange, setRangeValue, } from \"../Utils/NumberUtils.js\";\nimport { deepExtend, getPosition, initParticleNumericAnimationValue, isInArray, itemFromSingleOrMultiple, } from \"../Utils/Utils.js\";\nimport { errorPrefix, millisecondsToSeconds } from \"./Utils/Constants.js\";\nimport { getHslFromAnimation, rangeColorToRgb } from \"../Utils/ColorUtils.js\";\nimport { EventType } from \"../Enums/Types/EventType.js\";\nimport { Interactivity } from \"../Options/Classes/Interactivity/Interactivity.js\";\nimport { MoveDirection } from \"../Enums/Directions/MoveDirection.js\";\nimport { OutMode } from \"../Enums/Modes/OutMode.js\";\nimport { ParticleOutType } from \"../Enums/Types/ParticleOutType.js\";\nimport { PixelMode } from \"../Enums/Modes/PixelMode.js\";\nimport { alterHsl } from \"../Utils/CanvasUtils.js\";\nimport { loadParticlesOptions } from \"../Utils/OptionsUtils.js\";\nconst defaultRetryCount = 0, double = 2, half = 0.5, squareExp = 2, randomString = \"random\";\nfunction loadEffectData(effect, effectOptions, id, reduceDuplicates) {\n const effectData = effectOptions.options[effect];\n if (!effectData) {\n return;\n }\n return deepExtend({\n close: effectOptions.close,\n fill: effectOptions.fill,\n }, itemFromSingleOrMultiple(effectData, id, reduceDuplicates));\n}\nfunction loadShapeData(shape, shapeOptions, id, reduceDuplicates) {\n const shapeData = shapeOptions.options[shape];\n if (!shapeData) {\n return;\n }\n return deepExtend({\n close: shapeOptions.close,\n fill: shapeOptions.fill,\n }, itemFromSingleOrMultiple(shapeData, id, reduceDuplicates));\n}\nfunction fixOutMode(data) {\n if (!isInArray(data.outMode, data.checkModes)) {\n return;\n }\n const diameter = data.radius * double;\n if (data.coord > data.maxCoord - diameter) {\n data.setCb(-data.radius);\n }\n else if (data.coord < diameter) {\n data.setCb(data.radius);\n }\n}\nexport class Particle {\n constructor(engine, container) {\n this.container = container;\n this._calcPosition = (container, position, zIndex, tryCount = defaultRetryCount) => {\n for (const [, plugin] of container.plugins) {\n const pluginPos = plugin.particlePosition !== undefined ? plugin.particlePosition(position, this) : undefined;\n if (pluginPos) {\n return Vector3d.create(pluginPos.x, pluginPos.y, zIndex);\n }\n }\n const canvasSize = container.canvas.size, exactPosition = calcExactPositionOrRandomFromSize({\n size: canvasSize,\n position: position,\n }), pos = Vector3d.create(exactPosition.x, exactPosition.y, zIndex), radius = this.getRadius(), outModes = this.options.move.outModes, fixHorizontal = (outMode) => {\n fixOutMode({\n outMode,\n checkModes: [OutMode.bounce],\n coord: pos.x,\n maxCoord: container.canvas.size.width,\n setCb: (value) => (pos.x += value),\n radius,\n });\n }, fixVertical = (outMode) => {\n fixOutMode({\n outMode,\n checkModes: [OutMode.bounce],\n coord: pos.y,\n maxCoord: container.canvas.size.height,\n setCb: (value) => (pos.y += value),\n radius,\n });\n };\n fixHorizontal(outModes.left ?? outModes.default);\n fixHorizontal(outModes.right ?? outModes.default);\n fixVertical(outModes.top ?? outModes.default);\n fixVertical(outModes.bottom ?? outModes.default);\n if (this._checkOverlap(pos, tryCount)) {\n const increment = 1;\n return this._calcPosition(container, undefined, zIndex, tryCount + increment);\n }\n return pos;\n };\n this._calculateVelocity = () => {\n const baseVelocity = getParticleBaseVelocity(this.direction), res = baseVelocity.copy(), moveOptions = this.options.move;\n if (moveOptions.direction === MoveDirection.inside || moveOptions.direction === MoveDirection.outside) {\n return res;\n }\n const rad = degToRad(getRangeValue(moveOptions.angle.value)), radOffset = degToRad(getRangeValue(moveOptions.angle.offset)), range = {\n left: radOffset - rad * half,\n right: radOffset + rad * half,\n };\n if (!moveOptions.straight) {\n res.angle += randomInRange(setRangeValue(range.left, range.right));\n }\n if (moveOptions.random && typeof moveOptions.speed === \"number\") {\n res.length *= getRandom();\n }\n return res;\n };\n this._checkOverlap = (pos, tryCount = defaultRetryCount) => {\n const collisionsOptions = this.options.collisions, radius = this.getRadius();\n if (!collisionsOptions.enable) {\n return false;\n }\n const overlapOptions = collisionsOptions.overlap;\n if (overlapOptions.enable) {\n return false;\n }\n const retries = overlapOptions.retries, minRetries = 0;\n if (retries >= minRetries && tryCount > retries) {\n throw new Error(`${errorPrefix} particle is overlapping and can't be placed`);\n }\n return !!this.container.particles.find(particle => getDistance(pos, particle.position) < radius + particle.getRadius());\n };\n this._getRollColor = color => {\n if (!color || !this.roll || (!this.backColor && !this.roll.alter)) {\n return color;\n }\n const rollFactor = 1, none = 0, backFactor = this.roll.horizontal && this.roll.vertical ? double * rollFactor : rollFactor, backSum = this.roll.horizontal ? Math.PI * half : none, rolled = Math.floor(((this.roll.angle ?? none) + backSum) / (Math.PI / backFactor)) % double;\n if (!rolled) {\n return color;\n }\n if (this.backColor) {\n return this.backColor;\n }\n if (this.roll.alter) {\n return alterHsl(color, this.roll.alter.type, this.roll.alter.value);\n }\n return color;\n };\n this._initPosition = position => {\n const container = this.container, zIndexValue = getRangeValue(this.options.zIndex.value), minZ = 0;\n this.position = this._calcPosition(container, position, clamp(zIndexValue, minZ, container.zLayers));\n this.initialPosition = this.position.copy();\n const canvasSize = container.canvas.size, defaultRadius = 0;\n this.moveCenter = {\n ...getPosition(this.options.move.center, canvasSize),\n radius: this.options.move.center.radius ?? defaultRadius,\n mode: this.options.move.center.mode ?? PixelMode.percent,\n };\n this.direction = getParticleDirectionAngle(this.options.move.direction, this.position, this.moveCenter);\n switch (this.options.move.direction) {\n case MoveDirection.inside:\n this.outType = ParticleOutType.inside;\n break;\n case MoveDirection.outside:\n this.outType = ParticleOutType.outside;\n break;\n }\n this.offset = Vector.origin;\n };\n this._engine = engine;\n }\n destroy(override) {\n if (this.unbreakable || this.destroyed) {\n return;\n }\n this.destroyed = true;\n this.bubble.inRange = false;\n this.slow.inRange = false;\n const container = this.container, pathGenerator = this.pathGenerator, shapeDrawer = container.shapeDrawers.get(this.shape);\n shapeDrawer?.particleDestroy?.(this);\n for (const [, plugin] of container.plugins) {\n plugin.particleDestroyed?.(this, override);\n }\n for (const updater of container.particles.updaters) {\n updater.particleDestroyed?.(this, override);\n }\n pathGenerator?.reset(this);\n this._engine.dispatchEvent(EventType.particleDestroyed, {\n container: this.container,\n data: {\n particle: this,\n },\n });\n }\n draw(delta) {\n const container = this.container, canvas = container.canvas;\n for (const [, plugin] of container.plugins) {\n canvas.drawParticlePlugin(plugin, this, delta);\n }\n canvas.drawParticle(this, delta);\n }\n getFillColor() {\n return this._getRollColor(this.bubble.color ?? getHslFromAnimation(this.color));\n }\n getMass() {\n return this.getRadius() ** squareExp * Math.PI * half;\n }\n getPosition() {\n return {\n x: this.position.x + this.offset.x,\n y: this.position.y + this.offset.y,\n z: this.position.z,\n };\n }\n getRadius() {\n return this.bubble.radius ?? this.size.value;\n }\n getStrokeColor() {\n return this._getRollColor(this.bubble.color ?? getHslFromAnimation(this.strokeColor));\n }\n init(id, position, overrideOptions, group) {\n const container = this.container, engine = this._engine;\n this.id = id;\n this.group = group;\n this.effectClose = true;\n this.effectFill = true;\n this.shapeClose = true;\n this.shapeFill = true;\n this.pathRotation = false;\n this.lastPathTime = 0;\n this.destroyed = false;\n this.unbreakable = false;\n this.isRotating = false;\n this.rotation = 0;\n this.misplaced = false;\n this.retina = {\n maxDistance: {},\n };\n this.outType = ParticleOutType.normal;\n this.ignoresResizeRatio = true;\n const pxRatio = container.retina.pixelRatio, mainOptions = container.actualOptions, particlesOptions = loadParticlesOptions(this._engine, container, mainOptions.particles), { reduceDuplicates } = particlesOptions, effectType = particlesOptions.effect.type, shapeType = particlesOptions.shape.type;\n this.effect = itemFromSingleOrMultiple(effectType, this.id, reduceDuplicates);\n this.shape = itemFromSingleOrMultiple(shapeType, this.id, reduceDuplicates);\n const effectOptions = particlesOptions.effect, shapeOptions = particlesOptions.shape;\n if (overrideOptions) {\n if (overrideOptions.effect?.type) {\n const overrideEffectType = overrideOptions.effect.type, effect = itemFromSingleOrMultiple(overrideEffectType, this.id, reduceDuplicates);\n if (effect) {\n this.effect = effect;\n effectOptions.load(overrideOptions.effect);\n }\n }\n if (overrideOptions.shape?.type) {\n const overrideShapeType = overrideOptions.shape.type, shape = itemFromSingleOrMultiple(overrideShapeType, this.id, reduceDuplicates);\n if (shape) {\n this.shape = shape;\n shapeOptions.load(overrideOptions.shape);\n }\n }\n }\n if (this.effect === randomString) {\n const availableEffects = [...this.container.effectDrawers.keys()];\n this.effect = availableEffects[Math.floor(Math.random() * availableEffects.length)];\n }\n if (this.shape === randomString) {\n const availableShapes = [...this.container.shapeDrawers.keys()];\n this.shape = availableShapes[Math.floor(Math.random() * availableShapes.length)];\n }\n this.effectData = loadEffectData(this.effect, effectOptions, this.id, reduceDuplicates);\n this.shapeData = loadShapeData(this.shape, shapeOptions, this.id, reduceDuplicates);\n particlesOptions.load(overrideOptions);\n const effectData = this.effectData;\n if (effectData) {\n particlesOptions.load(effectData.particles);\n }\n const shapeData = this.shapeData;\n if (shapeData) {\n particlesOptions.load(shapeData.particles);\n }\n const interactivity = new Interactivity(engine, container);\n interactivity.load(container.actualOptions.interactivity);\n interactivity.load(particlesOptions.interactivity);\n this.interactivity = interactivity;\n this.effectFill = effectData?.fill ?? particlesOptions.effect.fill;\n this.effectClose = effectData?.close ?? particlesOptions.effect.close;\n this.shapeFill = shapeData?.fill ?? particlesOptions.shape.fill;\n this.shapeClose = shapeData?.close ?? particlesOptions.shape.close;\n this.options = particlesOptions;\n const pathOptions = this.options.move.path;\n this.pathDelay = getRangeValue(pathOptions.delay.value) * millisecondsToSeconds;\n if (pathOptions.generator) {\n this.pathGenerator = this._engine.getPathGenerator(pathOptions.generator);\n if (this.pathGenerator && container.addPath(pathOptions.generator, this.pathGenerator)) {\n this.pathGenerator.init(container);\n }\n }\n container.retina.initParticle(this);\n this.size = initParticleNumericAnimationValue(this.options.size, pxRatio);\n this.bubble = {\n inRange: false,\n };\n this.slow = {\n inRange: false,\n factor: 1,\n };\n this._initPosition(position);\n this.initialVelocity = this._calculateVelocity();\n this.velocity = this.initialVelocity.copy();\n const decayOffset = 1;\n this.moveDecay = decayOffset - getRangeValue(this.options.move.decay);\n const particles = container.particles;\n particles.setLastZIndex(this.position.z);\n this.zIndexFactor = this.position.z / container.zLayers;\n this.sides = 24;\n let effectDrawer = container.effectDrawers.get(this.effect);\n if (!effectDrawer) {\n effectDrawer = this._engine.getEffectDrawer(this.effect);\n if (effectDrawer) {\n container.effectDrawers.set(this.effect, effectDrawer);\n }\n }\n if (effectDrawer?.loadEffect) {\n effectDrawer.loadEffect(this);\n }\n let shapeDrawer = container.shapeDrawers.get(this.shape);\n if (!shapeDrawer) {\n shapeDrawer = this._engine.getShapeDrawer(this.shape);\n if (shapeDrawer) {\n container.shapeDrawers.set(this.shape, shapeDrawer);\n }\n }\n if (shapeDrawer?.loadShape) {\n shapeDrawer.loadShape(this);\n }\n const sideCountFunc = shapeDrawer?.getSidesCount;\n if (sideCountFunc) {\n this.sides = sideCountFunc(this);\n }\n this.spawning = false;\n this.shadowColor = rangeColorToRgb(this.options.shadow.color);\n for (const updater of particles.updaters) {\n updater.init(this);\n }\n for (const mover of particles.movers) {\n mover.init?.(this);\n }\n effectDrawer?.particleInit?.(container, this);\n shapeDrawer?.particleInit?.(container, this);\n for (const [, plugin] of container.plugins) {\n plugin.particleCreated?.(this);\n }\n }\n isInsideCanvas() {\n const radius = this.getRadius(), canvasSize = this.container.canvas.size, position = this.position;\n return (position.x >= -radius &&\n position.y >= -radius &&\n position.y <= canvasSize.height + radius &&\n position.x <= canvasSize.width + radius);\n }\n isVisible() {\n return !this.destroyed && !this.spawning && this.isInsideCanvas();\n }\n reset() {\n for (const updater of this.container.particles.updaters) {\n updater.reset?.(this);\n }\n }\n}\n","export class Point {\n constructor(position, particle) {\n this.position = position;\n this.particle = particle;\n }\n}\n","export var RangeType;\n(function (RangeType) {\n RangeType[\"circle\"] = \"circle\";\n RangeType[\"rectangle\"] = \"rectangle\";\n})(RangeType || (RangeType = {}));\n","import { RangeType } from \"../../Types/RangeType.js\";\nimport { getDistance } from \"../../Utils/NumberUtils.js\";\nconst squareExp = 2;\nexport class BaseRange {\n constructor(x, y, type) {\n this.position = {\n x: x,\n y: y,\n };\n this.type = type;\n }\n}\nexport class Circle extends BaseRange {\n constructor(x, y, radius) {\n super(x, y, RangeType.circle);\n this.radius = radius;\n }\n contains(point) {\n return getDistance(point, this.position) <= this.radius;\n }\n intersects(range) {\n const pos1 = this.position, pos2 = range.position, distPos = { x: Math.abs(pos2.x - pos1.x), y: Math.abs(pos2.y - pos1.y) }, r = this.radius;\n if (range instanceof Circle || range.type === RangeType.circle) {\n const circleRange = range, rSum = r + circleRange.radius, dist = Math.sqrt(distPos.x ** squareExp + distPos.y ** squareExp);\n return rSum > dist;\n }\n else if (range instanceof Rectangle || range.type === RangeType.rectangle) {\n const rectRange = range, { width, height } = rectRange.size, edges = Math.pow(distPos.x - width, squareExp) + Math.pow(distPos.y - height, squareExp);\n return (edges <= r ** squareExp ||\n (distPos.x <= r + width && distPos.y <= r + height) ||\n distPos.x <= width ||\n distPos.y <= height);\n }\n return false;\n }\n}\nexport class Rectangle extends BaseRange {\n constructor(x, y, width, height) {\n super(x, y, RangeType.rectangle);\n this.size = {\n height: height,\n width: width,\n };\n }\n contains(point) {\n const w = this.size.width, h = this.size.height, pos = this.position;\n return point.x >= pos.x && point.x <= pos.x + w && point.y >= pos.y && point.y <= pos.y + h;\n }\n intersects(range) {\n if (range instanceof Circle) {\n return range.intersects(this);\n }\n const w = this.size.width, h = this.size.height, pos1 = this.position, pos2 = range.position, size2 = range instanceof Rectangle ? range.size : { width: 0, height: 0 }, w2 = size2.width, h2 = size2.height;\n return pos2.x < pos1.x + w && pos2.x + w2 > pos1.x && pos2.y < pos1.y + h && pos2.y + h2 > pos1.y;\n }\n}\n","import { Circle, Rectangle } from \"./Ranges.js\";\nimport { getDistance } from \"../../Utils/NumberUtils.js\";\nconst half = 0.5, double = 2, subdivideCount = 4;\nexport class QuadTree {\n constructor(rectangle, capacity) {\n this.rectangle = rectangle;\n this.capacity = capacity;\n this._subdivide = () => {\n const { x, y } = this.rectangle.position, { width, height } = this.rectangle.size, { capacity } = this;\n for (let i = 0; i < subdivideCount; i++) {\n const fixedIndex = i % double;\n this._subs.push(new QuadTree(new Rectangle(x + width * half * fixedIndex, y + height * half * (Math.round(i * half) - fixedIndex), width * half, height * half), capacity));\n }\n this._divided = true;\n };\n this._points = [];\n this._divided = false;\n this._subs = [];\n }\n insert(point) {\n if (!this.rectangle.contains(point.position)) {\n return false;\n }\n if (this._points.length < this.capacity) {\n this._points.push(point);\n return true;\n }\n if (!this._divided) {\n this._subdivide();\n }\n return this._subs.some(sub => sub.insert(point));\n }\n query(range, check) {\n const res = [];\n if (!range.intersects(this.rectangle)) {\n return [];\n }\n for (const p of this._points) {\n if (!range.contains(p.position) &&\n getDistance(range.position, p.position) > p.particle.getRadius() &&\n (!check || check(p.particle))) {\n continue;\n }\n res.push(p.particle);\n }\n if (this._divided) {\n for (const sub of this._subs) {\n res.push(...sub.query(range, check));\n }\n }\n return res;\n }\n queryCircle(position, radius, check) {\n return this.query(new Circle(position.x, position.y, radius), check);\n }\n queryRectangle(position, size, check) {\n return this.query(new Rectangle(position.x, position.y, size.width, size.height), check);\n }\n}\n","import { getLogger, getPosition } from \"../Utils/Utils.js\";\nimport { EventType } from \"../Enums/Types/EventType.js\";\nimport { InteractionManager } from \"./Utils/InteractionManager.js\";\nimport { LimitMode } from \"../Enums/Modes/LimitMode.js\";\nimport { Particle } from \"./Particle.js\";\nimport { Point } from \"./Utils/Point.js\";\nimport { QuadTree } from \"./Utils/QuadTree.js\";\nimport { Rectangle } from \"./Utils/Ranges.js\";\nimport { errorPrefix } from \"./Utils/Constants.js\";\nconst qTreeCapacity = 4, squareExp = 2, defaultRemoveQuantity = 1;\nconst qTreeRectangle = (canvasSize) => {\n const { height, width } = canvasSize, posOffset = -0.25, sizeFactor = 1.5;\n return new Rectangle(posOffset * width, posOffset * height, sizeFactor * width, sizeFactor * height);\n};\nexport class Particles {\n constructor(engine, container) {\n this._addToPool = (...particles) => {\n this._pool.push(...particles);\n };\n this._applyDensity = (options, manualCount, group) => {\n const numberOptions = options.number;\n if (!options.number.density?.enable) {\n if (group === undefined) {\n this._limit = numberOptions.limit.value;\n }\n else if (numberOptions.limit) {\n this._groupLimits.set(group, numberOptions.limit.value);\n }\n return;\n }\n const densityFactor = this._initDensityFactor(numberOptions.density), optParticlesNumber = numberOptions.value, minLimit = 0, optParticlesLimit = numberOptions.limit.value > minLimit ? numberOptions.limit.value : optParticlesNumber, particlesNumber = Math.min(optParticlesNumber, optParticlesLimit) * densityFactor + manualCount, particlesCount = Math.min(this.count, this.filter(t => t.group === group).length);\n if (group === undefined) {\n this._limit = numberOptions.limit.value * densityFactor;\n }\n else {\n this._groupLimits.set(group, numberOptions.limit.value * densityFactor);\n }\n if (particlesCount < particlesNumber) {\n this.push(Math.abs(particlesNumber - particlesCount), undefined, options, group);\n }\n else if (particlesCount > particlesNumber) {\n this.removeQuantity(particlesCount - particlesNumber, group);\n }\n };\n this._initDensityFactor = densityOptions => {\n const container = this._container, defaultFactor = 1;\n if (!container.canvas.element || !densityOptions.enable) {\n return defaultFactor;\n }\n const canvas = container.canvas.element, pxRatio = container.retina.pixelRatio;\n return (canvas.width * canvas.height) / (densityOptions.height * densityOptions.width * pxRatio ** squareExp);\n };\n this._pushParticle = (position, overrideOptions, group, initializer) => {\n try {\n let particle = this._pool.pop();\n if (!particle) {\n particle = new Particle(this._engine, this._container);\n }\n particle.init(this._nextId, position, overrideOptions, group);\n let canAdd = true;\n if (initializer) {\n canAdd = initializer(particle);\n }\n if (!canAdd) {\n return;\n }\n this._array.push(particle);\n this._zArray.push(particle);\n this._nextId++;\n this._engine.dispatchEvent(EventType.particleAdded, {\n container: this._container,\n data: {\n particle,\n },\n });\n return particle;\n }\n catch (e) {\n getLogger().warning(`${errorPrefix} adding particle: ${e}`);\n }\n };\n this._removeParticle = (index, group, override) => {\n const particle = this._array[index];\n if (!particle || particle.group !== group) {\n return false;\n }\n const zIdx = this._zArray.indexOf(particle), deleteCount = 1;\n this._array.splice(index, deleteCount);\n this._zArray.splice(zIdx, deleteCount);\n particle.destroy(override);\n this._engine.dispatchEvent(EventType.particleRemoved, {\n container: this._container,\n data: {\n particle,\n },\n });\n this._addToPool(particle);\n return true;\n };\n this._engine = engine;\n this._container = container;\n this._nextId = 0;\n this._array = [];\n this._zArray = [];\n this._pool = [];\n this._limit = 0;\n this._groupLimits = new Map();\n this._needsSort = false;\n this._lastZIndex = 0;\n this._interactionManager = new InteractionManager(engine, container);\n this._pluginsInitialized = false;\n const canvasSize = container.canvas.size;\n this.quadTree = new QuadTree(qTreeRectangle(canvasSize), qTreeCapacity);\n this.movers = [];\n this.updaters = [];\n }\n get count() {\n return this._array.length;\n }\n addManualParticles() {\n const container = this._container, options = container.actualOptions;\n options.manualParticles.forEach(p => this.addParticle(p.position ? getPosition(p.position, container.canvas.size) : undefined, p.options));\n }\n addParticle(position, overrideOptions, group, initializer) {\n const limitMode = this._container.actualOptions.particles.number.limit.mode, limit = group === undefined ? this._limit : this._groupLimits.get(group) ?? this._limit, currentCount = this.count, minLimit = 0;\n if (limit > minLimit) {\n switch (limitMode) {\n case LimitMode.delete: {\n const countOffset = 1, minCount = 0, countToRemove = currentCount + countOffset - limit;\n if (countToRemove > minCount) {\n this.removeQuantity(countToRemove);\n }\n break;\n }\n case LimitMode.wait:\n if (currentCount >= limit) {\n return;\n }\n break;\n }\n }\n return this._pushParticle(position, overrideOptions, group, initializer);\n }\n clear() {\n this._array = [];\n this._zArray = [];\n this._pluginsInitialized = false;\n }\n destroy() {\n this._array = [];\n this._zArray = [];\n this.movers = [];\n this.updaters = [];\n }\n draw(delta) {\n const container = this._container, canvas = container.canvas;\n canvas.clear();\n this.update(delta);\n for (const [, plugin] of container.plugins) {\n canvas.drawPlugin(plugin, delta);\n }\n for (const p of this._zArray) {\n p.draw(delta);\n }\n }\n filter(condition) {\n return this._array.filter(condition);\n }\n find(condition) {\n return this._array.find(condition);\n }\n get(index) {\n return this._array[index];\n }\n handleClickMode(mode) {\n this._interactionManager.handleClickMode(mode);\n }\n async init() {\n const container = this._container, options = container.actualOptions;\n this._lastZIndex = 0;\n this._needsSort = false;\n await this.initPlugins();\n let handled = false;\n for (const [, plugin] of container.plugins) {\n handled = plugin.particlesInitialization?.() ?? handled;\n if (handled) {\n break;\n }\n }\n this.addManualParticles();\n if (!handled) {\n const particlesOptions = options.particles, groups = particlesOptions.groups;\n for (const group in groups) {\n const groupOptions = groups[group];\n for (let i = this.count, j = 0; j < groupOptions.number?.value && i < particlesOptions.number.value; i++, j++) {\n this.addParticle(undefined, groupOptions, group);\n }\n }\n for (let i = this.count; i < particlesOptions.number.value; i++) {\n this.addParticle();\n }\n }\n }\n async initPlugins() {\n if (this._pluginsInitialized) {\n return;\n }\n const container = this._container;\n this.movers = await this._engine.getMovers(container, true);\n this.updaters = await this._engine.getUpdaters(container, true);\n await this._interactionManager.init();\n for (const [, pathGenerator] of container.pathGenerators) {\n pathGenerator.init(container);\n }\n }\n push(nb, mouse, overrideOptions, group) {\n for (let i = 0; i < nb; i++) {\n this.addParticle(mouse?.position, overrideOptions, group);\n }\n }\n async redraw() {\n this.clear();\n await this.init();\n this.draw({ value: 0, factor: 0 });\n }\n remove(particle, group, override) {\n this.removeAt(this._array.indexOf(particle), undefined, group, override);\n }\n removeAt(index, quantity = defaultRemoveQuantity, group, override) {\n const minIndex = 0;\n if (index < minIndex || index > this.count) {\n return;\n }\n let deleted = 0;\n for (let i = index; deleted < quantity && i < this.count; i++) {\n if (this._removeParticle(i--, group, override)) {\n deleted++;\n }\n }\n }\n removeQuantity(quantity, group) {\n const defaultIndex = 0;\n this.removeAt(defaultIndex, quantity, group);\n }\n setDensity() {\n const options = this._container.actualOptions, groups = options.particles.groups, manualCount = 0;\n for (const group in groups) {\n this._applyDensity(groups[group], manualCount, group);\n }\n this._applyDensity(options.particles, options.manualParticles.length);\n }\n setLastZIndex(zIndex) {\n this._lastZIndex = zIndex;\n this._needsSort = this._needsSort || this._lastZIndex < zIndex;\n }\n setResizeFactor(factor) {\n this._resizeFactor = factor;\n }\n update(delta) {\n const container = this._container, particlesToDelete = new Set();\n this.quadTree = new QuadTree(qTreeRectangle(container.canvas.size), qTreeCapacity);\n for (const [, pathGenerator] of container.pathGenerators) {\n pathGenerator.update();\n }\n for (const [, plugin] of container.plugins) {\n plugin.update?.(delta);\n }\n const resizeFactor = this._resizeFactor;\n for (const particle of this._array) {\n if (resizeFactor && !particle.ignoresResizeRatio) {\n particle.position.x *= resizeFactor.width;\n particle.position.y *= resizeFactor.height;\n particle.initialPosition.x *= resizeFactor.width;\n particle.initialPosition.y *= resizeFactor.height;\n }\n particle.ignoresResizeRatio = false;\n this._interactionManager.reset(particle);\n for (const [, plugin] of this._container.plugins) {\n if (particle.destroyed) {\n break;\n }\n plugin.particleUpdate?.(particle, delta);\n }\n for (const mover of this.movers) {\n if (mover.isEnabled(particle)) {\n mover.move(particle, delta);\n }\n }\n if (particle.destroyed) {\n particlesToDelete.add(particle);\n continue;\n }\n this.quadTree.insert(new Point(particle.getPosition(), particle));\n }\n if (particlesToDelete.size) {\n const checkDelete = (p) => !particlesToDelete.has(p);\n this._array = this.filter(checkDelete);\n this._zArray = this._zArray.filter(checkDelete);\n for (const particle of particlesToDelete) {\n this._engine.dispatchEvent(EventType.particleRemoved, {\n container: this._container,\n data: {\n particle,\n },\n });\n }\n this._addToPool(...particlesToDelete);\n }\n this._interactionManager.externalInteract(delta);\n for (const particle of this._array) {\n for (const updater of this.updaters) {\n updater.update(particle, delta);\n }\n if (!particle.destroyed && !particle.spawning) {\n this._interactionManager.particlesInteract(particle, delta);\n }\n }\n delete this._resizeFactor;\n if (this._needsSort) {\n const zArray = this._zArray;\n zArray.sort((a, b) => b.position.z - a.position.z || a.id - b.id);\n const lengthOffset = 1;\n this._lastZIndex = zArray[zArray.length - lengthOffset].position.z;\n this._needsSort = false;\n }\n }\n}\n","import { getRangeValue } from \"../Utils/NumberUtils.js\";\nimport { isSsr } from \"../Utils/Utils.js\";\nconst defaultRatio = 1, defaultReduceFactor = 1;\nexport class Retina {\n constructor(container) {\n this.container = container;\n this.pixelRatio = defaultRatio;\n this.reduceFactor = defaultReduceFactor;\n }\n init() {\n const container = this.container, options = container.actualOptions;\n this.pixelRatio = !options.detectRetina || isSsr() ? defaultRatio : window.devicePixelRatio;\n this.reduceFactor = defaultReduceFactor;\n const ratio = this.pixelRatio, canvas = container.canvas;\n if (canvas.element) {\n const element = canvas.element;\n canvas.size.width = element.offsetWidth * ratio;\n canvas.size.height = element.offsetHeight * ratio;\n }\n const particles = options.particles, moveOptions = particles.move;\n this.maxSpeed = getRangeValue(moveOptions.gravity.maxSpeed) * ratio;\n this.sizeAnimationSpeed = getRangeValue(particles.size.animation.speed) * ratio;\n }\n initParticle(particle) {\n const options = particle.options, ratio = this.pixelRatio, moveOptions = options.move, moveDistance = moveOptions.distance, props = particle.retina;\n props.moveDrift = getRangeValue(moveOptions.drift) * ratio;\n props.moveSpeed = getRangeValue(moveOptions.speed) * ratio;\n props.sizeAnimationSpeed = getRangeValue(options.size.animation.speed) * ratio;\n const maxDistance = props.maxDistance;\n maxDistance.horizontal = moveDistance.horizontal !== undefined ? moveDistance.horizontal * ratio : undefined;\n maxDistance.vertical = moveDistance.vertical !== undefined ? moveDistance.vertical * ratio : undefined;\n props.maxSpeed = getRangeValue(moveOptions.gravity.maxSpeed) * ratio;\n }\n}\n","import { animate, cancelAnimation, getRangeValue } from \"../Utils/NumberUtils.js\";\nimport { errorPrefix, millisecondsToSeconds } from \"./Utils/Constants.js\";\nimport { getLogger, safeIntersectionObserver } from \"../Utils/Utils.js\";\nimport { Canvas } from \"./Canvas.js\";\nimport { EventListeners } from \"./Utils/EventListeners.js\";\nimport { EventType } from \"../Enums/Types/EventType.js\";\nimport { Options } from \"../Options/Classes/Options.js\";\nimport { Particles } from \"./Particles.js\";\nimport { Retina } from \"./Retina.js\";\nimport { loadOptions } from \"../Utils/OptionsUtils.js\";\nfunction guardCheck(container) {\n return container && !container.destroyed;\n}\nconst defaultFps = 60;\nfunction initDelta(value, fpsLimit = defaultFps, smooth = false) {\n return {\n value,\n factor: smooth ? defaultFps / fpsLimit : (defaultFps * value) / millisecondsToSeconds,\n };\n}\nfunction loadContainerOptions(engine, container, ...sourceOptionsArr) {\n const options = new Options(engine, container);\n loadOptions(options, ...sourceOptionsArr);\n return options;\n}\nexport class Container {\n constructor(engine, id, sourceOptions) {\n this._intersectionManager = entries => {\n if (!guardCheck(this) || !this.actualOptions.pauseOnOutsideViewport) {\n return;\n }\n for (const entry of entries) {\n if (entry.target !== this.interactivity.element) {\n continue;\n }\n if (entry.isIntersecting) {\n void this.play();\n }\n else {\n this.pause();\n }\n }\n };\n this._nextFrame = (timestamp) => {\n try {\n if (!this._smooth &&\n this._lastFrameTime !== undefined &&\n timestamp < this._lastFrameTime + millisecondsToSeconds / this.fpsLimit) {\n this.draw(false);\n return;\n }\n this._lastFrameTime ??= timestamp;\n const delta = initDelta(timestamp - this._lastFrameTime, this.fpsLimit, this._smooth);\n this.addLifeTime(delta.value);\n this._lastFrameTime = timestamp;\n if (delta.value > millisecondsToSeconds) {\n this.draw(false);\n return;\n }\n this.particles.draw(delta);\n if (!this.alive()) {\n this.destroy();\n return;\n }\n if (this.animationStatus) {\n this.draw(false);\n }\n }\n catch (e) {\n getLogger().error(`${errorPrefix} in animation loop`, e);\n }\n };\n this._engine = engine;\n this.id = Symbol(id);\n this.fpsLimit = 120;\n this._smooth = false;\n this._delay = 0;\n this._duration = 0;\n this._lifeTime = 0;\n this._firstStart = true;\n this.started = false;\n this.destroyed = false;\n this._paused = true;\n this._lastFrameTime = 0;\n this.zLayers = 100;\n this.pageHidden = false;\n this._clickHandlers = new Map();\n this._sourceOptions = sourceOptions;\n this._initialSourceOptions = sourceOptions;\n this.retina = new Retina(this);\n this.canvas = new Canvas(this);\n this.particles = new Particles(this._engine, this);\n this.pathGenerators = new Map();\n this.interactivity = {\n mouse: {\n clicking: false,\n inside: false,\n },\n };\n this.plugins = new Map();\n this.effectDrawers = new Map();\n this.shapeDrawers = new Map();\n this._options = loadContainerOptions(this._engine, this);\n this.actualOptions = loadContainerOptions(this._engine, this);\n this._eventListeners = new EventListeners(this);\n this._intersectionObserver = safeIntersectionObserver(entries => this._intersectionManager(entries));\n this._engine.dispatchEvent(EventType.containerBuilt, { container: this });\n }\n get animationStatus() {\n return !this._paused && !this.pageHidden && guardCheck(this);\n }\n get options() {\n return this._options;\n }\n get sourceOptions() {\n return this._sourceOptions;\n }\n addClickHandler(callback) {\n if (!guardCheck(this)) {\n return;\n }\n const el = this.interactivity.element;\n if (!el) {\n return;\n }\n const clickOrTouchHandler = (e, pos, radius) => {\n if (!guardCheck(this)) {\n return;\n }\n const pxRatio = this.retina.pixelRatio, posRetina = {\n x: pos.x * pxRatio,\n y: pos.y * pxRatio,\n }, particles = this.particles.quadTree.queryCircle(posRetina, radius * pxRatio);\n callback(e, particles);\n }, clickHandler = (e) => {\n if (!guardCheck(this)) {\n return;\n }\n const mouseEvent = e, pos = {\n x: mouseEvent.offsetX || mouseEvent.clientX,\n y: mouseEvent.offsetY || mouseEvent.clientY,\n }, radius = 1;\n clickOrTouchHandler(e, pos, radius);\n }, touchStartHandler = () => {\n if (!guardCheck(this)) {\n return;\n }\n touched = true;\n touchMoved = false;\n }, touchMoveHandler = () => {\n if (!guardCheck(this)) {\n return;\n }\n touchMoved = true;\n }, touchEndHandler = (e) => {\n if (!guardCheck(this)) {\n return;\n }\n if (touched && !touchMoved) {\n const touchEvent = e, lengthOffset = 1;\n let lastTouch = touchEvent.touches[touchEvent.touches.length - lengthOffset];\n if (!lastTouch) {\n lastTouch = touchEvent.changedTouches[touchEvent.changedTouches.length - lengthOffset];\n if (!lastTouch) {\n return;\n }\n }\n const element = this.canvas.element, canvasRect = element ? element.getBoundingClientRect() : undefined, minCoordinate = 0, pos = {\n x: lastTouch.clientX - (canvasRect ? canvasRect.left : minCoordinate),\n y: lastTouch.clientY - (canvasRect ? canvasRect.top : minCoordinate),\n };\n clickOrTouchHandler(e, pos, Math.max(lastTouch.radiusX, lastTouch.radiusY));\n }\n touched = false;\n touchMoved = false;\n }, touchCancelHandler = () => {\n if (!guardCheck(this)) {\n return;\n }\n touched = false;\n touchMoved = false;\n };\n let touched = false, touchMoved = false;\n this._clickHandlers.set(\"click\", clickHandler);\n this._clickHandlers.set(\"touchstart\", touchStartHandler);\n this._clickHandlers.set(\"touchmove\", touchMoveHandler);\n this._clickHandlers.set(\"touchend\", touchEndHandler);\n this._clickHandlers.set(\"touchcancel\", touchCancelHandler);\n for (const [key, handler] of this._clickHandlers) {\n el.addEventListener(key, handler);\n }\n }\n addLifeTime(value) {\n this._lifeTime += value;\n }\n addPath(key, generator, override = false) {\n if (!guardCheck(this) || (!override && this.pathGenerators.has(key))) {\n return false;\n }\n this.pathGenerators.set(key, generator);\n return true;\n }\n alive() {\n return !this._duration || this._lifeTime <= this._duration;\n }\n clearClickHandlers() {\n if (!guardCheck(this)) {\n return;\n }\n for (const [key, handler] of this._clickHandlers) {\n this.interactivity.element?.removeEventListener(key, handler);\n }\n this._clickHandlers.clear();\n }\n destroy(remove = true) {\n if (!guardCheck(this)) {\n return;\n }\n this.stop();\n this.clearClickHandlers();\n this.particles.destroy();\n this.canvas.destroy();\n for (const [, effectDrawer] of this.effectDrawers) {\n effectDrawer.destroy?.(this);\n }\n for (const [, shapeDrawer] of this.shapeDrawers) {\n shapeDrawer.destroy?.(this);\n }\n for (const key of this.effectDrawers.keys()) {\n this.effectDrawers.delete(key);\n }\n for (const key of this.shapeDrawers.keys()) {\n this.shapeDrawers.delete(key);\n }\n this._engine.clearPlugins(this);\n this.destroyed = true;\n if (remove) {\n const mainArr = this._engine.items, idx = mainArr.findIndex(t => t === this), minIndex = 0;\n if (idx >= minIndex) {\n const deleteCount = 1;\n mainArr.splice(idx, deleteCount);\n }\n }\n this._engine.dispatchEvent(EventType.containerDestroyed, { container: this });\n }\n draw(force) {\n if (!guardCheck(this)) {\n return;\n }\n let refreshTime = force;\n const frame = (timestamp) => {\n if (refreshTime) {\n this._lastFrameTime = undefined;\n refreshTime = false;\n }\n this._nextFrame(timestamp);\n };\n this._drawAnimationFrame = animate(timestamp => frame(timestamp));\n }\n async export(type, options = {}) {\n for (const [, plugin] of this.plugins) {\n if (!plugin.export) {\n continue;\n }\n const res = await plugin.export(type, options);\n if (!res.supported) {\n continue;\n }\n return res.blob;\n }\n getLogger().error(`${errorPrefix} - Export plugin with type ${type} not found`);\n }\n handleClickMode(mode) {\n if (!guardCheck(this)) {\n return;\n }\n this.particles.handleClickMode(mode);\n for (const [, plugin] of this.plugins) {\n plugin.handleClickMode?.(mode);\n }\n }\n async init() {\n if (!guardCheck(this)) {\n return;\n }\n const effects = this._engine.getSupportedEffects();\n for (const type of effects) {\n const drawer = this._engine.getEffectDrawer(type);\n if (drawer) {\n this.effectDrawers.set(type, drawer);\n }\n }\n const shapes = this._engine.getSupportedShapes();\n for (const type of shapes) {\n const drawer = this._engine.getShapeDrawer(type);\n if (drawer) {\n this.shapeDrawers.set(type, drawer);\n }\n }\n await this.particles.initPlugins();\n this._options = loadContainerOptions(this._engine, this, this._initialSourceOptions, this.sourceOptions);\n this.actualOptions = loadContainerOptions(this._engine, this, this._options);\n const availablePlugins = await this._engine.getAvailablePlugins(this);\n for (const [id, plugin] of availablePlugins) {\n this.plugins.set(id, plugin);\n }\n this.retina.init();\n await this.canvas.init();\n this.updateActualOptions();\n this.canvas.initBackground();\n this.canvas.resize();\n const { zLayers, duration, delay, fpsLimit, smooth } = this.actualOptions;\n this.zLayers = zLayers;\n this._duration = getRangeValue(duration) * millisecondsToSeconds;\n this._delay = getRangeValue(delay) * millisecondsToSeconds;\n this._lifeTime = 0;\n const defaultFpsLimit = 120, minFpsLimit = 0;\n this.fpsLimit = fpsLimit > minFpsLimit ? fpsLimit : defaultFpsLimit;\n this._smooth = smooth;\n for (const [, drawer] of this.effectDrawers) {\n await drawer.init?.(this);\n }\n for (const [, drawer] of this.shapeDrawers) {\n await drawer.init?.(this);\n }\n for (const [, plugin] of this.plugins) {\n await plugin.init?.();\n }\n this._engine.dispatchEvent(EventType.containerInit, { container: this });\n await this.particles.init();\n this.particles.setDensity();\n for (const [, plugin] of this.plugins) {\n plugin.particlesSetup?.();\n }\n this._engine.dispatchEvent(EventType.particlesSetup, { container: this });\n }\n async loadTheme(name) {\n if (!guardCheck(this)) {\n return;\n }\n this._currentTheme = name;\n await this.refresh();\n }\n pause() {\n if (!guardCheck(this)) {\n return;\n }\n if (this._drawAnimationFrame !== undefined) {\n cancelAnimation(this._drawAnimationFrame);\n delete this._drawAnimationFrame;\n }\n if (this._paused) {\n return;\n }\n for (const [, plugin] of this.plugins) {\n plugin.pause?.();\n }\n if (!this.pageHidden) {\n this._paused = true;\n }\n this._engine.dispatchEvent(EventType.containerPaused, { container: this });\n }\n play(force) {\n if (!guardCheck(this)) {\n return;\n }\n const needsUpdate = this._paused || force;\n if (this._firstStart && !this.actualOptions.autoPlay) {\n this._firstStart = false;\n return;\n }\n if (this._paused) {\n this._paused = false;\n }\n if (needsUpdate) {\n for (const [, plugin] of this.plugins) {\n if (plugin.play) {\n plugin.play();\n }\n }\n }\n this._engine.dispatchEvent(EventType.containerPlay, { container: this });\n this.draw(needsUpdate ?? false);\n }\n async refresh() {\n if (!guardCheck(this)) {\n return;\n }\n this.stop();\n return this.start();\n }\n async reset(sourceOptions) {\n if (!guardCheck(this)) {\n return;\n }\n this._initialSourceOptions = sourceOptions;\n this._sourceOptions = sourceOptions;\n this._options = loadContainerOptions(this._engine, this, this._initialSourceOptions, this.sourceOptions);\n this.actualOptions = loadContainerOptions(this._engine, this, this._options);\n return this.refresh();\n }\n async start() {\n if (!guardCheck(this) || this.started) {\n return;\n }\n await this.init();\n this.started = true;\n await new Promise(resolve => {\n const start = async () => {\n this._eventListeners.addListeners();\n if (this.interactivity.element instanceof HTMLElement && this._intersectionObserver) {\n this._intersectionObserver.observe(this.interactivity.element);\n }\n for (const [, plugin] of this.plugins) {\n await plugin.start?.();\n }\n this._engine.dispatchEvent(EventType.containerStarted, { container: this });\n this.play();\n resolve();\n };\n this._delayTimeout = setTimeout(() => void start(), this._delay);\n });\n }\n stop() {\n if (!guardCheck(this) || !this.started) {\n return;\n }\n if (this._delayTimeout) {\n clearTimeout(this._delayTimeout);\n delete this._delayTimeout;\n }\n this._firstStart = true;\n this.started = false;\n this._eventListeners.removeListeners();\n this.pause();\n this.particles.clear();\n this.canvas.stop();\n if (this.interactivity.element instanceof HTMLElement && this._intersectionObserver) {\n this._intersectionObserver.unobserve(this.interactivity.element);\n }\n for (const [, plugin] of this.plugins) {\n plugin.stop?.();\n }\n for (const key of this.plugins.keys()) {\n this.plugins.delete(key);\n }\n this._sourceOptions = this._options;\n this._engine.dispatchEvent(EventType.containerStopped, { container: this });\n }\n updateActualOptions() {\n this.actualOptions.responsive = [];\n const newMaxWidth = this.actualOptions.setResponsive(this.canvas.size.width, this.retina.pixelRatio, this._options);\n this.actualOptions.setTheme(this._currentTheme);\n if (this._responsiveMaxWidth === newMaxWidth) {\n return false;\n }\n this._responsiveMaxWidth = newMaxWidth;\n return true;\n }\n}\n","export class EventDispatcher {\n constructor() {\n this._listeners = new Map();\n }\n addEventListener(type, listener) {\n this.removeEventListener(type, listener);\n let arr = this._listeners.get(type);\n if (!arr) {\n arr = [];\n this._listeners.set(type, arr);\n }\n arr.push(listener);\n }\n dispatchEvent(type, args) {\n const listeners = this._listeners.get(type);\n listeners?.forEach(handler => handler(args));\n }\n hasEventListener(type) {\n return !!this._listeners.get(type);\n }\n removeAllEventListeners(type) {\n if (!type) {\n this._listeners = new Map();\n }\n else {\n this._listeners.delete(type);\n }\n }\n removeEventListener(type, listener) {\n const arr = this._listeners.get(type);\n if (!arr) {\n return;\n }\n const length = arr.length, idx = arr.indexOf(listener), minIndex = 0;\n if (idx < minIndex) {\n return;\n }\n const deleteCount = 1;\n if (length === deleteCount) {\n this._listeners.delete(type);\n }\n else {\n arr.splice(idx, deleteCount);\n }\n }\n}\n","import { errorPrefix, generatedAttribute } from \"./Utils/Constants.js\";\nimport { executeOnSingleOrMultiple, getLogger, itemFromSingleOrMultiple } from \"../Utils/Utils.js\";\nimport { Container } from \"./Container.js\";\nimport { EventDispatcher } from \"../Utils/EventDispatcher.js\";\nimport { EventType } from \"../Enums/Types/EventType.js\";\nimport { getRandom } from \"../Utils/NumberUtils.js\";\nasync function getItemsFromInitializer(container, map, initializers, force = false) {\n let res = map.get(container);\n if (!res || force) {\n res = await Promise.all([...initializers.values()].map(t => t(container)));\n map.set(container, res);\n }\n return res;\n}\nasync function getDataFromUrl(data) {\n const url = itemFromSingleOrMultiple(data.url, data.index);\n if (!url) {\n return data.fallback;\n }\n const response = await fetch(url);\n if (response.ok) {\n return (await response.json());\n }\n getLogger().error(`${errorPrefix} ${response.status} while retrieving config file`);\n return data.fallback;\n}\nconst generatedTrue = \"true\", generatedFalse = \"false\", canvasTag = \"canvas\", getCanvasFromContainer = (domContainer) => {\n let canvasEl;\n if (domContainer instanceof HTMLCanvasElement || domContainer.tagName.toLowerCase() === canvasTag) {\n canvasEl = domContainer;\n if (!canvasEl.dataset[generatedAttribute]) {\n canvasEl.dataset[generatedAttribute] = generatedFalse;\n }\n }\n else {\n const existingCanvases = domContainer.getElementsByTagName(canvasTag);\n if (existingCanvases.length) {\n const firstIndex = 0;\n canvasEl = existingCanvases[firstIndex];\n canvasEl.dataset[generatedAttribute] = generatedFalse;\n }\n else {\n canvasEl = document.createElement(canvasTag);\n canvasEl.dataset[generatedAttribute] = generatedTrue;\n domContainer.appendChild(canvasEl);\n }\n }\n const fullPercent = \"100%\";\n if (!canvasEl.style.width) {\n canvasEl.style.width = fullPercent;\n }\n if (!canvasEl.style.height) {\n canvasEl.style.height = fullPercent;\n }\n return canvasEl;\n}, getDomContainer = (id, source) => {\n let domContainer = source ?? document.getElementById(id);\n if (domContainer) {\n return domContainer;\n }\n domContainer = document.createElement(\"div\");\n domContainer.id = id;\n domContainer.dataset[generatedAttribute] = generatedTrue;\n document.body.append(domContainer);\n return domContainer;\n};\nexport class Engine {\n constructor() {\n this._configs = new Map();\n this._domArray = [];\n this._eventDispatcher = new EventDispatcher();\n this._initialized = false;\n this.plugins = [];\n this._initializers = {\n interactors: new Map(),\n movers: new Map(),\n updaters: new Map(),\n };\n this.interactors = new Map();\n this.movers = new Map();\n this.updaters = new Map();\n this.presets = new Map();\n this.effectDrawers = new Map();\n this.shapeDrawers = new Map();\n this.pathGenerators = new Map();\n }\n get configs() {\n const res = {};\n for (const [name, config] of this._configs) {\n res[name] = config;\n }\n return res;\n }\n get items() {\n return this._domArray;\n }\n get version() {\n return \"3.5.0\";\n }\n addConfig(config) {\n const key = config.key ?? config.name ?? \"default\";\n this._configs.set(key, config);\n this._eventDispatcher.dispatchEvent(EventType.configAdded, { data: { name: key, config } });\n }\n async addEffect(effect, drawer, refresh = true) {\n executeOnSingleOrMultiple(effect, type => {\n if (!this.getEffectDrawer(type)) {\n this.effectDrawers.set(type, drawer);\n }\n });\n await this.refresh(refresh);\n }\n addEventListener(type, listener) {\n this._eventDispatcher.addEventListener(type, listener);\n }\n async addInteractor(name, interactorInitializer, refresh = true) {\n this._initializers.interactors.set(name, interactorInitializer);\n await this.refresh(refresh);\n }\n async addMover(name, moverInitializer, refresh = true) {\n this._initializers.movers.set(name, moverInitializer);\n await this.refresh(refresh);\n }\n async addParticleUpdater(name, updaterInitializer, refresh = true) {\n this._initializers.updaters.set(name, updaterInitializer);\n await this.refresh(refresh);\n }\n async addPathGenerator(name, generator, refresh = true) {\n if (!this.getPathGenerator(name)) {\n this.pathGenerators.set(name, generator);\n }\n await this.refresh(refresh);\n }\n async addPlugin(plugin, refresh = true) {\n if (!this.getPlugin(plugin.id)) {\n this.plugins.push(plugin);\n }\n await this.refresh(refresh);\n }\n async addPreset(preset, options, override = false, refresh = true) {\n if (override || !this.getPreset(preset)) {\n this.presets.set(preset, options);\n }\n await this.refresh(refresh);\n }\n async addShape(drawer, refresh = true) {\n for (const validType of drawer.validTypes) {\n if (this.getShapeDrawer(validType)) {\n continue;\n }\n this.shapeDrawers.set(validType, drawer);\n }\n await this.refresh(refresh);\n }\n clearPlugins(container) {\n this.updaters.delete(container);\n this.movers.delete(container);\n this.interactors.delete(container);\n }\n dispatchEvent(type, args) {\n this._eventDispatcher.dispatchEvent(type, args);\n }\n dom() {\n return this.items;\n }\n domItem(index) {\n return this.item(index);\n }\n async getAvailablePlugins(container) {\n const res = new Map();\n for (const plugin of this.plugins) {\n if (plugin.needsPlugin(container.actualOptions)) {\n res.set(plugin.id, await plugin.getPlugin(container));\n }\n }\n return res;\n }\n getEffectDrawer(type) {\n return this.effectDrawers.get(type);\n }\n async getInteractors(container, force = false) {\n return getItemsFromInitializer(container, this.interactors, this._initializers.interactors, force);\n }\n async getMovers(container, force = false) {\n return getItemsFromInitializer(container, this.movers, this._initializers.movers, force);\n }\n getPathGenerator(type) {\n return this.pathGenerators.get(type);\n }\n getPlugin(plugin) {\n return this.plugins.find(t => t.id === plugin);\n }\n getPreset(preset) {\n return this.presets.get(preset);\n }\n getShapeDrawer(type) {\n return this.shapeDrawers.get(type);\n }\n getSupportedEffects() {\n return this.effectDrawers.keys();\n }\n getSupportedShapes() {\n return this.shapeDrawers.keys();\n }\n async getUpdaters(container, force = false) {\n return getItemsFromInitializer(container, this.updaters, this._initializers.updaters, force);\n }\n init() {\n if (this._initialized) {\n return;\n }\n this._initialized = true;\n }\n item(index) {\n const { items } = this, item = items[index];\n if (!item || item.destroyed) {\n const deleteCount = 1;\n items.splice(index, deleteCount);\n return;\n }\n return item;\n }\n async load(params) {\n const randomFactor = 10000, id = params.id ?? params.element?.id ?? `tsparticles${Math.floor(getRandom() * randomFactor)}`, { index, url } = params, options = url ? await getDataFromUrl({ fallback: params.options, url, index }) : params.options;\n const currentOptions = itemFromSingleOrMultiple(options, index), { items } = this, oldIndex = items.findIndex(v => v.id.description === id), minIndex = 0, newItem = new Container(this, id, currentOptions);\n if (oldIndex >= minIndex) {\n const old = this.item(oldIndex), one = 1, none = 0, deleteCount = old ? one : none;\n if (old && !old.destroyed) {\n old.destroy(false);\n }\n items.splice(oldIndex, deleteCount, newItem);\n }\n else {\n items.push(newItem);\n }\n const domContainer = getDomContainer(id, params.element), canvasEl = getCanvasFromContainer(domContainer);\n newItem.canvas.loadCanvas(canvasEl);\n await newItem.start();\n return newItem;\n }\n loadOptions(options, sourceOptions) {\n this.plugins.forEach(plugin => plugin.loadOptions?.(options, sourceOptions));\n }\n loadParticlesOptions(container, options, ...sourceOptions) {\n const updaters = this.updaters.get(container);\n if (!updaters) {\n return;\n }\n updaters.forEach(updater => updater.loadOptions?.(options, ...sourceOptions));\n }\n async refresh(refresh = true) {\n if (!refresh) {\n return;\n }\n await Promise.all(this.items.map(t => t.refresh()));\n }\n removeEventListener(type, listener) {\n this._eventDispatcher.removeEventListener(type, listener);\n }\n setOnClickHandler(callback) {\n const { items } = this;\n if (!items.length) {\n throw new Error(`${errorPrefix} can only set click handlers after calling tsParticles.load()`);\n }\n items.forEach(item => item.addClickHandler(callback));\n }\n}\n","import { getRangeValue, parseAlpha } from \"./NumberUtils.js\";\nimport { hslToRgb, hslaToRgba } from \"./ColorUtils.js\";\nvar HslIndexes;\n(function (HslIndexes) {\n HslIndexes[HslIndexes[\"h\"] = 1] = \"h\";\n HslIndexes[HslIndexes[\"s\"] = 2] = \"s\";\n HslIndexes[HslIndexes[\"l\"] = 3] = \"l\";\n HslIndexes[HslIndexes[\"a\"] = 5] = \"a\";\n})(HslIndexes || (HslIndexes = {}));\nexport class HslColorManager {\n constructor() {\n this.key = \"hsl\";\n this.stringPrefix = \"hsl\";\n }\n handleColor(color) {\n const colorValue = color.value, hslColor = colorValue.hsl ?? color.value;\n if (hslColor.h !== undefined && hslColor.s !== undefined && hslColor.l !== undefined) {\n return hslToRgb(hslColor);\n }\n }\n handleRangeColor(color) {\n const colorValue = color.value, hslColor = colorValue.hsl ?? color.value;\n if (hslColor.h !== undefined && hslColor.l !== undefined) {\n return hslToRgb({\n h: getRangeValue(hslColor.h),\n l: getRangeValue(hslColor.l),\n s: getRangeValue(hslColor.s),\n });\n }\n }\n parseString(input) {\n if (!input.startsWith(\"hsl\")) {\n return;\n }\n const regex = /hsla?\\(\\s*(\\d+)\\s*,\\s*(\\d+)%\\s*,\\s*(\\d+)%\\s*(,\\s*([\\d.%]+)\\s*)?\\)/i, result = regex.exec(input), minLength = 4, defaultAlpha = 1, radix = 10;\n return result\n ? hslaToRgba({\n a: result.length > minLength ? parseAlpha(result[HslIndexes.a]) : defaultAlpha,\n h: parseInt(result[HslIndexes.h], radix),\n l: parseInt(result[HslIndexes.l], radix),\n s: parseInt(result[HslIndexes.s], radix),\n })\n : undefined;\n }\n}\n","import { getRangeValue, parseAlpha } from \"./NumberUtils.js\";\nvar RgbIndexes;\n(function (RgbIndexes) {\n RgbIndexes[RgbIndexes[\"r\"] = 1] = \"r\";\n RgbIndexes[RgbIndexes[\"g\"] = 2] = \"g\";\n RgbIndexes[RgbIndexes[\"b\"] = 3] = \"b\";\n RgbIndexes[RgbIndexes[\"a\"] = 5] = \"a\";\n})(RgbIndexes || (RgbIndexes = {}));\nexport class RgbColorManager {\n constructor() {\n this.key = \"rgb\";\n this.stringPrefix = \"rgb\";\n }\n handleColor(color) {\n const colorValue = color.value, rgbColor = colorValue.rgb ?? color.value;\n if (rgbColor.r !== undefined) {\n return rgbColor;\n }\n }\n handleRangeColor(color) {\n const colorValue = color.value, rgbColor = colorValue.rgb ?? color.value;\n if (rgbColor.r !== undefined) {\n return {\n r: getRangeValue(rgbColor.r),\n g: getRangeValue(rgbColor.g),\n b: getRangeValue(rgbColor.b),\n };\n }\n }\n parseString(input) {\n if (!input.startsWith(this.stringPrefix)) {\n return;\n }\n const regex = /rgba?\\(\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d+)\\s*(,\\s*([\\d.%]+)\\s*)?\\)/i, result = regex.exec(input), radix = 10, minLength = 4, defaultAlpha = 1;\n return result\n ? {\n a: result.length > minLength ? parseAlpha(result[RgbIndexes.a]) : defaultAlpha,\n b: parseInt(result[RgbIndexes.b], radix),\n g: parseInt(result[RgbIndexes.g], radix),\n r: parseInt(result[RgbIndexes.r], radix),\n }\n : undefined;\n }\n}\n","import { Engine } from \"./Core/Engine.js\";\nimport { HslColorManager } from \"./Utils/HslColorManager.js\";\nimport { RgbColorManager } from \"./Utils/RgbColorManager.js\";\nimport { addColorManager } from \"./Utils/ColorUtils.js\";\nexport function init() {\n const rgbColorManager = new RgbColorManager(), hslColorManager = new HslColorManager();\n addColorManager(rgbColorManager);\n addColorManager(hslColorManager);\n const engine = new Engine();\n engine.init();\n return engine;\n}\n","import { InteractorType } from \"../../Enums/Types/InteractorType.js\";\nexport class ExternalInteractorBase {\n constructor(container) {\n this.type = InteractorType.external;\n this.container = container;\n }\n}\n","import { InteractorType } from \"../../Enums/Types/InteractorType.js\";\nexport class ParticlesInteractorBase {\n constructor(container) {\n this.type = InteractorType.particles;\n this.container = container;\n }\n}\n","export var RotateDirection;\n(function (RotateDirection) {\n RotateDirection[\"clockwise\"] = \"clockwise\";\n RotateDirection[\"counterClockwise\"] = \"counter-clockwise\";\n RotateDirection[\"random\"] = \"random\";\n})(RotateDirection || (RotateDirection = {}));\n","export var GradientType;\n(function (GradientType) {\n GradientType[\"linear\"] = \"linear\";\n GradientType[\"radial\"] = \"radial\";\n GradientType[\"random\"] = \"random\";\n})(GradientType || (GradientType = {}));\n","export var EasingType;\n(function (EasingType) {\n EasingType[\"easeInBack\"] = \"ease-in-back\";\n EasingType[\"easeInCirc\"] = \"ease-in-circ\";\n EasingType[\"easeInCubic\"] = \"ease-in-cubic\";\n EasingType[\"easeInLinear\"] = \"ease-in-linear\";\n EasingType[\"easeInQuad\"] = \"ease-in-quad\";\n EasingType[\"easeInQuart\"] = \"ease-in-quart\";\n EasingType[\"easeInQuint\"] = \"ease-in-quint\";\n EasingType[\"easeInExpo\"] = \"ease-in-expo\";\n EasingType[\"easeInSine\"] = \"ease-in-sine\";\n EasingType[\"easeOutBack\"] = \"ease-out-back\";\n EasingType[\"easeOutCirc\"] = \"ease-out-circ\";\n EasingType[\"easeOutCubic\"] = \"ease-out-cubic\";\n EasingType[\"easeOutLinear\"] = \"ease-out-linear\";\n EasingType[\"easeOutQuad\"] = \"ease-out-quad\";\n EasingType[\"easeOutQuart\"] = \"ease-out-quart\";\n EasingType[\"easeOutQuint\"] = \"ease-out-quint\";\n EasingType[\"easeOutExpo\"] = \"ease-out-expo\";\n EasingType[\"easeOutSine\"] = \"ease-out-sine\";\n EasingType[\"easeInOutBack\"] = \"ease-in-out-back\";\n EasingType[\"easeInOutCirc\"] = \"ease-in-out-circ\";\n EasingType[\"easeInOutCubic\"] = \"ease-in-out-cubic\";\n EasingType[\"easeInOutLinear\"] = \"ease-in-out-linear\";\n EasingType[\"easeInOutQuad\"] = \"ease-in-out-quad\";\n EasingType[\"easeInOutQuart\"] = \"ease-in-out-quart\";\n EasingType[\"easeInOutQuint\"] = \"ease-in-out-quint\";\n EasingType[\"easeInOutExpo\"] = \"ease-in-out-expo\";\n EasingType[\"easeInOutSine\"] = \"ease-in-out-sine\";\n})(EasingType || (EasingType = {}));\n","import { init } from \"./init.js\";\nimport { isSsr } from \"./Utils/Utils.js\";\nconst tsParticles = init();\nif (!isSsr()) {\n window.tsParticles = tsParticles;\n}\nexport * from \"./exports.js\";\nexport * from \"./export-types.js\";\nexport { tsParticles };\n","import { defineComponent as l, onMounted as p, nextTick as u, onUnmounted as m, openBlock as f, createElementBlock as v } from \"vue\";\nimport { tsParticles as o } from \"@tsparticles/engine\";\nconst _ = [\"id\"], w = /* @__PURE__ */ l({\n __name: \"vue-particles\",\n props: {\n id: {},\n options: {},\n url: {}\n },\n emits: [\"particlesLoaded\"],\n setup(r, { emit: e }) {\n let t, i;\n const n = r, c = e;\n addEventListener(\"particlesInit\", (s) => {\n i = s.detail, a();\n });\n const a = async () => {\n i || (i = o), t = await i.load({\n id: n.id,\n url: n.url,\n options: n.options\n }), c(\"particlesLoaded\", t);\n };\n return p(() => {\n u(() => {\n if (!n.id)\n throw new Error(\"Prop 'id' is required!\");\n a();\n });\n }), m(() => {\n t && (t.destroy(), t = void 0);\n }), (s, d) => (f(), v(\"div\", { id: s.id }, null, 8, _));\n }\n}), P = (r, e) => {\n r.component(\"vue-particles\", w), (async () => (o.init(), e.init && await e.init(o), dispatchEvent(new CustomEvent(\"particlesInit\", { detail: o }))))();\n};\nexport {\n P as default\n};\n","import { RotateDirection, clamp, getDistance, getDistances, getRandom, getRangeValue, } from \"@tsparticles/engine\";\nconst half = 0.5, minVelocity = 0, identity = 1, moveSpeedFactor = 60, minSpinRadius = 0, spinFactor = 0.01;\nexport function applyDistance(particle) {\n const initialPosition = particle.initialPosition, { dx, dy } = getDistances(initialPosition, particle.position), dxFixed = Math.abs(dx), dyFixed = Math.abs(dy), { maxDistance } = particle.retina, hDistance = maxDistance.horizontal, vDistance = maxDistance.vertical;\n if (!hDistance && !vDistance) {\n return;\n }\n const hasHDistance = (hDistance && dxFixed >= hDistance) ?? false, hasVDistance = (vDistance && dyFixed >= vDistance) ?? false;\n if ((hasHDistance || hasVDistance) && !particle.misplaced) {\n particle.misplaced = (!!hDistance && dxFixed > hDistance) || (!!vDistance && dyFixed > vDistance);\n if (hDistance) {\n particle.velocity.x = particle.velocity.y * half - particle.velocity.x;\n }\n if (vDistance) {\n particle.velocity.y = particle.velocity.x * half - particle.velocity.y;\n }\n }\n else if ((!hDistance || dxFixed < hDistance) && (!vDistance || dyFixed < vDistance) && particle.misplaced) {\n particle.misplaced = false;\n }\n else if (particle.misplaced) {\n const pos = particle.position, vel = particle.velocity;\n if (hDistance &&\n ((pos.x < initialPosition.x && vel.x < minVelocity) || (pos.x > initialPosition.x && vel.x > minVelocity))) {\n vel.x *= -getRandom();\n }\n if (vDistance &&\n ((pos.y < initialPosition.y && vel.y < minVelocity) || (pos.y > initialPosition.y && vel.y > minVelocity))) {\n vel.y *= -getRandom();\n }\n }\n}\nexport function move(particle, moveOptions, moveSpeed, maxSpeed, moveDrift, delta) {\n applyPath(particle, delta);\n const gravityOptions = particle.gravity, gravityFactor = gravityOptions?.enable && gravityOptions.inverse ? -identity : identity;\n if (moveDrift && moveSpeed) {\n particle.velocity.x += (moveDrift * delta.factor) / (moveSpeedFactor * moveSpeed);\n }\n if (gravityOptions?.enable && moveSpeed) {\n particle.velocity.y +=\n (gravityFactor * (gravityOptions.acceleration * delta.factor)) / (moveSpeedFactor * moveSpeed);\n }\n const decay = particle.moveDecay;\n particle.velocity.multTo(decay);\n const velocity = particle.velocity.mult(moveSpeed);\n if (gravityOptions?.enable &&\n maxSpeed > minVelocity &&\n ((!gravityOptions.inverse && velocity.y >= minVelocity && velocity.y >= maxSpeed) ||\n (gravityOptions.inverse && velocity.y <= minVelocity && velocity.y <= -maxSpeed))) {\n velocity.y = gravityFactor * maxSpeed;\n if (moveSpeed) {\n particle.velocity.y = velocity.y / moveSpeed;\n }\n }\n const zIndexOptions = particle.options.zIndex, zVelocityFactor = (identity - particle.zIndexFactor) ** zIndexOptions.velocityRate;\n velocity.multTo(zVelocityFactor);\n const { position } = particle;\n position.addTo(velocity);\n if (moveOptions.vibrate) {\n position.x += Math.sin(position.x * Math.cos(position.y));\n position.y += Math.cos(position.y * Math.sin(position.x));\n }\n}\nexport function spin(particle, moveSpeed) {\n const container = particle.container;\n if (!particle.spin) {\n return;\n }\n const updateFunc = {\n x: particle.spin.direction === RotateDirection.clockwise ? Math.cos : Math.sin,\n y: particle.spin.direction === RotateDirection.clockwise ? Math.sin : Math.cos,\n };\n particle.position.x = particle.spin.center.x + particle.spin.radius * updateFunc.x(particle.spin.angle);\n particle.position.y = particle.spin.center.y + particle.spin.radius * updateFunc.y(particle.spin.angle);\n particle.spin.radius += particle.spin.acceleration;\n const maxCanvasSize = Math.max(container.canvas.size.width, container.canvas.size.height), halfMaxSize = maxCanvasSize * half;\n if (particle.spin.radius > halfMaxSize) {\n particle.spin.radius = halfMaxSize;\n particle.spin.acceleration *= -identity;\n }\n else if (particle.spin.radius < minSpinRadius) {\n particle.spin.radius = minSpinRadius;\n particle.spin.acceleration *= -identity;\n }\n particle.spin.angle += moveSpeed * spinFactor * (identity - particle.spin.radius / maxCanvasSize);\n}\nexport function applyPath(particle, delta) {\n const particlesOptions = particle.options, pathOptions = particlesOptions.move.path, pathEnabled = pathOptions.enable;\n if (!pathEnabled) {\n return;\n }\n if (particle.lastPathTime <= particle.pathDelay) {\n particle.lastPathTime += delta.value;\n return;\n }\n const path = particle.pathGenerator?.generate(particle, delta);\n if (path) {\n particle.velocity.addTo(path);\n }\n if (pathOptions.clamp) {\n particle.velocity.x = clamp(particle.velocity.x, -identity, identity);\n particle.velocity.y = clamp(particle.velocity.y, -identity, identity);\n }\n particle.lastPathTime -= particle.pathDelay;\n}\nexport function getProximitySpeedFactor(particle) {\n return particle.slow.inRange ? particle.slow.factor : identity;\n}\nexport function initSpin(particle) {\n const container = particle.container, options = particle.options, spinOptions = options.move.spin;\n if (!spinOptions.enable) {\n return;\n }\n const spinPos = spinOptions.position ?? { x: 50, y: 50 }, spinFactor = 0.01, spinCenter = {\n x: spinPos.x * spinFactor * container.canvas.size.width,\n y: spinPos.y * spinFactor * container.canvas.size.height,\n }, pos = particle.getPosition(), distance = getDistance(pos, spinCenter), spinAcceleration = getRangeValue(spinOptions.acceleration);\n particle.retina.spinAcceleration = spinAcceleration * container.retina.pixelRatio;\n const minVelocity = 0;\n particle.spin = {\n center: spinCenter,\n direction: particle.velocity.x >= minVelocity ? RotateDirection.clockwise : RotateDirection.counterClockwise,\n angle: particle.velocity.angle,\n radius: distance,\n acceleration: particle.retina.spinAcceleration,\n };\n}\n","import { getRangeMax, getRangeValue } from \"@tsparticles/engine\";\nimport { applyDistance, getProximitySpeedFactor, initSpin, move, spin } from \"./Utils.js\";\nconst diffFactor = 2, defaultSizeFactor = 1, defaultDeltaFactor = 1;\nexport class BaseMover {\n init(particle) {\n const options = particle.options, gravityOptions = options.move.gravity;\n particle.gravity = {\n enable: gravityOptions.enable,\n acceleration: getRangeValue(gravityOptions.acceleration),\n inverse: gravityOptions.inverse,\n };\n initSpin(particle);\n }\n isEnabled(particle) {\n return !particle.destroyed && particle.options.move.enable;\n }\n move(particle, delta) {\n const particleOptions = particle.options, moveOptions = particleOptions.move;\n if (!moveOptions.enable) {\n return;\n }\n const container = particle.container, pxRatio = container.retina.pixelRatio;\n particle.retina.moveSpeed ??= getRangeValue(moveOptions.speed) * pxRatio;\n particle.retina.moveDrift ??= getRangeValue(particle.options.move.drift) * pxRatio;\n const slowFactor = getProximitySpeedFactor(particle), baseSpeed = particle.retina.moveSpeed * container.retina.reduceFactor, moveDrift = particle.retina.moveDrift, maxSize = getRangeMax(particleOptions.size.value) * pxRatio, sizeFactor = moveOptions.size ? particle.getRadius() / maxSize : defaultSizeFactor, deltaFactor = delta.factor || defaultDeltaFactor, moveSpeed = (baseSpeed * sizeFactor * slowFactor * deltaFactor) / diffFactor, maxSpeed = particle.retina.maxSpeed ?? container.retina.maxSpeed;\n if (moveOptions.spin.enable) {\n spin(particle, moveSpeed);\n }\n else {\n move(particle, moveOptions, moveSpeed, maxSpeed, moveDrift, delta);\n }\n applyDistance(particle);\n }\n}\n","import { BaseMover } from \"./BaseMover.js\";\nexport async function loadBaseMover(engine, refresh = true) {\n await engine.addMover(\"base\", () => {\n return Promise.resolve(new BaseMover());\n }, refresh);\n}\n","const double = 2, doublePI = Math.PI * double, minAngle = 0, origin = { x: 0, y: 0 };\nexport function drawCircle(data) {\n const { context, particle, radius } = data;\n if (!particle.circleRange) {\n particle.circleRange = { min: minAngle, max: doublePI };\n }\n const circleRange = particle.circleRange;\n context.arc(origin.x, origin.y, radius, circleRange.min, circleRange.max, false);\n}\n","import { degToRad, isObject } from \"@tsparticles/engine\";\nimport { drawCircle } from \"./Utils.js\";\nconst sides = 12, maxAngle = 360, minAngle = 0;\nexport class CircleDrawer {\n constructor() {\n this.validTypes = [\"circle\"];\n }\n draw(data) {\n drawCircle(data);\n }\n getSidesCount() {\n return sides;\n }\n particleInit(container, particle) {\n const shapeData = particle.shapeData, angle = shapeData?.angle ?? {\n max: maxAngle,\n min: minAngle,\n };\n particle.circleRange = !isObject(angle)\n ? {\n min: minAngle,\n max: degToRad(angle),\n }\n : { min: degToRad(angle.min), max: degToRad(angle.max) };\n }\n}\n","import { CircleDrawer } from \"./CircleDrawer.js\";\nexport async function loadCircleShape(engine, refresh = true) {\n await engine.addShape(new CircleDrawer(), refresh);\n}\n","import { getHslAnimationFromHsl, rangeColorToHsl, updateColor, } from \"@tsparticles/engine\";\nexport class ColorUpdater {\n constructor(container) {\n this.container = container;\n }\n init(particle) {\n const hslColor = rangeColorToHsl(particle.options.color, particle.id, particle.options.reduceDuplicates);\n if (hslColor) {\n particle.color = getHslAnimationFromHsl(hslColor, particle.options.color.animation, this.container.retina.reduceFactor);\n }\n }\n isEnabled(particle) {\n const { h: hAnimation, s: sAnimation, l: lAnimation } = particle.options.color.animation, { color } = particle;\n return (!particle.destroyed &&\n !particle.spawning &&\n ((color?.h.value !== undefined && hAnimation.enable) ||\n (color?.s.value !== undefined && sAnimation.enable) ||\n (color?.l.value !== undefined && lAnimation.enable)));\n }\n update(particle, delta) {\n updateColor(particle.color, delta);\n }\n}\n","import { ColorUpdater } from \"./ColorUpdater.js\";\nexport async function loadColorUpdater(engine, refresh = true) {\n await engine.addParticleUpdater(\"color\", container => {\n return Promise.resolve(new ColorUpdater(container));\n }, refresh);\n}\n","import { getRandom, getRangeValue, initParticleNumericAnimationValue, percentDenominator, updateAnimation, } from \"@tsparticles/engine\";\nexport class OpacityUpdater {\n constructor(container) {\n this.container = container;\n }\n init(particle) {\n const opacityOptions = particle.options.opacity, pxRatio = 1;\n particle.opacity = initParticleNumericAnimationValue(opacityOptions, pxRatio);\n const opacityAnimation = opacityOptions.animation;\n if (opacityAnimation.enable) {\n particle.opacity.velocity =\n (getRangeValue(opacityAnimation.speed) / percentDenominator) * this.container.retina.reduceFactor;\n if (!opacityAnimation.sync) {\n particle.opacity.velocity *= getRandom();\n }\n }\n }\n isEnabled(particle) {\n const none = 0;\n return (!particle.destroyed &&\n !particle.spawning &&\n !!particle.opacity &&\n particle.opacity.enable &&\n ((particle.opacity.maxLoops ?? none) <= none ||\n ((particle.opacity.maxLoops ?? none) > none &&\n (particle.opacity.loops ?? none) < (particle.opacity.maxLoops ?? none))));\n }\n reset(particle) {\n if (particle.opacity) {\n particle.opacity.time = 0;\n particle.opacity.loops = 0;\n }\n }\n update(particle, delta) {\n if (!this.isEnabled(particle) || !particle.opacity) {\n return;\n }\n updateAnimation(particle, particle.opacity, true, particle.options.opacity.animation.destroy, delta);\n }\n}\n","import { OpacityUpdater } from \"./OpacityUpdater.js\";\nexport async function loadOpacityUpdater(engine, refresh = true) {\n await engine.addParticleUpdater(\"opacity\", container => {\n return Promise.resolve(new OpacityUpdater(container));\n }, refresh);\n}\n","import { OutMode, OutModeDirection, getRangeValue } from \"@tsparticles/engine\";\nconst minVelocity = 0, boundsMin = 0;\nexport function bounceHorizontal(data) {\n if ((data.outMode !== OutMode.bounce && data.outMode !== OutMode.split) ||\n (data.direction !== OutModeDirection.left && data.direction !== OutModeDirection.right)) {\n return;\n }\n if (data.bounds.right < boundsMin && data.direction === OutModeDirection.left) {\n data.particle.position.x = data.size + data.offset.x;\n }\n else if (data.bounds.left > data.canvasSize.width && data.direction === OutModeDirection.right) {\n data.particle.position.x = data.canvasSize.width - data.size - data.offset.x;\n }\n const velocity = data.particle.velocity.x;\n let bounced = false;\n if ((data.direction === OutModeDirection.right &&\n data.bounds.right >= data.canvasSize.width &&\n velocity > minVelocity) ||\n (data.direction === OutModeDirection.left && data.bounds.left <= boundsMin && velocity < minVelocity)) {\n const newVelocity = getRangeValue(data.particle.options.bounce.horizontal.value);\n data.particle.velocity.x *= -newVelocity;\n bounced = true;\n }\n if (!bounced) {\n return;\n }\n const minPos = data.offset.x + data.size;\n if (data.bounds.right >= data.canvasSize.width && data.direction === OutModeDirection.right) {\n data.particle.position.x = data.canvasSize.width - minPos;\n }\n else if (data.bounds.left <= boundsMin && data.direction === OutModeDirection.left) {\n data.particle.position.x = minPos;\n }\n if (data.outMode === OutMode.split) {\n data.particle.destroy();\n }\n}\nexport function bounceVertical(data) {\n if ((data.outMode !== OutMode.bounce && data.outMode !== OutMode.split) ||\n (data.direction !== OutModeDirection.bottom && data.direction !== OutModeDirection.top)) {\n return;\n }\n if (data.bounds.bottom < boundsMin && data.direction === OutModeDirection.top) {\n data.particle.position.y = data.size + data.offset.y;\n }\n else if (data.bounds.top > data.canvasSize.height && data.direction === OutModeDirection.bottom) {\n data.particle.position.y = data.canvasSize.height - data.size - data.offset.y;\n }\n const velocity = data.particle.velocity.y;\n let bounced = false;\n if ((data.direction === OutModeDirection.bottom &&\n data.bounds.bottom >= data.canvasSize.height &&\n velocity > minVelocity) ||\n (data.direction === OutModeDirection.top && data.bounds.top <= boundsMin && velocity < minVelocity)) {\n const newVelocity = getRangeValue(data.particle.options.bounce.vertical.value);\n data.particle.velocity.y *= -newVelocity;\n bounced = true;\n }\n if (!bounced) {\n return;\n }\n const minPos = data.offset.y + data.size;\n if (data.bounds.bottom >= data.canvasSize.height && data.direction === OutModeDirection.bottom) {\n data.particle.position.y = data.canvasSize.height - minPos;\n }\n else if (data.bounds.top <= boundsMin && data.direction === OutModeDirection.top) {\n data.particle.position.y = minPos;\n }\n if (data.outMode === OutMode.split) {\n data.particle.destroy();\n }\n}\n","import { OutMode, calculateBounds, } from \"@tsparticles/engine\";\nimport { bounceHorizontal, bounceVertical } from \"./Utils.js\";\nexport class BounceOutMode {\n constructor(container) {\n this.container = container;\n this.modes = [\n OutMode.bounce,\n OutMode.split,\n ];\n }\n update(particle, direction, delta, outMode) {\n if (!this.modes.includes(outMode)) {\n return;\n }\n const container = this.container;\n let handled = false;\n for (const [, plugin] of container.plugins) {\n if (plugin.particleBounce !== undefined) {\n handled = plugin.particleBounce(particle, delta, direction);\n }\n if (handled) {\n break;\n }\n }\n if (handled) {\n return;\n }\n const pos = particle.getPosition(), offset = particle.offset, size = particle.getRadius(), bounds = calculateBounds(pos, size), canvasSize = container.canvas.size;\n bounceHorizontal({ particle, outMode, direction, bounds, canvasSize, offset, size });\n bounceVertical({ particle, outMode, direction, bounds, canvasSize, offset, size });\n }\n}\n","import { OutMode, ParticleOutType, Vector, getDistances, isPointInside, } from \"@tsparticles/engine\";\nconst minVelocity = 0;\nexport class DestroyOutMode {\n constructor(container) {\n this.container = container;\n this.modes = [OutMode.destroy];\n }\n update(particle, direction, _delta, outMode) {\n if (!this.modes.includes(outMode)) {\n return;\n }\n const container = this.container;\n switch (particle.outType) {\n case ParticleOutType.normal:\n case ParticleOutType.outside:\n if (isPointInside(particle.position, container.canvas.size, Vector.origin, particle.getRadius(), direction)) {\n return;\n }\n break;\n case ParticleOutType.inside: {\n const { dx, dy } = getDistances(particle.position, particle.moveCenter), { x: vx, y: vy } = particle.velocity;\n if ((vx < minVelocity && dx > particle.moveCenter.radius) ||\n (vy < minVelocity && dy > particle.moveCenter.radius) ||\n (vx >= minVelocity && dx < -particle.moveCenter.radius) ||\n (vy >= minVelocity && dy < -particle.moveCenter.radius)) {\n return;\n }\n break;\n }\n }\n container.particles.remove(particle, undefined, true);\n }\n}\n","import { OutMode, OutModeDirection, Vector, isPointInside, } from \"@tsparticles/engine\";\nconst minVelocity = 0;\nexport class NoneOutMode {\n constructor(container) {\n this.container = container;\n this.modes = [OutMode.none];\n }\n update(particle, direction, delta, outMode) {\n if (!this.modes.includes(outMode)) {\n return;\n }\n if ((particle.options.move.distance.horizontal &&\n (direction === OutModeDirection.left || direction === OutModeDirection.right)) ??\n (particle.options.move.distance.vertical &&\n (direction === OutModeDirection.top || direction === OutModeDirection.bottom))) {\n return;\n }\n const gravityOptions = particle.options.move.gravity, container = this.container, canvasSize = container.canvas.size, pRadius = particle.getRadius();\n if (!gravityOptions.enable) {\n if ((particle.velocity.y > minVelocity && particle.position.y <= canvasSize.height + pRadius) ||\n (particle.velocity.y < minVelocity && particle.position.y >= -pRadius) ||\n (particle.velocity.x > minVelocity && particle.position.x <= canvasSize.width + pRadius) ||\n (particle.velocity.x < minVelocity && particle.position.x >= -pRadius)) {\n return;\n }\n if (!isPointInside(particle.position, container.canvas.size, Vector.origin, pRadius, direction)) {\n container.particles.remove(particle);\n }\n }\n else {\n const position = particle.position;\n if ((!gravityOptions.inverse &&\n position.y > canvasSize.height + pRadius &&\n direction === OutModeDirection.bottom) ||\n (gravityOptions.inverse && position.y < -pRadius && direction === OutModeDirection.top)) {\n container.particles.remove(particle);\n }\n }\n }\n}\n","import { OutMode, OutModeDirection, ParticleOutType, Vector, calculateBounds, getDistances, getRandom, isPointInside, randomInRange, } from \"@tsparticles/engine\";\nconst minVelocity = 0, minDistance = 0;\nexport class OutOutMode {\n constructor(container) {\n this.container = container;\n this.modes = [OutMode.out];\n }\n update(particle, direction, delta, outMode) {\n if (!this.modes.includes(outMode)) {\n return;\n }\n const container = this.container;\n switch (particle.outType) {\n case ParticleOutType.inside: {\n const { x: vx, y: vy } = particle.velocity;\n const circVec = Vector.origin;\n circVec.length = particle.moveCenter.radius;\n circVec.angle = particle.velocity.angle + Math.PI;\n circVec.addTo(Vector.create(particle.moveCenter));\n const { dx, dy } = getDistances(particle.position, circVec);\n if ((vx <= minVelocity && dx >= minDistance) ||\n (vy <= minVelocity && dy >= minDistance) ||\n (vx >= minVelocity && dx <= minDistance) ||\n (vy >= minVelocity && dy <= minDistance)) {\n return;\n }\n particle.position.x = Math.floor(randomInRange({\n min: 0,\n max: container.canvas.size.width,\n }));\n particle.position.y = Math.floor(randomInRange({\n min: 0,\n max: container.canvas.size.height,\n }));\n const { dx: newDx, dy: newDy } = getDistances(particle.position, particle.moveCenter);\n particle.direction = Math.atan2(-newDy, -newDx);\n particle.velocity.angle = particle.direction;\n break;\n }\n default: {\n if (isPointInside(particle.position, container.canvas.size, Vector.origin, particle.getRadius(), direction)) {\n return;\n }\n switch (particle.outType) {\n case ParticleOutType.outside: {\n particle.position.x =\n Math.floor(randomInRange({\n min: -particle.moveCenter.radius,\n max: particle.moveCenter.radius,\n })) + particle.moveCenter.x;\n particle.position.y =\n Math.floor(randomInRange({\n min: -particle.moveCenter.radius,\n max: particle.moveCenter.radius,\n })) + particle.moveCenter.y;\n const { dx, dy } = getDistances(particle.position, particle.moveCenter);\n if (particle.moveCenter.radius) {\n particle.direction = Math.atan2(dy, dx);\n particle.velocity.angle = particle.direction;\n }\n break;\n }\n case ParticleOutType.normal: {\n const warp = particle.options.move.warp, canvasSize = container.canvas.size, newPos = {\n bottom: canvasSize.height + particle.getRadius() + particle.offset.y,\n left: -particle.getRadius() - particle.offset.x,\n right: canvasSize.width + particle.getRadius() + particle.offset.x,\n top: -particle.getRadius() - particle.offset.y,\n }, sizeValue = particle.getRadius(), nextBounds = calculateBounds(particle.position, sizeValue);\n if (direction === OutModeDirection.right &&\n nextBounds.left > canvasSize.width + particle.offset.x) {\n particle.position.x = newPos.left;\n particle.initialPosition.x = particle.position.x;\n if (!warp) {\n particle.position.y = getRandom() * canvasSize.height;\n particle.initialPosition.y = particle.position.y;\n }\n }\n else if (direction === OutModeDirection.left && nextBounds.right < -particle.offset.x) {\n particle.position.x = newPos.right;\n particle.initialPosition.x = particle.position.x;\n if (!warp) {\n particle.position.y = getRandom() * canvasSize.height;\n particle.initialPosition.y = particle.position.y;\n }\n }\n if (direction === OutModeDirection.bottom &&\n nextBounds.top > canvasSize.height + particle.offset.y) {\n if (!warp) {\n particle.position.x = getRandom() * canvasSize.width;\n particle.initialPosition.x = particle.position.x;\n }\n particle.position.y = newPos.top;\n particle.initialPosition.y = particle.position.y;\n }\n else if (direction === OutModeDirection.top && nextBounds.bottom < -particle.offset.y) {\n if (!warp) {\n particle.position.x = getRandom() * canvasSize.width;\n particle.initialPosition.x = particle.position.x;\n }\n particle.position.y = newPos.bottom;\n particle.initialPosition.y = particle.position.y;\n }\n break;\n }\n }\n break;\n }\n }\n }\n}\n","import { OutMode, OutModeDirection, } from \"@tsparticles/engine\";\nimport { BounceOutMode } from \"./BounceOutMode.js\";\nimport { DestroyOutMode } from \"./DestroyOutMode.js\";\nimport { NoneOutMode } from \"./NoneOutMode.js\";\nimport { OutOutMode } from \"./OutOutMode.js\";\nconst checkOutMode = (outModes, outMode) => {\n return (outModes.default === outMode ||\n outModes.bottom === outMode ||\n outModes.left === outMode ||\n outModes.right === outMode ||\n outModes.top === outMode);\n};\nexport class OutOfCanvasUpdater {\n constructor(container) {\n this._updateOutMode = (particle, delta, outMode, direction) => {\n for (const updater of this.updaters) {\n updater.update(particle, direction, delta, outMode);\n }\n };\n this.container = container;\n this.updaters = [];\n }\n init(particle) {\n this.updaters = [];\n const outModes = particle.options.move.outModes;\n if (checkOutMode(outModes, OutMode.bounce)) {\n this.updaters.push(new BounceOutMode(this.container));\n }\n else if (checkOutMode(outModes, OutMode.out)) {\n this.updaters.push(new OutOutMode(this.container));\n }\n else if (checkOutMode(outModes, OutMode.destroy)) {\n this.updaters.push(new DestroyOutMode(this.container));\n }\n else if (checkOutMode(outModes, OutMode.none)) {\n this.updaters.push(new NoneOutMode(this.container));\n }\n }\n isEnabled(particle) {\n return !particle.destroyed && !particle.spawning;\n }\n update(particle, delta) {\n const outModes = particle.options.move.outModes;\n this._updateOutMode(particle, delta, outModes.bottom ?? outModes.default, OutModeDirection.bottom);\n this._updateOutMode(particle, delta, outModes.left ?? outModes.default, OutModeDirection.left);\n this._updateOutMode(particle, delta, outModes.right ?? outModes.default, OutModeDirection.right);\n this._updateOutMode(particle, delta, outModes.top ?? outModes.default, OutModeDirection.top);\n }\n}\n","import { OutOfCanvasUpdater } from \"./OutOfCanvasUpdater.js\";\nexport async function loadOutModesUpdater(engine, refresh = true) {\n await engine.addParticleUpdater(\"outModes\", container => {\n return Promise.resolve(new OutOfCanvasUpdater(container));\n }, refresh);\n}\n","import { getRandom, percentDenominator, updateAnimation, } from \"@tsparticles/engine\";\nconst minLoops = 0;\nexport class SizeUpdater {\n init(particle) {\n const container = particle.container, sizeOptions = particle.options.size, sizeAnimation = sizeOptions.animation;\n if (sizeAnimation.enable) {\n particle.size.velocity =\n ((particle.retina.sizeAnimationSpeed ?? container.retina.sizeAnimationSpeed) / percentDenominator) *\n container.retina.reduceFactor;\n if (!sizeAnimation.sync) {\n particle.size.velocity *= getRandom();\n }\n }\n }\n isEnabled(particle) {\n return (!particle.destroyed &&\n !particle.spawning &&\n particle.size.enable &&\n ((particle.size.maxLoops ?? minLoops) <= minLoops ||\n ((particle.size.maxLoops ?? minLoops) > minLoops &&\n (particle.size.loops ?? minLoops) < (particle.size.maxLoops ?? minLoops))));\n }\n reset(particle) {\n particle.size.loops = minLoops;\n }\n update(particle, delta) {\n if (!this.isEnabled(particle)) {\n return;\n }\n updateAnimation(particle, particle.size, true, particle.options.size.animation.destroy, delta);\n }\n}\n","import { SizeUpdater } from \"./SizeUpdater.js\";\nexport async function loadSizeUpdater(engine, refresh = true) {\n await engine.addParticleUpdater(\"size\", () => {\n return Promise.resolve(new SizeUpdater());\n }, refresh);\n}\n","import { loadBaseMover } from \"@tsparticles/move-base\";\nimport { loadCircleShape } from \"@tsparticles/shape-circle\";\nimport { loadColorUpdater } from \"@tsparticles/updater-color\";\nimport { loadOpacityUpdater } from \"@tsparticles/updater-opacity\";\nimport { loadOutModesUpdater } from \"@tsparticles/updater-out-modes\";\nimport { loadSizeUpdater } from \"@tsparticles/updater-size\";\nexport async function loadBasic(engine, refresh = true) {\n await loadBaseMover(engine, false);\n await loadCircleShape(engine, false);\n await loadColorUpdater(engine, false);\n await loadOpacityUpdater(engine, false);\n await loadOutModesUpdater(engine, false);\n await loadSizeUpdater(engine, false);\n await engine.refresh(refresh);\n}\n","import { EasingType, addEasing } from \"@tsparticles/engine\";\nexport async function loadEasingQuadPlugin() {\n addEasing(EasingType.easeInQuad, value => value ** 2);\n addEasing(EasingType.easeOutQuad, value => 1 - (1 - value) ** 2);\n addEasing(EasingType.easeInOutQuad, value => (value < 0.5 ? 2 * value ** 2 : 1 - (-2 * value + 2) ** 2 / 2));\n await Promise.resolve();\n}\n","export function drawEmoji(data) {\n const { context, particle, radius, opacity } = data, emojiData = particle.emojiData, double = 2, diameter = radius * double, previousAlpha = context.globalAlpha;\n if (!emojiData) {\n return;\n }\n context.globalAlpha = opacity;\n context.drawImage(emojiData, -radius, -radius, diameter, diameter);\n context.globalAlpha = previousAlpha;\n}\n","import { executeOnSingleOrMultiple, getRangeMax, isInArray, itemFromSingleOrMultiple, loadFont, } from \"@tsparticles/engine\";\nimport { drawEmoji } from \"./Utils.js\";\nconst defaultFont = '\"Twemoji Mozilla\", Apple Color Emoji, \"Segoe UI Emoji\", \"Noto Color Emoji\", \"EmojiOne Color\"';\nexport class EmojiDrawer {\n constructor() {\n this.validTypes = [\"emoji\"];\n this._emojiShapeDict = new Map();\n }\n destroy() {\n for (const [key, emojiData] of this._emojiShapeDict) {\n if (emojiData instanceof ImageBitmap) {\n emojiData?.close();\n this._emojiShapeDict.delete(key);\n }\n }\n }\n draw(data) {\n drawEmoji(data);\n }\n async init(container) {\n const options = container.actualOptions, { validTypes } = this;\n if (!validTypes.find(t => isInArray(t, options.particles.shape.type))) {\n return;\n }\n const promises = [loadFont(defaultFont)], shapeOptions = validTypes\n .map(t => options.particles.shape.options[t])\n .find(t => !!t);\n if (shapeOptions) {\n executeOnSingleOrMultiple(shapeOptions, shape => {\n if (shape.font) {\n promises.push(loadFont(shape.font));\n }\n });\n }\n await Promise.all(promises);\n }\n particleDestroy(particle) {\n delete particle.emojiData;\n }\n particleInit(container, particle) {\n const double = 2, shapeData = particle.shapeData;\n if (!shapeData?.value) {\n return;\n }\n const emoji = itemFromSingleOrMultiple(shapeData.value, particle.randomIndexData), font = shapeData.font ?? defaultFont;\n if (!emoji) {\n return;\n }\n const key = `${emoji}_${font}`, existingData = this._emojiShapeDict.get(key);\n if (existingData) {\n particle.emojiData = existingData;\n return;\n }\n const canvasSize = getRangeMax(particle.size.value) * double;\n let emojiData;\n const maxSize = getRangeMax(particle.size.value);\n if (typeof OffscreenCanvas !== \"undefined\") {\n const canvas = new OffscreenCanvas(canvasSize, canvasSize), context = canvas.getContext(\"2d\");\n if (!context) {\n return;\n }\n context.font = `400 ${maxSize * double}px ${font}`;\n context.textBaseline = \"middle\";\n context.textAlign = \"center\";\n context.fillText(emoji, maxSize, maxSize);\n emojiData = canvas.transferToImageBitmap();\n }\n else {\n const canvas = document.createElement(\"canvas\");\n canvas.width = canvasSize;\n canvas.height = canvasSize;\n const context = canvas.getContext(\"2d\");\n if (!context) {\n return;\n }\n context.font = `400 ${maxSize * double}px ${font}`;\n context.textBaseline = \"middle\";\n context.textAlign = \"center\";\n context.fillText(emoji, maxSize, maxSize);\n emojiData = canvas;\n }\n this._emojiShapeDict.set(key, emojiData);\n particle.emojiData = emojiData;\n }\n}\n","import { EmojiDrawer } from \"./EmojiDrawer.js\";\nexport async function loadEmojiShape(engine, refresh = true) {\n await engine.addShape(new EmojiDrawer(), refresh);\n}\n","import { Circle, Vector, clamp, getDistances, getEasing, } from \"@tsparticles/engine\";\nconst minFactor = 1, identity = 1, minRadius = 0;\nfunction processAttract(container, position, attractRadius, area, queryCb) {\n const attractOptions = container.actualOptions.interactivity.modes.attract;\n if (!attractOptions) {\n return;\n }\n const query = container.particles.quadTree.query(area, queryCb);\n for (const particle of query) {\n const { dx, dy, distance } = getDistances(particle.position, position), velocity = attractOptions.speed * attractOptions.factor, attractFactor = clamp(getEasing(attractOptions.easing)(identity - distance / attractRadius) * velocity, minFactor, attractOptions.maxSpeed), normVec = Vector.create(!distance ? velocity : (dx / distance) * attractFactor, !distance ? velocity : (dy / distance) * attractFactor);\n particle.position.subFrom(normVec);\n }\n}\nexport function clickAttract(container, enabledCb) {\n if (!container.attract) {\n container.attract = { particles: [] };\n }\n const { attract } = container;\n if (!attract.finish) {\n if (!attract.count) {\n attract.count = 0;\n }\n attract.count++;\n if (attract.count === container.particles.count) {\n attract.finish = true;\n }\n }\n if (attract.clicking) {\n const mousePos = container.interactivity.mouse.clickPosition, attractRadius = container.retina.attractModeDistance;\n if (!attractRadius || attractRadius < minRadius || !mousePos) {\n return;\n }\n processAttract(container, mousePos, attractRadius, new Circle(mousePos.x, mousePos.y, attractRadius), (p) => enabledCb(p));\n }\n else if (attract.clicking === false) {\n attract.particles = [];\n }\n}\nexport function hoverAttract(container, enabledCb) {\n const mousePos = container.interactivity.mouse.position, attractRadius = container.retina.attractModeDistance;\n if (!attractRadius || attractRadius < minRadius || !mousePos) {\n return;\n }\n processAttract(container, mousePos, attractRadius, new Circle(mousePos.x, mousePos.y, attractRadius), (p) => enabledCb(p));\n}\n","import { EasingType } from \"@tsparticles/engine\";\nexport class Attract {\n constructor() {\n this.distance = 200;\n this.duration = 0.4;\n this.easing = EasingType.easeOutQuad;\n this.factor = 1;\n this.maxSpeed = 50;\n this.speed = 1;\n }\n load(data) {\n if (!data) {\n return;\n }\n if (data.distance !== undefined) {\n this.distance = data.distance;\n }\n if (data.duration !== undefined) {\n this.duration = data.duration;\n }\n if (data.easing !== undefined) {\n this.easing = data.easing;\n }\n if (data.factor !== undefined) {\n this.factor = data.factor;\n }\n if (data.maxSpeed !== undefined) {\n this.maxSpeed = data.maxSpeed;\n }\n if (data.speed !== undefined) {\n this.speed = data.speed;\n }\n }\n}\n","import { ExternalInteractorBase, isInArray, millisecondsToSeconds, mouseMoveEvent, } from \"@tsparticles/engine\";\nimport { clickAttract, hoverAttract } from \"./Utils.js\";\nimport { Attract } from \"./Options/Classes/Attract.js\";\nconst attractMode = \"attract\";\nexport class Attractor extends ExternalInteractorBase {\n constructor(engine, container) {\n super(container);\n this._engine = engine;\n if (!container.attract) {\n container.attract = { particles: [] };\n }\n this.handleClickMode = (mode) => {\n const options = this.container.actualOptions, attract = options.interactivity.modes.attract;\n if (!attract || mode !== attractMode) {\n return;\n }\n if (!container.attract) {\n container.attract = { particles: [] };\n }\n container.attract.clicking = true;\n container.attract.count = 0;\n for (const particle of container.attract.particles) {\n if (!this.isEnabled(particle)) {\n continue;\n }\n particle.velocity.setTo(particle.initialVelocity);\n }\n container.attract.particles = [];\n container.attract.finish = false;\n setTimeout(() => {\n if (container.destroyed) {\n return;\n }\n if (!container.attract) {\n container.attract = { particles: [] };\n }\n container.attract.clicking = false;\n }, attract.duration * millisecondsToSeconds);\n };\n }\n clear() {\n }\n init() {\n const container = this.container, attract = container.actualOptions.interactivity.modes.attract;\n if (!attract) {\n return;\n }\n container.retina.attractModeDistance = attract.distance * container.retina.pixelRatio;\n }\n interact() {\n const container = this.container, options = container.actualOptions, mouseMoveStatus = container.interactivity.status === mouseMoveEvent, events = options.interactivity.events, { enable: hoverEnabled, mode: hoverMode } = events.onHover, { enable: clickEnabled, mode: clickMode } = events.onClick;\n if (mouseMoveStatus && hoverEnabled && isInArray(attractMode, hoverMode)) {\n hoverAttract(this.container, p => this.isEnabled(p));\n }\n else if (clickEnabled && isInArray(attractMode, clickMode)) {\n clickAttract(this.container, p => this.isEnabled(p));\n }\n }\n isEnabled(particle) {\n const container = this.container, options = container.actualOptions, mouse = container.interactivity.mouse, events = (particle?.interactivity ?? options.interactivity).events;\n if ((!mouse.position || !events.onHover.enable) && (!mouse.clickPosition || !events.onClick.enable)) {\n return false;\n }\n const hoverMode = events.onHover.mode, clickMode = events.onClick.mode;\n return isInArray(attractMode, hoverMode) || isInArray(attractMode, clickMode);\n }\n loadModeOptions(options, ...sources) {\n if (!options.attract) {\n options.attract = new Attract();\n }\n for (const source of sources) {\n options.attract.load(source?.attract);\n }\n }\n reset() {\n }\n}\n","import { Attractor } from \"./Attractor.js\";\nexport async function loadExternalAttractInteraction(engine, refresh = true) {\n await engine.addInteractor(\"externalAttract\", container => {\n return Promise.resolve(new Attractor(engine, container));\n }, refresh);\n}\nexport * from \"./Options/Classes/Attract.js\";\nexport * from \"./Options/Interfaces/IAttract.js\";\n","import { Circle, DivType, Rectangle, Vector, calculateBounds, circleBounce, circleBounceDataFromParticle, divModeExecute, rectBounce, } from \"@tsparticles/engine\";\nconst squareExp = 2, half = 0.5, halfPI = Math.PI * half, double = 2, toleranceFactor = 10, minRadius = 0;\nfunction processBounce(container, position, radius, area, enabledCb) {\n const query = container.particles.quadTree.query(area, enabledCb);\n for (const particle of query) {\n if (area instanceof Circle) {\n circleBounce(circleBounceDataFromParticle(particle), {\n position,\n radius,\n mass: radius ** squareExp * halfPI,\n velocity: Vector.origin,\n factor: Vector.origin,\n });\n }\n else if (area instanceof Rectangle) {\n rectBounce(particle, calculateBounds(position, radius));\n }\n }\n}\nfunction singleSelectorBounce(container, selector, div, bounceCb) {\n const query = document.querySelectorAll(selector);\n if (!query.length) {\n return;\n }\n query.forEach(item => {\n const elem = item, pxRatio = container.retina.pixelRatio, pos = {\n x: (elem.offsetLeft + elem.offsetWidth * half) * pxRatio,\n y: (elem.offsetTop + elem.offsetHeight * half) * pxRatio,\n }, radius = elem.offsetWidth * half * pxRatio, tolerance = toleranceFactor * pxRatio, area = div.type === DivType.circle\n ? new Circle(pos.x, pos.y, radius + tolerance)\n : new Rectangle(elem.offsetLeft * pxRatio - tolerance, elem.offsetTop * pxRatio - tolerance, elem.offsetWidth * pxRatio + tolerance * double, elem.offsetHeight * pxRatio + tolerance * double);\n bounceCb(pos, radius, area);\n });\n}\nexport function divBounce(container, divs, bounceMode, enabledCb) {\n divModeExecute(bounceMode, divs, (selector, div) => singleSelectorBounce(container, selector, div, (pos, radius, area) => processBounce(container, pos, radius, area, enabledCb)));\n}\nexport function mouseBounce(container, enabledCb) {\n const pxRatio = container.retina.pixelRatio, tolerance = toleranceFactor * pxRatio, mousePos = container.interactivity.mouse.position, radius = container.retina.bounceModeDistance;\n if (!radius || radius < minRadius || !mousePos) {\n return;\n }\n processBounce(container, mousePos, radius, new Circle(mousePos.x, mousePos.y, radius + tolerance), enabledCb);\n}\n","export class Bounce {\n constructor() {\n this.distance = 200;\n }\n load(data) {\n if (!data) {\n return;\n }\n if (data.distance !== undefined) {\n this.distance = data.distance;\n }\n }\n}\n","import { ExternalInteractorBase, isDivModeEnabled, isInArray, mouseMoveEvent, } from \"@tsparticles/engine\";\nimport { divBounce, mouseBounce } from \"./Utils.js\";\nimport { Bounce } from \"./Options/Classes/Bounce.js\";\nconst bounceMode = \"bounce\";\nexport class Bouncer extends ExternalInteractorBase {\n constructor(container) {\n super(container);\n }\n clear() {\n }\n init() {\n const container = this.container, bounce = container.actualOptions.interactivity.modes.bounce;\n if (!bounce) {\n return;\n }\n container.retina.bounceModeDistance = bounce.distance * container.retina.pixelRatio;\n }\n interact() {\n const container = this.container, options = container.actualOptions, events = options.interactivity.events, mouseMoveStatus = container.interactivity.status === mouseMoveEvent, hoverEnabled = events.onHover.enable, hoverMode = events.onHover.mode, divs = events.onDiv;\n if (mouseMoveStatus && hoverEnabled && isInArray(bounceMode, hoverMode)) {\n mouseBounce(this.container, p => this.isEnabled(p));\n }\n else {\n divBounce(this.container, divs, bounceMode, p => this.isEnabled(p));\n }\n }\n isEnabled(particle) {\n const container = this.container, options = container.actualOptions, mouse = container.interactivity.mouse, events = (particle?.interactivity ?? options.interactivity).events, divs = events.onDiv;\n return ((!!mouse.position && events.onHover.enable && isInArray(bounceMode, events.onHover.mode)) ||\n isDivModeEnabled(bounceMode, divs));\n }\n loadModeOptions(options, ...sources) {\n if (!options.bounce) {\n options.bounce = new Bounce();\n }\n for (const source of sources) {\n options.bounce.load(source?.bounce);\n }\n }\n reset() {\n }\n}\n","import { Bouncer } from \"./Bouncer.js\";\nexport async function loadExternalBounceInteraction(engine, refresh = true) {\n await engine.addInteractor(\"externalBounce\", container => {\n return Promise.resolve(new Bouncer(container));\n }, refresh);\n}\nexport * from \"./Options/Classes/Bounce.js\";\nexport * from \"./Options/Interfaces/IBounce.js\";\n","import { OptionsColor, executeOnSingleOrMultiple, isArray, } from \"@tsparticles/engine\";\nexport class BubbleBase {\n constructor() {\n this.distance = 200;\n this.duration = 0.4;\n this.mix = false;\n }\n load(data) {\n if (!data) {\n return;\n }\n if (data.distance !== undefined) {\n this.distance = data.distance;\n }\n if (data.duration !== undefined) {\n this.duration = data.duration;\n }\n if (data.mix !== undefined) {\n this.mix = data.mix;\n }\n if (data.opacity !== undefined) {\n this.opacity = data.opacity;\n }\n if (data.color !== undefined) {\n const sourceColor = isArray(this.color) ? undefined : this.color;\n this.color = executeOnSingleOrMultiple(data.color, color => {\n return OptionsColor.create(sourceColor, color);\n });\n }\n if (data.size !== undefined) {\n this.size = data.size;\n }\n }\n}\n","import { BubbleBase } from \"./BubbleBase.js\";\nexport class BubbleDiv extends BubbleBase {\n constructor() {\n super();\n this.selectors = [];\n }\n load(data) {\n super.load(data);\n if (!data) {\n return;\n }\n if (data.selectors !== undefined) {\n this.selectors = data.selectors;\n }\n }\n}\n","import { executeOnSingleOrMultiple, } from \"@tsparticles/engine\";\nimport { BubbleBase } from \"./BubbleBase.js\";\nimport { BubbleDiv } from \"./BubbleDiv.js\";\nexport class Bubble extends BubbleBase {\n load(data) {\n super.load(data);\n if (!data) {\n return;\n }\n this.divs = executeOnSingleOrMultiple(data.divs, div => {\n const tmp = new BubbleDiv();\n tmp.load(div);\n return tmp;\n });\n }\n}\n","export var ProcessBubbleType;\n(function (ProcessBubbleType) {\n ProcessBubbleType[\"color\"] = \"color\";\n ProcessBubbleType[\"opacity\"] = \"opacity\";\n ProcessBubbleType[\"size\"] = \"size\";\n})(ProcessBubbleType || (ProcessBubbleType = {}));\n","import { clamp } from \"@tsparticles/engine\";\nexport function calculateBubbleValue(particleValue, modeValue, optionsValue, ratio) {\n if (modeValue >= optionsValue) {\n const value = particleValue + (modeValue - optionsValue) * ratio;\n return clamp(value, particleValue, modeValue);\n }\n else if (modeValue < optionsValue) {\n const value = particleValue - (optionsValue - modeValue) * ratio;\n return clamp(value, modeValue, particleValue);\n }\n}\n","import { Circle, DivType, ExternalInteractorBase, Rectangle, colorMix, divMode, divModeExecute, getDistance, getRangeMax, isDivModeEnabled, isInArray, itemFromSingleOrMultiple, millisecondsToSeconds, mouseLeaveEvent, mouseMoveEvent, rangeColorToHsl, rgbToHsl, } from \"@tsparticles/engine\";\nimport { Bubble } from \"./Options/Classes/Bubble.js\";\nimport { ProcessBubbleType } from \"./Enums.js\";\nimport { calculateBubbleValue } from \"./Utils.js\";\nconst bubbleMode = \"bubble\", minDistance = 0, defaultClickTime = 0, double = 2, defaultOpacity = 1, ratioOffset = 1, defaultBubbleValue = 0, minRatio = 0, half = 0.5, defaultRatio = 1;\nexport class Bubbler extends ExternalInteractorBase {\n constructor(container) {\n super(container);\n this._clickBubble = () => {\n const container = this.container, options = container.actualOptions, mouseClickPos = container.interactivity.mouse.clickPosition, bubbleOptions = options.interactivity.modes.bubble;\n if (!bubbleOptions || !mouseClickPos) {\n return;\n }\n if (!container.bubble) {\n container.bubble = {};\n }\n const distance = container.retina.bubbleModeDistance;\n if (!distance || distance < minDistance) {\n return;\n }\n const query = container.particles.quadTree.queryCircle(mouseClickPos, distance, p => this.isEnabled(p)), { bubble } = container;\n for (const particle of query) {\n if (!bubble.clicking) {\n continue;\n }\n particle.bubble.inRange = !bubble.durationEnd;\n const pos = particle.getPosition(), distMouse = getDistance(pos, mouseClickPos), timeSpent = (new Date().getTime() - (container.interactivity.mouse.clickTime ?? defaultClickTime)) /\n millisecondsToSeconds;\n if (timeSpent > bubbleOptions.duration) {\n bubble.durationEnd = true;\n }\n if (timeSpent > bubbleOptions.duration * double) {\n bubble.clicking = false;\n bubble.durationEnd = false;\n }\n const sizeData = {\n bubbleObj: {\n optValue: container.retina.bubbleModeSize,\n value: particle.bubble.radius,\n },\n particlesObj: {\n optValue: getRangeMax(particle.options.size.value) * container.retina.pixelRatio,\n value: particle.size.value,\n },\n type: ProcessBubbleType.size,\n };\n this._process(particle, distMouse, timeSpent, sizeData);\n const opacityData = {\n bubbleObj: {\n optValue: bubbleOptions.opacity,\n value: particle.bubble.opacity,\n },\n particlesObj: {\n optValue: getRangeMax(particle.options.opacity.value),\n value: particle.opacity?.value ?? defaultOpacity,\n },\n type: ProcessBubbleType.opacity,\n };\n this._process(particle, distMouse, timeSpent, opacityData);\n if (!bubble.durationEnd && distMouse <= distance) {\n this._hoverBubbleColor(particle, distMouse);\n }\n else {\n delete particle.bubble.color;\n }\n }\n };\n this._hoverBubble = () => {\n const container = this.container, mousePos = container.interactivity.mouse.position, distance = container.retina.bubbleModeDistance;\n if (!distance || distance < minDistance || !mousePos) {\n return;\n }\n const query = container.particles.quadTree.queryCircle(mousePos, distance, p => this.isEnabled(p));\n for (const particle of query) {\n particle.bubble.inRange = true;\n const pos = particle.getPosition(), pointDistance = getDistance(pos, mousePos), ratio = ratioOffset - pointDistance / distance;\n if (pointDistance <= distance) {\n if (ratio >= minRatio && container.interactivity.status === mouseMoveEvent) {\n this._hoverBubbleSize(particle, ratio);\n this._hoverBubbleOpacity(particle, ratio);\n this._hoverBubbleColor(particle, ratio);\n }\n }\n else {\n this.reset(particle);\n }\n if (container.interactivity.status === mouseLeaveEvent) {\n this.reset(particle);\n }\n }\n };\n this._hoverBubbleColor = (particle, ratio, divBubble) => {\n const options = this.container.actualOptions, bubbleOptions = divBubble ?? options.interactivity.modes.bubble;\n if (!bubbleOptions) {\n return;\n }\n if (!particle.bubble.finalColor) {\n const modeColor = bubbleOptions.color;\n if (!modeColor) {\n return;\n }\n const bubbleColor = itemFromSingleOrMultiple(modeColor);\n particle.bubble.finalColor = rangeColorToHsl(bubbleColor);\n }\n if (!particle.bubble.finalColor) {\n return;\n }\n if (bubbleOptions.mix) {\n particle.bubble.color = undefined;\n const pColor = particle.getFillColor();\n particle.bubble.color = pColor\n ? rgbToHsl(colorMix(pColor, particle.bubble.finalColor, ratioOffset - ratio, ratio))\n : particle.bubble.finalColor;\n }\n else {\n particle.bubble.color = particle.bubble.finalColor;\n }\n };\n this._hoverBubbleOpacity = (particle, ratio, divBubble) => {\n const container = this.container, options = container.actualOptions, modeOpacity = divBubble?.opacity ?? options.interactivity.modes.bubble?.opacity;\n if (!modeOpacity) {\n return;\n }\n const optOpacity = particle.options.opacity.value, pOpacity = particle.opacity?.value ?? defaultOpacity, opacity = calculateBubbleValue(pOpacity, modeOpacity, getRangeMax(optOpacity), ratio);\n if (opacity !== undefined) {\n particle.bubble.opacity = opacity;\n }\n };\n this._hoverBubbleSize = (particle, ratio, divBubble) => {\n const container = this.container, modeSize = divBubble?.size ? divBubble.size * container.retina.pixelRatio : container.retina.bubbleModeSize;\n if (modeSize === undefined) {\n return;\n }\n const optSize = getRangeMax(particle.options.size.value) * container.retina.pixelRatio, pSize = particle.size.value, size = calculateBubbleValue(pSize, modeSize, optSize, ratio);\n if (size !== undefined) {\n particle.bubble.radius = size;\n }\n };\n this._process = (particle, distMouse, timeSpent, data) => {\n const container = this.container, bubbleParam = data.bubbleObj.optValue, options = container.actualOptions, bubbleOptions = options.interactivity.modes.bubble;\n if (!bubbleOptions || bubbleParam === undefined) {\n return;\n }\n const bubbleDuration = bubbleOptions.duration, bubbleDistance = container.retina.bubbleModeDistance, particlesParam = data.particlesObj.optValue, pObjBubble = data.bubbleObj.value, pObj = data.particlesObj.value ?? defaultBubbleValue, type = data.type;\n if (!bubbleDistance || bubbleDistance < minDistance || bubbleParam === particlesParam) {\n return;\n }\n if (!container.bubble) {\n container.bubble = {};\n }\n if (container.bubble.durationEnd) {\n if (pObjBubble) {\n if (type === ProcessBubbleType.size) {\n delete particle.bubble.radius;\n }\n if (type === ProcessBubbleType.opacity) {\n delete particle.bubble.opacity;\n }\n }\n }\n else {\n if (distMouse <= bubbleDistance) {\n const obj = pObjBubble ?? pObj;\n if (obj !== bubbleParam) {\n const value = pObj - (timeSpent * (pObj - bubbleParam)) / bubbleDuration;\n if (type === ProcessBubbleType.size) {\n particle.bubble.radius = value;\n }\n if (type === ProcessBubbleType.opacity) {\n particle.bubble.opacity = value;\n }\n }\n }\n else {\n if (type === ProcessBubbleType.size) {\n delete particle.bubble.radius;\n }\n if (type === ProcessBubbleType.opacity) {\n delete particle.bubble.opacity;\n }\n }\n }\n };\n this._singleSelectorHover = (delta, selector, div) => {\n const container = this.container, selectors = document.querySelectorAll(selector), bubble = container.actualOptions.interactivity.modes.bubble;\n if (!bubble || !selectors.length) {\n return;\n }\n selectors.forEach(item => {\n const elem = item, pxRatio = container.retina.pixelRatio, pos = {\n x: (elem.offsetLeft + elem.offsetWidth * half) * pxRatio,\n y: (elem.offsetTop + elem.offsetHeight * half) * pxRatio,\n }, repulseRadius = elem.offsetWidth * half * pxRatio, area = div.type === DivType.circle\n ? new Circle(pos.x, pos.y, repulseRadius)\n : new Rectangle(elem.offsetLeft * pxRatio, elem.offsetTop * pxRatio, elem.offsetWidth * pxRatio, elem.offsetHeight * pxRatio), query = container.particles.quadTree.query(area, p => this.isEnabled(p));\n for (const particle of query) {\n if (!area.contains(particle.getPosition())) {\n continue;\n }\n particle.bubble.inRange = true;\n const divs = bubble.divs, divBubble = divMode(divs, elem);\n if (!particle.bubble.div || particle.bubble.div !== elem) {\n this.clear(particle, delta, true);\n particle.bubble.div = elem;\n }\n this._hoverBubbleSize(particle, defaultRatio, divBubble);\n this._hoverBubbleOpacity(particle, defaultRatio, divBubble);\n this._hoverBubbleColor(particle, defaultRatio, divBubble);\n }\n });\n };\n if (!container.bubble) {\n container.bubble = {};\n }\n this.handleClickMode = (mode) => {\n if (mode !== bubbleMode) {\n return;\n }\n if (!container.bubble) {\n container.bubble = {};\n }\n container.bubble.clicking = true;\n };\n }\n clear(particle, delta, force) {\n if (particle.bubble.inRange && !force) {\n return;\n }\n delete particle.bubble.div;\n delete particle.bubble.opacity;\n delete particle.bubble.radius;\n delete particle.bubble.color;\n }\n init() {\n const container = this.container, bubble = container.actualOptions.interactivity.modes.bubble;\n if (!bubble) {\n return;\n }\n container.retina.bubbleModeDistance = bubble.distance * container.retina.pixelRatio;\n if (bubble.size !== undefined) {\n container.retina.bubbleModeSize = bubble.size * container.retina.pixelRatio;\n }\n }\n interact(delta) {\n const options = this.container.actualOptions, events = options.interactivity.events, onHover = events.onHover, onClick = events.onClick, hoverEnabled = onHover.enable, hoverMode = onHover.mode, clickEnabled = onClick.enable, clickMode = onClick.mode, divs = events.onDiv;\n if (hoverEnabled && isInArray(bubbleMode, hoverMode)) {\n this._hoverBubble();\n }\n else if (clickEnabled && isInArray(bubbleMode, clickMode)) {\n this._clickBubble();\n }\n else {\n divModeExecute(bubbleMode, divs, (selector, div) => this._singleSelectorHover(delta, selector, div));\n }\n }\n isEnabled(particle) {\n const container = this.container, options = container.actualOptions, mouse = container.interactivity.mouse, events = (particle?.interactivity ?? options.interactivity).events, { onClick, onDiv, onHover } = events, divBubble = isDivModeEnabled(bubbleMode, onDiv);\n if (!(divBubble || (onHover.enable && !!mouse.position) || (onClick.enable && mouse.clickPosition))) {\n return false;\n }\n return isInArray(bubbleMode, onHover.mode) || isInArray(bubbleMode, onClick.mode) || divBubble;\n }\n loadModeOptions(options, ...sources) {\n if (!options.bubble) {\n options.bubble = new Bubble();\n }\n for (const source of sources) {\n options.bubble.load(source?.bubble);\n }\n }\n reset(particle) {\n particle.bubble.inRange = false;\n }\n}\n","import { Bubbler } from \"./Bubbler.js\";\nexport async function loadExternalBubbleInteraction(engine, refresh = true) {\n await engine.addInteractor(\"externalBubble\", container => {\n return Promise.resolve(new Bubbler(container));\n }, refresh);\n}\nexport * from \"./Options/Classes/BubbleBase.js\";\nexport * from \"./Options/Classes/BubbleDiv.js\";\nexport * from \"./Options/Classes/Bubble.js\";\nexport * from \"./Options/Interfaces/IBubbleBase.js\";\nexport * from \"./Options/Interfaces/IBubbleDiv.js\";\nexport * from \"./Options/Interfaces/IBubble.js\";\n","export class ConnectLinks {\n constructor() {\n this.opacity = 0.5;\n }\n load(data) {\n if (!data) {\n return;\n }\n if (data.opacity !== undefined) {\n this.opacity = data.opacity;\n }\n }\n}\n","import { ConnectLinks } from \"./ConnectLinks.js\";\nexport class Connect {\n constructor() {\n this.distance = 80;\n this.links = new ConnectLinks();\n this.radius = 60;\n }\n load(data) {\n if (!data) {\n return;\n }\n if (data.distance !== undefined) {\n this.distance = data.distance;\n }\n this.links.load(data.links);\n if (data.radius !== undefined) {\n this.radius = data.radius;\n }\n }\n}\n","import { clamp, colorMix, drawLine, getStyleFromHsl, getStyleFromRgb, } from \"@tsparticles/engine\";\nconst gradientMin = 0, gradientMax = 1, defaultLinksWidth = 0;\nexport function gradient(context, p1, p2, opacity) {\n const gradStop = Math.floor(p2.getRadius() / p1.getRadius()), color1 = p1.getFillColor(), color2 = p2.getFillColor();\n if (!color1 || !color2) {\n return;\n }\n const sourcePos = p1.getPosition(), destPos = p2.getPosition(), midRgb = colorMix(color1, color2, p1.getRadius(), p2.getRadius()), grad = context.createLinearGradient(sourcePos.x, sourcePos.y, destPos.x, destPos.y);\n grad.addColorStop(gradientMin, getStyleFromHsl(color1, opacity));\n grad.addColorStop(clamp(gradStop, gradientMin, gradientMax), getStyleFromRgb(midRgb, opacity));\n grad.addColorStop(gradientMax, getStyleFromHsl(color2, opacity));\n return grad;\n}\nexport function drawConnectLine(context, width, lineStyle, begin, end) {\n drawLine(context, begin, end);\n context.lineWidth = width;\n context.strokeStyle = lineStyle;\n context.stroke();\n}\nexport function lineStyle(container, ctx, p1, p2) {\n const options = container.actualOptions, connectOptions = options.interactivity.modes.connect;\n if (!connectOptions) {\n return;\n }\n return gradient(ctx, p1, p2, connectOptions.links.opacity);\n}\nexport function drawConnection(container, p1, p2) {\n container.canvas.draw(ctx => {\n const ls = lineStyle(container, ctx, p1, p2);\n if (!ls) {\n return;\n }\n const pos1 = p1.getPosition(), pos2 = p2.getPosition();\n drawConnectLine(ctx, p1.retina.linksWidth ?? defaultLinksWidth, ls, pos1, pos2);\n });\n}\n","import { ExternalInteractorBase, isInArray, } from \"@tsparticles/engine\";\nimport { Connect } from \"./Options/Classes/Connect.js\";\nimport { drawConnection } from \"./Utils.js\";\nconst connectMode = \"connect\", minDistance = 0;\nexport class Connector extends ExternalInteractorBase {\n constructor(container) {\n super(container);\n }\n clear() {\n }\n init() {\n const container = this.container, connect = container.actualOptions.interactivity.modes.connect;\n if (!connect) {\n return;\n }\n container.retina.connectModeDistance = connect.distance * container.retina.pixelRatio;\n container.retina.connectModeRadius = connect.radius * container.retina.pixelRatio;\n }\n interact() {\n const container = this.container, options = container.actualOptions;\n if (options.interactivity.events.onHover.enable && container.interactivity.status === \"pointermove\") {\n const mousePos = container.interactivity.mouse.position, { connectModeDistance, connectModeRadius } = container.retina;\n if (!connectModeDistance ||\n connectModeDistance < minDistance ||\n !connectModeRadius ||\n connectModeRadius < minDistance ||\n !mousePos) {\n return;\n }\n const distance = Math.abs(connectModeRadius), query = container.particles.quadTree.queryCircle(mousePos, distance, p => this.isEnabled(p));\n query.forEach((p1, i) => {\n const pos1 = p1.getPosition(), indexOffset = 1;\n for (const p2 of query.slice(i + indexOffset)) {\n const pos2 = p2.getPosition(), distMax = Math.abs(connectModeDistance), xDiff = Math.abs(pos1.x - pos2.x), yDiff = Math.abs(pos1.y - pos2.y);\n if (xDiff < distMax && yDiff < distMax) {\n drawConnection(container, p1, p2);\n }\n }\n });\n }\n }\n isEnabled(particle) {\n const container = this.container, mouse = container.interactivity.mouse, events = (particle?.interactivity ?? container.actualOptions.interactivity).events;\n if (!(events.onHover.enable && mouse.position)) {\n return false;\n }\n return isInArray(connectMode, events.onHover.mode);\n }\n loadModeOptions(options, ...sources) {\n if (!options.connect) {\n options.connect = new Connect();\n }\n for (const source of sources) {\n options.connect.load(source?.connect);\n }\n }\n reset() {\n }\n}\n","import { Connector } from \"./Connector.js\";\nexport async function loadExternalConnectInteraction(engine, refresh = true) {\n await engine.addInteractor(\"externalConnect\", container => {\n return Promise.resolve(new Connector(container));\n }, refresh);\n}\nexport * from \"./Options/Classes/Connect.js\";\nexport * from \"./Options/Classes/ConnectLinks.js\";\nexport * from \"./Options/Interfaces/IConnect.js\";\nexport * from \"./Options/Interfaces/IConnectLinks.js\";\n","import { OptionsColor } from \"@tsparticles/engine\";\nexport class GrabLinks {\n constructor() {\n this.blink = false;\n this.consent = false;\n this.opacity = 1;\n }\n load(data) {\n if (!data) {\n return;\n }\n if (data.blink !== undefined) {\n this.blink = data.blink;\n }\n if (data.color !== undefined) {\n this.color = OptionsColor.create(this.color, data.color);\n }\n if (data.consent !== undefined) {\n this.consent = data.consent;\n }\n if (data.opacity !== undefined) {\n this.opacity = data.opacity;\n }\n }\n}\n","import { GrabLinks } from \"./GrabLinks.js\";\nexport class Grab {\n constructor() {\n this.distance = 100;\n this.links = new GrabLinks();\n }\n load(data) {\n if (!data) {\n return;\n }\n if (data.distance !== undefined) {\n this.distance = data.distance;\n }\n this.links.load(data.links);\n }\n}\n","import { drawLine, getStyleFromRgb } from \"@tsparticles/engine\";\nconst defaultWidth = 0;\nexport function drawGrabLine(context, width, begin, end, colorLine, opacity) {\n drawLine(context, begin, end);\n context.strokeStyle = getStyleFromRgb(colorLine, opacity);\n context.lineWidth = width;\n context.stroke();\n}\nexport function drawGrab(container, particle, lineColor, opacity, mousePos) {\n container.canvas.draw(ctx => {\n const beginPos = particle.getPosition();\n drawGrabLine(ctx, particle.retina.linksWidth ?? defaultWidth, beginPos, mousePos, lineColor, opacity);\n });\n}\n","import { ExternalInteractorBase, getDistance, getLinkColor, getLinkRandomColor, isInArray, mouseMoveEvent, } from \"@tsparticles/engine\";\nimport { Grab } from \"./Options/Classes/Grab.js\";\nimport { drawGrab } from \"./Utils.js\";\nconst grabMode = \"grab\", minDistance = 0, minOpacity = 0;\nexport class Grabber extends ExternalInteractorBase {\n constructor(container) {\n super(container);\n }\n clear() {\n }\n init() {\n const container = this.container, grab = container.actualOptions.interactivity.modes.grab;\n if (!grab) {\n return;\n }\n container.retina.grabModeDistance = grab.distance * container.retina.pixelRatio;\n }\n interact() {\n const container = this.container, options = container.actualOptions, interactivity = options.interactivity;\n if (!interactivity.modes.grab ||\n !interactivity.events.onHover.enable ||\n container.interactivity.status !== mouseMoveEvent) {\n return;\n }\n const mousePos = container.interactivity.mouse.position;\n if (!mousePos) {\n return;\n }\n const distance = container.retina.grabModeDistance;\n if (!distance || distance < minDistance) {\n return;\n }\n const query = container.particles.quadTree.queryCircle(mousePos, distance, p => this.isEnabled(p));\n for (const particle of query) {\n const pos = particle.getPosition(), pointDistance = getDistance(pos, mousePos);\n if (pointDistance > distance) {\n continue;\n }\n const grabLineOptions = interactivity.modes.grab.links, lineOpacity = grabLineOptions.opacity, opacityLine = lineOpacity - (pointDistance * lineOpacity) / distance;\n if (opacityLine <= minOpacity) {\n continue;\n }\n const optColor = grabLineOptions.color ?? particle.options.links?.color;\n if (!container.particles.grabLineColor && optColor) {\n const linksOptions = interactivity.modes.grab.links;\n container.particles.grabLineColor = getLinkRandomColor(optColor, linksOptions.blink, linksOptions.consent);\n }\n const colorLine = getLinkColor(particle, undefined, container.particles.grabLineColor);\n if (!colorLine) {\n continue;\n }\n drawGrab(container, particle, colorLine, opacityLine, mousePos);\n }\n }\n isEnabled(particle) {\n const container = this.container, mouse = container.interactivity.mouse, events = (particle?.interactivity ?? container.actualOptions.interactivity).events;\n return events.onHover.enable && !!mouse.position && isInArray(grabMode, events.onHover.mode);\n }\n loadModeOptions(options, ...sources) {\n if (!options.grab) {\n options.grab = new Grab();\n }\n for (const source of sources) {\n options.grab.load(source?.grab);\n }\n }\n reset() {\n }\n}\n","import { Grabber } from \"./Grabber.js\";\nexport async function loadExternalGrabInteraction(engine, refresh = true) {\n await engine.addInteractor(\"externalGrab\", container => {\n return Promise.resolve(new Grabber(container));\n }, refresh);\n}\nexport * from \"./Options/Classes/Grab.js\";\nexport * from \"./Options/Classes/GrabLinks.js\";\nexport * from \"./Options/Interfaces/IGrab.js\";\nexport * from \"./Options/Interfaces/IGrabLinks.js\";\n","import { ExternalInteractorBase } from \"@tsparticles/engine\";\nconst pauseMode = \"pause\";\nexport class Pauser extends ExternalInteractorBase {\n constructor(container) {\n super(container);\n this.handleClickMode = (mode) => {\n if (mode !== pauseMode) {\n return;\n }\n const container = this.container;\n if (container.animationStatus) {\n container.pause();\n }\n else {\n container.play();\n }\n };\n }\n clear() {\n }\n init() {\n }\n interact() {\n }\n isEnabled() {\n return true;\n }\n reset() {\n }\n}\n","import { Pauser } from \"./Pauser.js\";\nexport async function loadExternalPauseInteraction(engine, refresh = true) {\n await engine.addInteractor(\"externalPause\", container => {\n return Promise.resolve(new Pauser(container));\n }, refresh);\n}\n","import { setRangeValue } from \"@tsparticles/engine\";\nexport class Push {\n constructor() {\n this.default = true;\n this.groups = [];\n this.quantity = 4;\n }\n load(data) {\n if (!data) {\n return;\n }\n if (data.default !== undefined) {\n this.default = data.default;\n }\n if (data.groups !== undefined) {\n this.groups = data.groups.map(t => t);\n }\n if (!this.groups.length) {\n this.default = true;\n }\n const quantity = data.quantity;\n if (quantity !== undefined) {\n this.quantity = setRangeValue(quantity);\n }\n }\n}\n","import { ExternalInteractorBase, getRangeValue, itemFromArray, } from \"@tsparticles/engine\";\nimport { Push } from \"./Options/Classes/Push.js\";\nconst pushMode = \"push\", minQuantity = 0;\nexport class Pusher extends ExternalInteractorBase {\n constructor(container) {\n super(container);\n this.handleClickMode = (mode) => {\n if (mode !== pushMode) {\n return;\n }\n const container = this.container, options = container.actualOptions, pushOptions = options.interactivity.modes.push;\n if (!pushOptions) {\n return;\n }\n const quantity = getRangeValue(pushOptions.quantity);\n if (quantity <= minQuantity) {\n return;\n }\n const group = itemFromArray([undefined, ...pushOptions.groups]), groupOptions = group !== undefined ? container.actualOptions.particles.groups[group] : undefined;\n void container.particles.push(quantity, container.interactivity.mouse, groupOptions, group);\n };\n }\n clear() {\n }\n init() {\n }\n interact() {\n }\n isEnabled() {\n return true;\n }\n loadModeOptions(options, ...sources) {\n if (!options.push) {\n options.push = new Push();\n }\n for (const source of sources) {\n options.push.load(source?.push);\n }\n }\n reset() {\n }\n}\n","import { Pusher } from \"./Pusher.js\";\nexport async function loadExternalPushInteraction(engine, refresh = true) {\n await engine.addInteractor(\"externalPush\", container => {\n return Promise.resolve(new Pusher(container));\n }, refresh);\n}\nexport * from \"./Options/Classes/Push.js\";\nexport * from \"./Options/Interfaces/IPush.js\";\n","import { setRangeValue } from \"@tsparticles/engine\";\nexport class Remove {\n constructor() {\n this.quantity = 2;\n }\n load(data) {\n if (!data) {\n return;\n }\n const quantity = data.quantity;\n if (quantity !== undefined) {\n this.quantity = setRangeValue(quantity);\n }\n }\n}\n","import { ExternalInteractorBase, getRangeValue, } from \"@tsparticles/engine\";\nimport { Remove } from \"./Options/Classes/Remove.js\";\nconst removeMode = \"remove\";\nexport class Remover extends ExternalInteractorBase {\n constructor(container) {\n super(container);\n this.handleClickMode = (mode) => {\n const container = this.container, options = container.actualOptions;\n if (!options.interactivity.modes.remove || mode !== removeMode) {\n return;\n }\n const removeNb = getRangeValue(options.interactivity.modes.remove.quantity);\n container.particles.removeQuantity(removeNb);\n };\n }\n clear() {\n }\n init() {\n }\n interact() {\n }\n isEnabled() {\n return true;\n }\n loadModeOptions(options, ...sources) {\n if (!options.remove) {\n options.remove = new Remove();\n }\n for (const source of sources) {\n options.remove.load(source?.remove);\n }\n }\n reset() {\n }\n}\n","import { Remover } from \"./Remover.js\";\nexport async function loadExternalRemoveInteraction(engine, refresh = true) {\n await engine.addInteractor(\"externalRemove\", container => {\n return Promise.resolve(new Remover(container));\n }, refresh);\n}\nexport * from \"./Options/Classes/Remove.js\";\nexport * from \"./Options/Interfaces/IRemove.js\";\n","import { EasingType } from \"@tsparticles/engine\";\nexport class RepulseBase {\n constructor() {\n this.distance = 200;\n this.duration = 0.4;\n this.factor = 100;\n this.speed = 1;\n this.maxSpeed = 50;\n this.easing = EasingType.easeOutQuad;\n }\n load(data) {\n if (!data) {\n return;\n }\n if (data.distance !== undefined) {\n this.distance = data.distance;\n }\n if (data.duration !== undefined) {\n this.duration = data.duration;\n }\n if (data.easing !== undefined) {\n this.easing = data.easing;\n }\n if (data.factor !== undefined) {\n this.factor = data.factor;\n }\n if (data.speed !== undefined) {\n this.speed = data.speed;\n }\n if (data.maxSpeed !== undefined) {\n this.maxSpeed = data.maxSpeed;\n }\n }\n}\n","import { RepulseBase } from \"./RepulseBase.js\";\nexport class RepulseDiv extends RepulseBase {\n constructor() {\n super();\n this.selectors = [];\n }\n load(data) {\n super.load(data);\n if (!data) {\n return;\n }\n if (data.selectors !== undefined) {\n this.selectors = data.selectors;\n }\n }\n}\n","import { executeOnSingleOrMultiple, } from \"@tsparticles/engine\";\nimport { RepulseBase } from \"./RepulseBase.js\";\nimport { RepulseDiv } from \"./RepulseDiv.js\";\nexport class Repulse extends RepulseBase {\n load(data) {\n super.load(data);\n if (!data) {\n return;\n }\n this.divs = executeOnSingleOrMultiple(data.divs, div => {\n const tmp = new RepulseDiv();\n tmp.load(div);\n return tmp;\n });\n }\n}\n","import { Circle, DivType, ExternalInteractorBase, Rectangle, Vector, clamp, divMode, divModeExecute, getDistances, getEasing, isDivModeEnabled, isInArray, millisecondsToSeconds, mouseMoveEvent, } from \"@tsparticles/engine\";\nimport { Repulse } from \"./Options/Classes/Repulse.js\";\nconst repulseMode = \"repulse\", minDistance = 0, repulseRadiusFactor = 6, repulseRadiusPower = 3, squarePower = 2, minRadius = 0, minSpeed = 0, easingOffset = 1, half = 0.5;\nexport class Repulser extends ExternalInteractorBase {\n constructor(engine, container) {\n super(container);\n this._clickRepulse = () => {\n const container = this.container, repulseOptions = container.actualOptions.interactivity.modes.repulse;\n if (!repulseOptions) {\n return;\n }\n const repulse = container.repulse ?? { particles: [] };\n if (!repulse.finish) {\n if (!repulse.count) {\n repulse.count = 0;\n }\n repulse.count++;\n if (repulse.count === container.particles.count) {\n repulse.finish = true;\n }\n }\n if (repulse.clicking) {\n const repulseDistance = container.retina.repulseModeDistance;\n if (!repulseDistance || repulseDistance < minDistance) {\n return;\n }\n const repulseRadius = Math.pow(repulseDistance / repulseRadiusFactor, repulseRadiusPower), mouseClickPos = container.interactivity.mouse.clickPosition;\n if (mouseClickPos === undefined) {\n return;\n }\n const range = new Circle(mouseClickPos.x, mouseClickPos.y, repulseRadius), query = container.particles.quadTree.query(range, p => this.isEnabled(p));\n for (const particle of query) {\n const { dx, dy, distance } = getDistances(mouseClickPos, particle.position), d = distance ** squarePower, velocity = repulseOptions.speed, force = (-repulseRadius * velocity) / d;\n if (d <= repulseRadius) {\n repulse.particles.push(particle);\n const vect = Vector.create(dx, dy);\n vect.length = force;\n particle.velocity.setTo(vect);\n }\n }\n }\n else if (repulse.clicking === false) {\n for (const particle of repulse.particles) {\n particle.velocity.setTo(particle.initialVelocity);\n }\n repulse.particles = [];\n }\n };\n this._hoverRepulse = () => {\n const container = this.container, mousePos = container.interactivity.mouse.position, repulseRadius = container.retina.repulseModeDistance;\n if (!repulseRadius || repulseRadius < minRadius || !mousePos) {\n return;\n }\n this._processRepulse(mousePos, repulseRadius, new Circle(mousePos.x, mousePos.y, repulseRadius));\n };\n this._processRepulse = (position, repulseRadius, area, divRepulse) => {\n const container = this.container, query = container.particles.quadTree.query(area, p => this.isEnabled(p)), repulseOptions = container.actualOptions.interactivity.modes.repulse;\n if (!repulseOptions) {\n return;\n }\n const { easing, speed, factor, maxSpeed } = repulseOptions, easingFunc = getEasing(easing), velocity = (divRepulse?.speed ?? speed) * factor;\n for (const particle of query) {\n const { dx, dy, distance } = getDistances(particle.position, position), repulseFactor = clamp(easingFunc(easingOffset - distance / repulseRadius) * velocity, minSpeed, maxSpeed), normVec = Vector.create(!distance ? velocity : (dx / distance) * repulseFactor, !distance ? velocity : (dy / distance) * repulseFactor);\n particle.position.addTo(normVec);\n }\n };\n this._singleSelectorRepulse = (selector, div) => {\n const container = this.container, repulse = container.actualOptions.interactivity.modes.repulse;\n if (!repulse) {\n return;\n }\n const query = document.querySelectorAll(selector);\n if (!query.length) {\n return;\n }\n query.forEach(item => {\n const elem = item, pxRatio = container.retina.pixelRatio, pos = {\n x: (elem.offsetLeft + elem.offsetWidth * half) * pxRatio,\n y: (elem.offsetTop + elem.offsetHeight * half) * pxRatio,\n }, repulseRadius = elem.offsetWidth * half * pxRatio, area = div.type === DivType.circle\n ? new Circle(pos.x, pos.y, repulseRadius)\n : new Rectangle(elem.offsetLeft * pxRatio, elem.offsetTop * pxRatio, elem.offsetWidth * pxRatio, elem.offsetHeight * pxRatio), divs = repulse.divs, divRepulse = divMode(divs, elem);\n this._processRepulse(pos, repulseRadius, area, divRepulse);\n });\n };\n this._engine = engine;\n if (!container.repulse) {\n container.repulse = { particles: [] };\n }\n this.handleClickMode = (mode) => {\n const options = this.container.actualOptions, repulseOpts = options.interactivity.modes.repulse;\n if (!repulseOpts || mode !== repulseMode) {\n return;\n }\n if (!container.repulse) {\n container.repulse = { particles: [] };\n }\n const repulse = container.repulse;\n repulse.clicking = true;\n repulse.count = 0;\n for (const particle of container.repulse.particles) {\n if (!this.isEnabled(particle)) {\n continue;\n }\n particle.velocity.setTo(particle.initialVelocity);\n }\n repulse.particles = [];\n repulse.finish = false;\n setTimeout(() => {\n if (container.destroyed) {\n return;\n }\n repulse.clicking = false;\n }, repulseOpts.duration * millisecondsToSeconds);\n };\n }\n clear() {\n }\n init() {\n const container = this.container, repulse = container.actualOptions.interactivity.modes.repulse;\n if (!repulse) {\n return;\n }\n container.retina.repulseModeDistance = repulse.distance * container.retina.pixelRatio;\n }\n interact() {\n const container = this.container, options = container.actualOptions, mouseMoveStatus = container.interactivity.status === mouseMoveEvent, events = options.interactivity.events, hover = events.onHover, hoverEnabled = hover.enable, hoverMode = hover.mode, click = events.onClick, clickEnabled = click.enable, clickMode = click.mode, divs = events.onDiv;\n if (mouseMoveStatus && hoverEnabled && isInArray(repulseMode, hoverMode)) {\n this._hoverRepulse();\n }\n else if (clickEnabled && isInArray(repulseMode, clickMode)) {\n this._clickRepulse();\n }\n else {\n divModeExecute(repulseMode, divs, (selector, div) => this._singleSelectorRepulse(selector, div));\n }\n }\n isEnabled(particle) {\n const container = this.container, options = container.actualOptions, mouse = container.interactivity.mouse, events = (particle?.interactivity ?? options.interactivity).events, divs = events.onDiv, hover = events.onHover, click = events.onClick, divRepulse = isDivModeEnabled(repulseMode, divs);\n if (!(divRepulse || (hover.enable && !!mouse.position) || (click.enable && mouse.clickPosition))) {\n return false;\n }\n const hoverMode = hover.mode, clickMode = click.mode;\n return isInArray(repulseMode, hoverMode) || isInArray(repulseMode, clickMode) || divRepulse;\n }\n loadModeOptions(options, ...sources) {\n if (!options.repulse) {\n options.repulse = new Repulse();\n }\n for (const source of sources) {\n options.repulse.load(source?.repulse);\n }\n }\n reset() {\n }\n}\n","import { Repulser } from \"./Repulser.js\";\nexport async function loadExternalRepulseInteraction(engine, refresh = true) {\n await engine.addInteractor(\"externalRepulse\", container => {\n return Promise.resolve(new Repulser(engine, container));\n }, refresh);\n}\nexport * from \"./Options/Classes/RepulseBase.js\";\nexport * from \"./Options/Classes/RepulseDiv.js\";\nexport * from \"./Options/Classes/Repulse.js\";\nexport * from \"./Options/Interfaces/IRepulseBase.js\";\nexport * from \"./Options/Interfaces/IRepulseDiv.js\";\nexport * from \"./Options/Interfaces/IRepulse.js\";\n","export class Slow {\n constructor() {\n this.factor = 3;\n this.radius = 200;\n }\n load(data) {\n if (!data) {\n return;\n }\n if (data.factor !== undefined) {\n this.factor = data.factor;\n }\n if (data.radius !== undefined) {\n this.radius = data.radius;\n }\n }\n}\n","import { ExternalInteractorBase, getDistance, isInArray, } from \"@tsparticles/engine\";\nimport { Slow } from \"./Options/Classes/Slow.js\";\nconst slowMode = \"slow\", minRadius = 0;\nexport class Slower extends ExternalInteractorBase {\n constructor(container) {\n super(container);\n }\n clear(particle, delta, force) {\n if (particle.slow.inRange && !force) {\n return;\n }\n particle.slow.factor = 1;\n }\n init() {\n const container = this.container, slow = container.actualOptions.interactivity.modes.slow;\n if (!slow) {\n return;\n }\n container.retina.slowModeRadius = slow.radius * container.retina.pixelRatio;\n }\n interact() {\n }\n isEnabled(particle) {\n const container = this.container, mouse = container.interactivity.mouse, events = (particle?.interactivity ?? container.actualOptions.interactivity).events;\n return events.onHover.enable && !!mouse.position && isInArray(slowMode, events.onHover.mode);\n }\n loadModeOptions(options, ...sources) {\n if (!options.slow) {\n options.slow = new Slow();\n }\n for (const source of sources) {\n options.slow.load(source?.slow);\n }\n }\n reset(particle) {\n particle.slow.inRange = false;\n const container = this.container, options = container.actualOptions, mousePos = container.interactivity.mouse.position, radius = container.retina.slowModeRadius, slowOptions = options.interactivity.modes.slow;\n if (!slowOptions || !radius || radius < minRadius || !mousePos) {\n return;\n }\n const particlePos = particle.getPosition(), dist = getDistance(mousePos, particlePos), proximityFactor = dist / radius, slowFactor = slowOptions.factor, { slow } = particle;\n if (dist > radius) {\n return;\n }\n slow.inRange = true;\n slow.factor = proximityFactor / slowFactor;\n }\n}\n","import { Slower } from \"./Slower.js\";\nexport async function loadExternalSlowInteraction(engine, refresh = true) {\n await engine.addInteractor(\"externalSlow\", container => {\n return Promise.resolve(new Slower(container));\n }, refresh);\n}\nexport * from \"./Options/Classes/Slow.js\";\nexport * from \"./Options/Interfaces/ISlow.js\";\n","import { errorPrefix, getLogger, getStyleFromHsl } from \"@tsparticles/engine\";\nconst stringStart = 0, defaultOpacity = 1;\nconst currentColorRegex = /(#(?:[0-9a-f]{2}){2,4}|(#[0-9a-f]{3})|(rgb|hsl)a?\\((-?\\d+%?[,\\s]+){2,3}\\s*[\\d.]+%?\\))|currentcolor/gi;\nfunction replaceColorSvg(imageShape, color, opacity) {\n const { svgData } = imageShape;\n if (!svgData) {\n return \"\";\n }\n const colorStyle = getStyleFromHsl(color, opacity);\n if (svgData.includes(\"fill\")) {\n return svgData.replace(currentColorRegex, () => colorStyle);\n }\n const preFillIndex = svgData.indexOf(\">\");\n return `${svgData.substring(stringStart, preFillIndex)} fill=\"${colorStyle}\"${svgData.substring(preFillIndex)}`;\n}\nexport async function loadImage(image) {\n return new Promise((resolve) => {\n image.loading = true;\n const img = new Image();\n image.element = img;\n img.addEventListener(\"load\", () => {\n image.loading = false;\n resolve();\n });\n img.addEventListener(\"error\", () => {\n image.element = undefined;\n image.error = true;\n image.loading = false;\n getLogger().error(`${errorPrefix} loading image: ${image.source}`);\n resolve();\n });\n img.src = image.source;\n });\n}\nexport async function downloadSvgImage(image) {\n if (image.type !== \"svg\") {\n await loadImage(image);\n return;\n }\n image.loading = true;\n const response = await fetch(image.source);\n if (!response.ok) {\n getLogger().error(`${errorPrefix} Image not found`);\n image.error = true;\n }\n else {\n image.svgData = await response.text();\n }\n image.loading = false;\n}\nexport function replaceImageColor(image, imageData, color, particle) {\n const svgColoredData = replaceColorSvg(image, color, particle.opacity?.value ?? defaultOpacity), imageRes = {\n color,\n gif: imageData.gif,\n data: {\n ...image,\n svgData: svgColoredData,\n },\n loaded: false,\n ratio: imageData.width / imageData.height,\n replaceColor: imageData.replaceColor,\n source: imageData.src,\n };\n return new Promise(resolve => {\n const svg = new Blob([svgColoredData], { type: \"image/svg+xml\" }), domUrl = URL || window.URL || window.webkitURL || window, url = domUrl.createObjectURL(svg), img = new Image();\n img.addEventListener(\"load\", () => {\n imageRes.loaded = true;\n imageRes.element = img;\n resolve(imageRes);\n domUrl.revokeObjectURL(url);\n });\n const errorHandler = async () => {\n domUrl.revokeObjectURL(url);\n const img2 = {\n ...image,\n error: false,\n loading: true,\n };\n await loadImage(img2);\n imageRes.loaded = true;\n imageRes.element = img2.element;\n resolve(imageRes);\n };\n img.addEventListener(\"error\", () => void errorHandler());\n img.src = url;\n });\n}\n","export const InterlaceOffsets = [0, 4, 2, 1];\nexport const InterlaceSteps = [8, 8, 4, 2];\n","export class ByteStream {\n constructor(bytes) {\n this.pos = 0;\n this.data = new Uint8ClampedArray(bytes);\n }\n getString(count) {\n const slice = this.data.slice(this.pos, this.pos + count);\n this.pos += slice.length;\n return slice.reduce((acc, curr) => acc + String.fromCharCode(curr), \"\");\n }\n nextByte() {\n return this.data[this.pos++];\n }\n nextTwoBytes() {\n const increment = 2, previous = 1, shift = 8;\n this.pos += increment;\n return this.data[this.pos - increment] + (this.data[this.pos - previous] << shift);\n }\n readSubBlocks() {\n let blockString = \"\", size = 0;\n const minCount = 0, emptySize = 0;\n do {\n size = this.data[this.pos++];\n for (let count = size; --count >= minCount; blockString += String.fromCharCode(this.data[this.pos++])) {\n }\n } while (size !== emptySize);\n return blockString;\n }\n readSubBlocksBin() {\n let size = this.data[this.pos], len = 0;\n const emptySize = 0, increment = 1;\n for (let offset = 0; size !== emptySize; offset += size + increment, size = this.data[this.pos + offset]) {\n len += size;\n }\n const blockData = new Uint8Array(len);\n size = this.data[this.pos++];\n for (let i = 0; size !== emptySize; size = this.data[this.pos++]) {\n for (let count = size; --count >= emptySize; blockData[i++] = this.data[this.pos++]) {\n }\n }\n return blockData;\n }\n skipSubBlocks() {\n for (const increment = 1, noData = 0; this.data[this.pos] !== noData; this.pos += this.data[this.pos] + increment) {\n }\n this.pos++;\n }\n}\n","export var DisposalMethod;\n(function (DisposalMethod) {\n DisposalMethod[DisposalMethod[\"Replace\"] = 0] = \"Replace\";\n DisposalMethod[DisposalMethod[\"Combine\"] = 1] = \"Combine\";\n DisposalMethod[DisposalMethod[\"RestoreBackground\"] = 2] = \"RestoreBackground\";\n DisposalMethod[DisposalMethod[\"RestorePrevious\"] = 3] = \"RestorePrevious\";\n DisposalMethod[DisposalMethod[\"UndefinedA\"] = 4] = \"UndefinedA\";\n DisposalMethod[DisposalMethod[\"UndefinedB\"] = 5] = \"UndefinedB\";\n DisposalMethod[DisposalMethod[\"UndefinedC\"] = 6] = \"UndefinedC\";\n DisposalMethod[DisposalMethod[\"UndefinedD\"] = 7] = \"UndefinedD\";\n})(DisposalMethod || (DisposalMethod = {}));\n","export var GIFDataHeaders;\n(function (GIFDataHeaders) {\n GIFDataHeaders[GIFDataHeaders[\"Extension\"] = 33] = \"Extension\";\n GIFDataHeaders[GIFDataHeaders[\"ApplicationExtension\"] = 255] = \"ApplicationExtension\";\n GIFDataHeaders[GIFDataHeaders[\"GraphicsControlExtension\"] = 249] = \"GraphicsControlExtension\";\n GIFDataHeaders[GIFDataHeaders[\"PlainTextExtension\"] = 1] = \"PlainTextExtension\";\n GIFDataHeaders[GIFDataHeaders[\"CommentExtension\"] = 254] = \"CommentExtension\";\n GIFDataHeaders[GIFDataHeaders[\"Image\"] = 44] = \"Image\";\n GIFDataHeaders[GIFDataHeaders[\"EndOfFile\"] = 59] = \"EndOfFile\";\n})(GIFDataHeaders || (GIFDataHeaders = {}));\n","import { loadImage } from \"../Utils.js\";\nimport { InterlaceOffsets, InterlaceSteps } from \"./Constants.js\";\nimport { ByteStream } from \"./ByteStream.js\";\nimport { DisposalMethod } from \"./Enums/DisposalMethod.js\";\nimport { GIFDataHeaders } from \"./Types/GIFDataHeaders.js\";\nconst origin = {\n x: 0,\n y: 0,\n}, defaultFrame = 0, half = 0.5, initialTime = 0, firstIndex = 0, defaultLoopCount = 0;\nfunction parseColorTable(byteStream, count) {\n const colors = [];\n for (let i = 0; i < count; i++) {\n colors.push({\n r: byteStream.data[byteStream.pos],\n g: byteStream.data[byteStream.pos + 1],\n b: byteStream.data[byteStream.pos + 2],\n });\n byteStream.pos += 3;\n }\n return colors;\n}\nfunction parseExtensionBlock(byteStream, gif, getFrameIndex, getTransparencyIndex) {\n switch (byteStream.nextByte()) {\n case GIFDataHeaders.GraphicsControlExtension: {\n const frame = gif.frames[getFrameIndex(false)];\n byteStream.pos++;\n const packedByte = byteStream.nextByte();\n frame.GCreserved = (packedByte & 0xe0) >>> 5;\n frame.disposalMethod = (packedByte & 0x1c) >>> 2;\n frame.userInputDelayFlag = (packedByte & 2) === 2;\n const transparencyFlag = (packedByte & 1) === 1;\n frame.delayTime = byteStream.nextTwoBytes() * 0xa;\n const transparencyIndex = byteStream.nextByte();\n if (transparencyFlag) {\n getTransparencyIndex(transparencyIndex);\n }\n byteStream.pos++;\n break;\n }\n case GIFDataHeaders.ApplicationExtension: {\n byteStream.pos++;\n const applicationExtension = {\n identifier: byteStream.getString(8),\n authenticationCode: byteStream.getString(3),\n data: byteStream.readSubBlocksBin(),\n };\n gif.applicationExtensions.push(applicationExtension);\n break;\n }\n case GIFDataHeaders.CommentExtension: {\n gif.comments.push([getFrameIndex(false), byteStream.readSubBlocks()]);\n break;\n }\n case GIFDataHeaders.PlainTextExtension: {\n if (gif.globalColorTable.length === 0) {\n throw new EvalError(\"plain text extension without global color table\");\n }\n byteStream.pos++;\n gif.frames[getFrameIndex(false)].plainTextData = {\n left: byteStream.nextTwoBytes(),\n top: byteStream.nextTwoBytes(),\n width: byteStream.nextTwoBytes(),\n height: byteStream.nextTwoBytes(),\n charSize: {\n width: byteStream.nextTwoBytes(),\n height: byteStream.nextTwoBytes(),\n },\n foregroundColor: byteStream.nextByte(),\n backgroundColor: byteStream.nextByte(),\n text: byteStream.readSubBlocks(),\n };\n break;\n }\n default:\n byteStream.skipSubBlocks();\n break;\n }\n}\nasync function parseImageBlock(byteStream, gif, avgAlpha, getFrameIndex, getTransparencyIndex, progressCallback) {\n const frame = gif.frames[getFrameIndex(true)];\n frame.left = byteStream.nextTwoBytes();\n frame.top = byteStream.nextTwoBytes();\n frame.width = byteStream.nextTwoBytes();\n frame.height = byteStream.nextTwoBytes();\n const packedByte = byteStream.nextByte(), localColorTableFlag = (packedByte & 0x80) === 0x80, interlacedFlag = (packedByte & 0x40) === 0x40;\n frame.sortFlag = (packedByte & 0x20) === 0x20;\n frame.reserved = (packedByte & 0x18) >>> 3;\n const localColorCount = 1 << ((packedByte & 7) + 1);\n if (localColorTableFlag) {\n frame.localColorTable = parseColorTable(byteStream, localColorCount);\n }\n const getColor = (index) => {\n const { r, g, b } = (localColorTableFlag ? frame.localColorTable : gif.globalColorTable)[index];\n if (index !== getTransparencyIndex(null)) {\n return { r, g, b, a: 255 };\n }\n return { r, g, b, a: avgAlpha ? ~~((r + g + b) / 3) : 0 };\n };\n const image = (() => {\n try {\n return new ImageData(frame.width, frame.height, { colorSpace: \"srgb\" });\n }\n catch (error) {\n if (error instanceof DOMException && error.name === \"IndexSizeError\") {\n return null;\n }\n throw error;\n }\n })();\n if (image == null) {\n throw new EvalError(\"GIF frame size is to large\");\n }\n const minCodeSize = byteStream.nextByte(), imageData = byteStream.readSubBlocksBin(), clearCode = 1 << minCodeSize;\n const readBits = (pos, len) => {\n const bytePos = pos >>> 3, bitPos = pos & 7;\n return (((imageData[bytePos] + (imageData[bytePos + 1] << 8) + (imageData[bytePos + 2] << 16)) &\n (((1 << len) - 1) << bitPos)) >>>\n bitPos);\n };\n if (interlacedFlag) {\n for (let code = 0, size = minCodeSize + 1, pos = 0, dic = [[0]], pass = 0; pass < 4; pass++) {\n if (InterlaceOffsets[pass] < frame.height) {\n let pixelPos = 0, lineIndex = 0, exit = false;\n while (!exit) {\n const last = code;\n code = readBits(pos, size);\n pos += size + 1;\n if (code === clearCode) {\n size = minCodeSize + 1;\n dic.length = clearCode + 2;\n for (let i = 0; i < dic.length; i++) {\n dic[i] = i < clearCode ? [i] : [];\n }\n }\n else {\n if (code >= dic.length) {\n dic.push(dic[last].concat(dic[last][0]));\n }\n else if (last !== clearCode) {\n dic.push(dic[last].concat(dic[code][0]));\n }\n for (const item of dic[code]) {\n const { r, g, b, a } = getColor(item);\n image.data.set([r, g, b, a], InterlaceOffsets[pass] * frame.width +\n InterlaceSteps[pass] * lineIndex +\n (pixelPos % (frame.width * 4)));\n pixelPos += 4;\n }\n if (dic.length === 1 << size && size < 0xc) {\n size++;\n }\n }\n if (pixelPos === frame.width * 4 * (lineIndex + 1)) {\n lineIndex++;\n if (InterlaceOffsets[pass] + InterlaceSteps[pass] * lineIndex >= frame.height) {\n exit = true;\n }\n }\n }\n }\n progressCallback?.(byteStream.pos / (byteStream.data.length - 1), getFrameIndex(false) + 1, image, { x: frame.left, y: frame.top }, { width: gif.width, height: gif.height });\n }\n frame.image = image;\n frame.bitmap = await createImageBitmap(image);\n }\n else {\n let code = 0, size = minCodeSize + 1, pos = 0, pixelPos = -4, exit = false;\n const dic = [[0]];\n while (!exit) {\n const last = code;\n code = readBits(pos, size);\n pos += size;\n if (code === clearCode) {\n size = minCodeSize + 1;\n dic.length = clearCode + 2;\n for (let i = 0; i < dic.length; i++) {\n dic[i] = i < clearCode ? [i] : [];\n }\n }\n else {\n if (code === clearCode + 1) {\n exit = true;\n break;\n }\n if (code >= dic.length) {\n dic.push(dic[last].concat(dic[last][0]));\n }\n else if (last !== clearCode) {\n dic.push(dic[last].concat(dic[code][0]));\n }\n for (const item of dic[code]) {\n const { r, g, b, a } = getColor(item);\n image.data.set([r, g, b, a], (pixelPos += 4));\n }\n if (dic.length >= 1 << size && size < 0xc) {\n size++;\n }\n }\n }\n frame.image = image;\n frame.bitmap = await createImageBitmap(image);\n progressCallback?.((byteStream.pos + 1) / byteStream.data.length, getFrameIndex(false) + 1, frame.image, { x: frame.left, y: frame.top }, { width: gif.width, height: gif.height });\n }\n}\nasync function parseBlock(byteStream, gif, avgAlpha, getFrameIndex, getTransparencyIndex, progressCallback) {\n switch (byteStream.nextByte()) {\n case GIFDataHeaders.EndOfFile:\n return true;\n case GIFDataHeaders.Image:\n await parseImageBlock(byteStream, gif, avgAlpha, getFrameIndex, getTransparencyIndex, progressCallback);\n break;\n case GIFDataHeaders.Extension:\n parseExtensionBlock(byteStream, gif, getFrameIndex, getTransparencyIndex);\n break;\n default:\n throw new EvalError(\"undefined block found\");\n }\n return false;\n}\nexport function getGIFLoopAmount(gif) {\n for (const extension of gif.applicationExtensions) {\n if (extension.identifier + extension.authenticationCode !== \"NETSCAPE2.0\") {\n continue;\n }\n return extension.data[1] + (extension.data[2] << 8);\n }\n return NaN;\n}\nexport async function decodeGIF(gifURL, progressCallback, avgAlpha) {\n if (!avgAlpha)\n avgAlpha = false;\n const res = await fetch(gifURL);\n if (!res.ok && res.status === 404) {\n throw new EvalError(\"file not found\");\n }\n const buffer = await res.arrayBuffer();\n const gif = {\n width: 0,\n height: 0,\n totalTime: 0,\n colorRes: 0,\n pixelAspectRatio: 0,\n frames: [],\n sortFlag: false,\n globalColorTable: [],\n backgroundImage: new ImageData(1, 1, { colorSpace: \"srgb\" }),\n comments: [],\n applicationExtensions: [],\n }, byteStream = new ByteStream(new Uint8ClampedArray(buffer));\n if (byteStream.getString(6) !== \"GIF89a\") {\n throw new Error(\"not a supported GIF file\");\n }\n gif.width = byteStream.nextTwoBytes();\n gif.height = byteStream.nextTwoBytes();\n const packedByte = byteStream.nextByte(), globalColorTableFlag = (packedByte & 0x80) === 0x80;\n gif.colorRes = (packedByte & 0x70) >>> 4;\n gif.sortFlag = (packedByte & 8) === 8;\n const globalColorCount = 1 << ((packedByte & 7) + 1), backgroundColorIndex = byteStream.nextByte();\n gif.pixelAspectRatio = byteStream.nextByte();\n if (gif.pixelAspectRatio !== 0) {\n gif.pixelAspectRatio = (gif.pixelAspectRatio + 0xf) / 0x40;\n }\n if (globalColorTableFlag) {\n gif.globalColorTable = parseColorTable(byteStream, globalColorCount);\n }\n const backgroundImage = (() => {\n try {\n return new ImageData(gif.width, gif.height, { colorSpace: \"srgb\" });\n }\n catch (error) {\n if (error instanceof DOMException && error.name === \"IndexSizeError\") {\n return null;\n }\n throw error;\n }\n })();\n if (backgroundImage == null) {\n throw new Error(\"GIF frame size is to large\");\n }\n const { r, g, b } = gif.globalColorTable[backgroundColorIndex];\n backgroundImage.data.set(globalColorTableFlag ? [r, g, b, 255] : [0, 0, 0, 0]);\n for (let i = 4; i < backgroundImage.data.length; i *= 2) {\n backgroundImage.data.copyWithin(i, 0, i);\n }\n gif.backgroundImage = backgroundImage;\n let frameIndex = -1, incrementFrameIndex = true, transparencyIndex = -1;\n const getframeIndex = (increment) => {\n if (increment) {\n incrementFrameIndex = true;\n }\n return frameIndex;\n };\n const getTransparencyIndex = (newValue) => {\n if (newValue != null) {\n transparencyIndex = newValue;\n }\n return transparencyIndex;\n };\n try {\n do {\n if (incrementFrameIndex) {\n gif.frames.push({\n left: 0,\n top: 0,\n width: 0,\n height: 0,\n disposalMethod: DisposalMethod.Replace,\n image: new ImageData(1, 1, { colorSpace: \"srgb\" }),\n plainTextData: null,\n userInputDelayFlag: false,\n delayTime: 0,\n sortFlag: false,\n localColorTable: [],\n reserved: 0,\n GCreserved: 0,\n });\n frameIndex++;\n transparencyIndex = -1;\n incrementFrameIndex = false;\n }\n } while (!(await parseBlock(byteStream, gif, avgAlpha, getframeIndex, getTransparencyIndex, progressCallback)));\n gif.frames.length--;\n for (const frame of gif.frames) {\n if (frame.userInputDelayFlag && frame.delayTime === 0) {\n gif.totalTime = Infinity;\n break;\n }\n gif.totalTime += frame.delayTime;\n }\n return gif;\n }\n catch (error) {\n if (error instanceof EvalError) {\n throw new Error(`error while parsing frame ${frameIndex} \"${error.message}\"`);\n }\n throw error;\n }\n}\nexport function drawGif(data) {\n const { context, radius, particle, delta } = data, image = particle.image;\n if (!image?.gifData || !image.gif) {\n return;\n }\n const offscreenCanvas = new OffscreenCanvas(image.gifData.width, image.gifData.height), offscreenContext = offscreenCanvas.getContext(\"2d\");\n if (!offscreenContext) {\n throw new Error(\"could not create offscreen canvas context\");\n }\n offscreenContext.imageSmoothingQuality = \"low\";\n offscreenContext.imageSmoothingEnabled = false;\n offscreenContext.clearRect(origin.x, origin.y, offscreenCanvas.width, offscreenCanvas.height);\n if (particle.gifLoopCount === undefined) {\n particle.gifLoopCount = image.gifLoopCount ?? defaultLoopCount;\n }\n let frameIndex = particle.gifFrame ?? defaultFrame;\n const pos = { x: -image.gifData.width * half, y: -image.gifData.height * half }, frame = image.gifData.frames[frameIndex];\n if (particle.gifTime === undefined) {\n particle.gifTime = initialTime;\n }\n if (!frame.bitmap) {\n return;\n }\n context.scale(radius / image.gifData.width, radius / image.gifData.height);\n switch (frame.disposalMethod) {\n case DisposalMethod.UndefinedA:\n case DisposalMethod.UndefinedB:\n case DisposalMethod.UndefinedC:\n case DisposalMethod.UndefinedD:\n case DisposalMethod.Replace:\n offscreenContext.drawImage(frame.bitmap, frame.left, frame.top);\n context.drawImage(offscreenCanvas, pos.x, pos.y);\n offscreenContext.clearRect(origin.x, origin.y, offscreenCanvas.width, offscreenCanvas.height);\n break;\n case DisposalMethod.Combine:\n offscreenContext.drawImage(frame.bitmap, frame.left, frame.top);\n context.drawImage(offscreenCanvas, pos.x, pos.y);\n break;\n case DisposalMethod.RestoreBackground:\n offscreenContext.drawImage(frame.bitmap, frame.left, frame.top);\n context.drawImage(offscreenCanvas, pos.x, pos.y);\n offscreenContext.clearRect(origin.x, origin.y, offscreenCanvas.width, offscreenCanvas.height);\n if (!image.gifData.globalColorTable.length) {\n offscreenContext.putImageData(image.gifData.frames[firstIndex].image, pos.x + frame.left, pos.y + frame.top);\n }\n else {\n offscreenContext.putImageData(image.gifData.backgroundImage, pos.x, pos.y);\n }\n break;\n case DisposalMethod.RestorePrevious:\n {\n const previousImageData = offscreenContext.getImageData(origin.x, origin.y, offscreenCanvas.width, offscreenCanvas.height);\n offscreenContext.drawImage(frame.bitmap, frame.left, frame.top);\n context.drawImage(offscreenCanvas, pos.x, pos.y);\n offscreenContext.clearRect(origin.x, origin.y, offscreenCanvas.width, offscreenCanvas.height);\n offscreenContext.putImageData(previousImageData, origin.x, origin.y);\n }\n break;\n }\n particle.gifTime += delta.value;\n if (particle.gifTime > frame.delayTime) {\n particle.gifTime -= frame.delayTime;\n if (++frameIndex >= image.gifData.frames.length) {\n if (--particle.gifLoopCount <= defaultLoopCount) {\n return;\n }\n frameIndex = firstIndex;\n offscreenContext.clearRect(origin.x, origin.y, offscreenCanvas.width, offscreenCanvas.height);\n }\n particle.gifFrame = frameIndex;\n }\n context.scale(image.gifData.width / radius, image.gifData.height / radius);\n}\nexport async function loadGifImage(image) {\n if (image.type !== \"gif\") {\n await loadImage(image);\n return;\n }\n image.loading = true;\n try {\n image.gifData = await decodeGIF(image.source);\n image.gifLoopCount = getGIFLoopAmount(image.gifData) ?? defaultLoopCount;\n if (!image.gifLoopCount) {\n image.gifLoopCount = Infinity;\n }\n }\n catch {\n image.error = true;\n }\n image.loading = false;\n}\n","import { errorPrefix } from \"@tsparticles/engine\";\nimport { replaceImageColor } from \"./Utils.js\";\nimport { drawGif } from \"./GifUtils/Utils.js\";\nconst double = 2, defaultAlpha = 1, sides = 12, defaultRatio = 1;\nexport class ImageDrawer {\n constructor(engine) {\n this.validTypes = [\"image\", \"images\"];\n this.loadImageShape = async (imageShape) => {\n if (!this._engine.loadImage) {\n throw new Error(`${errorPrefix} image shape not initialized`);\n }\n await this._engine.loadImage({\n gif: imageShape.gif,\n name: imageShape.name,\n replaceColor: imageShape.replaceColor ?? false,\n src: imageShape.src,\n });\n };\n this._engine = engine;\n }\n addImage(image) {\n if (!this._engine.images) {\n this._engine.images = [];\n }\n this._engine.images.push(image);\n }\n draw(data) {\n const { context, radius, particle, opacity } = data, image = particle.image, element = image?.element;\n if (!image) {\n return;\n }\n context.globalAlpha = opacity;\n if (image.gif && image.gifData) {\n drawGif(data);\n }\n else if (element) {\n const ratio = image.ratio, pos = {\n x: -radius,\n y: -radius,\n }, diameter = radius * double;\n context.drawImage(element, pos.x, pos.y, diameter, diameter / ratio);\n }\n context.globalAlpha = defaultAlpha;\n }\n getSidesCount() {\n return sides;\n }\n async init(container) {\n const options = container.actualOptions;\n if (!options.preload || !this._engine.loadImage) {\n return;\n }\n for (const imageData of options.preload) {\n await this._engine.loadImage(imageData);\n }\n }\n loadShape(particle) {\n if (particle.shape !== \"image\" && particle.shape !== \"images\") {\n return;\n }\n if (!this._engine.images) {\n this._engine.images = [];\n }\n const imageData = particle.shapeData;\n if (!imageData) {\n return;\n }\n const image = this._engine.images.find((t) => t.name === imageData.name || t.source === imageData.src);\n if (!image) {\n void this.loadImageShape(imageData).then(() => {\n this.loadShape(particle);\n });\n }\n }\n particleInit(container, particle) {\n if (particle.shape !== \"image\" && particle.shape !== \"images\") {\n return;\n }\n if (!this._engine.images) {\n this._engine.images = [];\n }\n const images = this._engine.images, imageData = particle.shapeData;\n if (!imageData) {\n return;\n }\n const color = particle.getFillColor(), image = images.find((t) => t.name === imageData.name || t.source === imageData.src);\n if (!image) {\n return;\n }\n const replaceColor = imageData.replaceColor ?? image.replaceColor;\n if (image.loading) {\n setTimeout(() => {\n this.particleInit(container, particle);\n });\n return;\n }\n void (async () => {\n let imageRes;\n if (image.svgData && color) {\n imageRes = await replaceImageColor(image, imageData, color, particle);\n }\n else {\n imageRes = {\n color,\n data: image,\n element: image.element,\n gif: image.gif,\n gifData: image.gifData,\n gifLoopCount: image.gifLoopCount,\n loaded: true,\n ratio: imageData.width && imageData.height\n ? imageData.width / imageData.height\n : image.ratio ?? defaultRatio,\n replaceColor: replaceColor,\n source: imageData.src,\n };\n }\n if (!imageRes.ratio) {\n imageRes.ratio = 1;\n }\n const fill = imageData.fill ?? particle.shapeFill, close = imageData.close ?? particle.shapeClose, imageShape = {\n image: imageRes,\n fill,\n close,\n };\n particle.image = imageShape.image;\n particle.shapeFill = imageShape.fill;\n particle.shapeClose = imageShape.close;\n })();\n }\n}\n","export class Preload {\n constructor() {\n this.src = \"\";\n this.gif = false;\n }\n load(data) {\n if (!data) {\n return;\n }\n if (data.gif !== undefined) {\n this.gif = data.gif;\n }\n if (data.height !== undefined) {\n this.height = data.height;\n }\n if (data.name !== undefined) {\n this.name = data.name;\n }\n if (data.replaceColor !== undefined) {\n this.replaceColor = data.replaceColor;\n }\n if (data.src !== undefined) {\n this.src = data.src;\n }\n if (data.width !== undefined) {\n this.width = data.width;\n }\n }\n}\n","import { Preload } from \"./Options/Classes/Preload.js\";\nexport class ImagePreloaderPlugin {\n constructor(engine) {\n this.id = \"imagePreloader\";\n this._engine = engine;\n }\n async getPlugin() {\n await Promise.resolve();\n return {};\n }\n loadOptions(options, source) {\n if (!source?.preload) {\n return;\n }\n if (!options.preload) {\n options.preload = [];\n }\n const preloadOptions = options.preload;\n for (const item of source.preload) {\n const existing = preloadOptions.find(t => t.name === item.name || t.src === item.src);\n if (existing) {\n existing.load(item);\n }\n else {\n const preload = new Preload();\n preload.load(item);\n preloadOptions.push(preload);\n }\n }\n }\n needsPlugin() {\n return true;\n }\n}\n","import { downloadSvgImage, loadImage } from \"./Utils.js\";\nimport { ImageDrawer } from \"./ImageDrawer.js\";\nimport { ImagePreloaderPlugin } from \"./ImagePreloader.js\";\nimport { errorPrefix } from \"@tsparticles/engine\";\nimport { loadGifImage } from \"./GifUtils/Utils.js\";\nconst extLength = 3;\nfunction addLoadImageToEngine(engine) {\n if (engine.loadImage) {\n return;\n }\n engine.loadImage = async (data) => {\n if (!data.name && !data.src) {\n throw new Error(`${errorPrefix} no image source provided`);\n }\n if (!engine.images) {\n engine.images = [];\n }\n if (engine.images.find((t) => t.name === data.name || t.source === data.src)) {\n return;\n }\n try {\n const image = {\n gif: data.gif ?? false,\n name: data.name ?? data.src,\n source: data.src,\n type: data.src.substring(data.src.length - extLength),\n error: false,\n loading: true,\n replaceColor: data.replaceColor,\n ratio: data.width && data.height ? data.width / data.height : undefined,\n };\n engine.images.push(image);\n let imageFunc;\n if (data.gif) {\n imageFunc = loadGifImage;\n }\n else {\n imageFunc = data.replaceColor ? downloadSvgImage : loadImage;\n }\n await imageFunc(image);\n }\n catch {\n throw new Error(`${errorPrefix} ${data.name ?? data.src} not found`);\n }\n };\n}\nexport async function loadImageShape(engine, refresh = true) {\n addLoadImageToEngine(engine);\n const preloader = new ImagePreloaderPlugin(engine);\n await engine.addPlugin(preloader, refresh);\n await engine.addShape(new ImageDrawer(engine), refresh);\n}\n","import { ValueWithRandom } from \"@tsparticles/engine\";\nexport class LifeDelay extends ValueWithRandom {\n constructor() {\n super();\n this.sync = false;\n }\n load(data) {\n if (!data) {\n return;\n }\n super.load(data);\n if (data.sync !== undefined) {\n this.sync = data.sync;\n }\n }\n}\n","import { ValueWithRandom } from \"@tsparticles/engine\";\nexport class LifeDuration extends ValueWithRandom {\n constructor() {\n super();\n this.sync = false;\n }\n load(data) {\n if (!data) {\n return;\n }\n super.load(data);\n if (data.sync !== undefined) {\n this.sync = data.sync;\n }\n }\n}\n","import { LifeDelay } from \"./LifeDelay.js\";\nimport { LifeDuration } from \"./LifeDuration.js\";\nexport class Life {\n constructor() {\n this.count = 0;\n this.delay = new LifeDelay();\n this.duration = new LifeDuration();\n }\n load(data) {\n if (!data) {\n return;\n }\n if (data.count !== undefined) {\n this.count = data.count;\n }\n this.delay.load(data.delay);\n this.duration.load(data.duration);\n }\n}\n","import { getRangeValue, millisecondsToSeconds, randomInRange, setRangeValue, } from \"@tsparticles/engine\";\nconst noTime = 0, infiniteValue = -1, noLife = 0, minCanvasSize = 0;\nexport function updateLife(particle, delta, canvasSize) {\n if (!particle.life) {\n return;\n }\n const life = particle.life;\n let justSpawned = false;\n if (particle.spawning) {\n life.delayTime += delta.value;\n if (life.delayTime >= particle.life.delay) {\n justSpawned = true;\n particle.spawning = false;\n life.delayTime = noTime;\n life.time = noTime;\n }\n else {\n return;\n }\n }\n if (life.duration === infiniteValue) {\n return;\n }\n if (particle.spawning) {\n return;\n }\n if (justSpawned) {\n life.time = noTime;\n }\n else {\n life.time += delta.value;\n }\n if (life.time < life.duration) {\n return;\n }\n life.time = noTime;\n if (particle.life.count > noLife) {\n particle.life.count--;\n }\n if (particle.life.count === noLife) {\n particle.destroy();\n return;\n }\n const widthRange = setRangeValue(minCanvasSize, canvasSize.width), heightRange = setRangeValue(minCanvasSize, canvasSize.width);\n particle.position.x = randomInRange(widthRange);\n particle.position.y = randomInRange(heightRange);\n particle.spawning = true;\n life.delayTime = noTime;\n life.time = noTime;\n particle.reset();\n const lifeOptions = particle.options.life;\n if (lifeOptions) {\n life.delay = getRangeValue(lifeOptions.delay.value) * millisecondsToSeconds;\n life.duration = getRangeValue(lifeOptions.duration.value) * millisecondsToSeconds;\n }\n}\n","import { getRandom, getRangeValue, millisecondsToSeconds, } from \"@tsparticles/engine\";\nimport { Life } from \"./Options/Classes/Life.js\";\nimport { updateLife } from \"./Utils.js\";\nconst noTime = 0, identity = 1, infiniteValue = -1;\nexport class LifeUpdater {\n constructor(container) {\n this.container = container;\n }\n init(particle) {\n const container = this.container, particlesOptions = particle.options, lifeOptions = particlesOptions.life;\n if (!lifeOptions) {\n return;\n }\n particle.life = {\n delay: container.retina.reduceFactor\n ? ((getRangeValue(lifeOptions.delay.value) * (lifeOptions.delay.sync ? identity : getRandom())) /\n container.retina.reduceFactor) *\n millisecondsToSeconds\n : noTime,\n delayTime: noTime,\n duration: container.retina.reduceFactor\n ? ((getRangeValue(lifeOptions.duration.value) * (lifeOptions.duration.sync ? identity : getRandom())) /\n container.retina.reduceFactor) *\n millisecondsToSeconds\n : noTime,\n time: noTime,\n count: lifeOptions.count,\n };\n if (particle.life.duration <= noTime) {\n particle.life.duration = infiniteValue;\n }\n if (particle.life.count <= noTime) {\n particle.life.count = infiniteValue;\n }\n if (particle.life) {\n particle.spawning = particle.life.delay > noTime;\n }\n }\n isEnabled(particle) {\n return !particle.destroyed;\n }\n loadOptions(options, ...sources) {\n if (!options.life) {\n options.life = new Life();\n }\n for (const source of sources) {\n options.life.load(source?.life);\n }\n }\n update(particle, delta) {\n if (!this.isEnabled(particle) || !particle.life) {\n return;\n }\n updateLife(particle, delta, this.container.canvas.size);\n }\n}\n","import { LifeUpdater } from \"./LifeUpdater.js\";\nexport async function loadLifeUpdater(engine, refresh = true) {\n await engine.addParticleUpdater(\"life\", async (container) => {\n return Promise.resolve(new LifeUpdater(container));\n }, refresh);\n}\n","export function drawLine(data) {\n const { context, particle, radius } = data, shapeData = particle.shapeData, centerY = 0;\n context.moveTo(-radius, centerY);\n context.lineTo(radius, centerY);\n context.lineCap = shapeData?.cap ?? \"butt\";\n}\n","import { drawLine } from \"./Utils.js\";\nconst sides = 1;\nexport class LineDrawer {\n constructor() {\n this.validTypes = [\"line\"];\n }\n draw(data) {\n drawLine(data);\n }\n getSidesCount() {\n return sides;\n }\n}\n","import { LineDrawer } from \"./LineDrawer.js\";\nexport async function loadLineShape(engine, refresh = true) {\n await engine.addShape(new LineDrawer(), refresh);\n}\n","import { isSsr } from \"@tsparticles/engine\";\nconst half = 0.5;\nexport class ParallaxMover {\n init() {\n }\n isEnabled(particle) {\n return (!isSsr() &&\n !particle.destroyed &&\n particle.container.actualOptions.interactivity.events.onHover.parallax.enable);\n }\n move(particle) {\n const container = particle.container, options = container.actualOptions, parallaxOptions = options.interactivity.events.onHover.parallax;\n if (isSsr() || !parallaxOptions.enable) {\n return;\n }\n const parallaxForce = parallaxOptions.force, mousePos = container.interactivity.mouse.position;\n if (!mousePos) {\n return;\n }\n const canvasSize = container.canvas.size, canvasCenter = {\n x: canvasSize.width * half,\n y: canvasSize.height * half,\n }, parallaxSmooth = parallaxOptions.smooth, factor = particle.getRadius() / parallaxForce, centerDistance = {\n x: (mousePos.x - canvasCenter.x) * factor,\n y: (mousePos.y - canvasCenter.y) * factor,\n }, { offset } = particle;\n offset.x += (centerDistance.x - offset.x) / parallaxSmooth;\n offset.y += (centerDistance.y - offset.y) / parallaxSmooth;\n }\n}\n","import { ParallaxMover } from \"./ParallaxMover.js\";\nexport async function loadParallaxMover(engine, refresh = true) {\n await engine.addMover(\"parallax\", () => {\n return Promise.resolve(new ParallaxMover());\n }, refresh);\n}\n","import { ParticlesInteractorBase, getDistances, getRangeValue, } from \"@tsparticles/engine\";\nconst attractFactor = 1000, identity = 1;\nexport class Attractor extends ParticlesInteractorBase {\n constructor(container) {\n super(container);\n }\n clear() {\n }\n init() {\n }\n interact(p1) {\n const container = this.container;\n if (p1.attractDistance === undefined) {\n p1.attractDistance = getRangeValue(p1.options.move.attract.distance) * container.retina.pixelRatio;\n }\n const distance = p1.attractDistance, pos1 = p1.getPosition(), query = container.particles.quadTree.queryCircle(pos1, distance);\n for (const p2 of query) {\n if (p1 === p2 || !p2.options.move.attract.enable || p2.destroyed || p2.spawning) {\n continue;\n }\n const pos2 = p2.getPosition(), { dx, dy } = getDistances(pos1, pos2), rotate = p1.options.move.attract.rotate, ax = dx / (rotate.x * attractFactor), ay = dy / (rotate.y * attractFactor), p1Factor = p2.size.value / p1.size.value, p2Factor = identity / p1Factor;\n p1.velocity.x -= ax * p1Factor;\n p1.velocity.y -= ay * p1Factor;\n p2.velocity.x += ax * p2Factor;\n p2.velocity.y += ay * p2Factor;\n }\n }\n isEnabled(particle) {\n return particle.options.move.attract.enable;\n }\n reset() {\n }\n}\n","import { Attractor } from \"./Attractor.js\";\nexport async function loadParticlesAttractInteraction(engine, refresh = true) {\n await engine.addInteractor(\"particlesAttract\", container => {\n return Promise.resolve(new Attractor(container));\n }, refresh);\n}\n","import { clamp } from \"@tsparticles/engine\";\nconst half = 0.5, absorbFactor = 10, minAbsorbFactor = 0;\nfunction updateAbsorb(p1, r1, p2, r2, delta, pixelRatio) {\n const factor = clamp((p1.options.collisions.absorb.speed * delta.factor) / absorbFactor, minAbsorbFactor, r2);\n p1.size.value += factor * half;\n p2.size.value -= factor;\n if (r2 <= pixelRatio) {\n p2.size.value = 0;\n p2.destroy();\n }\n}\nexport function absorb(p1, p2, delta, pixelRatio) {\n const r1 = p1.getRadius(), r2 = p2.getRadius();\n if (r1 === undefined && r2 !== undefined) {\n p1.destroy();\n }\n else if (r1 !== undefined && r2 === undefined) {\n p2.destroy();\n }\n else if (r1 !== undefined && r2 !== undefined) {\n if (r1 >= r2) {\n updateAbsorb(p1, r1, p2, r2, delta, pixelRatio);\n }\n else {\n updateAbsorb(p2, r2, p1, r1, delta, pixelRatio);\n }\n }\n}\n","import { circleBounce, circleBounceDataFromParticle, getRangeValue } from \"@tsparticles/engine\";\nconst fixBounceSpeed = (p) => {\n if (p.collisionMaxSpeed === undefined) {\n p.collisionMaxSpeed = getRangeValue(p.options.collisions.maxSpeed);\n }\n if (p.velocity.length > p.collisionMaxSpeed) {\n p.velocity.length = p.collisionMaxSpeed;\n }\n};\nexport function bounce(p1, p2) {\n circleBounce(circleBounceDataFromParticle(p1), circleBounceDataFromParticle(p2));\n fixBounceSpeed(p1);\n fixBounceSpeed(p2);\n}\n","import { bounce } from \"./Bounce.js\";\nexport function destroy(p1, p2) {\n if (!p1.unbreakable && !p2.unbreakable) {\n bounce(p1, p2);\n }\n if (p1.getRadius() === undefined && p2.getRadius() !== undefined) {\n p1.destroy();\n }\n else if (p1.getRadius() !== undefined && p2.getRadius() === undefined) {\n p2.destroy();\n }\n else if (p1.getRadius() !== undefined && p2.getRadius() !== undefined) {\n const deleteP = p1.getRadius() >= p2.getRadius() ? p2 : p1;\n deleteP.destroy();\n }\n}\n","import { CollisionMode } from \"@tsparticles/engine\";\nimport { absorb } from \"./Absorb.js\";\nimport { bounce } from \"./Bounce.js\";\nimport { destroy } from \"./Destroy.js\";\nexport function resolveCollision(p1, p2, delta, pixelRatio) {\n switch (p1.options.collisions.mode) {\n case CollisionMode.absorb: {\n absorb(p1, p2, delta, pixelRatio);\n break;\n }\n case CollisionMode.bounce: {\n bounce(p1, p2);\n break;\n }\n case CollisionMode.destroy: {\n destroy(p1, p2);\n break;\n }\n }\n}\n","import { ParticlesInteractorBase, getDistance } from \"@tsparticles/engine\";\nimport { resolveCollision } from \"./ResolveCollision.js\";\nconst double = 2;\nexport class Collider extends ParticlesInteractorBase {\n constructor(container) {\n super(container);\n }\n clear() {\n }\n init() {\n }\n interact(p1, delta) {\n if (p1.destroyed || p1.spawning) {\n return;\n }\n const container = this.container, pos1 = p1.getPosition(), radius1 = p1.getRadius(), query = container.particles.quadTree.queryCircle(pos1, radius1 * double);\n for (const p2 of query) {\n if (p1 === p2 ||\n !p2.options.collisions.enable ||\n p1.options.collisions.mode !== p2.options.collisions.mode ||\n p2.destroyed ||\n p2.spawning) {\n continue;\n }\n const pos2 = p2.getPosition(), radius2 = p2.getRadius();\n if (Math.abs(Math.round(pos1.z) - Math.round(pos2.z)) > radius1 + radius2) {\n continue;\n }\n const dist = getDistance(pos1, pos2), distP = radius1 + radius2;\n if (dist > distP) {\n continue;\n }\n resolveCollision(p1, p2, delta, container.retina.pixelRatio);\n }\n }\n isEnabled(particle) {\n return particle.options.collisions.enable;\n }\n reset() {\n }\n}\n","import { Collider } from \"./Collider.js\";\nexport async function loadParticlesCollisionsInteraction(engine, refresh = true) {\n await engine.addInteractor(\"particlesCollisions\", container => {\n return Promise.resolve(new Collider(container));\n }, refresh);\n}\n","import { Circle, Rectangle } from \"@tsparticles/engine\";\nconst double = 2;\nexport class CircleWarp extends Circle {\n constructor(x, y, radius, canvasSize) {\n super(x, y, radius);\n this.canvasSize = canvasSize;\n this.canvasSize = { ...canvasSize };\n }\n contains(point) {\n const { width, height } = this.canvasSize, { x, y } = point;\n return (super.contains(point) ||\n super.contains({ x: x - width, y }) ||\n super.contains({ x: x - width, y: y - height }) ||\n super.contains({ x, y: y - height }));\n }\n intersects(range) {\n if (super.intersects(range)) {\n return true;\n }\n const rect = range, circle = range, newPos = {\n x: range.position.x - this.canvasSize.width,\n y: range.position.y - this.canvasSize.height,\n };\n if (circle.radius !== undefined) {\n const biggerCircle = new Circle(newPos.x, newPos.y, circle.radius * double);\n return super.intersects(biggerCircle);\n }\n else if (rect.size !== undefined) {\n const rectSW = new Rectangle(newPos.x, newPos.y, rect.size.width * double, rect.size.height * double);\n return super.intersects(rectSW);\n }\n return false;\n }\n}\n","import { OptionsColor } from \"@tsparticles/engine\";\nexport class LinksShadow {\n constructor() {\n this.blur = 5;\n this.color = new OptionsColor();\n this.color.value = \"#000\";\n this.enable = false;\n }\n load(data) {\n if (!data) {\n return;\n }\n if (data.blur !== undefined) {\n this.blur = data.blur;\n }\n this.color = OptionsColor.create(this.color, data.color);\n if (data.enable !== undefined) {\n this.enable = data.enable;\n }\n }\n}\n","import { OptionsColor } from \"@tsparticles/engine\";\nexport class LinksTriangle {\n constructor() {\n this.enable = false;\n this.frequency = 1;\n }\n load(data) {\n if (!data) {\n return;\n }\n if (data.color !== undefined) {\n this.color = OptionsColor.create(this.color, data.color);\n }\n if (data.enable !== undefined) {\n this.enable = data.enable;\n }\n if (data.frequency !== undefined) {\n this.frequency = data.frequency;\n }\n if (data.opacity !== undefined) {\n this.opacity = data.opacity;\n }\n }\n}\n","import { OptionsColor } from \"@tsparticles/engine\";\nimport { LinksShadow } from \"./LinksShadow.js\";\nimport { LinksTriangle } from \"./LinksTriangle.js\";\nexport class Links {\n constructor() {\n this.blink = false;\n this.color = new OptionsColor();\n this.color.value = \"#fff\";\n this.consent = false;\n this.distance = 100;\n this.enable = false;\n this.frequency = 1;\n this.opacity = 1;\n this.shadow = new LinksShadow();\n this.triangles = new LinksTriangle();\n this.width = 1;\n this.warp = false;\n }\n load(data) {\n if (!data) {\n return;\n }\n if (data.id !== undefined) {\n this.id = data.id;\n }\n if (data.blink !== undefined) {\n this.blink = data.blink;\n }\n this.color = OptionsColor.create(this.color, data.color);\n if (data.consent !== undefined) {\n this.consent = data.consent;\n }\n if (data.distance !== undefined) {\n this.distance = data.distance;\n }\n if (data.enable !== undefined) {\n this.enable = data.enable;\n }\n if (data.frequency !== undefined) {\n this.frequency = data.frequency;\n }\n if (data.opacity !== undefined) {\n this.opacity = data.opacity;\n }\n this.shadow.load(data.shadow);\n this.triangles.load(data.triangles);\n if (data.width !== undefined) {\n this.width = data.width;\n }\n if (data.warp !== undefined) {\n this.warp = data.warp;\n }\n }\n}\n","import { Circle, ParticlesInteractorBase, getDistances, getLinkRandomColor, } from \"@tsparticles/engine\";\nimport { CircleWarp } from \"./CircleWarp.js\";\nimport { Links } from \"./Options/Classes/Links.js\";\nconst squarePower = 2, opacityOffset = 1, origin = {\n x: 0,\n y: 0,\n}, minDistance = 0;\nfunction getLinkDistance(pos1, pos2, optDistance, canvasSize, warp) {\n const { dx, dy, distance } = getDistances(pos1, pos2);\n if (!warp || distance <= optDistance) {\n return distance;\n }\n const absDiffs = {\n x: Math.abs(dx),\n y: Math.abs(dy),\n }, warpDistances = {\n x: Math.min(absDiffs.x, canvasSize.width - absDiffs.x),\n y: Math.min(absDiffs.y, canvasSize.height - absDiffs.y),\n };\n return Math.sqrt(warpDistances.x ** squarePower + warpDistances.y ** squarePower);\n}\nexport class Linker extends ParticlesInteractorBase {\n constructor(container) {\n super(container);\n this._setColor = p1 => {\n if (!p1.options.links) {\n return;\n }\n const container = this.linkContainer, linksOptions = p1.options.links;\n let linkColor = linksOptions.id === undefined\n ? container.particles.linksColor\n : container.particles.linksColors.get(linksOptions.id);\n if (linkColor) {\n return;\n }\n const optColor = linksOptions.color;\n linkColor = getLinkRandomColor(optColor, linksOptions.blink, linksOptions.consent);\n if (linksOptions.id === undefined) {\n container.particles.linksColor = linkColor;\n }\n else {\n container.particles.linksColors.set(linksOptions.id, linkColor);\n }\n };\n this.linkContainer = container;\n }\n clear() {\n }\n init() {\n this.linkContainer.particles.linksColor = undefined;\n this.linkContainer.particles.linksColors = new Map();\n }\n interact(p1) {\n if (!p1.options.links) {\n return;\n }\n p1.links = [];\n const pos1 = p1.getPosition(), container = this.container, canvasSize = container.canvas.size;\n if (pos1.x < origin.x || pos1.y < origin.y || pos1.x > canvasSize.width || pos1.y > canvasSize.height) {\n return;\n }\n const linkOpt1 = p1.options.links, optOpacity = linkOpt1.opacity, optDistance = p1.retina.linksDistance ?? minDistance, warp = linkOpt1.warp;\n let range;\n if (warp) {\n range = new CircleWarp(pos1.x, pos1.y, optDistance, canvasSize);\n }\n else {\n range = new Circle(pos1.x, pos1.y, optDistance);\n }\n const query = container.particles.quadTree.query(range);\n for (const p2 of query) {\n const linkOpt2 = p2.options.links;\n if (p1 === p2 ||\n !linkOpt2?.enable ||\n linkOpt1.id !== linkOpt2.id ||\n p2.spawning ||\n p2.destroyed ||\n !p2.links ||\n p1.links.some(t => t.destination === p2) ||\n p2.links.some(t => t.destination === p1)) {\n continue;\n }\n const pos2 = p2.getPosition();\n if (pos2.x < origin.x || pos2.y < origin.y || pos2.x > canvasSize.width || pos2.y > canvasSize.height) {\n continue;\n }\n const distance = getLinkDistance(pos1, pos2, optDistance, canvasSize, warp && linkOpt2.warp);\n if (distance > optDistance) {\n continue;\n }\n const opacityLine = (opacityOffset - distance / optDistance) * optOpacity;\n this._setColor(p1);\n p1.links.push({\n destination: p2,\n opacity: opacityLine,\n });\n }\n }\n isEnabled(particle) {\n return !!particle.options.links?.enable;\n }\n loadParticlesOptions(options, ...sources) {\n if (!options.links) {\n options.links = new Links();\n }\n for (const source of sources) {\n options.links.load(source?.links);\n }\n }\n reset() {\n }\n}\n","import { Linker } from \"./Linker.js\";\nexport async function loadLinksInteraction(engine, refresh = true) {\n await engine.addInteractor(\"particlesLinks\", async (container) => {\n return Promise.resolve(new Linker(container));\n }, refresh);\n}\n","import { drawLine, getDistance, getDistances, getRandom, getStyleFromRgb, rangeColorToRgb, } from \"@tsparticles/engine\";\nexport function drawTriangle(context, p1, p2, p3) {\n context.beginPath();\n context.moveTo(p1.x, p1.y);\n context.lineTo(p2.x, p2.y);\n context.lineTo(p3.x, p3.y);\n context.closePath();\n}\nexport function drawLinkLine(params) {\n let drawn = false;\n const { begin, end, maxDistance, context, canvasSize, width, backgroundMask, colorLine, opacity, links } = params;\n if (getDistance(begin, end) <= maxDistance) {\n drawLine(context, begin, end);\n drawn = true;\n }\n else if (links.warp) {\n let pi1;\n let pi2;\n const endNE = {\n x: end.x - canvasSize.width,\n y: end.y,\n };\n const d1 = getDistances(begin, endNE);\n if (d1.distance <= maxDistance) {\n const yi = begin.y - (d1.dy / d1.dx) * begin.x;\n pi1 = { x: 0, y: yi };\n pi2 = { x: canvasSize.width, y: yi };\n }\n else {\n const endSW = {\n x: end.x,\n y: end.y - canvasSize.height,\n };\n const d2 = getDistances(begin, endSW);\n if (d2.distance <= maxDistance) {\n const yi = begin.y - (d2.dy / d2.dx) * begin.x;\n const xi = -yi / (d2.dy / d2.dx);\n pi1 = { x: xi, y: 0 };\n pi2 = { x: xi, y: canvasSize.height };\n }\n else {\n const endSE = {\n x: end.x - canvasSize.width,\n y: end.y - canvasSize.height,\n };\n const d3 = getDistances(begin, endSE);\n if (d3.distance <= maxDistance) {\n const yi = begin.y - (d3.dy / d3.dx) * begin.x;\n const xi = -yi / (d3.dy / d3.dx);\n pi1 = { x: xi, y: yi };\n pi2 = { x: pi1.x + canvasSize.width, y: pi1.y + canvasSize.height };\n }\n }\n }\n if (pi1 && pi2) {\n drawLine(context, begin, pi1);\n drawLine(context, end, pi2);\n drawn = true;\n }\n }\n if (!drawn) {\n return;\n }\n context.lineWidth = width;\n if (backgroundMask.enable) {\n context.globalCompositeOperation = backgroundMask.composite;\n }\n context.strokeStyle = getStyleFromRgb(colorLine, opacity);\n const { shadow } = links;\n if (shadow.enable) {\n const shadowColor = rangeColorToRgb(shadow.color);\n if (shadowColor) {\n context.shadowBlur = shadow.blur;\n context.shadowColor = getStyleFromRgb(shadowColor);\n }\n }\n context.stroke();\n}\nexport function drawLinkTriangle(params) {\n const { context, pos1, pos2, pos3, backgroundMask, colorTriangle, opacityTriangle } = params;\n drawTriangle(context, pos1, pos2, pos3);\n if (backgroundMask.enable) {\n context.globalCompositeOperation = backgroundMask.composite;\n }\n context.fillStyle = getStyleFromRgb(colorTriangle, opacityTriangle);\n context.fill();\n}\nexport function getLinkKey(ids) {\n ids.sort((a, b) => a - b);\n return ids.join(\"_\");\n}\nexport function setLinkFrequency(particles, dictionary) {\n const key = getLinkKey(particles.map(t => t.id));\n let res = dictionary.get(key);\n if (res === undefined) {\n res = getRandom();\n dictionary.set(key, res);\n }\n return res;\n}\n","import { getDistance, getLinkColor, getRandom, getRangeValue, rangeColorToRgb, } from \"@tsparticles/engine\";\nimport { drawLinkLine, drawLinkTriangle, setLinkFrequency } from \"./Utils.js\";\nconst minOpacity = 0, minWidth = 0, minDistance = 0, half = 0.5, maxFrequency = 1;\nexport class LinkInstance {\n constructor(container) {\n this.container = container;\n this._drawLinkLine = (p1, link) => {\n const p1LinksOptions = p1.options.links;\n if (!p1LinksOptions?.enable) {\n return;\n }\n const container = this.container, options = container.actualOptions, p2 = link.destination, pos1 = p1.getPosition(), pos2 = p2.getPosition();\n let opacity = link.opacity;\n container.canvas.draw(ctx => {\n let colorLine;\n const twinkle = p1.options.twinkle?.lines;\n if (twinkle?.enable) {\n const twinkleFreq = twinkle.frequency, twinkleRgb = rangeColorToRgb(twinkle.color), twinkling = getRandom() < twinkleFreq;\n if (twinkling && twinkleRgb) {\n colorLine = twinkleRgb;\n opacity = getRangeValue(twinkle.opacity);\n }\n }\n if (!colorLine) {\n const linkColor = p1LinksOptions.id !== undefined\n ? container.particles.linksColors.get(p1LinksOptions.id)\n : container.particles.linksColor;\n colorLine = getLinkColor(p1, p2, linkColor);\n }\n if (!colorLine) {\n return;\n }\n const width = p1.retina.linksWidth ?? minWidth, maxDistance = p1.retina.linksDistance ?? minDistance, { backgroundMask } = options;\n drawLinkLine({\n context: ctx,\n width,\n begin: pos1,\n end: pos2,\n maxDistance,\n canvasSize: container.canvas.size,\n links: p1LinksOptions,\n backgroundMask: backgroundMask,\n colorLine,\n opacity,\n });\n });\n };\n this._drawLinkTriangle = (p1, link1, link2) => {\n const linksOptions = p1.options.links;\n if (!linksOptions?.enable) {\n return;\n }\n const triangleOptions = linksOptions.triangles;\n if (!triangleOptions.enable) {\n return;\n }\n const container = this.container, options = container.actualOptions, p2 = link1.destination, p3 = link2.destination, opacityTriangle = triangleOptions.opacity ?? (link1.opacity + link2.opacity) * half;\n if (opacityTriangle <= minOpacity) {\n return;\n }\n container.canvas.draw(ctx => {\n const pos1 = p1.getPosition(), pos2 = p2.getPosition(), pos3 = p3.getPosition(), linksDistance = p1.retina.linksDistance ?? minDistance;\n if (getDistance(pos1, pos2) > linksDistance ||\n getDistance(pos3, pos2) > linksDistance ||\n getDistance(pos3, pos1) > linksDistance) {\n return;\n }\n let colorTriangle = rangeColorToRgb(triangleOptions.color);\n if (!colorTriangle) {\n const linkColor = linksOptions.id !== undefined\n ? container.particles.linksColors.get(linksOptions.id)\n : container.particles.linksColor;\n colorTriangle = getLinkColor(p1, p2, linkColor);\n }\n if (!colorTriangle) {\n return;\n }\n drawLinkTriangle({\n context: ctx,\n pos1,\n pos2,\n pos3,\n backgroundMask: options.backgroundMask,\n colorTriangle,\n opacityTriangle,\n });\n });\n };\n this._drawTriangles = (options, p1, link, p1Links) => {\n const p2 = link.destination;\n if (!(options.links?.triangles.enable && p2.options.links?.triangles.enable)) {\n return;\n }\n const vertices = p2.links?.filter(t => {\n const linkFreq = this._getLinkFrequency(p2, t.destination), minCount = 0;\n return (p2.options.links &&\n linkFreq <= p2.options.links.frequency &&\n p1Links.findIndex(l => l.destination === t.destination) >= minCount);\n });\n if (!vertices?.length) {\n return;\n }\n for (const vertex of vertices) {\n const p3 = vertex.destination, triangleFreq = this._getTriangleFrequency(p1, p2, p3);\n if (triangleFreq > options.links.triangles.frequency) {\n continue;\n }\n this._drawLinkTriangle(p1, link, vertex);\n }\n };\n this._getLinkFrequency = (p1, p2) => {\n return setLinkFrequency([p1, p2], this._freqs.links);\n };\n this._getTriangleFrequency = (p1, p2, p3) => {\n return setLinkFrequency([p1, p2, p3], this._freqs.triangles);\n };\n this._freqs = {\n links: new Map(),\n triangles: new Map(),\n };\n }\n drawParticle(context, particle) {\n const { links, options } = particle;\n if (!links?.length) {\n return;\n }\n const p1Links = links.filter(l => options.links &&\n (options.links.frequency >= maxFrequency ||\n this._getLinkFrequency(particle, l.destination) <= options.links.frequency));\n for (const link of p1Links) {\n this._drawTriangles(options, particle, link, p1Links);\n if (link.opacity > minOpacity && (particle.retina.linksWidth ?? minWidth) > minWidth) {\n this._drawLinkLine(particle, link);\n }\n }\n }\n async init() {\n this._freqs.links = new Map();\n this._freqs.triangles = new Map();\n await Promise.resolve();\n }\n particleCreated(particle) {\n particle.links = [];\n if (!particle.options.links) {\n return;\n }\n const ratio = this.container.retina.pixelRatio, { retina } = particle, { distance, width } = particle.options.links;\n retina.linksDistance = distance * ratio;\n retina.linksWidth = width * ratio;\n }\n particleDestroyed(particle) {\n particle.links = [];\n }\n}\n","import { LinkInstance } from \"./LinkInstance.js\";\nexport class LinksPlugin {\n constructor() {\n this.id = \"links\";\n }\n getPlugin(container) {\n return Promise.resolve(new LinkInstance(container));\n }\n loadOptions() {\n }\n needsPlugin() {\n return true;\n }\n}\n","import { LinksPlugin } from \"./LinksPlugin.js\";\nexport async function loadLinksPlugin(engine, refresh = true) {\n const plugin = new LinksPlugin();\n await engine.addPlugin(plugin, refresh);\n}\n","import { loadLinksInteraction } from \"./interaction.js\";\nimport { loadLinksPlugin } from \"./plugin.js\";\nexport async function loadParticlesLinksInteraction(engine, refresh = true) {\n await loadLinksInteraction(engine, refresh);\n await loadLinksPlugin(engine, refresh);\n}\nexport * from \"./Options/Classes/Links.js\";\nexport * from \"./Options/Classes/LinksShadow.js\";\nexport * from \"./Options/Classes/LinksTriangle.js\";\nexport * from \"./Options/Interfaces/ILinks.js\";\nexport * from \"./Options/Interfaces/ILinksShadow.js\";\nexport * from \"./Options/Interfaces/ILinksTriangle.js\";\n","import { degToRad } from \"@tsparticles/engine\";\nconst piDeg = 180, origin = { x: 0, y: 0 }, sidesOffset = 2;\nexport function drawPolygon(data, start, side) {\n const { context } = data, sideCount = side.count.numerator * side.count.denominator, decimalSides = side.count.numerator / side.count.denominator, interiorAngleDegrees = (piDeg * (decimalSides - sidesOffset)) / decimalSides, interiorAngle = Math.PI - degToRad(interiorAngleDegrees);\n if (!context) {\n return;\n }\n context.beginPath();\n context.translate(start.x, start.y);\n context.moveTo(origin.x, origin.y);\n for (let i = 0; i < sideCount; i++) {\n context.lineTo(side.length, origin.y);\n context.translate(side.length, origin.y);\n context.rotate(interiorAngle);\n }\n}\n","import { getRangeValue, } from \"@tsparticles/engine\";\nimport { drawPolygon } from \"./Utils.js\";\nconst defaultSides = 5;\nexport class PolygonDrawerBase {\n draw(data) {\n const { particle, radius } = data, start = this.getCenter(particle, radius), side = this.getSidesData(particle, radius);\n drawPolygon(data, start, side);\n }\n getSidesCount(particle) {\n const polygon = particle.shapeData;\n return Math.round(getRangeValue(polygon?.sides ?? defaultSides));\n }\n}\n","import { PolygonDrawerBase } from \"./PolygonDrawerBase.js\";\nconst sidesCenterFactor = 3.5, yFactor = 2.66, sidesFactor = 3;\nexport class PolygonDrawer extends PolygonDrawerBase {\n constructor() {\n super(...arguments);\n this.validTypes = [\"polygon\"];\n }\n getCenter(particle, radius) {\n return {\n x: -radius / (particle.sides / sidesCenterFactor),\n y: -radius / (yFactor / sidesCenterFactor),\n };\n }\n getSidesData(particle, radius) {\n const sides = particle.sides;\n return {\n count: {\n denominator: 1,\n numerator: sides,\n },\n length: (radius * yFactor) / (sides / sidesFactor),\n };\n }\n}\n","import { PolygonDrawerBase } from \"./PolygonDrawerBase.js\";\nconst yFactor = 1.66, sides = 3, double = 2;\nexport class TriangleDrawer extends PolygonDrawerBase {\n constructor() {\n super(...arguments);\n this.validTypes = [\"triangle\"];\n }\n getCenter(particle, radius) {\n return {\n x: -radius,\n y: radius / yFactor,\n };\n }\n getSidesCount() {\n return sides;\n }\n getSidesData(particle, radius) {\n const diameter = radius * double;\n return {\n count: {\n denominator: 2,\n numerator: 3,\n },\n length: diameter,\n };\n }\n}\n","import { PolygonDrawer } from \"./PolygonDrawer.js\";\nimport { TriangleDrawer } from \"./TriangleDrawer.js\";\nexport async function loadGenericPolygonShape(engine, refresh = true) {\n await engine.addShape(new PolygonDrawer(), refresh);\n}\nexport async function loadTriangleShape(engine, refresh = true) {\n await engine.addShape(new TriangleDrawer(), refresh);\n}\nexport async function loadPolygonShape(engine, refresh = true) {\n await loadGenericPolygonShape(engine, refresh);\n await loadTriangleShape(engine, refresh);\n}\n","import { setRangeValue } from \"@tsparticles/engine\";\nexport class RotateAnimation {\n constructor() {\n this.enable = false;\n this.speed = 0;\n this.decay = 0;\n this.sync = false;\n }\n load(data) {\n if (!data) {\n return;\n }\n if (data.enable !== undefined) {\n this.enable = data.enable;\n }\n if (data.speed !== undefined) {\n this.speed = setRangeValue(data.speed);\n }\n if (data.decay !== undefined) {\n this.decay = setRangeValue(data.decay);\n }\n if (data.sync !== undefined) {\n this.sync = data.sync;\n }\n }\n}\n","import { RotateDirection, ValueWithRandom, } from \"@tsparticles/engine\";\nimport { RotateAnimation } from \"./RotateAnimation.js\";\nexport class Rotate extends ValueWithRandom {\n constructor() {\n super();\n this.animation = new RotateAnimation();\n this.direction = RotateDirection.clockwise;\n this.path = false;\n this.value = 0;\n }\n load(data) {\n if (!data) {\n return;\n }\n super.load(data);\n if (data.direction !== undefined) {\n this.direction = data.direction;\n }\n this.animation.load(data.animation);\n if (data.path !== undefined) {\n this.path = data.path;\n }\n }\n}\n","import { AnimationStatus, DestroyType, RotateDirection, degToRad, getRandom, getRangeValue, updateAnimation, } from \"@tsparticles/engine\";\nimport { Rotate } from \"./Options/Classes/Rotate.js\";\nconst double = 2, doublePI = Math.PI * double, identity = 1, doublePIDeg = 360;\nexport class RotateUpdater {\n constructor(container) {\n this.container = container;\n }\n init(particle) {\n const rotateOptions = particle.options.rotate;\n if (!rotateOptions) {\n return;\n }\n particle.rotate = {\n enable: rotateOptions.animation.enable,\n value: degToRad(getRangeValue(rotateOptions.value)),\n min: 0,\n max: doublePI,\n };\n particle.pathRotation = rotateOptions.path;\n let rotateDirection = rotateOptions.direction;\n if (rotateDirection === RotateDirection.random) {\n const index = Math.floor(getRandom() * double), minIndex = 0;\n rotateDirection = index > minIndex ? RotateDirection.counterClockwise : RotateDirection.clockwise;\n }\n switch (rotateDirection) {\n case RotateDirection.counterClockwise:\n case \"counterClockwise\":\n particle.rotate.status = AnimationStatus.decreasing;\n break;\n case RotateDirection.clockwise:\n particle.rotate.status = AnimationStatus.increasing;\n break;\n }\n const rotateAnimation = rotateOptions.animation;\n if (rotateAnimation.enable) {\n particle.rotate.decay = identity - getRangeValue(rotateAnimation.decay);\n particle.rotate.velocity =\n (getRangeValue(rotateAnimation.speed) / doublePIDeg) * this.container.retina.reduceFactor;\n if (!rotateAnimation.sync) {\n particle.rotate.velocity *= getRandom();\n }\n }\n particle.rotation = particle.rotate.value;\n }\n isEnabled(particle) {\n const rotate = particle.options.rotate;\n if (!rotate) {\n return false;\n }\n return !particle.destroyed && !particle.spawning && (!!rotate.value || rotate.animation.enable || rotate.path);\n }\n loadOptions(options, ...sources) {\n if (!options.rotate) {\n options.rotate = new Rotate();\n }\n for (const source of sources) {\n options.rotate.load(source?.rotate);\n }\n }\n update(particle, delta) {\n if (!this.isEnabled(particle)) {\n return;\n }\n particle.isRotating = !!particle.rotate;\n if (!particle.rotate) {\n return;\n }\n updateAnimation(particle, particle.rotate, false, DestroyType.none, delta);\n particle.rotation = particle.rotate.value;\n }\n}\n","import { RotateUpdater } from \"./RotateUpdater.js\";\nexport async function loadRotateUpdater(engine, refresh = true) {\n await engine.addParticleUpdater(\"rotate\", container => {\n return Promise.resolve(new RotateUpdater(container));\n }, refresh);\n}\n","const fixFactorSquared = 2, fixFactor = Math.sqrt(fixFactorSquared), double = 2;\nexport function drawSquare(data) {\n const { context, radius } = data, fixedRadius = radius / fixFactor, fixedDiameter = fixedRadius * double;\n context.rect(-fixedRadius, -fixedRadius, fixedDiameter, fixedDiameter);\n}\n","import { drawSquare } from \"./Utils.js\";\nconst sides = 4;\nexport class SquareDrawer {\n constructor() {\n this.validTypes = [\"edge\", \"square\"];\n }\n draw(data) {\n drawSquare(data);\n }\n getSidesCount() {\n return sides;\n }\n}\n","import { SquareDrawer } from \"./SquareDrawer.js\";\nexport async function loadSquareShape(engine, refresh = true) {\n await engine.addShape(new SquareDrawer(), refresh);\n}\n","const defaultInset = 2, origin = { x: 0, y: 0 };\nexport function drawStar(data) {\n const { context, particle, radius } = data, sides = particle.sides, inset = particle.starInset ?? defaultInset;\n context.moveTo(origin.x, origin.y - radius);\n for (let i = 0; i < sides; i++) {\n context.rotate(Math.PI / sides);\n context.lineTo(origin.x, origin.y - radius * inset);\n context.rotate(Math.PI / sides);\n context.lineTo(origin.x, origin.y - radius);\n }\n}\n","import { getRangeValue, } from \"@tsparticles/engine\";\nimport { drawStar } from \"./Utils.js\";\nconst defaultInset = 2, defaultSides = 5;\nexport class StarDrawer {\n constructor() {\n this.validTypes = [\"star\"];\n }\n draw(data) {\n drawStar(data);\n }\n getSidesCount(particle) {\n const star = particle.shapeData;\n return Math.round(getRangeValue(star?.sides ?? defaultSides));\n }\n particleInit(container, particle) {\n const star = particle.shapeData;\n particle.starInset = getRangeValue(star?.inset ?? defaultInset);\n }\n}\n","import { StarDrawer } from \"./StarDrawer.js\";\nexport async function loadStarShape(engine, refresh = true) {\n await engine.addShape(new StarDrawer(), refresh);\n}\n","import { getHslAnimationFromHsl, getRangeValue, itemFromSingleOrMultiple, rangeColorToHsl, updateColor, } from \"@tsparticles/engine\";\nconst defaultOpacity = 1;\nexport class StrokeColorUpdater {\n constructor(container) {\n this.container = container;\n }\n init(particle) {\n const container = this.container, options = particle.options;\n const stroke = itemFromSingleOrMultiple(options.stroke, particle.id, options.reduceDuplicates);\n particle.strokeWidth = getRangeValue(stroke.width) * container.retina.pixelRatio;\n particle.strokeOpacity = getRangeValue(stroke.opacity ?? defaultOpacity);\n particle.strokeAnimation = stroke.color?.animation;\n const strokeHslColor = rangeColorToHsl(stroke.color) ?? particle.getFillColor();\n if (strokeHslColor) {\n particle.strokeColor = getHslAnimationFromHsl(strokeHslColor, particle.strokeAnimation, container.retina.reduceFactor);\n }\n }\n isEnabled(particle) {\n const color = particle.strokeAnimation, { strokeColor } = particle;\n return (!particle.destroyed &&\n !particle.spawning &&\n !!color &&\n ((strokeColor?.h.value !== undefined && strokeColor.h.enable) ||\n (strokeColor?.s.value !== undefined && strokeColor.s.enable) ||\n (strokeColor?.l.value !== undefined && strokeColor.l.enable)));\n }\n update(particle, delta) {\n if (!this.isEnabled(particle)) {\n return;\n }\n updateColor(particle.strokeColor, delta);\n }\n}\n","import { StrokeColorUpdater } from \"./StrokeColorUpdater.js\";\nexport async function loadStrokeColorUpdater(engine, refresh = true) {\n await engine.addParticleUpdater(\"strokeColor\", container => {\n return Promise.resolve(new StrokeColorUpdater(container));\n }, refresh);\n}\n","import { loadBasic } from \"@tsparticles/basic\";\nimport { loadEasingQuadPlugin } from \"@tsparticles/plugin-easing-quad\";\nimport { loadEmojiShape } from \"@tsparticles/shape-emoji\";\nimport { loadExternalAttractInteraction } from \"@tsparticles/interaction-external-attract\";\nimport { loadExternalBounceInteraction } from \"@tsparticles/interaction-external-bounce\";\nimport { loadExternalBubbleInteraction } from \"@tsparticles/interaction-external-bubble\";\nimport { loadExternalConnectInteraction } from \"@tsparticles/interaction-external-connect\";\nimport { loadExternalGrabInteraction } from \"@tsparticles/interaction-external-grab\";\nimport { loadExternalPauseInteraction } from \"@tsparticles/interaction-external-pause\";\nimport { loadExternalPushInteraction } from \"@tsparticles/interaction-external-push\";\nimport { loadExternalRemoveInteraction } from \"@tsparticles/interaction-external-remove\";\nimport { loadExternalRepulseInteraction } from \"@tsparticles/interaction-external-repulse\";\nimport { loadExternalSlowInteraction } from \"@tsparticles/interaction-external-slow\";\nimport { loadImageShape } from \"@tsparticles/shape-image\";\nimport { loadLifeUpdater } from \"@tsparticles/updater-life\";\nimport { loadLineShape } from \"@tsparticles/shape-line\";\nimport { loadParallaxMover } from \"@tsparticles/move-parallax\";\nimport { loadParticlesAttractInteraction } from \"@tsparticles/interaction-particles-attract\";\nimport { loadParticlesCollisionsInteraction } from \"@tsparticles/interaction-particles-collisions\";\nimport { loadParticlesLinksInteraction } from \"@tsparticles/interaction-particles-links\";\nimport { loadPolygonShape } from \"@tsparticles/shape-polygon\";\nimport { loadRotateUpdater } from \"@tsparticles/updater-rotate\";\nimport { loadSquareShape } from \"@tsparticles/shape-square\";\nimport { loadStarShape } from \"@tsparticles/shape-star\";\nimport { loadStrokeColorUpdater } from \"@tsparticles/updater-stroke-color\";\nexport async function loadSlim(engine, refresh = true) {\n await loadParallaxMover(engine, false);\n await loadExternalAttractInteraction(engine, false);\n await loadExternalBounceInteraction(engine, false);\n await loadExternalBubbleInteraction(engine, false);\n await loadExternalConnectInteraction(engine, false);\n await loadExternalGrabInteraction(engine, false);\n await loadExternalPauseInteraction(engine, false);\n await loadExternalPushInteraction(engine, false);\n await loadExternalRemoveInteraction(engine, false);\n await loadExternalRepulseInteraction(engine, false);\n await loadExternalSlowInteraction(engine, false);\n await loadParticlesAttractInteraction(engine, false);\n await loadParticlesCollisionsInteraction(engine, false);\n await loadParticlesLinksInteraction(engine, false);\n await loadEasingQuadPlugin();\n await loadEmojiShape(engine, false);\n await loadImageShape(engine, false);\n await loadLineShape(engine, false);\n await loadPolygonShape(engine, false);\n await loadSquareShape(engine, false);\n await loadStarShape(engine, false);\n await loadLifeUpdater(engine, false);\n await loadRotateUpdater(engine, false);\n await loadStrokeColorUpdater(engine, false);\n await loadBasic(engine, refresh);\n}\n","import { setRangeValue } from \"@tsparticles/engine\";\nexport class EmitterLife {\n constructor() {\n this.wait = false;\n }\n load(data) {\n if (!data) {\n return;\n }\n if (data.count !== undefined) {\n this.count = data.count;\n }\n if (data.delay !== undefined) {\n this.delay = setRangeValue(data.delay);\n }\n if (data.duration !== undefined) {\n this.duration = setRangeValue(data.duration);\n }\n if (data.wait !== undefined) {\n this.wait = data.wait;\n }\n }\n}\n","import { setRangeValue } from \"@tsparticles/engine\";\nexport class EmitterRate {\n constructor() {\n this.quantity = 1;\n this.delay = 0.1;\n }\n load(data) {\n if (data === undefined) {\n return;\n }\n if (data.quantity !== undefined) {\n this.quantity = setRangeValue(data.quantity);\n }\n if (data.delay !== undefined) {\n this.delay = setRangeValue(data.delay);\n }\n }\n}\n","export class EmitterShapeReplace {\n constructor() {\n this.color = false;\n this.opacity = false;\n }\n load(data) {\n if (!data) {\n return;\n }\n if (data.color !== undefined) {\n this.color = data.color;\n }\n if (data.opacity !== undefined) {\n this.opacity = data.opacity;\n }\n }\n}\n","import { deepExtend } from \"@tsparticles/engine\";\nimport { EmitterShapeReplace } from \"./EmitterShapeReplace.js\";\nexport class EmitterShape {\n constructor() {\n this.options = {};\n this.replace = new EmitterShapeReplace();\n this.type = \"square\";\n }\n load(data) {\n if (!data) {\n return;\n }\n if (data.options !== undefined) {\n this.options = deepExtend({}, data.options ?? {});\n }\n this.replace.load(data.replace);\n if (data.type !== undefined) {\n this.type = data.type;\n }\n }\n}\n","import { PixelMode } from \"@tsparticles/engine\";\nexport class EmitterSize {\n constructor() {\n this.mode = PixelMode.percent;\n this.height = 0;\n this.width = 0;\n }\n load(data) {\n if (data === undefined) {\n return;\n }\n if (data.mode !== undefined) {\n this.mode = data.mode;\n }\n if (data.height !== undefined) {\n this.height = data.height;\n }\n if (data.width !== undefined) {\n this.width = data.width;\n }\n }\n}\n","import { AnimatableColor, deepExtend, executeOnSingleOrMultiple, setRangeValue, } from \"@tsparticles/engine\";\nimport { EmitterLife } from \"./EmitterLife.js\";\nimport { EmitterRate } from \"./EmitterRate.js\";\nimport { EmitterShape } from \"./EmitterShape.js\";\nimport { EmitterSize } from \"./EmitterSize.js\";\nexport class Emitter {\n constructor() {\n this.autoPlay = true;\n this.fill = true;\n this.life = new EmitterLife();\n this.rate = new EmitterRate();\n this.shape = new EmitterShape();\n this.startCount = 0;\n }\n load(data) {\n if (!data) {\n return;\n }\n if (data.autoPlay !== undefined) {\n this.autoPlay = data.autoPlay;\n }\n if (data.size !== undefined) {\n if (!this.size) {\n this.size = new EmitterSize();\n }\n this.size.load(data.size);\n }\n if (data.direction !== undefined) {\n this.direction = data.direction;\n }\n this.domId = data.domId;\n if (data.fill !== undefined) {\n this.fill = data.fill;\n }\n this.life.load(data.life);\n this.name = data.name;\n this.particles = executeOnSingleOrMultiple(data.particles, particles => {\n return deepExtend({}, particles);\n });\n this.rate.load(data.rate);\n this.shape.load(data.shape);\n if (data.position !== undefined) {\n this.position = {};\n if (data.position.x !== undefined) {\n this.position.x = setRangeValue(data.position.x);\n }\n if (data.position.y !== undefined) {\n this.position.y = setRangeValue(data.position.y);\n }\n }\n if (data.spawnColor !== undefined) {\n if (this.spawnColor === undefined) {\n this.spawnColor = new AnimatableColor();\n }\n this.spawnColor.load(data.spawnColor);\n }\n if (data.startCount !== undefined) {\n this.startCount = data.startCount;\n }\n }\n}\n","export var EmitterClickMode;\n(function (EmitterClickMode) {\n EmitterClickMode[\"emitter\"] = \"emitter\";\n})(EmitterClickMode || (EmitterClickMode = {}));\n","import { PixelMode, Vector, calcPositionOrRandomFromSizeRanged, deepExtend, getRangeValue, getSize, isPointInside, itemFromSingleOrMultiple, millisecondsToSeconds, randomInRange, rangeColorToHsl, } from \"@tsparticles/engine\";\nimport { Emitter } from \"./Options/Classes/Emitter.js\";\nimport { EmitterSize } from \"./Options/Classes/EmitterSize.js\";\nconst half = 0.5, defaultLifeDelay = 0, minLifeCount = 0, defaultSpawnDelay = 0, defaultEmitDelay = 0, defaultLifeCount = -1, defaultColorAnimationFactor = 1;\nfunction setParticlesOptionsColor(particlesOptions, color) {\n if (particlesOptions.color) {\n particlesOptions.color.value = color;\n }\n else {\n particlesOptions.color = {\n value: color,\n };\n }\n}\nexport class EmitterInstance {\n constructor(engine, emitters, container, options, position) {\n this.emitters = emitters;\n this.container = container;\n this._destroy = () => {\n this._mutationObserver?.disconnect();\n this._mutationObserver = undefined;\n this._resizeObserver?.disconnect();\n this._resizeObserver = undefined;\n this.emitters.removeEmitter(this);\n this._engine.dispatchEvent(\"emitterDestroyed\", {\n container: this.container,\n data: {\n emitter: this,\n },\n });\n };\n this._prepareToDie = () => {\n if (this._paused) {\n return;\n }\n const duration = this.options.life?.duration !== undefined ? getRangeValue(this.options.life.duration) : undefined, minDuration = 0, minLifeCount = 0;\n if (this.container.retina.reduceFactor &&\n (this._lifeCount > minLifeCount || this._immortal) &&\n duration !== undefined &&\n duration > minDuration) {\n this._duration = duration * millisecondsToSeconds;\n }\n };\n this._setColorAnimation = (animation, initValue, maxValue, factor = defaultColorAnimationFactor) => {\n const container = this.container;\n if (!animation.enable) {\n return initValue;\n }\n const colorOffset = randomInRange(animation.offset), delay = getRangeValue(this.options.rate.delay), emitFactor = (delay * millisecondsToSeconds) / container.retina.reduceFactor, defaultColorSpeed = 0, colorSpeed = getRangeValue(animation.speed ?? defaultColorSpeed);\n return (initValue + (colorSpeed * container.fpsLimit) / emitFactor + colorOffset * factor) % maxValue;\n };\n this._engine = engine;\n this._currentDuration = 0;\n this._currentEmitDelay = 0;\n this._currentSpawnDelay = 0;\n this._initialPosition = position;\n if (options instanceof Emitter) {\n this.options = options;\n }\n else {\n this.options = new Emitter();\n this.options.load(options);\n }\n this._spawnDelay =\n (getRangeValue(this.options.life.delay ?? defaultLifeDelay) * millisecondsToSeconds) /\n this.container.retina.reduceFactor;\n this.position = this._initialPosition ?? this._calcPosition();\n this.name = this.options.name;\n this.fill = this.options.fill;\n this._firstSpawn = !this.options.life.wait;\n this._startParticlesAdded = false;\n let particlesOptions = deepExtend({}, this.options.particles);\n particlesOptions ??= {};\n particlesOptions.move ??= {};\n particlesOptions.move.direction ??= this.options.direction;\n if (this.options.spawnColor) {\n this.spawnColor = rangeColorToHsl(this.options.spawnColor);\n }\n this._paused = !this.options.autoPlay;\n this._particlesOptions = particlesOptions;\n this._size = this._calcSize();\n this.size = getSize(this._size, this.container.canvas.size);\n this._lifeCount = this.options.life.count ?? defaultLifeCount;\n this._immortal = this._lifeCount <= minLifeCount;\n if (this.options.domId) {\n const element = document.getElementById(this.options.domId);\n if (element) {\n this._mutationObserver = new MutationObserver(() => {\n this.resize();\n });\n this._resizeObserver = new ResizeObserver(() => {\n this.resize();\n });\n this._mutationObserver.observe(element, {\n attributes: true,\n attributeFilter: [\"style\", \"width\", \"height\"],\n });\n this._resizeObserver.observe(element);\n }\n }\n const shapeOptions = this.options.shape, shapeGenerator = this._engine.emitterShapeManager?.getShapeGenerator(shapeOptions.type);\n if (shapeGenerator) {\n this._shape = shapeGenerator.generate(this.position, this.size, this.fill, shapeOptions.options);\n }\n this._engine.dispatchEvent(\"emitterCreated\", {\n container,\n data: {\n emitter: this,\n },\n });\n this.play();\n }\n externalPause() {\n this._paused = true;\n this.pause();\n }\n externalPlay() {\n this._paused = false;\n this.play();\n }\n async init() {\n await this._shape?.init();\n }\n pause() {\n if (this._paused) {\n return;\n }\n delete this._emitDelay;\n }\n play() {\n if (this._paused) {\n return;\n }\n if (!(this.container.retina.reduceFactor &&\n (this._lifeCount > minLifeCount || this._immortal || !this.options.life.count) &&\n (this._firstSpawn || this._currentSpawnDelay >= (this._spawnDelay ?? defaultSpawnDelay)))) {\n return;\n }\n if (this._emitDelay === undefined) {\n const delay = getRangeValue(this.options.rate.delay);\n this._emitDelay = (delay * millisecondsToSeconds) / this.container.retina.reduceFactor;\n }\n if (this._lifeCount > minLifeCount || this._immortal) {\n this._prepareToDie();\n }\n }\n resize() {\n const initialPosition = this._initialPosition;\n this.position =\n initialPosition && isPointInside(initialPosition, this.container.canvas.size, Vector.origin)\n ? initialPosition\n : this._calcPosition();\n this._size = this._calcSize();\n this.size = getSize(this._size, this.container.canvas.size);\n this._shape?.resize(this.position, this.size);\n }\n update(delta) {\n if (this._paused) {\n return;\n }\n if (this._firstSpawn) {\n this._firstSpawn = false;\n this._currentSpawnDelay = this._spawnDelay ?? defaultSpawnDelay;\n this._currentEmitDelay = this._emitDelay ?? defaultEmitDelay;\n }\n if (!this._startParticlesAdded) {\n this._startParticlesAdded = true;\n this._emitParticles(this.options.startCount);\n }\n if (this._duration !== undefined) {\n this._currentDuration += delta.value;\n if (this._currentDuration >= this._duration) {\n this.pause();\n if (this._spawnDelay !== undefined) {\n delete this._spawnDelay;\n }\n if (!this._immortal) {\n this._lifeCount--;\n }\n if (this._lifeCount > minLifeCount || this._immortal) {\n this.position = this._calcPosition();\n this._shape?.resize(this.position, this.size);\n this._spawnDelay =\n (getRangeValue(this.options.life.delay ?? defaultLifeDelay) * millisecondsToSeconds) /\n this.container.retina.reduceFactor;\n }\n else {\n this._destroy();\n }\n this._currentDuration -= this._duration;\n delete this._duration;\n }\n }\n if (this._spawnDelay !== undefined) {\n this._currentSpawnDelay += delta.value;\n if (this._currentSpawnDelay >= this._spawnDelay) {\n this._engine.dispatchEvent(\"emitterPlay\", {\n container: this.container,\n });\n this.play();\n this._currentSpawnDelay -= this._currentSpawnDelay;\n delete this._spawnDelay;\n }\n }\n if (this._emitDelay !== undefined) {\n this._currentEmitDelay += delta.value;\n if (this._currentEmitDelay >= this._emitDelay) {\n this._emit();\n this._currentEmitDelay -= this._emitDelay;\n }\n }\n }\n _calcPosition() {\n if (this.options.domId) {\n const element = document.getElementById(this.options.domId);\n if (element) {\n const elRect = element.getBoundingClientRect(), pxRatio = this.container.retina.pixelRatio;\n return {\n x: (elRect.x + elRect.width * half) * pxRatio,\n y: (elRect.y + elRect.height * half) * pxRatio,\n };\n }\n }\n return calcPositionOrRandomFromSizeRanged({\n size: this.container.canvas.size,\n position: this.options.position,\n });\n }\n _calcSize() {\n const container = this.container;\n if (this.options.domId) {\n const element = document.getElementById(this.options.domId);\n if (element) {\n const elRect = element.getBoundingClientRect();\n return {\n width: elRect.width * container.retina.pixelRatio,\n height: elRect.height * container.retina.pixelRatio,\n mode: PixelMode.precise,\n };\n }\n }\n return (this.options.size ??\n (() => {\n const size = new EmitterSize();\n size.load({\n height: 0,\n mode: PixelMode.percent,\n width: 0,\n });\n return size;\n })());\n }\n _emit() {\n if (this._paused) {\n return;\n }\n const quantity = getRangeValue(this.options.rate.quantity);\n this._emitParticles(quantity);\n }\n _emitParticles(quantity) {\n const singleParticlesOptions = itemFromSingleOrMultiple(this._particlesOptions);\n for (let i = 0; i < quantity; i++) {\n const particlesOptions = deepExtend({}, singleParticlesOptions);\n if (this.spawnColor) {\n const hslAnimation = this.options.spawnColor?.animation;\n if (hslAnimation) {\n const maxValues = {\n h: 360,\n s: 100,\n l: 100,\n }, colorFactor = 3.6;\n this.spawnColor.h = this._setColorAnimation(hslAnimation.h, this.spawnColor.h, maxValues.h, colorFactor);\n this.spawnColor.s = this._setColorAnimation(hslAnimation.s, this.spawnColor.s, maxValues.s);\n this.spawnColor.l = this._setColorAnimation(hslAnimation.l, this.spawnColor.l, maxValues.l);\n }\n setParticlesOptionsColor(particlesOptions, this.spawnColor);\n }\n const shapeOptions = this.options.shape;\n let position = this.position;\n if (this._shape) {\n const shapePosData = this._shape.randomPosition();\n if (shapePosData) {\n position = shapePosData.position;\n const replaceData = shapeOptions.replace;\n if (replaceData.color && shapePosData.color) {\n setParticlesOptionsColor(particlesOptions, shapePosData.color);\n }\n if (replaceData.opacity) {\n if (particlesOptions.opacity) {\n particlesOptions.opacity.value = shapePosData.opacity;\n }\n else {\n particlesOptions.opacity = {\n value: shapePosData.opacity,\n };\n }\n }\n }\n else {\n position = null;\n }\n }\n if (position) {\n this.container.particles.addParticle(position, particlesOptions);\n }\n }\n }\n}\n","import { arrayRandomIndex, executeOnSingleOrMultiple, isArray, isNumber, itemFromArray, } from \"@tsparticles/engine\";\nimport { Emitter } from \"./Options/Classes/Emitter.js\";\nimport { EmitterClickMode } from \"./Enums/EmitterClickMode.js\";\nimport { EmitterInstance } from \"./EmitterInstance.js\";\nexport class Emitters {\n constructor(engine, container) {\n this.container = container;\n this._engine = engine;\n this.array = [];\n this.emitters = [];\n this.interactivityEmitters = {\n random: {\n count: 1,\n enable: false,\n },\n value: [],\n };\n const defaultIndex = 0;\n container.getEmitter = (idxOrName) => idxOrName === undefined || isNumber(idxOrName)\n ? this.array[idxOrName ?? defaultIndex]\n : this.array.find(t => t.name === idxOrName);\n container.addEmitter = async (options, position) => this.addEmitter(options, position);\n container.removeEmitter = (idxOrName) => {\n const emitter = container.getEmitter(idxOrName);\n if (emitter) {\n this.removeEmitter(emitter);\n }\n };\n container.playEmitter = (idxOrName) => {\n const emitter = container.getEmitter(idxOrName);\n if (emitter) {\n emitter.externalPlay();\n }\n };\n container.pauseEmitter = (idxOrName) => {\n const emitter = container.getEmitter(idxOrName);\n if (emitter) {\n emitter.externalPause();\n }\n };\n }\n async addEmitter(options, position) {\n const emitterOptions = new Emitter();\n emitterOptions.load(options);\n const emitter = new EmitterInstance(this._engine, this, this.container, emitterOptions, position);\n await emitter.init();\n this.array.push(emitter);\n return emitter;\n }\n handleClickMode(mode) {\n const emitterOptions = this.emitters, modeEmitters = this.interactivityEmitters;\n if (mode !== EmitterClickMode.emitter) {\n return;\n }\n let emittersModeOptions;\n if (modeEmitters && isArray(modeEmitters.value)) {\n const minLength = 0;\n if (modeEmitters.value.length > minLength && modeEmitters.random.enable) {\n emittersModeOptions = [];\n const usedIndexes = [];\n for (let i = 0; i < modeEmitters.random.count; i++) {\n const idx = arrayRandomIndex(modeEmitters.value);\n if (usedIndexes.includes(idx) && usedIndexes.length < modeEmitters.value.length) {\n i--;\n continue;\n }\n usedIndexes.push(idx);\n emittersModeOptions.push(itemFromArray(modeEmitters.value, idx));\n }\n }\n else {\n emittersModeOptions = modeEmitters.value;\n }\n }\n else {\n emittersModeOptions = modeEmitters?.value;\n }\n const emittersOptions = emittersModeOptions ?? emitterOptions, ePosition = this.container.interactivity.mouse.clickPosition;\n void executeOnSingleOrMultiple(emittersOptions, async (emitter) => {\n await this.addEmitter(emitter, ePosition);\n });\n }\n async init() {\n this.emitters = this.container.actualOptions.emitters;\n this.interactivityEmitters = this.container.actualOptions.interactivity.modes.emitters;\n if (!this.emitters) {\n return;\n }\n if (isArray(this.emitters)) {\n for (const emitterOptions of this.emitters) {\n await this.addEmitter(emitterOptions);\n }\n }\n else {\n await this.addEmitter(this.emitters);\n }\n }\n pause() {\n for (const emitter of this.array) {\n emitter.pause();\n }\n }\n play() {\n for (const emitter of this.array) {\n emitter.play();\n }\n }\n removeEmitter(emitter) {\n const index = this.array.indexOf(emitter), minIndex = 0, deleteCount = 1;\n if (index >= minIndex) {\n this.array.splice(index, deleteCount);\n }\n }\n resize() {\n for (const emitter of this.array) {\n emitter.resize();\n }\n }\n stop() {\n this.array = [];\n }\n update(delta) {\n for (const emitter of this.array) {\n emitter.update(delta);\n }\n }\n}\n","import { executeOnSingleOrMultiple, isArray, isInArray, } from \"@tsparticles/engine\";\nimport { Emitter } from \"./Options/Classes/Emitter.js\";\nimport { EmitterClickMode } from \"./Enums/EmitterClickMode.js\";\nimport { Emitters } from \"./Emitters.js\";\nexport class EmittersPlugin {\n constructor(engine) {\n this._engine = engine;\n this.id = \"emitters\";\n }\n getPlugin(container) {\n return Promise.resolve(new Emitters(this._engine, container));\n }\n loadOptions(options, source) {\n if (!this.needsPlugin(options) && !this.needsPlugin(source)) {\n return;\n }\n if (source?.emitters) {\n options.emitters = executeOnSingleOrMultiple(source.emitters, emitter => {\n const tmp = new Emitter();\n tmp.load(emitter);\n return tmp;\n });\n }\n const interactivityEmitters = source?.interactivity?.modes?.emitters;\n if (interactivityEmitters) {\n if (isArray(interactivityEmitters)) {\n options.interactivity.modes.emitters = {\n random: {\n count: 1,\n enable: true,\n },\n value: interactivityEmitters.map(s => {\n const tmp = new Emitter();\n tmp.load(s);\n return tmp;\n }),\n };\n }\n else {\n const emitterMode = interactivityEmitters;\n if (emitterMode.value !== undefined) {\n const defaultCount = 1;\n if (isArray(emitterMode.value)) {\n options.interactivity.modes.emitters = {\n random: {\n count: emitterMode.random.count ?? defaultCount,\n enable: emitterMode.random.enable ?? false,\n },\n value: emitterMode.value.map(s => {\n const tmp = new Emitter();\n tmp.load(s);\n return tmp;\n }),\n };\n }\n else {\n const tmp = new Emitter();\n tmp.load(emitterMode.value);\n options.interactivity.modes.emitters = {\n random: {\n count: emitterMode.random.count ?? defaultCount,\n enable: emitterMode.random.enable ?? false,\n },\n value: tmp,\n };\n }\n }\n else {\n const emitterOptions = (options.interactivity.modes.emitters = {\n random: {\n count: 1,\n enable: false,\n },\n value: new Emitter(),\n });\n emitterOptions.value.load(interactivityEmitters);\n }\n }\n }\n }\n needsPlugin(options) {\n if (!options) {\n return false;\n }\n const emitters = options.emitters;\n return ((isArray(emitters) && !!emitters.length) ||\n emitters !== undefined ||\n (!!options.interactivity?.events?.onClick?.mode &&\n isInArray(EmitterClickMode.emitter, options.interactivity.events.onClick.mode)));\n }\n}\n","const shapeGeneratorss = new Map();\nexport class ShapeManager {\n constructor(engine) {\n this._engine = engine;\n }\n addShapeGenerator(name, generator) {\n if (!this.getShapeGenerator(name)) {\n shapeGeneratorss.set(name, generator);\n }\n }\n getShapeGenerator(name) {\n return shapeGeneratorss.get(name);\n }\n getSupportedShapeGenerators() {\n return shapeGeneratorss.keys();\n }\n}\n","import { EmittersPlugin } from \"./EmittersPlugin.js\";\nimport { ShapeManager } from \"./ShapeManager.js\";\nexport async function loadEmittersPlugin(engine, refresh = true) {\n if (!engine.emitterShapeManager) {\n engine.emitterShapeManager = new ShapeManager(engine);\n }\n if (!engine.addEmitterShapeGenerator) {\n engine.addEmitterShapeGenerator = (name, generator) => {\n engine.emitterShapeManager?.addShapeGenerator(name, generator);\n };\n }\n const plugin = new EmittersPlugin(engine);\n await engine.addPlugin(plugin, refresh);\n}\nexport * from \"./EmitterContainer.js\";\nexport * from \"./EmitterShapeBase.js\";\nexport * from \"./EmittersEngine.js\";\nexport * from \"./IEmitterShape.js\";\nexport * from \"./IEmitterShapeGenerator.js\";\nexport * from \"./Enums/EmitterClickMode.js\";\nexport * from \"./IRandomPositionData.js\";\n","module.exports = require('@bugsnag/browser')\n","(function(f){if(typeof exports===\"object\"&&typeof module!==\"undefined\"){module.exports=f()}else if(typeof define===\"function\"&&define.amd){define([],f)}else{var g;if(typeof window!==\"undefined\"){g=window}else if(typeof global!==\"undefined\"){g=global}else if(typeof self!==\"undefined\"){g=self}else{g=this}g.BugsnagPluginVue = f()}})(function(){var define,module,exports;\nvar _this = this,\n _ErrorTypeStrings;\nvar _$vue_2 = function (app, client) {\n var prev = app.config.errorHandler;\n var handler = function (err, vm, info) {\n var handledState = {\n severity: 'error',\n unhandled: true,\n severityReason: {\n type: 'unhandledException'\n }\n };\n var event = client.Event.create(err, true, handledState, 'vue error handler', 1);\n\n // In Vue 3.4+, the info param is a link to the Vue error docs in prod, so we need to extract the error code from it\n // https://github.com/vuejs/core/pull/9165/commits/c261beab2c0a26e401f2c3d5eae2e4c41de6fe4d\n var code = typeof info === 'string' && info.indexOf('runtime-') > 0 ? info.split('runtime-')[1] : info;\n var errorInfo = ErrorTypeStrings[code] || info;\n event.addMetadata('vue', {\n errorInfo: errorInfo,\n component: vm ? formatComponentName(vm, true) : undefined,\n props: vm && vm.$options ? vm.$options.propsData : undefined\n });\n client._notify(event);\n if (typeof console !== 'undefined' && typeof console.error === 'function') console.error(err);\n if (typeof prev === 'function') prev.call(_this, err, vm, info);\n };\n app.config.errorHandler = handler;\n};\nfunction formatComponentName(vm) {\n if (vm.$parent === null) return 'App';\n return vm.$options && vm.$options.name ? vm.$options.name : 'Anonymous';\n}\n\n// We copy in the following data structures from Vue's source so we can map the \"info\" parameter in the errorhandler\n// callback (which is supplied as either a string or int) back to something meaningful\n\n// https://github.com/vuejs/core/blob/f1068fc60ca511f68ff0aaedcc18b39124791d29/packages/runtime-core/src/enums.ts\nvar LifecycleHooks = {\n BEFORE_CREATE: 'bc',\n CREATED: 'c',\n BEFORE_MOUNT: 'bm',\n MOUNTED: 'm',\n BEFORE_UPDATE: 'bu',\n UPDATED: 'u',\n BEFORE_UNMOUNT: 'bum',\n UNMOUNTED: 'um',\n DEACTIVATED: 'da',\n ACTIVATED: 'a',\n RENDER_TRIGGERED: 'rtg',\n RENDER_TRACKED: 'rtc',\n ERROR_CAPTURED: 'ec',\n SERVER_PREFETCH: 'sp'\n};\n\n// https://github.com/vuejs/core/blob/f1068fc60ca511f68ff0aaedcc18b39124791d29/packages/runtime-core/src/errorHandling.ts#L7-L25\nvar ErrorCodes = {\n SETUP_FUNCTION: 0,\n RENDER_FUNCTION: 1,\n WATCH_GETTER: 2,\n WATCH_CALLBACK: 3,\n WATCH_CLEANUP: 4,\n NATIVE_EVENT_HANDLER: 5,\n COMPONENT_EVENT_HANDLER: 6,\n VNODE_HOOK: 7,\n DIRECTIVE_HOOK: 8,\n TRANSITION_HOOK: 9,\n APP_ERROR_HANDLER: 10,\n APP_WARN_HANDLER: 11,\n FUNCTION_REF: 12,\n ASYNC_COMPONENT_LOADER: 13,\n SCHEDULER: 14\n};\n\n// https://github.com/vuejs/core/blob/f1068fc60ca511f68ff0aaedcc18b39124791d29/packages/runtime-core/src/errorHandling.ts#L27-L59\nvar ErrorTypeStrings = (_ErrorTypeStrings = {}, _ErrorTypeStrings[LifecycleHooks.SERVER_PREFETCH] = 'serverPrefetch hook', _ErrorTypeStrings[LifecycleHooks.BEFORE_CREATE] = 'beforeCreate hook', _ErrorTypeStrings[LifecycleHooks.CREATED] = 'created hook', _ErrorTypeStrings[LifecycleHooks.BEFORE_MOUNT] = 'beforeMount hook', _ErrorTypeStrings[LifecycleHooks.MOUNTED] = 'mounted hook', _ErrorTypeStrings[LifecycleHooks.BEFORE_UPDATE] = 'beforeUpdate hook', _ErrorTypeStrings[LifecycleHooks.UPDATED] = 'updated', _ErrorTypeStrings[LifecycleHooks.BEFORE_UNMOUNT] = 'beforeUnmount hook', _ErrorTypeStrings[LifecycleHooks.UNMOUNTED] = 'unmounted hook', _ErrorTypeStrings[LifecycleHooks.ACTIVATED] = 'activated hook', _ErrorTypeStrings[LifecycleHooks.DEACTIVATED] = 'deactivated hook', _ErrorTypeStrings[LifecycleHooks.ERROR_CAPTURED] = 'errorCaptured hook', _ErrorTypeStrings[LifecycleHooks.RENDER_TRACKED] = 'renderTracked hook', _ErrorTypeStrings[LifecycleHooks.RENDER_TRIGGERED] = 'renderTriggered hook', _ErrorTypeStrings[ErrorCodes.SETUP_FUNCTION] = 'setup function', _ErrorTypeStrings[ErrorCodes.RENDER_FUNCTION] = 'render function', _ErrorTypeStrings[ErrorCodes.WATCH_GETTER] = 'watcher getter', _ErrorTypeStrings[ErrorCodes.WATCH_CALLBACK] = 'watcher callback', _ErrorTypeStrings[ErrorCodes.WATCH_CLEANUP] = 'watcher cleanup function', _ErrorTypeStrings[ErrorCodes.NATIVE_EVENT_HANDLER] = 'native event handler', _ErrorTypeStrings[ErrorCodes.COMPONENT_EVENT_HANDLER] = 'component event handler', _ErrorTypeStrings[ErrorCodes.VNODE_HOOK] = 'vnode hook', _ErrorTypeStrings[ErrorCodes.DIRECTIVE_HOOK] = 'directive hook', _ErrorTypeStrings[ErrorCodes.TRANSITION_HOOK] = 'transition hook', _ErrorTypeStrings[ErrorCodes.APP_ERROR_HANDLER] = 'app errorHandler', _ErrorTypeStrings[ErrorCodes.APP_WARN_HANDLER] = 'app warnHandler', _ErrorTypeStrings[ErrorCodes.FUNCTION_REF] = 'ref function', _ErrorTypeStrings[ErrorCodes.ASYNC_COMPONENT_LOADER] = 'async component loader', _ErrorTypeStrings[ErrorCodes.SCHEDULER] = 'scheduler flush. This is likely a Vue internals bug. ' + 'Please open an issue at https://github.com/vuejs/core .', _ErrorTypeStrings);\n\nvar _$vue2_3 = {};\nvar ___this_3 = this;\n_$vue2_3 = function (Vue, client) {\n var prev = Vue.config.errorHandler;\n var handler = function (err, vm, info) {\n var handledState = {\n severity: 'error',\n unhandled: true,\n severityReason: {\n type: 'unhandledException'\n }\n };\n var event = client.Event.create(err, true, handledState, 'vue error handler', 1);\n event.addMetadata('vue', {\n errorInfo: info,\n component: vm ? __formatComponentName_3(vm, true) : undefined,\n props: vm ? vm.$options.propsData : undefined\n });\n client._notify(event);\n if (typeof console !== 'undefined' && typeof console.error === 'function') console.error(err);\n if (typeof prev === 'function') prev.call(___this_3, err, vm, info);\n };\n Vue.config.errorHandler = handler;\n};\n\n// taken and reworked from Vue.js source\nvar __formatComponentName_3 = function (vm, includeFile) {\n if (vm.$root === vm) return '';\n var options = typeof vm === 'function' && vm.cid != null ? vm.options : vm._isVue ? vm.$options || vm.constructor.options : vm || {};\n var name = options.name || options._componentTag;\n var file = options.__file;\n if (!name && file) {\n var match = file.match(/([^/\\\\]+)\\.vue$/);\n name = match && match[1];\n }\n return (name ? '<' + classify(name) + '>' : '') + (file && includeFile !== false ? ' at ' + file : '');\n};\n\n// taken and reworked from Vue.js source\nvar classify = _$vue2_3.classify = function (str) {\n return str.replace(/(?:^|[-_])(\\w)/g, function (c) {\n return c.toUpperCase();\n }).replace(/[-_]/g, '');\n};\n\nvar _$src_1 = {};\n/* removed: var _$vue2_3 = require('./vue2'); */;\n/* removed: var _$vue_2 = require('./vue'); */;\n_$src_1 = /*#__PURE__*/function () {\n function BugsnagPluginVue() {\n // Fetch Vue from the window object, if it exists\n var globalVue = typeof window !== 'undefined' && window.Vue;\n this.name = 'vue';\n this.lazy = arguments.length === 0 && !globalVue;\n if (!this.lazy) {\n this.Vue = (arguments.length <= 0 ? undefined : arguments[0]) || globalVue;\n if (!this.Vue) throw new Error('@bugsnag/plugin-vue reference to `Vue` was undefined');\n }\n }\n var _proto = BugsnagPluginVue.prototype;\n _proto.load = function load(client) {\n if (this.Vue && this.Vue.config) {\n _$vue2_3(this.Vue, client);\n return {\n installVueErrorHandler: function () {\n return client._logger.warn('installVueErrorHandler() was called unnecessarily');\n }\n };\n }\n return {\n install: function (app) {\n if (!app) client._logger.error(new Error('@bugsnag/plugin-vue reference to Vue `app` was undefined'));\n _$vue_2(app, client);\n },\n installVueErrorHandler: function (Vue) {\n if (!Vue) client._logger.error(new Error('@bugsnag/plugin-vue reference to `Vue` was undefined'));\n _$vue2_3(Vue, client);\n }\n };\n };\n return BugsnagPluginVue;\n}();\n\n// add a default export for ESM modules without interop\n_$src_1[\"default\"] = _$src_1;\n\nreturn _$src_1;\n\n});\n//# sourceMappingURL=bugsnag-vue.js.map\n","const isBoolean = (value) => value === true || value === false;\nconst isObject = (value) => !!value && typeof value === 'object' && !Array.isArray(value);\nconst isNumber = (value) => typeof value === 'number' && Number.isFinite(value) && !Number.isNaN(value);\nconst isString = (value) => typeof value === 'string';\nconst isStringWithLength = (value) => isString(value) && value.length > 0;\nconst isLogger = (value) => isObject(value) &&\n typeof value.debug === 'function' &&\n typeof value.info === 'function' &&\n typeof value.warn === 'function' &&\n typeof value.error === 'function';\nconst isStringArray = (value) => Array.isArray(value) && value.every(isStringWithLength);\nconst isStringOrRegExpArray = (value) => Array.isArray(value) && value.every(item => isStringWithLength(item) || item instanceof RegExp);\nfunction isPersistedProbability(value) {\n return isObject(value) &&\n isNumber(value.value) &&\n isNumber(value.time);\n}\nconst isSpanContext = (value) => isObject(value) &&\n typeof value.id === 'string' &&\n typeof value.traceId === 'string' &&\n typeof value.isValid === 'function';\nconst isParentContext = (value) => isObject(value) &&\n typeof value.id === 'string' &&\n typeof value.traceId === 'string';\nfunction isTime(value) {\n return isNumber(value) || value instanceof Date;\n}\nfunction isPlugin(value) {\n return isObject(value) && typeof value.configure === 'function';\n}\nfunction isPluginArray(value) {\n return Array.isArray(value) && value.every(plugin => isPlugin(plugin));\n}\n\nexport { isBoolean, isLogger, isNumber, isObject, isParentContext, isPersistedProbability, isPlugin, isPluginArray, isSpanContext, isString, isStringArray, isStringOrRegExpArray, isStringWithLength, isTime };\n","import { isNumber } from './validation.js';\n\nclass SpanAttributes {\n constructor(initialValues) {\n this.attributes = initialValues;\n }\n set(name, value) {\n if (typeof value === 'string' || typeof value === 'boolean' || isNumber(value)) {\n this.attributes.set(name, value);\n }\n }\n remove(name) {\n this.attributes.delete(name);\n }\n toJson() {\n return Array.from(this.attributes).map(([key, value]) => attributeToJson(key, value));\n }\n}\nclass ResourceAttributes extends SpanAttributes {\n constructor(releaseStage, appVersion, serviceName, sdkName, sdkVersion) {\n const initialValues = new Map([\n ['deployment.environment', releaseStage],\n ['telemetry.sdk.name', sdkName],\n ['telemetry.sdk.version', sdkVersion],\n ['service.name', serviceName]\n ]);\n if (appVersion.length > 0) {\n initialValues.set('service.version', appVersion);\n }\n super(initialValues);\n }\n}\nfunction attributeToJson(key, attribute) {\n switch (typeof attribute) {\n case 'number':\n if (Number.isNaN(attribute) || !Number.isFinite(attribute)) {\n return undefined;\n }\n // 'bugsnag.sampling.p' must always be sent as a doubleValue\n if (key !== 'bugsnag.sampling.p' && Number.isInteger(attribute)) {\n return { key, value: { intValue: `${attribute}` } };\n }\n return { key, value: { doubleValue: attribute } };\n case 'boolean':\n return { key, value: { boolValue: attribute } };\n case 'string':\n return { key, value: { stringValue: attribute } };\n default:\n return undefined;\n }\n}\n\nexport { ResourceAttributes, SpanAttributes, attributeToJson };\n","const NANOSECONDS_IN_MILLISECONDS = 1000000;\nfunction millisecondsToNanoseconds(milliseconds) {\n return Math.round(milliseconds * NANOSECONDS_IN_MILLISECONDS);\n}\n\nexport { millisecondsToNanoseconds };\n","import { isStringWithLength, isString, isLogger, isStringArray, isPluginArray, isObject, isNumber } from './validation.js';\n\nconst schema = {\n appVersion: {\n defaultValue: '',\n message: 'should be a string',\n validate: isStringWithLength\n },\n endpoint: {\n defaultValue: 'https://otlp.bugsnag.com/v1/traces',\n message: 'should be a string',\n validate: isStringWithLength\n },\n apiKey: {\n defaultValue: '',\n message: 'should be a 32 character hexadecimal string',\n validate: (value) => isString(value) && /^[a-f0-9]{32}$/.test(value)\n },\n logger: {\n defaultValue: {\n debug(message) { console.debug(message); },\n info(message) { console.info(message); },\n warn(message) { console.warn(message); },\n error(message) { console.error(message); }\n },\n message: 'should be a Logger object',\n validate: isLogger\n },\n releaseStage: {\n defaultValue: 'production',\n message: 'should be a string',\n validate: isStringWithLength\n },\n enabledReleaseStages: {\n defaultValue: null,\n message: 'should be an array of strings',\n validate: (value) => value === null || isStringArray(value)\n },\n plugins: {\n defaultValue: [],\n message: 'should be an array of plugin objects',\n validate: isPluginArray\n },\n bugsnag: {\n defaultValue: undefined,\n message: 'should be an instance of Bugsnag',\n validate: (value) => isObject(value) && typeof value.addOnError === 'function'\n },\n samplingProbability: {\n defaultValue: undefined,\n message: 'should be a number between 0 and 1',\n validate: (value) => value === undefined || (isNumber(value) && value >= 0 && value <= 1)\n }\n};\nfunction validateConfig(config, schema) {\n if (typeof config === 'string') {\n config = { apiKey: config };\n }\n if (!isObject(config) || !isString(config.apiKey) || config.apiKey.length === 0) {\n throw new Error('No Bugsnag API Key set');\n }\n let warnings = '';\n const cleanConfiguration = {};\n for (const option of Object.keys(schema)) {\n if (Object.prototype.hasOwnProperty.call(config, option)) {\n if (schema[option].validate(config[option])) {\n cleanConfiguration[option] = config[option];\n }\n else {\n warnings += `\\n - ${option} ${schema[option].message}, got ${typeof config[option]}`;\n cleanConfiguration[option] = schema[option].defaultValue;\n }\n }\n else {\n cleanConfiguration[option] = schema[option].defaultValue;\n }\n }\n // If apiKey is set but not valid we should still use it, despite the validation warning.\n cleanConfiguration.apiKey = config.apiKey;\n cleanConfiguration.maximumBatchSize = config.maximumBatchSize || 100;\n cleanConfiguration.batchInactivityTimeoutMs = config.batchInactivityTimeoutMs || 30 * 1000;\n if (warnings.length > 0) {\n cleanConfiguration.logger.warn(`Invalid configuration${warnings}`);\n }\n return cleanConfiguration;\n}\n\nexport { schema, validateConfig };\n","class BatchProcessor {\n constructor(delivery, configuration, retryQueue, sampler, probabilityManager, encoder) {\n this.spans = [];\n this.timeout = null;\n this.flushQueue = Promise.resolve();\n this.delivery = delivery;\n this.configuration = configuration;\n this.retryQueue = retryQueue;\n this.sampler = sampler;\n this.probabilityManager = probabilityManager;\n this.encoder = encoder;\n this.flush = this.flush.bind(this);\n }\n stop() {\n if (this.timeout !== null) {\n clearTimeout(this.timeout);\n this.timeout = null;\n }\n }\n start() {\n this.stop();\n this.timeout = setTimeout(this.flush, this.configuration.batchInactivityTimeoutMs);\n }\n add(span) {\n if (this.configuration.enabledReleaseStages &&\n !this.configuration.enabledReleaseStages.includes(this.configuration.releaseStage)) {\n return;\n }\n this.spans.push(span);\n if (this.spans.length >= this.configuration.maximumBatchSize) {\n this.flush();\n }\n else {\n this.start();\n }\n }\n async flush() {\n this.stop();\n this.flushQueue = this.flushQueue.then(async () => {\n const batch = await this.prepareBatch();\n // we either had nothing in the batch originally or all spans were discarded\n if (!batch) {\n return;\n }\n const payload = await this.encoder.encode(batch);\n const batchTime = Date.now();\n try {\n const response = await this.delivery.send(payload);\n if (response.samplingProbability !== undefined) {\n this.probabilityManager.setProbability(response.samplingProbability);\n }\n switch (response.state) {\n case 'success':\n this.retryQueue.flush();\n break;\n case 'failure-discard':\n this.configuration.logger.warn('delivery failed');\n break;\n case 'failure-retryable':\n this.configuration.logger.info('delivery failed, adding to retry queue');\n this.retryQueue.add(payload, batchTime);\n break;\n default:\n response.state;\n }\n }\n catch (err) {\n this.configuration.logger.warn('delivery failed');\n }\n });\n await this.flushQueue;\n }\n async prepareBatch() {\n if (this.spans.length === 0) {\n return;\n }\n // ensure we have a fresh probability value before building the batch\n await this.probabilityManager.ensureFreshProbability();\n // update sampling values if necessary and re-sample\n const batch = [];\n const probability = this.sampler.spanProbability;\n for (const span of this.spans) {\n if (span.samplingProbability.raw > probability.raw) {\n span.samplingProbability = probability;\n }\n if (this.sampler.sample(span)) {\n batch.push(span);\n }\n }\n // clear out the current batch so we're ready to start a new one\n this.spans = [];\n // if every span was discarded there's nothing to send\n if (batch.length === 0) {\n return;\n }\n return batch;\n }\n}\n\nexport { BatchProcessor };\n","class SpanEvents {\n constructor() {\n this.events = [];\n }\n add(name, time) {\n this.events.push({ name, time });\n }\n toJson(clock) {\n return this.events.map(({ name, time }) => ({ name, timeUnixNano: clock.toUnixTimestampNanoseconds(time) }));\n }\n}\n\nexport { SpanEvents };\n","/*\n * Copyright The OpenTelemetry Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n// taken from OpenTelemetry's TraceIdRatioBasedSampler:\n// https://github.com/open-telemetry/opentelemetry-js/blob/ca700c4eef64c14bb5fef2be6f08ace7973a8881/packages/opentelemetry-sdk-trace-base/src/sampler/TraceIdRatioBasedSampler.ts#L47-L55\n// with some small modifications to match our naming conventions\nfunction traceIdToSamplingRate(traceId) {\n let samplingRate = 0;\n for (let i = 0; i < traceId.length / 8; i++) {\n const position = i * 8;\n const segment = Number.parseInt(traceId.slice(position, position + 8), 16);\n samplingRate = (samplingRate ^ segment) >>> 0;\n }\n return samplingRate;\n}\n\nexport { traceIdToSamplingRate as default };\n","import { SpanEvents } from './events.js';\nimport traceIdToSamplingRate from './trace-id-to-sampling-rate.js';\nimport { isTime, isSpanContext, isBoolean } from './validation.js';\n\nconst HOUR_IN_MILLISECONDS = 60 * 60 * 1000;\nfunction spanToJson(span, clock) {\n return {\n name: span.name,\n kind: span.kind,\n spanId: span.id,\n traceId: span.traceId,\n parentSpanId: span.parentSpanId,\n startTimeUnixNano: clock.toUnixTimestampNanoseconds(span.startTime),\n endTimeUnixNano: clock.toUnixTimestampNanoseconds(span.endTime),\n attributes: span.attributes.toJson(),\n events: span.events.toJson(clock)\n };\n}\nclass SpanInternal {\n constructor(id, traceId, name, startTime, attributes, clock, parentSpanId) {\n this.kind = 3 /* Kind.Client */; // TODO: How do we define the initial Kind?\n this.events = new SpanEvents();\n this.id = id;\n this.traceId = traceId;\n this.parentSpanId = parentSpanId;\n this.name = name;\n this.startTime = startTime;\n this.attributes = attributes;\n this.samplingRate = traceIdToSamplingRate(this.traceId);\n this.clock = clock;\n }\n addEvent(name, time) {\n this.events.add(name, time);\n }\n setAttribute(name, value) {\n this.attributes.set(name, value);\n }\n end(endTime, samplingProbability) {\n this.endTime = endTime;\n let _samplingProbability = samplingProbability;\n this.attributes.set('bugsnag.sampling.p', _samplingProbability.raw);\n return {\n id: this.id,\n name: this.name,\n kind: this.kind,\n traceId: this.traceId,\n startTime: this.startTime,\n attributes: this.attributes,\n events: this.events,\n samplingRate: this.samplingRate,\n endTime,\n get samplingProbability() {\n return _samplingProbability;\n },\n set samplingProbability(samplingProbability) {\n _samplingProbability = samplingProbability;\n this.attributes.set('bugsnag.sampling.p', _samplingProbability.raw);\n },\n parentSpanId: this.parentSpanId\n };\n }\n isValid() {\n return this.endTime === undefined && this.startTime > (this.clock.now() - HOUR_IN_MILLISECONDS);\n }\n}\nconst coreSpanOptionSchema = {\n startTime: {\n message: 'should be a number or Date',\n getDefaultValue: () => undefined,\n validate: isTime\n },\n parentContext: {\n message: 'should be a SpanContext',\n getDefaultValue: () => undefined,\n validate: (value) => value === null || isSpanContext(value)\n },\n makeCurrentContext: {\n message: 'should be true|false',\n getDefaultValue: () => undefined,\n validate: isBoolean\n },\n isFirstClass: {\n message: 'should be true|false',\n getDefaultValue: () => undefined,\n validate: isBoolean\n }\n};\n\nexport { SpanInternal, coreSpanOptionSchema, spanToJson };\n","import { spanToJson } from './span.js';\n\nclass TracePayloadEncoder {\n constructor(clock, configuration, resourceAttributeSource) {\n this.clock = clock;\n this.configuration = configuration;\n this.resourceAttributeSource = resourceAttributeSource;\n }\n async encode(spans) {\n const resourceAttributes = await this.resourceAttributeSource(this.configuration);\n const jsonSpans = Array(spans.length);\n for (let i = 0; i < spans.length; ++i) {\n jsonSpans[i] = spanToJson(spans[i], this.clock);\n }\n const deliveryPayload = {\n resourceSpans: [\n {\n resource: { attributes: resourceAttributes.toJson() },\n scopeSpans: [{ spans: jsonSpans }]\n }\n ]\n };\n return {\n body: deliveryPayload,\n headers: {\n 'Bugsnag-Api-Key': this.configuration.apiKey,\n 'Content-Type': 'application/json',\n // Do not set 'Bugsnag-Span-Sampling' if the SDK is configured with samplingProbability\n ...(this.configuration.samplingProbability !== undefined ? {} : { 'Bugsnag-Span-Sampling': this.generateSamplingHeader(spans) })\n }\n };\n }\n generateSamplingHeader(spans) {\n if (spans.length === 0) {\n return '1:0';\n }\n const spanCounts = Object.create(null);\n for (const span of spans) {\n const existingValue = spanCounts[span.samplingProbability.raw] || 0;\n spanCounts[span.samplingProbability.raw] = existingValue + 1;\n }\n const rawProbabilities = Object.keys(spanCounts);\n const pairs = Array(rawProbabilities.length);\n for (let i = 0; i < rawProbabilities.length; ++i) {\n const rawProbability = rawProbabilities[i];\n pairs[i] = `${rawProbability}:${spanCounts[rawProbability]}`;\n }\n return pairs.join(';');\n }\n}\nconst retryCodes = new Set([402, 407, 408, 429]);\nfunction responseStateFromStatusCode(statusCode) {\n if (statusCode >= 200 && statusCode < 300) {\n return 'success';\n }\n if (statusCode >= 400 && statusCode < 500 && !retryCodes.has(statusCode)) {\n return 'failure-discard';\n }\n return 'failure-retryable';\n}\n\nexport { TracePayloadEncoder, responseStateFromStatusCode };\n","class FixedProbabilityManager {\n static async create(sampler, samplingProbability) {\n sampler.probability = samplingProbability;\n return new FixedProbabilityManager(sampler, samplingProbability);\n }\n constructor(sampler, samplingProbability) {\n this.sampler = sampler;\n this.samplingProbability = samplingProbability;\n }\n setProbability(newProbability) {\n return Promise.resolve();\n }\n ensureFreshProbability() {\n return Promise.resolve();\n }\n}\n\nexport { FixedProbabilityManager as default };\n","// the time to wait before retrying a failed request\nconst RETRY_MILLISECONDS = 30 * 1000;\nclass ProbabilityFetcher {\n constructor(delivery, apiKey) {\n this.delivery = delivery;\n this.payload = {\n body: { resourceSpans: [] },\n headers: {\n 'Bugsnag-Api-Key': apiKey,\n 'Content-Type': 'application/json',\n 'Bugsnag-Span-Sampling': '1.0:0'\n }\n };\n }\n async getNewProbability() {\n // keep making requests until we get a new probability value from the server\n while (true) {\n const response = await this.delivery.send(this.payload);\n // in theory this should always be present, but it's possible the request\n // fails or there's a bug on the server side causing it not to be returned\n if (response.samplingProbability !== undefined) {\n return response.samplingProbability;\n }\n await this.timeBetweenRetries();\n }\n }\n timeBetweenRetries() {\n return new Promise(resolve => {\n setTimeout(resolve, RETRY_MILLISECONDS);\n });\n }\n}\n\nexport { ProbabilityFetcher as default };\n","// the time between requests to fetch a new probability value from the server\nconst PROBABILITY_REFRESH_MILLISECONDS = 24 * 60 * 60 * 1000; // 24 hours\nclass ProbabilityManager {\n static async create(persistence, sampler, probabilityFetcher) {\n const persistedProbability = await persistence.load('bugsnag-sampling-probability');\n let initialProbabilityTime;\n if (persistedProbability === undefined) {\n // If there is no stored probability:\n // - Set the initial probability value to the default\n // - Immediately fetch a new probability value\n sampler.probability = 1.0;\n initialProbabilityTime = 0;\n }\n else if (persistedProbability.time < Date.now() - PROBABILITY_REFRESH_MILLISECONDS) {\n // If it is >= 24 hours old:\n // - Set the initial probability value to the stored value\n // - Immediately fetch a new probability value\n sampler.probability = persistedProbability.value;\n initialProbabilityTime = persistedProbability.time;\n }\n else {\n // If it is < 24 hours old:\n // - Use the stored probability\n // - Fetch a new probability when this value would be 24 hours old\n sampler.probability = persistedProbability.value;\n initialProbabilityTime = persistedProbability.time;\n }\n return new ProbabilityManager(persistence, sampler, probabilityFetcher, initialProbabilityTime);\n }\n constructor(persistence, sampler, probabilityFetcher, initialProbabilityTime) {\n this.outstandingFreshnessCheck = undefined;\n this.persistence = persistence;\n this.sampler = sampler;\n this.probabilityFetcher = probabilityFetcher;\n this.lastProbabilityTime = initialProbabilityTime;\n this.ensureFreshProbability();\n }\n setProbability(newProbability) {\n this.lastProbabilityTime = Date.now();\n this.sampler.probability = newProbability;\n // return this promise for convience in unit tests as it allows us to wait\n // for persistence to finish; in real code we won't ever wait for this but\n // there's no harm in returning it anyway\n return this.persistence.save('bugsnag-sampling-probability', {\n value: newProbability,\n time: this.lastProbabilityTime\n });\n }\n /**\n * Ensure that the current probability value is fresh, i.e. it is less than 24\n * hours old\n *\n * If the probability value is stale then this method will fetch a fresh one\n *\n * This method is idempotent; calling it while there is already an outstanding\n * probability request will not create a second request\n */\n ensureFreshProbability() {\n // we're already fetching a new probability\n if (this.outstandingFreshnessCheck) {\n return this.outstandingFreshnessCheck;\n }\n // if the probability value is >= 24 hours old, fetch a new one\n if (Date.now() - this.lastProbabilityTime >= PROBABILITY_REFRESH_MILLISECONDS) {\n this.outstandingFreshnessCheck = this.probabilityFetcher.getNewProbability()\n .then(probability => {\n this.setProbability(probability);\n this.outstandingFreshnessCheck = undefined;\n });\n return this.outstandingFreshnessCheck;\n }\n return Promise.resolve();\n }\n}\n\nexport { ProbabilityManager as default };\n","// a processor that buffers spans in memory until the client has started\n// not sure if this would need to be platform specific — will we ever care about\n// persisting spans if 'start' is never called?\nclass BufferingProcessor {\n constructor() {\n this.spans = [];\n }\n add(span) {\n this.spans.push(span);\n }\n}\n\nexport { BufferingProcessor };\n","// sampling rates are stored as a number between 0 and 2^32 - 1 (i.e. they are\n// u32s) so we need to scale the probability value to match this range as they\n// are stored as values between 0 and 1\nfunction scaleProbabilityToMatchSamplingRate(probability) {\n return Math.floor(probability * 0xffffffff);\n}\nclass Sampler {\n constructor(initialProbability) {\n // we could just do 'this.probability = initialProbability' but TypeScript\n // doesn't like that as it doesn't directly initialise these properties in\n // the constructor\n this._probability = initialProbability;\n this.scaledProbability = scaleProbabilityToMatchSamplingRate(initialProbability);\n }\n /**\n * The global probability value: a number between 0 & 1\n */\n get probability() {\n return this._probability;\n }\n set probability(probability) {\n this._probability = probability;\n this.scaledProbability = scaleProbabilityToMatchSamplingRate(probability);\n }\n /**\n * The probability value for spans: a number between 0 & 2^32 - 1\n *\n * This is necessary because span sampling rates are generated as unsigned 32\n * bit integers. We scale the global probability value to match that range, so\n * that we can use a simple calculation in 'sample'\n *\n * @see scaleProbabilityToMatchSamplingRate\n */\n get spanProbability() {\n return {\n raw: this._probability,\n scaled: this.scaledProbability\n };\n }\n sample(span) {\n return span.samplingRate <= span.samplingProbability.scaled;\n }\n shouldSample(samplingRate) {\n return samplingRate <= this.spanProbability.scaled;\n }\n}\n\nexport { Sampler as default };\n","function spanContextEquals(span1, span2) {\n if (span1 === span2)\n return true;\n if (span1 !== undefined && span2 !== undefined) {\n return span1.id === span2.id && span1.traceId === span2.traceId;\n }\n return false;\n}\nclass DefaultSpanContextStorage {\n constructor(backgroundingListener, contextStack = []) {\n this.isInForeground = true;\n this.onBackgroundStateChange = (state) => {\n this.isInForeground = state === 'in-foreground';\n // clear the context stack regardless of the new background state\n // since spans are only valid if they start and end while the app is in the foreground\n this.contextStack.length = 0;\n };\n this.contextStack = contextStack;\n backgroundingListener.onStateChange(this.onBackgroundStateChange);\n }\n *[Symbol.iterator]() {\n for (let i = this.contextStack.length - 1; i >= 0; --i) {\n yield this.contextStack[i];\n }\n }\n push(context) {\n if (context.isValid() && this.isInForeground) {\n this.contextStack.push(context);\n }\n }\n pop(context) {\n if (spanContextEquals(context, this.current)) {\n this.contextStack.pop();\n }\n this.removeClosedContexts();\n }\n get first() {\n this.removeClosedContexts();\n return this.contextStack.length > 0\n ? this.contextStack[0]\n : undefined;\n }\n get current() {\n this.removeClosedContexts();\n return this.contextStack.length > 0\n ? this.contextStack[this.contextStack.length - 1]\n : undefined;\n }\n removeClosedContexts() {\n while (this.contextStack.length > 0 &&\n this.contextStack[this.contextStack.length - 1].isValid() === false) {\n this.contextStack.pop();\n }\n }\n}\n\nexport { DefaultSpanContextStorage, spanContextEquals };\n","import { isNumber } from './validation.js';\n\nfunction timeToNumber(clock, time) {\n if (isNumber(time)) {\n // no need to change anything - we want to store numbers anyway\n // we assume this is nanosecond precision\n return time;\n }\n if (time instanceof Date) {\n return clock.convert(time);\n }\n return clock.now();\n}\n\nexport { timeToNumber };\n","import { SpanAttributes } from './attributes.js';\nimport { SpanInternal, coreSpanOptionSchema } from './span.js';\nimport { timeToNumber } from './time.js';\nimport { isParentContext, isObject } from './validation.js';\n\nconst DISCARD_END_TIME = -1;\nclass SpanFactory {\n constructor(processor, sampler, idGenerator, spanAttributesSource, clock, backgroundingListener, logger, spanContextStorage) {\n this.openSpans = new WeakSet();\n this.isInForeground = true;\n this.onBackgroundStateChange = (state) => {\n this.isInForeground = state === 'in-foreground';\n // clear all open spans regardless of the new background state\n // since spans are only valid if they start and end while the app is in the foreground\n this.openSpans = new WeakSet();\n };\n this.processor = processor;\n this.sampler = sampler;\n this.idGenerator = idGenerator;\n this.spanAttributesSource = spanAttributesSource;\n this.clock = clock;\n this.logger = logger;\n this.spanContextStorage = spanContextStorage;\n // this will fire immediately if the app is already backgrounded\n backgroundingListener.onStateChange(this.onBackgroundStateChange);\n }\n startSpan(name, options) {\n const safeStartTime = timeToNumber(this.clock, options.startTime);\n const spanId = this.idGenerator.generate(64);\n // if the parentContext option is not set use the current context\n // if parentContext is explicitly null, or there is no current context,\n // we are starting a new root span\n const parentContext = isParentContext(options.parentContext) || options.parentContext === null\n ? options.parentContext\n : this.spanContextStorage.current;\n const parentSpanId = parentContext ? parentContext.id : undefined;\n const traceId = parentContext ? parentContext.traceId : this.idGenerator.generate(128);\n const attributes = new SpanAttributes(new Map());\n if (typeof options.isFirstClass === 'boolean') {\n attributes.set('bugsnag.span.first_class', options.isFirstClass);\n }\n const span = new SpanInternal(spanId, traceId, name, safeStartTime, attributes, this.clock, parentSpanId);\n // don't track spans that are started while the app is backgrounded\n if (this.isInForeground) {\n this.openSpans.add(span);\n if (options.makeCurrentContext !== false) {\n this.spanContextStorage.push(span);\n }\n }\n return span;\n }\n startNetworkSpan(options) {\n const spanName = `[HTTP/${options.method.toUpperCase()}]`;\n const cleanOptions = this.validateSpanOptions(spanName, options);\n const spanInternal = this.startSpan(cleanOptions.name, { ...cleanOptions.options, makeCurrentContext: false });\n spanInternal.setAttribute('bugsnag.span.category', 'network');\n spanInternal.setAttribute('http.method', options.method);\n spanInternal.setAttribute('http.url', options.url);\n return spanInternal;\n }\n configure(processor, logger) {\n this.processor = processor;\n this.logger = logger;\n }\n endSpan(span, endTime, additionalAttributes) {\n // remove the span from the context stack (this will also remove any invalid spans)\n this.spanContextStorage.pop(span);\n const untracked = !this.openSpans.delete(span);\n const isValidSpan = span.isValid();\n // log a warning if the span is already invalid and is not being tracked\n if (untracked && !isValidSpan) {\n this.logger.warn('Attempted to end a Span which is no longer valid.');\n }\n // spans should be discarded if:\n // - they are not tracked (i.e. discarded due to backgrounding)\n // - they are already invalid\n // - they have an explicit discard end time\n if (untracked || !isValidSpan || endTime === DISCARD_END_TIME) {\n // we still call end on the span so that it is no longer considered valid\n span.end(endTime, this.sampler.spanProbability);\n return;\n }\n // Set any additional attributes\n for (const [key, value] of Object.entries(additionalAttributes || {})) {\n span.setAttribute(key, value);\n }\n this.spanAttributesSource.requestAttributes(span);\n const spanEnded = span.end(endTime, this.sampler.spanProbability);\n if (this.sampler.sample(spanEnded)) {\n this.processor.add(spanEnded);\n }\n }\n toPublicApi(span) {\n return {\n get id() {\n return span.id;\n },\n get traceId() {\n return span.traceId;\n },\n get samplingRate() {\n return span.samplingRate;\n },\n isValid: () => span.isValid(),\n setAttribute: (name, value) => {\n if (typeof name !== 'string') {\n this.logger.warn(`Invalid attribute name, expected string, got ${typeof name}`);\n }\n else {\n span.setAttribute(name, value);\n }\n },\n end: (endTime) => {\n const safeEndTime = timeToNumber(this.clock, endTime);\n this.endSpan(span, safeEndTime);\n }\n };\n }\n validateSpanOptions(name, options, schema = coreSpanOptionSchema) {\n let warnings = '';\n const cleanOptions = {};\n if (typeof name !== 'string') {\n warnings += `\\n - name should be a string, got ${typeof name}`;\n name = String(name);\n }\n if (options !== undefined && !isObject(options)) {\n warnings += '\\n - options is not an object';\n }\n else {\n const spanOptions = options || {};\n for (const option of Object.keys(schema)) {\n if (Object.prototype.hasOwnProperty.call(spanOptions, option) && spanOptions[option] !== undefined) {\n if (schema[option].validate(spanOptions[option])) {\n cleanOptions[option] = spanOptions[option];\n }\n else {\n warnings += `\\n - ${option} ${schema[option].message}, got ${typeof spanOptions[option]}`;\n cleanOptions[option] = schema[option].getDefaultValue(spanOptions[option]);\n }\n }\n else {\n cleanOptions[option] = schema[option].getDefaultValue(spanOptions[option]);\n }\n }\n }\n if (warnings.length > 0) {\n this.logger.warn(`Invalid span options${warnings}`);\n }\n return { name, options: cleanOptions };\n }\n}\n\nexport { DISCARD_END_TIME, SpanFactory };\n","import { BatchProcessor } from './batch-processor.js';\nimport { validateConfig, schema } from './config.js';\nimport { TracePayloadEncoder } from './delivery.js';\nimport FixedProbabilityManager from './fixed-probability-manager.js';\nimport ProbabilityFetcher from './probability-fetcher.js';\nimport ProbabilityManager from './probability-manager.js';\nimport { BufferingProcessor } from './processor.js';\nimport Sampler from './sampler.js';\nimport { DefaultSpanContextStorage } from './span-context.js';\nimport { SpanFactory } from './span-factory.js';\nimport { timeToNumber } from './time.js';\n\nfunction createClient(options) {\n const bufferingProcessor = new BufferingProcessor();\n let processor = bufferingProcessor;\n const spanContextStorage = options.spanContextStorage || new DefaultSpanContextStorage(options.backgroundingListener);\n let logger = options.schema.logger.defaultValue;\n const sampler = new Sampler(1.0);\n const spanFactory = new SpanFactory(processor, sampler, options.idGenerator, options.spanAttributesSource, options.clock, options.backgroundingListener, logger, spanContextStorage);\n const plugins = options.plugins(spanFactory, spanContextStorage);\n return {\n start: (config) => {\n const configuration = validateConfig(config, options.schema);\n // if using the default endpoint add the API key as a subdomain\n // e.g. convert URL https://otlp.bugsnag.com/v1/traces to URL https://.otlp.bugsnag.com/v1/traces\n if (configuration.endpoint === schema.endpoint.defaultValue) {\n const endpointWithApiKeyInSubdomain = new URL(configuration.endpoint);\n endpointWithApiKeyInSubdomain.hostname = `${configuration.apiKey}.${endpointWithApiKeyInSubdomain.hostname}`;\n configuration.endpoint = endpointWithApiKeyInSubdomain.toString();\n }\n // Correlate errors with span by monkey patching _notify on the error client\n // and utilizing the setTraceCorrelation method on the event\n if (configuration.bugsnag && typeof configuration.bugsnag.Event.prototype.setTraceCorrelation === 'function' && configuration.bugsnag.Client) {\n const originalNotify = configuration.bugsnag.Client.prototype._notify;\n configuration.bugsnag.Client.prototype._notify = function (...args) {\n const currentSpanContext = spanContextStorage.current;\n if (currentSpanContext && typeof args[0].setTraceCorrelation === 'function') {\n args[0].setTraceCorrelation(currentSpanContext.traceId, currentSpanContext.id);\n }\n originalNotify.apply(this, args);\n };\n }\n const delivery = options.deliveryFactory(configuration.endpoint);\n options.spanAttributesSource.configure(configuration);\n const probabilityManagerPromise = configuration.samplingProbability === undefined\n ? ProbabilityManager.create(options.persistence, sampler, new ProbabilityFetcher(delivery, configuration.apiKey))\n : FixedProbabilityManager.create(sampler, configuration.samplingProbability);\n probabilityManagerPromise.then((manager) => {\n processor = new BatchProcessor(delivery, configuration, options.retryQueueFactory(delivery, configuration.retryQueueMaxSize), sampler, manager, new TracePayloadEncoder(options.clock, configuration, options.resourceAttributesSource));\n // ensure all spans started before .start() are added to the batch\n for (const span of bufferingProcessor.spans) {\n processor.add(span);\n }\n // register with the backgrounding listener - we do this in 'start' as\n // there's nothing to do if we're backgrounded before start is called\n // e.g. we can't trigger delivery until we have the apiKey and endpoint\n // from configuration\n options.backgroundingListener.onStateChange(state => {\n processor.flush();\n // ensure we have a fresh probability value when returning to the\n // foreground\n if (state === 'in-foreground') {\n manager.ensureFreshProbability();\n }\n });\n logger = configuration.logger;\n spanFactory.configure(processor, logger);\n });\n for (const plugin of configuration.plugins) {\n plugins.push(plugin);\n }\n for (const plugin of plugins) {\n plugin.configure(configuration, spanFactory);\n }\n },\n startSpan: (name, spanOptions) => {\n const cleanOptions = spanFactory.validateSpanOptions(name, spanOptions);\n const span = spanFactory.startSpan(cleanOptions.name, cleanOptions.options);\n span.setAttribute('bugsnag.span.category', 'custom');\n return spanFactory.toPublicApi(span);\n },\n startNetworkSpan: (networkSpanOptions) => {\n const spanInternal = spanFactory.startNetworkSpan(networkSpanOptions);\n const span = spanFactory.toPublicApi(spanInternal);\n // Overwrite end method to set status code attribute\n // once we release the setAttribute API we can simply return the span\n const networkSpan = {\n ...span,\n end: (endOptions) => {\n spanFactory.endSpan(spanInternal, timeToNumber(options.clock, endOptions.endTime), { 'http.status_code': endOptions.status });\n }\n };\n return networkSpan;\n },\n getPlugin: (Constructor) => {\n for (const plugin of plugins) {\n if (plugin instanceof Constructor) {\n return plugin;\n }\n }\n },\n get currentSpanContext() {\n return spanContextStorage.current;\n },\n ...(options.platformExtensions && options.platformExtensions(spanFactory, spanContextStorage))\n };\n}\nfunction createNoopClient() {\n const noop = () => { };\n return {\n start: noop,\n startSpan: () => ({ id: '', traceId: '', end: noop, isValid: () => false }),\n currentSpanContext: undefined\n };\n}\n\nexport { createClient, createNoopClient };\n","module.exports = function pad (num, size) {\n var s = '000000000' + num;\n return s.substr(s.length - size);\n};\n","var pad = require('./pad.js');\n\nvar env = typeof window === 'object' ? window : self;\nvar globalCount = 0;\nfor (var prop in env) {\n if (Object.hasOwnProperty.call(env, prop)) globalCount++;\n}\nvar mimeTypesLength = navigator.mimeTypes ? navigator.mimeTypes.length : 0;\nvar clientId = pad((mimeTypesLength +\n navigator.userAgent.length).toString(36) +\n globalCount.toString(36), 4);\n\nmodule.exports = function fingerprint () {\n return clientId;\n};\n","/**\n * Check the provided value is a valid device id\n * @param {unknown} value\n * @returns\n */\nmodule.exports = function isCuid (value) {\n return typeof value === 'string' && (/^c[a-z0-9]{20,32}$/).test(value);\n};\n","/**\n * cuid.js\n * Collision-resistant UID generator for browsers and node.\n * Sequential for fast db lookups and recency sorting.\n * Safe for element IDs and server-side lookups.\n *\n * Extracted from CLCTR\n *\n * Copyright (c) Eric Elliott 2012\n * MIT License\n */\n\nvar fingerprint = require('./lib/fingerprint.js');\nvar isCuid = require('./lib/is-cuid.js');\nvar pad = require('./lib/pad.js');\n\nvar c = 0,\n blockSize = 4,\n base = 36,\n discreteValues = Math.pow(base, blockSize);\n\nfunction randomBlock () {\n return pad((Math.random() *\n discreteValues << 0)\n .toString(base), blockSize);\n}\n\nfunction safeCounter () {\n c = c < discreteValues ? c : 0;\n c++; // this is not subliminal\n return c - 1;\n}\n\nfunction cuid () {\n // Starting with a lowercase letter makes\n // it HTML element ID friendly.\n var letter = 'c', // hard-coded allows for sequential access\n\n // timestamp\n // warning: this exposes the exact date and time\n // that the uid was created.\n timestamp = new Date().getTime().toString(base),\n\n // Prevent same-machine collisions.\n counter = pad(safeCounter().toString(base), blockSize),\n\n // A few chars to generate distinct ids for different\n // clients (so different computers are far less\n // likely to generate the same id)\n print = fingerprint(),\n\n // Grab some more chars from Math.random()\n random = randomBlock() + randomBlock();\n\n return letter + timestamp + counter + print + random;\n}\n\ncuid.fingerprint = fingerprint;\ncuid.isCuid = isCuid;\n\nmodule.exports = cuid;\n","import cuid from '@bugsnag/cuid';\nimport { isPersistedProbability } from './validation.js';\n\nconst { isCuid } = cuid;\nclass InMemoryPersistence {\n constructor() {\n this.persistedItems = new Map();\n }\n async load(key) {\n return this.persistedItems.get(key);\n }\n async save(key, value) {\n this.persistedItems.set(key, value);\n }\n}\nfunction toPersistedPayload(key, raw) {\n switch (key) {\n case 'bugsnag-sampling-probability': {\n const json = JSON.parse(raw);\n return isPersistedProbability(json)\n ? json\n : undefined;\n }\n case 'bugsnag-anonymous-id':\n return isCuid(raw)\n ? raw\n : undefined;\n }\n}\n\nexport { InMemoryPersistence, toPersistedPayload };\n","const msInDay = 24 * 60 * 60000;\nclass InMemoryQueue {\n constructor(delivery, retryQueueMaxSize) {\n this.delivery = delivery;\n this.retryQueueMaxSize = retryQueueMaxSize;\n this.requestQueue = Promise.resolve();\n this.payloads = [];\n }\n add(payload, time) {\n this.payloads.push({ payload, time });\n let spanCount = this.payloads.reduce((count, { payload }) => count + countSpansInPayload(payload), 0);\n while (spanCount > this.retryQueueMaxSize) {\n const payload = this.payloads.shift();\n if (!payload) {\n break;\n }\n spanCount -= countSpansInPayload(payload.payload);\n }\n }\n async flush() {\n if (this.payloads.length === 0)\n return;\n const payloads = this.payloads;\n this.payloads = [];\n this.requestQueue = this.requestQueue.then(async () => {\n for (const { payload, time } of payloads) {\n // discard payloads at least 24 hours old\n if (Date.now() >= time + msInDay)\n continue;\n try {\n const { state } = await this.delivery.send(payload);\n switch (state) {\n case 'success':\n case 'failure-discard':\n break;\n case 'failure-retryable':\n this.add(payload, time);\n break;\n default:\n state;\n }\n }\n catch (err) { }\n }\n });\n await this.requestQueue;\n }\n}\nfunction countSpansInPayload(payload) {\n let count = 0;\n for (let i = 0; i < payload.body.resourceSpans.length; ++i) {\n const scopeSpans = payload.body.resourceSpans[i].scopeSpans;\n for (let j = 0; j < scopeSpans.length; ++j) {\n count += scopeSpans[j].spans.length;\n }\n }\n return count;\n}\n\nexport { InMemoryQueue };\n","import { responseStateFromStatusCode } from '@bugsnag/core-performance';\n\nfunction samplingProbabilityFromHeaders(headers) {\n const value = headers.get('Bugsnag-Sampling-Probability');\n if (typeof value !== 'string') {\n return undefined;\n }\n const asNumber = Number.parseFloat(value);\n if (Number.isNaN(asNumber) || asNumber < 0 || asNumber > 1) {\n return undefined;\n }\n return asNumber;\n}\nfunction createFetchDeliveryFactory(fetch, clock, backgroundingListener) {\n // if a backgrounding listener is supplied, set fetch's 'keepalive' flag\n // when the app is backgrounded/terminated so that we can flush the last batch\n // this may be required on platforms such as browser where without 'keepalive'\n // the request may be cancelled (or never start sending) when backgrounded\n // we don't _always_ set the flag because it imposes a 64k payload limit\n let keepalive = false;\n if (backgroundingListener) {\n backgroundingListener.onStateChange(state => {\n keepalive = state === 'in-background';\n });\n }\n return function fetchDeliveryFactory(endpoint) {\n return {\n async send(payload) {\n const body = JSON.stringify(payload.body);\n payload.headers['Bugsnag-Sent-At'] = clock.date().toISOString();\n try {\n const response = await fetch(endpoint, {\n method: 'POST',\n keepalive,\n body,\n headers: payload.headers\n });\n return {\n state: responseStateFromStatusCode(response.status),\n samplingProbability: samplingProbabilityFromHeaders(response.headers)\n };\n }\n catch (err) {\n if (body.length > 10e5) {\n return { state: 'failure-discard' };\n }\n return { state: 'failure-retryable' };\n }\n }\n };\n };\n}\n\nexport { createFetchDeliveryFactory as default };\n","function defaultNetworkRequestCallback(networkRequestInfo) {\n return networkRequestInfo;\n}\nfunction isNetworkRequestCallback(value) {\n return typeof value === 'function';\n}\n\nexport { defaultNetworkRequestCallback, isNetworkRequestCallback };\n","class RequestTracker {\n constructor() {\n this.callbacks = [];\n }\n onStart(startCallback) {\n this.callbacks.push(startCallback);\n }\n start(context) {\n const results = [];\n for (const startCallback of this.callbacks) {\n const result = startCallback(context);\n if (result)\n results.push(result);\n }\n return {\n onRequestEnd: (endContext) => {\n for (const result of results) {\n if (result && result.onRequestEnd) {\n result.onRequestEnd(endContext);\n }\n }\n },\n extraRequestHeaders: results.map((result) => {\n if (result && result.extraRequestHeaders) {\n return result.extraRequestHeaders;\n }\n return undefined;\n }).filter(isDefined)\n };\n }\n}\nfunction isDefined(argument) {\n return argument !== undefined;\n}\n\nexport { RequestTracker };\n","function getAbsoluteUrl(url, baseUrl) {\n // if it looks like an absolute url do nothing\n if (url.indexOf('https://') === 0 || url.indexOf('http://') === 0)\n return url;\n try {\n const absoluteUrl = new URL(url, baseUrl).href;\n // if a trailing slash has been added inadvertently remove it\n if (!url.endsWith('/') && absoluteUrl.endsWith('/')) {\n return absoluteUrl.slice(0, -1);\n }\n return absoluteUrl;\n }\n catch (_a) {\n // not a valid URL for some reason - simply return it\n return url;\n }\n}\n\nexport { getAbsoluteUrl as default };\n","import { RequestTracker } from './request-tracker.js';\nimport getAbsoluteUrl from './url-helpers.js';\n\nfunction createStartContext(startTime, input, init, baseUrl) {\n const inputIsRequest = isRequest(input);\n const url = inputIsRequest ? input.url : String(input);\n const method = (!!init && init.method) || (inputIsRequest && input.method) || 'GET';\n return { url: getAbsoluteUrl(url, baseUrl), method, startTime, type: 'fetch' };\n}\nfunction isRequest(input) {\n return !!input && typeof input === 'object' && !(input instanceof URL);\n}\nfunction isHeadersInstance(input) {\n return !!input && typeof input === 'object' && input instanceof Headers;\n}\nfunction createFetchRequestTracker(global, clock) {\n const requestTracker = new RequestTracker();\n const originalFetch = global.fetch;\n global.fetch = function fetch(input, init) {\n const startContext = createStartContext(clock.now(), input, init, global.document && global.document.baseURI);\n const { onRequestEnd, extraRequestHeaders } = requestTracker.start(startContext);\n // Add the headers to the `init` received from the caller\n const modifiedParams = mergeRequestHeaders(input, init, extraRequestHeaders);\n return originalFetch.call(this, modifiedParams[0], modifiedParams[1]).then(response => {\n onRequestEnd({ status: response.status, endTime: clock.now(), state: 'success' });\n return response;\n }).catch(error => {\n onRequestEnd({ error, endTime: clock.now(), state: 'error' });\n throw error;\n });\n };\n return requestTracker;\n}\nfunction mergeRequestHeaders(input, init, extraRequestHeaders) {\n if (!extraRequestHeaders)\n return [input, init];\n const extraHeaders = extraRequestHeaders.reduce((headers, current) => ({ ...headers, ...current }), {});\n if (isRequest(input) && (!init || !init.headers)) {\n mergeInputRequestHeaders(extraHeaders, input);\n }\n else {\n init = mergeInitRequestHeaders(extraHeaders, init);\n }\n return [input, init];\n}\nfunction mergeInputRequestHeaders(extraRequestHeaders, input) {\n for (const [name, value] of Object.entries(extraRequestHeaders)) {\n if (!input.headers.has(name)) {\n input.headers.set(name, value);\n }\n }\n}\nfunction mergeInitRequestHeaders(extraRequestHeaders, init) {\n if (!init)\n init = {};\n if (isHeadersInstance(init.headers)) {\n for (const [name, value] of Object.entries(extraRequestHeaders)) {\n if (!init.headers.has(name)) {\n init.headers.set(name, value);\n }\n }\n return init;\n }\n else {\n return { ...init, headers: { ...extraRequestHeaders, ...init.headers } };\n }\n}\n\nexport { createFetchRequestTracker as default };\n","import { RequestTracker } from './request-tracker.js';\nimport getAbsoluteUrl from './url-helpers.js';\n\nfunction createXmlHttpRequestTracker(xhr, clock, document) {\n const requestTracker = new RequestTracker();\n const trackedRequests = new WeakMap();\n const requestHandlers = new WeakMap();\n const originalOpen = xhr.prototype.open;\n xhr.prototype.open = function open(method, url, ...rest) {\n trackedRequests.set(this, { method, url: getAbsoluteUrl(String(url), document && document.baseURI) });\n // @ts-expect-error rest\n originalOpen.call(this, method, url, ...rest);\n };\n const originalSend = xhr.prototype.send;\n xhr.prototype.send = function send(body) {\n const requestData = trackedRequests.get(this);\n if (requestData) {\n // if there is an existing event listener this request instance is being reused,\n // so we need to remove the listener from the previous send\n const existingHandler = requestHandlers.get(this);\n if (existingHandler)\n this.removeEventListener('readystatechange', existingHandler);\n const { onRequestEnd, extraRequestHeaders } = requestTracker.start({\n type: 'xmlhttprequest',\n method: requestData.method,\n url: requestData.url,\n startTime: clock.now()\n });\n if (extraRequestHeaders) {\n for (const extraHeaders of extraRequestHeaders) {\n for (const [name, value] of Object.entries(extraHeaders)) {\n this.setRequestHeader(name, value);\n }\n }\n }\n const onReadyStateChange = (evt) => {\n if (this.readyState === xhr.DONE && onRequestEnd) {\n // If the status is 0 the request did not complete so report this as an error\n const endContext = this.status > 0\n ? { endTime: clock.now(), status: this.status, state: 'success' }\n : { endTime: clock.now(), state: 'error' };\n onRequestEnd(endContext);\n }\n };\n this.addEventListener('readystatechange', onReadyStateChange);\n requestHandlers.set(this, onReadyStateChange);\n }\n originalSend.call(this, body);\n };\n return requestTracker;\n}\n\nexport { createXmlHttpRequestTracker as default };\n","import { isObject } from '@bugsnag/core-performance';\n\nconst defaultSendPageAttributes = {\n referrer: true,\n title: true,\n url: true\n};\nfunction getPermittedAttributes(sendPageAttributes) {\n return {\n ...defaultSendPageAttributes,\n ...sendPageAttributes\n };\n}\nfunction isSendPageAttributes(obj) {\n const allowedTypes = ['undefined', 'boolean'];\n const keys = Object.keys(defaultSendPageAttributes);\n return isObject(obj) && keys.every(key => allowedTypes.includes(typeof obj[key]));\n}\n\nexport { defaultSendPageAttributes, getPermittedAttributes, isSendPageAttributes };\n","function shouldOmitSpan(startTime, endTime) {\n return (startTime === undefined || endTime === undefined) ||\n (startTime === 0 && endTime === 0);\n}\nconst instrumentPageLoadPhaseSpans = (spanFactory, performance, route, parentContext) => {\n function createPageLoadPhaseSpan(phase, startTime, endTime) {\n if (shouldOmitSpan(startTime, endTime))\n return;\n const span = spanFactory.startSpan(`[PageLoadPhase/${phase}]${route}`, {\n startTime,\n parentContext,\n makeCurrentContext: false\n });\n span.setAttribute('bugsnag.span.category', 'page_load_phase');\n span.setAttribute('bugsnag.phase', phase);\n spanFactory.endSpan(span, endTime);\n }\n const entries = performance.getEntriesByType('navigation');\n const entry = Array.isArray(entries) && entries[0];\n if (entry) {\n createPageLoadPhaseSpan('Unload', entry.unloadEventStart, entry.unloadEventEnd);\n createPageLoadPhaseSpan('Redirect', entry.redirectStart, entry.redirectEnd);\n createPageLoadPhaseSpan('LoadFromCache', entry.fetchStart, entry.domainLookupStart);\n createPageLoadPhaseSpan('DNSLookup', entry.domainLookupStart, entry.domainLookupEnd);\n // secureConectionStart will be 0 if no secure connection is used so use connectEnd in that case\n const TCPHandshakeEnd = entry.secureConnectionStart || entry.connectEnd;\n createPageLoadPhaseSpan('TCPHandshake', entry.connectStart, TCPHandshakeEnd);\n createPageLoadPhaseSpan('TLS', entry.secureConnectionStart, entry.connectEnd);\n createPageLoadPhaseSpan('HTTPRequest', entry.requestStart, entry.responseStart);\n createPageLoadPhaseSpan('HTTPResponse', entry.responseStart, entry.responseEnd);\n createPageLoadPhaseSpan('DomContentLoadedEvent', entry.domContentLoadedEventStart, entry.domContentLoadedEventEnd);\n createPageLoadPhaseSpan('LoadEvent', entry.loadEventStart, entry.loadEventEnd);\n }\n};\n\nexport { instrumentPageLoadPhaseSpans };\n","import { getAbsoluteUrl } from '@bugsnag/request-tracker-performance';\n\nconst defaultRouteResolver = (url) => url.pathname || '/';\nconst createNoopRoutingProvider = () => {\n return class NoopRoutingProvider {\n constructor(resolveRoute = defaultRouteResolver) {\n this.resolveRoute = resolveRoute;\n }\n listenForRouteChanges(startRouteChangeSpan) { }\n };\n};\nconst createDefaultRoutingProvider = (onSettle, location) => {\n return class DefaultRoutingProvider {\n constructor(resolveRoute = defaultRouteResolver) {\n this.resolveRoute = resolveRoute;\n }\n listenForRouteChanges(startRouteChangeSpan) {\n addEventListener('popstate', (ev) => {\n const url = new URL(location.href);\n const span = startRouteChangeSpan(url, 'popstate');\n onSettle((endTime) => {\n span.end(endTime);\n });\n });\n const originalPushState = history.pushState;\n history.pushState = function (...args) {\n const url = args[2];\n if (url) {\n const absoluteURL = new URL(getAbsoluteUrl(url.toString(), document.baseURI));\n const span = startRouteChangeSpan(absoluteURL, 'pushState');\n onSettle((endTime) => {\n span.end(endTime);\n });\n }\n originalPushState.apply(this, args);\n };\n }\n };\n};\n\nexport { createDefaultRoutingProvider, createNoopRoutingProvider, defaultRouteResolver };\n","import { getPermittedAttributes } from '../send-page-attributes.js';\nimport { instrumentPageLoadPhaseSpans } from './page-load-phase-spans.js';\nimport { defaultRouteResolver } from '../default-routing-provider.js';\n\nclass FullPageLoadPlugin {\n constructor(document, location, spanFactory, webVitals, onSettle, backgroundingListener, performance) {\n // if the page was backgrounded at any point in the loading process a page\n // load span is invalidated as the browser will deprioritise the page\n this.wasBackgrounded = false;\n this.document = document;\n this.location = location;\n this.spanFactory = spanFactory;\n this.webVitals = webVitals;\n this.onSettle = onSettle;\n this.performance = performance;\n backgroundingListener.onStateChange(state => {\n if (!this.wasBackgrounded && state === 'in-background') {\n this.wasBackgrounded = true;\n }\n });\n }\n configure(configuration) {\n // don't report a page load span if the option is turned off or the page was\n // backgrounded at any point in the loading process\n if (!configuration.autoInstrumentFullPageLoads || this.wasBackgrounded) {\n return;\n }\n let parentContext = null;\n const traceparentMetaTag = document.querySelector('meta[name=\"traceparent\"]');\n if (traceparentMetaTag !== null && traceparentMetaTag.getAttribute('content')) {\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n const traceparent = traceparentMetaTag.getAttribute('content');\n const [, traceId, parentSpanId] = traceparent.split('-');\n parentContext = {\n traceId,\n id: parentSpanId\n };\n }\n const span = this.spanFactory.startSpan('[FullPageLoad]', { startTime: 0, parentContext });\n const permittedAttributes = getPermittedAttributes(configuration.sendPageAttributes);\n const url = new URL(this.location.href);\n this.onSettle((endTime) => {\n if (this.wasBackgrounded)\n return;\n // ensure there's always a route on this span by falling back to the\n // default route resolver - the pipeline will ignore page load spans that\n // don't have a route\n const route = configuration.routingProvider.resolveRoute(url) || defaultRouteResolver(url);\n span.name += route;\n instrumentPageLoadPhaseSpans(this.spanFactory, this.performance, route, span);\n // Browser attributes\n span.setAttribute('bugsnag.span.category', 'full_page_load');\n span.setAttribute('bugsnag.browser.page.route', route);\n if (permittedAttributes.referrer)\n span.setAttribute('bugsnag.browser.page.referrer', this.document.referrer);\n if (permittedAttributes.title)\n span.setAttribute('bugsnag.browser.page.title', this.document.title);\n if (permittedAttributes.url)\n span.setAttribute('bugsnag.browser.page.url', url.toString());\n this.webVitals.attachTo(span);\n this.spanFactory.endSpan(span, endTime);\n });\n }\n}\n\nexport { FullPageLoadPlugin };\n","import { traceIdToSamplingRate } from '@bugsnag/core-performance';\nimport { defaultNetworkRequestCallback } from '@bugsnag/request-tracker-performance';\n\nconst permittedPrefixes = ['http://', 'https://', '/', './', '../'];\nclass NetworkRequestPlugin {\n constructor(spanFactory, spanContextStorage, fetchTracker, xhrTracker) {\n this.spanFactory = spanFactory;\n this.spanContextStorage = spanContextStorage;\n this.fetchTracker = fetchTracker;\n this.xhrTracker = xhrTracker;\n this.configEndpoint = '';\n this.networkRequestCallback = defaultNetworkRequestCallback;\n this.logger = { debug: console.debug, warn: console.warn, info: console.info, error: console.error };\n this.trackRequest = (startContext) => {\n if (!this.shouldTrackRequest(startContext))\n return;\n const shouldPropagateTraceContextByDefault = false;\n const defaultRequestInfo = {\n url: startContext.url,\n type: startContext.type,\n propagateTraceContext: shouldPropagateTraceContextByDefault\n };\n const networkRequestInfo = this.networkRequestCallback(defaultRequestInfo);\n // returning null neither creates a span nor propagates trace context\n if (!networkRequestInfo) {\n return {\n onRequestEnd: undefined,\n extraRequestHeaders: undefined\n };\n }\n if (networkRequestInfo.propagateTraceContext === undefined) {\n networkRequestInfo.propagateTraceContext = shouldPropagateTraceContextByDefault;\n }\n // a span is not created if url is null\n if (!networkRequestInfo.url) {\n return {\n onRequestEnd: undefined,\n // propagate trace context if requested using span context\n extraRequestHeaders: networkRequestInfo.propagateTraceContext ? this.getExtraRequestHeaders() : undefined\n };\n }\n // otherwise, create a span and propagate trace context if requested\n if (typeof networkRequestInfo.url !== 'string') {\n this.logger.warn(`expected url to be a string following network request callback, got ${typeof networkRequestInfo.url}`);\n return;\n }\n const span = this.spanFactory.startNetworkSpan({\n method: startContext.method,\n startTime: startContext.startTime,\n url: networkRequestInfo.url\n });\n return {\n onRequestEnd: (endContext) => {\n if (endContext.state === 'success') {\n this.spanFactory.endSpan(span, endContext.endTime, { 'http.status_code': endContext.status });\n }\n },\n // propagate trace context using network span\n extraRequestHeaders: networkRequestInfo.propagateTraceContext\n ? this.getExtraRequestHeaders(span)\n : undefined\n };\n };\n }\n configure(configuration) {\n this.logger = configuration.logger;\n if (configuration.autoInstrumentNetworkRequests) {\n this.configEndpoint = configuration.endpoint;\n this.xhrTracker.onStart(this.trackRequest);\n this.fetchTracker.onStart(this.trackRequest);\n this.networkRequestCallback = configuration.networkRequestCallback;\n }\n }\n shouldTrackRequest(startContext) {\n return startContext.url !== this.configEndpoint && permittedPrefixes.some((prefix) => startContext.url.startsWith(prefix));\n }\n getExtraRequestHeaders(span) {\n const extraRequestHeaders = {};\n if (span) {\n const traceId = span.traceId;\n const parentSpanId = span.id;\n const sampled = this.spanFactory.sampler.shouldSample(span.samplingRate);\n extraRequestHeaders.traceparent = buildTraceparentHeader(traceId, parentSpanId, sampled);\n extraRequestHeaders.tracestate = buildTracestateHeader(traceId);\n }\n else if (this.spanContextStorage.current) {\n const currentSpanContext = this.spanContextStorage.current;\n const traceId = currentSpanContext.traceId;\n const parentSpanId = currentSpanContext.id;\n const sampled = this.spanFactory.sampler.shouldSample(currentSpanContext.samplingRate);\n extraRequestHeaders.traceparent = buildTraceparentHeader(traceId, parentSpanId, sampled);\n extraRequestHeaders.tracestate = buildTracestateHeader(traceId);\n }\n return extraRequestHeaders;\n }\n}\nfunction buildTraceparentHeader(traceId, parentSpanId, sampled) {\n return `00-${traceId}-${parentSpanId}-${sampled ? '01' : '00'}`;\n}\nfunction buildTracestateHeader(traceId) {\n return `sb=v:1;r32:${traceIdToSamplingRate(traceId)}`;\n}\n\nexport { NetworkRequestPlugin };\n","function getHttpVersion(protocol) {\n switch (protocol) {\n case '':\n return undefined;\n case 'http/1.0':\n return '1.0';\n case 'http/1.1':\n return '1.1';\n case 'h2':\n case 'h2c':\n return '2.0';\n case 'h3':\n return '3.0';\n case 'spdy/1':\n case 'spdy/2':\n case 'spdy/3':\n return 'SPDY';\n default:\n return protocol;\n }\n}\nfunction resourceLoadSupported(PerformanceObserverClass) {\n return PerformanceObserverClass &&\n Array.isArray(PerformanceObserverClass.supportedEntryTypes) &&\n PerformanceObserverClass.supportedEntryTypes.includes('resource');\n}\nclass ResourceLoadPlugin {\n constructor(spanFactory, spanContextStorage, PerformanceObserverClass) {\n this.spanFactory = spanFactory;\n this.spanContextStorage = spanContextStorage;\n this.PerformanceObserverClass = PerformanceObserverClass;\n }\n configure(configuration) {\n if (!resourceLoadSupported(this.PerformanceObserverClass))\n return;\n const observer = new this.PerformanceObserverClass((list) => {\n const entries = list.getEntries();\n for (const entry of entries) {\n if (entry.initiatorType === 'fetch' || entry.initiatorType === 'xmlhttprequest') {\n continue;\n }\n const parentContext = this.spanContextStorage.first;\n if (parentContext) {\n const networkRequestInfo = configuration.networkRequestCallback({ url: entry.name, type: entry.initiatorType });\n if (!networkRequestInfo)\n return;\n if (typeof networkRequestInfo.url !== 'string') {\n configuration.logger.warn(`expected url to be a string following network request callback, got ${typeof networkRequestInfo.url}`);\n return;\n }\n let name = '';\n try {\n const url = new URL(networkRequestInfo.url);\n url.search = '';\n name = url.href;\n }\n catch (err) {\n configuration.logger.warn(`Unable to parse URL returned from networkRequestCallback: ${networkRequestInfo.url}`);\n return;\n }\n const span = this.spanFactory.startSpan(`[ResourceLoad]${name}`, {\n parentContext,\n startTime: entry.startTime,\n makeCurrentContext: false\n });\n span.setAttribute('bugsnag.span.category', 'resource_load');\n span.setAttribute('http.url', networkRequestInfo.url);\n const httpFlavor = getHttpVersion(entry.nextHopProtocol);\n if (httpFlavor) {\n span.setAttribute('http.flavor', httpFlavor);\n }\n if (entry.encodedBodySize && entry.decodedBodySize) {\n span.setAttribute('http.response_content_length', entry.encodedBodySize);\n span.setAttribute('http.response_content_length_uncompressed', entry.decodedBodySize);\n }\n if (entry.responseStatus) {\n span.setAttribute('http.status_code', entry.responseStatus);\n }\n this.spanFactory.endSpan(span, entry.responseEnd);\n }\n }\n });\n try {\n observer.observe({ type: 'resource', buffered: true });\n }\n catch (err) {\n configuration.logger.warn('Unable to get previous resource loads as buffered observer not supported, only showing resource loads from this point on');\n observer.observe({ entryTypes: ['resource'] });\n }\n }\n}\n\nexport { ResourceLoadPlugin, getHttpVersion };\n","import { isObject, isString, coreSpanOptionSchema } from '@bugsnag/core-performance';\nimport { getPermittedAttributes } from '../send-page-attributes.js';\nimport { defaultRouteResolver } from '../default-routing-provider.js';\n\n// exclude isFirstClass from the route change option schema\nconst { startTime, parentContext, makeCurrentContext } = coreSpanOptionSchema;\nconst routeChangeSpanOptionSchema = {\n startTime,\n parentContext,\n makeCurrentContext,\n trigger: {\n getDefaultValue: (value) => String(value),\n message: 'should be a string',\n validate: isString\n }\n};\nclass RouteChangePlugin {\n constructor(spanFactory, location, document) {\n this.spanFactory = spanFactory;\n this.location = location;\n this.document = document;\n }\n configure(configuration) {\n if (!configuration.autoInstrumentRouteChanges)\n return;\n const previousUrl = new URL(this.location.href);\n let previousRoute = configuration.routingProvider.resolveRoute(previousUrl) || defaultRouteResolver(previousUrl);\n const permittedAttributes = getPermittedAttributes(configuration.sendPageAttributes);\n configuration.routingProvider.listenForRouteChanges((url, trigger, options) => {\n let absoluteUrl;\n if (url instanceof URL) {\n absoluteUrl = url;\n }\n else {\n try {\n const stringUrl = String(url);\n absoluteUrl = new URL(stringUrl);\n }\n catch (err) {\n configuration.logger.warn('Invalid span options\\n - url should be a URL');\n return {\n id: '',\n traceId: '',\n samplingRate: 0,\n isValid: () => false,\n setAttribute: () => { },\n end: () => { }\n };\n }\n }\n // create internal options for validation\n const routeChangeSpanOptions = {\n ...options,\n trigger\n };\n const cleanOptions = this.spanFactory.validateSpanOptions('[RouteChange]', routeChangeSpanOptions, routeChangeSpanOptionSchema);\n const route = configuration.routingProvider.resolveRoute(absoluteUrl) || defaultRouteResolver(absoluteUrl);\n // update the span name using the validated route\n cleanOptions.name += route;\n const span = this.spanFactory.startSpan(cleanOptions.name, cleanOptions.options);\n span.setAttribute('bugsnag.span.category', 'route_change');\n span.setAttribute('bugsnag.browser.page.route', route);\n span.setAttribute('bugsnag.browser.page.previous_route', previousRoute);\n span.setAttribute('bugsnag.browser.page.route_change.trigger', cleanOptions.options.trigger);\n if (permittedAttributes.url)\n span.setAttribute('bugsnag.browser.page.url', url.toString());\n previousRoute = route;\n return {\n id: span.id,\n traceId: span.traceId,\n isValid: span.isValid,\n samplingRate: span.samplingRate,\n setAttribute: span.setAttribute,\n end: (endTimeOrOptions) => {\n const options = isObject(endTimeOrOptions) ? endTimeOrOptions : { endTime: endTimeOrOptions };\n if (permittedAttributes.title) {\n span.setAttribute('bugsnag.browser.page.title', this.document.title);\n }\n if (options.url) {\n const urlObject = ensureUrl(options.url); // convert strings to URL if necessary\n const route = configuration.routingProvider.resolveRoute(urlObject) || defaultRouteResolver(urlObject);\n span.name = `[RouteChange]${route}`;\n span.setAttribute('bugsnag.browser.page.route', route);\n previousRoute = route;\n // update the URL attribute as well\n if (permittedAttributes.url) {\n span.setAttribute('bugsnag.browser.page.url', urlObject.toString());\n }\n }\n this.spanFactory.toPublicApi(span).end(options.endTime);\n }\n };\n });\n }\n}\nfunction ensureUrl(url) {\n if (typeof url === 'string') {\n return new URL(url);\n }\n return url;\n}\n\nexport { RouteChangePlugin };\n","function createBrowserBackgroundingListener(window) {\n const callbacks = [];\n let state = window.document.visibilityState === 'hidden'\n ? 'in-background'\n : 'in-foreground';\n const backgroundingListener = {\n onStateChange(backgroundingListenerCallback) {\n callbacks.push(backgroundingListenerCallback);\n // trigger the callback immediately if the document is already 'hidden'\n if (state === 'in-background') {\n backgroundingListenerCallback(state);\n }\n }\n };\n const backgroundStateChanged = (newState) => {\n if (state === newState)\n return;\n state = newState;\n for (const callback of callbacks) {\n callback(state);\n }\n };\n window.document.addEventListener('visibilitychange', function () {\n const newState = window.document.visibilityState === 'hidden'\n ? 'in-background'\n : 'in-foreground';\n backgroundStateChanged(newState);\n });\n // some browsers don't fire the visibilitychange event when the page is suspended,\n // so we also listen for pagehide and pageshow events\n window.addEventListener('pagehide', function () {\n backgroundStateChanged('in-background');\n });\n window.addEventListener('pageshow', function () {\n backgroundStateChanged('in-foreground');\n });\n return backgroundingListener;\n}\n\nexport { createBrowserBackgroundingListener as default };\n","import { millisecondsToNanoseconds } from '@bugsnag/core-performance';\n\n// maximum allowed clock divergence in milliseconds\nconst MAX_CLOCK_DRIFT_MS = 300000;\nfunction recalculateTimeOrigin(timeOrigin, performance) {\n // if the machine has been sleeping the monatomic clock used by performance.now() may have been paused,\n // so we need to check if this has drifted significantly from Date.now()\n // if the drift is > 5 minutes re-set the clock's origin to bring it back in line with Date.now()\n if (Math.abs(Date.now() - (timeOrigin + performance.now())) > MAX_CLOCK_DRIFT_MS) {\n return Date.now() - performance.now();\n }\n return timeOrigin;\n}\nfunction createClock(performance, backgroundingListener) {\n const initialTimeOrigin = performance.timeOrigin === undefined\n ? performance.timing.navigationStart\n : performance.timeOrigin;\n // the performance clock could be shared between different tabs running in the same process\n // so may already have diverged - for this reason we calculate a time origin when we first create the clock\n // as well as when the app returns to the foreground\n let calculatedTimeOrigin = recalculateTimeOrigin(initialTimeOrigin, performance);\n backgroundingListener.onStateChange(state => {\n if (state === 'in-foreground') {\n calculatedTimeOrigin = recalculateTimeOrigin(calculatedTimeOrigin, performance);\n }\n });\n return {\n now: () => performance.now(),\n date: () => new Date(calculatedTimeOrigin + performance.now()),\n convert: (date) => date.getTime() - calculatedTimeOrigin,\n // convert milliseconds since timeOrigin to full timestamp\n toUnixTimestampNanoseconds: (time) => millisecondsToNanoseconds(calculatedTimeOrigin + time).toString()\n };\n}\n\nexport { createClock as default };\n","import { isObject } from '@bugsnag/core-performance';\n\nconst isRoutingProvider = (value) => isObject(value) &&\n typeof value.resolveRoute === 'function' &&\n typeof value.listenForRouteChanges === 'function';\n\nexport { isRoutingProvider };\n","import { schema, isBoolean, isStringOrRegExpArray, isStringWithLength } from '@bugsnag/core-performance';\nimport { defaultNetworkRequestCallback, isNetworkRequestCallback } from '@bugsnag/request-tracker-performance';\nimport { isRoutingProvider } from './routing-provider.js';\nimport { defaultSendPageAttributes, isSendPageAttributes } from './send-page-attributes.js';\n\nfunction createSchema(hostname, defaultRoutingProvider) {\n return {\n ...schema,\n releaseStage: {\n ...schema.releaseStage,\n defaultValue: hostname === 'localhost' ? 'development' : 'production'\n },\n autoInstrumentFullPageLoads: {\n defaultValue: true,\n message: 'should be true|false',\n validate: isBoolean\n },\n autoInstrumentNetworkRequests: {\n defaultValue: true,\n message: 'should be true|false',\n validate: isBoolean\n },\n autoInstrumentRouteChanges: {\n defaultValue: true,\n message: 'should be true|false',\n validate: isBoolean\n },\n generateAnonymousId: {\n defaultValue: true,\n message: 'should be true|false',\n validate: isBoolean\n },\n routingProvider: {\n defaultValue: defaultRoutingProvider,\n message: 'should be a routing provider',\n validate: isRoutingProvider\n },\n settleIgnoreUrls: {\n defaultValue: [],\n message: 'should be an array of string|RegExp',\n validate: isStringOrRegExpArray\n },\n networkRequestCallback: {\n defaultValue: defaultNetworkRequestCallback,\n message: 'should be a function',\n validate: isNetworkRequestCallback\n },\n sendPageAttributes: {\n defaultValue: defaultSendPageAttributes,\n message: 'should be an object',\n validate: isSendPageAttributes\n },\n serviceName: {\n defaultValue: 'unknown_service',\n message: 'should be a string',\n validate: isStringWithLength\n }\n };\n}\n\nexport { createSchema };\n","function toHex(value) {\n const hex = value.toString(16);\n // pad hex with a leading 0 if it's not already 2 characters\n if (hex.length === 1) {\n return '0' + hex;\n }\n return hex;\n}\nconst idGenerator = {\n generate(bits) {\n const bytes = new Uint8Array(bits / 8);\n // TODO: do we just read window here?\n // how can we pass this in given it needs to be valid before 'start' is called?\n const randomValues = window.crypto.getRandomValues(bytes);\n return Array.from(randomValues, toHex).join('');\n }\n};\n\nexport { idGenerator as default };\n","class Settler {\n constructor(clock) {\n this.settled = false;\n this.callbacks = new Set();\n this.clock = clock;\n }\n subscribe(callback) {\n this.callbacks.add(callback);\n // if we're already settled, call the callback immediately\n if (this.isSettled()) {\n callback(this.clock.now());\n }\n }\n unsubscribe(callback) {\n this.callbacks.delete(callback);\n }\n isSettled() {\n return this.settled;\n }\n settle(settledTime) {\n this.settled = true;\n for (const callback of this.callbacks) {\n callback(settledTime);\n }\n }\n}\n\nexport { Settler };\n","import { Settler } from './settler.js';\n\nclass DomMutationSettler extends Settler {\n constructor(clock, target) {\n super(clock);\n this.timeout = undefined;\n const observer = new MutationObserver(() => { this.restart(); });\n observer.observe(target, {\n subtree: true,\n childList: true,\n characterData: true\n // we don't track attribute changes as they may or may not be user visible\n // so we assume they won't affect the page appearing settled to the user\n });\n this.restart();\n }\n restart() {\n clearTimeout(this.timeout);\n this.settled = false;\n // we wait 100ms to ensure that DOM mutations have actually stopped but\n // don't want the settled time to reflect that wait, so we record the time\n // here and use that when settling\n const settledTime = this.clock.now();\n this.timeout = setTimeout(() => { this.settle(settledTime); }, 100);\n }\n}\n\nexport { DomMutationSettler as default };\n","import { Settler } from './settler.js';\n\n// check if a PerformanceEntry is a PerformanceNavigationTiming\nfunction isPerformanceNavigationTiming(entry) {\n return !!entry && entry.entryType === 'navigation';\n}\nclass LoadEventEndSettler extends Settler {\n constructor(clock, addEventListener, performance, document) {\n super(clock);\n // we delay settling by a macrotask so that the load event has ended\n // see: https://stackoverflow.com/questions/25915634/difference-between-microtask-and-macrotask-within-an-event-loop-context/25933985#25933985\n // https://jakearchibald.com/2015/tasks-microtasks-queues-and-schedules/\n if (document.readyState === 'complete') {\n setTimeout(() => { this.settleUsingPerformance(performance); }, 0);\n }\n else {\n addEventListener('load', () => {\n setTimeout(() => { this.settleUsingPerformance(performance); }, 0);\n });\n }\n }\n settleUsingPerformance(performance) {\n const now = this.clock.now();\n // there's only ever one navigation entry\n // PLAT-10204 Prevent snags occuring due to DOM scanning bots like BuiltWith https://builtwith.com/biup\n const entry = typeof performance.getEntriesByType === 'function' ? performance.getEntriesByType('navigation')[0] : undefined;\n let settledTime = 0;\n if (isPerformanceNavigationTiming(entry)) {\n settledTime = entry.loadEventEnd;\n }\n else if (performance.timing) {\n settledTime = performance.timing.loadEventEnd - performance.timing.navigationStart;\n }\n // if the settled time is obviously wrong then use the current time instead\n // this won't be a perfectly accurate value, but it should be close enough\n // for this purpose\n if (settledTime <= 0 || settledTime > now) {\n settledTime = now;\n }\n this.settle(settledTime);\n }\n}\n\nexport { LoadEventEndSettler as default };\n","import { Settler } from './settler.js';\n\nclass RequestSettler extends Settler {\n constructor(clock, requestTracker) {\n super(clock);\n this.timeout = undefined;\n this.urlsToIgnore = [];\n this.outstandingRequests = 0;\n // unlike most other settlers we start settled as it's possible to not make\n // any requests at all\n // TODO: we actually should only be settled if there are no outstanding\n // requests when constructed\n this.settled = true;\n requestTracker.onStart(this.onRequestStart.bind(this));\n }\n setUrlsToIgnore(urlsToIgnore) {\n this.urlsToIgnore = urlsToIgnore;\n }\n onRequestStart(startContext) {\n // if this is an excluded URL, ignore this request\n if (this.shouldIgnoreUrl(startContext.url))\n return;\n clearTimeout(this.timeout);\n this.settled = false;\n ++this.outstandingRequests;\n return {\n onRequestEnd: (endContext) => {\n if (--this.outstandingRequests === 0) {\n // we wait 100ms to ensure that requests have actually stopped but don't\n // want the settled time to reflect that wait, so we record the time\n // here and use that when settling\n const settledTime = this.clock.now();\n this.timeout = setTimeout(() => { this.settle(settledTime); }, 100);\n }\n }\n };\n }\n shouldIgnoreUrl(url) {\n return this.urlsToIgnore.some(regexp => regexp.test(url));\n }\n}\n\nexport { RequestSettler as default };\n","import { Settler } from './settler.js';\n\n/**\n * SettlerAggregate is a Settler that is settled when ALL Settlers it is\n * constructed with are settled themselves\n */\nclass SettlerAggregate extends Settler {\n constructor(clock, settlers) {\n super(clock);\n this.settlers = settlers;\n for (const settler of settlers) {\n settler.subscribe((settledTime) => {\n // we need to check if all of the settlers are settled here as a\n // previously settled settler could have unsettled in the meantime\n if (this.settlersAreSettled()) {\n this.settle(settledTime);\n }\n else {\n this.settled = false;\n }\n });\n }\n }\n isSettled() {\n // ensure all child settlers are settled as well; it's possible for all of\n // them to have settled previously only for one to unsettle\n return super.isSettled() && this.settlersAreSettled();\n }\n settlersAreSettled() {\n for (const settler of this.settlers) {\n if (!settler.isSettled()) {\n return false;\n }\n }\n return true;\n }\n}\n\nexport { SettlerAggregate as default };\n","import DomMutationSettler from './dom-mutation-settler.js';\nimport LoadEventEndSettler from './load-event-end-settler.js';\nimport RequestSettler from './request-settler.js';\nimport SettlerAggregate from './settler-aggregate.js';\n\nconst TIMEOUT_MILLISECONDS = 60 * 1000;\nfunction createNoopOnSettle() {\n const noop = () => { };\n noop.configure = () => { };\n return noop;\n}\nfunction createOnSettle(clock, window, fetchRequestTracker, xhrRequestTracker, performance) {\n const domMutationSettler = new DomMutationSettler(clock, window.document);\n const fetchRequestSettler = new RequestSettler(clock, fetchRequestTracker);\n const xhrRequestSettler = new RequestSettler(clock, xhrRequestTracker);\n const loadEventEndSettler = new LoadEventEndSettler(clock, window.addEventListener, performance, window.document);\n const settler = new SettlerAggregate(clock, [\n domMutationSettler,\n loadEventEndSettler,\n fetchRequestSettler,\n xhrRequestSettler\n ]);\n function onSettlePlugin(callback) {\n const onSettle = (settledTime) => {\n clearTimeout(timeout);\n // unsubscribe from the settler so we don't call the callback more than\n // once\n settler.unsubscribe(onSettle);\n callback(settledTime);\n };\n const timeout = setTimeout(() => {\n const settledTime = clock.now();\n settler.unsubscribe(onSettle);\n callback(settledTime);\n }, TIMEOUT_MILLISECONDS);\n // if we're already settled apply a 100ms \"cooldown\" period in case we\n // unsettle immediately after this call\n // if we're not settled then this cooldown is irrelevant - we can just\n // subscribe to the settler to be notified of when the page settles\n const cooldown = settler.isSettled() ? 100 : 0;\n const settledTime = clock.now();\n setTimeout(() => {\n if (settler.isSettled()) {\n // if we're still settled call the callback via \"onSettle\"\n onSettle(settledTime);\n }\n else {\n // otherwise wait for the page to settle\n settler.subscribe(onSettle);\n }\n }, cooldown);\n }\n onSettlePlugin.configure = function (configuration) {\n const settleIgnoreUrls = configuration.settleIgnoreUrls.map((url) => typeof url === 'string' ? RegExp(url) : url).concat(RegExp(configuration.endpoint));\n fetchRequestSettler.setUrlsToIgnore(settleIgnoreUrls);\n xhrRequestSettler.setUrlsToIgnore(settleIgnoreUrls);\n };\n return onSettlePlugin;\n}\n\nexport { createNoopOnSettle, createOnSettle as default };\n","import { InMemoryPersistence, toPersistedPayload } from '@bugsnag/core-performance';\n\nfunction makeBrowserPersistence(window) {\n // accessing localStorage can throw on some browsers, so we have to catch\n // these errors and provide a fallback\n try {\n if (window.localStorage) {\n return new BrowserPersistence(window.localStorage);\n }\n }\n catch (_a) { }\n // store items in memory if localStorage isn't available\n return new InMemoryPersistence();\n}\nfunction toString(key, value) {\n switch (key) {\n case 'bugsnag-sampling-probability':\n return JSON.stringify(value);\n case 'bugsnag-anonymous-id':\n return value;\n default:\n return key;\n }\n}\nclass BrowserPersistence {\n constructor(localStorage) {\n this.storage = localStorage;\n }\n async load(key) {\n try {\n const raw = this.storage.getItem(key);\n if (raw) {\n return toPersistedPayload(key, raw);\n }\n }\n catch (_a) { }\n }\n async save(key, value) {\n try {\n this.storage.setItem(key, toString(key, value));\n }\n catch (_a) { }\n }\n}\n\nexport { makeBrowserPersistence as default };\n","import cuid from '@bugsnag/cuid';\nimport { ResourceAttributes } from '@bugsnag/core-performance';\n\nfunction createResourceAttributesSource(navigator, persistence) {\n let getDeviceId;\n let deviceId;\n return function resourceAttributesSource(config) {\n const attributes = new ResourceAttributes(config.releaseStage, config.appVersion, config.serviceName, 'bugsnag.performance.browser', '2.9.0');\n attributes.set('browser.user_agent', navigator.userAgent);\n // chromium only\n if (navigator.userAgentData) {\n attributes.set('browser.platform', navigator.userAgentData.platform);\n attributes.set('browser.mobile', navigator.userAgentData.mobile);\n }\n if (config.generateAnonymousId) {\n // ensure we only load/generate the anonymous ID once no matter how many\n // times we're called, otherwise we could generate different IDs on\n // different calls as cuids are partly time based\n if (!getDeviceId) {\n getDeviceId = persistence.load('bugsnag-anonymous-id')\n .then(maybeAnonymousId => {\n // use the persisted value or generate a new ID\n const anonymousId = maybeAnonymousId || cuid();\n // if there was no persisted value, save the newly generated ID\n if (!maybeAnonymousId) {\n persistence.save('bugsnag-anonymous-id', anonymousId);\n }\n // store the device ID so we can set it synchronously in future\n deviceId = anonymousId;\n return deviceId;\n });\n }\n if (deviceId) {\n // set device ID synchronously if it's already available\n attributes.set('device.id', deviceId);\n }\n else {\n // otherwise add it when the promise resolves\n return getDeviceId\n .then(deviceId => {\n attributes.set('device.id', deviceId);\n return attributes;\n });\n }\n }\n return Promise.resolve(attributes);\n };\n}\n\nexport { createResourceAttributesSource as default };\n","const createSpanAttributesSource = (document) => {\n const defaultAttributes = {\n url: {\n name: 'bugsnag.browser.page.url',\n getValue: () => document.location.href,\n permitted: false\n },\n title: {\n name: 'bugsnag.browser.page.title',\n getValue: () => document.title,\n permitted: false\n }\n };\n return {\n configure(configuration) {\n defaultAttributes.title.permitted = configuration.sendPageAttributes.title || false;\n defaultAttributes.url.permitted = configuration.sendPageAttributes.url || false;\n },\n requestAttributes(span) {\n for (const attribute of Object.values(defaultAttributes)) {\n if (attribute.permitted) {\n span.setAttribute(attribute.name, attribute.getValue());\n }\n }\n }\n };\n};\n\nexport { createSpanAttributesSource, createSpanAttributesSource as default };\n","class WebVitals {\n constructor(performance, clock, PerformanceObserverClass) {\n this.performance = performance;\n this.clock = clock;\n this.observers = [];\n if (PerformanceObserverClass && Array.isArray(PerformanceObserverClass.supportedEntryTypes)) {\n const supportedEntryTypes = PerformanceObserverClass.supportedEntryTypes;\n if (supportedEntryTypes.includes('largest-contentful-paint')) {\n this.observeLargestContentfulPaint(PerformanceObserverClass);\n }\n if (supportedEntryTypes.includes('layout-shift')) {\n this.observeLayoutShift(PerformanceObserverClass);\n }\n }\n }\n attachTo(span) {\n const firstContentfulPaint = this.firstContentfulPaint();\n if (firstContentfulPaint) {\n span.addEvent('fcp', firstContentfulPaint);\n }\n const timeToFirstByte = this.timeToFirstByte();\n if (timeToFirstByte) {\n span.addEvent('ttfb', timeToFirstByte);\n }\n const firstInputDelay = this.firstInputDelay();\n if (firstInputDelay) {\n span.addEvent('fid_start', firstInputDelay.start);\n span.addEvent('fid_end', firstInputDelay.end);\n }\n if (this.cumulativeLayoutShift) {\n span.setAttribute('bugsnag.metrics.cls', this.cumulativeLayoutShift);\n }\n if (this.largestContentfulPaint) {\n span.addEvent('lcp', this.largestContentfulPaint);\n }\n // as there is only 1 page load span, we don't need to keep observing\n // performance events, so can disconnect from any observers we've registered\n for (const observer of this.observers) {\n observer.disconnect();\n }\n }\n firstContentfulPaint() {\n const entries = this.performance.getEntriesByName('first-contentful-paint', 'paint');\n const entry = Array.isArray(entries) && entries[0];\n if (entry) {\n return entry.startTime;\n }\n }\n timeToFirstByte() {\n const entries = this.performance.getEntriesByType('navigation');\n const entry = Array.isArray(entries) && entries[0];\n let responseStart;\n if (entry) {\n responseStart = entry.responseStart;\n }\n else {\n responseStart = this.performance.timing.responseStart - this.performance.timing.navigationStart;\n }\n // only use responseStart if it's valid (between 0 and the current time)\n // any other value cannot be valid because it would mean the response\n // started immediately or hasn't happened yet!\n if (responseStart > 0 && responseStart <= this.clock.now()) {\n return responseStart;\n }\n }\n firstInputDelay() {\n const entries = this.performance.getEntriesByType('first-input');\n const entry = Array.isArray(entries) && entries[0];\n if (entry) {\n return {\n start: entry.startTime,\n end: entry.processingStart\n };\n }\n }\n observeLargestContentfulPaint(PerformanceObserverClass) {\n const observer = new PerformanceObserverClass((list) => {\n const entries = list.getEntries();\n if (entries.length > 0) {\n // Use the latest LCP candidate\n this.largestContentfulPaint = entries[entries.length - 1].startTime;\n }\n });\n observer.observe({ type: 'largest-contentful-paint', buffered: true });\n this.observers.push(observer);\n }\n observeLayoutShift(PerformanceObserverClass) {\n let session;\n const observer = new PerformanceObserverClass((list) => {\n for (const entry of list.getEntries()) {\n // ignore entries with recent input as it's likely the layout shifted due\n // to user input and this metric only cares about unexpected layout\n // shifts\n if (entry.hadRecentInput) {\n continue;\n }\n // include this entry in the current session if we have a current session\n // and this entry fits into the session window (it occurred less than 1\n // second after the previous entry and the session duration is less than\n // 5 seconds), otherwise start a new session\n if (session &&\n entry.startTime - session.previousStartTime < 1000 &&\n entry.startTime - session.firstStartTime < 5000) {\n session.value += entry.value;\n session.previousStartTime = entry.startTime;\n }\n else {\n session = {\n value: entry.value,\n firstStartTime: entry.startTime,\n previousStartTime: entry.startTime\n };\n }\n }\n if (session &&\n (this.cumulativeLayoutShift === undefined || session.value > this.cumulativeLayoutShift)) {\n this.cumulativeLayoutShift = session.value;\n }\n });\n observer.observe({ type: 'layout-shift', buffered: true });\n this.observers.push(observer);\n }\n}\n\nexport { WebVitals };\n","import { createNoopClient, createClient, InMemoryQueue } from '@bugsnag/core-performance';\nimport createFetchDeliveryFactory from '@bugsnag/delivery-fetch-performance';\nimport { createFetchRequestTracker, createXmlHttpRequestTracker } from '@bugsnag/request-tracker-performance';\nimport { FullPageLoadPlugin } from './auto-instrumentation/full-page-load-plugin.js';\nimport { NetworkRequestPlugin } from './auto-instrumentation/network-request-plugin.js';\nimport { ResourceLoadPlugin } from './auto-instrumentation/resource-load-plugin.js';\nimport { RouteChangePlugin } from './auto-instrumentation/route-change-plugin.js';\nimport createBrowserBackgroundingListener from './backgrounding-listener.js';\nimport createClock from './clock.js';\nimport { createSchema } from './config.js';\nimport { createNoopRoutingProvider, createDefaultRoutingProvider } from './default-routing-provider.js';\nimport idGenerator from './id-generator.js';\nimport createOnSettle, { createNoopOnSettle } from './on-settle/index.js';\nimport makeBrowserPersistence from './persistence.js';\nimport createResourceAttributesSource from './resource-attributes-source.js';\nimport { createSpanAttributesSource } from './span-attributes-source.js';\nimport { WebVitals } from './web-vitals.js';\n\nlet onSettle;\nlet DefaultRoutingProvider;\nlet BugsnagPerformance;\nif (typeof window === 'undefined' || typeof document === 'undefined') {\n onSettle = createNoopOnSettle();\n DefaultRoutingProvider = createNoopRoutingProvider();\n BugsnagPerformance = createNoopClient();\n}\nelse {\n const backgroundingListener = createBrowserBackgroundingListener(window);\n const spanAttributesSource = createSpanAttributesSource(document);\n const clock = createClock(performance, backgroundingListener);\n const persistence = makeBrowserPersistence(window);\n const resourceAttributesSource = createResourceAttributesSource(navigator, persistence);\n const fetchRequestTracker = createFetchRequestTracker(window, clock);\n const xhrRequestTracker = createXmlHttpRequestTracker(XMLHttpRequest, clock, document);\n const webVitals = new WebVitals(performance, clock, window.PerformanceObserver);\n onSettle = createOnSettle(clock, window, fetchRequestTracker, xhrRequestTracker, performance);\n DefaultRoutingProvider = createDefaultRoutingProvider(onSettle, window.location);\n BugsnagPerformance = createClient({\n backgroundingListener,\n clock,\n resourceAttributesSource,\n spanAttributesSource,\n deliveryFactory: createFetchDeliveryFactory(window.fetch, clock, backgroundingListener),\n idGenerator,\n schema: createSchema(window.location.hostname, new DefaultRoutingProvider()),\n plugins: (spanFactory, spanContextStorage) => [\n onSettle,\n new FullPageLoadPlugin(document, window.location, spanFactory, webVitals, onSettle, backgroundingListener, performance),\n // ResourceLoadPlugin should always come after FullPageLoad plugin, as it should use that\n // span context as the parent of it's spans\n new ResourceLoadPlugin(spanFactory, spanContextStorage, window.PerformanceObserver),\n new NetworkRequestPlugin(spanFactory, spanContextStorage, fetchRequestTracker, xhrRequestTracker),\n new RouteChangePlugin(spanFactory, window.location, document)\n ],\n persistence,\n retryQueueFactory: (delivery, retryQueueMaxSize) => new InMemoryQueue(delivery, retryQueueMaxSize)\n });\n}\nconst BugsnagPerformance$1 = BugsnagPerformance;\n\nexport { DefaultRoutingProvider, BugsnagPerformance$1 as default, onSettle };\n","import { createApp } from 'vue'\r\nimport { i18n } from \"@/resources/i18n/i18n\";\r\n\r\nimport App from './App.vue'\r\nimport router from \"./resources/router\";\r\nimport Toast from \"vue-toastification\";\r\n\r\nimport ODSComponents from 'omind-design-system/components/'\r\n\r\nimport \"vue-toastification/dist/index.css\";\r\nimport 'omind-design-system/assets/styles/all.scss'\r\nimport './style.css'\r\nimport './ods-style.scss'\r\nimport { RouterLink } from 'vue-router';\r\n\r\nimport Particles from \"@tsparticles/vue3\";\r\nimport { loadSlim } from \"@tsparticles/slim\";\r\nimport { tsParticles } from \"@tsparticles/engine\";\r\nimport { loadEmittersPlugin } from \"@tsparticles/plugin-emitters\";\r\n\r\nimport Bugsnag from '@bugsnag/js'\r\nimport BugsnagPluginVue, { BugsnagPluginVueResult } from '@bugsnag/plugin-vue'\r\nimport BugsnagPerformance from '@bugsnag/browser-performance'\r\n\r\n(async () => {\r\n await loadEmittersPlugin(tsParticles);\r\n})();\r\n\r\n\r\nconst toastOptions = {\r\n position: \"top-center\",\r\n timeout: 5000,\r\n closeOnClick: true,\r\n pauseOnFocusLoss: true,\r\n pauseOnHover: true,\r\n draggable: true,\r\n draggablePercent: 0.6,\r\n showCloseButtonOnHover: false,\r\n hideProgressBar: true,\r\n closeButton: \"button\",\r\n icon: true,\r\n rtl: false,\r\n transition: \"Vue-Toastification__fade\",\r\n maxToasts: 20,\r\n newestOnTop: true\r\n}\r\n\r\nconst app = createApp(App)\r\nif (import.meta.env.VITE_ICONS_URL) {\r\n app.provide('odsIconPath', import.meta.env.VITE_ICONS_URL)\r\n}\r\napp.provide('RouterLinkComponent', RouterLink)\r\n\r\nif (import.meta.env.MODE === \"production\") {\r\n Bugsnag.start({\r\n apiKey: 'a221005266233032df3e235ac7b06844',\r\n appVersion: import.meta.env.VITE_MY_OMIND_VERSION,\r\n plugins: [new BugsnagPluginVue()],\r\n releaseStage: import.meta.env.MODE,\r\n enabledReleaseStages: ['production']\r\n })\r\n\r\n BugsnagPerformance.start({ apiKey: 'a221005266233032df3e235ac7b06844' });\r\n const bugsnagVue = Bugsnag.getPlugin('vue') as BugsnagPluginVueResult;\r\n app.use(bugsnagVue);\r\n}\r\n\r\napp.use(router)\r\napp.use(i18n)\r\napp.use(Toast, toastOptions)\r\napp.use(ODSComponents)\r\napp.use(Particles, {\r\n init: async engine => {\r\n //await loadFull(engine); // you can load the full tsParticles library from \"tsparticles\" if you need it\r\n await loadSlim(engine); // or you can load the slim version from \"tsparticles-slim\" if don't need Shapes or Animations\r\n },\r\n})\r\napp.mount('#app')\r\n\r\n//Bugsnag.notify(\"TEST ERROR\")\r\n"],"file":"assets/index-BlNyjwz4.js"}