{"version":3,"sources":["webpack:///./node_modules/core-js/internals/fails.js","webpack:///./node_modules/core-js/internals/function-uncurry-this.js","webpack:///./node_modules/core-js/internals/is-callable.js","webpack:///./node_modules/core-js/internals/well-known-symbol.js","webpack:///./node_modules/core-js/internals/global.js","webpack:///./node_modules/@kentico/kontent-smart-link/es/utils/errors.js","webpack:///./node_modules/core-js/internals/has-own-property.js","webpack:///./node_modules/core-js/internals/descriptors.js","webpack:///./node_modules/core-js/internals/function-call.js","webpack:///./node_modules/core-js/internals/object-define-property.js","webpack:///./node_modules/core-js/internals/an-object.js","webpack:///./node_modules/core-js/internals/export.js","webpack:///./node_modules/core-js/internals/is-object.js","webpack:///./node_modules/core-js/internals/define-built-in.js","webpack:///./node_modules/core-js/internals/get-built-in.js","webpack:///./node_modules/core-js/internals/to-string.js","webpack:///./node_modules/@kentico/kontent-smart-link/es/web-components/abstract/KSLCustomElement.js","webpack:///./node_modules/core-js/internals/to-indexed-object.js","webpack:///./node_modules/core-js/internals/shared.js","webpack:///./node_modules/core-js/internals/is-pure.js","webpack:///./node_modules/core-js/internals/to-object.js","webpack:///./node_modules/core-js/internals/symbol-constructor-detection.js","webpack:///./node_modules/core-js/internals/internal-state.js","webpack:///./node_modules/core-js/internals/create-non-enumerable-property.js","webpack:///./node_modules/core-js/internals/create-property-descriptor.js","webpack:///./node_modules/core-js/internals/object-create.js","webpack:///./node_modules/core-js/internals/classof.js","webpack:///./node_modules/core-js/internals/classof-raw.js","webpack:///./node_modules/core-js/internals/function-bind-native.js","webpack:///./node_modules/core-js/internals/require-object-coercible.js","webpack:///./node_modules/core-js/internals/is-null-or-undefined.js","webpack:///./node_modules/core-js/internals/to-property-key.js","webpack:///./node_modules/core-js/internals/is-symbol.js","webpack:///./node_modules/core-js/internals/object-is-prototype-of.js","webpack:///./node_modules/core-js/internals/shared-key.js","webpack:///./node_modules/core-js/internals/hidden-keys.js","webpack:///./node_modules/core-js/internals/length-of-array-like.js","webpack:///./node_modules/core-js/internals/object-get-own-property-symbols.js","webpack:///./node_modules/core-js/internals/set-to-string-tag.js","webpack:///./node_modules/core-js/modules/es.array.iterator.js","webpack:///./node_modules/core-js/internals/iterators.js","webpack:///./node_modules/core-js/modules/es.object.to-string.js","webpack:///./node_modules/core-js/internals/to-string-tag-support.js","webpack:///./node_modules/core-js/internals/shared-store.js","webpack:///./node_modules/core-js/internals/define-global-property.js","webpack:///./node_modules/core-js/internals/uid.js","webpack:///./node_modules/core-js/internals/engine-v8-version.js","webpack:///./node_modules/core-js/internals/document-create-element.js","webpack:///./node_modules/core-js/internals/get-method.js","webpack:///./node_modules/core-js/internals/a-callable.js","webpack:///./node_modules/core-js/internals/try-to-string.js","webpack:///./node_modules/core-js/internals/indexed-object.js","webpack:///./node_modules/core-js/internals/to-integer-or-infinity.js","webpack:///./node_modules/core-js/internals/is-array.js","webpack:///./node_modules/core-js/internals/object-get-own-property-descriptor.js","webpack:///./node_modules/core-js/internals/object-property-is-enumerable.js","webpack:///./node_modules/core-js/internals/object-get-own-property-names.js","webpack:///./node_modules/core-js/internals/enum-bug-keys.js","webpack:///./node_modules/core-js/internals/object-keys.js","webpack:///./node_modules/core-js/internals/regexp-exec.js","webpack:///(webpack)/buildin/global.js","webpack:///./node_modules/core-js/internals/use-symbol-as-uid.js","webpack:///./node_modules/core-js/internals/ie8-dom-define.js","webpack:///./node_modules/core-js/internals/v8-prototype-define-bug.js","webpack:///./node_modules/core-js/internals/function-name.js","webpack:///./node_modules/core-js/internals/inspect-source.js","webpack:///./node_modules/core-js/internals/dom-iterables.js","webpack:///./node_modules/core-js/internals/dom-token-list-prototype.js","webpack:///./node_modules/core-js/internals/array-iteration.js","webpack:///./node_modules/core-js/internals/function-bind-context.js","webpack:///./node_modules/core-js/internals/array-species-create.js","webpack:///./node_modules/core-js/internals/copy-constructor-properties.js","webpack:///./node_modules/core-js/internals/object-keys-internal.js","webpack:///./node_modules/core-js/internals/to-absolute-index.js","webpack:///./node_modules/core-js/internals/create-property.js","webpack:///./node_modules/core-js/internals/object-define-properties.js","webpack:///./node_modules/core-js/internals/array-slice-simple.js","webpack:///./node_modules/core-js/internals/well-known-symbol-wrapped.js","webpack:///./node_modules/core-js/internals/well-known-symbol-define.js","webpack:///./node_modules/core-js/internals/symbol-registry-detection.js","webpack:///./node_modules/core-js/internals/iterator-define.js","webpack:///./node_modules/core-js/internals/iterator-create-constructor.js","webpack:///./node_modules/core-js/internals/iterators-core.js","webpack:///./node_modules/core-js/internals/object-get-prototype-of.js","webpack:///./node_modules/core-js/modules/es.string.iterator.js","webpack:///./node_modules/core-js/modules/web.dom-collections.iterator.js","webpack:///./node_modules/core-js/internals/get-iterator-method.js","webpack:///./node_modules/core-js/modules/es.regexp.exec.js","webpack:///./node_modules/@kentico/kontent-smart-link/es/utils/iframe.js","webpack:///./node_modules/@kentico/kontent-smart-link/es/lib/Logger.js","webpack:///./node_modules/@kentico/kontent-smart-link/es/utils/assert.js","webpack:///./node_modules/@kentico/kontent-smart-link/es/utils/node.js","webpack:///./node_modules/@kentico/kontent-smart-link/es/web-components/KSLIconElement.js","webpack:///./node_modules/@kentico/kontent-smart-link/es/web-components/abstract/KSLPositionedElement.js","webpack:///./node_modules/@kentico/kontent-smart-link/es/web-components/tokens/colors.js","webpack:///./node_modules/@kentico/kontent-smart-link/es/web-components/tokens/shadows.js","webpack:///./node_modules/@kentico/kontent-smart-link/es/web-components/constants/zIndex.js","webpack:///./node_modules/@kentico/kontent-smart-link/es/web-components/abstract/KSLPopUpElement.js","webpack:///./node_modules/@kentico/kontent-smart-link/es/web-components/KSLTooltipElement.js","webpack:///./node_modules/@kentico/kontent-smart-link/es/web-components/abstract/KSLCustomElementWithTooltip.js","webpack:///./node_modules/@kentico/kontent-smart-link/es/web-components/KSLButtonElement.js","webpack:///./node_modules/@kentico/kontent-smart-link/es/web-components/KSLPopoverElement.js","webpack:///./node_modules/@kentico/kontent-smart-link/es/lib/IFrameCommunicatorTypes.js","webpack:///./node_modules/@kentico/kontent-smart-link/es/utils/dataAttributes.js","webpack:///./node_modules/@kentico/kontent-smart-link/es/lib/ConfigurationManager.js","webpack:///./node_modules/@kentico/kontent-smart-link/es/utils/customElements.js","webpack:///./node_modules/@kentico/kontent-smart-link/es/web-components/KSLHighlightElement.js","webpack:///./node_modules/@kentico/kontent-smart-link/es/web-components/KSLContainerElement.js","webpack:///./node_modules/@kentico/kontent-smart-link/es/web-components/KSLAddButtonElement.js","webpack:///./node_modules/@kentico/kontent-smart-link/es/web-components/components.js","webpack:///./node_modules/@kentico/kontent-smart-link/es/lib/SmartLinkRenderer.js","webpack:///./node_modules/@kentico/kontent-smart-link/es/utils/validation.js","webpack:///./node_modules/@kentico/kontent-smart-link/es/utils/link.js","webpack:///./node_modules/@kentico/kontent-smart-link/es/lib/NodeSmartLinkProvider.js","webpack:///./node_modules/@kentico/kontent-smart-link/es/utils/storage.js","webpack:///./node_modules/@kentico/kontent-smart-link/es/lib/EventManager.js","webpack:///./node_modules/@kentico/kontent-smart-link/es/lib/IFrameCommunicator.js","webpack:///./node_modules/@kentico/kontent-smart-link/es/utils/createUuid.js","webpack:///./node_modules/@kentico/kontent-smart-link/es/lib/QueryParamPresenceWatcher.js","webpack:///./node_modules/@kentico/kontent-smart-link/es/utils/reload.js","webpack:///./node_modules/@kentico/kontent-smart-link/es/sdk.js","webpack:///./node_modules/core-js/internals/engine-user-agent.js","webpack:///./node_modules/core-js/internals/to-primitive.js","webpack:///./node_modules/core-js/internals/ordinary-to-primitive.js","webpack:///./node_modules/core-js/internals/make-built-in.js","webpack:///./node_modules/core-js/internals/weak-map-basic-detection.js","webpack:///./node_modules/core-js/internals/object-to-string.js","webpack:///./node_modules/core-js/modules/web.dom-collections.for-each.js","webpack:///./node_modules/core-js/internals/array-for-each.js","webpack:///./node_modules/core-js/internals/to-length.js","webpack:///./node_modules/core-js/internals/math-trunc.js","webpack:///./node_modules/core-js/internals/array-species-constructor.js","webpack:///./node_modules/core-js/internals/is-constructor.js","webpack:///./node_modules/core-js/internals/array-method-is-strict.js","webpack:///./node_modules/core-js/modules/es.object.assign.js","webpack:///./node_modules/core-js/internals/own-keys.js","webpack:///./node_modules/core-js/internals/array-includes.js","webpack:///./node_modules/core-js/internals/is-forced.js","webpack:///./node_modules/core-js/internals/object-assign.js","webpack:///./node_modules/core-js/modules/es.array.concat.js","webpack:///./node_modules/core-js/internals/does-not-exceed-safe-integer.js","webpack:///./node_modules/core-js/internals/array-method-has-species-support.js","webpack:///./node_modules/core-js/modules/es.symbol.js","webpack:///./node_modules/core-js/modules/es.symbol.constructor.js","webpack:///./node_modules/core-js/internals/html.js","webpack:///./node_modules/core-js/internals/object-get-own-property-names-external.js","webpack:///./node_modules/core-js/internals/path.js","webpack:///./node_modules/core-js/internals/symbol-define-to-primitive.js","webpack:///./node_modules/core-js/modules/es.symbol.for.js","webpack:///./node_modules/core-js/modules/es.symbol.key-for.js","webpack:///./node_modules/core-js/modules/es.json.stringify.js","webpack:///./node_modules/core-js/internals/function-apply.js","webpack:///./node_modules/core-js/internals/array-slice.js","webpack:///./node_modules/core-js/modules/es.object.get-own-property-symbols.js","webpack:///./node_modules/core-js/modules/es.symbol.description.js","webpack:///./node_modules/core-js/modules/es.symbol.iterator.js","webpack:///./node_modules/core-js/internals/add-to-unscopables.js","webpack:///./node_modules/core-js/internals/correct-prototype-getter.js","webpack:///./node_modules/core-js/internals/object-set-prototype-of.js","webpack:///./node_modules/core-js/internals/a-possible-prototype.js","webpack:///./node_modules/core-js/internals/string-multibyte.js","webpack:///./node_modules/core-js/modules/web.url-search-params.js","webpack:///./node_modules/core-js/modules/web.url-search-params.constructor.js","webpack:///./node_modules/core-js/internals/url-constructor-detection.js","webpack:///./node_modules/core-js/internals/define-built-ins.js","webpack:///./node_modules/core-js/internals/an-instance.js","webpack:///./node_modules/core-js/internals/get-iterator.js","webpack:///./node_modules/core-js/internals/validate-arguments-length.js","webpack:///./node_modules/core-js/internals/array-sort.js","webpack:///./node_modules/core-js/internals/regexp-flags.js","webpack:///./node_modules/core-js/internals/regexp-sticky-helpers.js","webpack:///./node_modules/core-js/internals/regexp-unsupported-dot-all.js","webpack:///./node_modules/core-js/internals/regexp-unsupported-ncg.js","webpack:///./node_modules/core-js/modules/es.string.search.js","webpack:///./node_modules/core-js/internals/fix-regexp-well-known-symbol-logic.js","webpack:///./node_modules/core-js/internals/same-value.js","webpack:///./node_modules/core-js/internals/regexp-exec-abstract.js"],"names":["module","exports","exec","error","NATIVE_BIND","FunctionPrototype","Function","prototype","bind","call","uncurryThis","fn","apply","arguments","argument","global","shared","hasOwn","uid","NATIVE_SYMBOL","USE_SYMBOL_AS_UID","WellKnownSymbolsStore","Symbol","symbolFor","createWellKnownSymbol","withoutSetter","name","description","it","Math","check","globalThis","window","self","this","AssertionError","message","Error","NotImplementedError","InvalidEnvironmentError","NotInitializedError","toObject","hasOwnProperty","Object","key","fails","defineProperty","get","DESCRIPTORS","IE8_DOM_DEFINE","V8_PROTOTYPE_DEFINE_BUG","anObject","toPropertyKey","$TypeError","TypeError","$defineProperty","$getOwnPropertyDescriptor","getOwnPropertyDescriptor","f","O","P","Attributes","current","value","configurable","enumerable","writable","isObject","$String","String","createNonEnumerableProperty","defineBuiltIn","defineGlobalProperty","copyConstructorProperties","isForced","options","source","target","targetProperty","sourceProperty","descriptor","TARGET","GLOBAL","STATIC","stat","dontCallGetSet","forced","undefined","sham","isCallable","documentAll","document","all","SPECIAL_DOCUMENT_ALL","definePropertyModule","makeBuiltIn","simple","unsafe","nonConfigurable","nonWritable","aFunction","namespace","method","length","classof","KSLCustomElement","HTMLElement","super","selfClass","getPrototypeOf","constructor","attachShadow","mode","appendChild","template","content","cloneNode","_template","initializeTemplate","customElements","is","Promise","resolve","define","whenDefined","attributeName","attributeValue","setAttribute","toString","removeAttribute","eventType","eventData","timeout","reject","timeoutId","setTimeout","customEvent","CustomEvent","detail","onResolve","data","clearTimeout","onReject","reason","dispatchEvent","IndexedObject","requireObjectCoercible","IS_PURE","store","push","version","copyright","license","$Object","V8_VERSION","getOwnPropertySymbols","symbol","set","has","NATIVE_WEAK_MAP","sharedKey","hiddenKeys","WeakMap","state","wmget","wmhas","wmset","metadata","facade","STATE","enforce","getterFor","TYPE","type","createPropertyDescriptor","object","bitmap","activeXDocument","definePropertiesModule","enumBugKeys","html","documentCreateElement","IE_PROTO","EmptyConstructor","scriptTag","LT","NullProtoObjectViaActiveX","write","close","temp","parentWindow","NullProtoObject","ActiveXObject","iframeDocument","iframe","domain","style","display","src","contentWindow","open","F","create","Properties","result","TO_STRING_TAG_SUPPORT","classofRaw","TO_STRING_TAG","wellKnownSymbol","CORRECT_ARGUMENTS","tag","tryGet","callee","stringSlice","slice","test","isNullOrUndefined","toPrimitive","isSymbol","getBuiltIn","isPrototypeOf","$Symbol","keys","toLength","obj","TAG","toIndexedObject","addToUnscopables","Iterators","InternalStateModule","defineIterator","setInternalState","getInternalState","Array","iterated","kind","index","done","values","Arguments","id","postfix","random","match","userAgent","process","Deno","versions","v8","split","EXISTS","createElement","aCallable","V","func","tryToString","propertyIsEnumerable","trunc","number","isArray","propertyIsEnumerableModule","$propertyIsEnumerable","NASHORN_BUG","1","internalObjectKeys","concat","getOwnPropertyNames","re1","re2","regexpFlags","stickyHelpers","UNSUPPORTED_DOT_ALL","UNSUPPORTED_NCG","nativeReplace","replace","nativeExec","RegExp","patchedExec","charAt","indexOf","UPDATES_LAST_INDEX_WRONG","lastIndex","UNSUPPORTED_Y","BROKEN_CARET","NPCG_INCLUDED","string","reCopy","i","group","re","str","raw","groups","sticky","flags","charsAdded","strCopy","multiline","input","g","e","iterator","a","getDescriptor","PROPER","CONFIGURABLE","functionToString","inspectSource","CSSRuleList","CSSStyleDeclaration","CSSValueList","ClientRectList","DOMRectList","DOMStringList","DOMTokenList","DataTransferItemList","FileList","HTMLAllCollection","HTMLCollection","HTMLFormElement","HTMLSelectElement","MediaList","MimeTypeArray","NamedNodeMap","NodeList","PaintRequestList","Plugin","PluginArray","SVGLengthList","SVGNumberList","SVGPathSegList","SVGPointList","SVGStringList","SVGTransformList","SourceBufferList","StyleSheetList","TextTrackCueList","TextTrackList","TouchList","classList","DOMTokenListPrototype","lengthOfArrayLike","arraySpeciesCreate","createMethod","IS_MAP","IS_FILTER","IS_SOME","IS_EVERY","IS_FIND_INDEX","IS_FILTER_REJECT","NO_HOLES","$this","callbackfn","that","specificCreate","boundFunction","forEach","map","filter","some","every","find","findIndex","filterReject","arraySpeciesConstructor","originalArray","ownKeys","getOwnPropertyDescriptorModule","exceptions","names","toIntegerOrInfinity","max","min","integer","propertyKey","objectKeys","defineProperties","props","toAbsoluteIndex","createProperty","$Array","start","end","k","fin","n","path","wrappedWellKnownSymbolModule","NAME","keyFor","$","FunctionName","createIteratorConstructor","setPrototypeOf","setToStringTag","IteratorsCore","PROPER_FUNCTION_NAME","CONFIGURABLE_FUNCTION_NAME","IteratorPrototype","BUGGY_SAFARI_ITERATORS","ITERATOR","returnThis","Iterable","IteratorConstructor","next","DEFAULT","IS_SET","FORCED","CurrentIteratorPrototype","methods","KEY","getIterationMethod","KIND","defaultIterator","IterablePrototype","INCORRECT_VALUES_NAME","nativeIterator","anyNativeIterator","entries","proto","ENUMERABLE_NEXT","PrototypeOfArrayIteratorPrototype","arrayIterator","CORRECT_PROTOTYPE_GETTER","ObjectPrototype","point","DOMIterables","ArrayIteratorMethods","ArrayValues","handlePrototype","CollectionPrototype","COLLECTION_NAME","METHOD_NAME","getMethod","isInsideIFrame","top","LogLevel","Logger","level","logLevel","args","console","Warn","warn","Info","info","Debug","log","groupCollapsed","groupEnd","assert","condition","getRenderingRootForElement","element","parentElement","getRenderingRootMetadata","isNotTable","includes","tagName","isPositioned","isContentClipped","root","computedStyles","getComputedStyle","getPropertyValue","getTotalScrollOffset","node","offsetParent","scrollTop","scrollLeft","currentNode","isSameNode","getElementAncestors","ancestors","parent","createTemplateForCustomElement","innerHTML","IconName","iconsHTML","Edit","Plus","Spinner","Puzzle","PlusPuzzle","CollapseScheme","KSLIconElement","getTemplateByIconName","iconName","icons","querySelector","HTMLTemplateElement","updateIcon","shadowRoot","iconRef","replaceChild","lastElementChild","remove","getAttribute","_icons","updateAttribute","_oldValue","newValue","ElementPositionOffset","Colors","Shadows","targetRef","None","hasAttribute","thisRect","targetRect","position","TopStart","Top","TopEnd","height","BottomStart","Bottom","BottomEnd","Left","Right","LeftEnd","RightEnd","LeftStart","RightStart","width","BackgroundDefault","Default","TextDefault","attachTo","adjustPosition","getBoundingClientRect","parentRect","isOffsetToBody","body","isOffsetToTarget","topOffset","calculateTopOffset","leftOffset","calculateLeftOffset","thisTop","thisLeft","scrollOffsetTop","scrollOffsetLeft","pageYOffset","left","pageXOffset","innerHeight","bottom","innerWidth","right","_a","connectedCallback","addEventListener","capture","disconnectedCallback","removeEventListener","BackgroundSecondary","TextSecondary","baseTemplate","thisTemplate","tooltipRef","showTooltip","hideTooltip","tooltipMessage","tooltipDisabled","tooltip","innerText","tooltipPosition","visible","ButtonType","Primary","PrimaryHover","BackgroundDefaultDisabled","TextDefaultDisabled","Quinary","BackgroundDefaultHover","BackgroundDefaultSelected","handleClick","event","disabled","preventDefault","stopPropagation","stopImmediatePropagation","buttonRef","observedAttributes","attributeChangedCallback","Boolean","InsertPositionPlacement","AddButtonAction","AddButtonElementType","AddButtonPermission","AddButtonPermissionCheckResult","IFrameMessageType","IFrameResponseType","DataAttribute","MetadataAttribute","DisableableFeature","ParserTokenKey","baseParserPattern","LanguageCodename","dataAttributes","ProjectId","itemEditButtonParserPattern","ItemId","componentEditButtonParserPattern","ComponentId","elementEditButtonParserPattern","ElementCodename","optional","baseAddButtonParserPattern","relativeAddButtonParserPattern","Placement","AddButtonInsertPosition","TargetId","fixedAddButtonParserPattern","parseEditButtonDataAttributes","parsed","parseDataAttributes","HighlightType","Element","ContentComponent","ContentItem","getEditButtonDataAttributesPattern","getHighlightTypeForElement","assign","projectId","languageCodename","itemId","contentComponentId","elementCodename","parseAddButtonDataAttributes","End","Start","After","Before","getAddButtonDataAttributesPattern","insertPosition","getAddButtonInsertPosition","placement","targetId","pattern","startFrom","Map","debugGroup","elements","debug","takenDataAttributes","Set","token","debugGroupCollapsed","dataAttribute","findDataAttribute","debugGroupEnd","currentTokenIndex","tokensWithHigherPriority","delete","add","attribute","defaultConfiguration","defaultDataAttributes","forceWebSpotlightMode","isInsideWebSpotlight","queryParam","update","configuration","instance","DisabledHighlightFeatureSelector","DisableFeatures","Highlight","ElementSelector","ContentComponentSelector","ContentItemSelector","ElementsWithAddButtonSelector","AddButton","AllAugmentableElementsSelector","getAugmentableDescendants","getInstance","isInsideWebSpotlightPreviewIFrame","querySelectorAll","isElementAugmentable","shouldElementHaveHighlight","shouldElementHaveAddButton","feature","toLowerCase","isFeatureDisabledForElement","PrimaryTransparent","unregisterTargetNodeListeners","hidden","editButtonRef","getEditButtonTooltip","handleTargetNodeMouseEnter","handleTargetNodeMouseLeave","handleEditButtonClick","offsetParentRect","selected","dispatchEditEvent","targetNode","_boundingClientRect","createHighlightForElement","highlight","createAddButtonForElement","button","clientHeight","clientWidth","offsetTop","offsetLeft","shouldRecompute","__awaiter","thisArg","_arguments","generator","fulfilled","step","rejected","then","PopoverButtonId","popoverRef","verticalOffset","horizontalOffset","loading","response","dispatchAsyncEvent","permissions","isUserMissingPermissions","ViewParent","Ok","areComponentsForbidden","CreateNew","RteWithForbiddenComponents","showPopover","handleClickOutside","contains","hidePopover","popover","elementType","isParentPublished","canUserCreateLinkedItem","InsertLinkedItem","CreateLinkedItem","getCreateLinkedItemTooltip","LinkedItems","CreateComponent","RichText","getPopoverHtml","popoverParent","addPopoverEventListeners","removePopoverEventListeners","createComponentButtonRef","createLinkedItemButtonRef","insertLinkedItemButtonRef","handleCreateComponentClick","handleCreateLinkedItemClick","handleInsertLinkedItemClick","handleAddActionClick","action","_b","AddButtonRenderPosition","offset","webComponents","webComponentTags","component","isElementWebComponent","render","visibleElements","observedElements","size","clear","newAddButtonByElement","newHighlightByElement","elementsByRenderingRoot","results","prev","groupElementsByRenderingRoot","container","createContainerIfNotExist","offsetHeight","highlightByElement","addButtonByElement","addButton","containerByRenderingRoot","children","destroy","defaultContainer","createAndMountDefaultContainer","logErrors","errors","validateContentItemClickEditMessageData","validateAddInitialMessageData","buildItemLink","buildKontentLink","componentElementCodename","buildElementLink","iframeCommunicator","enabled","renderingTimeoutId","toggle","force","enable","disable","startRenderingInterval","listenToGlobalEvents","observeDomMutations","stopRenderingInterval","unlistenToGlobalEvents","disconnectObservers","renderer","augmentVisibleElements","requestAnimationFrame","passive","onAddInitialClick","onAddActionClick","onEditElement","mutationObserver","observe","childList","subtree","observeElementVisibility","disconnect","intersectionObserver","unobserveElementVisibility","unobserve","onDomMutation","mutations","relevantMutations","mutation","isTypeRelevant","isTargetRelevant","hasRelevantAddedNodes","from","addedNodes","hasRelevantRemovedNodes","removedNodes","onElementVisibilityChange","filteredEntries","entry","isIntersecting","configurationManager","messageData","defaultProjectId","defaultLanguageCodename","messageMetadata","elementRect","validateElementClickMessageData","sendMessage","ElementClicked","link","validateContentComponentClickMessageData","ContentComponentClicked","ContentItemClicked","sendMessageWithResponse","AddInitial","Unknown","validateAddActionMessageData","AddAction","MutationObserver","IntersectionObserver","LocalStorageNotAvailable","EventManager","listeners","on","listener","newListeners","off","emit","callback","removeAllListeners","hasEventListener","events","callbacks","addMessageListener","removeMessageListener","requestId","crypto","getRandomValues","Uint32Array","registerCallback","postMessage","onMessage","executeCallback","QueryParamPresenceWatcher","previousValue","timers","watch","onChange","timerId","isPresent","isQueryParamPresent","newTimerId","WatchTimeoutMs","unwatchAll","location","search","reload","KontentSmartLinkEvent","initialize","allDefined","webComponent","defineAllRequiredWebComponents","setLogLevel","queryParamPresenceWatcher","nodeSmartLinkProvider","initializeIFrameCommunication","updateConfiguration","handler","settings","getSettingsStorage","supportedFeatures","refreshHandler","Initialized","Status","handleStatusMessage","RefreshPreview","handleRefreshMessage","Refresh","localStorage","getItem","JSON","parse","json","stringify","setItem","removeItem","sdk","setConfiguration","ordinaryToPrimitive","TO_PRIMITIVE","pref","exoticToPrim","val","valueOf","enforceInternalState","CONFIGURABLE_LENGTH","TEMPLATE","getter","setter","arity","join","$forEach","STRICT_METHOD","arrayMethodIsStrict","ceil","floor","x","isConstructor","SPECIES","C","noop","empty","construct","constructorRegExp","INCORRECT_TO_STRING","isConstructorModern","isConstructorLegacy","called","getOwnPropertyNamesModule","getOwnPropertySymbolsModule","IS_INCLUDES","el","fromIndex","replacement","detection","normalize","POLYFILL","NATIVE","$assign","b","A","B","chr","T","argumentsLength","S","j","doesNotExceedSafeInteger","arrayMethodHasSpeciesSupport","IS_CONCAT_SPREADABLE","IS_CONCAT_SPREADABLE_SUPPORT","array","SPECIES_SUPPORT","isConcatSpreadable","spreadable","arg","len","E","foo","$toString","nativeObjectCreate","getOwnPropertyNamesExternal","defineWellKnownSymbol","defineSymbolToPrimitive","HIDDEN","SymbolPrototype","QObject","nativeGetOwnPropertyDescriptor","nativeDefineProperty","nativeGetOwnPropertyNames","nativePropertyIsEnumerable","AllSymbols","ObjectPrototypeSymbols","USE_SETTER","findChild","setSymbolDescriptor","ObjectPrototypeDescriptor","wrap","$defineProperties","properties","$getOwnPropertySymbols","$getOwnPropertyNames","IS_OBJECT_PROTOTYPE","useSetter","useSimple","arraySlice","windowNames","getWindowNames","hint","NATIVE_SYMBOL_REGISTRY","StringToSymbolRegistry","SymbolToStringRegistry","sym","$stringify","charCodeAt","numberToString","tester","low","hi","WRONG_SYMBOLS_CONVERSION","ILL_FORMED_UNICODE","stringifyWithSymbolsFix","replacer","$replacer","fixIllFormed","space","Reflect","NativeSymbol","EmptyStringDescriptionStore","SymbolWrapper","thisSymbolValue","symbolDescriptiveString","regexp","desc","UNSCOPABLES","ArrayPrototype","aPossiblePrototype","CORRECT_SETTER","__proto__","CONVERT_TO_STRING","pos","first","second","codeAt","USE_NATIVE_URL","defineBuiltIns","anInstance","getIterator","getIteratorMethod","validateArgumentsLength","arraySort","getInternalParamsState","getInternalIteratorState","URL_SEARCH_PARAMS","safeGetBuiltIn","nativeFetch","NativeRequest","Headers","RequestPrototype","HeadersPrototype","decodeURIComponent","encodeURIComponent","shift","splice","plus","sequences","percentSequence","bytes","percentDecode","sequence","deserialize","replacements","serialize","URLSearchParamsIterator","params","URLSearchParamsState","init","url","parseObject","parseQuery","bindURL","entryIterator","entryNext","iteratorMethod","query","attributes","updateURL","URLSearchParamsConstructor","URLSearchParamsPrototype","append","getAll","found","sort","URLSearchParams","headersHas","headersSet","wrapRequestOptions","headers","fetch","RequestConstructor","Request","getState","URL","searchParams","pathname","toJSON","href","username","host","hash","Prototype","usingIterator","passed","required","mergeSort","comparefn","middle","insertionSort","merge","llength","rlength","lindex","rindex","hasIndices","ignoreCase","dotAll","unicode","unicodeSets","$RegExp","MISSED_STICKY","fixRegExpWellKnownSymbolLogic","sameValue","regExpExec","SEARCH","nativeSearch","maybeCallNative","searcher","rx","res","previousLastIndex","regexpExec","RegExpPrototype","SHAM","SYMBOL","DELEGATES_TO_SYMBOL","DELEGATES_TO_EXEC","execCalled","uncurriedNativeRegExpMethod","nativeMethod","arg2","forceStringMethod","uncurriedNativeMethod","$exec","y","R"],"mappings":"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","file":"vendors.js","sourcesContent":["module.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n","var NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar bind = FunctionPrototype.bind;\nvar call = FunctionPrototype.call;\nvar uncurryThis = NATIVE_BIND && bind.bind(call, call);\n\nmodule.exports = NATIVE_BIND ? function (fn) {\n return fn && uncurryThis(fn);\n} : function (fn) {\n return fn && function () {\n return call.apply(fn, arguments);\n };\n};\n","// `IsCallable` abstract operation\n// https://tc39.es/ecma262/#sec-iscallable\nmodule.exports = function (argument) {\n return typeof argument == 'function';\n};\n","var global = require('../internals/global');\nvar shared = require('../internals/shared');\nvar hasOwn = require('../internals/has-own-property');\nvar uid = require('../internals/uid');\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar WellKnownSymbolsStore = shared('wks');\nvar Symbol = global.Symbol;\nvar symbolFor = Symbol && Symbol['for'];\nvar createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol : Symbol && Symbol.withoutSetter || uid;\n\nmodule.exports = function (name) {\n if (!hasOwn(WellKnownSymbolsStore, name) || !(NATIVE_SYMBOL || typeof WellKnownSymbolsStore[name] == 'string')) {\n var description = 'Symbol.' + name;\n if (NATIVE_SYMBOL && hasOwn(Symbol, name)) {\n WellKnownSymbolsStore[name] = Symbol[name];\n } else if (USE_SYMBOL_AS_UID && symbolFor) {\n WellKnownSymbolsStore[name] = symbolFor(description);\n } else {\n WellKnownSymbolsStore[name] = createWellKnownSymbol(description);\n }\n } return WellKnownSymbolsStore[name];\n};\n","var check = function (it) {\n return it && it.Math == Math && it;\n};\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nmodule.exports =\n // eslint-disable-next-line es-x/no-global-this -- safe\n check(typeof globalThis == 'object' && globalThis) ||\n check(typeof window == 'object' && window) ||\n // eslint-disable-next-line no-restricted-globals -- safe\n check(typeof self == 'object' && self) ||\n check(typeof global == 'object' && global) ||\n // eslint-disable-next-line no-new-func -- fallback\n (function () { return this; })() || Function('return this')();\n","export function AssertionError(message) {\r\n const error = new Error(message);\r\n error.name = 'AssertionError';\r\n return error;\r\n}\r\nexport function NotImplementedError(message) {\r\n const error = new Error(message);\r\n error.name = 'NotImplementedError';\r\n return error;\r\n}\r\nexport function InvalidEnvironmentError(message) {\r\n const error = new Error(message);\r\n error.name = 'InvalidEnvironmentError';\r\n return error;\r\n}\r\nexport function NotInitializedError(message) {\r\n const error = new Error(message);\r\n error.name = 'NotInitializedError';\r\n return error;\r\n}\r\n//# sourceMappingURL=errors.js.map","var uncurryThis = require('../internals/function-uncurry-this');\nvar toObject = require('../internals/to-object');\n\nvar hasOwnProperty = uncurryThis({}.hasOwnProperty);\n\n// `HasOwnProperty` abstract operation\n// https://tc39.es/ecma262/#sec-hasownproperty\n// eslint-disable-next-line es-x/no-object-hasown -- safe\nmodule.exports = Object.hasOwn || function hasOwn(it, key) {\n return hasOwnProperty(toObject(it), key);\n};\n","var fails = require('../internals/fails');\n\n// Detect IE8's incomplete defineProperty implementation\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es-x/no-object-defineproperty -- required for testing\n return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] != 7;\n});\n","var NATIVE_BIND = require('../internals/function-bind-native');\n\nvar call = Function.prototype.call;\n\nmodule.exports = NATIVE_BIND ? call.bind(call) : function () {\n return call.apply(call, arguments);\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar anObject = require('../internals/an-object');\nvar toPropertyKey = require('../internals/to-property-key');\n\nvar $TypeError = TypeError;\n// eslint-disable-next-line es-x/no-object-defineproperty -- safe\nvar $defineProperty = Object.defineProperty;\n// eslint-disable-next-line es-x/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar ENUMERABLE = 'enumerable';\nvar CONFIGURABLE = 'configurable';\nvar WRITABLE = 'writable';\n\n// `Object.defineProperty` method\n// https://tc39.es/ecma262/#sec-object.defineproperty\nexports.f = DESCRIPTORS ? V8_PROTOTYPE_DEFINE_BUG ? function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (typeof O === 'function' && P === 'prototype' && 'value' in Attributes && WRITABLE in Attributes && !Attributes[WRITABLE]) {\n var current = $getOwnPropertyDescriptor(O, P);\n if (current && current[WRITABLE]) {\n O[P] = Attributes.value;\n Attributes = {\n configurable: CONFIGURABLE in Attributes ? Attributes[CONFIGURABLE] : current[CONFIGURABLE],\n enumerable: ENUMERABLE in Attributes ? Attributes[ENUMERABLE] : current[ENUMERABLE],\n writable: false\n };\n }\n } return $defineProperty(O, P, Attributes);\n} : $defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return $defineProperty(O, P, Attributes);\n } catch (error) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw $TypeError('Accessors not supported');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","var isObject = require('../internals/is-object');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\n// `Assert: Type(argument) is Object`\nmodule.exports = function (argument) {\n if (isObject(argument)) return argument;\n throw $TypeError($String(argument) + ' is not an object');\n};\n","var global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\nvar isForced = require('../internals/is-forced');\n\n/*\n options.target - name of the target object\n options.global - target is the global object\n options.stat - export as static methods of target\n options.proto - export as prototype methods of target\n options.real - real prototype method for the `pure` version\n options.forced - export even if the native feature is available\n options.bind - bind methods to the target, required for the `pure` version\n options.wrap - wrap constructors to preventing global pollution, required for the `pure` version\n options.unsafe - use the simple assignment of property instead of delete + defineProperty\n options.sham - add a flag to not completely full polyfills\n options.enumerable - export as enumerable property\n options.dontCallGetSet - prevent calling a getter on target\n options.name - the .name of the function if it does not match the key\n*/\nmodule.exports = function (options, source) {\n var TARGET = options.target;\n var GLOBAL = options.global;\n var STATIC = options.stat;\n var FORCED, target, key, targetProperty, sourceProperty, descriptor;\n if (GLOBAL) {\n target = global;\n } else if (STATIC) {\n target = global[TARGET] || defineGlobalProperty(TARGET, {});\n } else {\n target = (global[TARGET] || {}).prototype;\n }\n if (target) for (key in source) {\n sourceProperty = source[key];\n if (options.dontCallGetSet) {\n descriptor = getOwnPropertyDescriptor(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);\n // contained in target\n if (!FORCED && targetProperty !== undefined) {\n if (typeof sourceProperty == typeof targetProperty) continue;\n copyConstructorProperties(sourceProperty, targetProperty);\n }\n // add a flag to not completely full polyfills\n if (options.sham || (targetProperty && targetProperty.sham)) {\n createNonEnumerableProperty(sourceProperty, 'sham', true);\n }\n defineBuiltIn(target, key, sourceProperty, options);\n }\n};\n","var isCallable = require('../internals/is-callable');\n\nvar documentAll = typeof document == 'object' && document.all;\n\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot\nvar SPECIAL_DOCUMENT_ALL = typeof documentAll == 'undefined' && documentAll !== undefined;\n\nmodule.exports = SPECIAL_DOCUMENT_ALL ? function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it) || it === documentAll;\n} : function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it);\n};\n","var isCallable = require('../internals/is-callable');\nvar definePropertyModule = require('../internals/object-define-property');\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nmodule.exports = function (O, key, value, options) {\n if (!options) options = {};\n var simple = options.enumerable;\n var name = options.name !== undefined ? options.name : key;\n if (isCallable(value)) makeBuiltIn(value, name, options);\n if (options.global) {\n if (simple) O[key] = value;\n else defineGlobalProperty(key, value);\n } else {\n try {\n if (!options.unsafe) delete O[key];\n else if (O[key]) simple = true;\n } catch (error) { /* empty */ }\n if (simple) O[key] = value;\n else definePropertyModule.f(O, key, {\n value: value,\n enumerable: false,\n configurable: !options.nonConfigurable,\n writable: !options.nonWritable\n });\n } return O;\n};\n","var global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar aFunction = function (argument) {\n return isCallable(argument) ? argument : undefined;\n};\n\nmodule.exports = function (namespace, method) {\n return arguments.length < 2 ? aFunction(global[namespace]) : global[namespace] && global[namespace][method];\n};\n","var classof = require('../internals/classof');\n\nvar $String = String;\n\nmodule.exports = function (argument) {\n if (classof(argument) === 'Symbol') throw TypeError('Cannot convert a Symbol value to a string');\n return $String(argument);\n};\n","import { InvalidEnvironmentError, NotImplementedError } from '../../utils/errors';\r\n// Custom elements API as well as all Web Component definitions can only be run in a browser environment,\r\n// because they require build-in browser APIs, which are not available on the backend (during SSR).\r\n// There are several libraries that allow server-side rendering of Web Components. It is usually done by\r\n// redefining the whole DOM API on the backend. For the purpose of this SDK it is not required to\r\n// support server-side rendering of Web Components, because whole page must be loaded for SDK to work properly.\r\n// However, some SSR frameworks (such as Next.js) will try to run this code on the server side first during SSR,\r\n// which could result in a crash because HTMLElement is not defined on the backend. That is why we are setting\r\n// this property to null in a global Nodejs scope.\r\nconst isNotInBrowser = typeof window === 'undefined';\r\nif (isNotInBrowser) {\r\n // eslint-disable-next-line\r\n // @ts-ignore: required to support SSR frameworks\r\n global['HTMLElement'] = null;\r\n}\r\n/**\r\n * This is a base class for all kontent-smart-link custom elements.\r\n */\r\nlet KSLCustomElement = /** @class */ (() => {\r\n class KSLCustomElement extends HTMLElement {\r\n constructor() {\r\n super();\r\n // We are using an \"open\" mode here, so that it is easier for users to manipulate the shadow root\r\n // of our custom elements if they want to change or customize something.\r\n const shadowRootConfig = { mode: 'open' };\r\n const selfClass = Object.getPrototypeOf(this).constructor;\r\n const shadowRoot = this.attachShadow(shadowRootConfig);\r\n shadowRoot.appendChild(selfClass.template.content.cloneNode(true));\r\n }\r\n /**\r\n * Name of the custom element that will be added to the CustomElementRegistry.\r\n * This name will be used to add a custom element to the page.\r\n *\r\n * @type {string}\r\n */\r\n static get is() {\r\n throw NotImplementedError('KSLCustomElement: \"is\" getter is not implemented for this custom element.');\r\n }\r\n /**\r\n * Template is usually stored in the scope of custom element file, but this does not work with SSR,\r\n * since `document` is not available on the backend. That is why we are storing the template in a static\r\n * constructor property and initialize it when we are sure we are in a browser environment.\r\n *\r\n * @type {HTMLTemplateElement}\r\n */\r\n static get template() {\r\n if (!this._template) {\r\n this._template = this.initializeTemplate();\r\n }\r\n return this._template;\r\n }\r\n /**\r\n * Add this custom element to the CustomElementRegistry so that it can be used on the page.\r\n * Usually customElements.define is called inline right at the bottom of the custom element file,\r\n * but this would not work with SSR, since custom elements can't be defined on the backend.\r\n */\r\n static define() {\r\n if (typeof window === 'undefined') {\r\n throw InvalidEnvironmentError('KSLCustomElement: custom elements can only be defined in a browser environment.');\r\n }\r\n if (!window.customElements) {\r\n throw InvalidEnvironmentError('KSLCustomElement: custom elements API is not available.');\r\n }\r\n // The 'this' keyword refers to current constructor in static methods.\r\n // Conversion to unknown is needed so that we can explicitly converse\r\n // this class to CustomElementConstructor.\r\n const self = this;\r\n if (!window.customElements.get(this.is)) {\r\n customElements.define(this.is, self);\r\n return customElements.whenDefined(this.is);\r\n }\r\n return Promise.resolve();\r\n }\r\n /**\r\n * Initialize a template for the custom element.\r\n * Each KSL custom element class should implement this static method.\r\n *\r\n * @returns {HTMLTemplateElement}\r\n */\r\n static initializeTemplate() {\r\n throw NotImplementedError('KSLCustomElement: \"initializeTemplate\" method should be implemented for every component.');\r\n }\r\n /**\r\n * Update attribute value on the custom element.\r\n *\r\n * @param {string} attributeName\r\n * @param {string | number | boolean | null} attributeValue\r\n */\r\n updateAttribute(attributeName, attributeValue) {\r\n if (attributeValue) {\r\n this.setAttribute(attributeName, attributeValue.toString());\r\n }\r\n else {\r\n this.removeAttribute(attributeName);\r\n }\r\n }\r\n /**\r\n * Dispatch an asynchronous event from component. Dispatching this event returns Promise\r\n * which resolves if event was successful and rejects if events is not successful.\r\n *\r\n * @param {string} eventType\r\n * @param {TEventData} eventData\r\n * @param {number | null} timeout\r\n * @protected\r\n */\r\n dispatchAsyncEvent(eventType, eventData, timeout = null) {\r\n return new Promise((resolve, reject) => {\r\n const timeoutId = timeout ? window.setTimeout(reject, timeout) : 0;\r\n const customEvent = new CustomEvent(eventType, {\r\n detail: {\r\n eventData: eventData,\r\n onResolve: (data) => {\r\n window.clearTimeout(timeoutId);\r\n resolve(data);\r\n },\r\n onReject: (reason) => {\r\n window.clearTimeout(timeoutId);\r\n reject(reason);\r\n },\r\n },\r\n });\r\n this.dispatchEvent(customEvent);\r\n });\r\n }\r\n }\r\n KSLCustomElement._template = null;\r\n return KSLCustomElement;\r\n})();\r\nexport { KSLCustomElement };\r\n//# sourceMappingURL=KSLCustomElement.js.map","// toObject with fallback for non-array-like ES3 strings\nvar IndexedObject = require('../internals/indexed-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nmodule.exports = function (it) {\n return IndexedObject(requireObjectCoercible(it));\n};\n","var IS_PURE = require('../internals/is-pure');\nvar store = require('../internals/shared-store');\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.25.0',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2014-2022 Denis Pushkarev (zloirock.ru)',\n license: 'https://github.com/zloirock/core-js/blob/v3.25.0/LICENSE',\n source: 'https://github.com/zloirock/core-js'\n});\n","module.exports = false;\n","var requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar $Object = Object;\n\n// `ToObject` abstract operation\n// https://tc39.es/ecma262/#sec-toobject\nmodule.exports = function (argument) {\n return $Object(requireObjectCoercible(argument));\n};\n","/* eslint-disable es-x/no-symbol -- required for testing */\nvar V8_VERSION = require('../internals/engine-v8-version');\nvar fails = require('../internals/fails');\n\n// eslint-disable-next-line es-x/no-object-getownpropertysymbols -- required for testing\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n var symbol = Symbol();\n // Chrome 38 Symbol has incorrect toString conversion\n // `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances\n return !String(symbol) || !(Object(symbol) instanceof Symbol) ||\n // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances\n !Symbol.sham && V8_VERSION && V8_VERSION < 41;\n});\n","var NATIVE_WEAK_MAP = require('../internals/weak-map-basic-detection');\nvar global = require('../internals/global');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isObject = require('../internals/is-object');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar hasOwn = require('../internals/has-own-property');\nvar shared = require('../internals/shared-store');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar OBJECT_ALREADY_INITIALIZED = 'Object already initialized';\nvar TypeError = global.TypeError;\nvar WeakMap = global.WeakMap;\nvar set, get, has;\n\nvar enforce = function (it) {\n return has(it) ? get(it) : set(it, {});\n};\n\nvar getterFor = function (TYPE) {\n return function (it) {\n var state;\n if (!isObject(it) || (state = get(it)).type !== TYPE) {\n throw TypeError('Incompatible receiver, ' + TYPE + ' required');\n } return state;\n };\n};\n\nif (NATIVE_WEAK_MAP || shared.state) {\n var store = shared.state || (shared.state = new WeakMap());\n var wmget = uncurryThis(store.get);\n var wmhas = uncurryThis(store.has);\n var wmset = uncurryThis(store.set);\n set = function (it, metadata) {\n if (wmhas(store, it)) throw TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n wmset(store, it, metadata);\n return metadata;\n };\n get = function (it) {\n return wmget(store, it) || {};\n };\n has = function (it) {\n return wmhas(store, it);\n };\n} else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set = function (it, metadata) {\n if (hasOwn(it, STATE)) throw TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n get = function (it) {\n return hasOwn(it, STATE) ? it[STATE] : {};\n };\n has = function (it) {\n return hasOwn(it, STATE);\n };\n}\n\nmodule.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = DESCRIPTORS ? function (object, key, value) {\n return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","module.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","/* global ActiveXObject -- old IE, WSH */\nvar anObject = require('../internals/an-object');\nvar definePropertiesModule = require('../internals/object-define-properties');\nvar enumBugKeys = require('../internals/enum-bug-keys');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar html = require('../internals/html');\nvar documentCreateElement = require('../internals/document-create-element');\nvar sharedKey = require('../internals/shared-key');\n\nvar GT = '>';\nvar LT = '<';\nvar PROTOTYPE = 'prototype';\nvar SCRIPT = 'script';\nvar IE_PROTO = sharedKey('IE_PROTO');\n\nvar EmptyConstructor = function () { /* empty */ };\n\nvar scriptTag = function (content) {\n return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;\n};\n\n// Create object with fake `null` prototype: use ActiveX Object with cleared prototype\nvar NullProtoObjectViaActiveX = function (activeXDocument) {\n activeXDocument.write(scriptTag(''));\n activeXDocument.close();\n var temp = activeXDocument.parentWindow.Object;\n activeXDocument = null; // avoid memory leak\n return temp;\n};\n\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\nvar NullProtoObjectViaIFrame = function () {\n // Thrash, waste and sodomy: IE GC bug\n var iframe = documentCreateElement('iframe');\n var JS = 'java' + SCRIPT + ':';\n var iframeDocument;\n iframe.style.display = 'none';\n html.appendChild(iframe);\n // https://github.com/zloirock/core-js/issues/475\n iframe.src = String(JS);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(scriptTag('document.F=Object'));\n iframeDocument.close();\n return iframeDocument.F;\n};\n\n// Check for document.domain and active x support\n// No need to use active x approach when document.domain is not set\n// see https://github.com/es-shims/es5-shim/issues/150\n// variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346\n// avoid IE GC bug\nvar activeXDocument;\nvar NullProtoObject = function () {\n try {\n activeXDocument = new ActiveXObject('htmlfile');\n } catch (error) { /* ignore */ }\n NullProtoObject = typeof document != 'undefined'\n ? document.domain && activeXDocument\n ? NullProtoObjectViaActiveX(activeXDocument) // old IE\n : NullProtoObjectViaIFrame()\n : NullProtoObjectViaActiveX(activeXDocument); // WSH\n var length = enumBugKeys.length;\n while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];\n return NullProtoObject();\n};\n\nhiddenKeys[IE_PROTO] = true;\n\n// `Object.create` method\n// https://tc39.es/ecma262/#sec-object.create\n// eslint-disable-next-line es-x/no-object-create -- safe\nmodule.exports = Object.create || function create(O, Properties) {\n var result;\n if (O !== null) {\n EmptyConstructor[PROTOTYPE] = anObject(O);\n result = new EmptyConstructor();\n EmptyConstructor[PROTOTYPE] = null;\n // add \"__proto__\" for Object.getPrototypeOf polyfill\n result[IE_PROTO] = O;\n } else result = NullProtoObject();\n return Properties === undefined ? result : definePropertiesModule.f(result, Properties);\n};\n","var TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar isCallable = require('../internals/is-callable');\nvar classofRaw = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar $Object = Object;\n\n// ES3 wrong here\nvar CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) == 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (error) { /* empty */ }\n};\n\n// getting tag from ES6+ `Object.prototype.toString`\nmodule.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {\n var O, tag, result;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (tag = tryGet(O = $Object(it), TO_STRING_TAG)) == 'string' ? tag\n // builtinTag case\n : CORRECT_ARGUMENTS ? classofRaw(O)\n // ES3 arguments fallback\n : (result = classofRaw(O)) == 'Object' && isCallable(O.callee) ? 'Arguments' : result;\n};\n","var uncurryThis = require('../internals/function-uncurry-this');\n\nvar toString = uncurryThis({}.toString);\nvar stringSlice = uncurryThis(''.slice);\n\nmodule.exports = function (it) {\n return stringSlice(toString(it), 8, -1);\n};\n","var fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es-x/no-function-prototype-bind -- safe\n var test = (function () { /* empty */ }).bind();\n // eslint-disable-next-line no-prototype-builtins -- safe\n return typeof test != 'function' || test.hasOwnProperty('prototype');\n});\n","var isNullOrUndefined = require('../internals/is-null-or-undefined');\n\nvar $TypeError = TypeError;\n\n// `RequireObjectCoercible` abstract operation\n// https://tc39.es/ecma262/#sec-requireobjectcoercible\nmodule.exports = function (it) {\n if (isNullOrUndefined(it)) throw $TypeError(\"Can't call method on \" + it);\n return it;\n};\n","// we can't use just `it == null` since of `document.all` special case\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot-aec\nmodule.exports = function (it) {\n return it === null || it === undefined;\n};\n","var toPrimitive = require('../internals/to-primitive');\nvar isSymbol = require('../internals/is-symbol');\n\n// `ToPropertyKey` abstract operation\n// https://tc39.es/ecma262/#sec-topropertykey\nmodule.exports = function (argument) {\n var key = toPrimitive(argument, 'string');\n return isSymbol(key) ? key : key + '';\n};\n","var getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar $Object = Object;\n\nmodule.exports = USE_SYMBOL_AS_UID ? function (it) {\n return typeof it == 'symbol';\n} : function (it) {\n var $Symbol = getBuiltIn('Symbol');\n return isCallable($Symbol) && isPrototypeOf($Symbol.prototype, $Object(it));\n};\n","var uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis({}.isPrototypeOf);\n","var shared = require('../internals/shared');\nvar uid = require('../internals/uid');\n\nvar keys = shared('keys');\n\nmodule.exports = function (key) {\n return keys[key] || (keys[key] = uid(key));\n};\n","module.exports = {};\n","var toLength = require('../internals/to-length');\n\n// `LengthOfArrayLike` abstract operation\n// https://tc39.es/ecma262/#sec-lengthofarraylike\nmodule.exports = function (obj) {\n return toLength(obj.length);\n};\n","// eslint-disable-next-line es-x/no-object-getownpropertysymbols -- safe\nexports.f = Object.getOwnPropertySymbols;\n","var defineProperty = require('../internals/object-define-property').f;\nvar hasOwn = require('../internals/has-own-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\n\nmodule.exports = function (target, TAG, STATIC) {\n if (target && !STATIC) target = target.prototype;\n if (target && !hasOwn(target, TO_STRING_TAG)) {\n defineProperty(target, TO_STRING_TAG, { configurable: true, value: TAG });\n }\n};\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar addToUnscopables = require('../internals/add-to-unscopables');\nvar Iterators = require('../internals/iterators');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineProperty = require('../internals/object-define-property').f;\nvar defineIterator = require('../internals/iterator-define');\nvar IS_PURE = require('../internals/is-pure');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar ARRAY_ITERATOR = 'Array Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(ARRAY_ITERATOR);\n\n// `Array.prototype.entries` method\n// https://tc39.es/ecma262/#sec-array.prototype.entries\n// `Array.prototype.keys` method\n// https://tc39.es/ecma262/#sec-array.prototype.keys\n// `Array.prototype.values` method\n// https://tc39.es/ecma262/#sec-array.prototype.values\n// `Array.prototype[@@iterator]` method\n// https://tc39.es/ecma262/#sec-array.prototype-@@iterator\n// `CreateArrayIterator` internal method\n// https://tc39.es/ecma262/#sec-createarrayiterator\nmodule.exports = defineIterator(Array, 'Array', function (iterated, kind) {\n setInternalState(this, {\n type: ARRAY_ITERATOR,\n target: toIndexedObject(iterated), // target\n index: 0, // next index\n kind: kind // kind\n });\n// `%ArrayIteratorPrototype%.next` method\n// https://tc39.es/ecma262/#sec-%arrayiteratorprototype%.next\n}, function () {\n var state = getInternalState(this);\n var target = state.target;\n var kind = state.kind;\n var index = state.index++;\n if (!target || index >= target.length) {\n state.target = undefined;\n return { value: undefined, done: true };\n }\n if (kind == 'keys') return { value: index, done: false };\n if (kind == 'values') return { value: target[index], done: false };\n return { value: [index, target[index]], done: false };\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values%\n// https://tc39.es/ecma262/#sec-createunmappedargumentsobject\n// https://tc39.es/ecma262/#sec-createmappedargumentsobject\nvar values = Iterators.Arguments = Iterators.Array;\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n\n// V8 ~ Chrome 45- bug\nif (!IS_PURE && DESCRIPTORS && values.name !== 'values') try {\n defineProperty(values, 'name', { value: 'values' });\n} catch (error) { /* empty */ }\n","module.exports = {};\n","var TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar toString = require('../internals/object-to-string');\n\n// `Object.prototype.toString` method\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nif (!TO_STRING_TAG_SUPPORT) {\n defineBuiltIn(Object.prototype, 'toString', toString, { unsafe: true });\n}\n","var wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar test = {};\n\ntest[TO_STRING_TAG] = 'z';\n\nmodule.exports = String(test) === '[object z]';\n","var global = require('../internals/global');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || defineGlobalProperty(SHARED, {});\n\nmodule.exports = store;\n","var global = require('../internals/global');\n\n// eslint-disable-next-line es-x/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\n\nmodule.exports = function (key, value) {\n try {\n defineProperty(global, key, { value: value, configurable: true, writable: true });\n } catch (error) {\n global[key] = value;\n } return value;\n};\n","var uncurryThis = require('../internals/function-uncurry-this');\n\nvar id = 0;\nvar postfix = Math.random();\nvar toString = uncurryThis(1.0.toString);\n\nmodule.exports = function (key) {\n return 'Symbol(' + (key === undefined ? '' : key) + ')_' + toString(++id + postfix, 36);\n};\n","var global = require('../internals/global');\nvar userAgent = require('../internals/engine-user-agent');\n\nvar process = global.process;\nvar Deno = global.Deno;\nvar versions = process && process.versions || Deno && Deno.version;\nvar v8 = versions && versions.v8;\nvar match, version;\n\nif (v8) {\n match = v8.split('.');\n // in old Chrome, versions of V8 isn't V8 = Chrome / 10\n // but their correct versions are not interesting for us\n version = match[0] > 0 && match[0] < 4 ? 1 : +(match[0] + match[1]);\n}\n\n// BrowserFS NodeJS `process` polyfill incorrectly set `.v8` to `0.0`\n// so check `userAgent` even if `.v8` exists, but 0\nif (!version && userAgent) {\n match = userAgent.match(/Edge\\/(\\d+)/);\n if (!match || match[1] >= 74) {\n match = userAgent.match(/Chrome\\/(\\d+)/);\n if (match) version = +match[1];\n }\n}\n\nmodule.exports = version;\n","var global = require('../internals/global');\nvar isObject = require('../internals/is-object');\n\nvar document = global.document;\n// typeof document.createElement is 'object' in old IE\nvar EXISTS = isObject(document) && isObject(document.createElement);\n\nmodule.exports = function (it) {\n return EXISTS ? document.createElement(it) : {};\n};\n","var aCallable = require('../internals/a-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\n// `GetMethod` abstract operation\n// https://tc39.es/ecma262/#sec-getmethod\nmodule.exports = function (V, P) {\n var func = V[P];\n return isNullOrUndefined(func) ? undefined : aCallable(func);\n};\n","var isCallable = require('../internals/is-callable');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsCallable(argument) is true`\nmodule.exports = function (argument) {\n if (isCallable(argument)) return argument;\n throw $TypeError(tryToString(argument) + ' is not a function');\n};\n","var $String = String;\n\nmodule.exports = function (argument) {\n try {\n return $String(argument);\n } catch (error) {\n return 'Object';\n }\n};\n","var uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\n\nvar $Object = Object;\nvar split = uncurryThis(''.split);\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nmodule.exports = fails(function () {\n // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346\n // eslint-disable-next-line no-prototype-builtins -- safe\n return !$Object('z').propertyIsEnumerable(0);\n}) ? function (it) {\n return classof(it) == 'String' ? split(it, '') : $Object(it);\n} : $Object;\n","var trunc = require('../internals/math-trunc');\n\n// `ToIntegerOrInfinity` abstract operation\n// https://tc39.es/ecma262/#sec-tointegerorinfinity\nmodule.exports = function (argument) {\n var number = +argument;\n // eslint-disable-next-line no-self-compare -- NaN check\n return number !== number || number === 0 ? 0 : trunc(number);\n};\n","var classof = require('../internals/classof-raw');\n\n// `IsArray` abstract operation\n// https://tc39.es/ecma262/#sec-isarray\n// eslint-disable-next-line es-x/no-array-isarray -- safe\nmodule.exports = Array.isArray || function isArray(argument) {\n return classof(argument) == 'Array';\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar call = require('../internals/function-call');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPropertyKey = require('../internals/to-property-key');\nvar hasOwn = require('../internals/has-own-property');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\n\n// eslint-disable-next-line es-x/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor\nexports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPropertyKey(P);\n if (IE8_DOM_DEFINE) try {\n return $getOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (hasOwn(O, P)) return createPropertyDescriptor(!call(propertyIsEnumerableModule.f, O, P), O[P]);\n};\n","'use strict';\nvar $propertyIsEnumerable = {}.propertyIsEnumerable;\n// eslint-disable-next-line es-x/no-object-getownpropertydescriptor -- safe\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Nashorn ~ JDK8 bug\nvar NASHORN_BUG = getOwnPropertyDescriptor && !$propertyIsEnumerable.call({ 1: 2 }, 1);\n\n// `Object.prototype.propertyIsEnumerable` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable\nexports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = getOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n} : $propertyIsEnumerable;\n","var internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\nvar hiddenKeys = enumBugKeys.concat('length', 'prototype');\n\n// `Object.getOwnPropertyNames` method\n// https://tc39.es/ecma262/#sec-object.getownpropertynames\n// eslint-disable-next-line es-x/no-object-getownpropertynames -- safe\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n","// IE8- don't enum bug keys\nmodule.exports = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n","var internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\n// eslint-disable-next-line es-x/no-object-keys -- safe\nmodule.exports = Object.keys || function keys(O) {\n return internalObjectKeys(O, enumBugKeys);\n};\n","'use strict';\n/* eslint-disable regexp/no-empty-capturing-group, regexp/no-empty-group, regexp/no-lazy-ends -- testing */\n/* eslint-disable regexp/no-useless-quantifier -- testing */\nvar call = require('../internals/function-call');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toString = require('../internals/to-string');\nvar regexpFlags = require('../internals/regexp-flags');\nvar stickyHelpers = require('../internals/regexp-sticky-helpers');\nvar shared = require('../internals/shared');\nvar create = require('../internals/object-create');\nvar getInternalState = require('../internals/internal-state').get;\nvar UNSUPPORTED_DOT_ALL = require('../internals/regexp-unsupported-dot-all');\nvar UNSUPPORTED_NCG = require('../internals/regexp-unsupported-ncg');\n\nvar nativeReplace = shared('native-string-replace', String.prototype.replace);\nvar nativeExec = RegExp.prototype.exec;\nvar patchedExec = nativeExec;\nvar charAt = uncurryThis(''.charAt);\nvar indexOf = uncurryThis(''.indexOf);\nvar replace = uncurryThis(''.replace);\nvar stringSlice = uncurryThis(''.slice);\n\nvar UPDATES_LAST_INDEX_WRONG = (function () {\n var re1 = /a/;\n var re2 = /b*/g;\n call(nativeExec, re1, 'a');\n call(nativeExec, re2, 'a');\n return re1.lastIndex !== 0 || re2.lastIndex !== 0;\n})();\n\nvar UNSUPPORTED_Y = stickyHelpers.BROKEN_CARET;\n\n// nonparticipating capturing group, copied from es5-shim's String#split patch.\nvar NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;\n\nvar PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED || UNSUPPORTED_Y || UNSUPPORTED_DOT_ALL || UNSUPPORTED_NCG;\n\nif (PATCH) {\n patchedExec = function exec(string) {\n var re = this;\n var state = getInternalState(re);\n var str = toString(string);\n var raw = state.raw;\n var result, reCopy, lastIndex, match, i, object, group;\n\n if (raw) {\n raw.lastIndex = re.lastIndex;\n result = call(patchedExec, raw, str);\n re.lastIndex = raw.lastIndex;\n return result;\n }\n\n var groups = state.groups;\n var sticky = UNSUPPORTED_Y && re.sticky;\n var flags = call(regexpFlags, re);\n var source = re.source;\n var charsAdded = 0;\n var strCopy = str;\n\n if (sticky) {\n flags = replace(flags, 'y', '');\n if (indexOf(flags, 'g') === -1) {\n flags += 'g';\n }\n\n strCopy = stringSlice(str, re.lastIndex);\n // Support anchored sticky behavior.\n if (re.lastIndex > 0 && (!re.multiline || re.multiline && charAt(str, re.lastIndex - 1) !== '\\n')) {\n source = '(?: ' + source + ')';\n strCopy = ' ' + strCopy;\n charsAdded++;\n }\n // ^(? + rx + ) is needed, in combination with some str slicing, to\n // simulate the 'y' flag.\n reCopy = new RegExp('^(?:' + source + ')', flags);\n }\n\n if (NPCG_INCLUDED) {\n reCopy = new RegExp('^' + source + '$(?!\\\\s)', flags);\n }\n if (UPDATES_LAST_INDEX_WRONG) lastIndex = re.lastIndex;\n\n match = call(nativeExec, sticky ? reCopy : re, strCopy);\n\n if (sticky) {\n if (match) {\n match.input = stringSlice(match.input, charsAdded);\n match[0] = stringSlice(match[0], charsAdded);\n match.index = re.lastIndex;\n re.lastIndex += match[0].length;\n } else re.lastIndex = 0;\n } else if (UPDATES_LAST_INDEX_WRONG && match) {\n re.lastIndex = re.global ? match.index + match[0].length : lastIndex;\n }\n if (NPCG_INCLUDED && match && match.length > 1) {\n // Fix browsers whose `exec` methods don't consistently return `undefined`\n // for NPCG, like IE8. NOTE: This doesn't work for /(.?)?/\n call(nativeReplace, match[0], reCopy, function () {\n for (i = 1; i < arguments.length - 2; i++) {\n if (arguments[i] === undefined) match[i] = undefined;\n }\n });\n }\n\n if (match && groups) {\n match.groups = object = create(null);\n for (i = 0; i < groups.length; i++) {\n group = groups[i];\n object[group[0]] = match[group[1]];\n }\n }\n\n return match;\n };\n}\n\nmodule.exports = patchedExec;\n","var g;\n\n// This works in non-strict mode\ng = (function() {\n\treturn this;\n})();\n\ntry {\n\t// This works if eval is allowed (see CSP)\n\tg = g || new Function(\"return this\")();\n} catch (e) {\n\t// This works if the window reference is available\n\tif (typeof window === \"object\") g = window;\n}\n\n// g can still be undefined, but nothing to do about it...\n// We return undefined, instead of nothing here, so it's\n// easier to handle this case. if(!global) { ...}\n\nmodule.exports = g;\n","/* eslint-disable es-x/no-symbol -- required for testing */\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\n\nmodule.exports = NATIVE_SYMBOL\n && !Symbol.sham\n && typeof Symbol.iterator == 'symbol';\n","var DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar createElement = require('../internals/document-create-element');\n\n// Thanks to IE8 for its funny defineProperty\nmodule.exports = !DESCRIPTORS && !fails(function () {\n // eslint-disable-next-line es-x/no-object-defineproperty -- required for testing\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () { return 7; }\n }).a != 7;\n});\n","var DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\n\n// V8 ~ Chrome 36-\n// https://bugs.chromium.org/p/v8/issues/detail?id=3334\nmodule.exports = DESCRIPTORS && fails(function () {\n // eslint-disable-next-line es-x/no-object-defineproperty -- required for testing\n return Object.defineProperty(function () { /* empty */ }, 'prototype', {\n value: 42,\n writable: false\n }).prototype != 42;\n});\n","var DESCRIPTORS = require('../internals/descriptors');\nvar hasOwn = require('../internals/has-own-property');\n\nvar FunctionPrototype = Function.prototype;\n// eslint-disable-next-line es-x/no-object-getownpropertydescriptor -- safe\nvar getDescriptor = DESCRIPTORS && Object.getOwnPropertyDescriptor;\n\nvar EXISTS = hasOwn(FunctionPrototype, 'name');\n// additional protection from minified / mangled / dropped function names\nvar PROPER = EXISTS && (function something() { /* empty */ }).name === 'something';\nvar CONFIGURABLE = EXISTS && (!DESCRIPTORS || (DESCRIPTORS && getDescriptor(FunctionPrototype, 'name').configurable));\n\nmodule.exports = {\n EXISTS: EXISTS,\n PROPER: PROPER,\n CONFIGURABLE: CONFIGURABLE\n};\n","var uncurryThis = require('../internals/function-uncurry-this');\nvar isCallable = require('../internals/is-callable');\nvar store = require('../internals/shared-store');\n\nvar functionToString = uncurryThis(Function.toString);\n\n// this helper broken in `core-js@3.4.1-3.4.4`, so we can't use `shared` helper\nif (!isCallable(store.inspectSource)) {\n store.inspectSource = function (it) {\n return functionToString(it);\n };\n}\n\nmodule.exports = store.inspectSource;\n","// iterable DOM collections\n// flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods\nmodule.exports = {\n CSSRuleList: 0,\n CSSStyleDeclaration: 0,\n CSSValueList: 0,\n ClientRectList: 0,\n DOMRectList: 0,\n DOMStringList: 0,\n DOMTokenList: 1,\n DataTransferItemList: 0,\n FileList: 0,\n HTMLAllCollection: 0,\n HTMLCollection: 0,\n HTMLFormElement: 0,\n HTMLSelectElement: 0,\n MediaList: 0,\n MimeTypeArray: 0,\n NamedNodeMap: 0,\n NodeList: 1,\n PaintRequestList: 0,\n Plugin: 0,\n PluginArray: 0,\n SVGLengthList: 0,\n SVGNumberList: 0,\n SVGPathSegList: 0,\n SVGPointList: 0,\n SVGStringList: 0,\n SVGTransformList: 0,\n SourceBufferList: 0,\n StyleSheetList: 0,\n TextTrackCueList: 0,\n TextTrackList: 0,\n TouchList: 0\n};\n","// in old WebKit versions, `element.classList` is not an instance of global `DOMTokenList`\nvar documentCreateElement = require('../internals/document-create-element');\n\nvar classList = documentCreateElement('span').classList;\nvar DOMTokenListPrototype = classList && classList.constructor && classList.constructor.prototype;\n\nmodule.exports = DOMTokenListPrototype === Object.prototype ? undefined : DOMTokenListPrototype;\n","var bind = require('../internals/function-bind-context');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar IndexedObject = require('../internals/indexed-object');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar arraySpeciesCreate = require('../internals/array-species-create');\n\nvar push = uncurryThis([].push);\n\n// `Array.prototype.{ forEach, map, filter, some, every, find, findIndex, filterReject }` methods implementation\nvar createMethod = function (TYPE) {\n var IS_MAP = TYPE == 1;\n var IS_FILTER = TYPE == 2;\n var IS_SOME = TYPE == 3;\n var IS_EVERY = TYPE == 4;\n var IS_FIND_INDEX = TYPE == 6;\n var IS_FILTER_REJECT = TYPE == 7;\n var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;\n return function ($this, callbackfn, that, specificCreate) {\n var O = toObject($this);\n var self = IndexedObject(O);\n var boundFunction = bind(callbackfn, that);\n var length = lengthOfArrayLike(self);\n var index = 0;\n var create = specificCreate || arraySpeciesCreate;\n var target = IS_MAP ? create($this, length) : IS_FILTER || IS_FILTER_REJECT ? create($this, 0) : undefined;\n var value, result;\n for (;length > index; index++) if (NO_HOLES || index in self) {\n value = self[index];\n result = boundFunction(value, index, O);\n if (TYPE) {\n if (IS_MAP) target[index] = result; // map\n else if (result) switch (TYPE) {\n case 3: return true; // some\n case 5: return value; // find\n case 6: return index; // findIndex\n case 2: push(target, value); // filter\n } else switch (TYPE) {\n case 4: return false; // every\n case 7: push(target, value); // filterReject\n }\n }\n }\n return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.forEach` method\n // https://tc39.es/ecma262/#sec-array.prototype.foreach\n forEach: createMethod(0),\n // `Array.prototype.map` method\n // https://tc39.es/ecma262/#sec-array.prototype.map\n map: createMethod(1),\n // `Array.prototype.filter` method\n // https://tc39.es/ecma262/#sec-array.prototype.filter\n filter: createMethod(2),\n // `Array.prototype.some` method\n // https://tc39.es/ecma262/#sec-array.prototype.some\n some: createMethod(3),\n // `Array.prototype.every` method\n // https://tc39.es/ecma262/#sec-array.prototype.every\n every: createMethod(4),\n // `Array.prototype.find` method\n // https://tc39.es/ecma262/#sec-array.prototype.find\n find: createMethod(5),\n // `Array.prototype.findIndex` method\n // https://tc39.es/ecma262/#sec-array.prototype.findIndex\n findIndex: createMethod(6),\n // `Array.prototype.filterReject` method\n // https://github.com/tc39/proposal-array-filtering\n filterReject: createMethod(7)\n};\n","var uncurryThis = require('../internals/function-uncurry-this');\nvar aCallable = require('../internals/a-callable');\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar bind = uncurryThis(uncurryThis.bind);\n\n// optional / simple context binding\nmodule.exports = function (fn, that) {\n aCallable(fn);\n return that === undefined ? fn : NATIVE_BIND ? bind(fn, that) : function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","var arraySpeciesConstructor = require('../internals/array-species-constructor');\n\n// `ArraySpeciesCreate` abstract operation\n// https://tc39.es/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray, length) {\n return new (arraySpeciesConstructor(originalArray))(length === 0 ? 0 : length);\n};\n","var hasOwn = require('../internals/has-own-property');\nvar ownKeys = require('../internals/own-keys');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\n\nmodule.exports = function (target, source, exceptions) {\n var keys = ownKeys(source);\n var defineProperty = definePropertyModule.f;\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n if (!hasOwn(target, key) && !(exceptions && hasOwn(exceptions, key))) {\n defineProperty(target, key, getOwnPropertyDescriptor(source, key));\n }\n }\n};\n","var uncurryThis = require('../internals/function-uncurry-this');\nvar hasOwn = require('../internals/has-own-property');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar indexOf = require('../internals/array-includes').indexOf;\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar push = uncurryThis([].push);\n\nmodule.exports = function (object, names) {\n var O = toIndexedObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) !hasOwn(hiddenKeys, key) && hasOwn(O, key) && push(result, key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (hasOwn(O, key = names[i++])) {\n ~indexOf(result, key) || push(result, key);\n }\n return result;\n};\n","var toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar max = Math.max;\nvar min = Math.min;\n\n// Helper for a popular repeating case of the spec:\n// Let integer be ? ToInteger(index).\n// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).\nmodule.exports = function (index, length) {\n var integer = toIntegerOrInfinity(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n};\n","'use strict';\nvar toPropertyKey = require('../internals/to-property-key');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = function (object, key, value) {\n var propertyKey = toPropertyKey(key);\n if (propertyKey in object) definePropertyModule.f(object, propertyKey, createPropertyDescriptor(0, value));\n else object[propertyKey] = value;\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar definePropertyModule = require('../internals/object-define-property');\nvar anObject = require('../internals/an-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar objectKeys = require('../internals/object-keys');\n\n// `Object.defineProperties` method\n// https://tc39.es/ecma262/#sec-object.defineproperties\n// eslint-disable-next-line es-x/no-object-defineproperties -- safe\nexports.f = DESCRIPTORS && !V8_PROTOTYPE_DEFINE_BUG ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var props = toIndexedObject(Properties);\n var keys = objectKeys(Properties);\n var length = keys.length;\n var index = 0;\n var key;\n while (length > index) definePropertyModule.f(O, key = keys[index++], props[key]);\n return O;\n};\n","var toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar createProperty = require('../internals/create-property');\n\nvar $Array = Array;\nvar max = Math.max;\n\nmodule.exports = function (O, start, end) {\n var length = lengthOfArrayLike(O);\n var k = toAbsoluteIndex(start, length);\n var fin = toAbsoluteIndex(end === undefined ? length : end, length);\n var result = $Array(max(fin - k, 0));\n for (var n = 0; k < fin; k++, n++) createProperty(result, n, O[k]);\n result.length = n;\n return result;\n};\n","var wellKnownSymbol = require('../internals/well-known-symbol');\n\nexports.f = wellKnownSymbol;\n","var path = require('../internals/path');\nvar hasOwn = require('../internals/has-own-property');\nvar wrappedWellKnownSymbolModule = require('../internals/well-known-symbol-wrapped');\nvar defineProperty = require('../internals/object-define-property').f;\n\nmodule.exports = function (NAME) {\n var Symbol = path.Symbol || (path.Symbol = {});\n if (!hasOwn(Symbol, NAME)) defineProperty(Symbol, NAME, {\n value: wrappedWellKnownSymbolModule.f(NAME)\n });\n};\n","var NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\n\n/* eslint-disable es-x/no-symbol -- safe */\nmodule.exports = NATIVE_SYMBOL && !!Symbol['for'] && !!Symbol.keyFor;\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar IS_PURE = require('../internals/is-pure');\nvar FunctionName = require('../internals/function-name');\nvar isCallable = require('../internals/is-callable');\nvar createIteratorConstructor = require('../internals/iterator-create-constructor');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\nvar IteratorsCore = require('../internals/iterators-core');\n\nvar PROPER_FUNCTION_NAME = FunctionName.PROPER;\nvar CONFIGURABLE_FUNCTION_NAME = FunctionName.CONFIGURABLE;\nvar IteratorPrototype = IteratorsCore.IteratorPrototype;\nvar BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS;\nvar ITERATOR = wellKnownSymbol('iterator');\nvar KEYS = 'keys';\nvar VALUES = 'values';\nvar ENTRIES = 'entries';\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) {\n createIteratorConstructor(IteratorConstructor, NAME, next);\n\n var getIterationMethod = function (KIND) {\n if (KIND === DEFAULT && defaultIterator) return defaultIterator;\n if (!BUGGY_SAFARI_ITERATORS && KIND in IterablePrototype) return IterablePrototype[KIND];\n switch (KIND) {\n case KEYS: return function keys() { return new IteratorConstructor(this, KIND); };\n case VALUES: return function values() { return new IteratorConstructor(this, KIND); };\n case ENTRIES: return function entries() { return new IteratorConstructor(this, KIND); };\n } return function () { return new IteratorConstructor(this); };\n };\n\n var TO_STRING_TAG = NAME + ' Iterator';\n var INCORRECT_VALUES_NAME = false;\n var IterablePrototype = Iterable.prototype;\n var nativeIterator = IterablePrototype[ITERATOR]\n || IterablePrototype['@@iterator']\n || DEFAULT && IterablePrototype[DEFAULT];\n var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT);\n var anyNativeIterator = NAME == 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator;\n var CurrentIteratorPrototype, methods, KEY;\n\n // fix native\n if (anyNativeIterator) {\n CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable()));\n if (CurrentIteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) {\n if (!IS_PURE && getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) {\n if (setPrototypeOf) {\n setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype);\n } else if (!isCallable(CurrentIteratorPrototype[ITERATOR])) {\n defineBuiltIn(CurrentIteratorPrototype, ITERATOR, returnThis);\n }\n }\n // Set @@toStringTag to native iterators\n setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true);\n if (IS_PURE) Iterators[TO_STRING_TAG] = returnThis;\n }\n }\n\n // fix Array.prototype.{ values, @@iterator }.name in V8 / FF\n if (PROPER_FUNCTION_NAME && DEFAULT == VALUES && nativeIterator && nativeIterator.name !== VALUES) {\n if (!IS_PURE && CONFIGURABLE_FUNCTION_NAME) {\n createNonEnumerableProperty(IterablePrototype, 'name', VALUES);\n } else {\n INCORRECT_VALUES_NAME = true;\n defaultIterator = function values() { return call(nativeIterator, this); };\n }\n }\n\n // export additional methods\n if (DEFAULT) {\n methods = {\n values: getIterationMethod(VALUES),\n keys: IS_SET ? defaultIterator : getIterationMethod(KEYS),\n entries: getIterationMethod(ENTRIES)\n };\n if (FORCED) for (KEY in methods) {\n if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {\n defineBuiltIn(IterablePrototype, KEY, methods[KEY]);\n }\n } else $({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods);\n }\n\n // define iterator\n if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) {\n defineBuiltIn(IterablePrototype, ITERATOR, defaultIterator, { name: DEFAULT });\n }\n Iterators[NAME] = defaultIterator;\n\n return methods;\n};\n","'use strict';\nvar IteratorPrototype = require('../internals/iterators-core').IteratorPrototype;\nvar create = require('../internals/object-create');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar Iterators = require('../internals/iterators');\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (IteratorConstructor, NAME, next, ENUMERABLE_NEXT) {\n var TO_STRING_TAG = NAME + ' Iterator';\n IteratorConstructor.prototype = create(IteratorPrototype, { next: createPropertyDescriptor(+!ENUMERABLE_NEXT, next) });\n setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true);\n Iterators[TO_STRING_TAG] = returnThis;\n return IteratorConstructor;\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar create = require('../internals/object-create');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar BUGGY_SAFARI_ITERATORS = false;\n\n// `%IteratorPrototype%` object\n// https://tc39.es/ecma262/#sec-%iteratorprototype%-object\nvar IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator;\n\n/* eslint-disable es-x/no-array-prototype-keys -- safe */\nif ([].keys) {\n arrayIterator = [].keys();\n // Safari 8 has buggy iterators w/o `next`\n if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS = true;\n else {\n PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator));\n if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype;\n }\n}\n\nvar NEW_ITERATOR_PROTOTYPE = !isObject(IteratorPrototype) || fails(function () {\n var test = {};\n // FF44- legacy iterators case\n return IteratorPrototype[ITERATOR].call(test) !== test;\n});\n\nif (NEW_ITERATOR_PROTOTYPE) IteratorPrototype = {};\nelse if (IS_PURE) IteratorPrototype = create(IteratorPrototype);\n\n// `%IteratorPrototype%[@@iterator]()` method\n// https://tc39.es/ecma262/#sec-%iteratorprototype%-@@iterator\nif (!isCallable(IteratorPrototype[ITERATOR])) {\n defineBuiltIn(IteratorPrototype, ITERATOR, function () {\n return this;\n });\n}\n\nmodule.exports = {\n IteratorPrototype: IteratorPrototype,\n BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS\n};\n","var hasOwn = require('../internals/has-own-property');\nvar isCallable = require('../internals/is-callable');\nvar toObject = require('../internals/to-object');\nvar sharedKey = require('../internals/shared-key');\nvar CORRECT_PROTOTYPE_GETTER = require('../internals/correct-prototype-getter');\n\nvar IE_PROTO = sharedKey('IE_PROTO');\nvar $Object = Object;\nvar ObjectPrototype = $Object.prototype;\n\n// `Object.getPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.getprototypeof\n// eslint-disable-next-line es-x/no-object-getprototypeof -- safe\nmodule.exports = CORRECT_PROTOTYPE_GETTER ? $Object.getPrototypeOf : function (O) {\n var object = toObject(O);\n if (hasOwn(object, IE_PROTO)) return object[IE_PROTO];\n var constructor = object.constructor;\n if (isCallable(constructor) && object instanceof constructor) {\n return constructor.prototype;\n } return object instanceof $Object ? ObjectPrototype : null;\n};\n","'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\nvar toString = require('../internals/to-string');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineIterator = require('../internals/iterator-define');\n\nvar STRING_ITERATOR = 'String Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(STRING_ITERATOR);\n\n// `String.prototype[@@iterator]` method\n// https://tc39.es/ecma262/#sec-string.prototype-@@iterator\ndefineIterator(String, 'String', function (iterated) {\n setInternalState(this, {\n type: STRING_ITERATOR,\n string: toString(iterated),\n index: 0\n });\n// `%StringIteratorPrototype%.next` method\n// https://tc39.es/ecma262/#sec-%stringiteratorprototype%.next\n}, function next() {\n var state = getInternalState(this);\n var string = state.string;\n var index = state.index;\n var point;\n if (index >= string.length) return { value: undefined, done: true };\n point = charAt(string, index);\n state.index += point.length;\n return { value: point, done: false };\n});\n","var global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar DOMTokenListPrototype = require('../internals/dom-token-list-prototype');\nvar ArrayIteratorMethods = require('../modules/es.array.iterator');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar ArrayValues = ArrayIteratorMethods.values;\n\nvar handlePrototype = function (CollectionPrototype, COLLECTION_NAME) {\n if (CollectionPrototype) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[ITERATOR] !== ArrayValues) try {\n createNonEnumerableProperty(CollectionPrototype, ITERATOR, ArrayValues);\n } catch (error) {\n CollectionPrototype[ITERATOR] = ArrayValues;\n }\n if (!CollectionPrototype[TO_STRING_TAG]) {\n createNonEnumerableProperty(CollectionPrototype, TO_STRING_TAG, COLLECTION_NAME);\n }\n if (DOMIterables[COLLECTION_NAME]) for (var METHOD_NAME in ArrayIteratorMethods) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[METHOD_NAME] !== ArrayIteratorMethods[METHOD_NAME]) try {\n createNonEnumerableProperty(CollectionPrototype, METHOD_NAME, ArrayIteratorMethods[METHOD_NAME]);\n } catch (error) {\n CollectionPrototype[METHOD_NAME] = ArrayIteratorMethods[METHOD_NAME];\n }\n }\n }\n};\n\nfor (var COLLECTION_NAME in DOMIterables) {\n handlePrototype(global[COLLECTION_NAME] && global[COLLECTION_NAME].prototype, COLLECTION_NAME);\n}\n\nhandlePrototype(DOMTokenListPrototype, 'DOMTokenList');\n","var classof = require('../internals/classof');\nvar getMethod = require('../internals/get-method');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar Iterators = require('../internals/iterators');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\n\nmodule.exports = function (it) {\n if (!isNullOrUndefined(it)) return getMethod(it, ITERATOR)\n || getMethod(it, '@@iterator')\n || Iterators[classof(it)];\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar exec = require('../internals/regexp-exec');\n\n// `RegExp.prototype.exec` method\n// https://tc39.es/ecma262/#sec-regexp.prototype.exec\n$({ target: 'RegExp', proto: true, forced: /./.exec !== exec }, {\n exec: exec\n});\n","export function isInsideIFrame() {\r\n return window.self !== window.top;\r\n}\r\n//# sourceMappingURL=iframe.js.map","export var LogLevel;\r\n(function (LogLevel) {\r\n LogLevel[LogLevel[\"Debug\"] = 1] = \"Debug\";\r\n LogLevel[LogLevel[\"Info\"] = 2] = \"Info\";\r\n LogLevel[LogLevel[\"Warn\"] = 3] = \"Warn\";\r\n LogLevel[LogLevel[\"Error\"] = 4] = \"Error\";\r\n})(LogLevel || (LogLevel = {}));\r\nlet Logger = /** @class */ (() => {\r\n class Logger {\r\n static setLogLevel(level) {\r\n Logger.logLevel = level;\r\n }\r\n static error(...args) {\r\n if (Logger.logLevel <= LogLevel.Error) {\r\n console.error('[KSL][Error]: ', ...args);\r\n }\r\n }\r\n static warn(...args) {\r\n if (Logger.logLevel <= LogLevel.Warn) {\r\n console.warn('[KSL][Warning]: ', ...args);\r\n }\r\n }\r\n static info(...args) {\r\n if (Logger.logLevel <= LogLevel.Info) {\r\n console.info('[KSL][Info]: ', ...args);\r\n }\r\n }\r\n static debug(...args) {\r\n if (Logger.logLevel <= LogLevel.Debug) {\r\n console.log(...args);\r\n }\r\n }\r\n static debugGroupCollapsed(...args) {\r\n if (Logger.logLevel <= LogLevel.Debug) {\r\n console.groupCollapsed(...args);\r\n }\r\n }\r\n static debugGroup(...args) {\r\n if (Logger.logLevel <= LogLevel.Debug) {\r\n console.group(...args);\r\n }\r\n }\r\n static debugGroupEnd() {\r\n if (Logger.logLevel <= LogLevel.Debug) {\r\n console.groupEnd();\r\n }\r\n }\r\n }\r\n Logger.logLevel = LogLevel.Info;\r\n return Logger;\r\n})();\r\nexport { Logger };\r\n//# sourceMappingURL=Logger.js.map","import { AssertionError } from './errors';\r\nimport { Logger } from '../lib/Logger';\r\nexport function assert(condition, message) {\r\n if (!condition) {\r\n const error = AssertionError(message);\r\n Logger.error(error);\r\n throw error;\r\n }\r\n}\r\n//# sourceMappingURL=assert.js.map","export function groupElementsByRenderingRoot(elements) {\r\n var _a;\r\n const results = new Map();\r\n for (const element of elements) {\r\n const root = getRenderingRootForElement(element);\r\n const prev = (_a = results.get(root)) !== null && _a !== void 0 ? _a : new Set();\r\n results.set(root, prev.add(element));\r\n }\r\n return results;\r\n}\r\n/**\r\n * Iterate through node ancestors and find an element which will be used as a parent for\r\n * the ksl-container. This element should either be positioned (position is anything except static) or should\r\n * have its content clipped. In case of table element (td, th, table) it should be positioned or it will be ignored\r\n * (even if its content is clipped).\r\n *\r\n * @param {HTMLElement} element\r\n * @returns {HTMLElement | null}\r\n */\r\nexport function getRenderingRootForElement(element) {\r\n const parentElement = element.parentElement;\r\n if (parentElement instanceof HTMLElement) {\r\n const metadata = getRenderingRootMetadata(parentElement);\r\n // Table HTML element (td, th, table) can be an offset parent of some node, but unless it is positioned it will not be\r\n // used as a offset parent for the absolute positioned child (highlight). That is why we should ignore those elements and\r\n // do not use them as parents unless they are positioned. Otherwise, the highlighting might broke for the tables.\r\n const isNotTable = !['TD', 'TH', 'TABLE'].includes(parentElement.tagName);\r\n return metadata.isPositioned || (metadata.isContentClipped && isNotTable)\r\n ? parentElement\r\n : getRenderingRootForElement(parentElement);\r\n }\r\n return null;\r\n}\r\nexport function getRenderingRootMetadata(root) {\r\n const computedStyles = window.getComputedStyle(root);\r\n const position = computedStyles.getPropertyValue('position');\r\n const overflow = computedStyles.getPropertyValue('overflow');\r\n return {\r\n isPositioned: position !== 'static',\r\n isContentClipped: overflow.split(' ').some((value) => ['auto', 'scroll', 'clip', 'hidden'].includes(value)),\r\n };\r\n}\r\n/**\r\n * Iterate through node ancestors until HTMLElement.offsetParent is reached and sum scroll offsets.\r\n *\r\n * @param {HTMLElement | null} node\r\n * @returns {[number, number]}\r\n * where the first number is a totalScrollTop, and the second number is a totalScrollLeft.\r\n */\r\nexport function getTotalScrollOffset(node) {\r\n if (!node) {\r\n return [0, 0];\r\n }\r\n const offsetParent = node.offsetParent;\r\n // HTMLElement.offsetParent can be null when the node is or \r\n if (!offsetParent) {\r\n return [0, 0];\r\n }\r\n let scrollTop = 0;\r\n let scrollLeft = 0;\r\n let currentNode = node;\r\n while (currentNode.parentElement) {\r\n currentNode = currentNode.parentElement;\r\n if (offsetParent && offsetParent.isSameNode(currentNode)) {\r\n break;\r\n }\r\n scrollTop += currentNode.scrollTop;\r\n scrollLeft += currentNode.scrollLeft;\r\n }\r\n return [scrollTop, scrollLeft];\r\n}\r\n/**\r\n * Get all element ancestors.\r\n * @param {HTMLElement} element\r\n */\r\nexport function getElementAncestors(element) {\r\n const ancestors = [];\r\n let parent = element.parentElement;\r\n while (parent !== null) {\r\n ancestors.push(parent);\r\n parent = parent.parentElement;\r\n }\r\n return ancestors;\r\n}\r\nexport function createTemplateForCustomElement(html) {\r\n const template = document.createElement('template');\r\n template.innerHTML = html;\r\n return template;\r\n}\r\n//# sourceMappingURL=node.js.map","import { KSLCustomElement } from './abstract/KSLCustomElement';\r\nimport { assert } from '../utils/assert';\r\nimport { createTemplateForCustomElement } from '../utils/node';\r\nexport var IconName;\r\n(function (IconName) {\r\n IconName[\"CollapseScheme\"] = \"icon-collapse-scheme\";\r\n IconName[\"Edit\"] = \"icon-edit\";\r\n IconName[\"Plus\"] = \"icon-plus\";\r\n IconName[\"PlusPuzzle\"] = \"icon-plus-puzzle\";\r\n IconName[\"Puzzle\"] = \"icon-puzzle\";\r\n IconName[\"Spinner\"] = \"icon-spinner\";\r\n})(IconName || (IconName = {}));\r\nconst iconsHTML = `\r\n \r\n \r\n \r\n \r\n \r\n \r\n`;\r\nconst templateHTML = `\r\n \r\n`;\r\nlet KSLIconElement = /** @class */ (() => {\r\n class KSLIconElement extends KSLCustomElement {\r\n constructor() {\r\n super();\r\n this.getTemplateByIconName = (iconName) => {\r\n if (!iconName) {\r\n return null;\r\n }\r\n const template = KSLIconElement.icons.content.querySelector(`template#${iconName}`);\r\n if (template instanceof HTMLTemplateElement) {\r\n return template;\r\n }\r\n else {\r\n return null;\r\n }\r\n };\r\n this.updateIcon = (iconName) => {\r\n if (!this.shadowRoot) {\r\n return;\r\n }\r\n const template = this.getTemplateByIconName(iconName);\r\n if (template) {\r\n const content = template.content.cloneNode(true);\r\n if (this.iconRef) {\r\n this.shadowRoot.replaceChild(content, this.iconRef);\r\n }\r\n else {\r\n this.shadowRoot.appendChild(content);\r\n }\r\n this.iconRef = this.shadowRoot.lastElementChild;\r\n }\r\n else if (this.iconRef) {\r\n this.iconRef.remove();\r\n this.iconRef = null;\r\n }\r\n };\r\n assert(this.shadowRoot, 'Shadow root must be always accessible in \"open\" mode.');\r\n const name = this.getAttribute('icon-name');\r\n const template = this.getTemplateByIconName(name);\r\n if (template) {\r\n const content = template.content.cloneNode(true);\r\n this.shadowRoot.appendChild(content);\r\n this.iconRef = this.shadowRoot.lastElementChild;\r\n }\r\n else {\r\n this.iconRef = null;\r\n }\r\n }\r\n static get is() {\r\n return 'ksl-icon';\r\n }\r\n static get icons() {\r\n if (!this._icons) {\r\n const template = document.createElement('template');\r\n template.innerHTML = iconsHTML;\r\n this._icons = template;\r\n }\r\n return this._icons;\r\n }\r\n static get observedAttributes() {\r\n return ['icon-name'];\r\n }\r\n get iconName() {\r\n return this.getAttribute('icon-name');\r\n }\r\n set iconName(value) {\r\n this.updateAttribute('icon-name', value);\r\n }\r\n static initializeTemplate() {\r\n return createTemplateForCustomElement(templateHTML);\r\n }\r\n attributeChangedCallback(attributeName, _oldValue, newValue) {\r\n if (attributeName === 'icon-name') {\r\n this.updateIcon(newValue);\r\n }\r\n }\r\n }\r\n KSLIconElement._icons = null;\r\n return KSLIconElement;\r\n})();\r\nexport { KSLIconElement };\r\n//# sourceMappingURL=KSLIconElement.js.map","import { KSLCustomElement } from './KSLCustomElement';\r\nexport var ElementPositionOffset;\r\n(function (ElementPositionOffset) {\r\n ElementPositionOffset[\"Bottom\"] = \"bottom\";\r\n ElementPositionOffset[\"BottomEnd\"] = \"bottom-end\";\r\n ElementPositionOffset[\"BottomStart\"] = \"bottom-start\";\r\n ElementPositionOffset[\"Left\"] = \"left\";\r\n ElementPositionOffset[\"LeftEnd\"] = \"left-end\";\r\n ElementPositionOffset[\"LeftStart\"] = \"left-start\";\r\n ElementPositionOffset[\"None\"] = \"\";\r\n ElementPositionOffset[\"Right\"] = \"right\";\r\n ElementPositionOffset[\"RightEnd\"] = \"right-end\";\r\n ElementPositionOffset[\"RightStart\"] = \"right-start\";\r\n ElementPositionOffset[\"Top\"] = \"top\";\r\n ElementPositionOffset[\"TopEnd\"] = \"top-end\";\r\n ElementPositionOffset[\"TopStart\"] = \"top-start\";\r\n})(ElementPositionOffset || (ElementPositionOffset = {}));\r\nexport class KSLPositionedElement extends KSLCustomElement {\r\n constructor() {\r\n super(...arguments);\r\n this.targetRef = null;\r\n }\r\n get position() {\r\n return ElementPositionOffset.None;\r\n }\r\n connectedCallback() {\r\n if (!this.hasAttribute('tabindex')) {\r\n this.setAttribute('tabindex', '-1');\r\n }\r\n }\r\n disconnectedCallback() {\r\n this.targetRef = null;\r\n }\r\n attachTo(element) {\r\n this.targetRef = element;\r\n }\r\n calculateTopOffset(thisRect, targetRect) {\r\n switch (this.position) {\r\n case ElementPositionOffset.TopStart:\r\n case ElementPositionOffset.Top:\r\n case ElementPositionOffset.TopEnd:\r\n return -thisRect.height;\r\n case ElementPositionOffset.BottomStart:\r\n case ElementPositionOffset.Bottom:\r\n case ElementPositionOffset.BottomEnd:\r\n return targetRect.height;\r\n case ElementPositionOffset.Left:\r\n case ElementPositionOffset.Right:\r\n return (targetRect.height - thisRect.height) / 2;\r\n case ElementPositionOffset.LeftEnd:\r\n case ElementPositionOffset.RightEnd:\r\n return targetRect.height - thisRect.height;\r\n case ElementPositionOffset.LeftStart:\r\n case ElementPositionOffset.RightStart:\r\n case ElementPositionOffset.None:\r\n default:\r\n return 0;\r\n }\r\n }\r\n calculateLeftOffset(thisRect, targetRect) {\r\n switch (this.position) {\r\n case ElementPositionOffset.Top:\r\n case ElementPositionOffset.Bottom:\r\n return (targetRect.width - thisRect.width) / 2;\r\n case ElementPositionOffset.TopEnd:\r\n case ElementPositionOffset.BottomEnd:\r\n return targetRect.width - thisRect.width;\r\n case ElementPositionOffset.LeftStart:\r\n case ElementPositionOffset.Left:\r\n case ElementPositionOffset.LeftEnd:\r\n return -thisRect.width;\r\n case ElementPositionOffset.RightStart:\r\n case ElementPositionOffset.Right:\r\n case ElementPositionOffset.RightEnd:\r\n return targetRect.width;\r\n case ElementPositionOffset.TopStart:\r\n case ElementPositionOffset.BottomStart:\r\n case ElementPositionOffset.None:\r\n default:\r\n return 0;\r\n }\r\n }\r\n}\r\n//# sourceMappingURL=KSLPositionedElement.js.map","export var Colors;\r\n(function (Colors) {\r\n Colors[\"BackgroundDefault\"] = \"rgba(255, 255, 255, 1)\";\r\n Colors[\"BackgroundDefaultDisabled\"] = \"rgba(223, 223, 223, 1)\";\r\n Colors[\"BackgroundDefaultHover\"] = \"rgba(21, 21, 21, 0.1)\";\r\n Colors[\"BackgroundDefaultSelected\"] = \"rgba(255, 240, 239, 1)\";\r\n Colors[\"BackgroundSecondary\"] = \"rgba(20, 22, 25, 1)\";\r\n Colors[\"Primary\"] = \"rgba(219, 60, 0, 1)\";\r\n Colors[\"PrimaryHover\"] = \"rgba(149, 48, 0, 1)\";\r\n Colors[\"PrimaryTransparent\"] = \"rgba(219, 60, 0, 0.5)\";\r\n Colors[\"TextDefault\"] = \"rgba(21, 21, 21, 1)\";\r\n Colors[\"TextDefaultDisabled\"] = \"rgba(140, 140, 140, 1)\";\r\n Colors[\"TextSecondary\"] = \"rgba(255, 255, 255, 1)\";\r\n})(Colors || (Colors = {}));\r\n//# sourceMappingURL=colors.js.map","export var Shadows;\r\n(function (Shadows) {\r\n Shadows[\"Default\"] = \"0 8px 32px rgba(16, 33, 60, 0.24), 0 0 8px rgba(0, 0, 0, 0.03)\";\r\n Shadows[\"Primary\"] = \"0 8px 10px rgba(219, 60, 0, 0.2), 0 6px 20px rgba(219, 60, 0, 0.12), 0 8px 14px rgba(219, 60, 0, 0.14)\";\r\n})(Shadows || (Shadows = {}));\r\n//# sourceMappingURL=shadows.js.map","export const BaseZIndex = 9000;\r\n//# sourceMappingURL=zIndex.js.map","import { ElementPositionOffset, KSLPositionedElement } from './KSLPositionedElement';\r\nimport { createTemplateForCustomElement, getTotalScrollOffset } from '../../utils/node';\r\nimport { Colors } from '../tokens/colors';\r\nimport { Shadows } from '../tokens/shadows';\r\nimport { BaseZIndex } from '../constants/zIndex';\r\nconst templateHTML = `\r\n \r\n
\r\n \r\n
\r\n
\r\n`;\r\nexport class KSLPopUpElement extends KSLPositionedElement {\r\n constructor() {\r\n super(...arguments);\r\n this.attachTo = (element) => {\r\n super.attachTo(element);\r\n this.adjustPosition();\r\n };\r\n this.adjustPosition = () => {\r\n if (!this.targetRef || !this.offsetParent) {\r\n return; // Can't position without target reference or when not mounted to DOM.\r\n }\r\n const thisRect = this.getBoundingClientRect();\r\n const targetRect = this.targetRef.getBoundingClientRect();\r\n const parentRect = this.offsetParent.getBoundingClientRect();\r\n const isOffsetToBody = this.offsetParent.isSameNode(document.body);\r\n const isOffsetToTarget = this.offsetParent.isSameNode(this.targetRef);\r\n const topOffset = this.calculateTopOffset(thisRect, targetRect);\r\n const leftOffset = this.calculateLeftOffset(thisRect, targetRect);\r\n let thisTop;\r\n let thisLeft;\r\n if (isOffsetToTarget) {\r\n thisTop = topOffset;\r\n thisLeft = leftOffset;\r\n }\r\n else {\r\n const [scrollOffsetTop, scrollOffsetLeft] = getTotalScrollOffset(this.parentElement);\r\n thisTop = targetRect.top + topOffset + (isOffsetToBody ? window.pageYOffset : scrollOffsetTop);\r\n thisLeft = targetRect.left + leftOffset + (isOffsetToBody ? window.pageXOffset : scrollOffsetLeft);\r\n }\r\n if (isOffsetToBody) {\r\n if (parentRect.top + thisTop + thisRect.height > window.innerHeight) {\r\n this.style.bottom = parentRect.height + 'px';\r\n this.style.top = 'auto';\r\n }\r\n else {\r\n this.style.bottom = 'auto';\r\n this.style.top = Math.max(-parentRect.top, thisTop) + 'px';\r\n }\r\n if (parentRect.left + thisLeft + thisRect.width > window.innerWidth) {\r\n this.style.right = '0px';\r\n this.style.left = 'auto';\r\n }\r\n else {\r\n this.style.right = 'auto';\r\n this.style.left = Math.max(-parentRect.left, thisLeft) + 'px';\r\n }\r\n }\r\n else {\r\n this.style.right = 'auto';\r\n this.style.left = `${thisLeft}px`;\r\n this.style.bottom = 'auto';\r\n this.style.top = `${thisTop}px`;\r\n }\r\n };\r\n }\r\n get position() {\r\n var _a;\r\n return (_a = this.getAttribute('position')) !== null && _a !== void 0 ? _a : ElementPositionOffset.Bottom;\r\n }\r\n set position(value) {\r\n this.updateAttribute('position', value);\r\n }\r\n get visible() {\r\n return this.hasAttribute('visible');\r\n }\r\n set visible(value) {\r\n this.updateAttribute('visible', value);\r\n }\r\n static initializeTemplate() {\r\n return createTemplateForCustomElement(templateHTML);\r\n }\r\n connectedCallback() {\r\n super.connectedCallback();\r\n if (!this.hasAttribute('role')) {\r\n this.setAttribute('role', 'tooltip');\r\n }\r\n window.addEventListener('resize', this.adjustPosition, { capture: true });\r\n window.addEventListener('scroll', this.adjustPosition, { capture: true });\r\n }\r\n disconnectedCallback() {\r\n super.disconnectedCallback();\r\n window.removeEventListener('resize', this.adjustPosition, { capture: true });\r\n window.removeEventListener('scroll', this.adjustPosition, { capture: true });\r\n }\r\n}\r\n//# sourceMappingURL=KSLPopUpElement.js.map","import { KSLPopUpElement } from './abstract/KSLPopUpElement';\r\nimport { createTemplateForCustomElement } from '../utils/node';\r\nimport { Colors } from './tokens/colors';\r\nconst templateHTML = `\r\n \r\n`;\r\nexport class KSLTooltipElement extends KSLPopUpElement {\r\n static get is() {\r\n return 'ksl-tooltip';\r\n }\r\n static initializeTemplate() {\r\n const baseTemplate = KSLPopUpElement.initializeTemplate();\r\n const thisTemplate = createTemplateForCustomElement(templateHTML);\r\n baseTemplate.content.appendChild(thisTemplate.content.cloneNode(true));\r\n return baseTemplate;\r\n }\r\n}\r\n//# sourceMappingURL=KSLTooltipElement.js.map","import { KSLCustomElement } from './KSLCustomElement';\r\nimport { KSLTooltipElement } from '../KSLTooltipElement';\r\nimport { ElementPositionOffset } from './KSLPositionedElement';\r\nexport class KSLCustomElementWithTooltip extends KSLCustomElement {\r\n constructor() {\r\n super(...arguments);\r\n this.tooltipRef = null;\r\n this.showTooltip = () => {\r\n if (this.tooltipRef) {\r\n this.hideTooltip();\r\n }\r\n if (!this.tooltipMessage || this.tooltipDisabled) {\r\n return;\r\n }\r\n const tooltip = document.createElement(KSLTooltipElement.is);\r\n tooltip.innerText = this.tooltipMessage;\r\n this.tooltipRef = document.body.appendChild(tooltip);\r\n this.tooltipRef.position = this.tooltipPosition;\r\n this.tooltipRef.attachTo(this);\r\n this.tooltipRef.visible = true;\r\n };\r\n this.hideTooltip = () => {\r\n if (this.tooltipRef) {\r\n this.tooltipRef.visible = false;\r\n this.tooltipRef.remove();\r\n this.tooltipRef = null;\r\n }\r\n };\r\n }\r\n static get observedAttributes() {\r\n return ['tooltip-disabled', 'tooltip-message'];\r\n }\r\n get tooltipDisabled() {\r\n return this.hasAttribute('tooltip-disabled');\r\n }\r\n set tooltipDisabled(value) {\r\n this.updateAttribute('tooltip-disabled', value);\r\n }\r\n get tooltipMessage() {\r\n return this.getAttribute('tooltip-message');\r\n }\r\n set tooltipMessage(value) {\r\n this.updateAttribute('tooltip-message', value);\r\n }\r\n get tooltipPosition() {\r\n return this.getAttribute('tooltip-position') || ElementPositionOffset.Bottom;\r\n }\r\n set tooltipPosition(value) {\r\n this.updateAttribute('tooltip-position', value);\r\n }\r\n connectedCallback() {\r\n this.addEventListener('focus', this.showTooltip);\r\n this.addEventListener('mouseenter', this.showTooltip);\r\n this.addEventListener('blur', this.hideTooltip);\r\n this.addEventListener('mouseleave', this.hideTooltip);\r\n }\r\n disconnectedCallback() {\r\n this.hideTooltip();\r\n this.removeEventListener('focus', this.showTooltip);\r\n this.removeEventListener('mouseenter', this.showTooltip);\r\n this.removeEventListener('blur', this.hideTooltip);\r\n this.removeEventListener('mouseleave', this.hideTooltip);\r\n }\r\n attributeChangedCallback(attributeName, _oldValue, newValue) {\r\n if (attributeName === 'tooltip-disabled') {\r\n if (newValue) {\r\n this.hideTooltip();\r\n }\r\n }\r\n else if (attributeName === 'tooltip-message') {\r\n if (!newValue) {\r\n this.hideTooltip();\r\n }\r\n }\r\n }\r\n}\r\n//# sourceMappingURL=KSLCustomElementWithTooltip.js.map","import { IconName } from './KSLIconElement';\r\nimport { assert } from '../utils/assert';\r\nimport { KSLCustomElementWithTooltip } from './abstract/KSLCustomElementWithTooltip';\r\nimport { createTemplateForCustomElement } from '../utils/node';\r\nimport { Colors } from './tokens/colors';\r\nimport { Shadows } from './tokens/shadows';\r\nexport var ButtonType;\r\n(function (ButtonType) {\r\n ButtonType[\"Primary\"] = \"primary\";\r\n ButtonType[\"Quinary\"] = \"quinary\";\r\n})(ButtonType || (ButtonType = {}));\r\nconst templateHTML = `\r\n \r\n \r\n`;\r\nexport class KSLButtonElement extends KSLCustomElementWithTooltip {\r\n constructor() {\r\n super();\r\n this.handleClick = (event) => {\r\n // make sure the disabled button does not trigger events\r\n if (this.disabled) {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n event.stopImmediatePropagation();\r\n }\r\n };\r\n assert(this.shadowRoot, 'Shadow root must be always accessible in \"open\" mode.');\r\n this.buttonRef = this.shadowRoot.querySelector('button');\r\n }\r\n static get is() {\r\n return 'ksl-button';\r\n }\r\n static get observedAttributes() {\r\n const base = KSLCustomElementWithTooltip.observedAttributes;\r\n return [...base, 'loading'];\r\n }\r\n get loading() {\r\n return this.hasAttribute('loading');\r\n }\r\n set loading(value) {\r\n this.updateAttribute('loading', value);\r\n }\r\n get disabled() {\r\n return this.hasAttribute('disabled');\r\n }\r\n set disabled(value) {\r\n this.updateAttribute('disabled', value);\r\n }\r\n static initializeTemplate() {\r\n return createTemplateForCustomElement(templateHTML);\r\n }\r\n connectedCallback() {\r\n super.connectedCallback();\r\n this.addEventListener('click', this.handleClick, { capture: true });\r\n }\r\n disconnectedCallback() {\r\n super.disconnectedCallback();\r\n this.removeEventListener('click', this.handleClick, { capture: true });\r\n }\r\n attributeChangedCallback(attributeName, _oldValue, newValue) {\r\n super.attributeChangedCallback(attributeName, _oldValue, newValue);\r\n if (attributeName === 'loading') {\r\n const value = Boolean(newValue);\r\n this.disabled = value;\r\n this.tooltipDisabled = value;\r\n }\r\n }\r\n}\r\n//# sourceMappingURL=KSLButtonElement.js.map","import { KSLPopUpElement } from './abstract/KSLPopUpElement';\r\nimport { createTemplateForCustomElement } from '../utils/node';\r\nimport { Colors } from './tokens/colors';\r\nimport { Shadows } from './tokens/shadows';\r\nconst templateHTML = `\r\n \r\n`;\r\nexport class KSLPopoverElement extends KSLPopUpElement {\r\n static get is() {\r\n return 'ksl-popover';\r\n }\r\n static initializeTemplate() {\r\n const baseTemplate = KSLPopUpElement.initializeTemplate();\r\n const thisTemplate = createTemplateForCustomElement(templateHTML);\r\n baseTemplate.content.appendChild(thisTemplate.content.cloneNode(true));\r\n return baseTemplate;\r\n }\r\n}\r\n//# sourceMappingURL=KSLPopoverElement.js.map","export var InsertPositionPlacement;\r\n(function (InsertPositionPlacement) {\r\n InsertPositionPlacement[\"After\"] = \"after\";\r\n InsertPositionPlacement[\"Before\"] = \"before\";\r\n InsertPositionPlacement[\"End\"] = \"end\";\r\n InsertPositionPlacement[\"Start\"] = \"start\";\r\n})(InsertPositionPlacement || (InsertPositionPlacement = {}));\r\nexport var AddButtonAction;\r\n(function (AddButtonAction) {\r\n AddButtonAction[\"CreateComponent\"] = \"CreateComponent\";\r\n AddButtonAction[\"CreateLinkedItem\"] = \"CreateLinkedItem\";\r\n AddButtonAction[\"InsertLinkedItem\"] = \"InsertLinkedItem\";\r\n})(AddButtonAction || (AddButtonAction = {}));\r\nexport var AddButtonElementType;\r\n(function (AddButtonElementType) {\r\n AddButtonElementType[\"LinkedItems\"] = \"LinkedItems\";\r\n AddButtonElementType[\"RichText\"] = \"RichText\";\r\n AddButtonElementType[\"Unknown\"] = \"Unknown\";\r\n})(AddButtonElementType || (AddButtonElementType = {}));\r\nexport var AddButtonPermission;\r\n(function (AddButtonPermission) {\r\n AddButtonPermission[\"CreateNew\"] = \"createNew\";\r\n AddButtonPermission[\"Edit\"] = \"edit\";\r\n AddButtonPermission[\"ViewParent\"] = \"viewParent\";\r\n})(AddButtonPermission || (AddButtonPermission = {}));\r\nexport var AddButtonPermissionCheckResult;\r\n(function (AddButtonPermissionCheckResult) {\r\n AddButtonPermissionCheckResult[\"ItemNotTranslated\"] = \"ItemNotTranslated\";\r\n AddButtonPermissionCheckResult[\"Ok\"] = \"Ok\";\r\n AddButtonPermissionCheckResult[\"PermissionMissing\"] = \"PermissionMissing\";\r\n AddButtonPermissionCheckResult[\"RteWithForbiddenComponents\"] = \"RteWithForbiddenComponents\";\r\n AddButtonPermissionCheckResult[\"Unknown\"] = \"Unknown\";\r\n})(AddButtonPermissionCheckResult || (AddButtonPermissionCheckResult = {}));\r\nexport var IFrameMessageType;\r\n(function (IFrameMessageType) {\r\n IFrameMessageType[\"ElementClicked\"] = \"kontent-smart-link:element:clicked\";\r\n IFrameMessageType[\"ContentItemClicked\"] = \"kontent-smart-link:content-item:clicked\";\r\n IFrameMessageType[\"ContentComponentClicked\"] = \"kontent-smart-link:content-component:clicked\";\r\n IFrameMessageType[\"Initialized\"] = \"kontent-smart-link:initialized\";\r\n IFrameMessageType[\"Status\"] = \"kontent-smart-link:status\";\r\n IFrameMessageType[\"AddInitial\"] = \"kontent-smart-link:add:initial\";\r\n IFrameMessageType[\"AddAction\"] = \"kontent-smart-link:add:action\";\r\n IFrameMessageType[\"RefreshPreview\"] = \"kontent-smart-link:preview:refresh\";\r\n})(IFrameMessageType || (IFrameMessageType = {}));\r\nexport var IFrameResponseType;\r\n(function (IFrameResponseType) {\r\n IFrameResponseType[\"AddInitialResponse\"] = \"kontent-smart-link:add:initial:response\";\r\n})(IFrameResponseType || (IFrameResponseType = {}));\r\n//# sourceMappingURL=IFrameCommunicatorTypes.js.map","import { getElementAncestors } from './node';\r\nimport { InsertPositionPlacement, } from '../lib/IFrameCommunicatorTypes';\r\nimport { getHighlightTypeForElement, HighlightType } from './customElements';\r\nimport { Logger } from '../lib/Logger';\r\n/**\r\n * Data-attributes are used to get some Kontent related data from DOM.\r\n * Data from data-attributes is used to generate smart links or iframe messages to Kontent.\r\n * However, this data can also be used in rendering (e.g. HTML elements with element codename attribute\r\n * have highlights).\r\n */\r\nexport var DataAttribute;\r\n(function (DataAttribute) {\r\n DataAttribute[\"AddButtonInsertPosition\"] = \"data-kontent-add-button-insert-position\";\r\n DataAttribute[\"ElementCodename\"] = \"data-kontent-element-codename\";\r\n DataAttribute[\"ComponentId\"] = \"data-kontent-component-id\";\r\n DataAttribute[\"ItemId\"] = \"data-kontent-item-id\";\r\n DataAttribute[\"LanguageCodename\"] = \"data-kontent-language-codename\";\r\n DataAttribute[\"ProjectId\"] = \"data-kontent-project-id\";\r\n})(DataAttribute || (DataAttribute = {}));\r\n/**\r\n * Metadata-attributes are used to get some metadata about some of the SDK features.\r\n * Metadata is used for SDK inner logic (such as rendering, event handling, etc.).\r\n */\r\nexport var MetadataAttribute;\r\n(function (MetadataAttribute) {\r\n MetadataAttribute[\"AddButton\"] = \"data-kontent-add-button\";\r\n MetadataAttribute[\"AddButtonRenderPosition\"] = \"data-kontent-add-button-render-position\";\r\n MetadataAttribute[\"DisableFeatures\"] = \"data-kontent-disable-features\";\r\n})(MetadataAttribute || (MetadataAttribute = {}));\r\n/**\r\n * Valid values of the MetadataAttribute.DisableFeatures attribute.\r\n * Those values can be used to disable certain features for the selected node.\r\n */\r\nexport var DisableableFeature;\r\n(function (DisableableFeature) {\r\n DisableableFeature[\"Highlight\"] = \"highlight\";\r\n})(DisableableFeature || (DisableableFeature = {}));\r\nvar ParserTokenKey;\r\n(function (ParserTokenKey) {\r\n ParserTokenKey[\"ProjectId\"] = \"projectId\";\r\n ParserTokenKey[\"LanguageCodename\"] = \"languageCodename\";\r\n ParserTokenKey[\"ItemId\"] = \"itemId\";\r\n ParserTokenKey[\"ComponentId\"] = \"contentComponentId\";\r\n ParserTokenKey[\"ElementCodename\"] = \"elementCodename\";\r\n ParserTokenKey[\"Placement\"] = \"placement\";\r\n ParserTokenKey[\"TargetId\"] = \"targetId\";\r\n})(ParserTokenKey || (ParserTokenKey = {}));\r\nconst baseParserPattern = [\r\n { key: ParserTokenKey.LanguageCodename, dataAttributes: [DataAttribute.LanguageCodename] },\r\n { key: ParserTokenKey.ProjectId, dataAttributes: [DataAttribute.ProjectId] },\r\n];\r\nconst itemEditButtonParserPattern = [\r\n { key: ParserTokenKey.ItemId, dataAttributes: [DataAttribute.ItemId] },\r\n ...baseParserPattern,\r\n];\r\nconst componentEditButtonParserPattern = [\r\n { key: ParserTokenKey.ComponentId, dataAttributes: [DataAttribute.ComponentId] },\r\n ...itemEditButtonParserPattern,\r\n];\r\nconst elementEditButtonParserPattern = [\r\n { key: ParserTokenKey.ElementCodename, dataAttributes: [DataAttribute.ElementCodename] },\r\n { key: ParserTokenKey.ComponentId, dataAttributes: [DataAttribute.ComponentId], optional: true },\r\n ...itemEditButtonParserPattern,\r\n];\r\nconst baseAddButtonParserPattern = [\r\n { key: ParserTokenKey.ElementCodename, dataAttributes: [DataAttribute.ElementCodename] },\r\n { key: ParserTokenKey.ComponentId, dataAttributes: [DataAttribute.ComponentId], optional: true },\r\n { key: ParserTokenKey.ItemId, dataAttributes: [DataAttribute.ItemId] },\r\n ...baseParserPattern,\r\n];\r\nconst relativeAddButtonParserPattern = [\r\n { key: ParserTokenKey.Placement, dataAttributes: [DataAttribute.AddButtonInsertPosition], optional: true },\r\n { key: ParserTokenKey.TargetId, dataAttributes: [DataAttribute.ComponentId, DataAttribute.ItemId] },\r\n ...baseAddButtonParserPattern,\r\n];\r\nconst fixedAddButtonParserPattern = [\r\n { key: ParserTokenKey.Placement, dataAttributes: [DataAttribute.AddButtonInsertPosition], optional: true },\r\n ...baseAddButtonParserPattern,\r\n];\r\nexport function parseEditButtonDataAttributes(target) {\r\n const type = getHighlightTypeForElement(target);\r\n const pattern = getEditButtonDataAttributesPattern(type);\r\n const parsed = parseDataAttributes(pattern, target);\r\n return Object.assign(Object.assign({ projectId: parsed.get(ParserTokenKey.ProjectId), languageCodename: parsed.get(ParserTokenKey.LanguageCodename), itemId: parsed.get(ParserTokenKey.ItemId) }, (parsed.has(ParserTokenKey.ComponentId) && { contentComponentId: parsed.get(ParserTokenKey.ComponentId) })), (parsed.has(ParserTokenKey.ElementCodename) && { elementCodename: parsed.get(ParserTokenKey.ElementCodename) }));\r\n}\r\nexport function parseAddButtonDataAttributes(target) {\r\n const position = target.getAttribute(DataAttribute.AddButtonInsertPosition);\r\n const pattern = getAddButtonDataAttributesPattern(position);\r\n const parsed = parseDataAttributes(pattern, target);\r\n return Object.assign(Object.assign({ projectId: parsed.get(ParserTokenKey.ProjectId), languageCodename: parsed.get(ParserTokenKey.LanguageCodename), itemId: parsed.get(ParserTokenKey.ItemId) }, (parsed.get(ParserTokenKey.ComponentId) && { contentComponentId: parsed.get(ParserTokenKey.ComponentId) })), { elementCodename: parsed.get(ParserTokenKey.ElementCodename), insertPosition: getAddButtonInsertPosition(parsed) });\r\n}\r\nfunction getEditButtonDataAttributesPattern(type) {\r\n switch (type) {\r\n case HighlightType.Element:\r\n return elementEditButtonParserPattern;\r\n case HighlightType.ContentComponent:\r\n return componentEditButtonParserPattern;\r\n case HighlightType.ContentItem:\r\n return itemEditButtonParserPattern;\r\n default:\r\n return baseParserPattern;\r\n }\r\n}\r\nfunction getAddButtonDataAttributesPattern(position) {\r\n switch (position) {\r\n case InsertPositionPlacement.End:\r\n case InsertPositionPlacement.Start:\r\n return fixedAddButtonParserPattern;\r\n case InsertPositionPlacement.After:\r\n case InsertPositionPlacement.Before:\r\n default:\r\n return relativeAddButtonParserPattern;\r\n }\r\n}\r\nfunction getAddButtonInsertPosition(parsed) {\r\n var _a;\r\n const placement = (_a = parsed.get(ParserTokenKey.Placement)) !== null && _a !== void 0 ? _a : InsertPositionPlacement.After;\r\n const targetId = parsed.get(ParserTokenKey.TargetId);\r\n switch (placement) {\r\n case InsertPositionPlacement.End:\r\n case InsertPositionPlacement.Start:\r\n return { placement };\r\n case InsertPositionPlacement.Before:\r\n case InsertPositionPlacement.After:\r\n return { placement, targetId };\r\n default:\r\n return { targetId, placement: InsertPositionPlacement.After };\r\n }\r\n}\r\n/**\r\n * Parse data-attributes starting from target to its ancestors using the parsing pattern.\r\n *\r\n * @param {DataAttributesParserPattern} pattern\r\n * @param {HTMLElement} startFrom\r\n * @returns {ReadonlyMap}\r\n */\r\nfunction parseDataAttributes(pattern, startFrom) {\r\n const parsed = new Map();\r\n Logger.debugGroup('Parse data-attributes starting with ', startFrom);\r\n const elements = [startFrom, ...getElementAncestors(startFrom)];\r\n Logger.debug('Elements that will be parsed: ', elements);\r\n Logger.debug('Parsing pattern: ', pattern);\r\n for (const element of elements) {\r\n const takenDataAttributes = new Set();\r\n Logger.debugGroup('Checking data-attributes on ', element);\r\n for (const token of pattern) {\r\n const { key, dataAttributes, optional } = token;\r\n Logger.debugGroupCollapsed(`Looking for '${key}' [${dataAttributes}]`);\r\n const [dataAttribute, value] = findDataAttribute(element, dataAttributes);\r\n Logger.debug('Value: ', value);\r\n Logger.debug('Already parsed: ', parsed.has(key));\r\n Logger.debug('Already taken by previous token: ', takenDataAttributes.has(dataAttribute));\r\n if (!value && !parsed.has(key) && !optional) {\r\n Logger.debug('[Result]: Required data-attribute is missing.');\r\n Logger.debugGroupEnd();\r\n // Required data-attribute is missing. There is no point in continuing parsing data-attributes\r\n // on current element, we should move to the next ancestor.\r\n break;\r\n }\r\n if (parsed.has(key)) {\r\n Logger.debug('[Result]: This data-attribute has already been parsed in some of the previous steps.');\r\n Logger.debugGroupEnd();\r\n continue;\r\n }\r\n if (!value) {\r\n Logger.debug('[Result]: This data attribute has no value.');\r\n Logger.debugGroupEnd();\r\n continue;\r\n }\r\n if (takenDataAttributes.has(dataAttribute)) {\r\n Logger.debug('[Result]: A previous token has already used this data-attribute.');\r\n Logger.debugGroupEnd();\r\n continue;\r\n }\r\n const currentTokenIndex = pattern.indexOf(token);\r\n const tokensWithHigherPriority = pattern.slice(currentTokenIndex, pattern.length);\r\n const areSomeTokensWithHigherPriorityParsed = tokensWithHigherPriority.some((token) => parsed.has(token.key));\r\n // If some higher token has already been parsed, it can mean two things:\r\n // a) Current data-attribute is optional and is not related to the current scope. In that case, it can be ignored.\r\n // b) Parsed data is related to some lower scope (or invalid) and should be cleared.\r\n if (areSomeTokensWithHigherPriorityParsed) {\r\n if (optional) {\r\n Logger.debug('[Result]: Attribute is not related to the current scope.');\r\n Logger.debugGroupEnd();\r\n continue;\r\n }\r\n for (const token of tokensWithHigherPriority) {\r\n parsed.delete(token.key);\r\n }\r\n }\r\n parsed.set(token.key, value);\r\n takenDataAttributes.add(dataAttribute);\r\n Logger.debug('[Result]: Attribute successfully parsed!');\r\n Logger.debugGroupEnd();\r\n }\r\n Logger.debug('Values parsed so far: ', parsed);\r\n Logger.debugGroupEnd();\r\n }\r\n Logger.debugGroupEnd();\r\n Logger.debug('[Result]: ', parsed);\r\n return parsed;\r\n}\r\nfunction findDataAttribute(element, dataAttributes) {\r\n for (const attribute of dataAttributes) {\r\n const value = element.getAttribute(attribute);\r\n if (value) {\r\n return [attribute, value];\r\n }\r\n }\r\n return [null, null];\r\n}\r\n//# sourceMappingURL=dataAttributes.js.map","import { isInsideIFrame } from '../utils/iframe';\r\nconst defaultConfiguration = {\r\n debug: false,\r\n defaultDataAttributes: {\r\n languageCodename: undefined,\r\n projectId: undefined,\r\n },\r\n forceWebSpotlightMode: false,\r\n isInsideWebSpotlight: false,\r\n queryParam: 'ksl-enabled',\r\n};\r\nexport class ConfigurationManager {\r\n constructor() {\r\n this.update = (configuration = {}) => {\r\n this.configuration = Object.assign(Object.assign({}, this.configuration), configuration);\r\n };\r\n this.configuration = defaultConfiguration;\r\n }\r\n get debug() {\r\n return this.configuration.debug;\r\n }\r\n get queryParam() {\r\n return this.configuration.queryParam;\r\n }\r\n get defaultLanguageCodename() {\r\n return this.configuration.defaultDataAttributes.languageCodename;\r\n }\r\n get defaultProjectId() {\r\n return this.configuration.defaultDataAttributes.projectId;\r\n }\r\n get isInsideWebSpotlightPreviewIFrame() {\r\n const { forceWebSpotlightMode, isInsideWebSpotlight } = this.configuration;\r\n return forceWebSpotlightMode || (isInsideIFrame() && isInsideWebSpotlight);\r\n }\r\n static getInstance() {\r\n if (!ConfigurationManager.instance) {\r\n ConfigurationManager.instance = new ConfigurationManager();\r\n }\r\n return ConfigurationManager.instance;\r\n }\r\n}\r\n//# sourceMappingURL=ConfigurationManager.js.map","import { DataAttribute, DisableableFeature, MetadataAttribute } from './dataAttributes';\r\nimport { ConfigurationManager } from '../lib/ConfigurationManager';\r\nexport var HighlightType;\r\n(function (HighlightType) {\r\n HighlightType[\"None\"] = \"\";\r\n HighlightType[\"Element\"] = \"element\";\r\n HighlightType[\"ContentComponent\"] = \"content-component\";\r\n HighlightType[\"ContentItem\"] = \"content-item\";\r\n})(HighlightType || (HighlightType = {}));\r\nconst DisabledHighlightFeatureSelector = `[${MetadataAttribute.DisableFeatures}*=\"${DisableableFeature.Highlight}\"]`;\r\nconst ElementSelector = `*[${DataAttribute.ElementCodename}]:not(${DisabledHighlightFeatureSelector})`;\r\nconst ContentComponentSelector = `*[${DataAttribute.ComponentId}]:not([${DataAttribute.ElementCodename}]):not(${DisabledHighlightFeatureSelector})`;\r\nconst ContentItemSelector = `*[${DataAttribute.ItemId}]:not([${DataAttribute.ComponentId}]):not([${DataAttribute.ElementCodename}]):not(${DisabledHighlightFeatureSelector})`;\r\nconst ElementsWithAddButtonSelector = `*[${MetadataAttribute.AddButton}]`;\r\nconst AllAugmentableElementsSelector = `${ElementSelector}, ${ContentComponentSelector}, ${ContentItemSelector}, ${ElementsWithAddButtonSelector}`;\r\n/**\r\n * Find all descendant HTML elements that could be augmented (have highlights or add buttons near them).\r\n *\r\n * @param {HTMLElement | Document} node\r\n * @returns {NodeListOf}\r\n */\r\nexport function getAugmentableDescendants(node) {\r\n const configurationManager = ConfigurationManager.getInstance();\r\n const isInsideWebSpotlight = configurationManager.isInsideWebSpotlightPreviewIFrame;\r\n if (isInsideWebSpotlight) {\r\n return node.querySelectorAll(AllAugmentableElementsSelector);\r\n }\r\n return node.querySelectorAll(ElementSelector);\r\n}\r\n/**\r\n * Checks if HTML element could be augmented (have highlights or add buttons near them).\r\n *\r\n * @param {HTMLElement | null} element\r\n * @returns {boolean}\r\n */\r\nexport function isElementAugmentable(element) {\r\n return shouldElementHaveHighlight(element) || shouldElementHaveAddButton(element);\r\n}\r\n/**\r\n * Check if node should have highlights based on its data-attributes.\r\n *\r\n * @param {HTMLElement | null} element\r\n * @returns {boolean}\r\n */\r\nexport function shouldElementHaveHighlight(element) {\r\n const highlightType = getHighlightTypeForElement(element);\r\n switch (highlightType) {\r\n case HighlightType.None:\r\n return false;\r\n case HighlightType.Element:\r\n return true;\r\n case HighlightType.ContentItem:\r\n case HighlightType.ContentComponent:\r\n default: {\r\n const configurationManager = ConfigurationManager.getInstance();\r\n return configurationManager.isInsideWebSpotlightPreviewIFrame;\r\n }\r\n }\r\n}\r\n/**\r\n * Check if node should have a add button based on its data-attributes.\r\n *\r\n * @param {HTMLElement | null} element\r\n * @returns {boolean}\r\n */\r\nexport function shouldElementHaveAddButton(element) {\r\n const configurationManager = ConfigurationManager.getInstance();\r\n const isInsideWebSpotlight = configurationManager.isInsideWebSpotlightPreviewIFrame;\r\n // add button should only be visible inside Web Spotlight\r\n return Boolean(isInsideWebSpotlight && element && element.hasAttribute(MetadataAttribute.AddButton));\r\n}\r\n/**\r\n * Get HighlightType based on the HTML element data-attributes.\r\n *\r\n * @param {HTMLElement | null} element\r\n * @returns {HighlightType}\r\n */\r\nexport function getHighlightTypeForElement(element) {\r\n if (!element || isFeatureDisabledForElement(element, DisableableFeature.Highlight)) {\r\n return HighlightType.None;\r\n }\r\n // treat node as element if it has element codename attribute\r\n if (element.hasAttribute(DataAttribute.ElementCodename)) {\r\n return HighlightType.Element;\r\n }\r\n // else treat node as content component if it has component id attribute\r\n else if (element.hasAttribute(DataAttribute.ComponentId)) {\r\n return HighlightType.ContentComponent;\r\n }\r\n // else treat node as content item if it has item id attribute\r\n else if (element.hasAttribute(DataAttribute.ItemId)) {\r\n return HighlightType.ContentItem;\r\n }\r\n return HighlightType.None;\r\n}\r\nfunction isFeatureDisabledForElement(element, feature) {\r\n var _a;\r\n const attribute = element.getAttribute(MetadataAttribute.DisableFeatures);\r\n return (_a = attribute === null || attribute === void 0 ? void 0 : attribute.toLowerCase().includes(feature)) !== null && _a !== void 0 ? _a : false;\r\n}\r\n//# sourceMappingURL=customElements.js.map","import { ButtonType } from './KSLButtonElement';\r\nimport { IconName } from './KSLIconElement';\r\nimport { assert } from '../utils/assert';\r\nimport { getHighlightTypeForElement, HighlightType } from '../utils/customElements';\r\nimport { ElementPositionOffset, KSLPositionedElement } from './abstract/KSLPositionedElement';\r\nimport { KSLContainerElement } from './KSLContainerElement';\r\nimport { createTemplateForCustomElement } from '../utils/node';\r\nimport { parseEditButtonDataAttributes } from '../utils/dataAttributes';\r\nimport { Logger } from '../lib/Logger';\r\nimport { Colors } from './tokens/colors';\r\nimport { Shadows } from './tokens/shadows';\r\nimport { BaseZIndex } from './constants/zIndex';\r\nconst templateHTML = `\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n`;\r\nexport class KSLHighlightElement extends KSLPositionedElement {\r\n constructor() {\r\n super();\r\n this.attachTo = (node) => {\r\n this.unregisterTargetNodeListeners();\r\n super.attachTo(node);\r\n const type = this.type;\r\n this.hidden = type === HighlightType.None;\r\n this.editButtonRef.tooltipMessage = KSLHighlightElement.getEditButtonTooltip(type);\r\n if (this.targetRef) {\r\n this.targetRef.addEventListener('mousemove', this.handleTargetNodeMouseEnter);\r\n this.targetRef.addEventListener('mouseleave', this.handleTargetNodeMouseLeave);\r\n this.targetRef.addEventListener('click', this.handleEditButtonClick);\r\n }\r\n };\r\n this.adjustPosition = () => {\r\n if (!this.targetRef || !this.offsetParent) {\r\n return;\r\n }\r\n if (!(this.offsetParent instanceof KSLContainerElement)) {\r\n Logger.warn('KSLHighlightElement: should be located inside KSLContainerElement to be positioned properly.');\r\n }\r\n const offsetParentRect = this.offsetParent.getBoundingClientRect();\r\n const targetRect = this.targetRef.getBoundingClientRect();\r\n this.style.top = `${targetRect.top - offsetParentRect.top}px`;\r\n this.style.left = `${targetRect.left - offsetParentRect.left}px`;\r\n this.style.width = `${targetRect.width}px`;\r\n this.style.height = `${targetRect.height}px`;\r\n };\r\n this.unregisterTargetNodeListeners = () => {\r\n if (this.targetRef) {\r\n this.targetRef.removeEventListener('mousemove', this.handleTargetNodeMouseEnter);\r\n this.targetRef.removeEventListener('mouseleave', this.handleTargetNodeMouseLeave);\r\n this.targetRef.removeEventListener('click', this.handleEditButtonClick);\r\n }\r\n };\r\n this.handleTargetNodeMouseEnter = () => {\r\n this.selected = true;\r\n };\r\n this.handleTargetNodeMouseLeave = () => {\r\n this.selected = false;\r\n };\r\n this.handleEditButtonClick = (event) => {\r\n assert(this.targetRef, 'Target node is not set for this highlight.');\r\n event.preventDefault();\r\n event.stopPropagation();\r\n const dataAttributes = parseEditButtonDataAttributes(this.targetRef);\r\n this.dispatchEditEvent(dataAttributes);\r\n };\r\n this.dispatchEditEvent = (data) => {\r\n assert(this.targetRef, 'Target node is not set for this highlight element.');\r\n const customEvent = new CustomEvent('ksl:highlight:edit', {\r\n detail: {\r\n data,\r\n targetNode: this.targetRef,\r\n },\r\n });\r\n this.dispatchEvent(customEvent);\r\n };\r\n assert(this.shadowRoot, 'Shadow root must be always accessible in \"open\" mode.');\r\n this.editButtonRef = this.shadowRoot.querySelector('#ksl-edit');\r\n }\r\n static get is() {\r\n return 'ksl-highlight';\r\n }\r\n get type() {\r\n return getHighlightTypeForElement(this.targetRef);\r\n }\r\n get selected() {\r\n return this.hasAttribute('selected');\r\n }\r\n set selected(value) {\r\n this.updateAttribute('selected', value);\r\n }\r\n static initializeTemplate() {\r\n return createTemplateForCustomElement(templateHTML);\r\n }\r\n static getEditButtonTooltip(type) {\r\n switch (type) {\r\n case HighlightType.Element:\r\n return 'Edit element';\r\n case HighlightType.ContentComponent:\r\n return 'Edit component';\r\n case HighlightType.ContentItem:\r\n return 'Edit item';\r\n default:\r\n return 'Edit';\r\n }\r\n }\r\n connectedCallback() {\r\n super.connectedCallback();\r\n this.editButtonRef.addEventListener('click', this.handleEditButtonClick);\r\n }\r\n disconnectedCallback() {\r\n super.connectedCallback();\r\n this.editButtonRef.removeEventListener('click', this.handleEditButtonClick);\r\n this.unregisterTargetNodeListeners();\r\n }\r\n}\r\n//# sourceMappingURL=KSLHighlightElement.js.map","import { KSLCustomElement } from './abstract/KSLCustomElement';\r\nimport { KSLAddButtonElement } from './KSLAddButtonElement';\r\nimport { KSLHighlightElement } from './KSLHighlightElement';\r\nimport { createTemplateForCustomElement, getRenderingRootMetadata, getTotalScrollOffset } from '../utils/node';\r\nimport { BaseZIndex } from './constants/zIndex';\r\nconst templateHTML = `\r\n \r\n \r\n`;\r\nexport class KSLContainerElement extends KSLCustomElement {\r\n constructor() {\r\n super(...arguments);\r\n this._boundingClientRect = null;\r\n this.createHighlightForElement = (element) => {\r\n const highlight = document.createElement(KSLHighlightElement.is);\r\n highlight.attachTo(element);\r\n this.appendChild(highlight);\r\n return highlight;\r\n };\r\n this.createAddButtonForElement = (element) => {\r\n const button = document.createElement(KSLAddButtonElement.is);\r\n button.attachTo(element);\r\n this.appendChild(button);\r\n return button;\r\n };\r\n this.adjustPosition = () => {\r\n const parent = this.parentElement;\r\n if (!parent) {\r\n return; // No need to adjust position when element is not mounted.\r\n }\r\n const metadata = getRenderingRootMetadata(parent);\r\n if (!metadata.isPositioned) {\r\n // When parent element is not positioned it means that container\r\n // will be positioned relatively to some other element. That is why we need\r\n // to keep in mind all of the scroll offsets on the way to this relative element.\r\n const [scrollOffsetTop, scrollOffsetLeft] = getTotalScrollOffset(parent);\r\n this.style.height = `${parent.clientHeight}px`;\r\n this.style.width = `${parent.clientWidth}px`;\r\n this.style.top = `${parent.offsetTop - scrollOffsetTop}px`;\r\n this.style.left = `${parent.offsetLeft - scrollOffsetLeft}px`;\r\n // When parent element is not positioned and its content is clipped\r\n // we need to hide overflow of the container as well to prevent\r\n // highlights from appearing for overflown content.\r\n this.updateAttribute('clipped', Boolean(metadata.isContentClipped));\r\n }\r\n this.getBoundingClientRect(true);\r\n };\r\n }\r\n static get is() {\r\n return 'ksl-container';\r\n }\r\n static initializeTemplate() {\r\n return createTemplateForCustomElement(templateHTML);\r\n }\r\n getBoundingClientRect(shouldRecompute = false) {\r\n if (!this._boundingClientRect || shouldRecompute) {\r\n this._boundingClientRect = super.getBoundingClientRect();\r\n }\r\n return this._boundingClientRect;\r\n }\r\n}\r\n//# sourceMappingURL=KSLContainerElement.js.map","var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n};\r\nimport { ButtonType, KSLButtonElement } from './KSLButtonElement';\r\nimport { IconName } from './KSLIconElement';\r\nimport { assert } from '../utils/assert';\r\nimport { KSLPopoverElement } from './KSLPopoverElement';\r\nimport { ElementPositionOffset, KSLPositionedElement } from './abstract/KSLPositionedElement';\r\nimport { KSLContainerElement } from './KSLContainerElement';\r\nimport { createTemplateForCustomElement } from '../utils/node';\r\nimport { MetadataAttribute, parseAddButtonDataAttributes } from '../utils/dataAttributes';\r\nimport { AddButtonAction, AddButtonElementType, AddButtonPermission, AddButtonPermissionCheckResult, } from '../lib/IFrameCommunicatorTypes';\r\nimport { Logger } from '../lib/Logger';\r\nimport { BaseZIndex } from './constants/zIndex';\r\nconst ContentIsPublishedTooltip = 'Content is published';\r\nconst DefaultTooltipMessage = 'Insert...';\r\nconst getCreateLinkedItemTooltip = (canUserCreateLinkedItem) => canUserCreateLinkedItem ? 'Create new item' : 'Your role cannot create items from the allowed types';\r\nvar PopoverButtonId;\r\n(function (PopoverButtonId) {\r\n PopoverButtonId[\"CreateComponent\"] = \"create-component\";\r\n PopoverButtonId[\"CreateLinkedItem\"] = \"create-linked-item\";\r\n PopoverButtonId[\"InsertLinkedItem\"] = \"insert-linked-item\";\r\n})(PopoverButtonId || (PopoverButtonId = {}));\r\nconst getPopoverHtml = ({ elementType, isParentPublished, permissions }) => {\r\n const canUserCreateLinkedItem = permissions.get(AddButtonPermission.CreateNew) === AddButtonPermissionCheckResult.Ok;\r\n return `\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\nconst templateHTML = `\r\n \r\n \r\n \r\n \r\n`;\r\nexport class KSLAddButtonElement extends KSLPositionedElement {\r\n constructor() {\r\n super();\r\n this.popoverRef = null;\r\n this.adjustPosition = () => {\r\n if (!this.targetRef || !this.offsetParent) {\r\n return;\r\n }\r\n if (!(this.offsetParent instanceof KSLContainerElement)) {\r\n console.warn('KSLAddButtonElement: should be located inside KSLContainerElement to be positioned properly.');\r\n }\r\n const offsetParentRect = this.offsetParent.getBoundingClientRect();\r\n const targetRect = this.targetRef.getBoundingClientRect();\r\n const thisRect = this.getBoundingClientRect();\r\n const verticalOffset = this.calculateTopOffset(thisRect, targetRect);\r\n const horizontalOffset = this.calculateLeftOffset(thisRect, targetRect);\r\n this.style.top = `${targetRect.top - offsetParentRect.top + verticalOffset}px`;\r\n this.style.left = `${targetRect.left - offsetParentRect.left + horizontalOffset}px`;\r\n };\r\n this.handleClick = (event) => __awaiter(this, void 0, void 0, function* () {\r\n if (this.popoverRef) {\r\n return;\r\n }\r\n assert(this.targetRef, 'Target node is not set for this add button.');\r\n event.preventDefault();\r\n event.stopPropagation();\r\n this.buttonRef.loading = true;\r\n const data = parseAddButtonDataAttributes(this.targetRef);\r\n try {\r\n const eventData = { data, targetNode: this.targetRef };\r\n const response = yield this.dispatchAsyncEvent('ksl:add-button:initial', eventData);\r\n const { permissions } = response;\r\n const isUserMissingPermissions = !permissions ||\r\n permissions.get(AddButtonPermission.ViewParent) !== AddButtonPermissionCheckResult.Ok ||\r\n permissions.get(AddButtonPermission.Edit) !== AddButtonPermissionCheckResult.Ok;\r\n const areComponentsForbidden = permissions.get(AddButtonPermission.CreateNew) === AddButtonPermissionCheckResult.RteWithForbiddenComponents;\r\n if (isUserMissingPermissions || areComponentsForbidden) {\r\n this.buttonRef.loading = false;\r\n this.buttonRef.disabled = true;\r\n this.buttonRef.tooltipMessage = isUserMissingPermissions\r\n ? 'You are not allowed to add content here'\r\n : \"Components and items can't be added here\";\r\n }\r\n else {\r\n this.buttonRef.loading = false;\r\n this.buttonRef.disabled = false;\r\n this.buttonRef.tooltipMessage = DefaultTooltipMessage;\r\n this.showPopover(response);\r\n }\r\n }\r\n catch (reason) {\r\n Logger.error(reason);\r\n this.buttonRef.loading = false;\r\n this.buttonRef.disabled = true;\r\n if (reason && typeof reason.message === 'string') {\r\n this.buttonRef.tooltipMessage = reason.message;\r\n }\r\n else {\r\n this.buttonRef.tooltipMessage = 'Something went wrong';\r\n }\r\n }\r\n });\r\n this.handleClickOutside = (event) => {\r\n if (!this.popoverRef || !(event.target instanceof Element)) {\r\n return;\r\n }\r\n const clickedInside = this.isSameNode(event.target) || this.contains(event.target);\r\n if (!clickedInside) {\r\n this.hidePopover();\r\n }\r\n };\r\n this.showPopover = (response) => {\r\n assert(this.shadowRoot, 'Shadow root must be available in \"open\" mode.');\r\n if (this.popoverRef) {\r\n this.hidePopover();\r\n }\r\n this.buttonRef.tooltipPosition = ElementPositionOffset.Bottom;\r\n const popover = document.createElement(KSLPopoverElement.is);\r\n popover.innerHTML = getPopoverHtml(response);\r\n const popoverParent = this.shadowRoot;\r\n this.popoverRef = popoverParent.appendChild(popover);\r\n this.popoverRef.position = ElementPositionOffset.Top;\r\n this.popoverRef.attachTo(this);\r\n this.addPopoverEventListeners(response.elementType);\r\n this.popoverRef.visible = true;\r\n this.popoverRef.adjustPosition();\r\n };\r\n this.hidePopover = () => {\r\n this.buttonRef.tooltipPosition = ElementPositionOffset.Top;\r\n if (this.popoverRef) {\r\n this.removePopoverEventListeners();\r\n this.popoverRef.visible = false;\r\n this.popoverRef.remove();\r\n this.popoverRef = null;\r\n }\r\n };\r\n this.addPopoverEventListeners = (elementType) => {\r\n if (!this.popoverRef) {\r\n return;\r\n }\r\n const createComponentButtonRef = this.popoverRef.querySelector(`#${PopoverButtonId.CreateComponent}`);\r\n const createLinkedItemButtonRef = this.popoverRef.querySelector(`#${PopoverButtonId.CreateLinkedItem}`);\r\n const insertLinkedItemButtonRef = this.popoverRef.querySelector(`#${PopoverButtonId.InsertLinkedItem}`);\r\n if (createComponentButtonRef && elementType === AddButtonElementType.RichText) {\r\n createComponentButtonRef.addEventListener('click', this.handleCreateComponentClick);\r\n }\r\n if (createLinkedItemButtonRef && elementType === AddButtonElementType.LinkedItems) {\r\n createLinkedItemButtonRef.addEventListener('click', this.handleCreateLinkedItemClick);\r\n }\r\n if (insertLinkedItemButtonRef) {\r\n insertLinkedItemButtonRef.addEventListener('click', this.handleInsertLinkedItemClick);\r\n }\r\n };\r\n this.removePopoverEventListeners = () => {\r\n if (!this.popoverRef) {\r\n return;\r\n }\r\n const createComponentButtonRef = this.popoverRef.querySelector(`#${PopoverButtonId.CreateComponent}`);\r\n const createLinkedItemButtonRef = this.popoverRef.querySelector(`#${PopoverButtonId.CreateLinkedItem}`);\r\n const insertLinkedItemButtonRef = this.popoverRef.querySelector(`#${PopoverButtonId.InsertLinkedItem}`);\r\n if (createComponentButtonRef) {\r\n createComponentButtonRef.removeEventListener('click', this.handleCreateComponentClick);\r\n }\r\n if (createLinkedItemButtonRef) {\r\n createLinkedItemButtonRef.removeEventListener('click', this.handleCreateLinkedItemClick);\r\n }\r\n if (insertLinkedItemButtonRef) {\r\n insertLinkedItemButtonRef.removeEventListener('click', this.handleInsertLinkedItemClick);\r\n }\r\n };\r\n this.handleCreateComponentClick = (event) => {\r\n this.handleAddActionClick(event, AddButtonAction.CreateComponent);\r\n };\r\n this.handleCreateLinkedItemClick = (event) => {\r\n this.handleAddActionClick(event, AddButtonAction.CreateLinkedItem);\r\n };\r\n this.handleInsertLinkedItemClick = (event) => {\r\n this.handleAddActionClick(event, AddButtonAction.InsertLinkedItem);\r\n };\r\n this.handleAddActionClick = (event, action) => {\r\n assert(this.targetRef, 'Target node is not set for this add button.');\r\n event.preventDefault();\r\n event.stopPropagation();\r\n const data = parseAddButtonDataAttributes(this.targetRef);\r\n const customEvent = new CustomEvent('ksl:add-button:action', {\r\n detail: {\r\n data: Object.assign(Object.assign({}, data), { action }),\r\n targetNode: this.targetRef,\r\n },\r\n });\r\n this.hidePopover();\r\n this.dispatchEvent(customEvent);\r\n };\r\n assert(this.shadowRoot, 'Shadow root must be available in \"open\" mode.');\r\n this.buttonRef = this.shadowRoot.querySelector(KSLButtonElement.is);\r\n }\r\n static get is() {\r\n return 'ksl-add-button';\r\n }\r\n get position() {\r\n var _a, _b;\r\n return (_b = (_a = this.targetRef) === null || _a === void 0 ? void 0 : _a.getAttribute(MetadataAttribute.AddButtonRenderPosition)) !== null && _b !== void 0 ? _b : ElementPositionOffset.Bottom;\r\n }\r\n static initializeTemplate() {\r\n return createTemplateForCustomElement(templateHTML);\r\n }\r\n connectedCallback() {\r\n super.connectedCallback();\r\n window.addEventListener('click', this.handleClickOutside, { capture: true });\r\n this.buttonRef.addEventListener('click', this.handleClick);\r\n this.buttonRef.tooltipMessage = DefaultTooltipMessage;\r\n }\r\n disconnectedCallback() {\r\n super.disconnectedCallback();\r\n window.removeEventListener('click', this.handleClickOutside, { capture: true });\r\n this.buttonRef.removeEventListener('click', this.handleClick);\r\n this.hidePopover();\r\n }\r\n calculateTopOffset(thisRect, targetRect) {\r\n const offset = super.calculateTopOffset(thisRect, targetRect);\r\n switch (this.position) {\r\n case ElementPositionOffset.TopStart:\r\n case ElementPositionOffset.Top:\r\n case ElementPositionOffset.TopEnd:\r\n return offset / 2;\r\n case ElementPositionOffset.BottomStart:\r\n case ElementPositionOffset.Bottom:\r\n case ElementPositionOffset.BottomEnd:\r\n return offset - thisRect.height / 2;\r\n default:\r\n return offset;\r\n }\r\n }\r\n calculateLeftOffset(thisRect, targetRect) {\r\n const offset = super.calculateLeftOffset(thisRect, targetRect);\r\n switch (this.position) {\r\n case ElementPositionOffset.LeftStart:\r\n case ElementPositionOffset.Left:\r\n case ElementPositionOffset.LeftEnd:\r\n return offset / 2;\r\n case ElementPositionOffset.RightStart:\r\n case ElementPositionOffset.Right:\r\n case ElementPositionOffset.RightEnd:\r\n return targetRect.width - thisRect.width / 2;\r\n default:\r\n return offset;\r\n }\r\n }\r\n}\r\n//# sourceMappingURL=KSLAddButtonElement.js.map","import { KSLAddButtonElement } from './KSLAddButtonElement';\r\nimport { KSLContainerElement } from './KSLContainerElement';\r\nimport { KSLButtonElement } from './KSLButtonElement';\r\nimport { KSLIconElement } from './KSLIconElement';\r\nimport { KSLTooltipElement } from './KSLTooltipElement';\r\nimport { KSLHighlightElement } from './KSLHighlightElement';\r\nimport { KSLPopoverElement } from './KSLPopoverElement';\r\nconst webComponents = [\r\n KSLIconElement,\r\n KSLButtonElement,\r\n KSLAddButtonElement,\r\n KSLHighlightElement,\r\n KSLContainerElement,\r\n KSLTooltipElement,\r\n KSLPopoverElement,\r\n];\r\nconst webComponentTags = webComponents.map((component) => component.is);\r\n/**\r\n * Define all web components if it is possible.\r\n *\r\n * @returns {Promise}\r\n */\r\nexport function defineAllRequiredWebComponents() {\r\n const allDefined = webComponents.map((webComponent) => webComponent.define());\r\n return Promise.all(allDefined);\r\n}\r\n/**\r\n * Check if element is a web component based on its tag name.\r\n *\r\n * @param {HTMLElement} element\r\n * @returns {boolean}\r\n */\r\nexport function isElementWebComponent(element) {\r\n return webComponentTags.includes(element.tagName.toLowerCase());\r\n}\r\n//# sourceMappingURL=components.js.map","import { groupElementsByRenderingRoot } from '../utils/node';\r\nimport { KSLContainerElement } from '../web-components/KSLContainerElement';\r\nimport { shouldElementHaveHighlight, shouldElementHaveAddButton } from '../utils/customElements';\r\nexport class SmartLinkRenderer {\r\n constructor() {\r\n this.render = (visibleElements, observedElements) => {\r\n var _a, _b;\r\n if (observedElements.size === 0) {\r\n this.clear();\r\n }\r\n else {\r\n const newAddButtonByElement = new Map();\r\n const newHighlightByElement = new Map();\r\n // Group elements by their rendering roots to avoid unnecessary re-calculations (e.g. reposition container only once\r\n // instead of repositioning it for every child, calculating bounding client rects, etc.).\r\n const elementsByRenderingRoot = groupElementsByRenderingRoot(visibleElements);\r\n for (const [root, elements] of elementsByRenderingRoot.entries()) {\r\n const container = this.createContainerIfNotExist(root);\r\n container.adjustPosition();\r\n for (const element of elements) {\r\n // This check is needed to prevent highlight rendering for the \"flat\" elements (height or/and width === 0),\r\n // because those elements are basically invisible and cannot be clicked.\r\n const isFlat = element.offsetHeight === 0 || element.offsetHeight === 0;\r\n if (!isFlat && shouldElementHaveHighlight(element)) {\r\n const highlight = (_a = this.highlightByElement.get(element)) !== null && _a !== void 0 ? _a : container.createHighlightForElement(element);\r\n highlight.adjustPosition();\r\n // We are creating a new highlight by element map to be able to compare it with an old one to find out\r\n // which elements have been removed before renders and remove their highlights from the DOM.\r\n newHighlightByElement.set(element, highlight);\r\n this.highlightByElement.delete(element);\r\n }\r\n if (shouldElementHaveAddButton(element)) {\r\n const button = (_b = this.addButtonByElement.get(element)) !== null && _b !== void 0 ? _b : container.createAddButtonForElement(element);\r\n button.adjustPosition();\r\n // We are creating a new add button by element map to be able to compare it with an old one to find out\r\n // which elements have been removed before renders and remove their add buttons from the DOM.\r\n newAddButtonByElement.set(element, button);\r\n this.addButtonByElement.delete(element);\r\n }\r\n }\r\n }\r\n // All highlights that are left in the old highlightByElement map are the remnants of the old render.\r\n // We check if they are still observed and relevant for the renderer and if not they can be removed.\r\n for (const [element, highlight] of this.highlightByElement.entries()) {\r\n if (!observedElements.has(element)) {\r\n highlight.remove();\r\n this.highlightByElement.delete(element);\r\n }\r\n else {\r\n newHighlightByElement.set(element, highlight);\r\n }\r\n }\r\n // All add buttons that are left in the old addButtonByElement map are the remnants of the old render.\r\n // We check if they are still observed and relevant for the renderer and if not they can be removed.\r\n for (const [element, addButton] of this.addButtonByElement.entries()) {\r\n if (!observedElements.has(element)) {\r\n addButton.remove();\r\n this.addButtonByElement.delete(element);\r\n }\r\n else {\r\n newAddButtonByElement.set(element, addButton);\r\n }\r\n }\r\n // All containers that have no children can be removed because they are not used by any highlight, or a add button.\r\n for (const [parent, container] of this.containerByRenderingRoot.entries()) {\r\n if (container.children.length === 0) {\r\n container.remove();\r\n this.containerByRenderingRoot.delete(parent);\r\n }\r\n }\r\n this.highlightByElement = newHighlightByElement;\r\n this.addButtonByElement = newAddButtonByElement;\r\n }\r\n };\r\n this.destroy = () => {\r\n this.clear();\r\n this.defaultContainer.remove();\r\n };\r\n this.clear = () => {\r\n for (const [element, addButton] of this.addButtonByElement.entries()) {\r\n addButton.remove();\r\n this.addButtonByElement.delete(element);\r\n }\r\n for (const [element, highlight] of this.highlightByElement.entries()) {\r\n highlight.remove();\r\n this.highlightByElement.delete(element);\r\n }\r\n for (const [root, container] of this.containerByRenderingRoot.entries()) {\r\n container.remove();\r\n this.containerByRenderingRoot.delete(root);\r\n }\r\n this.highlightByElement = new Map();\r\n this.containerByRenderingRoot = new Map();\r\n this.addButtonByElement = new Map();\r\n this.defaultContainer.innerHTML = '';\r\n };\r\n this.createContainerIfNotExist = (root) => {\r\n // if root is not specified or root is body\r\n if (!root || root === document.body) {\r\n return this.defaultContainer;\r\n }\r\n let container = this.containerByRenderingRoot.get(root);\r\n if (container) {\r\n return container;\r\n }\r\n container = document.createElement(KSLContainerElement.is);\r\n root.appendChild(container);\r\n this.containerByRenderingRoot.set(root, container);\r\n return container;\r\n };\r\n this.containerByRenderingRoot = new Map();\r\n this.highlightByElement = new Map();\r\n this.addButtonByElement = new Map();\r\n this.defaultContainer = SmartLinkRenderer.createAndMountDefaultContainer();\r\n }\r\n static createAndMountDefaultContainer() {\r\n const container = document.createElement(KSLContainerElement.is);\r\n window.document.body.appendChild(container);\r\n return container;\r\n }\r\n}\r\n//# sourceMappingURL=SmartLinkRenderer.js.map","import { Logger } from '../lib/Logger';\r\nfunction logErrors(errors) {\r\n errors.forEach((error) => {\r\n Logger.error(error);\r\n });\r\n}\r\nexport function validateContentItemClickEditMessageData(data) {\r\n const errors = [];\r\n if (!data.projectId) {\r\n errors.push('Project ID is required to handle element click.');\r\n }\r\n if (!data.languageCodename) {\r\n errors.push('Language codename is required to handle element click.');\r\n }\r\n if (!data.itemId) {\r\n errors.push('Item ID is required to handle element click.');\r\n }\r\n logErrors(errors);\r\n return errors.length === 0;\r\n}\r\nexport function validateElementClickMessageData(data) {\r\n if (!data.elementCodename) {\r\n Logger.error('Element codename is required to handle element click.');\r\n return false;\r\n }\r\n return validateContentItemClickEditMessageData(data);\r\n}\r\nexport function validateContentComponentClickMessageData(data) {\r\n if (!data.contentComponentId) {\r\n Logger.error('Content component ID is required to handle element click.');\r\n return false;\r\n }\r\n return validateContentItemClickEditMessageData(data);\r\n}\r\nexport function validateAddInitialMessageData(data) {\r\n const errors = [];\r\n if (!data.projectId) {\r\n errors.push('Project ID is required to handle add button click.');\r\n }\r\n if (!data.languageCodename) {\r\n errors.push('Language codename is required to handle add button click.');\r\n }\r\n if (!data.itemId) {\r\n errors.push('Item ID is required to handle add button click.');\r\n }\r\n if (!data.elementCodename) {\r\n errors.push('Element codename is required to handle add button click.');\r\n }\r\n if (!data.insertPosition) {\r\n errors.push('Insert position (placement, targetId) is required to handle add button click.');\r\n }\r\n logErrors(errors);\r\n return errors.length === 0;\r\n}\r\nexport function validateAddActionMessageData(data) {\r\n if (!data.action) {\r\n Logger.error('Action is required to handle add button click.');\r\n return false;\r\n }\r\n return validateAddInitialMessageData(data);\r\n}\r\n//# sourceMappingURL=validation.js.map","function buildItemLink(projectId, languageCodename, itemId) {\r\n return `https://app.kontent.ai/goto/edit-item/project/${projectId}/variant-codename/${languageCodename}/item/${itemId}`;\r\n}\r\nexport function buildElementLink(projectId, languageCodename, itemId, elementCodename) {\r\n return `${buildItemLink(projectId, languageCodename, itemId)}/element/${elementCodename}`;\r\n}\r\nexport function buildComponentElementLink(projectId, languageCodename, itemId, contentComponentId, componentElementCodename) {\r\n return `${buildItemLink(projectId, languageCodename, itemId)}/component/${contentComponentId}/element/${componentElementCodename}`;\r\n}\r\nexport function buildKontentLink(data) {\r\n if (data.contentComponentId) {\r\n return buildComponentElementLink(data.projectId, data.languageCodename, data.itemId, data.contentComponentId, data.elementCodename);\r\n }\r\n else {\r\n return buildElementLink(data.projectId, data.languageCodename, data.itemId, data.elementCodename);\r\n }\r\n}\r\n//# sourceMappingURL=link.js.map","import { isElementWebComponent } from '../web-components/components';\r\nimport { AddButtonElementType, IFrameMessageType, } from './IFrameCommunicatorTypes';\r\nimport { SmartLinkRenderer } from './SmartLinkRenderer';\r\nimport { getAugmentableDescendants, isElementAugmentable } from '../utils/customElements';\r\nimport { validateAddActionMessageData, validateAddInitialMessageData, validateContentComponentClickMessageData, validateContentItemClickEditMessageData, validateElementClickMessageData, } from '../utils/validation';\r\nimport { ConfigurationManager } from './ConfigurationManager';\r\nimport { buildKontentLink } from '../utils/link';\r\nimport { Logger } from './Logger';\r\nimport { InvalidEnvironmentError } from '../utils/errors';\r\nexport class NodeSmartLinkProvider {\r\n constructor(iframeCommunicator) {\r\n this.iframeCommunicator = iframeCommunicator;\r\n this.enabled = false;\r\n this.renderingTimeoutId = 0;\r\n this.observedElements = new Set();\r\n this.visibleElements = new Set();\r\n this.toggle = (force) => {\r\n const shouldEnable = typeof force !== 'undefined' ? force : !this.enabled;\r\n if (shouldEnable) {\r\n this.enable();\r\n }\r\n else {\r\n this.disable();\r\n }\r\n };\r\n this.enable = () => {\r\n if (this.enabled)\r\n return;\r\n this.startRenderingInterval();\r\n this.listenToGlobalEvents();\r\n this.observeDomMutations();\r\n this.enabled = true;\r\n };\r\n this.disable = () => {\r\n if (!this.enabled)\r\n return;\r\n this.stopRenderingInterval();\r\n this.unlistenToGlobalEvents();\r\n this.disconnectObservers();\r\n this.renderer.clear();\r\n this.enabled = false;\r\n };\r\n this.destroy = () => {\r\n this.disable();\r\n this.renderer.destroy();\r\n };\r\n this.augmentVisibleElements = () => {\r\n requestAnimationFrame(() => {\r\n this.renderer.render(this.visibleElements, this.observedElements);\r\n });\r\n };\r\n /**\r\n * Start an interval rendering (1s) that will re-render highlights for all visible elements using `setTimeout`.\r\n * It helps to adjust highlights position even in situations that are currently not supported by\r\n * the SDK (e.g. element position change w/o animations, some infinite animations and other possible unhandled cases)\r\n * for better user experience.\r\n */\r\n this.startRenderingInterval = () => {\r\n this.augmentVisibleElements();\r\n this.renderingTimeoutId = window.setTimeout(this.startRenderingInterval, 1000);\r\n };\r\n this.stopRenderingInterval = () => {\r\n if (this.renderingTimeoutId) {\r\n clearTimeout(this.renderingTimeoutId);\r\n this.renderingTimeoutId = 0;\r\n }\r\n };\r\n this.listenToGlobalEvents = () => {\r\n window.addEventListener('scroll', this.augmentVisibleElements, { capture: true });\r\n window.addEventListener('resize', this.augmentVisibleElements, { passive: true });\r\n window.addEventListener('animationend', this.augmentVisibleElements, { passive: true, capture: true });\r\n window.addEventListener('transitionend', this.augmentVisibleElements, { passive: true, capture: true });\r\n window.addEventListener('ksl:add-button:initial', this.onAddInitialClick, { capture: true });\r\n window.addEventListener('ksl:add-button:action', this.onAddActionClick, { capture: true });\r\n window.addEventListener('ksl:highlight:edit', this.onEditElement, { capture: true });\r\n };\r\n this.unlistenToGlobalEvents = () => {\r\n window.removeEventListener('scroll', this.augmentVisibleElements, { capture: true });\r\n window.removeEventListener('resize', this.augmentVisibleElements);\r\n window.removeEventListener('animationend', this.augmentVisibleElements, { capture: true });\r\n window.removeEventListener('transitionend', this.augmentVisibleElements, { capture: true });\r\n window.removeEventListener('ksl:add-button:initial', this.onAddInitialClick, { capture: true });\r\n window.removeEventListener('ksl:add-button:action', this.onAddActionClick, { capture: true });\r\n window.removeEventListener('ksl:highlight:edit', this.onEditElement, { capture: true });\r\n };\r\n this.observeDomMutations = () => {\r\n if (this.enabled)\r\n return;\r\n this.mutationObserver.observe(window.document.body, {\r\n childList: true,\r\n subtree: true,\r\n });\r\n getAugmentableDescendants(document).forEach((element) => {\r\n if (element instanceof HTMLElement) {\r\n this.observeElementVisibility(element);\r\n }\r\n });\r\n };\r\n this.disconnectObservers = () => {\r\n this.mutationObserver.disconnect();\r\n this.intersectionObserver.disconnect();\r\n this.observedElements.forEach((element) => {\r\n this.unobserveElementVisibility(element);\r\n });\r\n this.observedElements = new Set();\r\n this.visibleElements = new Set();\r\n };\r\n this.observeElementVisibility = (element) => {\r\n if (this.observedElements.has(element))\r\n return;\r\n this.intersectionObserver.observe(element);\r\n this.observedElements.add(element);\r\n };\r\n this.unobserveElementVisibility = (element) => {\r\n if (!this.observedElements.has(element))\r\n return;\r\n this.intersectionObserver.unobserve(element);\r\n this.observedElements.delete(element);\r\n this.visibleElements.delete(element);\r\n };\r\n this.onDomMutation = (mutations) => {\r\n const relevantMutations = mutations.filter((mutation) => {\r\n const isTypeRelevant = mutation.type === 'childList';\r\n const isTargetRelevant = mutation.target instanceof HTMLElement && !isElementWebComponent(mutation.target);\r\n if (!isTypeRelevant || !isTargetRelevant) {\r\n return false;\r\n }\r\n const hasRelevantAddedNodes = Array.from(mutation.addedNodes).some((node) => node instanceof HTMLElement && !isElementWebComponent(node));\r\n const hasRelevantRemovedNodes = Array.from(mutation.removedNodes).some((node) => node instanceof HTMLElement && !isElementWebComponent(node));\r\n return hasRelevantAddedNodes || hasRelevantRemovedNodes;\r\n });\r\n for (const mutation of relevantMutations) {\r\n for (const node of mutation.addedNodes) {\r\n if (!(node instanceof HTMLElement))\r\n continue;\r\n if (isElementAugmentable(node)) {\r\n this.observeElementVisibility(node);\r\n }\r\n for (const element of getAugmentableDescendants(node)) {\r\n if (!(element instanceof HTMLElement))\r\n continue;\r\n this.observeElementVisibility(element);\r\n }\r\n }\r\n for (const node of mutation.removedNodes) {\r\n if (!(node instanceof HTMLElement))\r\n continue;\r\n if (isElementAugmentable(node)) {\r\n this.unobserveElementVisibility(node);\r\n }\r\n for (const element of getAugmentableDescendants(node)) {\r\n if (!(element instanceof HTMLElement))\r\n continue;\r\n this.unobserveElementVisibility(element);\r\n }\r\n }\r\n }\r\n if (relevantMutations.length > 0) {\r\n this.augmentVisibleElements();\r\n }\r\n };\r\n this.onElementVisibilityChange = (entries) => {\r\n const filteredEntries = entries.filter((entry) => entry.target instanceof HTMLElement);\r\n for (const entry of filteredEntries) {\r\n const target = entry.target;\r\n if (entry.isIntersecting) {\r\n this.visibleElements.add(target);\r\n }\r\n else {\r\n this.visibleElements.delete(target);\r\n }\r\n }\r\n if (filteredEntries.length > 0) {\r\n this.augmentVisibleElements();\r\n }\r\n };\r\n this.onEditElement = (event) => {\r\n var _a, _b;\r\n const isInsideWebSpotlight = this.configurationManager.isInsideWebSpotlightPreviewIFrame;\r\n const { data, targetNode } = event.detail;\r\n const messageData = Object.assign(Object.assign({}, data), { projectId: (_a = data.projectId) !== null && _a !== void 0 ? _a : this.configurationManager.defaultProjectId, languageCodename: (_b = data.languageCodename) !== null && _b !== void 0 ? _b : this.configurationManager.defaultLanguageCodename });\r\n const messageMetadata = {\r\n elementRect: targetNode.getBoundingClientRect(),\r\n };\r\n if ('elementCodename' in messageData && messageData.elementCodename) {\r\n if (validateElementClickMessageData(messageData)) {\r\n if (isInsideWebSpotlight) {\r\n this.iframeCommunicator.sendMessage(IFrameMessageType.ElementClicked, messageData, messageMetadata);\r\n }\r\n else {\r\n const link = buildKontentLink(messageData);\r\n window.open(link, '_blank');\r\n }\r\n }\r\n }\r\n else if ('contentComponentId' in messageData && messageData.contentComponentId) {\r\n if (validateContentComponentClickMessageData(messageData)) {\r\n if (isInsideWebSpotlight) {\r\n this.iframeCommunicator.sendMessage(IFrameMessageType.ContentComponentClicked, messageData, messageMetadata);\r\n }\r\n else {\r\n Logger.warn('Edit buttons for content components are only functional inside Web Spotlight.');\r\n }\r\n }\r\n }\r\n else if ('itemId' in messageData && messageData.itemId) {\r\n if (validateContentItemClickEditMessageData(messageData)) {\r\n if (isInsideWebSpotlight) {\r\n this.iframeCommunicator.sendMessage(IFrameMessageType.ContentItemClicked, messageData, messageMetadata);\r\n }\r\n else {\r\n Logger.warn('Add buttons for content items are only functional inside Web Spotlight.');\r\n }\r\n }\r\n }\r\n else {\r\n Logger.warn('Some required attributes are not found or the edit button for this type of element is not yet supported.');\r\n }\r\n };\r\n this.onAddInitialClick = (event) => {\r\n var _a, _b;\r\n const isInsideWebSpotlight = this.configurationManager.isInsideWebSpotlightPreviewIFrame;\r\n const { eventData, onResolve, onReject } = event.detail;\r\n const { data, targetNode } = eventData;\r\n const messageData = Object.assign(Object.assign({}, data), { languageCodename: (_a = data.languageCodename) !== null && _a !== void 0 ? _a : this.configurationManager.defaultLanguageCodename, projectId: (_b = data.projectId) !== null && _b !== void 0 ? _b : this.configurationManager.defaultProjectId });\r\n if (validateAddInitialMessageData(messageData)) {\r\n if (isInsideWebSpotlight) {\r\n const messageMetadata = {\r\n elementRect: targetNode.getBoundingClientRect(),\r\n };\r\n this.iframeCommunicator.sendMessageWithResponse(IFrameMessageType.AddInitial, messageData, (response) => {\r\n if (!response || response.elementType === AddButtonElementType.Unknown) {\r\n return onReject({ message: 'Something went wrong' });\r\n }\r\n return onResolve(response);\r\n }, messageMetadata);\r\n }\r\n else {\r\n Logger.warn('Add buttons are only functional inside Web Spotlight.');\r\n onReject({ message: 'Add buttons are only functional inside Web Spotlight' });\r\n }\r\n }\r\n else {\r\n onReject({ message: 'Required data attributes are missing' });\r\n }\r\n };\r\n this.onAddActionClick = (event) => {\r\n var _a, _b;\r\n const isInsideWebSpotlight = this.configurationManager.isInsideWebSpotlightPreviewIFrame;\r\n const { data, targetNode } = event.detail;\r\n const messageData = Object.assign(Object.assign({}, data), { languageCodename: (_a = data.languageCodename) !== null && _a !== void 0 ? _a : this.configurationManager.defaultLanguageCodename, projectId: (_b = data.projectId) !== null && _b !== void 0 ? _b : this.configurationManager.defaultProjectId });\r\n if (validateAddActionMessageData(messageData)) {\r\n if (isInsideWebSpotlight) {\r\n const messageMetadata = {\r\n elementRect: targetNode.getBoundingClientRect(),\r\n };\r\n this.iframeCommunicator.sendMessage(IFrameMessageType.AddAction, messageData, messageMetadata);\r\n }\r\n else {\r\n Logger.warn('Add buttons are only functional inside Web Spotlight.');\r\n }\r\n }\r\n };\r\n if (typeof window === 'undefined' ||\r\n typeof MutationObserver === 'undefined' ||\r\n typeof IntersectionObserver === 'undefined') {\r\n throw InvalidEnvironmentError('NodeSmartLinkProvider can only be initialized in a browser environment.');\r\n }\r\n this.configurationManager = ConfigurationManager.getInstance();\r\n this.mutationObserver = new MutationObserver(this.onDomMutation);\r\n this.intersectionObserver = new IntersectionObserver(this.onElementVisibilityChange);\r\n this.renderer = new SmartLinkRenderer();\r\n }\r\n}\r\n//# sourceMappingURL=NodeSmartLinkProvider.js.map","import { Logger } from '../lib/Logger';\r\nconst LocalStorageNotAvailable = 'Local storage is not available or access to local storage is denied for the current document. It may affect the proper work of the SDK.';\r\nexport function createStorage(key) {\r\n return {\r\n get() {\r\n try {\r\n const value = window.localStorage.getItem(key);\r\n return value ? JSON.parse(value) : null;\r\n }\r\n catch (_a) {\r\n Logger.warn(LocalStorageNotAvailable);\r\n return null;\r\n }\r\n },\r\n set(data) {\r\n try {\r\n const json = JSON.stringify(data);\r\n window.localStorage.setItem(key, json);\r\n }\r\n catch (_a) {\r\n Logger.warn(LocalStorageNotAvailable);\r\n }\r\n },\r\n remove() {\r\n try {\r\n window.localStorage.removeItem(key);\r\n }\r\n catch (_a) {\r\n Logger.warn(LocalStorageNotAvailable);\r\n }\r\n },\r\n };\r\n}\r\n//# sourceMappingURL=storage.js.map","export class EventManager {\r\n constructor() {\r\n this.listeners = new Map();\r\n this.on = (event, listener) => {\r\n var _a, _b;\r\n const newListeners = (_b = (_a = this.listeners.get(event)) === null || _a === void 0 ? void 0 : _a.add(listener)) !== null && _b !== void 0 ? _b : new Set([listener]);\r\n this.listeners.set(event, newListeners);\r\n };\r\n this.off = (event, listener) => {\r\n var _a;\r\n (_a = this.listeners.get(event)) === null || _a === void 0 ? void 0 : _a.delete(listener);\r\n };\r\n this.emit = (event, ...args) => {\r\n const listeners = this.listeners.get(event);\r\n if (listeners && listeners.size > 0) {\r\n listeners.forEach((callback) => {\r\n callback(...args);\r\n });\r\n }\r\n };\r\n this.removeAllListeners = () => {\r\n this.listeners = new Map();\r\n };\r\n this.hasEventListener = (event) => {\r\n return this.listeners.has(event);\r\n };\r\n }\r\n}\r\n//# sourceMappingURL=EventManager.js.map","import { isInsideIFrame } from '../utils/iframe';\r\nimport { EventManager } from './EventManager';\r\nimport { IFrameMessageType, } from './IFrameCommunicatorTypes';\r\nimport { createUuid } from '../utils/createUuid';\r\nimport { InvalidEnvironmentError } from '../utils/errors';\r\nexport class IFrameCommunicator {\r\n constructor() {\r\n this.events = new EventManager();\r\n this.callbacks = new Map();\r\n this.addMessageListener = (type, listener) => {\r\n this.events.on(type, listener);\r\n };\r\n this.removeMessageListener = (type, listener) => {\r\n this.events.off(type, listener);\r\n };\r\n this.sendMessageWithResponse = (type, data, callback, metadata) => {\r\n const requestId = createUuid();\r\n this.registerCallback(requestId, callback);\r\n this.sendMessage(type, data, metadata, requestId);\r\n };\r\n this.sendMessage = (type, data, metadata, requestId) => {\r\n if (!isInsideIFrame()) {\r\n throw InvalidEnvironmentError('IFrameCommunicator: iframe message can only be send while inside iframe.');\r\n }\r\n const message = { type, data, metadata, requestId };\r\n window.parent.postMessage(message, '*');\r\n };\r\n this.onMessage = (event) => {\r\n if (!event.data)\r\n return;\r\n const message = event.data;\r\n this.events.emit(message.type, message.data, message.metadata);\r\n if (message.requestId) {\r\n this.executeCallback(message.requestId, message.data);\r\n }\r\n };\r\n this.registerCallback = (requestId, callback) => {\r\n if (!callback) {\r\n return;\r\n }\r\n this.callbacks.set(requestId, callback);\r\n };\r\n this.executeCallback = (requestId, data) => {\r\n const callback = this.callbacks.get(requestId);\r\n if (callback) {\r\n callback(data);\r\n this.callbacks.delete(requestId);\r\n }\r\n };\r\n }\r\n initialize() {\r\n if (typeof window === 'undefined') {\r\n throw InvalidEnvironmentError('IFrameCommunicator can only be initialized in a browser environment.');\r\n }\r\n window.addEventListener('message', this.onMessage, true);\r\n }\r\n destroy() {\r\n this.events.removeAllListeners();\r\n window.removeEventListener('message', this.onMessage, true);\r\n }\r\n}\r\n//# sourceMappingURL=IFrameCommunicator.js.map","export const createUuid = () => {\r\n const randomUint32 = window.crypto.getRandomValues(new Uint32Array(1))[0];\r\n return randomUint32.toString(16);\r\n};\r\n//# sourceMappingURL=createUuid.js.map","let QueryParamPresenceWatcher = /** @class */ (() => {\r\n class QueryParamPresenceWatcher {\r\n constructor() {\r\n this.previousValue = new Map();\r\n this.timers = new Map();\r\n this.watch = (queryParam, onChange) => {\r\n const timerId = this.timers.get(queryParam);\r\n if (timerId) {\r\n clearTimeout(timerId);\r\n }\r\n const isPresent = QueryParamPresenceWatcher.isQueryParamPresent(queryParam);\r\n const hasChanged = this.previousValue.get(queryParam) !== isPresent;\r\n if (hasChanged) {\r\n onChange(isPresent);\r\n }\r\n const newTimerId = window.setTimeout(() => this.watch(queryParam, onChange), QueryParamPresenceWatcher.WatchTimeoutMs);\r\n this.timers.set(queryParam, newTimerId);\r\n };\r\n this.unwatchAll = () => {\r\n this.timers.forEach((timerId) => {\r\n clearTimeout(timerId);\r\n });\r\n this.timers.clear();\r\n };\r\n }\r\n /**\r\n * Check if query parameter is present in the current page URL.\r\n * Query parameter value is ignored, only presence is checked.\r\n *\r\n * @param {string} queryParam\r\n * @returns {boolean}\r\n */\r\n static isQueryParamPresent(queryParam) {\r\n const regex = new RegExp(`[?&]${queryParam}([=&]|$)`, 'i');\r\n return regex.test(window.location.search);\r\n }\r\n }\r\n QueryParamPresenceWatcher.WatchTimeoutMs = 1000;\r\n return QueryParamPresenceWatcher;\r\n})();\r\nexport { QueryParamPresenceWatcher };\r\n//# sourceMappingURL=QueryParamPresenceWatcher.js.map","import { Logger } from '../lib/Logger';\r\nexport function reload() {\r\n try {\r\n window.location.reload();\r\n }\r\n catch (e) {\r\n Logger.error(e);\r\n }\r\n}\r\n//# sourceMappingURL=reload.js.map","var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n};\r\nimport { isInsideIFrame } from './utils/iframe';\r\nimport { NodeSmartLinkProvider } from './lib/NodeSmartLinkProvider';\r\nimport { createStorage } from './utils/storage';\r\nimport { IFrameCommunicator } from './lib/IFrameCommunicator';\r\nimport { IFrameMessageType, } from './lib/IFrameCommunicatorTypes';\r\nimport { QueryParamPresenceWatcher } from './lib/QueryParamPresenceWatcher';\r\nimport { defineAllRequiredWebComponents } from './web-components/components';\r\nimport { ConfigurationManager } from './lib/ConfigurationManager';\r\nimport { InvalidEnvironmentError, NotInitializedError } from './utils/errors';\r\nimport { Logger, LogLevel } from './lib/Logger';\r\nimport { reload } from './utils/reload';\r\nimport { EventManager } from './lib/EventManager';\r\nexport var KontentSmartLinkEvent;\r\n(function (KontentSmartLinkEvent) {\r\n KontentSmartLinkEvent[\"Refresh\"] = \"refresh\";\r\n})(KontentSmartLinkEvent || (KontentSmartLinkEvent = {}));\r\nclass KontentSmartLinkSDK {\r\n constructor(configuration) {\r\n this.initialize = () => __awaiter(this, void 0, void 0, function* () {\r\n yield defineAllRequiredWebComponents();\r\n const level = this.configurationManager.debug ? LogLevel.Debug : LogLevel.Info;\r\n Logger.setLogLevel(level);\r\n if (this.configurationManager.queryParam) {\r\n this.queryParamPresenceWatcher.watch(this.configurationManager.queryParam, this.nodeSmartLinkProvider.toggle);\r\n }\r\n else {\r\n this.nodeSmartLinkProvider.enable();\r\n }\r\n if (isInsideIFrame()) {\r\n this.initializeIFrameCommunication();\r\n }\r\n });\r\n this.destroy = () => {\r\n this.events.removeAllListeners();\r\n this.queryParamPresenceWatcher.unwatchAll();\r\n this.iframeCommunicator.destroy();\r\n this.nodeSmartLinkProvider.destroy();\r\n };\r\n this.updateConfiguration = (configuration) => {\r\n if (typeof configuration.queryParam !== 'undefined') {\r\n if (!configuration.queryParam) {\r\n this.nodeSmartLinkProvider.enable();\r\n }\r\n else if (configuration.queryParam !== this.configurationManager.queryParam) {\r\n this.queryParamPresenceWatcher.unwatchAll();\r\n this.queryParamPresenceWatcher.watch(configuration.queryParam, this.nodeSmartLinkProvider.toggle);\r\n }\r\n }\r\n if (typeof configuration.debug !== 'undefined') {\r\n const level = configuration.debug ? LogLevel.Debug : LogLevel.Info;\r\n Logger.setLogLevel(level);\r\n }\r\n this.configurationManager.update(configuration);\r\n };\r\n this.on = (event, handler) => {\r\n this.events.on(event, handler);\r\n };\r\n this.off = (event, handler) => {\r\n this.events.off(event, handler);\r\n };\r\n this.initializeIFrameCommunication = () => {\r\n var _a, _b;\r\n this.iframeCommunicator.initialize();\r\n const storage = KontentSmartLinkSDK.getSettingsStorage();\r\n const settings = storage.get();\r\n const enabled = settings !== null ? settings === null || settings === void 0 ? void 0 : settings.enabled : true;\r\n const messageData = {\r\n enabled,\r\n languageCodename: (_a = this.configurationManager.defaultLanguageCodename) !== null && _a !== void 0 ? _a : null,\r\n projectId: (_b = this.configurationManager.defaultProjectId) !== null && _b !== void 0 ? _b : null,\r\n supportedFeatures: {\r\n refreshHandler: true,\r\n },\r\n };\r\n this.iframeCommunicator.sendMessageWithResponse(IFrameMessageType.Initialized, messageData, () => {\r\n this.configurationManager.update({ isInsideWebSpotlight: true });\r\n this.queryParamPresenceWatcher.unwatchAll();\r\n this.nodeSmartLinkProvider.disable();\r\n if (enabled) {\r\n this.nodeSmartLinkProvider.enable();\r\n }\r\n this.iframeCommunicator.addMessageListener(IFrameMessageType.Status, this.handleStatusMessage);\r\n this.iframeCommunicator.addMessageListener(IFrameMessageType.RefreshPreview, this.handleRefreshMessage);\r\n });\r\n };\r\n this.handleStatusMessage = (data) => {\r\n if (!data || !this.nodeSmartLinkProvider)\r\n return;\r\n this.nodeSmartLinkProvider.toggle(data.enabled);\r\n KontentSmartLinkSDK.getSettingsStorage().set({\r\n enabled: data.enabled,\r\n });\r\n };\r\n this.handleRefreshMessage = (data, metadata) => {\r\n const isCustomRefreshHandlerImplemented = this.events.hasEventListener(KontentSmartLinkEvent.Refresh);\r\n if (isCustomRefreshHandlerImplemented) {\r\n this.events.emit(KontentSmartLinkEvent.Refresh, data, metadata, reload);\r\n }\r\n else {\r\n reload();\r\n }\r\n };\r\n this.configurationManager = ConfigurationManager.getInstance();\r\n this.configurationManager.update(configuration);\r\n this.events = new EventManager();\r\n this.queryParamPresenceWatcher = new QueryParamPresenceWatcher();\r\n this.iframeCommunicator = new IFrameCommunicator();\r\n this.nodeSmartLinkProvider = new NodeSmartLinkProvider(this.iframeCommunicator);\r\n this.initialize();\r\n }\r\n static getSettingsStorage() {\r\n return createStorage('kontent-smart-link:iframe-settings');\r\n }\r\n}\r\nclass KontentSmartLink {\r\n constructor() {\r\n this.sdk = null;\r\n this.destroy = () => {\r\n var _a;\r\n (_a = this.sdk) === null || _a === void 0 ? void 0 : _a.destroy();\r\n this.sdk = null;\r\n };\r\n this.setConfiguration = (configuration) => {\r\n if (!this.sdk) {\r\n throw NotInitializedError('KontentSmartLink is not initialized or has already been destroyed.');\r\n }\r\n else {\r\n this.sdk.updateConfiguration(configuration);\r\n }\r\n };\r\n this.on = (event, handler) => {\r\n if (!this.sdk) {\r\n throw NotInitializedError('KontentSmartLink is not initialized or has already been destroyed.');\r\n }\r\n else {\r\n this.sdk.on(event, handler);\r\n }\r\n };\r\n this.off = (event, handler) => {\r\n if (!this.sdk) {\r\n throw NotInitializedError('KontentSmartLink is not initialized or has already been destroyed.');\r\n }\r\n else {\r\n this.sdk.off(event, handler);\r\n }\r\n };\r\n }\r\n static initializeOnLoad(configuration) {\r\n if (typeof window === 'undefined') {\r\n throw InvalidEnvironmentError('KontentSmartLink can only be initialized in a browser environment.');\r\n }\r\n return new Promise((resolve) => {\r\n window.addEventListener('load', () => {\r\n resolve(KontentSmartLink.initialize(configuration));\r\n });\r\n });\r\n }\r\n static initialize(configuration) {\r\n if (!KontentSmartLink.instance) {\r\n KontentSmartLink.instance = new KontentSmartLink();\r\n }\r\n if (!KontentSmartLink.instance.sdk) {\r\n KontentSmartLink.instance.sdk = new KontentSmartLinkSDK(configuration);\r\n }\r\n return KontentSmartLink.instance;\r\n }\r\n}\r\nexport default KontentSmartLink;\r\n//# sourceMappingURL=sdk.js.map","var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('navigator', 'userAgent') || '';\n","var call = require('../internals/function-call');\nvar isObject = require('../internals/is-object');\nvar isSymbol = require('../internals/is-symbol');\nvar getMethod = require('../internals/get-method');\nvar ordinaryToPrimitive = require('../internals/ordinary-to-primitive');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar $TypeError = TypeError;\nvar TO_PRIMITIVE = wellKnownSymbol('toPrimitive');\n\n// `ToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-toprimitive\nmodule.exports = function (input, pref) {\n if (!isObject(input) || isSymbol(input)) return input;\n var exoticToPrim = getMethod(input, TO_PRIMITIVE);\n var result;\n if (exoticToPrim) {\n if (pref === undefined) pref = 'default';\n result = call(exoticToPrim, input, pref);\n if (!isObject(result) || isSymbol(result)) return result;\n throw $TypeError(\"Can't convert object to primitive value\");\n }\n if (pref === undefined) pref = 'number';\n return ordinaryToPrimitive(input, pref);\n};\n","var call = require('../internals/function-call');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\n\nvar $TypeError = TypeError;\n\n// `OrdinaryToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-ordinarytoprimitive\nmodule.exports = function (input, pref) {\n var fn, val;\n if (pref === 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n if (isCallable(fn = input.valueOf) && !isObject(val = call(fn, input))) return val;\n if (pref !== 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n throw $TypeError(\"Can't convert object to primitive value\");\n};\n","var fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar CONFIGURABLE_FUNCTION_NAME = require('../internals/function-name').CONFIGURABLE;\nvar inspectSource = require('../internals/inspect-source');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar enforceInternalState = InternalStateModule.enforce;\nvar getInternalState = InternalStateModule.get;\n// eslint-disable-next-line es-x/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\n\nvar CONFIGURABLE_LENGTH = DESCRIPTORS && !fails(function () {\n return defineProperty(function () { /* empty */ }, 'length', { value: 8 }).length !== 8;\n});\n\nvar TEMPLATE = String(String).split('String');\n\nvar makeBuiltIn = module.exports = function (value, name, options) {\n if (String(name).slice(0, 7) === 'Symbol(') {\n name = '[' + String(name).replace(/^Symbol\\(([^)]*)\\)/, '$1') + ']';\n }\n if (options && options.getter) name = 'get ' + name;\n if (options && options.setter) name = 'set ' + name;\n if (!hasOwn(value, 'name') || (CONFIGURABLE_FUNCTION_NAME && value.name !== name)) {\n if (DESCRIPTORS) defineProperty(value, 'name', { value: name, configurable: true });\n else value.name = name;\n }\n if (CONFIGURABLE_LENGTH && options && hasOwn(options, 'arity') && value.length !== options.arity) {\n defineProperty(value, 'length', { value: options.arity });\n }\n try {\n if (options && hasOwn(options, 'constructor') && options.constructor) {\n if (DESCRIPTORS) defineProperty(value, 'prototype', { writable: false });\n // in V8 ~ Chrome 53, prototypes of some methods, like `Array.prototype.values`, are non-writable\n } else if (value.prototype) value.prototype = undefined;\n } catch (error) { /* empty */ }\n var state = enforceInternalState(value);\n if (!hasOwn(state, 'source')) {\n state.source = TEMPLATE.join(typeof name == 'string' ? name : '');\n } return value;\n};\n\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n// eslint-disable-next-line no-extend-native -- required\nFunction.prototype.toString = makeBuiltIn(function toString() {\n return isCallable(this) && getInternalState(this).source || inspectSource(this);\n}, 'toString');\n","var global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar WeakMap = global.WeakMap;\n\nmodule.exports = isCallable(WeakMap) && /native code/.test(String(WeakMap));\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar classof = require('../internals/classof');\n\n// `Object.prototype.toString` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nmodule.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() {\n return '[object ' + classof(this) + ']';\n};\n","var global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar DOMTokenListPrototype = require('../internals/dom-token-list-prototype');\nvar forEach = require('../internals/array-for-each');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nvar handlePrototype = function (CollectionPrototype) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype && CollectionPrototype.forEach !== forEach) try {\n createNonEnumerableProperty(CollectionPrototype, 'forEach', forEach);\n } catch (error) {\n CollectionPrototype.forEach = forEach;\n }\n};\n\nfor (var COLLECTION_NAME in DOMIterables) {\n if (DOMIterables[COLLECTION_NAME]) {\n handlePrototype(global[COLLECTION_NAME] && global[COLLECTION_NAME].prototype);\n }\n}\n\nhandlePrototype(DOMTokenListPrototype);\n","'use strict';\nvar $forEach = require('../internals/array-iteration').forEach;\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\n\nvar STRICT_METHOD = arrayMethodIsStrict('forEach');\n\n// `Array.prototype.forEach` method implementation\n// https://tc39.es/ecma262/#sec-array.prototype.foreach\nmodule.exports = !STRICT_METHOD ? function forEach(callbackfn /* , thisArg */) {\n return $forEach(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n// eslint-disable-next-line es-x/no-array-prototype-foreach -- safe\n} : [].forEach;\n","var toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.es/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n return argument > 0 ? min(toIntegerOrInfinity(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","var ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `Math.trunc` method\n// https://tc39.es/ecma262/#sec-math.trunc\n// eslint-disable-next-line es-x/no-math-trunc -- safe\nmodule.exports = Math.trunc || function trunc(x) {\n var n = +x;\n return (n > 0 ? floor : ceil)(n);\n};\n","var isArray = require('../internals/is-array');\nvar isConstructor = require('../internals/is-constructor');\nvar isObject = require('../internals/is-object');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\nvar $Array = Array;\n\n// a part of `ArraySpeciesCreate` abstract operation\n// https://tc39.es/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray) {\n var C;\n if (isArray(originalArray)) {\n C = originalArray.constructor;\n // cross-realm fallback\n if (isConstructor(C) && (C === $Array || isArray(C.prototype))) C = undefined;\n else if (isObject(C)) {\n C = C[SPECIES];\n if (C === null) C = undefined;\n }\n } return C === undefined ? $Array : C;\n};\n","var uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar classof = require('../internals/classof');\nvar getBuiltIn = require('../internals/get-built-in');\nvar inspectSource = require('../internals/inspect-source');\n\nvar noop = function () { /* empty */ };\nvar empty = [];\nvar construct = getBuiltIn('Reflect', 'construct');\nvar constructorRegExp = /^\\s*(?:class|function)\\b/;\nvar exec = uncurryThis(constructorRegExp.exec);\nvar INCORRECT_TO_STRING = !constructorRegExp.exec(noop);\n\nvar isConstructorModern = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n try {\n construct(noop, empty, argument);\n return true;\n } catch (error) {\n return false;\n }\n};\n\nvar isConstructorLegacy = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n switch (classof(argument)) {\n case 'AsyncFunction':\n case 'GeneratorFunction':\n case 'AsyncGeneratorFunction': return false;\n }\n try {\n // we can't check .prototype since constructors produced by .bind haven't it\n // `Function#toString` throws on some built-it function in some legacy engines\n // (for example, `DOMQuad` and similar in FF41-)\n return INCORRECT_TO_STRING || !!exec(constructorRegExp, inspectSource(argument));\n } catch (error) {\n return true;\n }\n};\n\nisConstructorLegacy.sham = true;\n\n// `IsConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-isconstructor\nmodule.exports = !construct || fails(function () {\n var called;\n return isConstructorModern(isConstructorModern.call)\n || !isConstructorModern(Object)\n || !isConstructorModern(function () { called = true; })\n || called;\n}) ? isConstructorLegacy : isConstructorModern;\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = function (METHOD_NAME, argument) {\n var method = [][METHOD_NAME];\n return !!method && fails(function () {\n // eslint-disable-next-line no-useless-call -- required for testing\n method.call(null, argument || function () { return 1; }, 1);\n });\n};\n","var $ = require('../internals/export');\nvar assign = require('../internals/object-assign');\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\n// eslint-disable-next-line es-x/no-object-assign -- required for testing\n$({ target: 'Object', stat: true, arity: 2, forced: Object.assign !== assign }, {\n assign: assign\n});\n","var getBuiltIn = require('../internals/get-built-in');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar anObject = require('../internals/an-object');\n\nvar concat = uncurryThis([].concat);\n\n// all object keys, includes non-enumerable and symbols\nmodule.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = getOwnPropertyNamesModule.f(anObject(it));\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return getOwnPropertySymbols ? concat(keys, getOwnPropertySymbols(it)) : keys;\n};\n","var toIndexedObject = require('../internals/to-indexed-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\n\n// `Array.prototype.{ indexOf, includes }` methods implementation\nvar createMethod = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = lengthOfArrayLike(O);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare -- NaN check\n if (IS_INCLUDES && el != el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare -- NaN check\n if (value != value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.includes` method\n // https://tc39.es/ecma262/#sec-array.prototype.includes\n includes: createMethod(true),\n // `Array.prototype.indexOf` method\n // https://tc39.es/ecma262/#sec-array.prototype.indexof\n indexOf: createMethod(false)\n};\n","var fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\n\nvar replacement = /#|\\.prototype\\./;\n\nvar isForced = function (feature, detection) {\n var value = data[normalize(feature)];\n return value == POLYFILL ? true\n : value == NATIVE ? false\n : isCallable(detection) ? fails(detection)\n : !!detection;\n};\n\nvar normalize = isForced.normalize = function (string) {\n return String(string).replace(replacement, '.').toLowerCase();\n};\n\nvar data = isForced.data = {};\nvar NATIVE = isForced.NATIVE = 'N';\nvar POLYFILL = isForced.POLYFILL = 'P';\n\nmodule.exports = isForced;\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar call = require('../internals/function-call');\nvar fails = require('../internals/fails');\nvar objectKeys = require('../internals/object-keys');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar toObject = require('../internals/to-object');\nvar IndexedObject = require('../internals/indexed-object');\n\n// eslint-disable-next-line es-x/no-object-assign -- safe\nvar $assign = Object.assign;\n// eslint-disable-next-line es-x/no-object-defineproperty -- required for testing\nvar defineProperty = Object.defineProperty;\nvar concat = uncurryThis([].concat);\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\nmodule.exports = !$assign || fails(function () {\n // should have correct order of operations (Edge bug)\n if (DESCRIPTORS && $assign({ b: 1 }, $assign(defineProperty({}, 'a', {\n enumerable: true,\n get: function () {\n defineProperty(this, 'b', {\n value: 3,\n enumerable: false\n });\n }\n }), { b: 2 })).b !== 1) return true;\n // should work with symbols and should have deterministic property order (V8 bug)\n var A = {};\n var B = {};\n // eslint-disable-next-line es-x/no-symbol -- safe\n var symbol = Symbol();\n var alphabet = 'abcdefghijklmnopqrst';\n A[symbol] = 7;\n alphabet.split('').forEach(function (chr) { B[chr] = chr; });\n return $assign({}, A)[symbol] != 7 || objectKeys($assign({}, B)).join('') != alphabet;\n}) ? function assign(target, source) { // eslint-disable-line no-unused-vars -- required for `.length`\n var T = toObject(target);\n var argumentsLength = arguments.length;\n var index = 1;\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n var propertyIsEnumerable = propertyIsEnumerableModule.f;\n while (argumentsLength > index) {\n var S = IndexedObject(arguments[index++]);\n var keys = getOwnPropertySymbols ? concat(objectKeys(S), getOwnPropertySymbols(S)) : objectKeys(S);\n var length = keys.length;\n var j = 0;\n var key;\n while (length > j) {\n key = keys[j++];\n if (!DESCRIPTORS || call(propertyIsEnumerable, S, key)) T[key] = S[key];\n }\n } return T;\n} : $assign;\n","'use strict';\nvar $ = require('../internals/export');\nvar fails = require('../internals/fails');\nvar isArray = require('../internals/is-array');\nvar isObject = require('../internals/is-object');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar doesNotExceedSafeInteger = require('../internals/does-not-exceed-safe-integer');\nvar createProperty = require('../internals/create-property');\nvar arraySpeciesCreate = require('../internals/array-species-create');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar IS_CONCAT_SPREADABLE = wellKnownSymbol('isConcatSpreadable');\n\n// We can't use this feature detection in V8 since it causes\n// deoptimization and serious performance degradation\n// https://github.com/zloirock/core-js/issues/679\nvar IS_CONCAT_SPREADABLE_SUPPORT = V8_VERSION >= 51 || !fails(function () {\n var array = [];\n array[IS_CONCAT_SPREADABLE] = false;\n return array.concat()[0] !== array;\n});\n\nvar SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('concat');\n\nvar isConcatSpreadable = function (O) {\n if (!isObject(O)) return false;\n var spreadable = O[IS_CONCAT_SPREADABLE];\n return spreadable !== undefined ? !!spreadable : isArray(O);\n};\n\nvar FORCED = !IS_CONCAT_SPREADABLE_SUPPORT || !SPECIES_SUPPORT;\n\n// `Array.prototype.concat` method\n// https://tc39.es/ecma262/#sec-array.prototype.concat\n// with adding support of @@isConcatSpreadable and @@species\n$({ target: 'Array', proto: true, arity: 1, forced: FORCED }, {\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n concat: function concat(arg) {\n var O = toObject(this);\n var A = arraySpeciesCreate(O, 0);\n var n = 0;\n var i, k, length, len, E;\n for (i = -1, length = arguments.length; i < length; i++) {\n E = i === -1 ? O : arguments[i];\n if (isConcatSpreadable(E)) {\n len = lengthOfArrayLike(E);\n doesNotExceedSafeInteger(n + len);\n for (k = 0; k < len; k++, n++) if (k in E) createProperty(A, n, E[k]);\n } else {\n doesNotExceedSafeInteger(n + 1);\n createProperty(A, n++, E);\n }\n }\n A.length = n;\n return A;\n }\n});\n","var $TypeError = TypeError;\nvar MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF; // 2 ** 53 - 1 == 9007199254740991\n\nmodule.exports = function (it) {\n if (it > MAX_SAFE_INTEGER) throw $TypeError('Maximum allowed index exceeded');\n return it;\n};\n","var fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (METHOD_NAME) {\n // We can't use this feature detection in V8 since it causes\n // deoptimization and serious performance degradation\n // https://github.com/zloirock/core-js/issues/677\n return V8_VERSION >= 51 || !fails(function () {\n var array = [];\n var constructor = array.constructor = {};\n constructor[SPECIES] = function () {\n return { foo: 1 };\n };\n return array[METHOD_NAME](Boolean).foo !== 1;\n });\n};\n","// TODO: Remove this module from `core-js@4` since it's split to modules listed below\nrequire('../modules/es.symbol.constructor');\nrequire('../modules/es.symbol.for');\nrequire('../modules/es.symbol.key-for');\nrequire('../modules/es.json.stringify');\nrequire('../modules/es.object.get-own-property-symbols');\n","'use strict';\nvar $ = require('../internals/export');\nvar global = require('../internals/global');\nvar call = require('../internals/function-call');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar IS_PURE = require('../internals/is-pure');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\nvar fails = require('../internals/fails');\nvar hasOwn = require('../internals/has-own-property');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar anObject = require('../internals/an-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPropertyKey = require('../internals/to-property-key');\nvar $toString = require('../internals/to-string');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar nativeObjectCreate = require('../internals/object-create');\nvar objectKeys = require('../internals/object-keys');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertyNamesExternal = require('../internals/object-get-own-property-names-external');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\nvar definePropertiesModule = require('../internals/object-define-properties');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar shared = require('../internals/shared');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar uid = require('../internals/uid');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar wrappedWellKnownSymbolModule = require('../internals/well-known-symbol-wrapped');\nvar defineWellKnownSymbol = require('../internals/well-known-symbol-define');\nvar defineSymbolToPrimitive = require('../internals/symbol-define-to-primitive');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar InternalStateModule = require('../internals/internal-state');\nvar $forEach = require('../internals/array-iteration').forEach;\n\nvar HIDDEN = sharedKey('hidden');\nvar SYMBOL = 'Symbol';\nvar PROTOTYPE = 'prototype';\n\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(SYMBOL);\n\nvar ObjectPrototype = Object[PROTOTYPE];\nvar $Symbol = global.Symbol;\nvar SymbolPrototype = $Symbol && $Symbol[PROTOTYPE];\nvar TypeError = global.TypeError;\nvar QObject = global.QObject;\nvar nativeGetOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\nvar nativeDefineProperty = definePropertyModule.f;\nvar nativeGetOwnPropertyNames = getOwnPropertyNamesExternal.f;\nvar nativePropertyIsEnumerable = propertyIsEnumerableModule.f;\nvar push = uncurryThis([].push);\n\nvar AllSymbols = shared('symbols');\nvar ObjectPrototypeSymbols = shared('op-symbols');\nvar WellKnownSymbolsStore = shared('wks');\n\n// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173\nvar USE_SETTER = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;\n\n// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687\nvar setSymbolDescriptor = DESCRIPTORS && fails(function () {\n return nativeObjectCreate(nativeDefineProperty({}, 'a', {\n get: function () { return nativeDefineProperty(this, 'a', { value: 7 }).a; }\n })).a != 7;\n}) ? function (O, P, Attributes) {\n var ObjectPrototypeDescriptor = nativeGetOwnPropertyDescriptor(ObjectPrototype, P);\n if (ObjectPrototypeDescriptor) delete ObjectPrototype[P];\n nativeDefineProperty(O, P, Attributes);\n if (ObjectPrototypeDescriptor && O !== ObjectPrototype) {\n nativeDefineProperty(ObjectPrototype, P, ObjectPrototypeDescriptor);\n }\n} : nativeDefineProperty;\n\nvar wrap = function (tag, description) {\n var symbol = AllSymbols[tag] = nativeObjectCreate(SymbolPrototype);\n setInternalState(symbol, {\n type: SYMBOL,\n tag: tag,\n description: description\n });\n if (!DESCRIPTORS) symbol.description = description;\n return symbol;\n};\n\nvar $defineProperty = function defineProperty(O, P, Attributes) {\n if (O === ObjectPrototype) $defineProperty(ObjectPrototypeSymbols, P, Attributes);\n anObject(O);\n var key = toPropertyKey(P);\n anObject(Attributes);\n if (hasOwn(AllSymbols, key)) {\n if (!Attributes.enumerable) {\n if (!hasOwn(O, HIDDEN)) nativeDefineProperty(O, HIDDEN, createPropertyDescriptor(1, {}));\n O[HIDDEN][key] = true;\n } else {\n if (hasOwn(O, HIDDEN) && O[HIDDEN][key]) O[HIDDEN][key] = false;\n Attributes = nativeObjectCreate(Attributes, { enumerable: createPropertyDescriptor(0, false) });\n } return setSymbolDescriptor(O, key, Attributes);\n } return nativeDefineProperty(O, key, Attributes);\n};\n\nvar $defineProperties = function defineProperties(O, Properties) {\n anObject(O);\n var properties = toIndexedObject(Properties);\n var keys = objectKeys(properties).concat($getOwnPropertySymbols(properties));\n $forEach(keys, function (key) {\n if (!DESCRIPTORS || call($propertyIsEnumerable, properties, key)) $defineProperty(O, key, properties[key]);\n });\n return O;\n};\n\nvar $create = function create(O, Properties) {\n return Properties === undefined ? nativeObjectCreate(O) : $defineProperties(nativeObjectCreate(O), Properties);\n};\n\nvar $propertyIsEnumerable = function propertyIsEnumerable(V) {\n var P = toPropertyKey(V);\n var enumerable = call(nativePropertyIsEnumerable, this, P);\n if (this === ObjectPrototype && hasOwn(AllSymbols, P) && !hasOwn(ObjectPrototypeSymbols, P)) return false;\n return enumerable || !hasOwn(this, P) || !hasOwn(AllSymbols, P) || hasOwn(this, HIDDEN) && this[HIDDEN][P]\n ? enumerable : true;\n};\n\nvar $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(O, P) {\n var it = toIndexedObject(O);\n var key = toPropertyKey(P);\n if (it === ObjectPrototype && hasOwn(AllSymbols, key) && !hasOwn(ObjectPrototypeSymbols, key)) return;\n var descriptor = nativeGetOwnPropertyDescriptor(it, key);\n if (descriptor && hasOwn(AllSymbols, key) && !(hasOwn(it, HIDDEN) && it[HIDDEN][key])) {\n descriptor.enumerable = true;\n }\n return descriptor;\n};\n\nvar $getOwnPropertyNames = function getOwnPropertyNames(O) {\n var names = nativeGetOwnPropertyNames(toIndexedObject(O));\n var result = [];\n $forEach(names, function (key) {\n if (!hasOwn(AllSymbols, key) && !hasOwn(hiddenKeys, key)) push(result, key);\n });\n return result;\n};\n\nvar $getOwnPropertySymbols = function (O) {\n var IS_OBJECT_PROTOTYPE = O === ObjectPrototype;\n var names = nativeGetOwnPropertyNames(IS_OBJECT_PROTOTYPE ? ObjectPrototypeSymbols : toIndexedObject(O));\n var result = [];\n $forEach(names, function (key) {\n if (hasOwn(AllSymbols, key) && (!IS_OBJECT_PROTOTYPE || hasOwn(ObjectPrototype, key))) {\n push(result, AllSymbols[key]);\n }\n });\n return result;\n};\n\n// `Symbol` constructor\n// https://tc39.es/ecma262/#sec-symbol-constructor\nif (!NATIVE_SYMBOL) {\n $Symbol = function Symbol() {\n if (isPrototypeOf(SymbolPrototype, this)) throw TypeError('Symbol is not a constructor');\n var description = !arguments.length || arguments[0] === undefined ? undefined : $toString(arguments[0]);\n var tag = uid(description);\n var setter = function (value) {\n if (this === ObjectPrototype) call(setter, ObjectPrototypeSymbols, value);\n if (hasOwn(this, HIDDEN) && hasOwn(this[HIDDEN], tag)) this[HIDDEN][tag] = false;\n setSymbolDescriptor(this, tag, createPropertyDescriptor(1, value));\n };\n if (DESCRIPTORS && USE_SETTER) setSymbolDescriptor(ObjectPrototype, tag, { configurable: true, set: setter });\n return wrap(tag, description);\n };\n\n SymbolPrototype = $Symbol[PROTOTYPE];\n\n defineBuiltIn(SymbolPrototype, 'toString', function toString() {\n return getInternalState(this).tag;\n });\n\n defineBuiltIn($Symbol, 'withoutSetter', function (description) {\n return wrap(uid(description), description);\n });\n\n propertyIsEnumerableModule.f = $propertyIsEnumerable;\n definePropertyModule.f = $defineProperty;\n definePropertiesModule.f = $defineProperties;\n getOwnPropertyDescriptorModule.f = $getOwnPropertyDescriptor;\n getOwnPropertyNamesModule.f = getOwnPropertyNamesExternal.f = $getOwnPropertyNames;\n getOwnPropertySymbolsModule.f = $getOwnPropertySymbols;\n\n wrappedWellKnownSymbolModule.f = function (name) {\n return wrap(wellKnownSymbol(name), name);\n };\n\n if (DESCRIPTORS) {\n // https://github.com/tc39/proposal-Symbol-description\n nativeDefineProperty(SymbolPrototype, 'description', {\n configurable: true,\n get: function description() {\n return getInternalState(this).description;\n }\n });\n if (!IS_PURE) {\n defineBuiltIn(ObjectPrototype, 'propertyIsEnumerable', $propertyIsEnumerable, { unsafe: true });\n }\n }\n}\n\n$({ global: true, constructor: true, wrap: true, forced: !NATIVE_SYMBOL, sham: !NATIVE_SYMBOL }, {\n Symbol: $Symbol\n});\n\n$forEach(objectKeys(WellKnownSymbolsStore), function (name) {\n defineWellKnownSymbol(name);\n});\n\n$({ target: SYMBOL, stat: true, forced: !NATIVE_SYMBOL }, {\n useSetter: function () { USE_SETTER = true; },\n useSimple: function () { USE_SETTER = false; }\n});\n\n$({ target: 'Object', stat: true, forced: !NATIVE_SYMBOL, sham: !DESCRIPTORS }, {\n // `Object.create` method\n // https://tc39.es/ecma262/#sec-object.create\n create: $create,\n // `Object.defineProperty` method\n // https://tc39.es/ecma262/#sec-object.defineproperty\n defineProperty: $defineProperty,\n // `Object.defineProperties` method\n // https://tc39.es/ecma262/#sec-object.defineproperties\n defineProperties: $defineProperties,\n // `Object.getOwnPropertyDescriptor` method\n // https://tc39.es/ecma262/#sec-object.getownpropertydescriptors\n getOwnPropertyDescriptor: $getOwnPropertyDescriptor\n});\n\n$({ target: 'Object', stat: true, forced: !NATIVE_SYMBOL }, {\n // `Object.getOwnPropertyNames` method\n // https://tc39.es/ecma262/#sec-object.getownpropertynames\n getOwnPropertyNames: $getOwnPropertyNames\n});\n\n// `Symbol.prototype[@@toPrimitive]` method\n// https://tc39.es/ecma262/#sec-symbol.prototype-@@toprimitive\ndefineSymbolToPrimitive();\n\n// `Symbol.prototype[@@toStringTag]` property\n// https://tc39.es/ecma262/#sec-symbol.prototype-@@tostringtag\nsetToStringTag($Symbol, SYMBOL);\n\nhiddenKeys[HIDDEN] = true;\n","var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('document', 'documentElement');\n","/* eslint-disable es-x/no-object-getownpropertynames -- safe */\nvar classof = require('../internals/classof-raw');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar $getOwnPropertyNames = require('../internals/object-get-own-property-names').f;\nvar arraySlice = require('../internals/array-slice-simple');\n\nvar windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames\n ? Object.getOwnPropertyNames(window) : [];\n\nvar getWindowNames = function (it) {\n try {\n return $getOwnPropertyNames(it);\n } catch (error) {\n return arraySlice(windowNames);\n }\n};\n\n// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window\nmodule.exports.f = function getOwnPropertyNames(it) {\n return windowNames && classof(it) == 'Window'\n ? getWindowNames(it)\n : $getOwnPropertyNames(toIndexedObject(it));\n};\n","var global = require('../internals/global');\n\nmodule.exports = global;\n","var call = require('../internals/function-call');\nvar getBuiltIn = require('../internals/get-built-in');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar defineBuiltIn = require('../internals/define-built-in');\n\nmodule.exports = function () {\n var Symbol = getBuiltIn('Symbol');\n var SymbolPrototype = Symbol && Symbol.prototype;\n var valueOf = SymbolPrototype && SymbolPrototype.valueOf;\n var TO_PRIMITIVE = wellKnownSymbol('toPrimitive');\n\n if (SymbolPrototype && !SymbolPrototype[TO_PRIMITIVE]) {\n // `Symbol.prototype[@@toPrimitive]` method\n // https://tc39.es/ecma262/#sec-symbol.prototype-@@toprimitive\n // eslint-disable-next-line no-unused-vars -- required for .length\n defineBuiltIn(SymbolPrototype, TO_PRIMITIVE, function (hint) {\n return call(valueOf, this);\n }, { arity: 1 });\n }\n};\n","var $ = require('../internals/export');\nvar getBuiltIn = require('../internals/get-built-in');\nvar hasOwn = require('../internals/has-own-property');\nvar toString = require('../internals/to-string');\nvar shared = require('../internals/shared');\nvar NATIVE_SYMBOL_REGISTRY = require('../internals/symbol-registry-detection');\n\nvar StringToSymbolRegistry = shared('string-to-symbol-registry');\nvar SymbolToStringRegistry = shared('symbol-to-string-registry');\n\n// `Symbol.for` method\n// https://tc39.es/ecma262/#sec-symbol.for\n$({ target: 'Symbol', stat: true, forced: !NATIVE_SYMBOL_REGISTRY }, {\n 'for': function (key) {\n var string = toString(key);\n if (hasOwn(StringToSymbolRegistry, string)) return StringToSymbolRegistry[string];\n var symbol = getBuiltIn('Symbol')(string);\n StringToSymbolRegistry[string] = symbol;\n SymbolToStringRegistry[symbol] = string;\n return symbol;\n }\n});\n","var $ = require('../internals/export');\nvar hasOwn = require('../internals/has-own-property');\nvar isSymbol = require('../internals/is-symbol');\nvar tryToString = require('../internals/try-to-string');\nvar shared = require('../internals/shared');\nvar NATIVE_SYMBOL_REGISTRY = require('../internals/symbol-registry-detection');\n\nvar SymbolToStringRegistry = shared('symbol-to-string-registry');\n\n// `Symbol.keyFor` method\n// https://tc39.es/ecma262/#sec-symbol.keyfor\n$({ target: 'Symbol', stat: true, forced: !NATIVE_SYMBOL_REGISTRY }, {\n keyFor: function keyFor(sym) {\n if (!isSymbol(sym)) throw TypeError(tryToString(sym) + ' is not a symbol');\n if (hasOwn(SymbolToStringRegistry, sym)) return SymbolToStringRegistry[sym];\n }\n});\n","var $ = require('../internals/export');\nvar getBuiltIn = require('../internals/get-built-in');\nvar apply = require('../internals/function-apply');\nvar call = require('../internals/function-call');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isArray = require('../internals/is-array');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar isSymbol = require('../internals/is-symbol');\nvar arraySlice = require('../internals/array-slice');\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\n\nvar $stringify = getBuiltIn('JSON', 'stringify');\nvar exec = uncurryThis(/./.exec);\nvar charAt = uncurryThis(''.charAt);\nvar charCodeAt = uncurryThis(''.charCodeAt);\nvar replace = uncurryThis(''.replace);\nvar numberToString = uncurryThis(1.0.toString);\n\nvar tester = /[\\uD800-\\uDFFF]/g;\nvar low = /^[\\uD800-\\uDBFF]$/;\nvar hi = /^[\\uDC00-\\uDFFF]$/;\n\nvar WRONG_SYMBOLS_CONVERSION = !NATIVE_SYMBOL || fails(function () {\n var symbol = getBuiltIn('Symbol')();\n // MS Edge converts symbol values to JSON as {}\n return $stringify([symbol]) != '[null]'\n // WebKit converts symbol values to JSON as null\n || $stringify({ a: symbol }) != '{}'\n // V8 throws on boxed symbols\n || $stringify(Object(symbol)) != '{}';\n});\n\n// https://github.com/tc39/proposal-well-formed-stringify\nvar ILL_FORMED_UNICODE = fails(function () {\n return $stringify('\\uDF06\\uD834') !== '\"\\\\udf06\\\\ud834\"'\n || $stringify('\\uDEAD') !== '\"\\\\udead\"';\n});\n\nvar stringifyWithSymbolsFix = function (it, replacer) {\n var args = arraySlice(arguments);\n var $replacer = replacer;\n if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined\n if (!isArray(replacer)) replacer = function (key, value) {\n if (isCallable($replacer)) value = call($replacer, this, key, value);\n if (!isSymbol(value)) return value;\n };\n args[1] = replacer;\n return apply($stringify, null, args);\n};\n\nvar fixIllFormed = function (match, offset, string) {\n var prev = charAt(string, offset - 1);\n var next = charAt(string, offset + 1);\n if ((exec(low, match) && !exec(hi, next)) || (exec(hi, match) && !exec(low, prev))) {\n return '\\\\u' + numberToString(charCodeAt(match, 0), 16);\n } return match;\n};\n\nif ($stringify) {\n // `JSON.stringify` method\n // https://tc39.es/ecma262/#sec-json.stringify\n $({ target: 'JSON', stat: true, arity: 3, forced: WRONG_SYMBOLS_CONVERSION || ILL_FORMED_UNICODE }, {\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n stringify: function stringify(it, replacer, space) {\n var args = arraySlice(arguments);\n var result = apply(WRONG_SYMBOLS_CONVERSION ? stringifyWithSymbolsFix : $stringify, null, args);\n return ILL_FORMED_UNICODE && typeof result == 'string' ? replace(result, tester, fixIllFormed) : result;\n }\n });\n}\n","var NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar apply = FunctionPrototype.apply;\nvar call = FunctionPrototype.call;\n\n// eslint-disable-next-line es-x/no-reflect -- safe\nmodule.exports = typeof Reflect == 'object' && Reflect.apply || (NATIVE_BIND ? call.bind(apply) : function () {\n return call.apply(apply, arguments);\n});\n","var uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis([].slice);\n","var $ = require('../internals/export');\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\nvar fails = require('../internals/fails');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar toObject = require('../internals/to-object');\n\n// V8 ~ Chrome 38 and 39 `Object.getOwnPropertySymbols` fails on primitives\n// https://bugs.chromium.org/p/v8/issues/detail?id=3443\nvar FORCED = !NATIVE_SYMBOL || fails(function () { getOwnPropertySymbolsModule.f(1); });\n\n// `Object.getOwnPropertySymbols` method\n// https://tc39.es/ecma262/#sec-object.getownpropertysymbols\n$({ target: 'Object', stat: true, forced: FORCED }, {\n getOwnPropertySymbols: function getOwnPropertySymbols(it) {\n var $getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return $getOwnPropertySymbols ? $getOwnPropertySymbols(toObject(it)) : [];\n }\n});\n","// `Symbol.prototype.description` getter\n// https://tc39.es/ecma262/#sec-symbol.prototype.description\n'use strict';\nvar $ = require('../internals/export');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar global = require('../internals/global');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar hasOwn = require('../internals/has-own-property');\nvar isCallable = require('../internals/is-callable');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar toString = require('../internals/to-string');\nvar defineProperty = require('../internals/object-define-property').f;\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\n\nvar NativeSymbol = global.Symbol;\nvar SymbolPrototype = NativeSymbol && NativeSymbol.prototype;\n\nif (DESCRIPTORS && isCallable(NativeSymbol) && (!('description' in SymbolPrototype) ||\n // Safari 12 bug\n NativeSymbol().description !== undefined\n)) {\n var EmptyStringDescriptionStore = {};\n // wrap Symbol constructor for correct work with undefined description\n var SymbolWrapper = function Symbol() {\n var description = arguments.length < 1 || arguments[0] === undefined ? undefined : toString(arguments[0]);\n var result = isPrototypeOf(SymbolPrototype, this)\n ? new NativeSymbol(description)\n // in Edge 13, String(Symbol(undefined)) === 'Symbol(undefined)'\n : description === undefined ? NativeSymbol() : NativeSymbol(description);\n if (description === '') EmptyStringDescriptionStore[result] = true;\n return result;\n };\n\n copyConstructorProperties(SymbolWrapper, NativeSymbol);\n SymbolWrapper.prototype = SymbolPrototype;\n SymbolPrototype.constructor = SymbolWrapper;\n\n var NATIVE_SYMBOL = String(NativeSymbol('test')) == 'Symbol(test)';\n var thisSymbolValue = uncurryThis(SymbolPrototype.valueOf);\n var symbolDescriptiveString = uncurryThis(SymbolPrototype.toString);\n var regexp = /^Symbol\\((.*)\\)[^)]+$/;\n var replace = uncurryThis(''.replace);\n var stringSlice = uncurryThis(''.slice);\n\n defineProperty(SymbolPrototype, 'description', {\n configurable: true,\n get: function description() {\n var symbol = thisSymbolValue(this);\n if (hasOwn(EmptyStringDescriptionStore, symbol)) return '';\n var string = symbolDescriptiveString(symbol);\n var desc = NATIVE_SYMBOL ? stringSlice(string, 7, -1) : replace(string, regexp, '$1');\n return desc === '' ? undefined : desc;\n }\n });\n\n $({ global: true, constructor: true, forced: true }, {\n Symbol: SymbolWrapper\n });\n}\n","var defineWellKnownSymbol = require('../internals/well-known-symbol-define');\n\n// `Symbol.iterator` well-known symbol\n// https://tc39.es/ecma262/#sec-symbol.iterator\ndefineWellKnownSymbol('iterator');\n","var wellKnownSymbol = require('../internals/well-known-symbol');\nvar create = require('../internals/object-create');\nvar defineProperty = require('../internals/object-define-property').f;\n\nvar UNSCOPABLES = wellKnownSymbol('unscopables');\nvar ArrayPrototype = Array.prototype;\n\n// Array.prototype[@@unscopables]\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\nif (ArrayPrototype[UNSCOPABLES] == undefined) {\n defineProperty(ArrayPrototype, UNSCOPABLES, {\n configurable: true,\n value: create(null)\n });\n}\n\n// add a key to Array.prototype[@@unscopables]\nmodule.exports = function (key) {\n ArrayPrototype[UNSCOPABLES][key] = true;\n};\n","var fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n function F() { /* empty */ }\n F.prototype.constructor = null;\n // eslint-disable-next-line es-x/no-object-getprototypeof -- required for testing\n return Object.getPrototypeOf(new F()) !== F.prototype;\n});\n","/* eslint-disable no-proto -- safe */\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar anObject = require('../internals/an-object');\nvar aPossiblePrototype = require('../internals/a-possible-prototype');\n\n// `Object.setPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.setprototypeof\n// Works with __proto__ only. Old v8 can't work with null proto objects.\n// eslint-disable-next-line es-x/no-object-setprototypeof -- safe\nmodule.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {\n var CORRECT_SETTER = false;\n var test = {};\n var setter;\n try {\n // eslint-disable-next-line es-x/no-object-getownpropertydescriptor -- safe\n setter = uncurryThis(Object.getOwnPropertyDescriptor(Object.prototype, '__proto__').set);\n setter(test, []);\n CORRECT_SETTER = test instanceof Array;\n } catch (error) { /* empty */ }\n return function setPrototypeOf(O, proto) {\n anObject(O);\n aPossiblePrototype(proto);\n if (CORRECT_SETTER) setter(O, proto);\n else O.__proto__ = proto;\n return O;\n };\n}() : undefined);\n","var isCallable = require('../internals/is-callable');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument) {\n if (typeof argument == 'object' || isCallable(argument)) return argument;\n throw $TypeError(\"Can't set \" + $String(argument) + ' as a prototype');\n};\n","var uncurryThis = require('../internals/function-uncurry-this');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar toString = require('../internals/to-string');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar charAt = uncurryThis(''.charAt);\nvar charCodeAt = uncurryThis(''.charCodeAt);\nvar stringSlice = uncurryThis(''.slice);\n\nvar createMethod = function (CONVERT_TO_STRING) {\n return function ($this, pos) {\n var S = toString(requireObjectCoercible($this));\n var position = toIntegerOrInfinity(pos);\n var size = S.length;\n var first, second;\n if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;\n first = charCodeAt(S, position);\n return first < 0xD800 || first > 0xDBFF || position + 1 === size\n || (second = charCodeAt(S, position + 1)) < 0xDC00 || second > 0xDFFF\n ? CONVERT_TO_STRING\n ? charAt(S, position)\n : first\n : CONVERT_TO_STRING\n ? stringSlice(S, position, position + 2)\n : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;\n };\n};\n\nmodule.exports = {\n // `String.prototype.codePointAt` method\n // https://tc39.es/ecma262/#sec-string.prototype.codepointat\n codeAt: createMethod(false),\n // `String.prototype.at` method\n // https://github.com/mathiasbynens/String.prototype.at\n charAt: createMethod(true)\n};\n","// TODO: Remove this module from `core-js@4` since it's replaced to module below\nrequire('../modules/web.url-search-params.constructor');\n","'use strict';\n// TODO: in core-js@4, move /modules/ dependencies to public entries for better optimization by tools like `preset-env`\nrequire('../modules/es.array.iterator');\nvar $ = require('../internals/export');\nvar global = require('../internals/global');\nvar call = require('../internals/function-call');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar USE_NATIVE_URL = require('../internals/url-constructor-detection');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar defineBuiltIns = require('../internals/define-built-ins');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar createIteratorConstructor = require('../internals/iterator-create-constructor');\nvar InternalStateModule = require('../internals/internal-state');\nvar anInstance = require('../internals/an-instance');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar bind = require('../internals/function-bind-context');\nvar classof = require('../internals/classof');\nvar anObject = require('../internals/an-object');\nvar isObject = require('../internals/is-object');\nvar $toString = require('../internals/to-string');\nvar create = require('../internals/object-create');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar getIterator = require('../internals/get-iterator');\nvar getIteratorMethod = require('../internals/get-iterator-method');\nvar validateArgumentsLength = require('../internals/validate-arguments-length');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar arraySort = require('../internals/array-sort');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar URL_SEARCH_PARAMS = 'URLSearchParams';\nvar URL_SEARCH_PARAMS_ITERATOR = URL_SEARCH_PARAMS + 'Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalParamsState = InternalStateModule.getterFor(URL_SEARCH_PARAMS);\nvar getInternalIteratorState = InternalStateModule.getterFor(URL_SEARCH_PARAMS_ITERATOR);\n// eslint-disable-next-line es-x/no-object-getownpropertydescriptor -- safe\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Avoid NodeJS experimental warning\nvar safeGetBuiltIn = function (name) {\n if (!DESCRIPTORS) return global[name];\n var descriptor = getOwnPropertyDescriptor(global, name);\n return descriptor && descriptor.value;\n};\n\nvar nativeFetch = safeGetBuiltIn('fetch');\nvar NativeRequest = safeGetBuiltIn('Request');\nvar Headers = safeGetBuiltIn('Headers');\nvar RequestPrototype = NativeRequest && NativeRequest.prototype;\nvar HeadersPrototype = Headers && Headers.prototype;\nvar RegExp = global.RegExp;\nvar TypeError = global.TypeError;\nvar decodeURIComponent = global.decodeURIComponent;\nvar encodeURIComponent = global.encodeURIComponent;\nvar charAt = uncurryThis(''.charAt);\nvar join = uncurryThis([].join);\nvar push = uncurryThis([].push);\nvar replace = uncurryThis(''.replace);\nvar shift = uncurryThis([].shift);\nvar splice = uncurryThis([].splice);\nvar split = uncurryThis(''.split);\nvar stringSlice = uncurryThis(''.slice);\n\nvar plus = /\\+/g;\nvar sequences = Array(4);\n\nvar percentSequence = function (bytes) {\n return sequences[bytes - 1] || (sequences[bytes - 1] = RegExp('((?:%[\\\\da-f]{2}){' + bytes + '})', 'gi'));\n};\n\nvar percentDecode = function (sequence) {\n try {\n return decodeURIComponent(sequence);\n } catch (error) {\n return sequence;\n }\n};\n\nvar deserialize = function (it) {\n var result = replace(it, plus, ' ');\n var bytes = 4;\n try {\n return decodeURIComponent(result);\n } catch (error) {\n while (bytes) {\n result = replace(result, percentSequence(bytes--), percentDecode);\n }\n return result;\n }\n};\n\nvar find = /[!'()~]|%20/g;\n\nvar replacements = {\n '!': '%21',\n \"'\": '%27',\n '(': '%28',\n ')': '%29',\n '~': '%7E',\n '%20': '+'\n};\n\nvar replacer = function (match) {\n return replacements[match];\n};\n\nvar serialize = function (it) {\n return replace(encodeURIComponent(it), find, replacer);\n};\n\nvar URLSearchParamsIterator = createIteratorConstructor(function Iterator(params, kind) {\n setInternalState(this, {\n type: URL_SEARCH_PARAMS_ITERATOR,\n iterator: getIterator(getInternalParamsState(params).entries),\n kind: kind\n });\n}, 'Iterator', function next() {\n var state = getInternalIteratorState(this);\n var kind = state.kind;\n var step = state.iterator.next();\n var entry = step.value;\n if (!step.done) {\n step.value = kind === 'keys' ? entry.key : kind === 'values' ? entry.value : [entry.key, entry.value];\n } return step;\n}, true);\n\nvar URLSearchParamsState = function (init) {\n this.entries = [];\n this.url = null;\n\n if (init !== undefined) {\n if (isObject(init)) this.parseObject(init);\n else this.parseQuery(typeof init == 'string' ? charAt(init, 0) === '?' ? stringSlice(init, 1) : init : $toString(init));\n }\n};\n\nURLSearchParamsState.prototype = {\n type: URL_SEARCH_PARAMS,\n bindURL: function (url) {\n this.url = url;\n this.update();\n },\n parseObject: function (object) {\n var iteratorMethod = getIteratorMethod(object);\n var iterator, next, step, entryIterator, entryNext, first, second;\n\n if (iteratorMethod) {\n iterator = getIterator(object, iteratorMethod);\n next = iterator.next;\n while (!(step = call(next, iterator)).done) {\n entryIterator = getIterator(anObject(step.value));\n entryNext = entryIterator.next;\n if (\n (first = call(entryNext, entryIterator)).done ||\n (second = call(entryNext, entryIterator)).done ||\n !call(entryNext, entryIterator).done\n ) throw TypeError('Expected sequence with length 2');\n push(this.entries, { key: $toString(first.value), value: $toString(second.value) });\n }\n } else for (var key in object) if (hasOwn(object, key)) {\n push(this.entries, { key: key, value: $toString(object[key]) });\n }\n },\n parseQuery: function (query) {\n if (query) {\n var attributes = split(query, '&');\n var index = 0;\n var attribute, entry;\n while (index < attributes.length) {\n attribute = attributes[index++];\n if (attribute.length) {\n entry = split(attribute, '=');\n push(this.entries, {\n key: deserialize(shift(entry)),\n value: deserialize(join(entry, '='))\n });\n }\n }\n }\n },\n serialize: function () {\n var entries = this.entries;\n var result = [];\n var index = 0;\n var entry;\n while (index < entries.length) {\n entry = entries[index++];\n push(result, serialize(entry.key) + '=' + serialize(entry.value));\n } return join(result, '&');\n },\n update: function () {\n this.entries.length = 0;\n this.parseQuery(this.url.query);\n },\n updateURL: function () {\n if (this.url) this.url.update();\n }\n};\n\n// `URLSearchParams` constructor\n// https://url.spec.whatwg.org/#interface-urlsearchparams\nvar URLSearchParamsConstructor = function URLSearchParams(/* init */) {\n anInstance(this, URLSearchParamsPrototype);\n var init = arguments.length > 0 ? arguments[0] : undefined;\n setInternalState(this, new URLSearchParamsState(init));\n};\n\nvar URLSearchParamsPrototype = URLSearchParamsConstructor.prototype;\n\ndefineBuiltIns(URLSearchParamsPrototype, {\n // `URLSearchParams.prototype.append` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-append\n append: function append(name, value) {\n validateArgumentsLength(arguments.length, 2);\n var state = getInternalParamsState(this);\n push(state.entries, { key: $toString(name), value: $toString(value) });\n state.updateURL();\n },\n // `URLSearchParams.prototype.delete` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-delete\n 'delete': function (name) {\n validateArgumentsLength(arguments.length, 1);\n var state = getInternalParamsState(this);\n var entries = state.entries;\n var key = $toString(name);\n var index = 0;\n while (index < entries.length) {\n if (entries[index].key === key) splice(entries, index, 1);\n else index++;\n }\n state.updateURL();\n },\n // `URLSearchParams.prototype.get` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-get\n get: function get(name) {\n validateArgumentsLength(arguments.length, 1);\n var entries = getInternalParamsState(this).entries;\n var key = $toString(name);\n var index = 0;\n for (; index < entries.length; index++) {\n if (entries[index].key === key) return entries[index].value;\n }\n return null;\n },\n // `URLSearchParams.prototype.getAll` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-getall\n getAll: function getAll(name) {\n validateArgumentsLength(arguments.length, 1);\n var entries = getInternalParamsState(this).entries;\n var key = $toString(name);\n var result = [];\n var index = 0;\n for (; index < entries.length; index++) {\n if (entries[index].key === key) push(result, entries[index].value);\n }\n return result;\n },\n // `URLSearchParams.prototype.has` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-has\n has: function has(name) {\n validateArgumentsLength(arguments.length, 1);\n var entries = getInternalParamsState(this).entries;\n var key = $toString(name);\n var index = 0;\n while (index < entries.length) {\n if (entries[index++].key === key) return true;\n }\n return false;\n },\n // `URLSearchParams.prototype.set` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-set\n set: function set(name, value) {\n validateArgumentsLength(arguments.length, 1);\n var state = getInternalParamsState(this);\n var entries = state.entries;\n var found = false;\n var key = $toString(name);\n var val = $toString(value);\n var index = 0;\n var entry;\n for (; index < entries.length; index++) {\n entry = entries[index];\n if (entry.key === key) {\n if (found) splice(entries, index--, 1);\n else {\n found = true;\n entry.value = val;\n }\n }\n }\n if (!found) push(entries, { key: key, value: val });\n state.updateURL();\n },\n // `URLSearchParams.prototype.sort` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-sort\n sort: function sort() {\n var state = getInternalParamsState(this);\n arraySort(state.entries, function (a, b) {\n return a.key > b.key ? 1 : -1;\n });\n state.updateURL();\n },\n // `URLSearchParams.prototype.forEach` method\n forEach: function forEach(callback /* , thisArg */) {\n var entries = getInternalParamsState(this).entries;\n var boundFunction = bind(callback, arguments.length > 1 ? arguments[1] : undefined);\n var index = 0;\n var entry;\n while (index < entries.length) {\n entry = entries[index++];\n boundFunction(entry.value, entry.key, this);\n }\n },\n // `URLSearchParams.prototype.keys` method\n keys: function keys() {\n return new URLSearchParamsIterator(this, 'keys');\n },\n // `URLSearchParams.prototype.values` method\n values: function values() {\n return new URLSearchParamsIterator(this, 'values');\n },\n // `URLSearchParams.prototype.entries` method\n entries: function entries() {\n return new URLSearchParamsIterator(this, 'entries');\n }\n}, { enumerable: true });\n\n// `URLSearchParams.prototype[@@iterator]` method\ndefineBuiltIn(URLSearchParamsPrototype, ITERATOR, URLSearchParamsPrototype.entries, { name: 'entries' });\n\n// `URLSearchParams.prototype.toString` method\n// https://url.spec.whatwg.org/#urlsearchparams-stringification-behavior\ndefineBuiltIn(URLSearchParamsPrototype, 'toString', function toString() {\n return getInternalParamsState(this).serialize();\n}, { enumerable: true });\n\nsetToStringTag(URLSearchParamsConstructor, URL_SEARCH_PARAMS);\n\n$({ global: true, constructor: true, forced: !USE_NATIVE_URL }, {\n URLSearchParams: URLSearchParamsConstructor\n});\n\n// Wrap `fetch` and `Request` for correct work with polyfilled `URLSearchParams`\nif (!USE_NATIVE_URL && isCallable(Headers)) {\n var headersHas = uncurryThis(HeadersPrototype.has);\n var headersSet = uncurryThis(HeadersPrototype.set);\n\n var wrapRequestOptions = function (init) {\n if (isObject(init)) {\n var body = init.body;\n var headers;\n if (classof(body) === URL_SEARCH_PARAMS) {\n headers = init.headers ? new Headers(init.headers) : new Headers();\n if (!headersHas(headers, 'content-type')) {\n headersSet(headers, 'content-type', 'application/x-www-form-urlencoded;charset=UTF-8');\n }\n return create(init, {\n body: createPropertyDescriptor(0, $toString(body)),\n headers: createPropertyDescriptor(0, headers)\n });\n }\n } return init;\n };\n\n if (isCallable(nativeFetch)) {\n $({ global: true, enumerable: true, dontCallGetSet: true, forced: true }, {\n fetch: function fetch(input /* , init */) {\n return nativeFetch(input, arguments.length > 1 ? wrapRequestOptions(arguments[1]) : {});\n }\n });\n }\n\n if (isCallable(NativeRequest)) {\n var RequestConstructor = function Request(input /* , init */) {\n anInstance(this, RequestPrototype);\n return new NativeRequest(input, arguments.length > 1 ? wrapRequestOptions(arguments[1]) : {});\n };\n\n RequestPrototype.constructor = RequestConstructor;\n RequestConstructor.prototype = RequestPrototype;\n\n $({ global: true, constructor: true, dontCallGetSet: true, forced: true }, {\n Request: RequestConstructor\n });\n }\n}\n\nmodule.exports = {\n URLSearchParams: URLSearchParamsConstructor,\n getState: getInternalParamsState\n};\n","var fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\n\nvar ITERATOR = wellKnownSymbol('iterator');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line unicorn/relative-url-style -- required for testing\n var url = new URL('b?a=1&b=2&c=3', 'http://a');\n var searchParams = url.searchParams;\n var result = '';\n url.pathname = 'c%20d';\n searchParams.forEach(function (value, key) {\n searchParams['delete']('b');\n result += key + value;\n });\n return (IS_PURE && !url.toJSON)\n || !searchParams.sort\n || url.href !== 'http://a/c%20d?a=1&c=3'\n || searchParams.get('c') !== '3'\n || String(new URLSearchParams('?a=1')) !== 'a=1'\n || !searchParams[ITERATOR]\n // throws in Edge\n || new URL('https://a@b').username !== 'a'\n || new URLSearchParams(new URLSearchParams('a=b')).get('a') !== 'b'\n // not punycoded in Edge\n || new URL('http://тест').host !== 'xn--e1aybc'\n // not escaped in Chrome 62-\n || new URL('http://a#б').hash !== '#%D0%B1'\n // fails in Chrome 66-\n || result !== 'a1c3'\n // throws in Safari\n || new URL('http://x', undefined).host !== 'x';\n});\n","var defineBuiltIn = require('../internals/define-built-in');\n\nmodule.exports = function (target, src, options) {\n for (var key in src) defineBuiltIn(target, key, src[key], options);\n return target;\n};\n","var isPrototypeOf = require('../internals/object-is-prototype-of');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (it, Prototype) {\n if (isPrototypeOf(Prototype, it)) return it;\n throw $TypeError('Incorrect invocation');\n};\n","var call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar anObject = require('../internals/an-object');\nvar tryToString = require('../internals/try-to-string');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument, usingIterator) {\n var iteratorMethod = arguments.length < 2 ? getIteratorMethod(argument) : usingIterator;\n if (aCallable(iteratorMethod)) return anObject(call(iteratorMethod, argument));\n throw $TypeError(tryToString(argument) + ' is not iterable');\n};\n","var $TypeError = TypeError;\n\nmodule.exports = function (passed, required) {\n if (passed < required) throw $TypeError('Not enough arguments');\n return passed;\n};\n","var arraySlice = require('../internals/array-slice-simple');\n\nvar floor = Math.floor;\n\nvar mergeSort = function (array, comparefn) {\n var length = array.length;\n var middle = floor(length / 2);\n return length < 8 ? insertionSort(array, comparefn) : merge(\n array,\n mergeSort(arraySlice(array, 0, middle), comparefn),\n mergeSort(arraySlice(array, middle), comparefn),\n comparefn\n );\n};\n\nvar insertionSort = function (array, comparefn) {\n var length = array.length;\n var i = 1;\n var element, j;\n\n while (i < length) {\n j = i;\n element = array[i];\n while (j && comparefn(array[j - 1], element) > 0) {\n array[j] = array[--j];\n }\n if (j !== i++) array[j] = element;\n } return array;\n};\n\nvar merge = function (array, left, right, comparefn) {\n var llength = left.length;\n var rlength = right.length;\n var lindex = 0;\n var rindex = 0;\n\n while (lindex < llength || rindex < rlength) {\n array[lindex + rindex] = (lindex < llength && rindex < rlength)\n ? comparefn(left[lindex], right[rindex]) <= 0 ? left[lindex++] : right[rindex++]\n : lindex < llength ? left[lindex++] : right[rindex++];\n } return array;\n};\n\nmodule.exports = mergeSort;\n","'use strict';\nvar anObject = require('../internals/an-object');\n\n// `RegExp.prototype.flags` getter implementation\n// https://tc39.es/ecma262/#sec-get-regexp.prototype.flags\nmodule.exports = function () {\n var that = anObject(this);\n var result = '';\n if (that.hasIndices) result += 'd';\n if (that.global) result += 'g';\n if (that.ignoreCase) result += 'i';\n if (that.multiline) result += 'm';\n if (that.dotAll) result += 's';\n if (that.unicode) result += 'u';\n if (that.unicodeSets) result += 'v';\n if (that.sticky) result += 'y';\n return result;\n};\n","var fails = require('../internals/fails');\nvar global = require('../internals/global');\n\n// babel-minify and Closure Compiler transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError\nvar $RegExp = global.RegExp;\n\nvar UNSUPPORTED_Y = fails(function () {\n var re = $RegExp('a', 'y');\n re.lastIndex = 2;\n return re.exec('abcd') != null;\n});\n\n// UC Browser bug\n// https://github.com/zloirock/core-js/issues/1008\nvar MISSED_STICKY = UNSUPPORTED_Y || fails(function () {\n return !$RegExp('a', 'y').sticky;\n});\n\nvar BROKEN_CARET = UNSUPPORTED_Y || fails(function () {\n // https://bugzilla.mozilla.org/show_bug.cgi?id=773687\n var re = $RegExp('^r', 'gy');\n re.lastIndex = 2;\n return re.exec('str') != null;\n});\n\nmodule.exports = {\n BROKEN_CARET: BROKEN_CARET,\n MISSED_STICKY: MISSED_STICKY,\n UNSUPPORTED_Y: UNSUPPORTED_Y\n};\n","var fails = require('../internals/fails');\nvar global = require('../internals/global');\n\n// babel-minify and Closure Compiler transpiles RegExp('.', 's') -> /./s and it causes SyntaxError\nvar $RegExp = global.RegExp;\n\nmodule.exports = fails(function () {\n var re = $RegExp('.', 's');\n return !(re.dotAll && re.exec('\\n') && re.flags === 's');\n});\n","var fails = require('../internals/fails');\nvar global = require('../internals/global');\n\n// babel-minify and Closure Compiler transpiles RegExp('(?b)', 'g') -> /(?b)/g and it causes SyntaxError\nvar $RegExp = global.RegExp;\n\nmodule.exports = fails(function () {\n var re = $RegExp('(?b)', 'g');\n return re.exec('b').groups.a !== 'b' ||\n 'b'.replace(re, '$c') !== 'bc';\n});\n","'use strict';\nvar call = require('../internals/function-call');\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar anObject = require('../internals/an-object');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar sameValue = require('../internals/same-value');\nvar toString = require('../internals/to-string');\nvar getMethod = require('../internals/get-method');\nvar regExpExec = require('../internals/regexp-exec-abstract');\n\n// @@search logic\nfixRegExpWellKnownSymbolLogic('search', function (SEARCH, nativeSearch, maybeCallNative) {\n return [\n // `String.prototype.search` method\n // https://tc39.es/ecma262/#sec-string.prototype.search\n function search(regexp) {\n var O = requireObjectCoercible(this);\n var searcher = isNullOrUndefined(regexp) ? undefined : getMethod(regexp, SEARCH);\n return searcher ? call(searcher, regexp, O) : new RegExp(regexp)[SEARCH](toString(O));\n },\n // `RegExp.prototype[@@search]` method\n // https://tc39.es/ecma262/#sec-regexp.prototype-@@search\n function (string) {\n var rx = anObject(this);\n var S = toString(string);\n var res = maybeCallNative(nativeSearch, rx, S);\n\n if (res.done) return res.value;\n\n var previousLastIndex = rx.lastIndex;\n if (!sameValue(previousLastIndex, 0)) rx.lastIndex = 0;\n var result = regExpExec(rx, S);\n if (!sameValue(rx.lastIndex, previousLastIndex)) rx.lastIndex = previousLastIndex;\n return result === null ? -1 : result.index;\n }\n ];\n});\n","'use strict';\n// TODO: Remove from `core-js@4` since it's moved to entry points\nrequire('../modules/es.regexp.exec');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar regexpExec = require('../internals/regexp-exec');\nvar fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nvar SPECIES = wellKnownSymbol('species');\nvar RegExpPrototype = RegExp.prototype;\n\nmodule.exports = function (KEY, exec, FORCED, SHAM) {\n var SYMBOL = wellKnownSymbol(KEY);\n\n var DELEGATES_TO_SYMBOL = !fails(function () {\n // String methods call symbol-named RegEp methods\n var O = {};\n O[SYMBOL] = function () { return 7; };\n return ''[KEY](O) != 7;\n });\n\n var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL && !fails(function () {\n // Symbol-named RegExp methods call .exec\n var execCalled = false;\n var re = /a/;\n\n if (KEY === 'split') {\n // We can't use real regex here since it causes deoptimization\n // and serious performance degradation in V8\n // https://github.com/zloirock/core-js/issues/306\n re = {};\n // RegExp[@@split] doesn't call the regex's exec method, but first creates\n // a new one. We need to return the patched regex when creating the new one.\n re.constructor = {};\n re.constructor[SPECIES] = function () { return re; };\n re.flags = '';\n re[SYMBOL] = /./[SYMBOL];\n }\n\n re.exec = function () { execCalled = true; return null; };\n\n re[SYMBOL]('');\n return !execCalled;\n });\n\n if (\n !DELEGATES_TO_SYMBOL ||\n !DELEGATES_TO_EXEC ||\n FORCED\n ) {\n var uncurriedNativeRegExpMethod = uncurryThis(/./[SYMBOL]);\n var methods = exec(SYMBOL, ''[KEY], function (nativeMethod, regexp, str, arg2, forceStringMethod) {\n var uncurriedNativeMethod = uncurryThis(nativeMethod);\n var $exec = regexp.exec;\n if ($exec === regexpExec || $exec === RegExpPrototype.exec) {\n if (DELEGATES_TO_SYMBOL && !forceStringMethod) {\n // The native String method already delegates to @@method (this\n // polyfilled function), leasing to infinite recursion.\n // We avoid it by directly calling the native @@method method.\n return { done: true, value: uncurriedNativeRegExpMethod(regexp, str, arg2) };\n }\n return { done: true, value: uncurriedNativeMethod(str, regexp, arg2) };\n }\n return { done: false };\n });\n\n defineBuiltIn(String.prototype, KEY, methods[0]);\n defineBuiltIn(RegExpPrototype, SYMBOL, methods[1]);\n }\n\n if (SHAM) createNonEnumerableProperty(RegExpPrototype[SYMBOL], 'sham', true);\n};\n","// `SameValue` abstract operation\n// https://tc39.es/ecma262/#sec-samevalue\n// eslint-disable-next-line es-x/no-object-is -- safe\nmodule.exports = Object.is || function is(x, y) {\n // eslint-disable-next-line no-self-compare -- NaN check\n return x === y ? x !== 0 || 1 / x === 1 / y : x != x && y != y;\n};\n","var call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar isCallable = require('../internals/is-callable');\nvar classof = require('../internals/classof-raw');\nvar regexpExec = require('../internals/regexp-exec');\n\nvar $TypeError = TypeError;\n\n// `RegExpExec` abstract operation\n// https://tc39.es/ecma262/#sec-regexpexec\nmodule.exports = function (R, S) {\n var exec = R.exec;\n if (isCallable(exec)) {\n var result = call(exec, R, S);\n if (result !== null) anObject(result);\n return result;\n }\n if (classof(R) === 'RegExp') return call(regexpExec, R, S);\n throw $TypeError('RegExp#exec called on incompatible receiver');\n};\n"],"sourceRoot":""}